@luzzle/core 0.0.37 → 0.0.38
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 +9 -36
- package/dist/src/database/migrations/2026-02-11T23:03:45Z-clear-pieces-cache.d.ts +3 -0
- package/dist/src/database/migrations/2026-02-11T23:03:45Z-clear-pieces-cache.js +8 -0
- package/dist/src/database/migrations/2026-02-11T23:03:45Z-clear-pieces-cache.js.map +1 -0
- package/dist/src/lib/ajv.test.js +1 -1
- package/dist/src/lib/ajv.test.js.map +1 -1
- package/dist/src/llm/google.d.ts +1 -1
- package/dist/src/pieces/Piece.d.ts +2 -2
- package/dist/src/pieces/Piece.fixtures.d.ts +21 -27
- package/dist/src/pieces/Piece.fixtures.js +34 -21
- package/dist/src/pieces/Piece.fixtures.js.map +1 -1
- package/dist/src/pieces/Piece.js +45 -42
- package/dist/src/pieces/Piece.js.map +1 -1
- package/dist/src/pieces/Piece.test.js +487 -739
- package/dist/src/pieces/Piece.test.js.map +1 -1
- package/dist/src/pieces/item.js +29 -17
- package/dist/src/pieces/item.js.map +1 -1
- package/dist/src/pieces/item.test.js +137 -115
- package/dist/src/pieces/item.test.js.map +1 -1
- package/dist/src/pieces/manager.test.js +1 -1
- package/dist/src/pieces/manager.test.js.map +1 -1
- package/dist/src/pieces/utils/frontmatter.d.ts +42 -10
- package/dist/src/pieces/utils/frontmatter.js +112 -44
- package/dist/src/pieces/utils/frontmatter.js.map +1 -1
- package/dist/src/pieces/utils/frontmatter.path.d.ts +5 -0
- package/dist/src/pieces/utils/frontmatter.path.js +92 -0
- package/dist/src/pieces/utils/frontmatter.path.js.map +1 -0
- package/dist/src/pieces/utils/frontmatter.path.test.d.ts +1 -0
- package/dist/src/pieces/utils/frontmatter.path.test.js +172 -0
- package/dist/src/pieces/utils/frontmatter.path.test.js.map +1 -0
- package/dist/src/pieces/utils/frontmatter.test.js +200 -169
- package/dist/src/pieces/utils/frontmatter.test.js.map +1 -1
- package/dist/src/pieces/utils/piece.js +3 -2
- package/dist/src/pieces/utils/piece.js.map +1 -1
- package/dist/src/pieces/utils/piece.test.js +1 -1
- package/dist/src/pieces/utils/piece.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/dist/src/pieces/utils/piece.fixtures.d.ts +0 -19
- package/dist/src/pieces/utils/piece.fixtures.js +0 -39
- package/dist/src/pieces/utils/piece.fixtures.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"item.test.js","sourceRoot":"","sources":["../../../src/pieces/item.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"item.test.js","sourceRoot":"","sources":["../../../src/pieces/item.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { describe, expect, test, vi, afterEach } from 'vitest';
|
|
2
2
|
import { mockKysely } from '../database/database.mock.js';
|
|
3
3
|
import * as manager from './manager.js';
|
|
4
|
-
import { makeSchema } from './
|
|
4
|
+
import { makeSchema } from './Piece.fixtures.js';
|
|
5
5
|
vi.mock('./items.js');
|
|
6
6
|
const mocks = {
|
|
7
7
|
empty: vi.fn(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.test.js","sourceRoot":"","sources":["../../../src/pieces/manager.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAgB,MAAM,QAAQ,CAAA;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAA;AACzD,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"manager.test.js","sourceRoot":"","sources":["../../../src/pieces/manager.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { JSONSchemaType } from "ajv";
|
|
2
|
-
type PieceFrontMatterValue = string | number | boolean |
|
|
2
|
+
export type PieceFrontMatterValue = string | number | boolean | PieceFrontMatterValue[] | {
|
|
3
|
+
[key: string]: PieceFrontMatterValue;
|
|
4
|
+
};
|
|
3
5
|
type PieceFrontmatter = {
|
|
4
6
|
[key: string]: PieceFrontMatterValue;
|
|
5
7
|
};
|
|
6
8
|
type PieceFrontmatterSchema<M extends PieceFrontmatter> = JSONSchemaType<M>;
|
|
7
|
-
type
|
|
8
|
-
name: string;
|
|
9
|
+
export type PieceFrontmatterPropertyScalar = {
|
|
9
10
|
type: 'string' | 'boolean' | 'integer';
|
|
10
11
|
format?: 'asset' | 'date' | 'comma-separated' | 'paragraph';
|
|
11
12
|
nullable?: boolean;
|
|
@@ -14,8 +15,7 @@ type PieceFrontmatterSchemaFieldScalar = {
|
|
|
14
15
|
examples?: Array<string | number | boolean>;
|
|
15
16
|
default?: string | number | boolean;
|
|
16
17
|
};
|
|
17
|
-
type
|
|
18
|
-
name: string;
|
|
18
|
+
export type PieceFrontmatterPropertyList = {
|
|
19
19
|
type: 'array';
|
|
20
20
|
format?: undefined;
|
|
21
21
|
pattern?: undefined;
|
|
@@ -23,11 +23,43 @@ type PieceFrontmatterSchemaFieldList = {
|
|
|
23
23
|
default?: undefined;
|
|
24
24
|
nullable?: boolean;
|
|
25
25
|
enum?: string[] | number[];
|
|
26
|
-
items:
|
|
26
|
+
items: PieceFrontmatterProperty;
|
|
27
|
+
};
|
|
28
|
+
export type PieceFrontmatterPropertyObject = {
|
|
29
|
+
type: 'object';
|
|
30
|
+
format?: undefined;
|
|
31
|
+
pattern?: undefined;
|
|
32
|
+
examples?: undefined;
|
|
33
|
+
default?: undefined;
|
|
34
|
+
nullable?: boolean;
|
|
35
|
+
properties: {
|
|
36
|
+
[key: string]: PieceFrontmatterProperty;
|
|
37
|
+
};
|
|
38
|
+
required?: string[];
|
|
39
|
+
};
|
|
40
|
+
type PieceFrontmatterProperty = PieceFrontmatterPropertyScalar | PieceFrontmatterPropertyList | PieceFrontmatterPropertyObject;
|
|
41
|
+
type PieceFrontmatterSchemaField = PieceFrontmatterProperty & {
|
|
42
|
+
name: string;
|
|
27
43
|
};
|
|
28
|
-
|
|
44
|
+
/**
|
|
45
|
+
* Maps schema properties to a flat array of field definitions with names.
|
|
46
|
+
*/
|
|
29
47
|
declare function getPieceFrontmatterSchemaFields<M extends PieceFrontmatter>(schema: PieceFrontmatterSchema<M>): Array<PieceFrontmatterSchemaField>;
|
|
30
|
-
|
|
31
|
-
|
|
48
|
+
/**
|
|
49
|
+
* Converts a frontmatter value to its database-compatible representation.
|
|
50
|
+
* Arrays and objects are kept as structured data for JSON serialization.
|
|
51
|
+
*/
|
|
52
|
+
declare function pieceFrontmatterValueToDatabaseValue(value: unknown, property: PieceFrontmatterProperty): unknown;
|
|
53
|
+
/**
|
|
54
|
+
* Converts a database value back to a frontmatter-compatible representation.
|
|
55
|
+
* Handles both new JSON structures and legacy CSV-separated strings for arrays.
|
|
56
|
+
*/
|
|
57
|
+
declare function databaseValueToPieceFrontmatterValue(value: unknown, property: PieceFrontmatterProperty): unknown;
|
|
58
|
+
/**
|
|
59
|
+
* Recursively initializes frontmatter based on schema properties.
|
|
60
|
+
*/
|
|
61
|
+
declare function initializePieceFrontMatterFromProperties(properties: {
|
|
62
|
+
[key: string]: PieceFrontmatterProperty;
|
|
63
|
+
}, requiredFields?: string[], minimal?: boolean): Record<string, unknown>;
|
|
32
64
|
declare function initializePieceFrontMatter<M extends PieceFrontmatter>(schema: PieceFrontmatterSchema<M>, minimal?: boolean): M;
|
|
33
|
-
export { type PieceFrontmatter, type PieceFrontmatterSchemaField, type PieceFrontmatterSchema, getPieceFrontmatterSchemaFields, pieceFrontmatterValueToDatabaseValue, databaseValueToPieceFrontmatterValue, initializePieceFrontMatter, };
|
|
65
|
+
export { type PieceFrontmatter, type PieceFrontmatterProperty, type PieceFrontmatterSchemaField, type PieceFrontmatterSchema, getPieceFrontmatterSchemaFields, pieceFrontmatterValueToDatabaseValue, databaseValueToPieceFrontmatterValue, initializePieceFrontMatter, initializePieceFrontMatterFromProperties, };
|
|
@@ -1,69 +1,137 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Maps schema properties to a flat array of field definitions with names.
|
|
3
|
+
*/
|
|
1
4
|
function getPieceFrontmatterSchemaFields(schema) {
|
|
2
5
|
return Object.keys(schema.properties).map((key) => {
|
|
3
6
|
const required = Array.isArray(schema.required) ? schema.required : [];
|
|
4
|
-
const
|
|
5
|
-
|
|
7
|
+
const isRequired = required.includes(key);
|
|
8
|
+
const property = schema.properties[key];
|
|
9
|
+
const nullable = isRequired ? false : property.nullable ?? true;
|
|
10
|
+
return {
|
|
11
|
+
...property,
|
|
12
|
+
name: key,
|
|
13
|
+
nullable
|
|
14
|
+
};
|
|
6
15
|
});
|
|
7
16
|
}
|
|
8
|
-
|
|
9
|
-
|
|
17
|
+
/**
|
|
18
|
+
* Converts a frontmatter value to its database-compatible representation.
|
|
19
|
+
* Arrays and objects are kept as structured data for JSON serialization.
|
|
20
|
+
*/
|
|
21
|
+
function pieceFrontmatterValueToDatabaseValue(value, property) {
|
|
22
|
+
if (value === undefined || value === null) {
|
|
10
23
|
return null;
|
|
11
24
|
}
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
25
|
+
switch (property.type) {
|
|
26
|
+
case 'boolean':
|
|
27
|
+
return value ? 1 : 0;
|
|
28
|
+
case 'integer':
|
|
29
|
+
return Number(value);
|
|
30
|
+
case 'array':
|
|
31
|
+
return value.map((v) => pieceFrontmatterValueToDatabaseValue(v, property.items));
|
|
32
|
+
case 'object': {
|
|
33
|
+
const obj = value;
|
|
34
|
+
const result = { ...obj }; // Allow additional properties
|
|
35
|
+
for (const key in property.properties) {
|
|
36
|
+
result[key] = pieceFrontmatterValueToDatabaseValue(obj[key], property.properties[key]);
|
|
37
|
+
}
|
|
38
|
+
return result;
|
|
39
|
+
}
|
|
40
|
+
case 'string':
|
|
41
|
+
if (property.format === 'date') {
|
|
42
|
+
return new Date(value).getTime();
|
|
43
|
+
}
|
|
44
|
+
if (property.format === 'comma-separated') {
|
|
45
|
+
return JSON.stringify(value.split(','));
|
|
46
|
+
}
|
|
47
|
+
return value;
|
|
48
|
+
default:
|
|
49
|
+
return value;
|
|
23
50
|
}
|
|
24
|
-
return value;
|
|
25
51
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
else if (field.type === 'boolean') {
|
|
34
|
-
return value ? true : false;
|
|
35
|
-
}
|
|
36
|
-
else if (field.type === 'array') {
|
|
37
|
-
const values = value.split(',');
|
|
38
|
-
return values.map((v) => databaseValueToPieceFrontmatterValue(v, field.items));
|
|
52
|
+
/**
|
|
53
|
+
* Converts a database value back to a frontmatter-compatible representation.
|
|
54
|
+
* Handles both new JSON structures and legacy CSV-separated strings for arrays.
|
|
55
|
+
*/
|
|
56
|
+
function databaseValueToPieceFrontmatterValue(value, property) {
|
|
57
|
+
if (value === undefined || value === null) {
|
|
58
|
+
return null;
|
|
39
59
|
}
|
|
40
|
-
|
|
41
|
-
|
|
60
|
+
switch (property.type) {
|
|
61
|
+
case 'boolean':
|
|
62
|
+
return value ? true : false;
|
|
63
|
+
case 'integer':
|
|
64
|
+
return Number(value);
|
|
65
|
+
case 'array': {
|
|
66
|
+
// Backwards compatibility: Handle legacy CSV strings stored in older caches
|
|
67
|
+
const values = Array.isArray(value) ? value : value.split(',');
|
|
68
|
+
return values.map((v) => databaseValueToPieceFrontmatterValue(v, property.items));
|
|
69
|
+
}
|
|
70
|
+
case 'object': {
|
|
71
|
+
const obj = value;
|
|
72
|
+
const result = { ...obj };
|
|
73
|
+
for (const key in property.properties) {
|
|
74
|
+
result[key] = databaseValueToPieceFrontmatterValue(obj[key], property.properties[key]);
|
|
75
|
+
}
|
|
76
|
+
return result;
|
|
77
|
+
}
|
|
78
|
+
case 'string':
|
|
79
|
+
if (property.format === 'date') {
|
|
80
|
+
return new Date(value).toLocaleDateString();
|
|
81
|
+
}
|
|
82
|
+
if (property.format === 'comma-separated') {
|
|
83
|
+
try {
|
|
84
|
+
return JSON.parse(value).join(',');
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
return value;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return value;
|
|
91
|
+
default:
|
|
92
|
+
return value;
|
|
42
93
|
}
|
|
43
|
-
return value;
|
|
44
94
|
}
|
|
45
|
-
|
|
95
|
+
/**
|
|
96
|
+
* Recursively initializes frontmatter based on schema properties.
|
|
97
|
+
*/
|
|
98
|
+
function initializePieceFrontMatterFromProperties(properties, requiredFields = [], minimal = false) {
|
|
46
99
|
const frontmatter = {};
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
const
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
100
|
+
for (const name in properties) {
|
|
101
|
+
const property = properties[name];
|
|
102
|
+
const isRequired = requiredFields.includes(name);
|
|
103
|
+
// Handle nested objects
|
|
104
|
+
if (property.type === 'object') {
|
|
105
|
+
const subValue = initializePieceFrontMatterFromProperties(property.properties, property.required || [], minimal);
|
|
106
|
+
if (Object.keys(subValue).length > 0) {
|
|
107
|
+
frontmatter[name] = subValue;
|
|
108
|
+
}
|
|
109
|
+
else if (isRequired) {
|
|
110
|
+
frontmatter[name] = {};
|
|
111
|
+
}
|
|
112
|
+
continue;
|
|
113
|
+
}
|
|
114
|
+
// Handle scalars and arrays
|
|
115
|
+
const isArray = property.type === 'array';
|
|
116
|
+
const examples = isArray ? property.items.examples : property.examples;
|
|
117
|
+
const def = isArray ? property.items.default : property.default;
|
|
54
118
|
const example = examples?.[0];
|
|
55
119
|
const hasInitialValue = def !== undefined || example !== undefined;
|
|
56
|
-
if (
|
|
120
|
+
if (isRequired || (!minimal && hasInitialValue)) {
|
|
57
121
|
const initialValue = def !== undefined ? def : example;
|
|
58
122
|
if (initialValue !== undefined) {
|
|
59
123
|
frontmatter[name] = isArray ? [initialValue] : initialValue;
|
|
60
124
|
}
|
|
61
|
-
else if (
|
|
62
|
-
throw new Error(`can not initialize
|
|
125
|
+
else if (isRequired) {
|
|
126
|
+
throw new Error(`can not initialize field "${name}" as it is required but there are no examples or a default value`);
|
|
63
127
|
}
|
|
64
128
|
}
|
|
65
129
|
}
|
|
66
130
|
return frontmatter;
|
|
67
131
|
}
|
|
68
|
-
|
|
132
|
+
function initializePieceFrontMatter(schema, minimal = false) {
|
|
133
|
+
const required = Array.isArray(schema.required) ? schema.required : [];
|
|
134
|
+
return initializePieceFrontMatterFromProperties(schema.properties, required, minimal);
|
|
135
|
+
}
|
|
136
|
+
export { getPieceFrontmatterSchemaFields, pieceFrontmatterValueToDatabaseValue, databaseValueToPieceFrontmatterValue, initializePieceFrontMatter, initializePieceFrontMatterFromProperties, };
|
|
69
137
|
//# sourceMappingURL=frontmatter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../../../../src/pieces/utils/frontmatter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../../../../src/pieces/utils/frontmatter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { PieceFrontmatter, PieceFrontMatterValue, PieceFrontmatterSchemaField } from './frontmatter.js';
|
|
2
|
+
export declare function get(obj: PieceFrontmatter, path: string): PieceFrontMatterValue | undefined;
|
|
3
|
+
export declare function set(obj: PieceFrontmatter, path: string, value: PieceFrontMatterValue): void;
|
|
4
|
+
export declare function unset(obj: PieceFrontmatter, path: string): void;
|
|
5
|
+
export declare function findField(fields: PieceFrontmatterSchemaField[], path: string): PieceFrontmatterSchemaField | undefined;
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
export function get(obj, path) {
|
|
2
|
+
const parts = path.split('.');
|
|
3
|
+
let current = obj;
|
|
4
|
+
for (const part of parts) {
|
|
5
|
+
if (current === null || typeof current !== 'object') {
|
|
6
|
+
return undefined;
|
|
7
|
+
}
|
|
8
|
+
current = current[part];
|
|
9
|
+
}
|
|
10
|
+
return current;
|
|
11
|
+
}
|
|
12
|
+
export function set(obj, path, value) {
|
|
13
|
+
const parts = path.split('.');
|
|
14
|
+
const lastPart = parts.pop();
|
|
15
|
+
let current = obj;
|
|
16
|
+
for (const part of parts) {
|
|
17
|
+
if (!(part in current) || current[part] === null || typeof current[part] !== 'object') {
|
|
18
|
+
current[part] = {};
|
|
19
|
+
}
|
|
20
|
+
current = current[part];
|
|
21
|
+
}
|
|
22
|
+
const existing = current[lastPart];
|
|
23
|
+
if (Array.isArray(existing)) {
|
|
24
|
+
existing.push(value);
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
current[lastPart] = value;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
export function unset(obj, path) {
|
|
31
|
+
const parts = path.split('.');
|
|
32
|
+
const lastPart = parts.pop();
|
|
33
|
+
let current = obj;
|
|
34
|
+
for (const part of parts) {
|
|
35
|
+
if (current === null ||
|
|
36
|
+
typeof current !== 'object' ||
|
|
37
|
+
!(part in current)) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
current = current[part];
|
|
41
|
+
}
|
|
42
|
+
if (Array.isArray(current)) {
|
|
43
|
+
const index = parseInt(lastPart, 10);
|
|
44
|
+
if (!isNaN(index)) {
|
|
45
|
+
current.splice(index, 1);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
else if (current !== null && typeof current === 'object') {
|
|
49
|
+
delete current[lastPart];
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
export function findField(fields, path) {
|
|
53
|
+
const parts = path.split('.');
|
|
54
|
+
let currentFields = fields;
|
|
55
|
+
let result;
|
|
56
|
+
for (let i = 0; i < parts.length; i++) {
|
|
57
|
+
const part = parts[i];
|
|
58
|
+
const isIndex = !isNaN(parseInt(part, 10));
|
|
59
|
+
if (isIndex) {
|
|
60
|
+
if (!result || result.type !== 'array') {
|
|
61
|
+
return undefined;
|
|
62
|
+
}
|
|
63
|
+
result = { ...result.items, name: part };
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
result = currentFields.find((f) => f.name === part);
|
|
67
|
+
}
|
|
68
|
+
if (!result || i === parts.length - 1) {
|
|
69
|
+
return result;
|
|
70
|
+
}
|
|
71
|
+
if (result.type === 'object') {
|
|
72
|
+
const props = result.properties;
|
|
73
|
+
currentFields = Object.keys(props).map((name) => ({ ...props[name], name }));
|
|
74
|
+
}
|
|
75
|
+
else if (result.type === 'array') {
|
|
76
|
+
const nextPart = parts[i + 1];
|
|
77
|
+
const nextIsIndex = !isNaN(parseInt(nextPart, 10));
|
|
78
|
+
if (!nextIsIndex && result.items.type === 'object') {
|
|
79
|
+
const props = result.items.properties;
|
|
80
|
+
currentFields = Object.keys(props).map((name) => ({ ...props[name], name }));
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
currentFields = [];
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
return undefined;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return result;
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=frontmatter.path.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"frontmatter.path.js","sourceRoot":"","sources":["../../../../src/pieces/utils/frontmatter.path.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,GAAG,CAAC,GAAqB,EAAE,IAAY;IACtD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC7B,IAAI,OAAO,GAAY,GAAG,CAAA;IAE1B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YACrD,OAAO,SAAS,CAAA;QACjB,CAAC;QACD,OAAO,GAAI,OAAmC,CAAC,IAAI,CAAC,CAAA;IACrD,CAAC;IAED,OAAO,OAAgC,CAAA;AACxC,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,GAAqB,EAAE,IAAY,EAAE,KAA4B;IACpF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC7B,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,EAAG,CAAA;IAC7B,IAAI,OAAO,GAA4B,GAA8B,CAAA;IAErE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,QAAQ,EAAE,CAAC;YACvF,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;QACnB,CAAC;QACD,OAAO,GAAG,OAAO,CAAC,IAAI,CAA4B,CAAA;IACnD,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IAClC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACrB,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAA;IAC1B,CAAC;AACF,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,GAAqB,EAAE,IAAY;IACxD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC7B,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,EAAG,CAAA;IAC7B,IAAI,OAAO,GAAY,GAAG,CAAA;IAE1B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,IACC,OAAO,KAAK,IAAI;YAChB,OAAO,OAAO,KAAK,QAAQ;YAC3B,CAAC,CAAC,IAAI,IAAK,OAAmC,CAAC,EAC9C,CAAC;YACF,OAAM;QACP,CAAC;QACD,OAAO,GAAI,OAAmC,CAAC,IAAI,CAAC,CAAA;IACrD,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QACpC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACnB,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QACzB,CAAC;IACF,CAAC;SAAM,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC5D,OAAQ,OAAmC,CAAC,QAAQ,CAAC,CAAA;IACtD,CAAC;AACF,CAAC;AAED,MAAM,UAAU,SAAS,CACxB,MAAqC,EACrC,IAAY;IAEZ,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC7B,IAAI,aAAa,GAAG,MAAM,CAAA;IAC1B,IAAI,MAA+C,CAAA;IAEnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QACrB,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAA;QAE1C,IAAI,OAAO,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACxC,OAAO,SAAS,CAAA;YACjB,CAAC;YACD,MAAM,GAAG,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;QACzC,CAAC;aAAM,CAAC;YACP,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;QACpD,CAAC;QAED,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvC,OAAO,MAAM,CAAA;QACd,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAA;YAC/B,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CACrC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CACpC,CAAA;QACF,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACpC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YAC7B,MAAM,WAAW,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAA;YAElD,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACpD,MAAM,KAAK,GAAI,MAAM,CAAC,KAAuD,CAAC,UAAU,CAAA;gBACxF,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CACrC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CACpC,CAAA;YACF,CAAC;iBAAM,CAAC;gBACP,aAAa,GAAG,EAAE,CAAA;YACnB,CAAC;QACF,CAAC;aAAM,CAAC;YACP,OAAO,SAAS,CAAA;QACjB,CAAC;IACF,CAAC;IAED,OAAO,MAAM,CAAA;AACd,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|