firebase-contract 0.1.0-rc.9 → 0.1.1
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/README.md +140 -63
- package/dist/lib/_internal/compiler/compiler.d.ts.map +1 -1
- package/dist/lib/_internal/compiler/compiler.js +50 -21
- package/dist/lib/_internal/generators/api/api-dto-generator.d.ts.map +1 -1
- package/dist/lib/_internal/generators/api/api-dto-generator.js +1 -8
- package/dist/lib/_internal/generators/api/api-types-generator.d.ts.map +1 -1
- package/dist/lib/_internal/generators/api/api-types-generator.js +11 -5
- package/dist/lib/_internal/generators/api/task-payload-generator.js +3 -3
- package/dist/lib/_internal/generators/data-connect/graphql-generator.d.ts +0 -7
- package/dist/lib/_internal/generators/data-connect/graphql-generator.d.ts.map +1 -1
- package/dist/lib/_internal/generators/data-connect/graphql-generator.js +5 -4
- package/dist/lib/_internal/generators/data-connect/operations-generator.d.ts +0 -7
- package/dist/lib/_internal/generators/data-connect/operations-generator.d.ts.map +1 -1
- package/dist/lib/_internal/generators/data-connect/operations-generator.js +9 -8
- package/dist/lib/_internal/generators/firestore/firestore-projection-generator.d.ts.map +1 -1
- package/dist/lib/_internal/generators/firestore/firestore-projection-generator.js +7 -22
- package/dist/lib/_internal/generators/firestore/firestore-split-generator.d.ts +1 -1
- package/dist/lib/_internal/generators/firestore/firestore-split-generator.d.ts.map +1 -1
- package/dist/lib/_internal/generators/firestore/firestore-split-generator.js +69 -47
- package/dist/lib/_internal/generators/generator.d.ts +2 -0
- package/dist/lib/_internal/generators/generator.d.ts.map +1 -1
- package/dist/lib/_internal/generators/index.d.ts +2 -5
- package/dist/lib/_internal/generators/index.d.ts.map +1 -1
- package/dist/lib/_internal/generators/index.js +4 -15
- package/dist/lib/_internal/generators/support/jsdoc.d.ts +3 -0
- package/dist/lib/_internal/generators/support/jsdoc.d.ts.map +1 -0
- package/dist/lib/_internal/generators/support/jsdoc.js +9 -0
- package/dist/lib/_internal/generators/support/split-variant.d.ts +9 -0
- package/dist/lib/_internal/generators/support/split-variant.d.ts.map +1 -0
- package/dist/lib/_internal/generators/support/split-variant.js +13 -0
- package/dist/lib/_internal/generators/support/split.d.ts +1 -1
- package/dist/lib/_internal/generators/support/split.d.ts.map +1 -1
- package/dist/lib/_internal/generators/support/split.js +3 -2
- package/dist/lib/_internal/generators/typescript/render.d.ts +15 -0
- package/dist/lib/_internal/generators/typescript/render.d.ts.map +1 -0
- package/dist/lib/_internal/generators/typescript/render.js +92 -0
- package/dist/lib/_internal/generators/typescript/typescript-generator.d.ts +2 -1
- package/dist/lib/_internal/generators/typescript/typescript-generator.d.ts.map +1 -1
- package/dist/lib/_internal/generators/typescript/typescript-generator.js +12 -78
- package/dist/lib/_internal/generators/typescript/typescript-split-generator.d.ts +1 -1
- package/dist/lib/_internal/generators/typescript/typescript-split-generator.d.ts.map +1 -1
- package/dist/lib/_internal/generators/typescript/typescript-split-generator.js +5 -85
- package/dist/lib/_internal/generators/zod/render.d.ts +12 -0
- package/dist/lib/_internal/generators/zod/render.d.ts.map +1 -0
- package/dist/lib/_internal/generators/zod/render.js +59 -0
- package/dist/lib/_internal/generators/zod/zod-generator.d.ts +2 -1
- package/dist/lib/_internal/generators/zod/zod-generator.d.ts.map +1 -1
- package/dist/lib/_internal/generators/zod/zod-generator.js +11 -55
- package/dist/lib/_internal/generators/zod/zod-split-generator.d.ts +1 -1
- package/dist/lib/_internal/generators/zod/zod-split-generator.d.ts.map +1 -1
- package/dist/lib/_internal/generators/zod/zod-split-generator.js +4 -56
- package/dist/lib/_internal/ir/build-ir.d.ts.map +1 -1
- package/dist/lib/_internal/ir/build-ir.js +93 -8
- package/dist/lib/_internal/ir/ir.d.ts +18 -5
- package/dist/lib/_internal/ir/ir.d.ts.map +1 -1
- package/dist/lib/_internal/ir/ir.js +1 -0
- package/dist/lib/_internal/parser/parse.d.ts +5 -3
- package/dist/lib/_internal/parser/parse.d.ts.map +1 -1
- package/dist/lib/_internal/parser/parse.js +103 -14
- package/dist/lib/_internal/parser/raw-document.d.ts +18 -2
- package/dist/lib/_internal/parser/raw-document.d.ts.map +1 -1
- package/dist/lib/_internal/resolver/import-resolver.js +1 -1
- package/dist/lib/_internal/validation/rules.d.ts +39 -0
- package/dist/lib/_internal/validation/rules.d.ts.map +1 -1
- package/dist/lib/_internal/validation/rules.js +133 -1
- package/dist/lib/cli/commands/generate.d.ts.map +1 -1
- package/dist/lib/cli/commands/generate.js +6 -4
- package/dist/lib/cli/commands/index.d.ts.map +1 -1
- package/dist/lib/cli/commands/index.js +2 -0
- package/dist/lib/cli/commands/init.d.ts.map +1 -1
- package/dist/lib/cli/commands/init.js +2 -18
- package/dist/lib/cli/commands/where.d.ts +3 -0
- package/dist/lib/cli/commands/where.d.ts.map +1 -0
- package/dist/lib/cli/commands/where.js +57 -0
- package/dist/lib/cli/config.d.ts +3 -2
- package/dist/lib/cli/config.d.ts.map +1 -1
- package/dist/lib/cli/config.js +3 -0
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { error } from '../diagnostics.js';
|
|
1
|
+
import { error, warning } from '../diagnostics.js';
|
|
2
2
|
import { isScalarType, } from './ir.js';
|
|
3
3
|
const resolveTypeRef = (typeName, enumNames, modelNames) => {
|
|
4
4
|
if (isScalarType(typeName)) {
|
|
@@ -58,6 +58,42 @@ const OPERATION_TYPES = new Set(['query', 'mutation']);
|
|
|
58
58
|
const MUTATION_ACTIONS = new Set(['insert', 'update', 'upsert', 'delete']);
|
|
59
59
|
const AUTH_LEVELS = new Set(['NO_ACCESS', 'PUBLIC', 'USER']);
|
|
60
60
|
const API_KINDS = new Set(['callable', 'https', 'task', 'pubsub']);
|
|
61
|
+
const ORDER_DIRS = new Set(['ASC', 'DESC']);
|
|
62
|
+
const SINGLE_KINDS = new Set(['key', 'id']);
|
|
63
|
+
/** Per-key valid values for an operation's `style:` block. */
|
|
64
|
+
const STYLE_VALUES = {
|
|
65
|
+
signature: new Set(['inline', 'multi']),
|
|
66
|
+
args: new Set(['inline', 'multi']),
|
|
67
|
+
data: new Set(['inline', 'multi', 'compact']),
|
|
68
|
+
orderBy: new Set(['bare', 'array']),
|
|
69
|
+
auth: new Set(['inline', 'newline']),
|
|
70
|
+
key: new Set(['inline', 'multi']),
|
|
71
|
+
and: new Set(['inline', 'multi']),
|
|
72
|
+
where: new Set(['inline', 'multi']),
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* Data Connect scalar/list filter operators. A `where.op` outside this set is
|
|
76
|
+
* warned (not errored): the value is emitted verbatim into GraphQL, so a typo
|
|
77
|
+
* ships broken schema, but the list may lag DC additions — a warning surfaces
|
|
78
|
+
* typos without rejecting a valid-but-unlisted operator.
|
|
79
|
+
*/
|
|
80
|
+
const WHERE_OPS = new Set([
|
|
81
|
+
'eq', 'ne', 'gt', 'ge', 'lt', 'le', 'in', 'nin', 'isNull',
|
|
82
|
+
'contains', 'startsWith', 'endsWith',
|
|
83
|
+
'includes', 'excludes', 'includesAll', 'includesAny', 'excludesAll', 'excludesAny',
|
|
84
|
+
]);
|
|
85
|
+
/**
|
|
86
|
+
* The contract is the single source of truth, so an out-of-vocabulary *value* is
|
|
87
|
+
* as much a defect as an unknown key: it is silently coerced to a default or
|
|
88
|
+
* dropped, and the generated output no longer reflects what was written. These
|
|
89
|
+
* checks turn that silent coercion into a diagnostic at the coercion site (the
|
|
90
|
+
* raw value is still in hand here; it is lost once the IR is built).
|
|
91
|
+
*/
|
|
92
|
+
const checkValue = (diagnostics, file, path, key, value, valid) => {
|
|
93
|
+
if (value !== undefined && !valid.has(value)) {
|
|
94
|
+
diagnostics.push(error('INVALID_VALUE', `Invalid ${key} "${value}" — expected one of ${[...valid].join(' | ')}`, { file, path }));
|
|
95
|
+
}
|
|
96
|
+
};
|
|
61
97
|
const buildSelect = (entries) => entries.map(entry => ({
|
|
62
98
|
field: entry.field,
|
|
63
99
|
...(entry.select !== undefined ? { select: buildSelect(entry.select) } : {}),
|
|
@@ -65,7 +101,27 @@ const buildSelect = (entries) => entries.map(entry => ({
|
|
|
65
101
|
...(entry.alias !== undefined ? { alias: entry.alias } : {}),
|
|
66
102
|
...(entry.args !== undefined ? { args: entry.args } : {}),
|
|
67
103
|
}));
|
|
68
|
-
const buildOperation = (name, raw, sourceFile) => {
|
|
104
|
+
const buildOperation = (name, raw, sourceFile, diagnostics) => {
|
|
105
|
+
const path = `operations.${name}`;
|
|
106
|
+
checkValue(diagnostics, sourceFile, `${path}.type`, 'type', raw.type, OPERATION_TYPES);
|
|
107
|
+
checkValue(diagnostics, sourceFile, `${path}.auth`, 'auth', raw.auth, AUTH_LEVELS);
|
|
108
|
+
checkValue(diagnostics, sourceFile, `${path}.action`, 'action', raw.action, MUTATION_ACTIONS);
|
|
109
|
+
checkValue(diagnostics, sourceFile, `${path}.single`, 'single', raw.single, SINGLE_KINDS);
|
|
110
|
+
checkValue(diagnostics, sourceFile, `${path}.keyArg`, 'keyArg', raw.keyArg, SINGLE_KINDS);
|
|
111
|
+
for (const o of raw.orderBy ?? [])
|
|
112
|
+
checkValue(diagnostics, sourceFile, `${path}.orderBy`, 'orderBy dir', o.dir, ORDER_DIRS);
|
|
113
|
+
for (const [k, v] of Object.entries(raw.style ?? {})) {
|
|
114
|
+
if (STYLE_VALUES[k])
|
|
115
|
+
checkValue(diagnostics, sourceFile, `${path}.style.${k}`, `style.${k}`, v, STYLE_VALUES[k]);
|
|
116
|
+
}
|
|
117
|
+
for (const w of raw.where ?? []) {
|
|
118
|
+
if (w.op !== undefined && !WHERE_OPS.has(w.op)) {
|
|
119
|
+
diagnostics.push(warning('UNKNOWN_WHERE_OP', `Unknown where operator "${w.op}" on ${path} — emitted verbatim into GraphQL; verify it is a valid Data Connect operator`, {
|
|
120
|
+
file: sourceFile,
|
|
121
|
+
path: `${path}.where`,
|
|
122
|
+
}));
|
|
123
|
+
}
|
|
124
|
+
}
|
|
69
125
|
const op = {
|
|
70
126
|
name,
|
|
71
127
|
operationType: (OPERATION_TYPES.has(raw.type) ? raw.type : 'query'),
|
|
@@ -129,7 +185,8 @@ const buildApiPayload = (raw, enumNames, modelNames) => {
|
|
|
129
185
|
payload.model = raw.model;
|
|
130
186
|
return payload;
|
|
131
187
|
};
|
|
132
|
-
const buildApi = (name, raw, sourceFile, enumNames, modelNames) => {
|
|
188
|
+
const buildApi = (name, raw, sourceFile, enumNames, modelNames, diagnostics) => {
|
|
189
|
+
checkValue(diagnostics, sourceFile, `apis.${name}.kind`, 'kind', raw.kind, API_KINDS);
|
|
133
190
|
const api = {
|
|
134
191
|
name,
|
|
135
192
|
kind: (API_KINDS.has(raw.kind) ? raw.kind : 'callable'),
|
|
@@ -165,7 +222,7 @@ const buildFirestoreDoc = (name, raw, sourceFile, enumNames, modelNames) => {
|
|
|
165
222
|
pick: raw.pick ?? [],
|
|
166
223
|
omit: raw.omit ?? [],
|
|
167
224
|
fields,
|
|
168
|
-
|
|
225
|
+
extends: raw.extends ?? [],
|
|
169
226
|
sourceFile,
|
|
170
227
|
};
|
|
171
228
|
if (raw.from !== undefined)
|
|
@@ -252,6 +309,10 @@ export const buildIr = (documents) => {
|
|
|
252
309
|
})),
|
|
253
310
|
sourceFile: doc.filePath,
|
|
254
311
|
};
|
|
312
|
+
if (raw.out !== undefined)
|
|
313
|
+
model.out = raw.out;
|
|
314
|
+
if (raw.file !== undefined)
|
|
315
|
+
model.file = raw.file;
|
|
255
316
|
if (raw.description !== undefined)
|
|
256
317
|
model.description = raw.description;
|
|
257
318
|
if (raw.table !== undefined)
|
|
@@ -316,11 +377,11 @@ export const buildIr = (documents) => {
|
|
|
316
377
|
}
|
|
317
378
|
const operations = [];
|
|
318
379
|
for (const { name, doc } of operationEntries) {
|
|
319
|
-
operations.push(buildOperation(name, doc.operations[name], doc.filePath));
|
|
380
|
+
operations.push(buildOperation(name, doc.operations[name], doc.filePath, diagnostics));
|
|
320
381
|
}
|
|
321
382
|
const apis = [];
|
|
322
383
|
for (const [name, doc] of apiSources) {
|
|
323
|
-
apis.push(buildApi(name, doc.apis[name], doc.filePath, enumNames, modelNames));
|
|
384
|
+
apis.push(buildApi(name, doc.apis[name], doc.filePath, enumNames, modelNames, diagnostics));
|
|
324
385
|
}
|
|
325
386
|
const unionSources = new Map();
|
|
326
387
|
for (const doc of documents) {
|
|
@@ -365,7 +426,6 @@ export const buildIr = (documents) => {
|
|
|
365
426
|
for (const [name, doc] of firestoreSources) {
|
|
366
427
|
firestore.push(buildFirestoreDoc(name, doc.firestore[name], doc.filePath, enumNames, modelNames));
|
|
367
428
|
}
|
|
368
|
-
const version = documents.length > 0 ? documents[documents.length - 1].version : 1;
|
|
369
429
|
const envelopeSources = new Map();
|
|
370
430
|
for (const doc of documents) {
|
|
371
431
|
for (const name of Object.keys(doc.envelopes)) {
|
|
@@ -391,6 +451,31 @@ export const buildIr = (documents) => {
|
|
|
391
451
|
envelope.description = raw.description;
|
|
392
452
|
envelopes.push(envelope);
|
|
393
453
|
}
|
|
454
|
+
const fragmentSources = new Map();
|
|
455
|
+
for (const doc of documents) {
|
|
456
|
+
for (const name of Object.keys(doc.fragments)) {
|
|
457
|
+
if (fragmentSources.has(name)) {
|
|
458
|
+
diagnostics.push(error('DUPLICATE_DEFINITION', `Fragment "${name}" is defined more than once`, {
|
|
459
|
+
file: doc.filePath,
|
|
460
|
+
path: `fragments.${name}`,
|
|
461
|
+
}));
|
|
462
|
+
continue;
|
|
463
|
+
}
|
|
464
|
+
fragmentSources.set(name, doc);
|
|
465
|
+
}
|
|
466
|
+
}
|
|
467
|
+
const fragments = [];
|
|
468
|
+
for (const [name, doc] of fragmentSources) {
|
|
469
|
+
const raw = doc.fragments[name];
|
|
470
|
+
const fragment = {
|
|
471
|
+
name,
|
|
472
|
+
fields: Object.entries(raw.fields).map(([fieldName, rawField]) => buildField(fieldName, rawField, enumNames, modelNames)),
|
|
473
|
+
sourceFile: doc.filePath,
|
|
474
|
+
};
|
|
475
|
+
if (raw.description !== undefined)
|
|
476
|
+
fragment.description = raw.description;
|
|
477
|
+
fragments.push(fragment);
|
|
478
|
+
}
|
|
394
479
|
let header;
|
|
395
480
|
for (const doc of documents) {
|
|
396
481
|
if (doc.header !== undefined) {
|
|
@@ -416,7 +501,6 @@ export const buildIr = (documents) => {
|
|
|
416
501
|
}
|
|
417
502
|
return {
|
|
418
503
|
ir: {
|
|
419
|
-
version,
|
|
420
504
|
enums,
|
|
421
505
|
models,
|
|
422
506
|
operations,
|
|
@@ -424,6 +508,7 @@ export const buildIr = (documents) => {
|
|
|
424
508
|
firestore,
|
|
425
509
|
unions,
|
|
426
510
|
envelopes,
|
|
511
|
+
fragments,
|
|
427
512
|
...(project ? { project } : {}),
|
|
428
513
|
...(header !== undefined ? { header } : {}),
|
|
429
514
|
},
|
|
@@ -121,6 +121,10 @@ export interface IrModel {
|
|
|
121
121
|
fsName?: string;
|
|
122
122
|
/** Composite unique/index constraints (Data Connect `@unique`/`@index`). */
|
|
123
123
|
indexes: IrIndex[];
|
|
124
|
+
/** Placement-pinned split output dir (relative to the generator `out`); firestore-scoped value object. */
|
|
125
|
+
out?: string;
|
|
126
|
+
/** File name for a placement-pinned value object. */
|
|
127
|
+
file?: string;
|
|
124
128
|
/** Absolute path of the file this model was defined in. */
|
|
125
129
|
sourceFile?: string;
|
|
126
130
|
}
|
|
@@ -322,8 +326,9 @@ export interface IrEnvelope {
|
|
|
322
326
|
* A Firestore projection document. Firestore is a denormalized read model, so a
|
|
323
327
|
* projection *derives* from a Data Connect model (`from`) and then diverges:
|
|
324
328
|
* fields are picked/omitted, relations become resolved string ids, timestamps
|
|
325
|
-
* become dates, a `_meta_` envelope
|
|
326
|
-
* (e.g. flattened DAG edges) are
|
|
329
|
+
* become dates, fragments (e.g. a shared `_meta_` envelope) are spliced in via
|
|
330
|
+
* `extends`, and extra denormalized fields (e.g. flattened DAG edges) are
|
|
331
|
+
* declared inline.
|
|
327
332
|
*/
|
|
328
333
|
export interface IrFirestoreDoc {
|
|
329
334
|
name: string;
|
|
@@ -338,14 +343,21 @@ export interface IrFirestoreDoc {
|
|
|
338
343
|
omit: string[];
|
|
339
344
|
/** Added or overriding projection-specific fields. */
|
|
340
345
|
fields: IrField[];
|
|
341
|
-
/**
|
|
342
|
-
|
|
346
|
+
/** Fragment names whose fields are appended to this projection. */
|
|
347
|
+
extends: string[];
|
|
343
348
|
/** Embedded models to host in this projection file even when unreferenced. */
|
|
344
349
|
include?: string[];
|
|
345
350
|
/** Verbatim TypeScript helpers emitted into the projection file. */
|
|
346
351
|
helpers?: string;
|
|
347
352
|
sourceFile?: string;
|
|
348
353
|
}
|
|
354
|
+
/** A reusable named group of fields, spliced into consumers via `extends`. */
|
|
355
|
+
export interface IrFragment {
|
|
356
|
+
name: string;
|
|
357
|
+
description?: string;
|
|
358
|
+
fields: IrField[];
|
|
359
|
+
sourceFile?: string;
|
|
360
|
+
}
|
|
349
361
|
/** A discriminated union of model variants keyed by a shared discriminant field. */
|
|
350
362
|
export interface IrUnion {
|
|
351
363
|
name: string;
|
|
@@ -376,7 +388,6 @@ export interface IrProject {
|
|
|
376
388
|
};
|
|
377
389
|
}
|
|
378
390
|
export interface Ir {
|
|
379
|
-
version: number;
|
|
380
391
|
enums: IrEnum[];
|
|
381
392
|
models: IrModel[];
|
|
382
393
|
operations: IrOperation[];
|
|
@@ -384,12 +395,14 @@ export interface Ir {
|
|
|
384
395
|
firestore: IrFirestoreDoc[];
|
|
385
396
|
unions: IrUnion[];
|
|
386
397
|
envelopes: IrEnvelope[];
|
|
398
|
+
fragments: IrFragment[];
|
|
387
399
|
project?: IrProject;
|
|
388
400
|
/** Raw header text from the contract (`default` = built-in banner). */
|
|
389
401
|
header?: string;
|
|
390
402
|
}
|
|
391
403
|
export declare const findModel: (ir: Ir, name: string) => IrModel | undefined;
|
|
392
404
|
export declare const findEnum: (ir: Ir, name: string) => IrEnum | undefined;
|
|
405
|
+
export declare const findFragment: (ir: Ir, name: string) => IrFragment | undefined;
|
|
393
406
|
/** The id field's scalar name of a model, used to type foreign keys. Defaults to `string`. */
|
|
394
407
|
export declare const idTypeOf: (ir: Ir, modelName: string) => ScalarType;
|
|
395
408
|
//# sourceMappingURL=ir.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ir.d.ts","sourceRoot":"","sources":["../../../../src/lib/_internal/ir/ir.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ir.d.ts","sourceRoot":"","sources":["../../../../src/lib/_internal/ir/ir.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ export const SCALAR_TYPES = ['string', 'int', 'int64', 'float', 'boolean', 'time
|
|
|
11
11
|
export const isScalarType = (name) => SCALAR_TYPES.includes(name);
|
|
12
12
|
export const findModel = (ir, name) => ir.models.find(model => model.name === name);
|
|
13
13
|
export const findEnum = (ir, name) => ir.enums.find(irEnum => irEnum.name === name);
|
|
14
|
+
export const findFragment = (ir, name) => ir.fragments.find(fragment => fragment.name === name);
|
|
14
15
|
/** The id field's scalar name of a model, used to type foreign keys. Defaults to `string`. */
|
|
15
16
|
export const idTypeOf = (ir, modelName) => {
|
|
16
17
|
const model = findModel(ir, modelName);
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
import { Diagnostic } from '../diagnostics.js';
|
|
1
2
|
import { RawContract } from './raw-document.js';
|
|
2
3
|
/**
|
|
3
4
|
* Parse a single YAML contract file into a {@link RawContract}. Shorthand forms
|
|
4
5
|
* are normalized here so downstream code sees one canonical shape. Syntax and
|
|
5
|
-
* structural problems throw a {@link ContractError};
|
|
6
|
-
*
|
|
6
|
+
* structural problems throw a {@link ContractError}; unknown keys are collected
|
|
7
|
+
* into `diagnostics` as UNKNOWN_KEY errors (all of them in one pass); semantic
|
|
8
|
+
* problems are left for validation.
|
|
7
9
|
*/
|
|
8
|
-
export declare const parseContract: (content: string, filePath: string) => RawContract;
|
|
10
|
+
export declare const parseContract: (content: string, filePath: string, diagnostics?: Diagnostic[]) => RawContract;
|
|
9
11
|
//# sourceMappingURL=parse.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../src/lib/_internal/parser/parse.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../src/lib/_internal/parser/parse.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,UAAU,EAAS,MAAM,mBAAmB,CAAA;AAEpE,OAAO,EAGL,WAAW,EAcZ,MAAM,mBAAmB,CAAA;AAkoB1B;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,GAAI,SAAS,MAAM,EAAE,UAAU,MAAM,EAAE,cAAc,UAAU,EAAE,KAAG,WAO7F,CAAA"}
|