angular-odata 0.127.0 → 0.130.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 (294) hide show
  1. package/README.md +27 -244
  2. package/esm2022/lib/annotations.mjs +146 -0
  3. package/esm2022/lib/api.mjs +238 -173
  4. package/esm2022/lib/cache/cache.mjs +3 -1
  5. package/esm2022/lib/cache/memory.mjs +1 -1
  6. package/esm2022/lib/cache/storage.mjs +3 -1
  7. package/esm2022/lib/client.mjs +10 -47
  8. package/esm2022/lib/constants.mjs +4 -1
  9. package/esm2022/lib/helper.mjs +9 -1
  10. package/esm2022/lib/index.mjs +4 -1
  11. package/esm2022/lib/loaders.mjs +27 -17
  12. package/esm2022/lib/metadata/csdl/csdl-annotation.mjs +273 -0
  13. package/esm2022/lib/metadata/csdl/csdl-entity-container.mjs +59 -0
  14. package/esm2022/lib/metadata/csdl/csdl-entity-set.mjs +50 -0
  15. package/esm2022/lib/metadata/csdl/csdl-enum-type.mjs +74 -0
  16. package/esm2022/lib/metadata/csdl/csdl-function-action.mjs +204 -0
  17. package/esm2022/lib/metadata/csdl/csdl-navigation-property-binding.mjs +15 -0
  18. package/esm2022/lib/metadata/csdl/csdl-reference.mjs +76 -0
  19. package/esm2022/lib/metadata/csdl/csdl-schema.mjs +87 -0
  20. package/esm2022/lib/metadata/csdl/csdl-singleton.mjs +37 -0
  21. package/esm2022/lib/metadata/csdl/csdl-structural-property.mjs +145 -0
  22. package/esm2022/lib/metadata/csdl/csdl-structured-type.mjs +159 -0
  23. package/esm2022/lib/metadata/csdl/csdl-type-definition.mjs +46 -0
  24. package/esm2022/lib/metadata/index.mjs +3 -0
  25. package/esm2022/lib/metadata/metadata.mjs +41 -0
  26. package/esm2022/lib/metadata/parser.mjs +564 -0
  27. package/esm2022/lib/models/collection.mjs +115 -155
  28. package/esm2022/lib/models/model.mjs +71 -54
  29. package/esm2022/lib/models/options.mjs +194 -136
  30. package/esm2022/lib/module.mjs +7 -7
  31. package/esm2022/lib/options.mjs +57 -2
  32. package/esm2022/lib/resources/index.mjs +2 -2
  33. package/esm2022/lib/resources/options.mjs +66 -0
  34. package/esm2022/lib/resources/path/handlers.mjs +16 -4
  35. package/esm2022/lib/resources/path/segments.mjs +7 -4
  36. package/esm2022/lib/resources/query/builder.mjs +17 -8
  37. package/esm2022/lib/resources/query/expressions/apply.mjs +83 -14
  38. package/esm2022/lib/resources/query/expressions/base.mjs +2 -1
  39. package/esm2022/lib/resources/query/expressions/compute.mjs +3 -2
  40. package/esm2022/lib/resources/query/expressions/count.mjs +3 -1
  41. package/esm2022/lib/resources/query/expressions/expand.mjs +8 -1
  42. package/esm2022/lib/resources/query/expressions/filter.mjs +3 -1
  43. package/esm2022/lib/resources/query/expressions/orderby.mjs +4 -2
  44. package/esm2022/lib/resources/query/expressions/search.mjs +4 -1
  45. package/esm2022/lib/resources/query/expressions/select.mjs +8 -2
  46. package/esm2022/lib/resources/query/expressions/syntax.mjs +37 -7
  47. package/esm2022/lib/resources/query/handlers.mjs +4 -1
  48. package/esm2022/lib/resources/query/options.mjs +2 -1
  49. package/esm2022/lib/resources/request.mjs +19 -5
  50. package/esm2022/lib/resources/resource.mjs +115 -85
  51. package/esm2022/lib/resources/response.mjs +180 -0
  52. package/esm2022/lib/resources/types/action.mjs +31 -26
  53. package/esm2022/lib/resources/types/batch.mjs +7 -7
  54. package/esm2022/lib/resources/types/count.mjs +7 -7
  55. package/esm2022/lib/resources/types/entity-set.mjs +37 -24
  56. package/esm2022/lib/resources/types/entity.mjs +14 -11
  57. package/esm2022/lib/resources/types/function.mjs +28 -28
  58. package/esm2022/lib/resources/types/metadata.mjs +9 -5
  59. package/esm2022/lib/resources/types/navigation-property.mjs +36 -40
  60. package/esm2022/lib/resources/types/property.mjs +31 -59
  61. package/esm2022/lib/resources/types/reference.mjs +3 -4
  62. package/esm2022/lib/resources/types/singleton.mjs +11 -12
  63. package/esm2022/lib/resources/types/value.mjs +16 -12
  64. package/esm2022/lib/schema/annotation.mjs +8 -1
  65. package/esm2022/lib/schema/callable.mjs +13 -10
  66. package/esm2022/lib/schema/element.mjs +18 -9
  67. package/esm2022/lib/schema/entity-container.mjs +6 -2
  68. package/esm2022/lib/schema/entity-set.mjs +3 -1
  69. package/esm2022/lib/schema/enum-type.mjs +11 -11
  70. package/esm2022/lib/schema/index.mjs +2 -1
  71. package/esm2022/lib/schema/parsers/callable.mjs +23 -7
  72. package/esm2022/lib/schema/parsers/edm.mjs +6 -4
  73. package/esm2022/lib/schema/parsers/enum-type.mjs +48 -30
  74. package/esm2022/lib/schema/parsers/structured-type.mjs +61 -27
  75. package/esm2022/lib/schema/schema.mjs +25 -34
  76. package/esm2022/lib/schema/singleton.mjs +11 -0
  77. package/esm2022/lib/schema/structured-type.mjs +27 -25
  78. package/esm2022/lib/services/base.mjs +4 -1
  79. package/esm2022/lib/services/entity-set.mjs +18 -2
  80. package/esm2022/lib/services/entity.mjs +2 -2
  81. package/esm2022/lib/services/factory.mjs +16 -10
  82. package/esm2022/lib/services/singleton.mjs +9 -2
  83. package/esm2022/lib/settings.mjs +8 -99
  84. package/esm2022/lib/types.mjs +1 -1
  85. package/esm2022/lib/utils/arraybuffers.mjs +1 -1
  86. package/esm2022/lib/utils/dates.mjs +1 -1
  87. package/esm2022/lib/utils/durations.mjs +1 -1
  88. package/esm2022/lib/utils/enums.mjs +1 -1
  89. package/esm2022/lib/utils/http.mjs +1 -1
  90. package/esm2022/lib/utils/objects.mjs +1 -1
  91. package/esm2022/lib/utils/odata.mjs +1 -1
  92. package/esm2022/lib/utils/types.mjs +1 -1
  93. package/fesm2022/angular-odata.mjs +3476 -2075
  94. package/fesm2022/angular-odata.mjs.map +1 -1
  95. package/lib/{resources/responses/annotations.d.ts → annotations.d.ts} +2 -2
  96. package/lib/api.d.ts +29 -26
  97. package/lib/cache/memory.d.ts +1 -1
  98. package/lib/client.d.ts +0 -20
  99. package/lib/constants.d.ts +3 -0
  100. package/lib/index.d.ts +2 -0
  101. package/lib/loaders.d.ts +7 -1
  102. package/lib/metadata/csdl/csdl-annotation.d.ts +159 -0
  103. package/lib/metadata/csdl/csdl-entity-container.d.ts +31 -0
  104. package/lib/metadata/csdl/csdl-entity-set.d.ts +25 -0
  105. package/lib/metadata/csdl/csdl-enum-type.d.ts +37 -0
  106. package/lib/metadata/csdl/csdl-function-action.d.ts +148 -0
  107. package/lib/metadata/csdl/csdl-navigation-property-binding.d.ts +12 -0
  108. package/lib/metadata/csdl/csdl-reference.d.ts +53 -0
  109. package/lib/metadata/csdl/csdl-schema.d.ts +37 -0
  110. package/lib/metadata/csdl/csdl-singleton.d.ts +21 -0
  111. package/lib/metadata/csdl/csdl-structural-property.d.ts +86 -0
  112. package/lib/metadata/csdl/csdl-structured-type.d.ts +94 -0
  113. package/lib/metadata/csdl/csdl-type-definition.d.ts +25 -0
  114. package/lib/metadata/index.d.ts +2 -0
  115. package/lib/metadata/metadata.d.ts +23 -0
  116. package/lib/{resources/responses/metadata.d.ts → metadata/parser.d.ts} +19 -7
  117. package/lib/models/collection.d.ts +6 -4
  118. package/lib/models/model.d.ts +20 -27
  119. package/lib/models/options.d.ts +46 -25
  120. package/lib/resources/index.d.ts +1 -1
  121. package/lib/resources/{responses/options.d.ts → options.d.ts} +2 -2
  122. package/lib/resources/path/handlers.d.ts +4 -2
  123. package/lib/resources/path/segments.d.ts +6 -4
  124. package/lib/resources/query/builder.d.ts +3 -2
  125. package/lib/resources/query/expressions/apply.d.ts +37 -15
  126. package/lib/resources/query/expressions/base.d.ts +1 -1
  127. package/lib/resources/query/expressions/compute.d.ts +2 -2
  128. package/lib/resources/query/expressions/count.d.ts +1 -1
  129. package/lib/resources/query/expressions/expand.d.ts +3 -1
  130. package/lib/resources/query/expressions/filter.d.ts +1 -1
  131. package/lib/resources/query/expressions/orderby.d.ts +5 -4
  132. package/lib/resources/query/expressions/search.d.ts +1 -1
  133. package/lib/resources/query/expressions/select.d.ts +2 -1
  134. package/lib/resources/query/expressions/syntax.d.ts +8 -5
  135. package/lib/resources/query/options.d.ts +3 -3
  136. package/lib/resources/resource.d.ts +56 -16
  137. package/lib/resources/{responses/response.d.ts → response.d.ts} +17 -5
  138. package/lib/resources/types/action.d.ts +12 -10
  139. package/lib/resources/types/batch.d.ts +3 -2
  140. package/lib/resources/types/count.d.ts +1 -5
  141. package/lib/resources/types/entity-set.d.ts +25 -11
  142. package/lib/resources/types/entity.d.ts +8 -5
  143. package/lib/resources/types/function.d.ts +12 -12
  144. package/lib/resources/types/metadata.d.ts +1 -1
  145. package/lib/resources/types/navigation-property.d.ts +23 -8
  146. package/lib/resources/types/property.d.ts +27 -9
  147. package/lib/resources/types/reference.d.ts +2 -4
  148. package/lib/resources/types/singleton.d.ts +9 -7
  149. package/lib/resources/types/value.d.ts +2 -6
  150. package/lib/schema/callable.d.ts +5 -7
  151. package/lib/schema/element.d.ts +11 -4
  152. package/lib/schema/entity-container.d.ts +2 -0
  153. package/lib/schema/enum-type.d.ts +13 -16
  154. package/lib/schema/index.d.ts +1 -0
  155. package/lib/schema/parsers/callable.d.ts +7 -8
  156. package/lib/schema/parsers/enum-type.d.ts +16 -18
  157. package/lib/schema/parsers/structured-type.d.ts +11 -10
  158. package/lib/schema/schema.d.ts +6 -9
  159. package/lib/schema/singleton.d.ts +10 -0
  160. package/lib/schema/structured-type.d.ts +10 -10
  161. package/lib/services/entity-set.d.ts +11 -4
  162. package/lib/services/factory.d.ts +14 -2
  163. package/lib/services/singleton.d.ts +4 -2
  164. package/lib/settings.d.ts +0 -10
  165. package/lib/types.d.ts +32 -12
  166. package/lib/utils/enums.d.ts +12 -12
  167. package/lib/utils/http.d.ts +1 -1
  168. package/lib/utils/objects.d.ts +1 -1
  169. package/lib/utils/strings.d.ts +2 -2
  170. package/package.json +5 -1
  171. package/schematics/apigen/angular/api-config.d.ts +15 -0
  172. package/schematics/apigen/angular/api-config.js +40 -0
  173. package/schematics/apigen/angular/api-config.js.map +1 -0
  174. package/schematics/apigen/angular/base.d.ts +71 -0
  175. package/schematics/apigen/angular/base.js +240 -0
  176. package/schematics/apigen/angular/base.js.map +1 -0
  177. package/schematics/apigen/angular/entity.d.ts +24 -0
  178. package/schematics/apigen/angular/entity.js +77 -0
  179. package/schematics/apigen/angular/entity.js.map +1 -0
  180. package/schematics/apigen/angular/enum.d.ts +25 -0
  181. package/schematics/apigen/angular/enum.js +57 -0
  182. package/schematics/apigen/angular/enum.js.map +1 -0
  183. package/schematics/apigen/angular/import.d.ts +6 -0
  184. package/schematics/apigen/angular/import.js +18 -0
  185. package/schematics/apigen/angular/import.js.map +1 -0
  186. package/schematics/apigen/angular/module.d.ts +18 -0
  187. package/schematics/apigen/angular/module.js +41 -0
  188. package/schematics/apigen/angular/module.js.map +1 -0
  189. package/schematics/apigen/angular/service.d.ts +20 -0
  190. package/schematics/apigen/angular/service.js +77 -0
  191. package/schematics/apigen/angular/service.js.map +1 -0
  192. package/schematics/apigen/files/api-config/__fileName__.ts +11 -0
  193. package/schematics/apigen/files/entity/__fileName__.ts +7 -0
  194. package/schematics/apigen/files/entitycontainer-service/__fileName__.ts +18 -0
  195. package/schematics/apigen/files/entityset-service/__fileName__.ts +27 -0
  196. package/schematics/apigen/files/enum/__fileName__.ts +4 -0
  197. package/schematics/apigen/files/index/__fileName__.ts +2 -0
  198. package/schematics/apigen/files/metadata/metadata.json +1 -0
  199. package/schematics/apigen/files/module/__fileName__.ts +9 -0
  200. package/schematics/apigen/files/singleton-service/__fileName__.ts +18 -0
  201. package/schematics/apigen/index.d.ts +3 -0
  202. package/schematics/apigen/index.js +150 -0
  203. package/schematics/apigen/index.js.map +1 -0
  204. package/schematics/apigen/metadata/csdl/csdl-annotation.d.ts +153 -0
  205. package/schematics/apigen/metadata/csdl/csdl-annotation.js +228 -0
  206. package/schematics/apigen/metadata/csdl/csdl-annotation.js.map +1 -0
  207. package/schematics/apigen/metadata/csdl/csdl-entity-container.d.ts +29 -0
  208. package/schematics/apigen/metadata/csdl/csdl-entity-container.js +49 -0
  209. package/schematics/apigen/metadata/csdl/csdl-entity-container.js.map +1 -0
  210. package/schematics/apigen/metadata/csdl/csdl-entity-set.d.ts +23 -0
  211. package/schematics/apigen/metadata/csdl/csdl-entity-set.js +37 -0
  212. package/schematics/apigen/metadata/csdl/csdl-entity-set.js.map +1 -0
  213. package/schematics/apigen/metadata/csdl/csdl-enum-type.d.ts +34 -0
  214. package/schematics/apigen/metadata/csdl/csdl-enum-type.js +50 -0
  215. package/schematics/apigen/metadata/csdl/csdl-enum-type.js.map +1 -0
  216. package/schematics/apigen/metadata/csdl/csdl-function-action.d.ts +140 -0
  217. package/schematics/apigen/metadata/csdl/csdl-function-action.js +136 -0
  218. package/schematics/apigen/metadata/csdl/csdl-function-action.js.map +1 -0
  219. package/schematics/apigen/metadata/csdl/csdl-navigation-property-binding.d.ts +12 -0
  220. package/schematics/apigen/metadata/csdl/csdl-navigation-property-binding.js +17 -0
  221. package/schematics/apigen/metadata/csdl/csdl-navigation-property-binding.js.map +1 -0
  222. package/schematics/apigen/metadata/csdl/csdl-reference.d.ts +42 -0
  223. package/schematics/apigen/metadata/csdl/csdl-reference.js +53 -0
  224. package/schematics/apigen/metadata/csdl/csdl-reference.js.map +1 -0
  225. package/schematics/apigen/metadata/csdl/csdl-schema.d.ts +35 -0
  226. package/schematics/apigen/metadata/csdl/csdl-schema.js +63 -0
  227. package/schematics/apigen/metadata/csdl/csdl-schema.js.map +1 -0
  228. package/schematics/apigen/metadata/csdl/csdl-singleton.d.ts +21 -0
  229. package/schematics/apigen/metadata/csdl/csdl-singleton.js +33 -0
  230. package/schematics/apigen/metadata/csdl/csdl-singleton.js.map +1 -0
  231. package/schematics/apigen/metadata/csdl/csdl-structural-property.d.ts +79 -0
  232. package/schematics/apigen/metadata/csdl/csdl-structural-property.js +103 -0
  233. package/schematics/apigen/metadata/csdl/csdl-structural-property.js.map +1 -0
  234. package/schematics/apigen/metadata/csdl/csdl-structured-type.d.ts +83 -0
  235. package/schematics/apigen/metadata/csdl/csdl-structured-type.js +116 -0
  236. package/schematics/apigen/metadata/csdl/csdl-structured-type.js.map +1 -0
  237. package/schematics/apigen/metadata/csdl/csdl-type-definition.d.ts +25 -0
  238. package/schematics/apigen/metadata/csdl/csdl-type-definition.js +38 -0
  239. package/schematics/apigen/metadata/csdl/csdl-type-definition.js.map +1 -0
  240. package/schematics/apigen/metadata/index.d.ts +1 -0
  241. package/schematics/apigen/metadata/index.js +18 -0
  242. package/schematics/apigen/metadata/index.js.map +1 -0
  243. package/schematics/apigen/metadata/metadata.d.ts +21 -0
  244. package/schematics/apigen/metadata/metadata.js +36 -0
  245. package/schematics/apigen/metadata/metadata.js.map +1 -0
  246. package/schematics/apigen/metadata/parser.d.ts +110 -0
  247. package/schematics/apigen/metadata/parser.js +568 -0
  248. package/schematics/apigen/metadata/parser.js.map +1 -0
  249. package/schematics/apigen/schema.d.ts +9 -0
  250. package/schematics/apigen/schema.js +3 -0
  251. package/schematics/apigen/schema.js.map +1 -0
  252. package/schematics/apigen/schema.json +37 -0
  253. package/schematics/apigen/utils.d.ts +2 -0
  254. package/schematics/apigen/utils.js +99 -0
  255. package/schematics/apigen/utils.js.map +1 -0
  256. package/schematics/collection.json +14 -0
  257. package/schematics/ng-add/index.d.ts +2 -0
  258. package/schematics/ng-add/index.js +12 -0
  259. package/schematics/ng-add/index.js.map +1 -0
  260. package/schematics/random.d.ts +1 -0
  261. package/schematics/random.js +604 -0
  262. package/schematics/random.js.map +1 -0
  263. package/esm2022/lib/resources/responses/annotations.mjs +0 -140
  264. package/esm2022/lib/resources/responses/csdl/csdl-annotation.mjs +0 -33
  265. package/esm2022/lib/resources/responses/csdl/csdl-entity-container.mjs +0 -11
  266. package/esm2022/lib/resources/responses/csdl/csdl-entity-set.mjs +0 -9
  267. package/esm2022/lib/resources/responses/csdl/csdl-enum-type.mjs +0 -15
  268. package/esm2022/lib/resources/responses/csdl/csdl-function-action.mjs +0 -56
  269. package/esm2022/lib/resources/responses/csdl/csdl-navigation-property-binding.mjs +0 -7
  270. package/esm2022/lib/resources/responses/csdl/csdl-reference.mjs +0 -23
  271. package/esm2022/lib/resources/responses/csdl/csdl-schema.mjs +0 -18
  272. package/esm2022/lib/resources/responses/csdl/csdl-singleton.mjs +0 -8
  273. package/esm2022/lib/resources/responses/csdl/csdl-structural-property.mjs +0 -39
  274. package/esm2022/lib/resources/responses/csdl/csdl-structured-type.mjs +0 -34
  275. package/esm2022/lib/resources/responses/csdl/csdl-type-definition.mjs +0 -14
  276. package/esm2022/lib/resources/responses/index.mjs +0 -5
  277. package/esm2022/lib/resources/responses/metadata.mjs +0 -547
  278. package/esm2022/lib/resources/responses/options.mjs +0 -56
  279. package/esm2022/lib/resources/responses/response.mjs +0 -174
  280. package/esm2022/lib/resources/responses/types.mjs +0 -2
  281. package/lib/resources/responses/csdl/csdl-annotation.d.ts +0 -27
  282. package/lib/resources/responses/csdl/csdl-entity-container.d.ts +0 -12
  283. package/lib/resources/responses/csdl/csdl-entity-set.d.ts +0 -8
  284. package/lib/resources/responses/csdl/csdl-enum-type.d.ts +0 -12
  285. package/lib/resources/responses/csdl/csdl-function-action.d.ts +0 -49
  286. package/lib/resources/responses/csdl/csdl-navigation-property-binding.d.ts +0 -5
  287. package/lib/resources/responses/csdl/csdl-reference.d.ts +0 -18
  288. package/lib/resources/responses/csdl/csdl-schema.d.ts +0 -20
  289. package/lib/resources/responses/csdl/csdl-singleton.d.ts +0 -7
  290. package/lib/resources/responses/csdl/csdl-structural-property.d.ts +0 -31
  291. package/lib/resources/responses/csdl/csdl-structured-type.d.ts +0 -27
  292. package/lib/resources/responses/csdl/csdl-type-definition.d.ts +0 -11
  293. package/lib/resources/responses/index.d.ts +0 -4
  294. package/lib/resources/responses/types.d.ts +0 -13
@@ -0,0 +1,71 @@
1
+ import { Import } from './import';
2
+ import { Source } from '@angular-devkit/schematics';
3
+ import { Schema as ApiGenSchema } from '../schema';
4
+ import { CsdlCallable, CsdlParameter } from '../metadata/csdl/csdl-function-action';
5
+ import { ODataMetadata } from '../metadata';
6
+ export declare class Callable {
7
+ protected callable: CsdlCallable;
8
+ callables: CsdlCallable[];
9
+ constructor(callable: CsdlCallable);
10
+ addOverload(callable: CsdlCallable): void;
11
+ name(): string;
12
+ isBound(): boolean;
13
+ bindingParameter(): CsdlParameter | undefined;
14
+ parameters(): {
15
+ binding: CsdlParameter | undefined;
16
+ required: CsdlParameter[];
17
+ optional: CsdlParameter[];
18
+ };
19
+ returnType(): import("../metadata/csdl/csdl-function-action").CsdlReturnType | undefined;
20
+ fullName(): string;
21
+ resourceFunction(): string;
22
+ callableFunction(): string;
23
+ }
24
+ export declare abstract class Base {
25
+ protected options: ApiGenSchema;
26
+ constructor(options: ApiGenSchema);
27
+ abstract name(): string;
28
+ abstract fileName(): string;
29
+ abstract fullName(): string;
30
+ abstract directory(): string;
31
+ abstract importTypes(): string[];
32
+ abstract template(): Source;
33
+ abstract variables(): {
34
+ [name: string]: any;
35
+ };
36
+ path(): string;
37
+ imports(): Import[];
38
+ importedName?: string;
39
+ cleanImportedNames(): void;
40
+ protected dependencies: [string, Base][];
41
+ addDependency(renderable: Base): void;
42
+ addDependencies(renderables: Base[]): void;
43
+ protected callables: Callable[];
44
+ addCallable(callable: Callable): void;
45
+ addCallables(callables: Callable[]): void;
46
+ }
47
+ export declare class Index extends Base {
48
+ constructor(options: ApiGenSchema);
49
+ template(): Source;
50
+ variables(): {
51
+ [name: string]: any;
52
+ };
53
+ name(): string;
54
+ fileName(): string;
55
+ directory(): string;
56
+ fullName(): string;
57
+ importTypes(): string[];
58
+ }
59
+ export declare class Metadata extends Base {
60
+ private meta;
61
+ constructor(options: ApiGenSchema, meta: ODataMetadata);
62
+ template(): Source;
63
+ variables(): {
64
+ [name: string]: any;
65
+ };
66
+ name(): string;
67
+ fileName(): string;
68
+ directory(): string;
69
+ fullName(): string;
70
+ importTypes(): string[];
71
+ }
@@ -0,0 +1,240 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Metadata = exports.Index = exports.Base = exports.Callable = void 0;
4
+ const core_1 = require("@angular-devkit/core");
5
+ const random_1 = require("../../random");
6
+ const import_1 = require("./import");
7
+ const schematics_1 = require("@angular-devkit/schematics");
8
+ const csdl_function_action_1 = require("../metadata/csdl/csdl-function-action");
9
+ const utils_1 = require("../utils");
10
+ class Callable {
11
+ constructor(callable) {
12
+ this.callable = callable;
13
+ this.callables = [];
14
+ this.callables.push(callable);
15
+ }
16
+ addOverload(callable) {
17
+ this.callables.push(callable);
18
+ }
19
+ name() {
20
+ return this.callable.Name;
21
+ }
22
+ isBound() {
23
+ var _a;
24
+ return (_a = this.callable.IsBound) !== null && _a !== void 0 ? _a : false;
25
+ }
26
+ bindingParameter() {
27
+ var _a;
28
+ return (_a = this.callable.Parameter) === null || _a === void 0 ? void 0 : _a.find((p) => p.Name === csdl_function_action_1.BINDING_PARAMETER_NAME);
29
+ }
30
+ parameters() {
31
+ const parameters = this.callables.reduce((acc, c) => {
32
+ var _a;
33
+ for (let param of (_a = c.Parameter) !== null && _a !== void 0 ? _a : []) {
34
+ if (acc.some((p) => p.Name === param.Name))
35
+ continue;
36
+ acc.push(param);
37
+ }
38
+ return acc;
39
+ }, []);
40
+ const names = parameters.map((p) => p.Name);
41
+ const binding = parameters.find((p) => p.Name === csdl_function_action_1.BINDING_PARAMETER_NAME);
42
+ const inAllCallables = names.filter((n) => n !== csdl_function_action_1.BINDING_PARAMETER_NAME &&
43
+ this.callables.every((c) => { var _a; return ((_a = c.Parameter) !== null && _a !== void 0 ? _a : []).some((p) => p.Name === n); }));
44
+ const required = parameters.filter((p) => p.Name !== csdl_function_action_1.BINDING_PARAMETER_NAME && inAllCallables.includes(p.Name));
45
+ const optional = parameters.filter((p) => p.Name !== csdl_function_action_1.BINDING_PARAMETER_NAME && !inAllCallables.includes(p.Name));
46
+ return {
47
+ binding,
48
+ required,
49
+ optional,
50
+ };
51
+ }
52
+ returnType() {
53
+ return this.callable.ReturnType;
54
+ }
55
+ fullName() {
56
+ return this.callable.fullName();
57
+ }
58
+ resourceFunction() {
59
+ const isFunction = this.callable instanceof csdl_function_action_1.CsdlFunction;
60
+ const methodName = core_1.strings.camelize(this.callable.Name);
61
+ const { binding, required, optional } = this.parameters();
62
+ const parameters = [...required, ...optional];
63
+ const bindingType = binding !== undefined ? (0, utils_1.toTypescriptType)(binding.Type) : '';
64
+ const returnType = this.returnType();
65
+ const retType = returnType === undefined ? 'null' : (0, utils_1.toTypescriptType)(returnType.Type);
66
+ const bindingMethod = !(binding === null || binding === void 0 ? void 0 : binding.Collection) ? 'entity' : 'entities';
67
+ const baseMethod = isFunction ? 'function' : 'action';
68
+ const keyParameter = !(binding === null || binding === void 0 ? void 0 : binding.Collection)
69
+ ? `key: EntityKey<${bindingType}>`
70
+ : '';
71
+ const key = !(binding === null || binding === void 0 ? void 0 : binding.Collection) ? `key` : '';
72
+ const parametersType = parameters.length === 0
73
+ ? 'null'
74
+ : `{${parameters
75
+ .map((p) => {
76
+ const op = optional.includes(p);
77
+ return `${p.Name}${op ? '?' : ''}: ${(0, utils_1.toTypescriptType)(p.Type)}`;
78
+ })
79
+ .join(', ')}}`;
80
+ return `public ${methodName}(${keyParameter}) {
81
+ return this.${bindingMethod}(${key}).${baseMethod}<${parametersType}, ${retType}>('${this.fullName()}');
82
+ }`;
83
+ }
84
+ callableFunction() {
85
+ const isFunction = this.callable instanceof csdl_function_action_1.CsdlFunction;
86
+ const { binding, required, optional } = this.parameters();
87
+ const parameters = [...required, ...optional];
88
+ const returnType = this.returnType();
89
+ const methodResourceName = core_1.strings.camelize(this.callable.Name);
90
+ const methodName = core_1.strings.classify(this.callable.Name);
91
+ const responseType = returnType === undefined
92
+ ? 'none'
93
+ : (returnType === null || returnType === void 0 ? void 0 : returnType.Collection)
94
+ ? 'entities'
95
+ : (returnType === null || returnType === void 0 ? void 0 : returnType.Type.startsWith('Edm.'))
96
+ ? 'property'
97
+ : 'entity';
98
+ const retType = returnType === undefined ? 'null' : (0, utils_1.toTypescriptType)(returnType.Type);
99
+ const bindingType = binding !== undefined ? (0, utils_1.toTypescriptType)(binding.Type) : '';
100
+ const baseMethod = isFunction ? 'callFunction' : 'callAction';
101
+ const parametersCall = parameters.length === 0
102
+ ? 'null'
103
+ : `{${parameters.map((p) => p.Name).join(', ')}}`;
104
+ // Method arguments
105
+ let args = !(binding === null || binding === void 0 ? void 0 : binding.Collection) ? [`key: EntityKey<${bindingType}>`] : [];
106
+ args = [
107
+ ...args,
108
+ ...(required.length === 0
109
+ ? []
110
+ : required.map((p) => `${p.Name}: ${(0, utils_1.toTypescriptType)(p.Type)}`)),
111
+ ];
112
+ args = [
113
+ ...args,
114
+ ...(optional.length === 0
115
+ ? []
116
+ : optional.map((p) => `${p.Name}?: ${(0, utils_1.toTypescriptType)(p.Type)}`)),
117
+ ];
118
+ const optionsType = returnType !== undefined && returnType.Type.startsWith('Edm.')
119
+ ? isFunction
120
+ ? 'ODataOptions & {alias?: boolean}'
121
+ : 'ODataOptions'
122
+ : isFunction
123
+ ? `ODataFunctionOptions<${retType}>`
124
+ : `ODataActionOptions<${retType}>`;
125
+ args.push(`options?: ${optionsType}`);
126
+ // Key parameter
127
+ const key = !(binding === null || binding === void 0 ? void 0 : binding.Collection) ? `key` : '';
128
+ // Render
129
+ return `public call${methodName}(${args.join(', ')}) {
130
+ return this.${baseMethod}(${parametersCall}, this.${methodResourceName}(${key}), '${responseType}', options);
131
+ }`;
132
+ }
133
+ }
134
+ exports.Callable = Callable;
135
+ class Base {
136
+ constructor(options) {
137
+ this.options = options;
138
+ this.dependencies = [];
139
+ this.callables = [];
140
+ }
141
+ path() {
142
+ const directory = this.directory();
143
+ const filename = this.fileName();
144
+ return directory !== '' ? directory + `/${filename}` : filename;
145
+ }
146
+ imports() {
147
+ const groups = this.dependencies
148
+ .filter((a) => a[1].path() != this.path())
149
+ .reduce((acc, i) => {
150
+ const path = (0, utils_1.makeRelativePath)(this.directory(), i[1].path());
151
+ if (acc[path] === undefined) {
152
+ acc[path] = [];
153
+ }
154
+ acc[path].push(i);
155
+ return acc;
156
+ }, {});
157
+ return Object.entries(groups).map(([path, items]) => {
158
+ const names = items.reduce((acc, i) => [...acc, i[0]], []);
159
+ return new import_1.Import(names, path);
160
+ });
161
+ }
162
+ cleanImportedNames() {
163
+ this.dependencies.forEach((d) => (d[1].importedName = d[1].name()));
164
+ }
165
+ addDependency(renderable) {
166
+ if (this.dependencies.every((d) => d[1] != renderable)) {
167
+ var alias = renderable.name();
168
+ while (this.dependencies.some((d) => d[0] == alias)) {
169
+ alias = (0, random_1.getRandomName)();
170
+ }
171
+ this.dependencies.push([alias, renderable]);
172
+ }
173
+ }
174
+ addDependencies(renderables) {
175
+ renderables.forEach((r) => this.addDependency(r));
176
+ }
177
+ addCallable(callable) {
178
+ this.callables.push(callable);
179
+ }
180
+ addCallables(callables) {
181
+ callables.forEach((r) => this.addCallable(r));
182
+ }
183
+ }
184
+ exports.Base = Base;
185
+ class Index extends Base {
186
+ constructor(options) {
187
+ super(options);
188
+ }
189
+ template() {
190
+ return (0, schematics_1.url)('./files/index');
191
+ }
192
+ variables() {
193
+ return Object.assign({}, this.options);
194
+ }
195
+ name() {
196
+ return '';
197
+ }
198
+ fileName() {
199
+ return 'index';
200
+ }
201
+ directory() {
202
+ return '';
203
+ }
204
+ fullName() {
205
+ return this.name();
206
+ }
207
+ importTypes() {
208
+ return [];
209
+ }
210
+ }
211
+ exports.Index = Index;
212
+ class Metadata extends Base {
213
+ constructor(options, meta) {
214
+ super(options);
215
+ this.meta = meta;
216
+ }
217
+ template() {
218
+ return (0, schematics_1.url)('./files/metadata');
219
+ }
220
+ variables() {
221
+ return { content: JSON.stringify(this.meta.toJson(), null, 2) };
222
+ }
223
+ name() {
224
+ return '';
225
+ }
226
+ fileName() {
227
+ return 'metadata';
228
+ }
229
+ directory() {
230
+ return '';
231
+ }
232
+ fullName() {
233
+ return this.name();
234
+ }
235
+ importTypes() {
236
+ return [];
237
+ }
238
+ }
239
+ exports.Metadata = Metadata;
240
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../../projects/angular-odata/schematics/apigen/angular/base.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { Base } from './base';
2
+ import { CsdlComplexType, CsdlEntityType } from '../metadata/csdl/csdl-structured-type';
3
+ import { Source } from '@angular-devkit/schematics';
4
+ import { Schema as ApiGenSchema } from '../schema';
5
+ import { CsdlNavigationProperty, CsdlProperty } from '../metadata/csdl/csdl-structural-property';
6
+ export declare class EntityProperty {
7
+ protected edmType: CsdlProperty | CsdlNavigationProperty;
8
+ constructor(edmType: CsdlProperty | CsdlNavigationProperty);
9
+ name(): string;
10
+ type(): string;
11
+ }
12
+ export declare class Entity extends Base {
13
+ protected edmType: CsdlEntityType | CsdlComplexType;
14
+ constructor(options: ApiGenSchema, edmType: CsdlEntityType | CsdlComplexType);
15
+ template(): Source;
16
+ variables(): {
17
+ [name: string]: any;
18
+ };
19
+ name(): string;
20
+ fileName(): string;
21
+ directory(): string;
22
+ fullName(): string;
23
+ importTypes(): string[];
24
+ }
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Entity = exports.EntityProperty = void 0;
4
+ const core_1 = require("@angular-devkit/core");
5
+ const base_1 = require("./base");
6
+ const csdl_structured_type_1 = require("../metadata/csdl/csdl-structured-type");
7
+ const schematics_1 = require("@angular-devkit/schematics");
8
+ const utils_1 = require("../utils");
9
+ class EntityProperty {
10
+ constructor(edmType) {
11
+ this.edmType = edmType;
12
+ }
13
+ name() {
14
+ return this.edmType.Name;
15
+ }
16
+ type() {
17
+ let type = (0, utils_1.toTypescriptType)(this.edmType.Type);
18
+ type += this.edmType.Collection ? '[]' : '';
19
+ type += this.edmType.Nullable ? ' | null' : '';
20
+ return type;
21
+ }
22
+ }
23
+ exports.EntityProperty = EntityProperty;
24
+ class Entity extends base_1.Base {
25
+ constructor(options, edmType) {
26
+ super(options);
27
+ this.edmType = edmType;
28
+ }
29
+ template() {
30
+ return (0, schematics_1.url)('./files/entity');
31
+ }
32
+ variables() {
33
+ var _a, _b;
34
+ return {
35
+ type: this.name() +
36
+ (this.edmType instanceof csdl_structured_type_1.CsdlEntityType ? 'EntityType' : 'ComplexType'),
37
+ baseType: this.edmType.BaseType,
38
+ properties: [
39
+ ...((_a = this.edmType.Property) !== null && _a !== void 0 ? _a : []).map((p) => new EntityProperty(p)),
40
+ ...((_b = this.edmType.NavigationProperty) !== null && _b !== void 0 ? _b : []).map((p) => new EntityProperty(p)),
41
+ ],
42
+ };
43
+ }
44
+ name() {
45
+ return core_1.strings.classify(this.edmType.name());
46
+ }
47
+ fileName() {
48
+ return (core_1.strings.dasherize(this.edmType.name()) +
49
+ (this.edmType instanceof csdl_structured_type_1.CsdlEntityType ? '.entity' : '.complex'));
50
+ }
51
+ directory() {
52
+ return this.edmType.namespace().replace(/\./g, '/');
53
+ }
54
+ fullName() {
55
+ return this.edmType.fullName();
56
+ }
57
+ importTypes() {
58
+ var _a, _b, _c, _d;
59
+ const imports = [];
60
+ if (this.edmType.BaseType) {
61
+ imports.push(this.edmType.BaseType);
62
+ }
63
+ for (let prop of (_b = (_a = this.edmType) === null || _a === void 0 ? void 0 : _a.Property) !== null && _b !== void 0 ? _b : []) {
64
+ if (!prop.Type.startsWith('Edm.')) {
65
+ imports.push(prop.Type);
66
+ }
67
+ }
68
+ for (let prop of (_d = (_c = this.edmType) === null || _c === void 0 ? void 0 : _c.NavigationProperty) !== null && _d !== void 0 ? _d : []) {
69
+ if (!prop.Type.startsWith('Edm.')) {
70
+ imports.push(prop.Type);
71
+ }
72
+ }
73
+ return imports;
74
+ }
75
+ }
76
+ exports.Entity = Entity;
77
+ //# sourceMappingURL=entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity.js","sourceRoot":"","sources":["../../../../../projects/angular-odata/schematics/apigen/angular/entity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { CsdlEnumType, CsdlMember } from '../metadata/csdl/csdl-enum-type';
2
+ import { Base } from './base';
3
+ import { Source } from '@angular-devkit/schematics';
4
+ import { Schema as ApiGenSchema } from '../schema';
5
+ export declare class EnumValue {
6
+ private edmType;
7
+ constructor(edmType: CsdlMember);
8
+ name(): string;
9
+ value(): number | undefined;
10
+ }
11
+ export declare class Enum extends Base {
12
+ protected edmType: CsdlEnumType;
13
+ constructor(options: ApiGenSchema, edmType: CsdlEnumType);
14
+ template(): Source;
15
+ variables(): {
16
+ [name: string]: any;
17
+ };
18
+ name(): string;
19
+ fileName(): string;
20
+ directory(): string;
21
+ fullName(): string;
22
+ members(): string[];
23
+ flags(): boolean | undefined;
24
+ importTypes(): string[];
25
+ }
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Enum = exports.EnumValue = void 0;
4
+ const core_1 = require("@angular-devkit/core");
5
+ const base_1 = require("./base");
6
+ const schematics_1 = require("@angular-devkit/schematics");
7
+ class EnumValue {
8
+ constructor(edmType) {
9
+ this.edmType = edmType;
10
+ }
11
+ name() {
12
+ return this.edmType.Name;
13
+ }
14
+ value() {
15
+ return this.edmType.Value;
16
+ }
17
+ }
18
+ exports.EnumValue = EnumValue;
19
+ class Enum extends base_1.Base {
20
+ constructor(options, edmType) {
21
+ super(options);
22
+ this.edmType = edmType;
23
+ }
24
+ template() {
25
+ return (0, schematics_1.url)('./files/enum');
26
+ }
27
+ variables() {
28
+ var _a;
29
+ return {
30
+ type: this.name() + 'EnumType',
31
+ values: ((_a = this.edmType.Member) !== null && _a !== void 0 ? _a : []).map((m) => new EnumValue(m)),
32
+ };
33
+ }
34
+ name() {
35
+ return core_1.strings.classify(this.edmType.name());
36
+ }
37
+ fileName() {
38
+ return core_1.strings.dasherize(this.edmType.name()) + '.enum';
39
+ }
40
+ directory() {
41
+ return this.edmType.namespace().replace(/\./g, '/');
42
+ }
43
+ fullName() {
44
+ return this.edmType.fullName();
45
+ }
46
+ members() {
47
+ return this.edmType.Member.map((m) => `${m.Name} = ${m.Value}`);
48
+ }
49
+ flags() {
50
+ return this.edmType.IsFlags;
51
+ }
52
+ importTypes() {
53
+ return [];
54
+ }
55
+ }
56
+ exports.Enum = Enum;
57
+ //# sourceMappingURL=enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enum.js","sourceRoot":"","sources":["../../../../../projects/angular-odata/schematics/apigen/angular/enum.ts"],"names":[],"mappings":";;;AACA,+CAA+C;AAC/C,iCAA8B;AAE9B,2DAAyD;AAGzD,MAAa,SAAS;IACpB,YAAoB,OAAmB;QAAnB,YAAO,GAAP,OAAO,CAAY;IAAG,CAAC;IACpC,IAAI;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;IACM,KAAK;QACV,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;IAC5B,CAAC;CACF;AARD,8BAQC;AACD,MAAa,IAAK,SAAQ,WAAI;IAC5B,YACE,OAAqB,EACX,OAAqB;QAE/B,KAAK,CAAC,OAAO,CAAC,CAAC;QAFL,YAAO,GAAP,OAAO,CAAc;IAGjC,CAAC;IACe,QAAQ;QACtB,OAAO,IAAA,gBAAG,EAAC,cAAc,CAAC,CAAC;IAC7B,CAAC;IACe,SAAS;;QACvB,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,UAAU;YAC9B,MAAM,EAAE,CAAC,MAAA,IAAI,CAAC,OAAO,CAAC,MAAM,mCAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC;SACjE,CAAC;IACJ,CAAC;IACe,IAAI;QAClB,OAAO,cAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IACe,QAAQ;QACtB,OAAO,cAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC;IAC1D,CAAC;IACe,SAAS;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACtD,CAAC;IACe,QAAQ;QACtB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;IACM,OAAO;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAClE,CAAC;IACM,KAAK;QACV,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;IAC9B,CAAC;IACe,WAAW;QACzB,OAAO,EAAE,CAAC;IACZ,CAAC;CACF;AArCD,oBAqCC"}
@@ -0,0 +1,6 @@
1
+ export declare class Import {
2
+ names: string[];
3
+ from: string;
4
+ constructor(names: string[], from: string);
5
+ path(): string;
6
+ }
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Import = void 0;
4
+ class Import {
5
+ constructor(names, from) {
6
+ this.names = [];
7
+ this.names = names;
8
+ this.from = from;
9
+ }
10
+ path() {
11
+ var path = this.from.toString();
12
+ if (!path.startsWith('../'))
13
+ path = `./${path}`;
14
+ return path;
15
+ }
16
+ }
17
+ exports.Import = Import;
18
+ //# sourceMappingURL=import.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import.js","sourceRoot":"","sources":["../../../../../projects/angular-odata/schematics/apigen/angular/import.ts"],"names":[],"mappings":";;;AAAA,MAAa,MAAM;IAGjB,YAAmB,KAAe,EAAE,IAAY;QAFzC,UAAK,GAAa,EAAE,CAAC;QAG1B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,IAAI;QACT,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;YAAE,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAbD,wBAaC"}
@@ -0,0 +1,18 @@
1
+ import { Base } from './base';
2
+ import { Source } from '@angular-devkit/schematics';
3
+ import { Schema as ApiGenSchema } from '../schema';
4
+ import { Service } from './service';
5
+ export declare class Module extends Base {
6
+ services: Service[];
7
+ constructor(options: ApiGenSchema);
8
+ template(): Source;
9
+ variables(): {
10
+ [name: string]: any;
11
+ };
12
+ addService(service: Service): void;
13
+ name(): string;
14
+ fileName(): string;
15
+ directory(): string;
16
+ fullName(): string;
17
+ importTypes(): string[];
18
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Module = void 0;
4
+ const core_1 = require("@angular-devkit/core");
5
+ const base_1 = require("./base");
6
+ const schematics_1 = require("@angular-devkit/schematics");
7
+ class Module extends base_1.Base {
8
+ constructor(options) {
9
+ super(options);
10
+ this.services = [];
11
+ }
12
+ template() {
13
+ return (0, schematics_1.url)('./files/module');
14
+ }
15
+ variables() {
16
+ return {
17
+ services: this.services,
18
+ };
19
+ }
20
+ addService(service) {
21
+ this.services.push(service);
22
+ this.addDependency(service);
23
+ }
24
+ name() {
25
+ return core_1.strings.classify(this.options.name) + 'Module';
26
+ }
27
+ fileName() {
28
+ return core_1.strings.dasherize(this.options.name) + '.module';
29
+ }
30
+ directory() {
31
+ return '';
32
+ }
33
+ fullName() {
34
+ return this.name();
35
+ }
36
+ importTypes() {
37
+ return [];
38
+ }
39
+ }
40
+ exports.Module = Module;
41
+ //# sourceMappingURL=module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../../../../projects/angular-odata/schematics/apigen/angular/module.ts"],"names":[],"mappings":";;;AAAA,+CAA+C;AAC/C,iCAA8B;AAC9B,2DAAyD;AAIzD,MAAa,MAAO,SAAQ,WAAI;IAE9B,YAAY,OAAqB;QAC/B,KAAK,CAAC,OAAO,CAAC,CAAC;QAFjB,aAAQ,GAAc,EAAE,CAAC;IAGzB,CAAC;IACe,QAAQ;QACtB,OAAO,IAAA,gBAAG,EAAC,gBAAgB,CAAC,CAAC;IAC/B,CAAC;IACe,SAAS;QACvB,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC;IACJ,CAAC;IACM,UAAU,CAAC,OAAgB;QAChC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5B,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IACe,IAAI;QAClB,OAAO,cAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;IACxD,CAAC;IACe,QAAQ;QACtB,OAAO,cAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC;IAC1D,CAAC;IACe,SAAS;QACvB,OAAO,EAAE,CAAC;IACZ,CAAC;IACe,QAAQ;QACtB,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;IACrB,CAAC;IACe,WAAW;QACzB,OAAO,EAAE,CAAC;IACZ,CAAC;CACF;AAhCD,wBAgCC"}
@@ -0,0 +1,20 @@
1
+ import { Base } from './base';
2
+ import { CsdlEntityContainer } from '../metadata/csdl/csdl-entity-container';
3
+ import { CsdlSingleton } from '../metadata/csdl/csdl-singleton';
4
+ import { CsdlEntitySet } from '../metadata/csdl/csdl-entity-set';
5
+ import { Source } from '@angular-devkit/schematics';
6
+ import { Schema as ApiGenSchema } from '../schema';
7
+ export declare class Service extends Base {
8
+ protected edmElement: CsdlEntitySet | CsdlEntityContainer | CsdlSingleton;
9
+ constructor(options: ApiGenSchema, edmElement: CsdlEntitySet | CsdlEntityContainer | CsdlSingleton);
10
+ template(): Source;
11
+ variables(): {
12
+ [name: string]: any;
13
+ };
14
+ entityType(): string;
15
+ name(): string;
16
+ fileName(): string;
17
+ directory(): string;
18
+ fullName(): string;
19
+ importTypes(): string[];
20
+ }