@hyperscale0/udl 3.0.2 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ # UDL 3.2.0
2
+
3
+ UDL adds a state-preserving transition target (`to: preserve`), an invoke comparison guard (`guard: { kind: compare, ... }`), an optional per-action `expansionLimit` of 8192 actions, reporting definitions, and a clock `localDay` clause (days, direction, hour, timezone).
4
+
5
+ # UDL 3.1.0
6
+
7
+ Licensed under the Hyperscale Intellectual Property and Copyright License 1.0 (`LicenseRef-Hyperscale-IPCL-1.0`), Tier 2 (Source Available). The AGPL-3.0-only grant ends with this release; earlier versions keep it. `LICENSE.md` and `NOTICE.md` replace the previous license, licensing and trademark files; trademark and conformance rules now live in the license. No grammar change.
8
+
1
9
  # UDL 3.0.2
2
10
 
3
11
  Dependencies: zod 4.6.5. No grammar change.
package/LICENSE.md ADDED
@@ -0,0 +1,356 @@
1
+ # Hyperscale Intellectual Property and Copyright License
2
+
3
+ Version 1.0, effective 18 September 2026. This text is under review by
4
+ Hyperscale LLC's counsel. Until a revised version replaces it, it states the
5
+ terms on which Hyperscale makes the Software available.
6
+
7
+ SPDX identifier: `LicenseRef-Hyperscale-IPCL-1.0`
8
+
9
+ Copyright (c) 2026 Hyperscale LLC. All rights reserved.
10
+
11
+ This is not an open source license. The Software is proprietary. Hyperscale
12
+ publishes some of it so that you can read it, learn it, build on the Hyperscale
13
+ platform with it, and verify what Hyperscale runs. Publishing is not a gift of
14
+ rights. Every right not written in this License stays with Hyperscale.
15
+
16
+ ---
17
+
18
+ ## 1. Acceptance
19
+
20
+ By accessing, viewing, downloading, cloning, installing, copying, compiling,
21
+ running, or otherwise using any part of the Software, you accept this License.
22
+ If you do not accept it, do none of those things. If you act for an
23
+ organisation, you confirm you have authority to bind it, and "you" means that
24
+ organisation and every person acting for it.
25
+
26
+ ## 2. Definitions
27
+
28
+ "Hyperscale" means Hyperscale LLC, a limited liability company organised under
29
+ the laws of the Kingdom of Saudi Arabia, and its successors and assigns.
30
+
31
+ "Software" means every work Hyperscale distributes under this License, in any
32
+ form: source code, compiled or bundled code, schemas, grammars, standard
33
+ libraries, headers, example programs, fixtures, conformance cases, generated
34
+ artifacts, documentation, designs, images, and data files, and every update,
35
+ version, or part of any of them.
36
+
37
+ "Specification" means the parts of the Software that Hyperscale designates as a
38
+ Specification in the applicable Notice: a schema, grammar, wire format,
39
+ manifest format, vocabulary, or interface description, together with its
40
+ documentation and published example inputs and outputs.
41
+
42
+ "Hyperscale Platform" means the products and services Hyperscale offers or
43
+ operates, in any form and under any name, including Hyperscale Arc, Architect,
44
+ Composer, the Hyperscale engine, portals, registries, hosted compilers, hosted
45
+ MCP servers, generated SDKs, and every successor product.
46
+
47
+ "Notice" means the file named `NOTICE` or `NOTICE.md`, or the license
48
+ statement in a package manifest, that accompanies a copy of the Software and
49
+ states which Tier under section 4 applies to it.
50
+
51
+ "Tier" means one of the three permission levels in section 4.
52
+
53
+ "Derivative Work" means any work that is based on, incorporates, translates,
54
+ adapts, ports, reimplements, transforms, or is derived from the Software or any
55
+ part of it, in any language or form, including a work produced by studying the
56
+ Software and then writing new code that performs the same function.
57
+
58
+ "Competing Product" means any product, service, library, platform, or tool,
59
+ whether or not sold, that performs or is offered as performing substantially the
60
+ same function as the Hyperscale Platform or any part of it, including: a
61
+ language, compiler, or checker for financial programs; an engine, runtime, or
62
+ ledger that executes financial product definitions; a framework for declaring,
63
+ conforming, or operating bank or payment provider adapters; a service that
64
+ generates APIs, SDKs, or agent tools from a financial product definition; or a
65
+ hosted or embedded version of any of those. A product you build on the
66
+ Hyperscale Platform for your own customers is not a Competing Product.
67
+
68
+ "Hosted Use" means making the functionality of the Software available to any
69
+ third party over a network, whether as a service, an API, an agent tool, an
70
+ embedded feature, or otherwise.
71
+
72
+ "Contribution" means any work of authorship you intentionally submit to
73
+ Hyperscale for inclusion in the Software, by any means, unless you clearly mark
74
+ it "not a contribution".
75
+
76
+ "Marks" means the names, logos, and trade dress of Hyperscale and its products,
77
+ including "Hyperscale", "Hyperscale Arc", "HSX", "UDL", "ADL", "Architect",
78
+ "Composer", the `hyperscale0` GitHub organisation, the `@hyperscale0` npm
79
+ scope, and every confusingly similar name or sign.
80
+
81
+ "Confidential Material" means Software distributed under Tier 3, and any part
82
+ of the Software that Hyperscale has not made publicly available.
83
+
84
+ ## 3. Ownership
85
+
86
+ Hyperscale owns all right, title, and interest in the Software, the
87
+ Specifications, the Marks, and every Derivative Work Hyperscale creates,
88
+ including all copyright, patent, trade secret, design, database, and moral
89
+ rights, worldwide. The Software is licensed, not sold. This License transfers
90
+ no ownership of anything to you. Your possession of a copy, in any form, gives
91
+ you no right in it beyond what this License states.
92
+
93
+ The Specifications describe how the Hyperscale Platform works. The design
94
+ choices they record, the vocabulary they fix, the structure of the financial
95
+ programs, products, ledgers, and adapters they define, and the standard library
96
+ of financial instruments Hyperscale publishes are Hyperscale's intellectual
97
+ property. Publication does not place any of it in the public domain.
98
+
99
+ ## 4. Tiers of permission
100
+
101
+ Every copy of the Software carries a Notice naming its Tier. If a copy carries
102
+ no Notice, Tier 3 applies. A permission granted at a higher-numbered Tier is
103
+ never implied at a lower-numbered one.
104
+
105
+ ### Tier 1: Open Specification
106
+
107
+ For Software designated as a Specification, Hyperscale grants you a worldwide,
108
+ non-exclusive, non-transferable, royalty-free, revocable license to:
109
+
110
+ 1. read, copy, and redistribute the Specification, unmodified and with all
111
+ notices intact;
112
+ 2. write programs, documents, and data that conform to the Specification, and
113
+ use them in any way, including commercially;
114
+ 3. write and distribute software that reads, writes, validates, or displays
115
+ data conforming to the Specification, solely for the purpose of using or
116
+ interoperating with the Hyperscale Platform or with products built on it;
117
+ 4. quote reasonable portions of the Specification in documentation, teaching,
118
+ and commentary, with attribution to Hyperscale.
119
+
120
+ Tier 1 does not permit you to build a Competing Product, to publish a modified
121
+ Specification under any name that includes or resembles a Mark, or to claim
122
+ conformance or compatibility except as section 8 allows.
123
+
124
+ ### Tier 2: Source Available
125
+
126
+ For Software designated as Source Available, Hyperscale grants you a worldwide,
127
+ non-exclusive, non-transferable, non-sublicensable, royalty-free, revocable
128
+ license to:
129
+
130
+ 1. view, download, and study the source;
131
+ 2. install, compile, and run the Software, unmodified or modified, on systems
132
+ you control, for the purpose of building, testing, operating, and
133
+ maintaining your own products on the Hyperscale Platform;
134
+ 3. modify the Software for that purpose and keep the modification for your own
135
+ internal use;
136
+ 4. submit modifications to Hyperscale as Contributions;
137
+ 5. redistribute unmodified copies of the Software, in the form Hyperscale
138
+ published them, with all notices and this License intact, for example by
139
+ mirroring a package or vendoring a dependency.
140
+
141
+ Tier 2 does not permit Hosted Use, distribution of modified copies,
142
+ distribution of compiled or bundled forms other than those Hyperscale
143
+ published, or any use in or toward a Competing Product.
144
+
145
+ ### Tier 3: Confidential
146
+
147
+ For Software designated as Confidential, or carrying no Notice, Hyperscale
148
+ grants you only the license written in the agreement under which you received
149
+ it. If there is no such agreement, you have no license, and you must not use,
150
+ copy, disclose, or retain the Software. Confidential Material includes generated
151
+ SDKs, downloadable product artifacts, private repositories, and anything you
152
+ obtain through a portal, a registry, or a signed-in session. You may use
153
+ Confidential Material only for your own organisation's Hyperscale integration,
154
+ must not publish it to any public repository or package registry, must not
155
+ disclose it beyond personnel and contractors who need it and are bound by
156
+ confidentiality at least as protective as this License, and must destroy it on
157
+ request or when your access ends.
158
+
159
+ ## 5. Restrictions
160
+
161
+ Whatever the Tier, you must not, and must not help or allow anyone else to:
162
+
163
+ 1. build, contribute to, market, sell, or operate a Competing Product using
164
+ the Software, a Derivative Work, or knowledge gained from the Software;
165
+ 2. create a Derivative Work except as Tier 2 permits for internal use;
166
+ 3. reimplement, port, translate, or clone the Software or any part of it, in
167
+ any programming language, whether by copying or by studying it and
168
+ rewriting it;
169
+ 4. offer the Software or a Derivative Work for Hosted Use;
170
+ 5. sublicense, sell, rent, lease, lend, or assign the Software or any right in
171
+ it;
172
+ 6. remove, hide, or alter any copyright, trademark, license, or attribution
173
+ notice, or misstate the origin of the Software;
174
+ 7. reverse engineer, decompile, disassemble, or unminify any compiled, bundled,
175
+ or generated form of the Software, except where a law forbids this
176
+ restriction and only to the extent it does;
177
+ 8. circumvent, disable, or evade any license check, access control, rate limit,
178
+ key, or technical protection in the Software or the Hyperscale Platform;
179
+ 9. use the Software, the Specifications, or any output of the Hyperscale
180
+ Platform as training, fine-tuning, evaluation, or retrieval data for any
181
+ machine-learning model, or to generate a Competing Product with such a
182
+ model, without Hyperscale's prior written consent;
183
+ 10. use the Software to benchmark or compare the Hyperscale Platform in any
184
+ publication without Hyperscale's prior written consent;
185
+ 11. register, apply for, or claim any patent, trademark, design, or domain
186
+ name that covers or resembles the Software, the Specifications, or the
187
+ Marks;
188
+ 12. use the Software in violation of any law, sanction, or export control;
189
+ 13. use the Software for any purpose this License does not expressly permit.
190
+
191
+ ## 6. Contributions
192
+
193
+ You are not required to contribute. If you do, then on submission you grant
194
+ Hyperscale, and everyone who receives the Software from Hyperscale, a
195
+ perpetual, worldwide, non-exclusive, irrevocable, royalty-free license to use,
196
+ reproduce, modify, distribute, sublicense, and relicense your Contribution
197
+ under any terms, including this License and any commercial license, and you
198
+ grant Hyperscale a patent license of the same scope covering the claims your
199
+ Contribution alone or in combination with the Software would infringe. You
200
+ confirm you have the right to make these grants and that the Contribution is
201
+ your own work or that you have permission to submit it. Hyperscale may require
202
+ a signed contributor agreement before merging any Contribution and may decline
203
+ any Contribution for any reason. Feedback, suggestions, and ideas you send
204
+ about the Software are not confidential and Hyperscale may use them freely.
205
+
206
+ ## 7. Marks
207
+
208
+ This License grants no right to any Mark. You may refer to the Software and to
209
+ the Hyperscale Platform by name to describe truthfully that your product uses
210
+ or integrates with them. You must not use any Mark as or in the name of your
211
+ product, company, package, domain, or repository, in a logo, or in any way that
212
+ suggests Hyperscale made, sponsors, certifies, or endorses your work.
213
+
214
+ ## 8. Conformance and compatibility claims
215
+
216
+ You may state that your product "conforms to" or "is compatible with" a named
217
+ Specification version only if, at the time of the claim, your product
218
+ validates against the Specification exactly as Hyperscale published it, using
219
+ Hyperscale's published example inputs unmodified, and you built the product
220
+ under Tier 1 for the purpose of interoperating with the Hyperscale Platform.
221
+ The claim is a statement about your product and never an endorsement by
222
+ Hyperscale. Hyperscale may require you to withdraw a claim it considers false.
223
+ No claim of conformance permits a Competing Product.
224
+
225
+ ## 9. Commercial license
226
+
227
+ Hyperscale offers a commercial license to organisations whose use falls
228
+ outside this License, including Hosted Use, distribution of modified copies,
229
+ embedding in a proprietary product, or any use a procurement policy cannot
230
+ accept under these terms. Ask through <https://hyperscale0.ai>. Nothing in this
231
+ section grants any right until a commercial agreement is signed.
232
+
233
+ ## 10. Prior releases
234
+
235
+ Any version of the Software that Hyperscale released under a different license
236
+ remains available under that license for that version only. This License
237
+ applies to every version that carries it and to every later version unless
238
+ that version states otherwise. Nothing in this License narrows a right you
239
+ already hold in a prior version under its own license.
240
+
241
+ ## 11. Term and termination
242
+
243
+ This License takes effect when you accept it and lasts until terminated. It
244
+ terminates automatically, with no notice, the moment you breach section 5 or
245
+ section 7. For any other breach, it terminates thirty days after Hyperscale
246
+ notifies you, unless you cure the breach within that period and it is the
247
+ first notice you have received. Hyperscale may also terminate this License for
248
+ convenience for any Tier 3 material, on notice. On termination you must stop
249
+ all use, destroy every copy in your possession or control, including
250
+ Derivative Works, and confirm destruction in writing if asked. Sections 3, 5,
251
+ 6, 7, 11, 12, 13, 14, 15, and 16 survive termination.
252
+
253
+ ## 12. Disclaimer of warranty
254
+
255
+ The Software is provided "as is" and "as available". Hyperscale makes no
256
+ warranty of any kind, express, implied, or statutory, including any warranty
257
+ of merchantability, fitness for a particular purpose, title, non-infringement,
258
+ accuracy, or that the Software will be error-free or uninterrupted. Hyperscale
259
+ is not a bank, does not hold money, and gives no assurance that any financial
260
+ program, product, or adapter written with the Software is lawful, licensed,
261
+ or fit for any real-world financial use in any jurisdiction.
262
+
263
+ ## 13. Limitation of liability
264
+
265
+ To the fullest extent the law allows, Hyperscale is not liable to you or any
266
+ third party for any indirect, incidental, special, consequential, exemplary, or
267
+ punitive damages, or for any loss of profit, revenue, data, goodwill, or
268
+ business opportunity, arising from or related to the Software or this
269
+ License, however caused and under any theory of liability, even if advised of
270
+ the possibility. Hyperscale's total liability under this License is limited to
271
+ one thousand Saudi riyals (SAR 1,000) or the amount you paid Hyperscale for the
272
+ Software in the twelve months before the claim, whichever is greater.
273
+
274
+ ## 14. Indemnity
275
+
276
+ You will defend, indemnify, and hold harmless Hyperscale, its owners,
277
+ officers, employees, and agents from every claim, loss, damage, liability,
278
+ cost, and expense, including reasonable legal fees, arising from your use of
279
+ the Software, your Derivative Works, your products, or your breach of this
280
+ License.
281
+
282
+ ## 15. Remedies and enforcement
283
+
284
+ You acknowledge that the Software embodies valuable trade secrets and
285
+ intellectual property of Hyperscale, that a breach of section 3, 4, 5, or 7
286
+ would cause Hyperscale irreparable harm that money alone cannot repair, and
287
+ that Hyperscale is entitled to injunctive and other equitable relief in any
288
+ court of competent jurisdiction to stop or prevent a breach, without posting a
289
+ bond and in addition to every other remedy. You will pay Hyperscale's
290
+ reasonable legal fees and costs in any action in which Hyperscale enforces
291
+ this License and prevails on any claim. Hyperscale may bring an action in the
292
+ courts named in section 16 or in any jurisdiction where the Software is used,
293
+ a Derivative Work is made, or a Competing Product is offered, and you consent
294
+ to the jurisdiction of those courts.
295
+
296
+ ## 16. Governing law and venue
297
+
298
+ This License is governed by the laws of the Kingdom of Saudi Arabia, including
299
+ the Copyright Law issued by Royal Decree M/41 and its implementing
300
+ regulations, without regard to conflict-of-law rules. The competent courts of
301
+ Riyadh have exclusive jurisdiction over any dispute arising from this License,
302
+ subject to Hyperscale's right under section 15 to enforce elsewhere. The
303
+ Berne Convention and the TRIPS Agreement apply to the protection of the
304
+ Software in every member state. Where a law of another jurisdiction gives you
305
+ a right this License cannot exclude, that right is preserved to the minimum
306
+ extent that law requires and no further.
307
+
308
+ ## 17. General
309
+
310
+ 1. This License is the entire agreement between you and Hyperscale about the
311
+ Software under its Tier, and replaces every earlier or contemporaneous
312
+ understanding, except a signed commercial agreement, which prevails where
313
+ the two conflict.
314
+ 2. If any provision is held unenforceable, it is limited to the minimum
315
+ extent necessary and the rest stays in force.
316
+ 3. Hyperscale's failure or delay in enforcing any provision is not a waiver.
317
+ A waiver is effective only in writing signed by Hyperscale.
318
+ 4. You may not assign or transfer this License or any right under it, by
319
+ operation of law or otherwise, and any attempt is void. Hyperscale may
320
+ assign it freely.
321
+ 5. Hyperscale may publish new versions of this License. Each version of the
322
+ Software carries the License version it was released under, and a new
323
+ License version applies only to Software that carries it.
324
+ 6. This License is written in English. Hyperscale may publish an Arabic
325
+ translation. Where a court requires an Arabic text, the certified Arabic
326
+ translation Hyperscale provides is the text of record; in every other case
327
+ the English text governs.
328
+ 7. Nothing in this License creates a partnership, joint venture, agency, or
329
+ employment relationship between you and Hyperscale.
330
+ 8. Notices to Hyperscale go to the address published at
331
+ <https://hyperscale0.ai/legal>.
332
+
333
+ ---
334
+
335
+ ## Applying this License
336
+
337
+ A copy of the Software must carry this file as `LICENSE.md` and a `NOTICE.md`
338
+ that states the Tier. The form is:
339
+
340
+ ```
341
+ This work is licensed under the Hyperscale Intellectual Property and
342
+ Copyright License, version 1.0 (LicenseRef-Hyperscale-IPCL-1.0).
343
+ Copyright (c) 2026 Hyperscale LLC. All rights reserved.
344
+
345
+ Tier: 2 (Source Available)
346
+ Specifications under Tier 1 in this repository: spec/, docs/grammar.md
347
+
348
+ Not open source. See LICENSE.md.
349
+ ```
350
+
351
+ A package manifest states `"license": "SEE LICENSE IN LICENSE.md"`. A source
352
+ file may carry the one-line header:
353
+
354
+ ```
355
+ // Copyright (c) 2026 Hyperscale LLC. Licensed under LicenseRef-Hyperscale-IPCL-1.0. Not open source.
356
+ ```
package/NOTICE.md ADDED
@@ -0,0 +1,8 @@
1
+ This work is licensed under the Hyperscale Intellectual Property and
2
+ Copyright License, version 1.0 (`LicenseRef-Hyperscale-IPCL-1.0`).
3
+ Copyright (c) 2026 Hyperscale LLC. All rights reserved.
4
+
5
+ Tier: 2 (Source Available)
6
+ Specifications under Tier 1 (Open Specification) in this repository: spec/, docs/
7
+
8
+ Not open source. See [LICENSE.md](LICENSE.md).
package/dist/finance.js CHANGED
@@ -241,7 +241,8 @@ export function analyzeInstrumentFinance(instrument, document) {
241
241
  if (!action)
242
242
  continue;
243
243
  const next = copy(state);
244
- next.status = edge.to;
244
+ if (edge.to !== "preserve")
245
+ next.status = edge.to;
245
246
  apply(next, action, name);
246
247
  pending.push(next);
247
248
  }
@@ -1 +1 @@
1
- {"version":3,"file":"finance.js","sourceRoot":"","sources":["../src/finance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"finance.js","sourceRoot":"","sources":["../src/finance.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -7,4 +7,6 @@ export { analyzeInstrumentFinance, type FinanceIssue } from "./finance.js";
7
7
  export { mapUdlInstrumentReferences, referencedUdlInstrumentIds, } from "./instrument-references.js";
8
8
  export { diffValidatedUdlEvolution } from "./evolution.js";
9
9
  export { fixedIsoDurationMs } from "./duration.js";
10
+ export * from "./reporting.js";
11
+ export { validateReportDefinition, reportExpressionTypes, } from "./reporting-validation.js";
10
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EACL,WAAW,EACX,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,KAAK,mBAAmB,GACzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,KAAK,EACL,aAAa,EACb,cAAc,EACd,KAAK,QAAQ,EACb,KAAK,YAAY,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,wBAAwB,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAC3E,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EACL,WAAW,EACX,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,KAAK,mBAAmB,GACzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,KAAK,EACL,aAAa,EACb,cAAc,EACd,KAAK,QAAQ,EACb,KAAK,YAAY,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,wBAAwB,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAC3E,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EACL,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,2BAA2B,CAAC"}
package/dist/index.js CHANGED
@@ -7,4 +7,6 @@ export { analyzeInstrumentFinance } from "./finance.js";
7
7
  export { mapUdlInstrumentReferences, referencedUdlInstrumentIds, } from "./instrument-references.js";
8
8
  export { diffValidatedUdlEvolution } from "./evolution.js";
9
9
  export { fixedIsoDurationMs } from "./duration.js";
10
+ export * from "./reporting.js";
11
+ export { validateReportDefinition, reportExpressionTypes, } from "./reporting-validation.js";
10
12
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EACL,WAAW,EACX,cAAc,EACd,YAAY,EACZ,QAAQ,GAET,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,KAAK,EACL,aAAa,EACb,cAAc,GAGf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,wBAAwB,EAAqB,MAAM,cAAc,CAAC;AAC3E,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EACL,WAAW,EACX,cAAc,EACd,YAAY,EACZ,QAAQ,GAET,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,KAAK,EACL,aAAa,EACb,cAAc,GAGf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,wBAAwB,EAAqB,MAAM,cAAc,CAAC;AAC3E,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EACL,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,2BAA2B,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { UdlDocument } from "./schema.js";
2
+ import type { ReportDefinition, ReportExpression, ReportType } from "./reporting.js";
3
+ type Types = Map<string, ReportType>;
4
+ export declare function reportExpressionTypes(expressions: readonly ReportExpression[], initial: Types): Types;
5
+ /** Used by compilation and replay, never a report-name dispatch. */
6
+ export declare function validateReportDefinition(report: ReportDefinition, document: UdlDocument): void;
7
+ export {};
8
+ //# sourceMappingURL=reporting-validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reporting-validation.d.ts","sourceRoot":"","sources":["../src/reporting-validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACX,MAAM,gBAAgB,CAAC;AAExB,KAAK,KAAK,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAerC,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,SAAS,gBAAgB,EAAE,EACxC,OAAO,EAAE,KAAK,GACb,KAAK,CAqGP;AAiCD,oEAAoE;AACpE,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,WAAW,GACpB,IAAI,CAsLN"}