@duckcodeailabs/dql-core 1.6.31 → 1.6.32
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/dist/artifacts/dql-artifact.d.ts +29 -0
- package/dist/artifacts/dql-artifact.d.ts.map +1 -0
- package/dist/artifacts/dql-artifact.js +85 -0
- package/dist/artifacts/dql-artifact.js.map +1 -0
- package/dist/artifacts/index.d.ts +3 -0
- package/dist/artifacts/index.d.ts.map +1 -0
- package/dist/artifacts/index.js +2 -0
- package/dist/artifacts/index.js.map +1 -0
- package/dist/ast/nodes.d.ts +16 -0
- package/dist/ast/nodes.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lineage/builder.d.ts +15 -1
- package/dist/lineage/builder.d.ts.map +1 -1
- package/dist/lineage/builder.js +24 -1
- package/dist/lineage/builder.js.map +1 -1
- package/dist/lineage/impact.d.ts +9 -0
- package/dist/lineage/impact.d.ts.map +1 -1
- package/dist/lineage/impact.js +5 -1
- package/dist/lineage/impact.js.map +1 -1
- package/dist/manifest/builder.js +58 -21
- package/dist/manifest/builder.js.map +1 -1
- package/dist/manifest/types.d.ts +26 -0
- package/dist/manifest/types.d.ts.map +1 -1
- package/dist/parser/parser.d.ts.map +1 -1
- package/dist/parser/parser.js +99 -3
- package/dist/parser/parser.js.map +1 -1
- package/dist/semantic/index.d.ts +2 -1
- package/dist/semantic/index.d.ts.map +1 -1
- package/dist/semantic/index.js +5 -1
- package/dist/semantic/index.js.map +1 -1
- package/dist/semantic/providers/dql-provider.js +1 -1
- package/dist/semantic/providers/dql-provider.js.map +1 -1
- package/dist/semantic/semantic-layer.d.ts +2 -0
- package/dist/semantic/semantic-layer.d.ts.map +1 -1
- package/dist/semantic/semantic-layer.js +36 -2
- package/dist/semantic/semantic-layer.js.map +1 -1
- package/dist/semantic/yaml-loader.d.ts +28 -17
- package/dist/semantic/yaml-loader.d.ts.map +1 -1
- package/dist/semantic/yaml-loader.js +86 -68
- package/dist/semantic/yaml-loader.js.map +1 -1
- package/dist/semantic/yaml-loader.node.d.ts +26 -0
- package/dist/semantic/yaml-loader.node.d.ts.map +1 -0
- package/dist/semantic/yaml-loader.node.js +104 -0
- package/dist/semantic/yaml-loader.node.js.map +1 -0
- package/dist/trust/labels.d.ts.map +1 -1
- package/dist/trust/labels.js +1 -0
- package/dist/trust/labels.js.map +1 -1
- package/package.json +5 -1
|
@@ -1,54 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* YAML-based semantic layer loader.
|
|
3
|
-
*
|
|
4
|
-
*
|
|
2
|
+
* YAML-based semantic layer loader (browser-safe).
|
|
3
|
+
*
|
|
4
|
+
* This module contains only pure string/object parsing and serialization —
|
|
5
|
+
* no filesystem access — so it is safe to include in browser bundles. The
|
|
6
|
+
* node-only directory loaders (`loadSemanticLayerFromDir`) that read from disk
|
|
7
|
+
* live in the sibling `yaml-loader.node.ts` to keep `node:fs`/`node:path` out
|
|
8
|
+
* of the browser-reachable import graph.
|
|
5
9
|
*/
|
|
6
|
-
import { readFileSync, readdirSync, existsSync, statSync } from 'node:fs';
|
|
7
|
-
import { join, extname } from 'node:path';
|
|
8
10
|
import * as yaml from 'js-yaml';
|
|
9
11
|
import { SemanticLayer, parseMetricDefinition, parseDimensionDefinition, parseHierarchyDefinition, parseCubeDefinition, parseSegmentDefinition, parsePreAggregationDefinition, } from './semantic-layer.js';
|
|
10
|
-
/**
|
|
11
|
-
* Load a SemanticLayer from a directory on disk.
|
|
12
|
-
* Expected structure:
|
|
13
|
-
* semanticLayerDir/
|
|
14
|
-
* metrics/ → *.yaml metric definitions
|
|
15
|
-
* dimensions/ → *.yaml dimension definitions
|
|
16
|
-
* hierarchies/ → *.yaml hierarchy definitions
|
|
17
|
-
* cubes/ → *.yaml cube definitions
|
|
18
|
-
* segments/ → *.yaml segment definitions
|
|
19
|
-
* pre_aggregations/ → *.yaml pre-aggregation definitions
|
|
20
|
-
* blocks/ → *.yaml block companion definitions (metadata only, not loaded into layer)
|
|
21
|
-
*/
|
|
22
|
-
export function loadSemanticLayerFromDir(semanticLayerDir) {
|
|
23
|
-
const layer = new SemanticLayer();
|
|
24
|
-
const subdirs = [
|
|
25
|
-
{ folder: 'metrics', keys: ['metrics'], loader: (raw) => addIfNamed(parseMetricDefinition(raw), (item) => layer.addMetric(item)) },
|
|
26
|
-
{ folder: 'dimensions', keys: ['dimensions'], loader: (raw) => addIfNamed(parseDimensionDefinition(raw), (item) => layer.addDimension(item)) },
|
|
27
|
-
{ folder: 'hierarchies', keys: ['hierarchies'], loader: (raw) => addIfNamed(parseHierarchyDefinition(raw), (item) => layer.addHierarchy(item)) },
|
|
28
|
-
{ folder: 'cubes', keys: ['cubes'], loader: (raw) => addIfNamed(parseCubeDefinition(raw), (item) => layer.addCube(item)) },
|
|
29
|
-
{ folder: 'segments', keys: ['segments'], loader: (raw) => addIfNamed(parseSegmentDefinition(raw), (item) => layer.addSegment(item)) },
|
|
30
|
-
{ folder: 'pre_aggregations', keys: ['pre_aggregations', 'preAggregations'], loader: (raw) => addIfNamed(parsePreAggregationDefinition(raw), (item) => layer.addPreAggregation(item)) },
|
|
31
|
-
];
|
|
32
|
-
for (const { folder, keys, loader } of subdirs) {
|
|
33
|
-
const dir = join(semanticLayerDir, folder);
|
|
34
|
-
if (!existsSync(dir))
|
|
35
|
-
continue;
|
|
36
|
-
for (const filePath of collectYamlFiles(dir)) {
|
|
37
|
-
try {
|
|
38
|
-
const content = readFileSync(filePath, 'utf-8');
|
|
39
|
-
const raw = yaml.load(content);
|
|
40
|
-
if (raw && typeof raw === 'object') {
|
|
41
|
-
for (const item of expandDefinitions(raw, keys))
|
|
42
|
-
loader(item);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
catch {
|
|
46
|
-
// Skip malformed YAML files
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
return layer;
|
|
51
|
-
}
|
|
52
12
|
/**
|
|
53
13
|
* Load a SemanticLayer from pre-read file contents (no filesystem access needed).
|
|
54
14
|
* Useful for browser contexts or when files are already loaded.
|
|
@@ -98,7 +58,61 @@ export function loadSemanticLayerFromConfig(files) {
|
|
|
98
58
|
}
|
|
99
59
|
return layer;
|
|
100
60
|
}
|
|
101
|
-
|
|
61
|
+
/**
|
|
62
|
+
* Serialize a MetricDefinition back into stable semantic-layer YAML.
|
|
63
|
+
* Used by governance flows that propose human-reviewed semantic changesets.
|
|
64
|
+
*/
|
|
65
|
+
export function serializeMetricDefinitionToYaml(metric) {
|
|
66
|
+
return dumpSemanticYaml(stripUndefined({
|
|
67
|
+
name: metric.name,
|
|
68
|
+
label: metric.label,
|
|
69
|
+
description: metric.description,
|
|
70
|
+
domain: metric.domain,
|
|
71
|
+
status: metric.status,
|
|
72
|
+
sql: metric.sql,
|
|
73
|
+
type: metric.type,
|
|
74
|
+
table: metric.table,
|
|
75
|
+
filters: metric.filters,
|
|
76
|
+
filter: metric.filter,
|
|
77
|
+
tags: metric.tags,
|
|
78
|
+
owner: metric.owner,
|
|
79
|
+
cube: metric.cube,
|
|
80
|
+
aggregation: metric.aggregation,
|
|
81
|
+
metricType: metric.metricType,
|
|
82
|
+
typeParams: metric.typeParams,
|
|
83
|
+
aggTimeDimension: metric.aggTimeDimension,
|
|
84
|
+
source: serializeSourceMetadata(metric.source),
|
|
85
|
+
}));
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Serialize a DimensionDefinition back into stable semantic-layer YAML.
|
|
89
|
+
* This mirrors the metric serializer so future composting can propose reusable
|
|
90
|
+
* dimensions without hand-building YAML strings.
|
|
91
|
+
*/
|
|
92
|
+
export function serializeDimensionDefinitionToYaml(dimension) {
|
|
93
|
+
return dumpSemanticYaml(stripUndefined({
|
|
94
|
+
name: dimension.name,
|
|
95
|
+
label: dimension.label,
|
|
96
|
+
description: dimension.description,
|
|
97
|
+
domain: dimension.domain,
|
|
98
|
+
status: dimension.status,
|
|
99
|
+
sql: dimension.sql,
|
|
100
|
+
type: dimension.type,
|
|
101
|
+
table: dimension.table,
|
|
102
|
+
tags: dimension.tags,
|
|
103
|
+
owner: dimension.owner,
|
|
104
|
+
cube: dimension.cube,
|
|
105
|
+
expr: dimension.expr,
|
|
106
|
+
isTimeDimension: dimension.isTimeDimension,
|
|
107
|
+
typeParams: dimension.typeParams,
|
|
108
|
+
source: serializeSourceMetadata(dimension.source),
|
|
109
|
+
}));
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Expand a raw YAML document into individual definition records. Shared by the
|
|
113
|
+
* browser-safe config loader and the node-only directory loader.
|
|
114
|
+
*/
|
|
115
|
+
export function expandDefinitions(raw, collectionKeys) {
|
|
102
116
|
for (const key of collectionKeys) {
|
|
103
117
|
const collection = raw[key];
|
|
104
118
|
if (Array.isArray(collection)) {
|
|
@@ -109,27 +123,31 @@ function expandDefinitions(raw, collectionKeys) {
|
|
|
109
123
|
return [raw];
|
|
110
124
|
return [];
|
|
111
125
|
}
|
|
112
|
-
function
|
|
126
|
+
function dumpSemanticYaml(value) {
|
|
127
|
+
return yaml.dump(value, {
|
|
128
|
+
lineWidth: 120,
|
|
129
|
+
noRefs: true,
|
|
130
|
+
sortKeys: false,
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
function stripUndefined(value) {
|
|
134
|
+
return Object.fromEntries(Object.entries(value).filter(([, item]) => item !== undefined));
|
|
135
|
+
}
|
|
136
|
+
function serializeSourceMetadata(source) {
|
|
137
|
+
if (!source)
|
|
138
|
+
return undefined;
|
|
139
|
+
return stripUndefined({
|
|
140
|
+
provider: source.provider,
|
|
141
|
+
objectType: source.objectType,
|
|
142
|
+
objectId: source.objectId,
|
|
143
|
+
objectName: source.objectName,
|
|
144
|
+
importedAt: source.importedAt,
|
|
145
|
+
extra: source.extra,
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
/** Add a definition to the layer only when it has a non-empty name. Shared helper. */
|
|
149
|
+
export function addIfNamed(item, add) {
|
|
113
150
|
if (item.name.trim().length > 0)
|
|
114
151
|
add(item);
|
|
115
152
|
}
|
|
116
|
-
function collectYamlFiles(dir) {
|
|
117
|
-
const results = [];
|
|
118
|
-
for (const entry of readdirSync(dir)) {
|
|
119
|
-
const filePath = join(dir, entry);
|
|
120
|
-
try {
|
|
121
|
-
const stat = statSync(filePath);
|
|
122
|
-
if (stat.isDirectory()) {
|
|
123
|
-
results.push(...collectYamlFiles(filePath));
|
|
124
|
-
}
|
|
125
|
-
else if (stat.isFile() && (extname(entry) === '.yaml' || extname(entry) === '.yml')) {
|
|
126
|
-
results.push(filePath);
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
catch {
|
|
130
|
-
// Skip unreadable entries.
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
return results;
|
|
134
|
-
}
|
|
135
153
|
//# sourceMappingURL=yaml-loader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yaml-loader.js","sourceRoot":"","sources":["../../src/semantic/yaml-loader.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"yaml-loader.js","sourceRoot":"","sources":["../../src/semantic/yaml-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Node-only filesystem loaders for the YAML semantic layer.
|
|
3
|
+
*
|
|
4
|
+
* This module is intentionally separate from `yaml-loader.ts` (which is
|
|
5
|
+
* browser-safe: pure string/object parsing and serialization) because it
|
|
6
|
+
* imports `node:fs`/`node:path`. Keeping the filesystem traversal here means
|
|
7
|
+
* the browser-reachable barrel never drags node builtins into a browser
|
|
8
|
+
* bundle. Node consumers import filesystem loaders from here (or the semantic
|
|
9
|
+
* barrel, which re-exports from here); browser consumers use the pure helpers
|
|
10
|
+
* in `yaml-loader.ts`.
|
|
11
|
+
*/
|
|
12
|
+
import { SemanticLayer } from './semantic-layer.js';
|
|
13
|
+
/**
|
|
14
|
+
* Load a SemanticLayer from a directory on disk.
|
|
15
|
+
* Expected structure:
|
|
16
|
+
* semanticLayerDir/
|
|
17
|
+
* metrics/ → *.yaml metric definitions
|
|
18
|
+
* dimensions/ → *.yaml dimension definitions
|
|
19
|
+
* hierarchies/ → *.yaml hierarchy definitions
|
|
20
|
+
* cubes/ → *.yaml cube definitions
|
|
21
|
+
* segments/ → *.yaml segment definitions
|
|
22
|
+
* pre_aggregations/ → *.yaml pre-aggregation definitions
|
|
23
|
+
* blocks/ → *.yaml block companion definitions (metadata only, not loaded into layer)
|
|
24
|
+
*/
|
|
25
|
+
export declare function loadSemanticLayerFromDir(semanticLayerDir: string): SemanticLayer;
|
|
26
|
+
//# sourceMappingURL=yaml-loader.node.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yaml-loader.node.d.ts","sourceRoot":"","sources":["../../src/semantic/yaml-loader.node.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,OAAO,EACL,aAAa,EAOd,MAAM,qBAAqB,CAAC;AAG7B;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CAAC,gBAAgB,EAAE,MAAM,GAAG,aAAa,CA+BhF"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Node-only filesystem loaders for the YAML semantic layer.
|
|
3
|
+
*
|
|
4
|
+
* This module is intentionally separate from `yaml-loader.ts` (which is
|
|
5
|
+
* browser-safe: pure string/object parsing and serialization) because it
|
|
6
|
+
* imports `node:fs`/`node:path`. Keeping the filesystem traversal here means
|
|
7
|
+
* the browser-reachable barrel never drags node builtins into a browser
|
|
8
|
+
* bundle. Node consumers import filesystem loaders from here (or the semantic
|
|
9
|
+
* barrel, which re-exports from here); browser consumers use the pure helpers
|
|
10
|
+
* in `yaml-loader.ts`.
|
|
11
|
+
*/
|
|
12
|
+
import { readFileSync, readdirSync, existsSync, statSync } from 'node:fs';
|
|
13
|
+
import { join, extname, relative } from 'node:path';
|
|
14
|
+
import * as yaml from 'js-yaml';
|
|
15
|
+
import { SemanticLayer, parseMetricDefinition, parseDimensionDefinition, parseHierarchyDefinition, parseCubeDefinition, parseSegmentDefinition, parsePreAggregationDefinition, } from './semantic-layer.js';
|
|
16
|
+
import { expandDefinitions, addIfNamed } from './yaml-loader.js';
|
|
17
|
+
/**
|
|
18
|
+
* Load a SemanticLayer from a directory on disk.
|
|
19
|
+
* Expected structure:
|
|
20
|
+
* semanticLayerDir/
|
|
21
|
+
* metrics/ → *.yaml metric definitions
|
|
22
|
+
* dimensions/ → *.yaml dimension definitions
|
|
23
|
+
* hierarchies/ → *.yaml hierarchy definitions
|
|
24
|
+
* cubes/ → *.yaml cube definitions
|
|
25
|
+
* segments/ → *.yaml segment definitions
|
|
26
|
+
* pre_aggregations/ → *.yaml pre-aggregation definitions
|
|
27
|
+
* blocks/ → *.yaml block companion definitions (metadata only, not loaded into layer)
|
|
28
|
+
*/
|
|
29
|
+
export function loadSemanticLayerFromDir(semanticLayerDir) {
|
|
30
|
+
const layer = new SemanticLayer();
|
|
31
|
+
const subdirs = [
|
|
32
|
+
{ folder: 'metrics', keys: ['metrics'], loader: (raw) => addIfNamed(parseMetricDefinition(raw), (item) => layer.addMetric(item)) },
|
|
33
|
+
{ folder: 'dimensions', keys: ['dimensions'], loader: (raw) => addIfNamed(parseDimensionDefinition(raw), (item) => layer.addDimension(item)) },
|
|
34
|
+
{ folder: 'hierarchies', keys: ['hierarchies'], loader: (raw) => addIfNamed(parseHierarchyDefinition(raw), (item) => layer.addHierarchy(item)) },
|
|
35
|
+
{ folder: 'cubes', keys: ['cubes'], loader: (raw) => addIfNamed(parseCubeDefinition(raw), (item) => layer.addCube(item)) },
|
|
36
|
+
{ folder: 'segments', keys: ['segments'], loader: (raw) => addIfNamed(parseSegmentDefinition(raw), (item) => layer.addSegment(item)) },
|
|
37
|
+
{ folder: 'pre_aggregations', keys: ['pre_aggregations', 'preAggregations'], loader: (raw) => addIfNamed(parsePreAggregationDefinition(raw), (item) => layer.addPreAggregation(item)) },
|
|
38
|
+
];
|
|
39
|
+
for (const { folder, keys, loader } of subdirs) {
|
|
40
|
+
const dir = join(semanticLayerDir, folder);
|
|
41
|
+
if (!existsSync(dir))
|
|
42
|
+
continue;
|
|
43
|
+
for (const filePath of collectYamlFiles(dir)) {
|
|
44
|
+
try {
|
|
45
|
+
const content = readFileSync(filePath, 'utf-8');
|
|
46
|
+
const raw = yaml.load(content);
|
|
47
|
+
if (raw && typeof raw === 'object') {
|
|
48
|
+
for (const item of expandDefinitions(raw, keys)) {
|
|
49
|
+
loader(withLocalSemanticSource(item, semanticLayerDir, filePath, folder));
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
catch {
|
|
54
|
+
// Skip malformed YAML files
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return layer;
|
|
59
|
+
}
|
|
60
|
+
function withLocalSemanticSource(raw, semanticLayerDir, filePath, folder) {
|
|
61
|
+
const existing = raw.source && typeof raw.source === 'object' && !Array.isArray(raw.source)
|
|
62
|
+
? raw.source
|
|
63
|
+
: {};
|
|
64
|
+
const existingExtra = existing.extra && typeof existing.extra === 'object' && !Array.isArray(existing.extra)
|
|
65
|
+
? existing.extra
|
|
66
|
+
: {};
|
|
67
|
+
const relativePath = relative(semanticLayerDir, filePath).replace(/\\/g, '/');
|
|
68
|
+
const objectName = typeof raw.name === 'string' ? raw.name : undefined;
|
|
69
|
+
return {
|
|
70
|
+
...raw,
|
|
71
|
+
source: {
|
|
72
|
+
...existing,
|
|
73
|
+
provider: typeof existing.provider === 'string' ? existing.provider : 'dql',
|
|
74
|
+
objectType: typeof existing.objectType === 'string' ? existing.objectType : folder.replace(/s$/, ''),
|
|
75
|
+
objectId: typeof existing.objectId === 'string' ? existing.objectId : objectName ?? relativePath,
|
|
76
|
+
objectName: typeof existing.objectName === 'string' ? existing.objectName : objectName,
|
|
77
|
+
extra: {
|
|
78
|
+
...existingExtra,
|
|
79
|
+
path: typeof existingExtra.path === 'string' ? existingExtra.path : relativePath,
|
|
80
|
+
raw: existingExtra.raw ?? raw,
|
|
81
|
+
},
|
|
82
|
+
},
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
function collectYamlFiles(dir) {
|
|
86
|
+
const results = [];
|
|
87
|
+
for (const entry of readdirSync(dir)) {
|
|
88
|
+
const filePath = join(dir, entry);
|
|
89
|
+
try {
|
|
90
|
+
const stat = statSync(filePath);
|
|
91
|
+
if (stat.isDirectory()) {
|
|
92
|
+
results.push(...collectYamlFiles(filePath));
|
|
93
|
+
}
|
|
94
|
+
else if (stat.isFile() && (extname(entry) === '.yaml' || extname(entry) === '.yml')) {
|
|
95
|
+
results.push(filePath);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
catch {
|
|
99
|
+
// Skip unreadable entries.
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
return results;
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=yaml-loader.node.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yaml-loader.node.js","sourceRoot":"","sources":["../../src/semantic/yaml-loader.node.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"labels.d.ts","sourceRoot":"","sources":["../../src/trust/labels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,uCAAuC;AACvC,MAAM,MAAM,YAAY,GACpB,WAAW,GACX,UAAU,GACV,cAAc,GACd,sBAAsB,GACtB,UAAU,CAAC;AAEf,8EAA8E;AAC9E,MAAM,MAAM,kBAAkB,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;AAEvE;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,KAAK,CAAC;AAE3E,mDAAmD;AACnD,MAAM,WAAW,oBAAoB;IACnC,yBAAyB;IACzB,EAAE,EAAE,YAAY,CAAC;IACjB,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,+DAA+D;IAC/D,KAAK,EAAE,eAAe,CAAC;IACvB,oDAAoD;IACpD,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,YAAY,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,KAAK,EAAE,eAAe,CAAC;IACvB,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,uFAAuF;AACvF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,oBAAoB,CAoCnE,CAAC;AAEF,uDAAuD;AACvD,eAAO,MAAM,iBAAiB,EAAE,YAAY,EAM3C,CAAC;AAEF,mFAAmF;AACnF,eAAO,MAAM,kCAAkC,uBAAuB,CAAC;AAEvE;;;;;;;;;;GAUG;AACH,eAAO,MAAM,0BAA0B,eAAe,CAAC;AACvD,eAAO,MAAM,+BAA+B,oBAAoB,CAAC;AAEjE,8EAA8E;AAC9E,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAEjF;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS,CAS/E;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC3C,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,GAAG,kBAAkB,CAIrB;AAED,0DAA0D;AAC1D,eAAO,MAAM,sBAAsB,EAAE,YAAqC,CAAC;AAI3E;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,MAAM,GAAG,SAAS,EACtB,SAAS,CAAC,EAAE,MAAM,GACjB,kBAAkB,CAWpB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY,CAe5E;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY,
|
|
1
|
+
{"version":3,"file":"labels.d.ts","sourceRoot":"","sources":["../../src/trust/labels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,uCAAuC;AACvC,MAAM,MAAM,YAAY,GACpB,WAAW,GACX,UAAU,GACV,cAAc,GACd,sBAAsB,GACtB,UAAU,CAAC;AAEf,8EAA8E;AAC9E,MAAM,MAAM,kBAAkB,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;AAEvE;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,KAAK,CAAC;AAE3E,mDAAmD;AACnD,MAAM,WAAW,oBAAoB;IACnC,yBAAyB;IACzB,EAAE,EAAE,YAAY,CAAC;IACjB,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,+DAA+D;IAC/D,KAAK,EAAE,eAAe,CAAC;IACvB,oDAAoD;IACpD,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,YAAY,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,KAAK,EAAE,eAAe,CAAC;IACvB,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,uFAAuF;AACvF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,oBAAoB,CAoCnE,CAAC;AAEF,uDAAuD;AACvD,eAAO,MAAM,iBAAiB,EAAE,YAAY,EAM3C,CAAC;AAEF,mFAAmF;AACnF,eAAO,MAAM,kCAAkC,uBAAuB,CAAC;AAEvE;;;;;;;;;;GAUG;AACH,eAAO,MAAM,0BAA0B,eAAe,CAAC;AACvD,eAAO,MAAM,+BAA+B,oBAAoB,CAAC;AAEjE,8EAA8E;AAC9E,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAEjF;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS,CAS/E;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC3C,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,GAAG,kBAAkB,CAIrB;AAED,0DAA0D;AAC1D,eAAO,MAAM,sBAAsB,EAAE,YAAqC,CAAC;AAI3E;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,MAAM,GAAG,SAAS,EACtB,SAAS,CAAC,EAAE,MAAM,GACjB,kBAAkB,CAWpB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY,CAe5E;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY,CA2B9E"}
|
package/dist/trust/labels.js
CHANGED
package/dist/trust/labels.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"labels.js","sourceRoot":"","sources":["../../src/trust/labels.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"labels.js","sourceRoot":"","sources":["../../src/trust/labels.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@duckcodeailabs/dql-core",
|
|
3
|
-
"version": "1.6.
|
|
3
|
+
"version": "1.6.32",
|
|
4
4
|
"description": "DQL language core: lexer, parser, AST, semantic analysis",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -18,6 +18,10 @@
|
|
|
18
18
|
"./lineage": {
|
|
19
19
|
"types": "./dist/lineage/index.d.ts",
|
|
20
20
|
"import": "./dist/lineage/index.js"
|
|
21
|
+
},
|
|
22
|
+
"./artifacts": {
|
|
23
|
+
"types": "./dist/artifacts/index.d.ts",
|
|
24
|
+
"import": "./dist/artifacts/index.js"
|
|
21
25
|
}
|
|
22
26
|
},
|
|
23
27
|
"files": [
|