@aerogel/core 0.0.0-next.c8f032a868370824898e171969aec1bb6827688e → 0.0.0-next.d824b40e5d06757cd9f47c9f771d916185df4f05

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 (72) hide show
  1. package/dist/aerogel-core.cjs.js +1 -1
  2. package/dist/aerogel-core.cjs.js.map +1 -1
  3. package/dist/aerogel-core.d.ts +545 -88
  4. package/dist/aerogel-core.esm.js +1 -1
  5. package/dist/aerogel-core.esm.js.map +1 -1
  6. package/dist/virtual.d.ts +11 -0
  7. package/noeldemartin.config.js +4 -1
  8. package/package.json +4 -3
  9. package/src/bootstrap/index.ts +6 -2
  10. package/src/components/AGAppModals.vue +15 -0
  11. package/src/components/AGAppOverlays.vue +5 -7
  12. package/src/components/AGAppSnackbars.vue +13 -0
  13. package/src/components/basic/AGErrorMessage.vue +16 -0
  14. package/src/components/basic/AGLink.vue +9 -0
  15. package/src/components/basic/AGMarkdown.vue +10 -9
  16. package/src/components/basic/index.ts +3 -1
  17. package/src/components/constants.ts +8 -0
  18. package/src/components/forms/AGButton.vue +33 -10
  19. package/src/components/forms/AGCheckbox.vue +35 -0
  20. package/src/components/forms/AGInput.vue +8 -4
  21. package/src/components/forms/index.ts +2 -1
  22. package/src/components/headless/forms/AGHeadlessButton.vue +7 -7
  23. package/src/components/headless/forms/AGHeadlessInput.ts +2 -2
  24. package/src/components/headless/forms/AGHeadlessInput.vue +3 -3
  25. package/src/components/headless/forms/AGHeadlessInputError.vue +1 -1
  26. package/src/components/headless/forms/AGHeadlessInputInput.vue +15 -3
  27. package/src/components/headless/index.ts +1 -0
  28. package/src/components/headless/modals/AGHeadlessModalPanel.vue +5 -1
  29. package/src/components/headless/snackbars/AGHeadlessSnackbar.vue +10 -0
  30. package/src/components/headless/snackbars/index.ts +25 -0
  31. package/src/components/index.ts +2 -0
  32. package/src/components/modals/AGAlertModal.vue +0 -1
  33. package/src/components/modals/AGConfirmModal.vue +1 -1
  34. package/src/components/modals/AGErrorReportModal.ts +20 -0
  35. package/src/components/modals/AGErrorReportModal.vue +62 -0
  36. package/src/components/modals/AGErrorReportModalButtons.vue +109 -0
  37. package/src/components/modals/AGErrorReportModalTitle.vue +25 -0
  38. package/src/components/modals/AGLoadingModal.vue +19 -0
  39. package/src/components/modals/AGModal.vue +23 -4
  40. package/src/components/modals/AGModalTitle.vue +9 -0
  41. package/src/components/modals/index.ts +18 -2
  42. package/src/components/snackbars/AGSnackbar.vue +42 -0
  43. package/src/components/snackbars/index.ts +3 -0
  44. package/src/directives/index.ts +16 -3
  45. package/src/errors/Errors.state.ts +31 -0
  46. package/src/errors/Errors.ts +183 -0
  47. package/src/errors/index.ts +59 -0
  48. package/src/forms/Form.test.ts +21 -0
  49. package/src/forms/Form.ts +22 -12
  50. package/src/forms/utils.ts +17 -0
  51. package/src/lang/Lang.ts +12 -4
  52. package/src/lang/index.ts +3 -5
  53. package/src/lang/utils.ts +4 -0
  54. package/src/main.ts +1 -2
  55. package/src/plugins/Plugin.ts +1 -0
  56. package/src/plugins/index.ts +19 -0
  57. package/src/services/App.state.ts +10 -2
  58. package/src/services/App.ts +14 -1
  59. package/src/services/Service.ts +132 -45
  60. package/src/services/index.ts +21 -4
  61. package/src/services/store.ts +27 -0
  62. package/src/types/virtual.d.ts +11 -0
  63. package/src/ui/UI.state.ts +11 -1
  64. package/src/ui/UI.ts +52 -8
  65. package/src/ui/index.ts +7 -1
  66. package/src/utils/composition/forms.ts +11 -0
  67. package/src/utils/index.ts +1 -0
  68. package/src/utils/markdown.ts +11 -2
  69. package/src/utils/vue.ts +2 -0
  70. package/tsconfig.json +1 -0
  71. package/vite.config.ts +2 -1
  72. package/src/globals.ts +0 -6
@@ -10,8 +10,9 @@ import { DefineComponent } from 'vue';
10
10
  import type { Directive } from 'vue';
11
11
  import { ExtractPropTypes } from 'vue';
12
12
  import { Facade } from '@noeldemartin/utils';
13
+ import type { GetClosureArgs } from '@noeldemartin/utils';
13
14
  import type { InjectionKey } from 'vue';
14
- import type { LocationQuery } from 'vue-router';
15
+ import type { JSError } from '@noeldemartin/utils';
15
16
  import { MagicObject } from '@noeldemartin/utils';
16
17
  import type { ObjectValues } from '@noeldemartin/utils';
17
18
  import { PromisedValue } from '@noeldemartin/utils';
@@ -19,7 +20,6 @@ import { PropType } from 'vue';
19
20
  import type { Ref } from 'vue';
20
21
  import { RendererElement } from 'vue';
21
22
  import { RendererNode } from 'vue';
22
- import type { RouteParams } from 'vue-router';
23
23
  import type { UnwrapNestedRefs } from 'vue';
24
24
  import { VNode } from 'vue';
25
25
  import { VNodeProps } from 'vue';
@@ -69,23 +69,43 @@ export declare const AGAppOverlays: DefineComponent< {}, (_ctx: any, _cache:
69
69
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {}>>, {}, {}>;
70
70
 
71
71
  export declare const AGButton: DefineComponent< {
72
- secondary: {
73
- type: PropType<boolean>;
72
+ color: {
73
+ type: PropType<"primary" | "secondary" | "danger" | "clear">;
74
74
  validator?(value: unknown): boolean;
75
75
  } & {
76
- default: boolean | (() => boolean) | null;
76
+ default: "primary" | "secondary" | "danger" | "clear" | (() => "primary" | "secondary" | "danger" | "clear") | null;
77
77
  };
78
78
  }, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
79
79
  [key: string]: any;
80
80
  }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
81
- secondary: {
82
- type: PropType<boolean>;
81
+ color: {
82
+ type: PropType<"primary" | "secondary" | "danger" | "clear">;
83
83
  validator?(value: unknown): boolean;
84
84
  } & {
85
- default: boolean | (() => boolean) | null;
85
+ default: "primary" | "secondary" | "danger" | "clear" | (() => "primary" | "secondary" | "danger" | "clear") | null;
86
86
  };
87
87
  }>>, {
88
- secondary: boolean;
88
+ color: "primary" | "secondary" | "danger" | "clear";
89
+ }, {}>;
90
+
91
+ export declare const AGCheckbox: DefineComponent< {
92
+ name: {
93
+ type: PropType<string | null>;
94
+ validator?(value: unknown): boolean;
95
+ } & {
96
+ default: string | (() => string | null) | null;
97
+ };
98
+ }, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
99
+ [key: string]: any;
100
+ }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
101
+ name: {
102
+ type: PropType<string | null>;
103
+ validator?(value: unknown): boolean;
104
+ } & {
105
+ default: string | (() => string | null) | null;
106
+ };
107
+ }>>, {
108
+ name: string | null;
89
109
  }, {}>;
90
110
 
91
111
  export declare const AGConfirmModal: DefineComponent< {
@@ -120,6 +140,87 @@ required: true;
120
140
  title: string | null;
121
141
  }, {}>;
122
142
 
143
+ export declare const AGErrorMessage: DefineComponent< {
144
+ error: {
145
+ type: PropType<unknown>;
146
+ validator?(value: unknown): boolean;
147
+ } & {
148
+ required: true;
149
+ };
150
+ }, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
151
+ [key: string]: any;
152
+ }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
153
+ error: {
154
+ type: PropType<unknown>;
155
+ validator?(value: unknown): boolean;
156
+ } & {
157
+ required: true;
158
+ };
159
+ }>>, {}, {}>;
160
+
161
+ export declare const AGErrorReportModalButtons: DefineComponent< {
162
+ report: {
163
+ type: PropType<ErrorReport>;
164
+ validator?(value: unknown): boolean;
165
+ } & {
166
+ required: true;
167
+ };
168
+ }, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
169
+ [key: string]: any;
170
+ }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
171
+ report: {
172
+ type: PropType<ErrorReport>;
173
+ validator?(value: unknown): boolean;
174
+ } & {
175
+ required: true;
176
+ };
177
+ }>>, {}, {}>;
178
+
179
+ export declare const AGErrorReportModalTitle: DefineComponent< {
180
+ report: {
181
+ type: PropType<ErrorReport>;
182
+ validator?(value: unknown): boolean;
183
+ } & {
184
+ required: true;
185
+ };
186
+ currentReport: {
187
+ type: PropType<number | null>;
188
+ validator?(value: unknown): boolean;
189
+ } & {
190
+ default: number | (() => number | null) | null;
191
+ };
192
+ totalReports: {
193
+ type: PropType<number | null>;
194
+ validator?(value: unknown): boolean;
195
+ } & {
196
+ default: number | (() => number | null) | null;
197
+ };
198
+ }, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
199
+ [key: string]: any;
200
+ }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
201
+ report: {
202
+ type: PropType<ErrorReport>;
203
+ validator?(value: unknown): boolean;
204
+ } & {
205
+ required: true;
206
+ };
207
+ currentReport: {
208
+ type: PropType<number | null>;
209
+ validator?(value: unknown): boolean;
210
+ } & {
211
+ default: number | (() => number | null) | null;
212
+ };
213
+ totalReports: {
214
+ type: PropType<number | null>;
215
+ validator?(value: unknown): boolean;
216
+ } & {
217
+ default: number | (() => number | null) | null;
218
+ };
219
+ }>>, {
220
+ currentReport: number | null;
221
+ totalReports: number | null;
222
+ }, {}>;
223
+
123
224
  export declare const AGForm: DefineComponent< {
124
225
  form: {
125
226
  type: PropType<Form<FormFieldDefinitions> | null>;
@@ -143,6 +244,12 @@ form: Form<FormFieldDefinitions> | null;
143
244
  }, {}>;
144
245
 
145
246
  export declare const AGHeadlessButton: DefineComponent< {
247
+ href: {
248
+ type: PropType<string | null>;
249
+ validator?(value: unknown): boolean;
250
+ } & {
251
+ default: string | (() => string | null) | null;
252
+ };
146
253
  url: {
147
254
  type: PropType<string | null>;
148
255
  validator?(value: unknown): boolean;
@@ -156,16 +263,16 @@ validator?(value: unknown): boolean;
156
263
  default: string | (() => string | null) | null;
157
264
  };
158
265
  routeParams: {
159
- type: PropType<RouteParams>;
266
+ type: PropType< {}>;
160
267
  validator?(value: unknown): boolean;
161
268
  } & {
162
- default: RouteParams | (() => RouteParams) | null;
269
+ default: {} | (() => {}) | null;
163
270
  };
164
271
  routeQuery: {
165
- type: PropType<LocationQuery>;
272
+ type: PropType< {}>;
166
273
  validator?(value: unknown): boolean;
167
274
  } & {
168
- default: LocationQuery | (() => LocationQuery) | null;
275
+ default: {} | (() => {}) | null;
169
276
  };
170
277
  submit: {
171
278
  type: PropType<boolean>;
@@ -176,6 +283,12 @@ default: boolean | (() => boolean) | null;
176
283
  }, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
177
284
  [key: string]: any;
178
285
  }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
286
+ href: {
287
+ type: PropType<string | null>;
288
+ validator?(value: unknown): boolean;
289
+ } & {
290
+ default: string | (() => string | null) | null;
291
+ };
179
292
  url: {
180
293
  type: PropType<string | null>;
181
294
  validator?(value: unknown): boolean;
@@ -189,16 +302,16 @@ validator?(value: unknown): boolean;
189
302
  default: string | (() => string | null) | null;
190
303
  };
191
304
  routeParams: {
192
- type: PropType<RouteParams>;
305
+ type: PropType< {}>;
193
306
  validator?(value: unknown): boolean;
194
307
  } & {
195
- default: RouteParams | (() => RouteParams) | null;
308
+ default: {} | (() => {}) | null;
196
309
  };
197
310
  routeQuery: {
198
- type: PropType<LocationQuery>;
311
+ type: PropType< {}>;
199
312
  validator?(value: unknown): boolean;
200
313
  } & {
201
- default: LocationQuery | (() => LocationQuery) | null;
314
+ default: {} | (() => {}) | null;
202
315
  };
203
316
  submit: {
204
317
  type: PropType<boolean>;
@@ -207,19 +320,20 @@ validator?(value: unknown): boolean;
207
320
  default: boolean | (() => boolean) | null;
208
321
  };
209
322
  }>>, {
323
+ href: string | null;
210
324
  url: string | null;
211
325
  route: string | null;
212
- routeParams: RouteParams;
213
- routeQuery: LocationQuery;
326
+ routeParams: {};
327
+ routeQuery: {};
214
328
  submit: boolean;
215
329
  }, {}>;
216
330
 
217
331
  export declare const AGHeadlessInput: DefineComponent< {
218
332
  as: {
219
- type: PropType<string | null>;
333
+ type: PropType<string>;
220
334
  validator?(value: unknown): boolean;
221
335
  } & {
222
- default: string | (() => string | null) | null;
336
+ default: string | (() => string) | null;
223
337
  };
224
338
  name: {
225
339
  type: PropType<string | null>;
@@ -228,19 +342,19 @@ validator?(value: unknown): boolean;
228
342
  default: string | (() => string | null) | null;
229
343
  };
230
344
  modelValue: {
231
- type: PropType<string | null>;
345
+ type: PropType<string | number | boolean | null>;
232
346
  validator?(value: unknown): boolean;
233
347
  } & {
234
- default: string | (() => string | null) | null;
348
+ default: string | number | boolean | (() => string | number | boolean | null) | null;
235
349
  };
236
350
  }, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
237
351
  [key: string]: any;
238
352
  }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
239
353
  as: {
240
- type: PropType<string | null>;
354
+ type: PropType<string>;
241
355
  validator?(value: unknown): boolean;
242
356
  } & {
243
- default: string | (() => string | null) | null;
357
+ default: string | (() => string) | null;
244
358
  };
245
359
  name: {
246
360
  type: PropType<string | null>;
@@ -249,26 +363,42 @@ validator?(value: unknown): boolean;
249
363
  default: string | (() => string | null) | null;
250
364
  };
251
365
  modelValue: {
252
- type: PropType<string | null>;
366
+ type: PropType<string | number | boolean | null>;
253
367
  validator?(value: unknown): boolean;
254
368
  } & {
255
- default: string | (() => string | null) | null;
369
+ default: string | number | boolean | (() => string | number | boolean | null) | null;
256
370
  };
257
371
  }>> & {
258
372
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
259
373
  }, {
260
- as: string | null;
374
+ as: string;
261
375
  name: string | null;
262
- modelValue: string | null;
376
+ modelValue: string | number | boolean | null;
263
377
  }, {}>;
264
378
 
265
379
  export declare const AGHeadlessInputError: DefineComponent< {}, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
266
380
  [key: string]: any;
267
381
  }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {}>>, {}, {}>;
268
382
 
269
- export declare const AGHeadlessInputInput: DefineComponent< {}, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
383
+ export declare const AGHeadlessInputInput: DefineComponent< {
384
+ type: {
385
+ type: PropType<string>;
386
+ validator?(value: unknown): boolean;
387
+ } & {
388
+ default: string | (() => string) | null;
389
+ };
390
+ }, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
270
391
  [key: string]: any;
271
- }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {}>>, {}, {}>;
392
+ }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
393
+ type: {
394
+ type: PropType<string>;
395
+ validator?(value: unknown): boolean;
396
+ } & {
397
+ default: string | (() => string) | null;
398
+ };
399
+ }>>, {
400
+ type: string;
401
+ }, {}>;
272
402
 
273
403
  export declare const AGHeadlessInputLabel: DefineComponent< {}, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
274
404
  [key: string]: any;
@@ -318,6 +448,10 @@ default: string | (() => string) | null;
318
448
  as: string;
319
449
  }, {}>;
320
450
 
451
+ export declare const AGHeadlessSnackbar: DefineComponent< {}, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
452
+ [key: string]: any;
453
+ }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {}>>, {}, {}>;
454
+
321
455
  export declare const AGInput: DefineComponent< {
322
456
  name: {
323
457
  type: PropType<string | null>;
@@ -338,20 +472,32 @@ default: string | (() => string | null) | null;
338
472
  name: string | null;
339
473
  }, {}>;
340
474
 
341
- export declare const AGMarkdown: DefineComponent< {
342
- as: {
343
- type: PropType<string>;
475
+ export declare const AGLink: DefineComponent< {}, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
476
+ [key: string]: any;
477
+ }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {}>>, {}, {}>;
478
+
479
+ export declare const AGLoadingModal: DefineComponent< {
480
+ message: {
481
+ type: PropType<string | null>;
344
482
  validator?(value: unknown): boolean;
345
483
  } & {
346
- default: string | (() => string) | null;
484
+ default: string | (() => string | null) | null;
347
485
  };
348
- langKey: {
486
+ }, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
487
+ [key: string]: any;
488
+ }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
489
+ message: {
349
490
  type: PropType<string | null>;
350
491
  validator?(value: unknown): boolean;
351
492
  } & {
352
493
  default: string | (() => string | null) | null;
353
494
  };
354
- text: {
495
+ }>>, {
496
+ message: string | null;
497
+ }, {}>;
498
+
499
+ export declare const AGMarkdown: DefineComponent< {
500
+ as: {
355
501
  type: PropType<string | null>;
356
502
  validator?(value: unknown): boolean;
357
503
  } & {
@@ -363,20 +509,38 @@ validator?(value: unknown): boolean;
363
509
  } & {
364
510
  default: boolean | (() => boolean) | null;
365
511
  };
366
- raw: {
367
- type: PropType<boolean>;
512
+ langKey: {
513
+ type: PropType<string | null>;
368
514
  validator?(value: unknown): boolean;
369
515
  } & {
370
- default: boolean | (() => boolean) | null;
516
+ default: string | (() => string | null) | null;
517
+ };
518
+ langParams: {
519
+ type: PropType<Record<string, unknown> | null>;
520
+ validator?(value: unknown): boolean;
521
+ } & {
522
+ default: Record<string, unknown> | (() => Record<string, unknown> | null) | null;
523
+ };
524
+ text: {
525
+ type: PropType<string | null>;
526
+ validator?(value: unknown): boolean;
527
+ } & {
528
+ default: string | (() => string | null) | null;
371
529
  };
372
530
  }, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
373
531
  [key: string]: any;
374
532
  }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
375
533
  as: {
376
- type: PropType<string>;
534
+ type: PropType<string | null>;
377
535
  validator?(value: unknown): boolean;
378
536
  } & {
379
- default: string | (() => string) | null;
537
+ default: string | (() => string | null) | null;
538
+ };
539
+ inline: {
540
+ type: PropType<boolean>;
541
+ validator?(value: unknown): boolean;
542
+ } & {
543
+ default: boolean | (() => boolean) | null;
380
544
  };
381
545
  langKey: {
382
546
  type: PropType<string | null>;
@@ -384,36 +548,46 @@ validator?(value: unknown): boolean;
384
548
  } & {
385
549
  default: string | (() => string | null) | null;
386
550
  };
551
+ langParams: {
552
+ type: PropType<Record<string, unknown> | null>;
553
+ validator?(value: unknown): boolean;
554
+ } & {
555
+ default: Record<string, unknown> | (() => Record<string, unknown> | null) | null;
556
+ };
387
557
  text: {
388
558
  type: PropType<string | null>;
389
559
  validator?(value: unknown): boolean;
390
560
  } & {
391
561
  default: string | (() => string | null) | null;
392
562
  };
393
- inline: {
563
+ }>>, {
564
+ as: string | null;
565
+ inline: boolean;
566
+ langKey: string | null;
567
+ langParams: Record<string, unknown> | null;
568
+ text: string | null;
569
+ }, {}>;
570
+
571
+ export declare const AGModal: DefineComponent< {
572
+ cancellable: {
394
573
  type: PropType<boolean>;
395
574
  validator?(value: unknown): boolean;
396
575
  } & {
397
576
  default: boolean | (() => boolean) | null;
398
577
  };
399
- raw: {
578
+ }, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
579
+ [key: string]: any;
580
+ }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
581
+ cancellable: {
400
582
  type: PropType<boolean>;
401
583
  validator?(value: unknown): boolean;
402
584
  } & {
403
585
  default: boolean | (() => boolean) | null;
404
586
  };
405
587
  }>>, {
406
- as: string;
407
- langKey: string | null;
408
- text: string | null;
409
- inline: boolean;
410
- raw: boolean;
588
+ cancellable: boolean;
411
589
  }, {}>;
412
590
 
413
- export declare const AGModal: DefineComponent< {}, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
414
- [key: string]: any;
415
- }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {}>>, {}, {}>;
416
-
417
591
  export declare const AGModalContext: DefineComponent< {
418
592
  modal: {
419
593
  type: PropType<Modal<unknown>>;
@@ -444,9 +618,72 @@ required: true;
444
618
  };
445
619
  }>>, {}, {}>;
446
620
 
621
+ export declare const AGModalTitle: DefineComponent< {}, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
622
+ [key: string]: any;
623
+ }>, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {}>>, {}, {}>;
624
+
625
+ export declare const AGSnackbar: DefineComponent< {
626
+ id: {
627
+ type: PropType<string>;
628
+ validator?(value: unknown): boolean;
629
+ } & {
630
+ required: true;
631
+ };
632
+ message: {
633
+ type: PropType<string>;
634
+ validator?(value: unknown): boolean;
635
+ } & {
636
+ required: true;
637
+ };
638
+ actions: {
639
+ type: PropType<SnackbarAction[]>;
640
+ validator?(value: unknown): boolean;
641
+ } & {
642
+ default: SnackbarAction[] | (() => SnackbarAction[]) | null;
643
+ };
644
+ color: {
645
+ type: PropType<"secondary" | "danger">;
646
+ validator?(value: unknown): boolean;
647
+ } & {
648
+ default: "secondary" | "danger" | (() => "secondary" | "danger") | null;
649
+ };
650
+ }, (_ctx: any, _cache: any) => VNode<RendererNode, RendererElement, {
651
+ [key: string]: any;
652
+ }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
653
+ id: {
654
+ type: PropType<string>;
655
+ validator?(value: unknown): boolean;
656
+ } & {
657
+ required: true;
658
+ };
659
+ message: {
660
+ type: PropType<string>;
661
+ validator?(value: unknown): boolean;
662
+ } & {
663
+ required: true;
664
+ };
665
+ actions: {
666
+ type: PropType<SnackbarAction[]>;
667
+ validator?(value: unknown): boolean;
668
+ } & {
669
+ default: SnackbarAction[] | (() => SnackbarAction[]) | null;
670
+ };
671
+ color: {
672
+ type: PropType<"secondary" | "danger">;
673
+ validator?(value: unknown): boolean;
674
+ } & {
675
+ default: "secondary" | "danger" | (() => "secondary" | "danger") | null;
676
+ };
677
+ }>>, {
678
+ actions: SnackbarAction[];
679
+ color: "secondary" | "danger";
680
+ }, {}>;
681
+
447
682
  export declare const App: Facade<AppService, Constructor<AppService>>;
448
683
 
449
- export declare class AppService extends _default {
684
+ export declare class AppService extends _default_2 {
685
+ plugin<T extends Plugin_2 = Plugin_2>(name: string): T | null;
686
+ protected boot(): Promise<void>;
450
687
  }
451
688
 
452
689
  export declare function arrayProp<T>(defaultValue?: () => T[]): OptionalProp<T[]>;
@@ -456,27 +693,85 @@ declare type BaseProp<T> = {
456
693
  validator?(value: unknown): boolean;
457
694
  };
458
695
 
696
+ export declare function booleanInput(defaultValue?: boolean): FormFieldDefinition<typeof FormFieldTypes.Boolean>;
697
+
459
698
  export declare function booleanProp(defaultValue?: boolean): OptionalProp<boolean>;
460
699
 
461
700
  export declare function bootServices(app: App_2, services: Record<string, Service>): Promise<void>;
462
701
 
463
702
  export declare function bootstrapApplication(rootComponent: Component, options?: AerogelOptions): Promise<void>;
464
703
 
704
+ export declare type Color = (typeof Colors)[keyof typeof Colors];
705
+
706
+ export declare const Colors: {
707
+ readonly Primary: "primary";
708
+ readonly Secondary: "secondary";
709
+ readonly Danger: "danger";
710
+ readonly Clear: "clear";
711
+ };
712
+
713
+ export declare type ComponentProps = Record<string, unknown>;
714
+
465
715
  export declare function componentRef<T>(): Ref<UnwrapNestedRefs<T> | undefined>;
466
716
 
467
717
  export declare type ComputedStateDefinition<TState extends ServiceState, TComputedState extends ServiceState> = {
468
718
  [K in keyof TComputedState]: (state: TState) => TComputedState[K];
469
- };
719
+ } & ThisType<{
720
+ readonly [K in keyof TComputedState]: TComputedState[K];
721
+ }>;
470
722
 
471
723
  declare const _default: Constructor< {
472
- environment: "production" | "development" | "testing";
724
+ logs: ErrorReportLog[];
725
+ startupErrors: ErrorReport[];
473
726
  }> & Constructor< {
474
- isDevelopment: boolean;
475
- }> & Constructor<Service<DefaultServiceState, {}>> & Service;
727
+ hasErrors: boolean;
728
+ hasNewErrors: boolean;
729
+ hasStartupErrors: boolean;
730
+ }> & Constructor<Service< {
731
+ logs: ErrorReportLog[];
732
+ startupErrors: ErrorReport[];
733
+ }, {
734
+ hasErrors: boolean;
735
+ hasNewErrors: boolean;
736
+ hasStartupErrors: boolean;
737
+ }, Partial<{
738
+ logs: ErrorReportLog[];
739
+ startupErrors: ErrorReport[];
740
+ }>>>;
476
741
 
477
742
  declare const _default_2: Constructor< {
743
+ plugins: Record<string, Plugin_2>;
744
+ environment: "production" | "development" | "testing";
745
+ sourceUrl: string | undefined;
746
+ isMounted: boolean;
747
+ }> & Constructor< {
748
+ development: boolean;
749
+ testing: boolean;
750
+ }> & Constructor<Service< {
751
+ plugins: Record<string, Plugin_2>;
752
+ environment: "production" | "development" | "testing";
753
+ sourceUrl: string | undefined;
754
+ isMounted: boolean;
755
+ }, {
756
+ development: boolean;
757
+ testing: boolean;
758
+ }, Partial<{
759
+ plugins: Record<string, Plugin_2>;
760
+ environment: "production" | "development" | "testing";
761
+ sourceUrl: string | undefined;
762
+ isMounted: boolean;
763
+ }>>>;
764
+
765
+ declare const _default_3: Constructor< {
478
766
  modals: Modal<unknown>[];
479
- }> & Constructor< {}> & Constructor<Service<DefaultServiceState, {}>> & Service;
767
+ snackbars: Snackbar[];
768
+ }> & Constructor< {}> & Constructor<Service< {
769
+ modals: Modal<unknown>[];
770
+ snackbars: Snackbar[];
771
+ }, {}, Partial<{
772
+ modals: Modal<unknown>[];
773
+ snackbars: Snackbar[];
774
+ }>>>;
480
775
 
481
776
  export declare type DefaultServices = typeof defaultServices;
482
777
 
@@ -485,19 +780,68 @@ declare const defaultServices: {
485
780
  $events: Facade<EventsService, Constructor<EventsService>>;
486
781
  };
487
782
 
488
- export declare type DefaultServiceState = {};
783
+ export declare type DefaultServiceState = any;
489
784
 
490
785
  export declare function defineDirective(directive: Directive): Directive;
491
786
 
492
787
  export declare function definePlugin<T extends Plugin_2>(plugin: T): T;
493
788
 
494
789
  export declare function defineServiceState<State extends ServiceState = ServiceState, ComputedState extends ServiceState = {}>(options: {
790
+ name: string;
495
791
  initialState: State;
792
+ persist?: (keyof State)[];
496
793
  computed?: ComputedStateDefinition<State, ComputedState>;
497
- }): Constructor<State> & Constructor<ComputedState> & ServiceConstructor;
794
+ serialize?: (state: Partial<State>) => Partial<State>;
795
+ }): Constructor<State> & Constructor<ComputedState> & Constructor<Service<State, ComputedState, Partial<State>>>;
498
796
 
499
797
  export declare function enumProp<Enum extends Record<string, unknown>>(enumeration: Enum, defaultValue?: Enum[keyof Enum]): OptionalProp<Enum[keyof Enum]>;
500
798
 
799
+ export declare type ErrorHandler = (error: ErrorSource) => boolean;
800
+
801
+ export declare interface ErrorReport {
802
+ title: string;
803
+ description?: string;
804
+ details?: string;
805
+ error?: Error | JSError | unknown;
806
+ }
807
+
808
+ export declare interface ErrorReportLog {
809
+ report: ErrorReport;
810
+ seen: boolean;
811
+ date: Date;
812
+ }
813
+
814
+ export declare const errorReportModalProps: {
815
+ reports: {
816
+ type: PropType<ErrorReport[]>;
817
+ validator?(value: unknown): boolean;
818
+ } & {
819
+ required: true;
820
+ };
821
+ };
822
+
823
+ export declare const Errors: Facade<ErrorsService, Constructor<ErrorsService>>;
824
+
825
+ export declare type ErrorSource = string | Error | JSError | unknown;
826
+
827
+ declare class ErrorsService extends _default {
828
+ forceReporting: boolean;
829
+ private enabled;
830
+ enable(): void;
831
+ disable(): void;
832
+ inspect(error: ErrorSource | ErrorReport[]): Promise<void>;
833
+ report(error: ErrorSource, message?: string): Promise<void>;
834
+ see(report: ErrorReport): void;
835
+ seeAll(): void;
836
+ getErrorMessage(error: ErrorSource): string;
837
+ private logError;
838
+ private createErrorReport;
839
+ private createStartupErrorReport;
840
+ private createErrorReportFromError;
841
+ }
842
+
843
+ export declare type ErrorsServices = typeof services;
844
+
501
845
  declare type EventListener_2<T = unknown> = (payload: T) => unknown;
502
846
  export { EventListener_2 as EventListener }
503
847
 
@@ -541,18 +885,22 @@ declare class Form<Fields extends FormFieldDefinitions = FormFieldDefinitions> e
541
885
  setFieldValue<T extends keyof Fields>(field: T, value: FormData_2<Fields>[T]): void;
542
886
  getFieldValue<T extends keyof Fields>(field: T): GetFormFieldValue<Fields[T]['type']>;
543
887
  validate(): boolean;
544
- reset(): void;
888
+ reset(options?: {
889
+ keepData?: boolean;
890
+ keepErrors?: boolean;
891
+ }): void;
545
892
  submit(): boolean;
546
893
  protected __get(property: string): unknown;
547
894
  protected __set(property: string, value: unknown): void;
548
895
  private getFieldErrors;
549
896
  private getInitialData;
550
897
  private getInitialErrors;
898
+ private resetData;
551
899
  private resetErrors;
552
900
  }
553
901
 
554
902
  declare type FormData_2<T> = {
555
- [k in keyof T]: T[k] extends FormFieldDefinition<infer TType, infer TRules> ? TRules extends 'required' ? GetFormFieldValue<TType> : GetFormFieldValue<TType> | null : never;
903
+ -readonly [k in keyof T]: T[k] extends FormFieldDefinition<infer TType, infer TRules> ? TRules extends 'required' ? GetFormFieldValue<TType> : GetFormFieldValue<TType> | null : never;
556
904
  };
557
905
  export { FormData_2 as FormData }
558
906
 
@@ -573,15 +921,24 @@ export declare type FormFieldType = ObjectValues<typeof FormFieldTypes>;
573
921
  export declare const FormFieldTypes: {
574
922
  readonly String: "string";
575
923
  readonly Number: "number";
924
+ readonly Boolean: "boolean";
576
925
  };
577
926
 
578
- export declare type GetFormFieldValue<TType> = TType extends typeof FormFieldTypes.String ? string : TType extends typeof FormFieldTypes.Number ? number : never;
927
+ export declare type GetFormFieldValue<TType> = TType extends typeof FormFieldTypes.String ? string : TType extends typeof FormFieldTypes.Number ? number : TType extends typeof FormFieldTypes.Boolean ? boolean : never;
928
+
929
+ export declare interface IAGErrorReportModalButtonsDefaultSlotProps {
930
+ id: string;
931
+ description: string;
932
+ iconComponent: Component;
933
+ url?: string;
934
+ handler?(): void;
935
+ }
579
936
 
580
937
  export declare interface IAGHeadlessInput {
581
938
  id: string;
582
- value: ComputedRef<string | number | null>;
939
+ value: ComputedRef<string | number | boolean | null>;
583
940
  errors: DeepReadonly<Ref<string[] | null>>;
584
- update(value: string | number | null): void;
941
+ update(value: string | number | boolean | null): void;
585
942
  }
586
943
 
587
944
  export declare interface IAGHeadlessModal extends IAGModal {
@@ -592,12 +949,23 @@ export declare interface IAGModal {
592
949
  close(): Promise<void>;
593
950
  }
594
951
 
952
+ export declare interface IAGModalContext {
953
+ modal: Ref<Modal>;
954
+ childIndex: Ref<number>;
955
+ }
956
+
957
+ export declare interface IAGModalDefaultSlotProps {
958
+ close(result?: unknown): Promise<void>;
959
+ }
960
+
595
961
  export declare function injectOrFail<T>(key: InjectionKey<T> | string, errorMessage?: string): T;
596
962
 
597
963
  export declare function injectReactive<T extends object>(key: InjectionKey<T> | string): UnwrapNestedRefs<T> | undefined;
598
964
 
599
965
  export declare function injectReactiveOrFail<T extends object>(key: InjectionKey<T> | string, errorMessage?: string): UnwrapNestedRefs<T>;
600
966
 
967
+ export declare function installPlugins(plugins: Plugin_2[], ...args: GetClosureArgs<Plugin_2['install']>): Promise<void>;
968
+
601
969
  export declare const Lang: Facade<LangService, Constructor<LangService>>;
602
970
 
603
971
  export declare interface LangProvider {
@@ -613,7 +981,7 @@ declare class LangService extends Service {
613
981
  translateWithDefault(key: string, parameters: Record<string, unknown>, defaultMessage: string): string;
614
982
  }
615
983
 
616
- export declare type LangServices = typeof services;
984
+ export declare type LangServices = typeof services_2;
617
985
 
618
986
  export declare function mixedProp<T>(type: PropType<T>): OptionalProp<T | null>;
619
987
 
@@ -649,12 +1017,15 @@ declare type OptionalProp<T> = BaseProp<T> & {
649
1017
  };
650
1018
 
651
1019
  declare interface Plugin_2 {
1020
+ name?: string;
652
1021
  install(app: App_2, options: AerogelOptions): void | Promise<void>;
653
1022
  }
654
1023
  export { Plugin_2 as Plugin }
655
1024
 
656
1025
  export declare function requiredArrayProp<T>(): RequiredProp<T[]>;
657
1026
 
1027
+ export declare function requiredBooleanInput(defaultValue?: boolean): FormFieldDefinition<typeof FormFieldTypes.Boolean, 'required'>;
1028
+
658
1029
  export declare function requiredEnumProp<Enum extends Record<string, unknown>>(enumeration: Enum): RequiredProp<Enum[keyof Enum]>;
659
1030
 
660
1031
  export declare function requiredMixedProp<T>(type: PropType<T>): RequiredProp<T>;
@@ -673,25 +1044,31 @@ export declare function requiredStringInput(defaultValue?: string): FormFieldDef
673
1044
 
674
1045
  export declare function requiredStringProp(): RequiredProp<string>;
675
1046
 
676
- export declare class Service<State extends ServiceState = DefaultServiceState, ComputedState extends ServiceState = {}> extends MagicObject {
677
- protected _namespace: string;
1047
+ export declare class Service<State extends ServiceState = DefaultServiceState, ComputedState extends ServiceState = {}, ServiceStorage extends Partial<State> = Partial<State>> extends MagicObject {
1048
+ static persist: string[];
1049
+ protected _name: string;
678
1050
  private _booted;
679
- private _state;
680
- private _computedState;
1051
+ private _computedStateKeys;
1052
+ private _store?;
681
1053
  constructor();
682
1054
  get booted(): PromisedValue<void>;
683
- launch(namespace?: string): Promise<void>;
1055
+ launch(): Promise<void>;
1056
+ hasState<P extends keyof State>(property: P): boolean;
1057
+ getState(): State;
1058
+ getState<P extends keyof State>(property: P): State[P];
1059
+ setState<P extends keyof State>(property: P, value: State[P]): void;
1060
+ setState(state: Partial<State>): void;
684
1061
  protected __get(property: string): unknown;
685
1062
  protected __set(property: string, value: unknown): void;
686
- protected hasState<P extends keyof State>(property: P): boolean;
687
- protected hasComputedState<P extends keyof State>(property: P): boolean;
688
- protected getState(): State;
689
- protected getState<P extends keyof State>(property: P): State[P];
690
- protected getComputedState<P extends keyof ComputedState>(property: P): ComputedState[P];
691
- protected setState(state: Partial<State>): void;
1063
+ protected onStateUpdated(state: Partial<State>): void;
1064
+ protected usesStore(): boolean;
1065
+ protected getName(): string | null;
692
1066
  protected getInitialState(): State;
693
1067
  protected getComputedStateDefinition(): ComputedStateDefinition<State, ComputedState>;
1068
+ protected serializePersistedState(state: Partial<State>): Partial<State>;
1069
+ protected frameworkBoot(): Promise<void>;
694
1070
  protected boot(): Promise<void>;
1071
+ protected restorePersistedState(): void;
695
1072
  }
696
1073
 
697
1074
  export declare type ServiceConstructor<T extends Service = Service> = Constructor<T> & typeof Service;
@@ -700,15 +1077,73 @@ export declare interface Services extends DefaultServices {
700
1077
  }
701
1078
 
702
1079
  declare const services: {
703
- $lang: Facade<LangService, Constructor<LangService>>;
1080
+ $errors: Facade<ErrorsService, Constructor<ErrorsService>>;
704
1081
  };
705
1082
 
706
1083
  declare const services_2: {
1084
+ $lang: Facade<LangService, Constructor<LangService>>;
1085
+ };
1086
+
1087
+ declare const services_3: {
707
1088
  $ui: Facade<UIService, Constructor<UIService>>;
708
1089
  };
709
1090
 
710
1091
  export declare type ServiceState = Record<string, any>;
711
1092
 
1093
+ declare interface ShowSnackbarOptions {
1094
+ component?: Component;
1095
+ color?: SnackbarColor;
1096
+ actions?: SnackbarAction[];
1097
+ }
1098
+
1099
+ declare interface Snackbar {
1100
+ id: string;
1101
+ component: Component;
1102
+ properties: Record<string, unknown>;
1103
+ }
1104
+
1105
+ export declare interface SnackbarAction {
1106
+ text: string;
1107
+ dismiss?: boolean;
1108
+ handler?(): unknown;
1109
+ }
1110
+
1111
+ export declare type SnackbarColor = (typeof SnackbarColors)[keyof typeof SnackbarColors];
1112
+
1113
+ export declare const SnackbarColors: Omit<{
1114
+ readonly Primary: "primary";
1115
+ readonly Secondary: "secondary";
1116
+ readonly Danger: "danger";
1117
+ readonly Clear: "clear";
1118
+ }, "Primary" | "Clear">;
1119
+
1120
+ export declare const snackbarProps: {
1121
+ id: {
1122
+ type: PropType<string>;
1123
+ validator?(value: unknown): boolean;
1124
+ } & {
1125
+ required: true;
1126
+ };
1127
+ message: {
1128
+ type: PropType<string>;
1129
+ validator?(value: unknown): boolean;
1130
+ } & {
1131
+ required: true;
1132
+ };
1133
+ actions: {
1134
+ type: PropType<SnackbarAction[]>;
1135
+ validator?(value: unknown): boolean;
1136
+ } & {
1137
+ default: SnackbarAction[] | (() => SnackbarAction[]) | null;
1138
+ };
1139
+ color: {
1140
+ type: PropType<"secondary" | "danger">;
1141
+ validator?(value: unknown): boolean;
1142
+ } & {
1143
+ default: "secondary" | "danger" | (() => "secondary" | "danger") | null;
1144
+ };
1145
+ };
1146
+
712
1147
  export declare function stringInput(defaultValue?: string): FormFieldDefinition<typeof FormFieldTypes.String>;
713
1148
 
714
1149
  export declare function stringProp(): OptionalProp<string | null>;
@@ -729,27 +1164,36 @@ export declare type UIComponent = ObjectValues<typeof UIComponents>;
729
1164
  export declare const UIComponents: {
730
1165
  readonly AlertModal: "alert-modal";
731
1166
  readonly ConfirmModal: "confirm-modal";
1167
+ readonly ErrorReportModal: "error-report-modal";
1168
+ readonly LoadingModal: "loading-modal";
1169
+ readonly Snackbar: "snackbar";
732
1170
  };
733
1171
 
734
- declare class UIService extends _default_2 {
1172
+ declare class UIService extends _default_3 {
735
1173
  private modalCallbacks;
736
1174
  private components;
1175
+ requireComponent(name: UIComponent): Component;
737
1176
  alert(message: string): void;
738
1177
  alert(title: string, message: string): void;
739
1178
  confirm(message: string): Promise<boolean>;
740
1179
  confirm(title: string, message: string): Promise<boolean>;
1180
+ loading<T>(operation: Promise<T>): Promise<T>;
1181
+ loading<T>(message: string, operation: Promise<T>): Promise<T>;
1182
+ showSnackbar(message: string, options?: ShowSnackbarOptions): void;
1183
+ hideSnackbar(id: string): void;
741
1184
  registerComponent(name: UIComponent, component: Component): void;
742
1185
  openModal<TModalComponent extends ModalComponent>(component: TModalComponent, properties?: ModalProperties<TModalComponent>): Promise<Modal<ModalResult<TModalComponent>>>;
743
1186
  closeModal(id: string, result?: unknown): Promise<void>;
744
1187
  protected boot(): Promise<void>;
745
- private requireComponent;
746
1188
  private watchModalEvents;
747
1189
  }
748
1190
 
749
- export declare type UIServices = typeof services_2;
1191
+ export declare type UIServices = typeof services_3;
750
1192
 
751
1193
  export declare type UnknownEvent<T> = T extends keyof EventsPayload ? never : T;
752
1194
 
1195
+ export declare function useErrorReportModalProps(): typeof errorReportModalProps;
1196
+
753
1197
  export declare function useEvent<Event extends EventWithoutPayload>(event: Event, listener: () => unknown): void;
754
1198
 
755
1199
  export declare function useEvent<Event extends EventWithPayload>(event: Event, listener: EventListener_2<EventsPayload[Event]>): void;
@@ -758,14 +1202,23 @@ export declare function useEvent<Event extends string>(event: UnknownEvent<Event
758
1202
 
759
1203
  export declare function useForm<const T extends FormFieldDefinitions>(fields: T): Form<T> & FormData_2<T>;
760
1204
 
1205
+ export declare function useInputAttrs(): [ComputedRef<{}>, ComputedRef<unknown>];
1206
+
1207
+ export declare function useSnackbarProps(): typeof snackbarProps;
1208
+
761
1209
  export { }
762
1210
 
763
- declare global {
764
- export const __AG_BASE_PATH: string | undefined;
765
- export const __AG_ENV: 'production' | 'development' | 'testing';
766
- }
1211
+ interface AerogelOptions {
1212
+ directives?: Record<string, Directive>;
1213
+ }
1214
+
1215
+ interface AerogelOptions {
1216
+ handleError?(error: ErrorSource): boolean;
1217
+ }
767
1218
 
768
- interface Services extends LangServices {}
1219
+ export interface Services extends ErrorsServices {}
1220
+
1221
+ export interface Services extends LangServices {}
769
1222
 
770
1223
  declare module '@vue/runtime-core' {
771
1224
  interface ComponentCustomProperties {
@@ -773,6 +1226,10 @@ declare module '@vue/runtime-core' {
773
1226
  }
774
1227
  }
775
1228
 
1229
+ interface AerogelOptions {
1230
+ services?: Record<string, Service>;
1231
+ }
1232
+
776
1233
  declare module '@vue/runtime-core' {
777
1234
  interface ComponentCustomProperties extends Services {}
778
1235
  }
@@ -789,4 +1246,4 @@ declare module '@vue/runtime-core' {
789
1246
  components?: Partial<Record<UIComponent, Component>>;
790
1247
  }
791
1248
 
792
- interface Services extends UIServices {}
1249
+ export interface Services extends UIServices {}