breeze-client 2.2.2 → 3.0.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 (299) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +83 -63
  3. package/adapters/abstract-data-service-adapter.d.ts +120 -0
  4. package/adapters/abstract-data-service-adapter.js +395 -0
  5. package/adapters/abstract-data-service-adapter.js.map +1 -0
  6. package/adapters/adapter-ajax-fetch.d.ts +12 -0
  7. package/adapters/adapter-ajax-fetch.js +13 -0
  8. package/adapters/adapter-ajax-fetch.js.map +1 -0
  9. package/{adapter-ajax-post → adapters}/adapter-ajax-post.d.ts +40 -36
  10. package/{fesm2022/breeze-client-adapter-ajax-post.mjs → adapters/adapter-ajax-post.js} +80 -82
  11. package/adapters/adapter-ajax-post.js.map +1 -0
  12. package/{adapter-ajax-fetch → adapters}/adapter-core.d.ts +4 -4
  13. package/{fesm2022/breeze-client-adapter-uri-builder-json.mjs → adapters/adapter-core.js} +48 -91
  14. package/adapters/adapter-core.js.map +1 -0
  15. package/adapters/adapter-data-service-webapi.d.ts +9 -0
  16. package/{fesm2022/breeze-client-adapter-data-service-webapi.mjs → adapters/adapter-data-service-webapi.js} +105 -107
  17. package/adapters/adapter-data-service-webapi.js.map +1 -0
  18. package/adapters/adapter-model-library-backing-store.d.ts +32 -0
  19. package/adapters/adapter-model-library-backing-store.js +321 -0
  20. package/adapters/adapter-model-library-backing-store.js.map +1 -0
  21. package/adapters/adapter-uri-builder-json.d.ts +11 -0
  22. package/adapters/adapter-uri-builder-json.js +40 -0
  23. package/adapters/adapter-uri-builder-json.js.map +1 -0
  24. package/adapters/http.d.ts +52 -0
  25. package/adapters/http.js +202 -0
  26. package/adapters/http.js.map +1 -0
  27. package/angular/adapter-angular-httpclient.d.ts +21 -0
  28. package/angular/adapter-angular-httpclient.js +70 -0
  29. package/angular/adapter-angular-httpclient.js.map +1 -0
  30. package/breeze.d.ts +215 -0
  31. package/breeze.js +141 -0
  32. package/breeze.js.map +1 -0
  33. package/config/config.d.ts +212 -0
  34. package/config/config.js +392 -0
  35. package/config/config.js.map +1 -0
  36. package/config/configure.d.ts +66 -0
  37. package/config/configure.js +46 -0
  38. package/config/configure.js.map +1 -0
  39. package/config/default-adapters.d.ts +1 -0
  40. package/config/default-adapters.js +40 -0
  41. package/config/default-adapters.js.map +1 -0
  42. package/config/interface-registry.d.ts +191 -0
  43. package/config/interface-registry.js +5 -0
  44. package/config/interface-registry.js.map +1 -0
  45. package/{src → core}/assert-param.d.ts +52 -60
  46. package/core/assert-param.js +390 -0
  47. package/core/assert-param.js.map +1 -0
  48. package/core/core.d.ts +285 -0
  49. package/core/core.js +772 -0
  50. package/core/core.js.map +1 -0
  51. package/core/enum.d.ts +116 -0
  52. package/core/enum.js +167 -0
  53. package/core/enum.js.map +1 -0
  54. package/core/event.d.ts +169 -0
  55. package/core/event.js +338 -0
  56. package/core/event.js.map +1 -0
  57. package/entity/array.d.ts +3 -0
  58. package/entity/array.js +4 -0
  59. package/entity/array.js.map +1 -0
  60. package/entity/complex-array.d.ts +17 -0
  61. package/entity/complex-array.js +104 -0
  62. package/entity/complex-array.js.map +1 -0
  63. package/entity/default-property-interceptor.d.ts +1 -0
  64. package/entity/default-property-interceptor.js +496 -0
  65. package/entity/default-property-interceptor.js.map +1 -0
  66. package/{src → entity}/entity-action.d.ts +36 -42
  67. package/entity/entity-action.js +45 -0
  68. package/entity/entity-action.js.map +1 -0
  69. package/entity/entity-aspect.d.ts +457 -0
  70. package/entity/entity-aspect.js +1262 -0
  71. package/entity/entity-aspect.js.map +1 -0
  72. package/entity/entity-base.d.ts +55 -0
  73. package/entity/entity-base.js +41 -0
  74. package/entity/entity-base.js.map +1 -0
  75. package/entity/entity-group.d.ts +1 -0
  76. package/entity/entity-group.js +224 -0
  77. package/entity/entity-group.js.map +1 -0
  78. package/entity/entity-key.d.ts +95 -0
  79. package/entity/entity-key.js +189 -0
  80. package/entity/entity-key.js.map +1 -0
  81. package/{src → entity}/entity-state.d.ts +112 -84
  82. package/entity/entity-state.js +135 -0
  83. package/entity/entity-state.js.map +1 -0
  84. package/entity/key-generator.d.ts +57 -0
  85. package/entity/key-generator.js +155 -0
  86. package/entity/key-generator.js.map +1 -0
  87. package/entity/observable-array.d.ts +25 -0
  88. package/entity/observable-array.js +230 -0
  89. package/entity/observable-array.js.map +1 -0
  90. package/entity/primitive-array.d.ts +12 -0
  91. package/entity/primitive-array.js +71 -0
  92. package/entity/primitive-array.js.map +1 -0
  93. package/entity/relation-array.d.ts +24 -0
  94. package/entity/relation-array.js +176 -0
  95. package/entity/relation-array.js.map +1 -0
  96. package/entity/unattached-children-map.d.ts +1 -0
  97. package/entity/unattached-children-map.js +105 -0
  98. package/entity/unattached-children-map.js.map +1 -0
  99. package/generate-entity-classes.js +1176 -0
  100. package/manager/entity-manager.d.ts +801 -0
  101. package/manager/entity-manager.js +2395 -0
  102. package/manager/entity-manager.js.map +1 -0
  103. package/{src → manager}/save-options.d.ts +48 -42
  104. package/manager/save-options.js +51 -0
  105. package/manager/save-options.js.map +1 -0
  106. package/{src → metadata}/data-service.d.ts +229 -184
  107. package/metadata/data-service.js +246 -0
  108. package/metadata/data-service.js.map +1 -0
  109. package/metadata/data-type.d.ts +122 -0
  110. package/metadata/data-type.js +465 -0
  111. package/metadata/data-type.js.map +1 -0
  112. package/metadata/entity-metadata.d.ts +1193 -0
  113. package/metadata/entity-metadata.js +2502 -0
  114. package/metadata/entity-metadata.js.map +1 -0
  115. package/{src → metadata}/local-query-comparison-options.d.ts +65 -59
  116. package/metadata/local-query-comparison-options.js +69 -0
  117. package/metadata/local-query-comparison-options.js.map +1 -0
  118. package/{src → metadata}/naming-convention.d.ts +75 -72
  119. package/metadata/naming-convention.js +97 -0
  120. package/metadata/naming-convention.js.map +1 -0
  121. package/mixins/mixin-get-entity-graph.d.ts +63 -0
  122. package/{fesm2022/breeze-client-mixin-get-entity-graph.mjs → mixins/mixin-get-entity-graph.js} +331 -253
  123. package/mixins/mixin-get-entity-graph.js.map +1 -0
  124. package/mixins/mixin-save-queuing.d.ts +98 -0
  125. package/{fesm2022/breeze-client-mixin-save-queuing.mjs → mixins/mixin-save-queuing.js} +493 -365
  126. package/mixins/mixin-save-queuing.js.map +1 -0
  127. package/package.json +63 -94
  128. package/query/entity-query.d.ts +521 -0
  129. package/query/entity-query.js +1149 -0
  130. package/query/entity-query.js.map +1 -0
  131. package/{src → query}/mapping-context.d.ts +44 -46
  132. package/query/mapping-context.js +412 -0
  133. package/query/mapping-context.js.map +1 -0
  134. package/query/predicate.d.ts +394 -0
  135. package/query/predicate.js +1294 -0
  136. package/query/predicate.js.map +1 -0
  137. package/query/property-path.d.ts +252 -0
  138. package/query/property-path.js +2 -0
  139. package/query/property-path.js.map +1 -0
  140. package/{src → query}/query-options.d.ts +143 -119
  141. package/query/query-options.js +180 -0
  142. package/query/query-options.js.map +1 -0
  143. package/rxjs/breeze-rxjs.d.ts +72 -0
  144. package/rxjs/breeze-rxjs.js +117 -0
  145. package/rxjs/breeze-rxjs.js.map +1 -0
  146. package/validation/validate.d.ts +583 -0
  147. package/validation/validate.js +961 -0
  148. package/validation/validate.js.map +1 -0
  149. package/{src → validation}/validation-options.d.ts +67 -63
  150. package/validation/validation-options.js +70 -0
  151. package/validation/validation-options.js.map +1 -0
  152. package/adapter-ajax-angularjs/adapter-ajax-angularjs.d.ts +0 -17
  153. package/adapter-ajax-angularjs/adapter-core.d.ts +0 -4
  154. package/adapter-ajax-angularjs/index.d.ts +0 -5
  155. package/adapter-ajax-fetch/adapter-ajax-fetch.d.ts +0 -18
  156. package/adapter-ajax-fetch/index.d.ts +0 -5
  157. package/adapter-ajax-httpclient/adapter-ajax-httpclient.d.ts +0 -13
  158. package/adapter-ajax-httpclient/adapter-core.d.ts +0 -4
  159. package/adapter-ajax-httpclient/index.d.ts +0 -5
  160. package/adapter-ajax-jquery/adapter-ajax-jquery.d.ts +0 -15
  161. package/adapter-ajax-jquery/index.d.ts +0 -5
  162. package/adapter-ajax-post/index.d.ts +0 -5
  163. package/adapter-data-service-odata/adapter-core.d.ts +0 -4
  164. package/adapter-data-service-odata/adapter-data-service-odata.d.ts +0 -17
  165. package/adapter-data-service-odata/index.d.ts +0 -5
  166. package/adapter-data-service-webapi/adapter-data-service-webapi.d.ts +0 -15
  167. package/adapter-data-service-webapi/index.d.ts +0 -5
  168. package/adapter-model-library-backing-store/adapter-model-library-backing-store.d.ts +0 -10
  169. package/adapter-model-library-backing-store/index.d.ts +0 -5
  170. package/adapter-model-library-ko/adapter-model-library-ko.d.ts +0 -10
  171. package/adapter-model-library-ko/index.d.ts +0 -5
  172. package/adapter-uri-builder-json/adapter-core.d.ts +0 -4
  173. package/adapter-uri-builder-json/adapter-uri-builder-json.d.ts +0 -8
  174. package/adapter-uri-builder-json/index.d.ts +0 -5
  175. package/adapter-uri-builder-odata/adapter-core.d.ts +0 -4
  176. package/adapter-uri-builder-odata/adapter-uri-builder-odata.d.ts +0 -8
  177. package/adapter-uri-builder-odata/index.d.ts +0 -5
  178. package/esm2022/adapter-ajax-angularjs/adapter-ajax-angularjs.mjs +0 -135
  179. package/esm2022/adapter-ajax-angularjs/adapter-core.mjs +0 -49
  180. package/esm2022/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.mjs +0 -5
  181. package/esm2022/adapter-ajax-fetch/adapter-ajax-fetch.mjs +0 -135
  182. package/esm2022/adapter-ajax-fetch/adapter-core.mjs +0 -49
  183. package/esm2022/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.mjs +0 -5
  184. package/esm2022/adapter-ajax-httpclient/adapter-ajax-httpclient.mjs +0 -139
  185. package/esm2022/adapter-ajax-httpclient/adapter-core.mjs +0 -49
  186. package/esm2022/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.mjs +0 -5
  187. package/esm2022/adapter-ajax-jquery/adapter-ajax-jquery.mjs +0 -107
  188. package/esm2022/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.mjs +0 -5
  189. package/esm2022/adapter-ajax-post/adapter-ajax-post.mjs +0 -77
  190. package/esm2022/adapter-ajax-post/breeze-client-adapter-ajax-post.mjs +0 -5
  191. package/esm2022/adapter-data-service-odata/adapter-core.mjs +0 -49
  192. package/esm2022/adapter-data-service-odata/adapter-data-service-odata.mjs +0 -461
  193. package/esm2022/adapter-data-service-odata/breeze-client-adapter-data-service-odata.mjs +0 -5
  194. package/esm2022/adapter-data-service-webapi/adapter-data-service-webapi.mjs +0 -100
  195. package/esm2022/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.mjs +0 -5
  196. package/esm2022/adapter-model-library-backing-store/adapter-model-library-backing-store.mjs +0 -269
  197. package/esm2022/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.mjs +0 -5
  198. package/esm2022/adapter-model-library-ko/adapter-model-library-ko.mjs +0 -241
  199. package/esm2022/adapter-model-library-ko/breeze-client-adapter-model-library-ko.mjs +0 -5
  200. package/esm2022/adapter-uri-builder-json/adapter-core.mjs +0 -49
  201. package/esm2022/adapter-uri-builder-json/adapter-uri-builder-json.mjs +0 -37
  202. package/esm2022/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.mjs +0 -5
  203. package/esm2022/adapter-uri-builder-odata/adapter-core.mjs +0 -49
  204. package/esm2022/adapter-uri-builder-odata/adapter-uri-builder-odata.mjs +0 -191
  205. package/esm2022/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.mjs +0 -5
  206. package/esm2022/breeze-client.mjs +0 -5
  207. package/esm2022/index.mjs +0 -2
  208. package/esm2022/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.mjs +0 -5
  209. package/esm2022/mixin-get-entity-graph/mixin-get-entity-graph.mjs +0 -269
  210. package/esm2022/mixin-save-queuing/breeze-client-mixin-save-queuing.mjs +0 -5
  211. package/esm2022/mixin-save-queuing/mixin-save-queuing.mjs +0 -421
  212. package/esm2022/src/abstract-data-service-adapter.mjs +0 -325
  213. package/esm2022/src/array.mjs +0 -4
  214. package/esm2022/src/assert-param.mjs +0 -330
  215. package/esm2022/src/breeze.mjs +0 -85
  216. package/esm2022/src/complex-array.mjs +0 -117
  217. package/esm2022/src/config.mjs +0 -232
  218. package/esm2022/src/core.mjs +0 -712
  219. package/esm2022/src/csdl-metadata-parser.mjs +0 -385
  220. package/esm2022/src/data-service.mjs +0 -221
  221. package/esm2022/src/data-type.mjs +0 -510
  222. package/esm2022/src/default-property-interceptor.mjs +0 -460
  223. package/esm2022/src/entity-action.mjs +0 -45
  224. package/esm2022/src/entity-aspect.mjs +0 -897
  225. package/esm2022/src/entity-group.mjs +0 -192
  226. package/esm2022/src/entity-key.mjs +0 -125
  227. package/esm2022/src/entity-manager.mjs +0 -2163
  228. package/esm2022/src/entity-metadata.mjs +0 -2242
  229. package/esm2022/src/entity-query.mjs +0 -1024
  230. package/esm2022/src/entity-state.mjs +0 -107
  231. package/esm2022/src/enum.mjs +0 -143
  232. package/esm2022/src/event.mjs +0 -264
  233. package/esm2022/src/interface-registry.mjs +0 -39
  234. package/esm2022/src/key-generator.mjs +0 -110
  235. package/esm2022/src/local-query-comparison-options.mjs +0 -65
  236. package/esm2022/src/mapping-context.mjs +0 -411
  237. package/esm2022/src/naming-convention.mjs +0 -92
  238. package/esm2022/src/observable-array.mjs +0 -183
  239. package/esm2022/src/predicate.mjs +0 -1259
  240. package/esm2022/src/primitive-array.mjs +0 -85
  241. package/esm2022/src/query-options.mjs +0 -152
  242. package/esm2022/src/relation-array.mjs +0 -173
  243. package/esm2022/src/save-options.mjs +0 -41
  244. package/esm2022/src/unattached-children-map.mjs +0 -56
  245. package/esm2022/src/validate.mjs +0 -995
  246. package/esm2022/src/validation-options.mjs +0 -64
  247. package/fesm2022/breeze-client-adapter-ajax-angularjs.mjs +0 -190
  248. package/fesm2022/breeze-client-adapter-ajax-angularjs.mjs.map +0 -1
  249. package/fesm2022/breeze-client-adapter-ajax-fetch.mjs +0 -190
  250. package/fesm2022/breeze-client-adapter-ajax-fetch.mjs.map +0 -1
  251. package/fesm2022/breeze-client-adapter-ajax-httpclient.mjs +0 -194
  252. package/fesm2022/breeze-client-adapter-ajax-httpclient.mjs.map +0 -1
  253. package/fesm2022/breeze-client-adapter-ajax-jquery.mjs +0 -114
  254. package/fesm2022/breeze-client-adapter-ajax-jquery.mjs.map +0 -1
  255. package/fesm2022/breeze-client-adapter-ajax-post.mjs.map +0 -1
  256. package/fesm2022/breeze-client-adapter-data-service-odata.mjs +0 -516
  257. package/fesm2022/breeze-client-adapter-data-service-odata.mjs.map +0 -1
  258. package/fesm2022/breeze-client-adapter-data-service-webapi.mjs.map +0 -1
  259. package/fesm2022/breeze-client-adapter-model-library-backing-store.mjs +0 -276
  260. package/fesm2022/breeze-client-adapter-model-library-backing-store.mjs.map +0 -1
  261. package/fesm2022/breeze-client-adapter-model-library-ko.mjs +0 -248
  262. package/fesm2022/breeze-client-adapter-model-library-ko.mjs.map +0 -1
  263. package/fesm2022/breeze-client-adapter-uri-builder-json.mjs.map +0 -1
  264. package/fesm2022/breeze-client-adapter-uri-builder-odata.mjs +0 -246
  265. package/fesm2022/breeze-client-adapter-uri-builder-odata.mjs.map +0 -1
  266. package/fesm2022/breeze-client-mixin-get-entity-graph.mjs.map +0 -1
  267. package/fesm2022/breeze-client-mixin-save-queuing.mjs.map +0 -1
  268. package/fesm2022/breeze-client.mjs +0 -14144
  269. package/fesm2022/breeze-client.mjs.map +0 -1
  270. package/index.d.ts +0 -1
  271. package/mixin-get-entity-graph/index.d.ts +0 -5
  272. package/mixin-get-entity-graph/mixin-get-entity-graph.d.ts +0 -31
  273. package/mixin-save-queuing/index.d.ts +0 -5
  274. package/mixin-save-queuing/mixin-save-queuing.d.ts +0 -32
  275. package/src/abstract-data-service-adapter.d.ts +0 -84
  276. package/src/array.d.ts +0 -3
  277. package/src/breeze.d.ts +0 -139
  278. package/src/complex-array.d.ts +0 -13
  279. package/src/config.d.ts +0 -104
  280. package/src/core.d.ts +0 -164
  281. package/src/csdl-metadata-parser.d.ts +0 -7
  282. package/src/data-type.d.ts +0 -89
  283. package/src/default-property-interceptor.d.ts +0 -4
  284. package/src/entity-aspect.d.ts +0 -332
  285. package/src/entity-group.d.ts +0 -28
  286. package/src/entity-key.d.ts +0 -77
  287. package/src/entity-manager.d.ts +0 -680
  288. package/src/entity-metadata.d.ts +0 -988
  289. package/src/entity-query.d.ts +0 -444
  290. package/src/enum.d.ts +0 -100
  291. package/src/event.d.ts +0 -142
  292. package/src/interface-registry.d.ts +0 -150
  293. package/src/key-generator.d.ts +0 -12
  294. package/src/observable-array.d.ts +0 -52
  295. package/src/predicate.d.ts +0 -376
  296. package/src/primitive-array.d.ts +0 -7
  297. package/src/relation-array.d.ts +0 -18
  298. package/src/unattached-children-map.d.ts +0 -19
  299. package/src/validate.d.ts +0 -650
package/src/event.d.ts DELETED
@@ -1,142 +0,0 @@
1
- /** @hidden @internal */
2
- export interface Subscription {
3
- unsubKey: number;
4
- callback: (data: any) => any;
5
- }
6
- /**
7
- Class to support basic event publication and subscription semantics.
8
- @dynamic
9
- **/
10
- export declare class BreezeEvent<T> {
11
- /** @hidden @internal */
12
- static __eventNameMap: {};
13
- /** @hidden @internal */
14
- static __nextUnsubKey: number;
15
- /** The name of this Event */
16
- name: string;
17
- /** The object doing the publication. i.e. the object to which this event is attached. */
18
- publisher: Object;
19
- /** @hidden @internal */
20
- _subscribers: Subscription[];
21
- /** @hidden @internal */
22
- _defaultErrorCallback: (e: Error) => any;
23
- /**
24
- Constructor for an Event
25
- > salaryEvent = new BreezeEvent("salaryEvent", person);
26
- @param name - The name of the event.
27
- @param publisher - The object that will be doing the publication. i.e. the object to which this event is attached.
28
- @param defaultErrorCallback - Function to call when an error occurs during subscription execution.
29
- If omitted then subscriber notification failures will be ignored.
30
- **/
31
- constructor(name: string, publisher: Object, defaultErrorCallback?: (e: Error) => any);
32
- /**
33
- Publish data for this event.
34
- > // Assume 'salaryEvent' is previously constructed Event
35
- > salaryEvent.publish( { eventType: "payRaise", amount: 100 });
36
-
37
- This event can also be published asychronously
38
- > salaryEvent.publish( { eventType: "payRaise", amount: 100 }, true);
39
-
40
- And we can add a handler in case the subscriber 'mishandles' the event.
41
- > salaryEvent.publish( { eventType: "payRaise", amount: 100 }, true, function(error) {
42
- > // do something with the 'error' object
43
- > });
44
- @param data - Data to publish
45
- @param publishAsync - (default=false) Whether to publish asynchonously or not.
46
- @param errorCallback - Function to be called for any errors that occur during publication. If omitted,
47
- errors will be eaten.
48
- @return false if event is disabled; true otherwise.
49
- **/
50
- publish(data: T, publishAsync?: boolean, errorCallback?: (e: Error) => any): boolean;
51
- /**
52
- Publish data for this event asynchronously.
53
- > // Assume 'salaryEvent' is previously constructed Event
54
- > salaryEvent.publishAsync( { eventType: "payRaise", amount: 100 });
55
-
56
- And we can add a handler in case the subscriber 'mishandles' the event.
57
- > salaryEvent.publishAsync( { eventType: "payRaise", amount: 100 }, function(error) {
58
- > // do something with the 'error' object
59
- > });
60
- @param data - Data to publish
61
- @param errorCallback - Function to be called for any errors that occur during publication. If omitted,
62
- errors will be eaten.
63
- **/
64
- publishAsync(data: T, errorCallback: (e: Error) => any): void;
65
- /**
66
- Subscribe to this event.
67
- > // Assume 'salaryEvent' is previously constructed Event
68
- > salaryEvent.subscribe(function (eventArgs) {
69
- > if (eventArgs.eventType === "payRaise") {
70
- > // do something
71
- > }
72
- > });
73
-
74
- There are several built in Breeze events, such as [[EntityAspect.propertyChanged]], [[EntityAspect.validationErrorsChanged]] as well.
75
- > // Assume order is a preexisting 'order' entity
76
- > order.entityAspect.propertyChanged.subscribe(function (pcEvent) {
77
- > if ( pcEvent.propertyName === "OrderDate") {
78
- > // do something
79
- > }
80
- > });
81
- @param callback- Function to be called whenever 'data' is published for this event.
82
- @param callback.data - {Object} Whatever 'data' was published. This should be documented on the specific event.
83
- @return This is a key for 'unsubscription'. It can be passed to the 'unsubscribe' method.
84
- **/
85
- subscribe(callback: (data: T) => any): number;
86
- /**
87
- Unsubscribe from this event.
88
- > // Assume order is a preexisting 'order' entity
89
- > let token = order.entityAspect.propertyChanged.subscribe(function (pcEvent) {
90
- > // do something
91
- > });
92
- > // sometime later
93
- > order.entityAspect.propertyChanged.unsubscribe(token);
94
- @param unsubKey - The value returned from the 'subscribe' method may be used to unsubscribe here.
95
- @return Whether unsubscription occured. This will return false if already unsubscribed or if the key simply
96
- cannot be found.
97
- **/
98
- unsubscribe: (unsubKey: number) => boolean;
99
- /** remove all subscribers */
100
- clear(): void;
101
- /** event bubbling - document later. */
102
- static bubbleEvent(target: any, getParentFn?: (() => any)): void;
103
- /**
104
- Enables or disables the named event for an object and all of its children.
105
- > BreezeEvent.enable(“propertyChanged”, myEntityManager, false)
106
-
107
- will disable all EntityAspect.propertyChanged events within a EntityManager.
108
- > BreezeEvent.enable(“propertyChanged”, myEntityManager, true)
109
-
110
- will enable all EntityAspect.propertyChanged events within a EntityManager.
111
- > BreezeEvent.enable(“propertyChanged”, myEntity.entityAspect, false)
112
-
113
- will disable EntityAspect.propertyChanged events for a specific entity.
114
- > BreezeEvent.enable(“propertyChanged”, myEntity.entityAspect, null)
115
-
116
- will removes any enabling / disabling at the entity aspect level so now any 'Event.enable' calls at the EntityManager level,
117
- made either previously or in the future, will control notification.
118
- > BreezeEvent.enable(“validationErrorsChanged”, myEntityManager, function(em) {
119
- > return em.customTag === “blue”;
120
- > })
121
-
122
-
123
- will either enable or disable myEntityManager based on the current value of a ‘customTag’ property on myEntityManager.
124
- Note that this is dynamic, changing the customTag value will cause events to be enabled or disabled immediately.
125
- @param eventName - The name of the event.
126
- @param target - The object at which enabling or disabling will occur. All event notifications that occur to this object or
127
- children of this object will be enabled or disabled.
128
- @param isEnabled - A boolean, a null or a function that returns either a boolean or a null.
129
- **/
130
- static enable(eventName: string, obj: Object, isEnabled: boolean | ((x: any) => boolean)): void;
131
- /**
132
- Returns whether for a specific event and a specific object and its children, notification is enabled or disabled or not set.
133
- > BreezeEvent.isEnabled(“propertyChanged”, myEntityManager)
134
- >
135
- @param eventName - The name of the event.
136
- @param target - The object for which we want to know if notifications are enabled.
137
- @return A null is returned if this value has not been set.
138
- **/
139
- static isEnabled(eventName: string, obj: Object): boolean;
140
- /** @hidden @internal */
141
- static _isEnabled: (eventName: string, obj: Object) => boolean;
142
- }
@@ -1,150 +0,0 @@
1
- import { InterfaceDef, BaseAdapter } from './config';
2
- import { MappingContext } from './mapping-context';
3
- import { EntityQuery } from './entity-query';
4
- import { MetadataStore } from './entity-metadata';
5
- import { JsonResultsAdapter, DataService } from './data-service';
6
- import { Entity } from './entity-aspect';
7
- import { SaveContext, SaveBundle, QueryResult, SaveResult, HttpResponse } from './entity-manager';
8
- export interface InterfaceRegistryConfig {
9
- ajax?: InterfaceDef<AjaxAdapter>;
10
- modelLibrary?: InterfaceDef<ModelLibraryAdapter>;
11
- dataService?: InterfaceDef<DataServiceAdapter>;
12
- uriBuilder?: InterfaceDef<UriBuilderAdapter>;
13
- }
14
- /** Registers adapters used by Breeze */
15
- export declare class InterfaceRegistry {
16
- ajax: InterfaceDef<AjaxAdapter>;
17
- modelLibrary: InterfaceDef<ModelLibraryAdapter>;
18
- dataService: InterfaceDef<DataServiceAdapter>;
19
- uriBuilder: InterfaceDef<UriBuilderAdapter>;
20
- }
21
- /** @hidden @internal */
22
- declare module "./config" {
23
- interface BreezeConfig {
24
- /**
25
- Initializes a collection of adapter implementations and makes each one the default for its corresponding interface.
26
- @method initializeAdapterInstances
27
- @param config {Object}
28
- @param [config.ajax] {String} - the name of a previously registered "ajax" adapter
29
- @param [config.dataService] {String} - the name of a previously registered "dataService" adapter
30
- @param [config.modelLibrary] {String} - the name of a previously registered "modelLibrary" adapter
31
- @param [config.uriBuilder] {String} - the name of a previously registered "uriBuilder" adapter
32
- @return [array of instances]
33
- **/
34
- initializeAdapterInstances(irConfig: InterfaceRegistryConfig): void;
35
- interfaceRegistry: InterfaceRegistry;
36
- }
37
- }
38
- /** DataServiceAdapter Ajax request configuration */
39
- export interface AjaxConfig {
40
- url: string;
41
- /** GET, POST, etc. */
42
- type?: string;
43
- /** json, etc. */
44
- dataType?: string;
45
- contentType?: string;
46
- crossDomain?: string | boolean;
47
- headers?: {};
48
- data?: any;
49
- params?: {};
50
- success: (res: HttpResponse) => void;
51
- error: (res: (HttpResponse | Error)) => void;
52
- }
53
- /** Request sent by AjaxAdapter */
54
- export interface AjaxRequest {
55
- /** AjaxAdapter that initiated the request */
56
- adapter: AjaxAdapter;
57
- /** Request configuration */
58
- config: RequestInit;
59
- /** config from the DataServiceAdapter that called the AjaxAdapter */
60
- dsaConfig: AjaxConfig;
61
- /** Function called on response error */
62
- error: (status: number, statusText: string, body: string, response: Response, errorThrown: any) => void;
63
- /** Function called on response success */
64
- success: (data: any, statusText: string, response: Response) => void;
65
- }
66
- /** Handles AJAX requests to server */
67
- export interface AjaxAdapter extends BaseAdapter {
68
- /** Function that performs the ajax request and calls the success or error function */
69
- ajax(config: AjaxConfig): void;
70
- /** Container for headers to be added to each request */
71
- defaultSettings: {
72
- headers?: {
73
- [name: string]: string;
74
- };
75
- };
76
- /** Function to allow manipulating the request before sending */
77
- requestInterceptor?: (req: AjaxRequest) => void;
78
- }
79
- /** Adapts breeze change-tracking to the UI framework */
80
- export interface ModelLibraryAdapter extends BaseAdapter {
81
- getTrackablePropertyNames: (entity: any) => string[];
82
- initializeEntityPrototype(proto: Object): void;
83
- startTracking(entity: any, entityCtor: Function): void;
84
- createCtor?: Function;
85
- }
86
- /** Reshapes data moving between breeze and server */
87
- export interface DataServiceAdapter extends BaseAdapter {
88
- fetchMetadata(metadataStore: MetadataStore, dataService: DataService): Promise<any>;
89
- executeQuery(mappingContext: MappingContext): Promise<QueryResult>;
90
- saveChanges(saveContext: SaveContext, saveBundle: SaveBundle): Promise<SaveResult>;
91
- changeRequestInterceptor: ChangeRequestInterceptorCtor;
92
- jsonResultsAdapter: JsonResultsAdapter;
93
- }
94
- /** Function called by AjaxAdapter before sending request */
95
- export interface AjaxRequestInterceptor {
96
- (req: AjaxRequest): void;
97
- /** Whether to remove the interceptor after it is called */
98
- oneTime: boolean;
99
- }
100
- /** Builds URI for performing queries. Serializes the EntityQuery according to the URI syntax. */
101
- export interface UriBuilderAdapter extends BaseAdapter {
102
- buildUri(query: EntityQuery, metadataStore: MetadataStore): string;
103
- }
104
- export interface ChangeRequestInterceptorCtor {
105
- new (saveContext: SaveContext, saveBundle: SaveBundle): ChangeRequestInterceptor;
106
- }
107
- /** Allows manipulating data in DataServiceAdapter before sending to server */
108
- export interface ChangeRequestInterceptor {
109
- oneTime?: boolean;
110
- /**
111
- Prepare and return the save data for an entity change-set.
112
-
113
- The adapter calls this method for each entity in the change-set,
114
- after it has prepared a "change request" for that object.
115
-
116
- The method can do anything to the request but it must return a valid, non-null request.
117
- @example
118
- this.getRequest = function (request, entity, index) {
119
- // alter the request that the adapter prepared for this entity
120
- // based on the entity, saveContext, and saveBundle
121
- // e.g., add a custom header or prune the originalValuesMap
122
- return request;
123
- };
124
- @method getRequest
125
- @param request {Object} The object representing the adapter's request to save this entity.
126
- @param entity {Entity} The entity-to-be-save as it is in cache
127
- @param index {Integer} The zero-based index of this entity in the change-set array
128
- @return {Function} The potentially revised request.
129
- **/
130
- getRequest(request: any, entity: Entity, index: number): any;
131
- /**
132
- Last chance to change anything about the 'requests' array
133
- after it has been built with requests for all of the entities-to-be-saved.
134
-
135
- The 'requests' array is the same as 'saveBundle.entities' in many implementations
136
-
137
- This method can do anything to the array including add and remove requests.
138
- It's up to you to ensure that server will accept the requests array data as valid.
139
-
140
- Returned value is ignored.
141
- @example
142
- this.done = function (requests) {
143
- // alter the array of requests representing the entire change-set
144
- // based on the saveContext and saveBundle
145
- };
146
- @method done
147
- @param requests {Array of Object} The adapter's array of request for this changeset.
148
- **/
149
- done(requests: Object[]): void;
150
- }
@@ -1,12 +0,0 @@
1
- import { EntityType } from './entity-metadata';
2
- import { EntityKey } from './entity-key';
3
- export declare class KeyGenerator {
4
- /** @hidden @internal */
5
- private _tempIdMap;
6
- constructor();
7
- generateTempKeyValue(entityType: EntityType, valueIfAvail?: boolean): any;
8
- getTempKeys(): EntityKey[];
9
- isTempKey(entityKey: EntityKey): boolean;
10
- /** @hidden @internal */
11
- private _getPropEntry;
12
- }
@@ -1,52 +0,0 @@
1
- import { BreezeEvent } from './event';
2
- import { EntityAspect } from './entity-aspect';
3
- import { DataProperty } from './entity-metadata';
4
- /** @hidden */
5
- export interface ObservableArray {
6
- push: (...args: any[]) => number;
7
- _push: (...args: any[]) => number;
8
- unshift: (...args: any[]) => number;
9
- pop: () => any;
10
- shift: () => any;
11
- splice: (...args: any[]) => any[];
12
- slice: (a: number, b?: number) => any[];
13
- length: number;
14
- getEntityAspect: () => EntityAspect;
15
- arrayChanged: BreezeEvent<ArrayChangedArgs>;
16
- parent?: Object;
17
- parentProperty?: DataProperty;
18
- _getEventParent: () => Object;
19
- _getPendingPubs: () => any[];
20
- _beforeChange: () => void;
21
- _processAdds(items: any[]): void;
22
- _processRemoves(items: any[]): void;
23
- _origValues: any[];
24
- _pendingArgs: any;
25
- }
26
- export interface ArrayChangedArgs {
27
- array: any[];
28
- added?: any[];
29
- removed?: any[];
30
- }
31
- declare function updateEntityState(obsArray: ObservableArray): void;
32
- declare function publish(publisher: ObservableArray, eventName: string, eventArgs: any): void;
33
- declare function initializeParent(obsArray: any, parent: Object, parentProperty: DataProperty): void;
34
- /** @hidden @internal */
35
- export declare const observableArray: {
36
- mixin: {
37
- push: (...args: any[]) => any;
38
- _push: (...args: any[]) => any;
39
- unshift: (...args: any[]) => any;
40
- pop: () => any;
41
- shift: () => any;
42
- splice: (...args: any[]) => any;
43
- getEntityAspect: () => any;
44
- _getEventParent: () => any;
45
- _getPendingPubs: () => any;
46
- _beforeChange: () => void;
47
- };
48
- updateEntityState: typeof updateEntityState;
49
- publish: typeof publish;
50
- initializeParent: typeof initializeParent;
51
- };
52
- export {};