goby-database 2.0.14 → 2.1.15
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/index.d.ts +11 -6
- package/dist/index.js +114 -37
- package/dist/types.d.ts +1 -1
- package/dist/utils.d.ts +1 -1
- package/package.json +6 -1
- package/readme.md +11 -3
- package/dist/index.js.map +0 -1
- package/dist/types.js.map +0 -1
- package/dist/utils.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -30,14 +30,14 @@ export default class Project {
|
|
|
30
30
|
refresh_caches(caches: ('classlist' | 'items' | 'junctions')[]): void;
|
|
31
31
|
create_table(type: SQLTableType, name: string | number, columns: string[]): void;
|
|
32
32
|
action_create_class(name: string): number;
|
|
33
|
-
|
|
33
|
+
add_data_property({ class_id, name, data_type, max_values, create_column }: {
|
|
34
34
|
class_id: number;
|
|
35
35
|
name: string;
|
|
36
36
|
data_type: DataType;
|
|
37
37
|
max_values: MaxValues;
|
|
38
38
|
create_column?: boolean;
|
|
39
39
|
}): void;
|
|
40
|
-
|
|
40
|
+
add_relation_property(class_id: number, name: string, max_values: MaxValues): number;
|
|
41
41
|
delete_property(class_id: number, prop_id: number): void;
|
|
42
42
|
get_junctions(): {
|
|
43
43
|
sides: JunctionSides;
|
|
@@ -67,15 +67,20 @@ export default class Project {
|
|
|
67
67
|
class_data: ClassData;
|
|
68
68
|
}): void;
|
|
69
69
|
action_save(): void;
|
|
70
|
-
|
|
70
|
+
create_item_in_root({ type, value }: {
|
|
71
71
|
type: string | null;
|
|
72
72
|
value?: string;
|
|
73
73
|
}): number;
|
|
74
|
-
|
|
74
|
+
delete_item_from_root(id: number): void;
|
|
75
75
|
action_set_root_item_value(id: number, value: string): void;
|
|
76
|
+
lookup_class(class_id: number): ClassData;
|
|
76
77
|
action_add_row(class_id: number): number;
|
|
77
78
|
get_next_order(table_name: string): number;
|
|
78
|
-
|
|
79
|
+
action_set_property_values(class_id: number, item_id: number, changes: {
|
|
80
|
+
property_id: number;
|
|
81
|
+
value: any;
|
|
82
|
+
}[]): void;
|
|
83
|
+
action_make_relations(relations: [input_1: ItemRelationSide, input_2: ItemRelationSide][]): void;
|
|
79
84
|
retrieve_class_items({ class_id, class_name, class_data }: {
|
|
80
85
|
class_id: number;
|
|
81
86
|
class_name?: string;
|
|
@@ -92,7 +97,7 @@ export default class Project {
|
|
|
92
97
|
}): (DataProperty | RelationProperty);
|
|
93
98
|
retrieve_windows(): ApplicationWindow[];
|
|
94
99
|
retrieve_workspace_contents(id: number): {
|
|
95
|
-
|
|
100
|
+
blocks: WorkspaceBlock[];
|
|
96
101
|
items: unknown[];
|
|
97
102
|
};
|
|
98
103
|
action_config_window({ type, open, metadata, id }: {
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import Database from 'better-sqlite3';
|
|
2
2
|
import { defined, partial_relation_match, full_relation_match, can_have_multiple_values, junction_col_name, side_match, two_way, edit_has_valid_sides, readable_edit } from './utils.js';
|
|
3
3
|
const text_data_types = ['string', 'resource'];
|
|
4
|
+
const integer_data_types = ['boolean'];
|
|
4
5
|
const real_data_types = ['number'];
|
|
5
6
|
export default class Project {
|
|
6
7
|
constructor(source) {
|
|
@@ -141,7 +142,7 @@ export default class Project {
|
|
|
141
142
|
let columns = [
|
|
142
143
|
'system_id INTEGER UNIQUE',
|
|
143
144
|
'system_order REAL',
|
|
144
|
-
'
|
|
145
|
+
'user_Name TEXT',
|
|
145
146
|
`FOREIGN KEY(system_id) REFERENCES system_root(id)`
|
|
146
147
|
];
|
|
147
148
|
this.create_table('class', name, columns);
|
|
@@ -168,10 +169,10 @@ export default class Project {
|
|
|
168
169
|
]);
|
|
169
170
|
this.refresh_caches(['classlist']);
|
|
170
171
|
// add an entry in the property table for the default "name" property.
|
|
171
|
-
this.
|
|
172
|
+
this.add_data_property({ class_id, name: 'Name', data_type: 'string', max_values: 1, create_column: false });
|
|
172
173
|
return class_id;
|
|
173
174
|
}
|
|
174
|
-
|
|
175
|
+
add_data_property({ class_id, name, data_type, max_values, create_column = true }) {
|
|
175
176
|
// 1. Add property to property table ---------------------------------------------------
|
|
176
177
|
let property_table = `class_${class_id}_properties`;
|
|
177
178
|
const system_order = this.get_next_order(property_table);
|
|
@@ -186,9 +187,7 @@ export default class Project {
|
|
|
186
187
|
// let prop_id=this.get_latest_table_row_id(property_table);
|
|
187
188
|
// 2. Add column to class table ------------------------------------------------
|
|
188
189
|
if (create_column) {
|
|
189
|
-
|
|
190
|
-
if (class_data == undefined)
|
|
191
|
-
throw new Error('Cannot find class in class list.');
|
|
190
|
+
const class_data = this.lookup_class(class_id);
|
|
192
191
|
let class_name = class_data.name;
|
|
193
192
|
let sql_data_type = '';
|
|
194
193
|
if (can_have_multiple_values(max_values) || text_data_types.includes(data_type)) {
|
|
@@ -198,13 +197,16 @@ export default class Project {
|
|
|
198
197
|
else if (real_data_types.includes(data_type)) {
|
|
199
198
|
sql_data_type = 'REAL';
|
|
200
199
|
}
|
|
200
|
+
else if (integer_data_types.includes(data_type)) {
|
|
201
|
+
sql_data_type = 'INTEGER';
|
|
202
|
+
}
|
|
201
203
|
//create property in table
|
|
202
204
|
let command_string = `ALTER TABLE [class_${class_name}] ADD COLUMN [user_${name}] ${sql_data_type};`;
|
|
203
205
|
this.db.prepare(command_string).run();
|
|
204
206
|
}
|
|
205
207
|
this.refresh_caches(['classlist']);
|
|
206
208
|
}
|
|
207
|
-
|
|
209
|
+
add_relation_property(class_id, name, max_values) {
|
|
208
210
|
let property_table = `class_${class_id}_properties`;
|
|
209
211
|
const system_order = this.get_next_order(property_table);
|
|
210
212
|
this.db.prepare(`INSERT INTO ${property_table} (name,type,max_values,metadata,system_order) VALUES (@name,@type,@max_values,@metadata,@system_order)`).run({
|
|
@@ -314,7 +316,7 @@ export default class Project {
|
|
|
314
316
|
// NOTE: in the future, check and enforce that the prop name is unique
|
|
315
317
|
// register the property
|
|
316
318
|
if (prop_edit.config.type == 'relation') {
|
|
317
|
-
const prop_id = this.
|
|
319
|
+
const prop_id = this.add_relation_property(prop_edit.class_id, prop_edit.prop_name, prop_edit.config.max_values);
|
|
318
320
|
// look for any relations which match the class id and prop name
|
|
319
321
|
// set their prop ID to the newly created one.
|
|
320
322
|
for (let relationship_edit of relationship_edits) {
|
|
@@ -331,7 +333,7 @@ export default class Project {
|
|
|
331
333
|
}
|
|
332
334
|
else if (prop_edit.config.type == 'data') {
|
|
333
335
|
// if it's a data prop, it just has to be registered in the class table and metadata
|
|
334
|
-
this.
|
|
336
|
+
this.add_data_property({
|
|
335
337
|
class_id: prop_edit.class_id,
|
|
336
338
|
name: prop_edit.prop_name,
|
|
337
339
|
data_type: prop_edit.config.data_type,
|
|
@@ -674,7 +676,7 @@ export default class Project {
|
|
|
674
676
|
this.run.commit.run();
|
|
675
677
|
this.db.close();
|
|
676
678
|
}
|
|
677
|
-
|
|
679
|
+
create_item_in_root({ type = null, value = '' }) {
|
|
678
680
|
var _a;
|
|
679
681
|
// this.db.prepare('INSERT INTO system_root VALUES (null)').run();
|
|
680
682
|
this.run.create_item.run({ type, value });
|
|
@@ -683,22 +685,27 @@ export default class Project {
|
|
|
683
685
|
throw new Error('Something went wrong creating a new item');
|
|
684
686
|
return id;
|
|
685
687
|
}
|
|
686
|
-
|
|
688
|
+
delete_item_from_root(id) {
|
|
687
689
|
this.db.prepare(`DELETE FROM system_root WHERE id = ${id}`).run();
|
|
688
690
|
}
|
|
689
691
|
action_set_root_item_value(id, value) {
|
|
690
692
|
this.db.prepare(`UPDATE system_root set value = ? WHERE id = ?`).run(value, id);
|
|
691
693
|
}
|
|
692
|
-
|
|
693
|
-
|
|
694
|
+
lookup_class(class_id) {
|
|
695
|
+
const class_data = this.class_cache.find(a => a.id == class_id);
|
|
694
696
|
if (class_data == undefined)
|
|
695
697
|
throw new Error('Cannot find class in class list.');
|
|
698
|
+
return class_data;
|
|
699
|
+
}
|
|
700
|
+
action_add_row(class_id) {
|
|
701
|
+
const class_data = this.lookup_class(class_id);
|
|
696
702
|
let class_name = class_data.name;
|
|
697
703
|
//first add new row to root and get id
|
|
698
|
-
const root_id = this.
|
|
704
|
+
const root_id = this.create_item_in_root({ type: 'class_' + class_id });
|
|
699
705
|
//get the last item in class table order and use it to get the order for the new item
|
|
700
706
|
const new_order = this.get_next_order(`[class_${class_name}]`);
|
|
701
707
|
this.db.prepare(`INSERT INTO [class_${class_name}] (system_id, system_order) VALUES (${root_id},${new_order})`).run();
|
|
708
|
+
this.refresh_caches(['items']);
|
|
702
709
|
return root_id;
|
|
703
710
|
}
|
|
704
711
|
get_next_order(table_name) {
|
|
@@ -706,33 +713,103 @@ export default class Project {
|
|
|
706
713
|
const new_order = last_ordered_item ? last_ordered_item.system_order + 1000 : 0;
|
|
707
714
|
return new_order;
|
|
708
715
|
}
|
|
709
|
-
|
|
716
|
+
// NOTE: seems like there should be a way to pair down "value:any" in params, maybe at least make it one of a few value types
|
|
717
|
+
action_set_property_values(class_id, item_id, changes) {
|
|
718
|
+
const class_data = this.lookup_class(class_id);
|
|
719
|
+
const sql_column_inserts = [];
|
|
720
|
+
for (let change of changes) {
|
|
721
|
+
const prop_data = class_data.properties.find((p) => p.id == change.property_id);
|
|
722
|
+
if (prop_data && prop_data.type == 'data') {
|
|
723
|
+
// const data_type=prop_data.data_type;
|
|
724
|
+
const cell_value = validate(change.value, prop_data.data_type, prop_data.max_values);
|
|
725
|
+
if (cell_value.valid) {
|
|
726
|
+
sql_column_inserts.push({
|
|
727
|
+
column_name: `[user_${prop_data.name}]`,
|
|
728
|
+
cell_value: cell_value.output
|
|
729
|
+
});
|
|
730
|
+
}
|
|
731
|
+
else {
|
|
732
|
+
console.log(`Did not modify ${prop_data.name} for item ${item_id}: ${cell_value.message}`);
|
|
733
|
+
}
|
|
734
|
+
}
|
|
735
|
+
else if (prop_data && prop_data.type == 'relation') {
|
|
736
|
+
console.log('haven’t added handling for relation props here yet');
|
|
737
|
+
}
|
|
738
|
+
}
|
|
739
|
+
const params = sql_column_inserts.map((a) => a.cell_value);
|
|
740
|
+
const set_statements = sql_column_inserts.map((p) => `${p.column_name} = ?`).join(',');
|
|
741
|
+
const insert_statement = `UPDATE [class_${class_data.name}] SET ${set_statements} WHERE system_id=${item_id}`;
|
|
742
|
+
this.db.prepare(insert_statement).run(params);
|
|
743
|
+
this.refresh_caches(['items']);
|
|
744
|
+
function validate(input, data_type, max_values) {
|
|
745
|
+
const multiple = max_values == null || max_values > 1;
|
|
746
|
+
const values = multiple ? input : [input];
|
|
747
|
+
if (!Array.isArray(values)) {
|
|
748
|
+
return { valid: false, message: 'Expecting array, got single value' };
|
|
749
|
+
}
|
|
750
|
+
const validated_values = [];
|
|
751
|
+
for (let value of values) {
|
|
752
|
+
if (real_data_types.includes(data_type) || integer_data_types.includes(data_type)) {
|
|
753
|
+
if (data_type == 'boolean') {
|
|
754
|
+
if (typeof value == 'boolean' || [0, 1].includes(value)) {
|
|
755
|
+
validated_values.push(+value);
|
|
756
|
+
}
|
|
757
|
+
else {
|
|
758
|
+
return { valid: false, message: `Expecting boolean or binary integer, got "${value}" (${typeof value})` };
|
|
759
|
+
}
|
|
760
|
+
}
|
|
761
|
+
else if (typeof value == 'number') {
|
|
762
|
+
validated_values.push(value);
|
|
763
|
+
}
|
|
764
|
+
else {
|
|
765
|
+
return { valid: false, message: `Expecting number, got "${value}" (${typeof value})` };
|
|
766
|
+
}
|
|
767
|
+
}
|
|
768
|
+
else if (text_data_types.includes(data_type)) {
|
|
769
|
+
// NOTE: could come back to validate resource as links/filepaths later, but leaving unopinionated for now
|
|
770
|
+
if (typeof value == 'string') {
|
|
771
|
+
validated_values.push(value);
|
|
772
|
+
}
|
|
773
|
+
else {
|
|
774
|
+
return { valid: false, message: `Expecting string, got "${value}" (${typeof value})` };
|
|
775
|
+
}
|
|
776
|
+
}
|
|
777
|
+
}
|
|
778
|
+
const output = multiple ? JSON.stringify(validated_values) : validated_values[0];
|
|
779
|
+
return {
|
|
780
|
+
valid: true,
|
|
781
|
+
output
|
|
782
|
+
};
|
|
783
|
+
}
|
|
784
|
+
}
|
|
785
|
+
action_make_relations(relations) {
|
|
710
786
|
// NOTE: changes to make to this in the future:
|
|
711
787
|
// - for input readability, allow class_name and prop_name as input options, assuming they’re enforced as unique, and use them to look up IDs
|
|
712
788
|
// - enforce max_values here
|
|
713
789
|
var _a;
|
|
714
|
-
let
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
790
|
+
for (let [input_1, input_2] of relations) {
|
|
791
|
+
let column_names = {
|
|
792
|
+
input_1: junction_col_name(input_1.class_id, input_1.prop_id),
|
|
793
|
+
input_2: junction_col_name(input_2.class_id, input_2.prop_id)
|
|
794
|
+
};
|
|
795
|
+
let junction_id = (_a = this.junction_cache.find(j => full_relation_match(j.sides, [input_1, input_2]))) === null || _a === void 0 ? void 0 : _a.id;
|
|
796
|
+
if (junction_id) {
|
|
797
|
+
this.db.prepare(`
|
|
798
|
+
INSERT INTO junction_${junction_id}
|
|
799
|
+
("${column_names.input_1}", "${column_names.input_2}")
|
|
800
|
+
VALUES (${input_1.item_id},${input_2.item_id})
|
|
801
|
+
`).run();
|
|
802
|
+
}
|
|
803
|
+
else {
|
|
804
|
+
throw Error('Something went wrong - junction table for relationship not found');
|
|
805
|
+
}
|
|
728
806
|
}
|
|
807
|
+
this.refresh_caches(['items']);
|
|
729
808
|
// NOTE: should this trigger a refresh to items?
|
|
730
809
|
}
|
|
731
810
|
retrieve_class_items({ class_id, class_name, class_data }) {
|
|
732
811
|
if (class_name == undefined || class_data == undefined) {
|
|
733
|
-
class_data = this.
|
|
734
|
-
if (class_data == undefined)
|
|
735
|
-
throw new Error('Cannot find class in class list.');
|
|
812
|
+
class_data = this.lookup_class(class_id);
|
|
736
813
|
class_name = class_data.name;
|
|
737
814
|
}
|
|
738
815
|
;
|
|
@@ -861,8 +938,8 @@ export default class Project {
|
|
|
861
938
|
}
|
|
862
939
|
retrieve_workspace_contents(id) {
|
|
863
940
|
// get the workspace table
|
|
864
|
-
let
|
|
865
|
-
let
|
|
941
|
+
let blocks_sql = this.db.prepare(`SELECT * FROM workspace_${id}`).all();
|
|
942
|
+
let blocks = blocks_sql.map(a => (Object.assign(Object.assign({}, a), { metadata: JSON.parse(a.metadata) })));
|
|
866
943
|
// for(let block of blocks) block.metadata=JSON.parse(block.metadata);
|
|
867
944
|
// get any relevant root items
|
|
868
945
|
let items = this.db.prepare(`SELECT system_root.*
|
|
@@ -873,7 +950,7 @@ export default class Project {
|
|
|
873
950
|
`).all();
|
|
874
951
|
// get any relevant classes (going to hold off from this for now)
|
|
875
952
|
return {
|
|
876
|
-
|
|
953
|
+
blocks,
|
|
877
954
|
items
|
|
878
955
|
};
|
|
879
956
|
}
|
|
@@ -931,7 +1008,7 @@ export default class Project {
|
|
|
931
1008
|
switch (thing_type) {
|
|
932
1009
|
case 'item':
|
|
933
1010
|
let { value: item_value, type: item_type } = thing_data;
|
|
934
|
-
thing_id = this.
|
|
1011
|
+
thing_id = this.create_item_in_root({ type: item_type, value: item_value });
|
|
935
1012
|
break;
|
|
936
1013
|
// add cases for class and anything else in the future
|
|
937
1014
|
}
|
|
@@ -953,7 +1030,7 @@ export default class Project {
|
|
|
953
1030
|
this.action_remove_workspace_block({ workspace_id, block_id });
|
|
954
1031
|
switch (thing_type) {
|
|
955
1032
|
case 'item':
|
|
956
|
-
this.
|
|
1033
|
+
this.delete_item_from_root(thing_id);
|
|
957
1034
|
break;
|
|
958
1035
|
}
|
|
959
1036
|
}
|
package/dist/types.d.ts
CHANGED
|
@@ -112,7 +112,7 @@ export type RelationDefinition = {
|
|
|
112
112
|
data_type?: never;
|
|
113
113
|
};
|
|
114
114
|
export type RelationProperty = BaseProperty & RelationDefinition;
|
|
115
|
-
export type DataType = 'string' | 'resource' | 'number';
|
|
115
|
+
export type DataType = 'string' | 'resource' | 'number' | 'boolean';
|
|
116
116
|
export type DataDefinition = {
|
|
117
117
|
type: 'data';
|
|
118
118
|
data_type: DataType;
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { JunctionSides, RelationshipSide, MaxValues, RelationshipSideBase, RelationEdit, RelationEditValidSides, ClassData, JunctionList } from "./types";
|
|
1
|
+
import { JunctionSides, RelationshipSide, MaxValues, RelationshipSideBase, RelationEdit, RelationEditValidSides, ClassData, JunctionList } from "./types.js";
|
|
2
2
|
export declare function defined<T>(v: T): v is NonNullable<T>;
|
|
3
3
|
export declare function partial_relation_match(old_relation: JunctionSides, new_relation: JunctionSides): boolean;
|
|
4
4
|
export declare function side_match(x: RelationshipSide, y: RelationshipSide): boolean;
|
package/package.json
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "goby-database",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.1.15",
|
|
4
4
|
"description": "This will hold the core better-sqlite3-powered application for creating and modifying goby databases",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"files": [
|
|
7
7
|
"/dist",
|
|
8
|
+
"!dist/index.js.map",
|
|
9
|
+
"!dist/types.js.map",
|
|
10
|
+
"!dist/utils.js.map",
|
|
8
11
|
"!dist/sandbox.js",
|
|
9
12
|
"!dist/sandbox.d.ts",
|
|
10
13
|
"!dist/sandbox.js.map",
|
|
@@ -26,6 +29,8 @@
|
|
|
26
29
|
"type": "module",
|
|
27
30
|
"devDependencies": {
|
|
28
31
|
"@types/better-sqlite3": "^7.6.12",
|
|
32
|
+
"@types/d3-dsv": "^3.0.7",
|
|
33
|
+
"d3-dsv": "^3.0.1",
|
|
29
34
|
"typescript": "^5.7.2"
|
|
30
35
|
}
|
|
31
36
|
}
|
package/readme.md
CHANGED
|
@@ -2,6 +2,14 @@ I intend for this to be the core module Goby uses to represent and manipulate th
|
|
|
2
2
|
|
|
3
3
|
Directory:
|
|
4
4
|
* `notes.md` is my running notes doc for the project.
|
|
5
|
-
* `index.js`
|
|
6
|
-
* `sandbox.js`
|
|
7
|
-
|
|
5
|
+
* `index.js` is the main script (warning, lots of currently non-functional unfinished code)
|
|
6
|
+
* `sandbox.js` is an open testing and working environment
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### [WARNING: NOT YET STABLE]
|
|
10
|
+
|
|
11
|
+
For anyone installing this, beware that it’s not ready/intended for general use yet!! I publish this package so that I can install it in [goby-interface](https://github.com/goby-garden/goby-interface) (I can’t use `npm link` because of some convoluted electron node issues), and frequently release tiny edits to accomodate my work there.
|
|
12
|
+
|
|
13
|
+
But anyway if you _are_ one of the ~150+ (???) people who have been installing this, I’d be very curious to hear what you’re doing or what interested you in the project :)
|
|
14
|
+
|
|
15
|
+
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
package/dist/utils.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,OAAO,CAAI,CAAG;IAC1B,OAAO,CAAC,KAAG,SAAS,IAAI,CAAC,KAAG,IAAI,CAAC;AACrC,CAAC;AAGD,wBAAwB;AACxB,uDAAuD;AACvD,+CAA+C;AAC/C,6EAA6E;AAE7E,MAAM,UAAU,sBAAsB,CAAC,YAA0B,EAAC,YAA0B;IAExF,6DAA6D;IAC7D,IAAI,uBAAuB,GAAC;QACxB,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAE,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QACtE,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAE,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;KACzE,CAAC;IAEF,uDAAuD;IACvD,KAAI,IAAI,WAAW,IAAI,uBAAuB,CAAC,CAAC,CAAC,EAAC,CAAC;QAE/C,mDAAmD;QACnD,IAAI,cAAc,GAAC,IAAI,CAAC,GAAG,CAAC,WAAW,GAAC,CAAC,CAAC,CAAC;QAE3C,oEAAoE;QACpE,IAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAC,CAAC;YACpD,gBAAgB;YAChB,IAAI,WAAW,GAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAChC,IAAI,WAAW,GAAC,YAAY,CAAC,WAAW,CAAC,CAAC;YAE1C,gBAAgB;YAChB,IAAI,WAAW,GAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAChC,IAAI,WAAW,GAAC,YAAY,CAAC,cAAc,CAAC,CAAC;YAAA,CAAC;YAE9C,kEAAkE;YAClE,IAAG,0BAA0B,CAAC,WAAW,EAAC,WAAW,CAAC,IAAI,0BAA0B,CAAC,WAAW,EAAC,WAAW,CAAC,EAAC,CAAC;gBAC3G,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;IAEL,CAAC;IAED,4CAA4C;IAC5C,OAAO,KAAK,CAAC;AAEhB,CAAC;AAED,SAAS,0BAA0B,CAAC,CAAkB,EAAC,CAAkB;IACtE,OAAO,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC;AAC9E,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAkB,EAAC,CAAkB;IAC3D,IAAG,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;;QACtD,OAAO,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC;IAEnC,6EAA6E;AACjF,CAAC;AAEA,MAAM,UAAU,UAAU,CAAC,CAAkB,EAAC,CAAkB;IAC7D,OAAO,CAAC,CAAC,QAAQ,IAAE,CAAC,CAAC,QAAQ,IAAE,gBAAgB,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC;AACxD,CAAC;AAAA,CAAC;AAEF,MAAM,UAAU,mBAAmB,CAAC,CAAe,EAAC,CAAe;IAChE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC;AAEF,MAAM,UAAU,WAAW,CAAC,KAAiD;IACzE,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;AACnE,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,KAAmB;IACvC,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAAiB;IAClD,QAAO,IAAI,CAAC,IAAI,EAAC,CAAC;QACd,KAAK,QAAQ;YACT,IAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YACxC,MAAM;QACV,KAAK,UAAU;YACX,IAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,IAAE,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC;gBAAE,OAAO,IAAI,CAAC;YACrE,MAAM;QACV,KAAK,QAAQ,CAAC,CAAA,CAAC;YACX,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAIA,MAAM,UAAU,wBAAwB,CAAC,UAAoB;IAC1D,OAAO,UAAU,IAAE,IAAI,IAAI,UAAU,GAAC,CAAC,CAAC;AAC3C,CAAC;AAEF,MAAM,UAAU,iBAAiB,CAAC,QAAe,EAAC,OAAiC;IAC/E,IAAI,QAAQ,GAAC,OAAO,CAAC,OAAO,CAAC,CAAA,CAAC,CAAA,SAAS,OAAO,EAAE,CAAA,CAAC,CAAA,EAAE,CAAA;IACnD,OAAO,SAAS,QAAQ,GAAG,QAAQ,EAAE,CAAC;AAC1C,CAAC;AAGD,MAAM,UAAU,aAAa,CAAC,IAAqB,EAAC,SAAqB;;IACrE,IAAI,cAAc,GAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,EAAE,IAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1D,IAAI,aAAa,GAAC,IAAI,CAAC,OAAO,CAAA,CAAC,CAAA,CAAC,CAAA,MAAA,MAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,UAAU,0CAAE,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,EAAE,IAAE,IAAI,CAAC,OAAO,CAAC,0CAAE,IAAI,KAAI,EAAE,CAAC,CAAA,CAAC,CAAA,EAAE,CAAC;IAExG,aAAa,GAAC,aAAa,CAAA,CAAC,CAAA,KAAK,aAAa,GAAG,CAAA,CAAC,CAAA,EAAE,CAAC;IAGrD,OAAO,GAAG,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI,KAAI,EAAE,GAAG,aAAa,EAAE,CAAC;AAC3D,CAAC;AAED,SAAS,cAAc,CAAC,KAAmB,EAAC,SAAqB;IAC7D,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAC,SAAS,CAAC,QAAQ,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAC,SAAS,CAAC,EAAE,CAAA;AAC1F,CAAC;AAGD,MAAM,UAAU,aAAa,CAAC,IAA2B,EAAC,SAAqB;IAC3E,IAAG,IAAI,CAAC,IAAI,IAAE,QAAQ;QAAE,OAAO,wBAAwB,IAAI,CAAC,EAAE,EAAE,CAAC;SAC5D,IAAI,IAAI,CAAC,IAAI,IAAE,UAAU;QAAE,OAAO,gBAAgB,cAAc,CAAC,IAAI,CAAC,KAAK,EAAC,SAAS,CAAC,SAAS,cAAc,CAAC,IAAI,CAAC,SAAS,EAAC,SAAS,CAAC,GAAG,CAAC;SAC3I,IAAI,IAAI,CAAC,IAAI,IAAE,QAAQ;QAAE,OAAO,gBAAgB,cAAc,CAAC,IAAI,CAAC,KAAK,EAAC,SAAS,CAAC,GAAG,CAAC;AACjG,CAAC;AAGD,MAAM,UAAU,qBAAqB,CAAC,aAA0B,EAAC,SAAqB;IAElF,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAC,EAAE;QAC1B,OAAO,cAAc,CAAC,CAAC,CAAC,KAAK,EAAC,SAAS,CAAC,CAAA;IAC5C,CAAC,CAAC,CAAA;AACN,CAAC"}
|