@ratiosolver/coco 0.0.2

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.
Files changed (39) hide show
  1. package/README.md +3 -0
  2. package/dist/coco/coco.d.ts +313 -0
  3. package/dist/coco/coco.js +557 -0
  4. package/dist/coco/coco.js.map +1 -0
  5. package/dist/coco/components/chart.d.ts +30 -0
  6. package/dist/coco/components/chart.js +231 -0
  7. package/dist/coco/components/chart.js.map +1 -0
  8. package/dist/coco/components/item.d.ts +23 -0
  9. package/dist/coco/components/item.js +85 -0
  10. package/dist/coco/components/item.js.map +1 -0
  11. package/dist/coco/components/item_chart.d.ts +15 -0
  12. package/dist/coco/components/item_chart.js +88 -0
  13. package/dist/coco/components/item_chart.js.map +1 -0
  14. package/dist/coco/components/item_properties.d.ts +11 -0
  15. package/dist/coco/components/item_properties.js +59 -0
  16. package/dist/coco/components/item_properties.js.map +1 -0
  17. package/dist/coco/components/item_publisher.d.ts +15 -0
  18. package/dist/coco/components/item_publisher.js +152 -0
  19. package/dist/coco/components/item_publisher.js.map +1 -0
  20. package/dist/coco/components/offcanvas.d.ts +6 -0
  21. package/dist/coco/components/offcanvas.js +42 -0
  22. package/dist/coco/components/offcanvas.js.map +1 -0
  23. package/dist/coco/components/publisher.d.ts +22 -0
  24. package/dist/coco/components/publisher.js +281 -0
  25. package/dist/coco/components/publisher.js.map +1 -0
  26. package/dist/coco/components/taxonomy.d.ts +27 -0
  27. package/dist/coco/components/taxonomy.js +185 -0
  28. package/dist/coco/components/taxonomy.js.map +1 -0
  29. package/dist/coco/components/type.d.ts +37 -0
  30. package/dist/coco/components/type.js +165 -0
  31. package/dist/coco/components/type.js.map +1 -0
  32. package/dist/coco/rules.d.ts +30 -0
  33. package/dist/coco/rules.js +36 -0
  34. package/dist/coco/rules.js.map +1 -0
  35. package/dist/index.d.ts +14 -0
  36. package/dist/index.js +30 -0
  37. package/dist/index.js.map +1 -0
  38. package/dist/tsconfig.tsbuildinfo +1 -0
  39. package/package.json +40 -0
@@ -0,0 +1,557 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { App, Settings } from "@ratiosolver/flick";
11
+ export var coco;
12
+ (function (coco) {
13
+ class CoCo {
14
+ constructor() {
15
+ this.property_types = new Map();
16
+ this.coco_listeners = new Set();
17
+ this.add_property_type(new taxonomy.BoolPropertyType(this));
18
+ this.add_property_type(new taxonomy.IntPropertyType(this));
19
+ this.add_property_type(new taxonomy.FloatPropertyType(this));
20
+ this.add_property_type(new taxonomy.StringPropertyType(this));
21
+ this.add_property_type(new taxonomy.SymbolPropertyType(this));
22
+ this.add_property_type(new taxonomy.ItemPropertyType(this));
23
+ this.add_property_type(new taxonomy.JSONPropertyType(this));
24
+ this.types = new Map();
25
+ this.items = new Map();
26
+ this.intents = new Map();
27
+ this.entities = new Map();
28
+ }
29
+ static get_instance() {
30
+ if (!CoCo.instance)
31
+ CoCo.instance = new CoCo();
32
+ return CoCo.instance;
33
+ }
34
+ add_property_type(pt) { this.property_types.set(pt.get_name(), pt); }
35
+ get_types() { return this.types.values(); }
36
+ get_items() { return this.items.values(); }
37
+ new_type(type) {
38
+ this.types.set(type.get_name(), type);
39
+ for (const listener of this.coco_listeners)
40
+ listener.new_type(type);
41
+ }
42
+ new_item(item) {
43
+ this.items.set(item.get_id(), item);
44
+ const queue = [item.get_type()];
45
+ while (queue.length > 0) {
46
+ const tp = queue.shift();
47
+ tp._instances.add(item);
48
+ if (tp.get_parents())
49
+ for (const par of tp.get_parents())
50
+ queue.push(par);
51
+ }
52
+ for (const listener of this.coco_listeners)
53
+ listener.new_item(item);
54
+ }
55
+ new_intent(intent) {
56
+ this.intents.set(intent.get_name(), intent);
57
+ for (const listener of this.coco_listeners)
58
+ listener.new_intent(intent);
59
+ }
60
+ new_entity(entity) {
61
+ this.entities.set(entity.get_name(), entity);
62
+ for (const listener of this.coco_listeners)
63
+ listener.new_entity(entity);
64
+ }
65
+ /**
66
+ * Loads data for a given taxonomy item within a specified date range.
67
+ *
68
+ * @param item - The taxonomy item for which data is to be loaded.
69
+ * @param from - The start date of the range (in milliseconds since the Unix epoch). Defaults to 14 days ago.
70
+ * @param to - The end date of the range (in milliseconds since the Unix epoch). Defaults to the current date and time.
71
+ *
72
+ * If the request is successful, the item's values are updated with the fetched data.
73
+ * If the request fails, an error message is displayed using the application's toast mechanism.
74
+ */
75
+ load_data(item, from = Date.now() - 1000 * 60 * 60 * 24 * 14, to = Date.now()) {
76
+ console.debug('Loading data for ', item.to_string(), ' from ', new Date(from), ' to ', new Date(to));
77
+ const headers = { 'content-type': 'application/json' };
78
+ fetch(Settings.get_instance().get_host() + '/data/' + item.get_id() + '?' + new URLSearchParams({ from: from.toString(), to: to.toString() }), { method: 'GET', headers: headers }).then(res => {
79
+ if (res.ok)
80
+ res.json().then(data => item._set_data(data));
81
+ else
82
+ res.json().then(data => App.get_instance().toast(data.message)).catch(err => console.error(err));
83
+ });
84
+ }
85
+ publish(item, data) {
86
+ console.debug('Publishing data for ', item.to_string(), ': ', JSON.stringify(data));
87
+ fetch(Settings.get_instance().get_host() + '/data/' + item.get_id(), { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(data) }).then(res => {
88
+ if (!res.ok)
89
+ res.json().then(data => App.get_instance().toast(data.message)).catch(err => console.error(err));
90
+ });
91
+ }
92
+ fake_data(type_1) {
93
+ return __awaiter(this, arguments, void 0, function* (type, pars = undefined) {
94
+ console.debug('Faking data for ', type.get_name());
95
+ let url = Settings.get_instance().get_host() + '/fake/' + type.get_name();
96
+ if (pars) {
97
+ console.debug('Parameters:', JSON.stringify(pars));
98
+ url += '?' + new URLSearchParams({ parameters: JSON.stringify(pars) });
99
+ }
100
+ const res = yield fetch(url, { method: 'GET' });
101
+ if (res.ok)
102
+ return res.json();
103
+ else {
104
+ res.json().then(data => App.get_instance().toast(data.message)).catch(err => console.error(err));
105
+ return {};
106
+ }
107
+ });
108
+ }
109
+ update_coco(message) {
110
+ if ('msg_type' in message)
111
+ switch (message.msg_type) {
112
+ case 'coco':
113
+ this.init(message);
114
+ break;
115
+ case 'new_type':
116
+ const ntm = message;
117
+ const n_tp = new taxonomy.Type(ntm.name, [], ntm.data);
118
+ this.new_type(n_tp);
119
+ this.refine_type(n_tp, ntm);
120
+ break;
121
+ case 'new_item':
122
+ const nim = message;
123
+ this.new_item(this.make_item(nim.id, nim));
124
+ break;
125
+ case 'updated_item':
126
+ const uim = message;
127
+ const item = this.get_item(uim.id);
128
+ item._set_properties(uim.properties);
129
+ break;
130
+ case 'new_data':
131
+ const ndm = message;
132
+ this.get_item(ndm.id)._set_datum({ data: ndm.value.data, timestamp: new Date(ndm.value.timestamp) });
133
+ break;
134
+ case 'new_intent':
135
+ const nim_intent = message;
136
+ this.new_intent(new llm.Intent(nim_intent.name, nim_intent.description));
137
+ break;
138
+ case 'new_entity':
139
+ const nim_entity = message;
140
+ this.new_entity(new llm.Entity(nim_entity.name, llm.EntityType[nim_entity.type], nim_entity.description));
141
+ break;
142
+ }
143
+ }
144
+ init(coco_message) {
145
+ if (coco_message.types) {
146
+ this.types.clear();
147
+ for (const [name, tp] of Object.entries(coco_message.types))
148
+ this.new_type(new taxonomy.Type(name, [], tp.data));
149
+ for (const [name, tp] of Object.entries(coco_message.types)) {
150
+ const ctp = this.types.get(name);
151
+ this.refine_type(ctp, tp);
152
+ }
153
+ }
154
+ if (coco_message.items) {
155
+ this.items.clear();
156
+ for (const [id, itm] of Object.entries(coco_message.items))
157
+ this.new_item(this.make_item(id, itm));
158
+ }
159
+ if (coco_message.intents) {
160
+ this.intents.clear();
161
+ for (const [name, intent] of Object.entries(coco_message.intents))
162
+ this.new_intent(new llm.Intent(name, intent.description));
163
+ }
164
+ if (coco_message.entities) {
165
+ this.entities.clear();
166
+ for (const [name, entity] of Object.entries(coco_message.entities))
167
+ this.new_entity(new llm.Entity(name, llm.EntityType[entity.type], entity.description));
168
+ }
169
+ }
170
+ refine_type(tp, tpm) {
171
+ if (tpm.parents)
172
+ tp._set_parents(tpm.parents.map(p => this.types.get(p)));
173
+ if (tpm.static_properties) {
174
+ const static_props = new Map();
175
+ for (const [name, prop] of Object.entries(tpm.static_properties))
176
+ static_props.set(name, this.property_types.get(prop.type).make_property(prop));
177
+ tp._set_static_properties(static_props);
178
+ }
179
+ if (tpm.dynamic_properties) {
180
+ const dynamic_props = new Map();
181
+ for (const [name, prop] of Object.entries(tpm.dynamic_properties))
182
+ dynamic_props.set(name, this.property_types.get(prop.type).make_property(prop));
183
+ tp._set_dynamic_properties(dynamic_props);
184
+ }
185
+ }
186
+ make_item(id, itm) {
187
+ let value = undefined;
188
+ if (itm.value)
189
+ value = { data: itm.value.data, timestamp: new Date(itm.value.timestamp) };
190
+ return new taxonomy.Item(id, this.types.get(itm.type), itm.properties, value);
191
+ }
192
+ get_type(name) { return this.types.get(name); }
193
+ get_item(id) { return this.items.get(id); }
194
+ add_coco_listener(listener) { this.coco_listeners.add(listener); }
195
+ remove_coco_listener(listener) { this.coco_listeners.delete(listener); }
196
+ }
197
+ coco.CoCo = CoCo;
198
+ let taxonomy;
199
+ (function (taxonomy) {
200
+ class PropertyType {
201
+ constructor(cc, name) {
202
+ this.cc = cc;
203
+ this.name = name;
204
+ }
205
+ get_name() { return this.name; }
206
+ }
207
+ taxonomy.PropertyType = PropertyType;
208
+ class BoolPropertyType extends PropertyType {
209
+ constructor(cc) { super(cc, 'bool'); }
210
+ make_property(property_message) {
211
+ const b_pm = property_message;
212
+ return new BoolProperty(this, b_pm.default_value);
213
+ }
214
+ to_string(val) { return val ? 'true' : 'false'; }
215
+ }
216
+ taxonomy.BoolPropertyType = BoolPropertyType;
217
+ class IntPropertyType extends PropertyType {
218
+ constructor(cc) { super(cc, 'int'); }
219
+ make_property(property_message) {
220
+ const i_pm = property_message;
221
+ return new IntProperty(this, i_pm.min, i_pm.max, i_pm.default_value);
222
+ }
223
+ to_string(val) { return String(val); }
224
+ }
225
+ taxonomy.IntPropertyType = IntPropertyType;
226
+ class FloatPropertyType extends PropertyType {
227
+ constructor(cc) { super(cc, 'float'); }
228
+ make_property(property_message) {
229
+ const f_pm = property_message;
230
+ return new FloatProperty(this, f_pm.min, f_pm.max, f_pm.default_value);
231
+ }
232
+ to_string(val) { return String(val); }
233
+ }
234
+ taxonomy.FloatPropertyType = FloatPropertyType;
235
+ class StringPropertyType extends PropertyType {
236
+ constructor(cc) { super(cc, 'string'); }
237
+ make_property(property_message) {
238
+ const s_pm = property_message;
239
+ return new StringProperty(this, s_pm.default_value);
240
+ }
241
+ to_string(val) { return val; }
242
+ }
243
+ taxonomy.StringPropertyType = StringPropertyType;
244
+ class SymbolPropertyType extends PropertyType {
245
+ constructor(cc) { super(cc, 'symbol'); }
246
+ make_property(property_message) {
247
+ const sym_pm = property_message;
248
+ return new SymbolProperty(this, sym_pm.multiple, sym_pm.values, sym_pm.default_value);
249
+ }
250
+ to_string(val) { return Array.isArray(val) ? val.join(', ') : val; }
251
+ }
252
+ taxonomy.SymbolPropertyType = SymbolPropertyType;
253
+ class ItemPropertyType extends PropertyType {
254
+ constructor(cc) { super(cc, 'item'); }
255
+ make_property(property_message) {
256
+ const itm_pm = property_message;
257
+ let def = undefined;
258
+ if (itm_pm.default_value)
259
+ def = Array.isArray(itm_pm.default_value) ? itm_pm.default_value.map(itm => this.cc.get_item(itm)) : this.cc.get_item(itm_pm.default_value);
260
+ return new ItemProperty(this, this.cc.get_type(itm_pm.domain), itm_pm.multiple, def);
261
+ }
262
+ to_string(val) { return Array.isArray(val) ? '[' + val.map(id => this.cc.get_item(id).to_string()).join(', ') + ']' : this.cc.get_item(val).to_string(); }
263
+ }
264
+ taxonomy.ItemPropertyType = ItemPropertyType;
265
+ class JSONPropertyType extends PropertyType {
266
+ constructor(cc) { super(cc, 'json'); }
267
+ make_property(property_message) {
268
+ const j_pm = property_message;
269
+ return new JSONProperty(this, j_pm.schema, j_pm.default_value);
270
+ }
271
+ to_string(val) { return JSON.stringify(val); }
272
+ }
273
+ taxonomy.JSONPropertyType = JSONPropertyType;
274
+ class Property {
275
+ constructor(type, default_value) {
276
+ this.type = type;
277
+ this.default_value = default_value;
278
+ }
279
+ get_type() { return this.type; }
280
+ has_default_value() { return this.default_value !== undefined; }
281
+ get_default_value() { return this.default_value; }
282
+ to_string() { return this.default_value ? `(${this.default_value})` : ''; }
283
+ }
284
+ taxonomy.Property = Property;
285
+ class BoolProperty extends Property {
286
+ constructor(type, default_value) {
287
+ super(type, default_value);
288
+ }
289
+ to_string() {
290
+ const str = 'bool';
291
+ if (this.has_default_value())
292
+ str.concat(' (' + (this.default_value ? 'true' : 'false') + ')');
293
+ return str;
294
+ }
295
+ }
296
+ taxonomy.BoolProperty = BoolProperty;
297
+ class IntProperty extends Property {
298
+ constructor(type, min, max, default_value) {
299
+ super(type, default_value);
300
+ this.min = min;
301
+ this.max = max;
302
+ }
303
+ get_min() { return this.min; }
304
+ get_max() { return this.max; }
305
+ to_string() {
306
+ const str = 'int';
307
+ if (this.min && this.max)
308
+ str.concat(` [${this.min}, ${this.max}]`);
309
+ if (this.has_default_value())
310
+ str.concat(' ' + String(this.default_value));
311
+ return str;
312
+ }
313
+ }
314
+ taxonomy.IntProperty = IntProperty;
315
+ class FloatProperty extends Property {
316
+ constructor(type, min, max, default_value) {
317
+ super(type, default_value);
318
+ this.min = min;
319
+ this.max = max;
320
+ }
321
+ get_min() { return this.min; }
322
+ get_max() { return this.max; }
323
+ to_string() {
324
+ const str = 'float';
325
+ if (this.min && this.max)
326
+ str.concat(` [${this.min}, ${this.max}]`);
327
+ if (this.has_default_value())
328
+ str.concat(' ' + String(this.default_value));
329
+ return str;
330
+ }
331
+ }
332
+ taxonomy.FloatProperty = FloatProperty;
333
+ class StringProperty extends Property {
334
+ constructor(type, default_value) {
335
+ super(type, default_value);
336
+ }
337
+ to_string() {
338
+ const str = 'string';
339
+ if (this.has_default_value())
340
+ str.concat(' (' + this.default_value + ')');
341
+ return str;
342
+ }
343
+ }
344
+ taxonomy.StringProperty = StringProperty;
345
+ class SymbolProperty extends Property {
346
+ constructor(type, multiple, symbols, default_value) {
347
+ super(type, default_value);
348
+ this.multiple = multiple;
349
+ this.symbols = symbols;
350
+ }
351
+ is_multiple() { return this.multiple; }
352
+ get_symbols() { return this.symbols; }
353
+ to_string() {
354
+ const str = 'symbol';
355
+ if (this.multiple)
356
+ str.concat(' [multiple]');
357
+ if (this.symbols)
358
+ str.concat(' {' + this.symbols.join(', ') + '}');
359
+ if (this.default_value)
360
+ str.concat(' (' + (Array.isArray(this.default_value) ? this.default_value.join(', ') : this.default_value) + ')');
361
+ return str;
362
+ }
363
+ }
364
+ taxonomy.SymbolProperty = SymbolProperty;
365
+ class ItemProperty extends Property {
366
+ constructor(type, domain, multiple, default_value) {
367
+ super(type, default_value);
368
+ this.domain = domain;
369
+ this.multiple = multiple;
370
+ }
371
+ get_domain() { return this.domain; }
372
+ is_multiple() { return this.multiple; }
373
+ to_string() {
374
+ const str = this.domain.get_name();
375
+ if (this.multiple)
376
+ str.concat(' [multiple]');
377
+ if (this.default_value)
378
+ str.concat(' (' + (Array.isArray(this.default_value) ? this.default_value.map(itm => itm.to_string()).join(', ') : this.default_value.to_string()) + ')');
379
+ return str;
380
+ }
381
+ }
382
+ taxonomy.ItemProperty = ItemProperty;
383
+ class JSONProperty extends Property {
384
+ constructor(type, schema, default_value) {
385
+ super(type, default_value);
386
+ this.schema = schema;
387
+ }
388
+ to_string() { return JSON.stringify(this.schema); }
389
+ }
390
+ taxonomy.JSONProperty = JSONProperty;
391
+ class Type {
392
+ constructor(name, parents, data, static_properties, dynamic_properties) {
393
+ this._instances = new Set();
394
+ this.listeners = new Set();
395
+ this.name = name;
396
+ this.parents = parents;
397
+ this.data = data;
398
+ this.static_properties = static_properties;
399
+ this.dynamic_properties = dynamic_properties;
400
+ }
401
+ get_name() { return this.name; }
402
+ get_parents() { return this.parents; }
403
+ get_data() { return this.data; }
404
+ get_static_properties() { return this.static_properties; }
405
+ get_all_static_properties() {
406
+ const props = new Map();
407
+ const q = [this];
408
+ while (q.length > 0) {
409
+ const t = q.shift();
410
+ if (t.static_properties)
411
+ for (const [name, property] of t.static_properties)
412
+ props.set(name, property);
413
+ if (t.parents)
414
+ for (const par of t.parents)
415
+ q.push(par);
416
+ }
417
+ return props;
418
+ }
419
+ get_dynamic_properties() { return this.dynamic_properties; }
420
+ get_all_dynamic_properties() {
421
+ const props = new Map();
422
+ const q = [this];
423
+ while (q.length > 0) {
424
+ const t = q.shift();
425
+ if (t.dynamic_properties)
426
+ for (const [name, property] of t.dynamic_properties)
427
+ props.set(name, property);
428
+ if (t.parents)
429
+ for (const par of t.parents)
430
+ q.push(par);
431
+ }
432
+ return props;
433
+ }
434
+ get_instances() { return this._instances; }
435
+ _set_parents(ps) {
436
+ this.parents = ps;
437
+ for (const l of this.listeners)
438
+ l.parents_updated(this);
439
+ }
440
+ _set_data(data) {
441
+ this.data = data;
442
+ for (const l of this.listeners)
443
+ l.data_updated(this);
444
+ }
445
+ _set_static_properties(sp) {
446
+ this.static_properties = sp;
447
+ for (const l of this.listeners)
448
+ l.static_properties_updated(this);
449
+ }
450
+ _set_dynamic_properties(dp) {
451
+ this.dynamic_properties = dp;
452
+ for (const l of this.listeners)
453
+ l.dynamic_properties_updated(this);
454
+ }
455
+ to_string() {
456
+ let tp_str = `<html><b>${this.name}</b>`;
457
+ if (this.static_properties) {
458
+ tp_str += '<br><b>Static Properties:</b>';
459
+ for (const [name, prop] of this.static_properties)
460
+ tp_str += `<br><em>${name}</em> ${prop.to_string()}`;
461
+ }
462
+ if (this.dynamic_properties) {
463
+ tp_str += '<br><b>Dynamic Properties:</b>';
464
+ for (const [name, prop] of this.dynamic_properties)
465
+ tp_str += `<br><em>${name}</em> ${prop.to_string()}`;
466
+ }
467
+ return tp_str + '</html>';
468
+ }
469
+ add_type_listener(l) { this.listeners.add(l); }
470
+ remove_type_listener(l) { this.listeners.delete(l); }
471
+ }
472
+ taxonomy.Type = Type;
473
+ class Item {
474
+ constructor(id, type, properties, value, slots) {
475
+ this.data = [];
476
+ this.listeners = new Set();
477
+ this.id = id;
478
+ this.type = type;
479
+ this.properties = properties;
480
+ this.datum = value;
481
+ this.slots = slots;
482
+ }
483
+ get_id() { return this.id; }
484
+ get_type() { return this.type; }
485
+ get_properties() { return this.properties; }
486
+ get_datum() { return this.datum; }
487
+ get_data() { return this.data; }
488
+ get_slots() { return this.slots; }
489
+ _set_properties(props) {
490
+ this.properties = props;
491
+ for (const l of this.listeners)
492
+ l.properties_updated(this);
493
+ }
494
+ _set_data(data) {
495
+ this.data = data;
496
+ for (const l of this.listeners)
497
+ l.values_updated(this);
498
+ }
499
+ _set_datum(datum) {
500
+ this.datum = datum;
501
+ this.data.push(datum);
502
+ for (const l of this.listeners)
503
+ l.new_value(this, datum);
504
+ }
505
+ _set_slots(slots) {
506
+ this.slots = slots;
507
+ for (const l of this.listeners)
508
+ l.values_updated(this);
509
+ }
510
+ add_item_listener(l) { this.listeners.add(l); }
511
+ remove_item_listener(l) { this.listeners.delete(l); }
512
+ to_string() { return this.properties && 'name' in this.properties ? this.properties.name : this.id; }
513
+ }
514
+ taxonomy.Item = Item;
515
+ })(taxonomy = coco.taxonomy || (coco.taxonomy = {}));
516
+ class User {
517
+ constructor(id, personal_data) {
518
+ this.id = id;
519
+ this.personal_data = personal_data;
520
+ }
521
+ get_id() { return this.id; }
522
+ get_personal_data() { return this.personal_data; }
523
+ }
524
+ coco.User = User;
525
+ let llm;
526
+ (function (llm) {
527
+ class Intent {
528
+ constructor(name, description) {
529
+ this.name = name;
530
+ this.description = description;
531
+ }
532
+ get_name() { return this.name; }
533
+ get_description() { return this.description; }
534
+ }
535
+ llm.Intent = Intent;
536
+ let EntityType;
537
+ (function (EntityType) {
538
+ EntityType[EntityType["string"] = 0] = "string";
539
+ EntityType[EntityType["int"] = 1] = "int";
540
+ EntityType[EntityType["float"] = 2] = "float";
541
+ EntityType[EntityType["bool"] = 3] = "bool";
542
+ EntityType[EntityType["symbol"] = 4] = "symbol";
543
+ })(EntityType = llm.EntityType || (llm.EntityType = {}));
544
+ class Entity {
545
+ constructor(name, type, description) {
546
+ this.name = name;
547
+ this.type = type;
548
+ this.description = description;
549
+ }
550
+ get_name() { return this.name; }
551
+ get_type() { return this.type; }
552
+ get_description() { return this.description; }
553
+ }
554
+ llm.Entity = Entity;
555
+ })(llm = coco.llm || (coco.llm = {}));
556
+ })(coco || (coco = {}));
557
+ //# sourceMappingURL=coco.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coco.js","sourceRoot":"","sources":["../../src/coco/coco.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import { coco } from '../coco';
2
+ import { PlotData } from 'plotly.js-dist-min';
3
+ export declare namespace chart {
4
+ class ChartManager {
5
+ private static instance;
6
+ private charts;
7
+ private constructor();
8
+ static get_instance(): ChartManager;
9
+ add_chart_generator<V>(chart: ChartGenerator<V>): void;
10
+ get_chart_generator(name: string): ChartGenerator<unknown>;
11
+ }
12
+ abstract class ChartGenerator<V> {
13
+ private name;
14
+ constructor(name: string);
15
+ get_name(): string;
16
+ show_tick_labels(): boolean | undefined;
17
+ show_grid(): boolean | undefined;
18
+ abstract make_chart(prop: coco.taxonomy.Property<unknown>, vals: Value<V>[]): Chart<V>;
19
+ }
20
+ type Value<V> = {
21
+ value: V;
22
+ timestamp: Date;
23
+ };
24
+ interface Chart<V> {
25
+ set_data(vals: Value<V>[]): void;
26
+ set_datum(val: Value<V>): void;
27
+ get_data(): Partial<PlotData>[];
28
+ get_range(): number[] | undefined;
29
+ }
30
+ }