@magda/typescript-common 1.1.0-alpha.2 → 1.1.0-alpha.3

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 (249) hide show
  1. package/dist/AspectBuilder.d.ts +7 -0
  2. package/dist/AspectBuilder.js +3 -0
  3. package/dist/AspectBuilder.js.map +1 -0
  4. package/dist/AspectCreationFailure.d.ts +5 -0
  5. package/dist/AspectCreationFailure.js +10 -0
  6. package/dist/AspectCreationFailure.js.map +1 -0
  7. package/dist/AsyncPage.d.ts +18 -0
  8. package/dist/AsyncPage.js +140 -0
  9. package/dist/AsyncPage.js.map +1 -0
  10. package/dist/ConnectionResult.d.ts +16 -0
  11. package/dist/ConnectionResult.js +77 -0
  12. package/dist/ConnectionResult.js.map +1 -0
  13. package/dist/ConnectorRecordId.d.ts +15 -0
  14. package/dist/ConnectorRecordId.js +46 -0
  15. package/dist/ConnectorRecordId.js.map +1 -0
  16. package/dist/JsonConnector.d.ts +195 -0
  17. package/dist/JsonConnector.js +427 -0
  18. package/dist/JsonConnector.js.map +1 -0
  19. package/dist/JsonTransformer.d.ts +112 -0
  20. package/dist/JsonTransformer.js +225 -0
  21. package/dist/JsonTransformer.js.map +1 -0
  22. package/dist/OpaCompileResponseParser.d.ts +480 -0
  23. package/dist/OpaCompileResponseParser.js +1134 -0
  24. package/dist/OpaCompileResponseParser.js.map +1 -0
  25. package/dist/RecordCreationFailure.d.ts +7 -0
  26. package/dist/RecordCreationFailure.js +11 -0
  27. package/dist/RecordCreationFailure.js.map +1 -0
  28. package/dist/SimpleOpaSQLTranslator.d.ts +14 -0
  29. package/dist/SimpleOpaSQLTranslator.js +79 -0
  30. package/dist/SimpleOpaSQLTranslator.js.map +1 -0
  31. package/dist/addTrailingSlash.d.ts +1 -0
  32. package/dist/addTrailingSlash.js +15 -0
  33. package/dist/addTrailingSlash.js.map +1 -0
  34. package/dist/appendUrlSegments.d.ts +2 -0
  35. package/dist/appendUrlSegments.js +18 -0
  36. package/dist/appendUrlSegments.js.map +1 -0
  37. package/dist/authorization-api/AccessControlError.d.ts +4 -0
  38. package/dist/authorization-api/AccessControlError.js +13 -0
  39. package/dist/authorization-api/AccessControlError.js.map +1 -0
  40. package/dist/authorization-api/ApiClient.d.ts +141 -0
  41. package/dist/authorization-api/ApiClient.js +335 -0
  42. package/dist/authorization-api/ApiClient.js.map +1 -0
  43. package/dist/authorization-api/AuthError.d.ts +4 -0
  44. package/dist/authorization-api/AuthError.js +13 -0
  45. package/dist/authorization-api/AuthError.js.map +1 -0
  46. package/dist/authorization-api/GenericError.d.ts +9 -0
  47. package/dist/authorization-api/GenericError.js +17 -0
  48. package/dist/authorization-api/GenericError.js.map +1 -0
  49. package/dist/authorization-api/authMiddleware.d.ts +7 -0
  50. package/dist/authorization-api/authMiddleware.js +52 -0
  51. package/dist/authorization-api/authMiddleware.js.map +1 -0
  52. package/dist/authorization-api/model.d.ts +99 -0
  53. package/dist/authorization-api/model.js +3 -0
  54. package/dist/authorization-api/model.js.map +1 -0
  55. package/dist/coerceJson.d.ts +2 -0
  56. package/dist/coerceJson.js +13 -0
  57. package/dist/coerceJson.js.map +1 -0
  58. package/dist/createServiceError.d.ts +19 -0
  59. package/dist/createServiceError.js +45 -0
  60. package/dist/createServiceError.js.map +1 -0
  61. package/dist/delay.d.ts +2 -0
  62. package/dist/delay.js +9 -0
  63. package/dist/delay.js.map +1 -0
  64. package/dist/express/status.d.ts +30 -0
  65. package/dist/express/status.js +180 -0
  66. package/dist/express/status.js.map +1 -0
  67. package/dist/formatServiceError.d.ts +1 -0
  68. package/dist/formatServiceError.js +23 -0
  69. package/dist/formatServiceError.js.map +1 -0
  70. package/dist/generated/registry/api.d.ts +596 -0
  71. package/dist/generated/registry/api.js +2060 -0
  72. package/dist/generated/registry/api.js.map +1 -0
  73. package/dist/getAbsoluteUrl.d.ts +12 -0
  74. package/dist/getAbsoluteUrl.js +35 -0
  75. package/dist/getAbsoluteUrl.js.map +1 -0
  76. package/dist/getBasePathFromUrl.d.ts +10 -0
  77. package/dist/getBasePathFromUrl.js +27 -0
  78. package/dist/getBasePathFromUrl.js.map +1 -0
  79. package/dist/markdownToHtml.d.ts +3 -0
  80. package/dist/markdownToHtml.js +38 -0
  81. package/dist/markdownToHtml.js.map +1 -0
  82. package/dist/opa/OpaTypes.d.ts +41 -0
  83. package/dist/opa/OpaTypes.js +3 -0
  84. package/dist/opa/OpaTypes.js.map +1 -0
  85. package/dist/opa/getAuthDecision.d.ts +19 -0
  86. package/dist/opa/getAuthDecision.js +94 -0
  87. package/dist/opa/getAuthDecision.js.map +1 -0
  88. package/dist/opa/queryOpa.d.ts +1 -0
  89. package/dist/opa/queryOpa.js +41 -0
  90. package/dist/opa/queryOpa.js.map +1 -0
  91. package/dist/registry/AuthorizedRegistryClient.d.ts +29 -0
  92. package/dist/registry/AuthorizedRegistryClient.js +115 -0
  93. package/dist/registry/AuthorizedRegistryClient.js.map +1 -0
  94. package/dist/registry/RegistryClient.d.ts +36 -0
  95. package/dist/registry/RegistryClient.js +59 -0
  96. package/dist/registry/RegistryClient.js.map +1 -0
  97. package/dist/registry/TenantConsts.d.ts +31 -0
  98. package/dist/registry/TenantConsts.js +35 -0
  99. package/dist/registry/TenantConsts.js.map +1 -0
  100. package/dist/registry-manual/api.d.ts +9 -0
  101. package/dist/registry-manual/api.js +10 -0
  102. package/dist/registry-manual/api.js.map +1 -0
  103. package/dist/request.d.ts +3 -0
  104. package/dist/request.js +19 -0
  105. package/dist/request.js.map +1 -0
  106. package/dist/retry.d.ts +1 -0
  107. package/dist/retry.js +21 -0
  108. package/dist/retry.js.map +1 -0
  109. package/dist/retryBackoff.d.ts +1 -0
  110. package/dist/retryBackoff.js +21 -0
  111. package/dist/retryBackoff.js.map +1 -0
  112. package/dist/runLater.d.ts +1 -0
  113. package/dist/runLater.js +16 -0
  114. package/dist/runLater.js.map +1 -0
  115. package/dist/session/GetUserId.d.ts +5 -0
  116. package/dist/session/GetUserId.js +41 -0
  117. package/dist/session/GetUserId.js.map +1 -0
  118. package/dist/session/GetUserSession.d.ts +3 -0
  119. package/dist/session/GetUserSession.js +22 -0
  120. package/dist/session/GetUserSession.js.map +1 -0
  121. package/dist/session/addJwtSecretFromEnvVar.d.ts +14 -0
  122. package/dist/session/addJwtSecretFromEnvVar.js +23 -0
  123. package/dist/session/addJwtSecretFromEnvVar.js.map +1 -0
  124. package/dist/session/buildJwt.d.ts +1 -0
  125. package/dist/session/buildJwt.js +8 -0
  126. package/dist/session/buildJwt.js.map +1 -0
  127. package/dist/session/cookieUtils.d.ts +16 -0
  128. package/dist/session/cookieUtils.js +19 -0
  129. package/dist/session/cookieUtils.js.map +1 -0
  130. package/dist/session/destroySession.d.ts +10 -0
  131. package/dist/session/destroySession.js +44 -0
  132. package/dist/session/destroySession.js.map +1 -0
  133. package/dist/session/getSessionId.d.ts +2 -0
  134. package/dist/session/getSessionId.js +28 -0
  135. package/dist/session/getSessionId.js.map +1 -0
  136. package/dist/tenant-api/AuthorizedTenantClient.d.ts +25 -0
  137. package/dist/tenant-api/AuthorizedTenantClient.js +61 -0
  138. package/dist/tenant-api/AuthorizedTenantClient.js.map +1 -0
  139. package/dist/tenant-api/Tenant.d.ts +17 -0
  140. package/dist/tenant-api/Tenant.js +10 -0
  141. package/dist/tenant-api/Tenant.js.map +1 -0
  142. package/dist/test/JsonConnector.spec.d.ts +1 -0
  143. package/dist/test/JsonConnector.spec.js +352 -0
  144. package/dist/test/JsonConnector.spec.js.map +1 -0
  145. package/dist/test/JsonTransformer.spec.d.ts +1 -0
  146. package/dist/test/JsonTransformer.spec.js +98 -0
  147. package/dist/test/JsonTransformer.spec.js.map +1 -0
  148. package/dist/test/arbitraries.d.ts +98 -0
  149. package/dist/test/arbitraries.js +264 -0
  150. package/dist/test/arbitraries.js.map +1 -0
  151. package/dist/test/aspect-templates/organization-details.d.ts +4 -0
  152. package/dist/test/aspect-templates/organization-details.js +11 -0
  153. package/dist/test/aspect-templates/organization-details.js.map +1 -0
  154. package/dist/test/buildApiClient.spec.d.ts +1 -0
  155. package/dist/test/buildApiClient.spec.js +177 -0
  156. package/dist/test/buildApiClient.spec.js.map +1 -0
  157. package/dist/test/buildAuthorizedTenantClient.spec.d.ts +1 -0
  158. package/dist/test/buildAuthorizedTenantClient.spec.js +60 -0
  159. package/dist/test/buildAuthorizedTenantClient.spec.js.map +1 -0
  160. package/dist/test/connectors/MockExpressServer.d.ts +5 -0
  161. package/dist/test/connectors/MockExpressServer.js +28 -0
  162. package/dist/test/connectors/MockExpressServer.js.map +1 -0
  163. package/dist/test/connectors/MockRegistry.d.ts +7 -0
  164. package/dist/test/connectors/MockRegistry.js +93 -0
  165. package/dist/test/connectors/MockRegistry.js.map +1 -0
  166. package/dist/test/connectors/runConnectorTest.d.ts +5 -0
  167. package/dist/test/connectors/runConnectorTest.js +106 -0
  168. package/dist/test/connectors/runConnectorTest.js.map +1 -0
  169. package/dist/test/db/getTestDBConfig.d.ts +7 -0
  170. package/dist/test/db/getTestDBConfig.js +13 -0
  171. package/dist/test/db/getTestDBConfig.js.map +1 -0
  172. package/dist/test/db/runMigrationSql.d.ts +9 -0
  173. package/dist/test/db/runMigrationSql.js +82 -0
  174. package/dist/test/db/runMigrationSql.js.map +1 -0
  175. package/dist/test/express/status.spec.d.ts +1 -0
  176. package/dist/test/express/status.spec.js +160 -0
  177. package/dist/test/express/status.spec.js.map +1 -0
  178. package/dist/test/fakeArgv.d.ts +2 -0
  179. package/dist/test/fakeArgv.js +7 -0
  180. package/dist/test/fakeArgv.js.map +1 -0
  181. package/dist/test/getAuthDecision.spec.d.ts +1 -0
  182. package/dist/test/getAuthDecision.spec.js +22 -0
  183. package/dist/test/getAuthDecision.spec.js.map +1 -0
  184. package/dist/test/getBasePathFromUrl.spec.d.ts +1 -0
  185. package/dist/test/getBasePathFromUrl.spec.js +25 -0
  186. package/dist/test/getBasePathFromUrl.spec.js.map +1 -0
  187. package/dist/test/jsverify.d.ts +2 -0
  188. package/dist/test/jsverify.js +8 -0
  189. package/dist/test/jsverify.js.map +1 -0
  190. package/dist/test/mockAuthApiHost.d.ts +14 -0
  191. package/dist/test/mockAuthApiHost.js +174 -0
  192. package/dist/test/mockAuthApiHost.js.map +1 -0
  193. package/dist/test/mockAuthorization.d.ts +3 -0
  194. package/dist/test/mockAuthorization.js +24 -0
  195. package/dist/test/mockAuthorization.js.map +1 -0
  196. package/dist/test/mockTenantDataStore.d.ts +8 -0
  197. package/dist/test/mockTenantDataStore.js +41 -0
  198. package/dist/test/mockTenantDataStore.js.map +1 -0
  199. package/dist/test/mockUserDataStore.d.ts +11 -0
  200. package/dist/test/mockUserDataStore.js +56 -0
  201. package/dist/test/mockUserDataStore.js.map +1 -0
  202. package/dist/test/registry/buildAuthorizedClient.spec.d.ts +1 -0
  203. package/dist/test/registry/buildAuthorizedClient.spec.js +101 -0
  204. package/dist/test/registry/buildAuthorizedClient.spec.js.map +1 -0
  205. package/dist/test/sampleOpaResponse.json +480 -0
  206. package/dist/test/sampleOpaResponseSimple.json +173 -0
  207. package/dist/test/sampleOpaResponseUnconditionalTrue.json +193 -0
  208. package/dist/test/sampleOpaResponseUnconditionalTrueWithDefaultRule.json +303 -0
  209. package/dist/test/sampleOpaResponseWithDefaultRule.json +303 -0
  210. package/dist/test/session/buildJwt.spec.d.ts +1 -0
  211. package/dist/test/session/buildJwt.spec.js +50 -0
  212. package/dist/test/session/buildJwt.spec.js.map +1 -0
  213. package/dist/test/session/buildJwtForRegistryEsriOpaGroupsAndOwnerTest.spec.d.ts +1 -0
  214. package/dist/test/session/buildJwtForRegistryEsriOpaGroupsAndOwnerTest.spec.js +64 -0
  215. package/dist/test/session/buildJwtForRegistryEsriOpaGroupsAndOwnerTest.spec.js.map +1 -0
  216. package/dist/test/session/buildJwtForRegistryEsriOpaGroupsTest.spec.d.ts +1 -0
  217. package/dist/test/session/buildJwtForRegistryEsriOpaGroupsTest.spec.js +52 -0
  218. package/dist/test/session/buildJwtForRegistryEsriOpaGroupsTest.spec.js.map +1 -0
  219. package/dist/test/session/buildJwtForRegistryEsriOpaOwnerTest.spec.d.ts +1 -0
  220. package/dist/test/session/buildJwtForRegistryEsriOpaOwnerTest.spec.js +36 -0
  221. package/dist/test/session/buildJwtForRegistryEsriOpaOwnerTest.spec.js.map +1 -0
  222. package/dist/test/testAsyncPage.spec.d.ts +1 -0
  223. package/dist/test/testAsyncPage.spec.js +463 -0
  224. package/dist/test/testAsyncPage.spec.js.map +1 -0
  225. package/dist/test/testOpaCompileResponseParser.spec.d.ts +1 -0
  226. package/dist/test/testOpaCompileResponseParser.spec.js +148 -0
  227. package/dist/test/testOpaCompileResponseParser.spec.js.map +1 -0
  228. package/dist/test/util.d.ts +1 -0
  229. package/dist/test/util.js +8 -0
  230. package/dist/test/util.js.map +1 -0
  231. package/dist/util/arrayToMaybe.d.ts +2 -0
  232. package/dist/util/arrayToMaybe.js +8 -0
  233. package/dist/util/arrayToMaybe.js.map +1 -0
  234. package/dist/util/cleanOrgTitle.d.ts +1 -0
  235. package/dist/util/cleanOrgTitle.js +13 -0
  236. package/dist/util/cleanOrgTitle.js.map +1 -0
  237. package/dist/util/getMinikubeIP.d.ts +1 -0
  238. package/dist/util/getMinikubeIP.js +13 -0
  239. package/dist/util/getMinikubeIP.js.map +1 -0
  240. package/dist/util/isUuid.d.ts +2 -0
  241. package/dist/util/isUuid.js +6 -0
  242. package/dist/util/isUuid.js.map +1 -0
  243. package/dist/util/unionToThrowable.d.ts +1 -0
  244. package/dist/util/unionToThrowable.js +12 -0
  245. package/dist/util/unionToThrowable.js.map +1 -0
  246. package/dist/utilityTypes.d.ts +1 -0
  247. package/dist/utilityTypes.js +3 -0
  248. package/dist/utilityTypes.js.map +1 -0
  249. package/package.json +3 -3
@@ -0,0 +1,225 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BuilderFunctionParameters = exports.buildersToCompiledAspects = void 0;
7
+ const createServiceError_1 = __importDefault(require("./createServiceError"));
8
+ /**
9
+ * A base class for transformers for most any JSON-based catalog source.
10
+ * A transformer takes source data and transforms it to registry records and aspects.
11
+ */
12
+ class JsonTransformer {
13
+ constructor({ sourceId, libraries = {}, datasetAspectBuilders = [], distributionAspectBuilders = [], organizationAspectBuilders = [] }) {
14
+ this.sourceId = sourceId;
15
+ this.datasetAspectBuilders = datasetAspectBuilders.slice();
16
+ this.distributionAspectBuilders = distributionAspectBuilders.slice();
17
+ this.organizationAspectBuilders = organizationAspectBuilders.slice();
18
+ const setupParameters = {
19
+ transformer: this,
20
+ libraries
21
+ };
22
+ const datasetParameters = new DatasetBuilderFunctionParameters();
23
+ datasetParameters.libraries = libraries;
24
+ datasetParameters.transformer = this;
25
+ const distributionParameters = new DistributionBuilderFunctionParameters();
26
+ distributionParameters.libraries = libraries;
27
+ distributionParameters.transformer = this;
28
+ const organizationParameters = new OrganizationBuilderFunctionParameters();
29
+ organizationParameters.libraries = libraries;
30
+ organizationParameters.transformer = this;
31
+ this.datasetAspects = buildersToCompiledAspects(datasetAspectBuilders, setupParameters, datasetParameters);
32
+ this.distributionAspects = buildersToCompiledAspects(distributionAspectBuilders, setupParameters, distributionParameters);
33
+ this.organizationAspects = buildersToCompiledAspects(organizationAspectBuilders, setupParameters, organizationParameters);
34
+ }
35
+ /**
36
+ * Create a {@link Record} from JSON data representing an organization.
37
+ *
38
+ * @param {string} id The ID of the record.
39
+ * @param {string} name The name of the record.
40
+ * @param {object} jsonOrganization The JSON data representing the organization.
41
+ * @returns {Record} The record.
42
+ *
43
+ * @memberof JsonConnector
44
+ */
45
+ organizationJsonToRecord(jsonOrganization) {
46
+ this.organizationAspects.parameters.organization = jsonOrganization;
47
+ const id = this.getIdFromJsonOrganization(jsonOrganization, this.sourceId);
48
+ const name = this.getNameFromJsonOrganization(jsonOrganization);
49
+ const theRecord = this.jsonToRecord(id, name, jsonOrganization, this.organizationAspects);
50
+ return this.reviseOrganizationRecord(theRecord);
51
+ }
52
+ datasetJsonToRecord(jsonDataset) {
53
+ this.datasetAspects.parameters.dataset = jsonDataset;
54
+ const id = this.getIdFromJsonDataset(jsonDataset, this.sourceId);
55
+ const name = this.getNameFromJsonDataset(jsonDataset);
56
+ return this.jsonToRecord(id, name, jsonDataset, this.datasetAspects);
57
+ }
58
+ distributionJsonToRecord(jsonDistribution, jsonDataset) {
59
+ this.distributionAspects.parameters.dataset = jsonDataset;
60
+ this.distributionAspects.parameters.distribution = jsonDistribution;
61
+ const id = this.getIdFromJsonDistribution(jsonDistribution, jsonDataset, this.sourceId);
62
+ const name = this.getNameFromJsonDistribution(jsonDistribution, jsonDataset);
63
+ return this.jsonToRecord(id, name, jsonDistribution, this.distributionAspects);
64
+ }
65
+ getRequiredAspectDefinitions() {
66
+ const allBuilders = this.datasetAspectBuilders
67
+ .concat(this.distributionAspectBuilders)
68
+ .concat(this.organizationAspectBuilders);
69
+ const builderAspectDefinitions = allBuilders.map((builder) => builder.aspectDefinition);
70
+ return builderAspectDefinitions.concat([
71
+ {
72
+ id: "dataset-distributions",
73
+ name: "Dataset Distributions",
74
+ jsonSchema: require("@magda/registry-aspects/dataset-distributions.schema.json")
75
+ },
76
+ {
77
+ id: "source",
78
+ name: "Source",
79
+ jsonSchema: require("@magda/registry-aspects/source.schema.json")
80
+ },
81
+ {
82
+ id: "dataset-publisher",
83
+ name: "Dataset Publisher",
84
+ jsonSchema: require("@magda/registry-aspects/dataset-publisher.schema.json")
85
+ }
86
+ ]);
87
+ }
88
+ reviseOrganizationRecord(record) {
89
+ return record;
90
+ }
91
+ jsonToRecord(id, name, json, aspects) {
92
+ const problems = [];
93
+ function reportProblem(title, message, additionalInfo) {
94
+ problems.push({ title, message, additionalInfo });
95
+ }
96
+ aspects.parameters.reportProblem = reportProblem;
97
+ const generatedAspects = {};
98
+ aspects.aspects.forEach((aspect) => {
99
+ try {
100
+ aspects.parameters.setup = aspect.setupResult;
101
+ const aspectValue = aspect.builderFunction(...aspects.parameterNames.map((parameter) => aspects.parameters[parameter]));
102
+ if (aspectValue !== undefined) {
103
+ generatedAspects[aspect.id] = aspectValue;
104
+ }
105
+ }
106
+ catch (e) {
107
+ const exception = createServiceError_1.default(e);
108
+ reportProblem("Exception while creating aspect " + aspect.id, exception.toString());
109
+ }
110
+ });
111
+ if (!generatedAspects["source"]) {
112
+ generatedAspects["source"] = {};
113
+ }
114
+ if (problems.length > 0) {
115
+ generatedAspects["source"].problems = problems;
116
+ }
117
+ else {
118
+ generatedAspects["source"].problems = undefined;
119
+ }
120
+ return {
121
+ // If the id is undefined it'll be rejected by the JsonConnector
122
+ id: id && id.toString(),
123
+ name: name,
124
+ aspects: generatedAspects,
125
+ sourceTag: undefined,
126
+ tenantId: this.tenantId,
127
+ authnReadPolicyId: undefined
128
+ };
129
+ }
130
+ }
131
+ exports.default = JsonTransformer;
132
+ function buildersToCompiledAspects(builders, setupParameters, buildParameters) {
133
+ const setupParameterNames = Object.keys(setupParameters);
134
+ const buildParameterNames = Object.keys(buildParameters);
135
+ return {
136
+ parameterNames: buildParameterNames,
137
+ parameters: buildParameters,
138
+ aspects: builders.map((builder) => {
139
+ let setupResult = undefined;
140
+ if (builder.setupFunctionString) {
141
+ const setupFunction = new Function(...setupParameterNames, builder.setupFunctionString);
142
+ const setupParametersUntyped = setupParameters;
143
+ setupResult = setupFunction.apply(undefined, setupParameterNames.map((name) => setupParametersUntyped[name]));
144
+ }
145
+ const builderFunction = new Function(...buildParameterNames, builder.builderFunctionString);
146
+ return {
147
+ id: builder.aspectDefinition.id,
148
+ builderFunction: builderFunction,
149
+ setupResult: setupResult
150
+ };
151
+ })
152
+ };
153
+ }
154
+ exports.buildersToCompiledAspects = buildersToCompiledAspects;
155
+ class BuilderFunctionParameters {
156
+ constructor() {
157
+ /**
158
+ * The result of invoking the {@link AspectBuilder#setupFunctionString}, or undefined if there is no
159
+ * {@link AspectBuilder#setupFunctionString} defined for this builder.
160
+ *
161
+ * @type {*}
162
+ * @memberOf BuilderFunctionParameters
163
+ */
164
+ this.setup = undefined;
165
+ /**
166
+ * Reports a non-fatal problem creating an aspect.
167
+ *
168
+ * @type {ReportProblem}
169
+ * @memberOf BuilderFunctionParameters
170
+ */
171
+ this.reportProblem = undefined;
172
+ /**
173
+ * Provides access to utility libraries that may be helpful in building aspects.
174
+ *
175
+ * @type {BuilderFunctionLibraries}
176
+ * @memberOf BuilderFunctionParameters
177
+ */
178
+ this.libraries = undefined;
179
+ }
180
+ }
181
+ exports.BuilderFunctionParameters = BuilderFunctionParameters;
182
+ class DatasetBuilderFunctionParameters extends BuilderFunctionParameters {
183
+ constructor() {
184
+ super(...arguments);
185
+ /**
186
+ * The JSON dataset from which to build aspects.
187
+ *
188
+ * @type {object}
189
+ * @memberOf DatasetBuilderFunctionParameters
190
+ */
191
+ this.dataset = undefined;
192
+ }
193
+ }
194
+ class DistributionBuilderFunctionParameters extends BuilderFunctionParameters {
195
+ constructor() {
196
+ super(...arguments);
197
+ /**
198
+ * The JSON distribution from which to build aspects.
199
+ *
200
+ * @type {object}
201
+ * @memberOf DistributionBuilderFunctionParameters
202
+ */
203
+ this.distribution = undefined;
204
+ /**
205
+ * The JSON dataset that owns the distribution.
206
+ *
207
+ * @type {object}
208
+ * @memberOf DatasetBuilderFunctionParameters
209
+ */
210
+ this.dataset = undefined;
211
+ }
212
+ }
213
+ class OrganizationBuilderFunctionParameters extends BuilderFunctionParameters {
214
+ constructor() {
215
+ super(...arguments);
216
+ /**
217
+ * The JSON organization from which to build aspects.
218
+ *
219
+ * @type {object}
220
+ * @memberOf OrganizationBuilderFunctionParameters
221
+ */
222
+ this.organization = undefined;
223
+ }
224
+ }
225
+ //# sourceMappingURL=JsonTransformer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsonTransformer.js","sourceRoot":"","sources":["../src/JsonTransformer.ts"],"names":[],"mappings":"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"}