@magicx-eng/ai-autocomplete-angular 0.1.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/esm2020/lib/ai-autocomplete/ai-autocomplete.component.mjs +75 -29
- package/esm2020/lib/ai-autocomplete-dropdown/ai-autocomplete-dropdown.component.mjs +46 -12
- package/esm2020/lib/controller/ai-autocomplete.controller.mjs +89 -7
- package/esm2020/lib/input/ai-autocomplete-input.directive.mjs +85 -6
- package/esm2020/lib/internal/editor-host/editor-host.directive.mjs +4 -2
- package/esm2020/lib/internal/layout/cluster.component.mjs +45 -0
- package/esm2020/lib/internal/layout/grid.component.mjs +95 -0
- package/esm2020/lib/internal/layout/stack.component.mjs +29 -0
- package/esm2020/lib/internal/pill-list/pill-list.component.mjs +8 -8
- package/esm2020/lib/internal/submit-button/submit-button.component.mjs +29 -0
- package/esm2020/lib/internal/suggestion-grid/suggestion-grid.component.mjs +10 -62
- package/esm2020/lib/internal/suggestion-item/suggestion-item.component.mjs +3 -3
- package/esm2020/lib/shared/types.mjs +1 -1
- package/fesm2015/magicx-eng-ai-autocomplete-angular.mjs +503 -125
- package/fesm2015/magicx-eng-ai-autocomplete-angular.mjs.map +1 -1
- package/fesm2020/magicx-eng-ai-autocomplete-angular.mjs +495 -120
- package/fesm2020/magicx-eng-ai-autocomplete-angular.mjs.map +1 -1
- package/lib/ai-autocomplete/ai-autocomplete.component.d.ts +11 -3
- package/lib/ai-autocomplete/ai-autocomplete.component.d.ts.map +1 -1
- package/lib/ai-autocomplete-dropdown/ai-autocomplete-dropdown.component.d.ts +29 -12
- package/lib/ai-autocomplete-dropdown/ai-autocomplete-dropdown.component.d.ts.map +1 -1
- package/lib/controller/ai-autocomplete.controller.d.ts.map +1 -1
- package/lib/input/ai-autocomplete-input.directive.d.ts +15 -0
- package/lib/input/ai-autocomplete-input.directive.d.ts.map +1 -1
- package/lib/internal/editor-host/editor-host.directive.d.ts.map +1 -1
- package/lib/internal/layout/cluster.component.d.ts +23 -0
- package/lib/internal/layout/cluster.component.d.ts.map +1 -0
- package/lib/internal/layout/grid.component.d.ts +43 -0
- package/lib/internal/layout/grid.component.d.ts.map +1 -0
- package/lib/internal/layout/stack.component.d.ts +16 -0
- package/lib/internal/layout/stack.component.d.ts.map +1 -0
- package/lib/internal/pill-list/pill-list.component.d.ts +2 -2
- package/lib/internal/pill-list/pill-list.component.d.ts.map +1 -1
- package/lib/internal/submit-button/submit-button.component.d.ts +17 -0
- package/lib/internal/submit-button/submit-button.component.d.ts.map +1 -0
- package/lib/internal/suggestion-grid/suggestion-grid.component.d.ts +7 -20
- package/lib/internal/suggestion-grid/suggestion-grid.component.d.ts.map +1 -1
- package/lib/shared/types.d.ts +2 -0
- package/lib/shared/types.d.ts.map +1 -1
- package/package.json +5 -5
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type AfterViewInit, ElementRef, EventEmitter, type OnChanges, type OnDestroy, type OnInit, type SimpleChanges, type TemplateRef } from "@angular/core";
|
|
1
|
+
import { type AfterViewInit, type ElementRef, EventEmitter, type OnChanges, type OnDestroy, type OnInit, type SimpleChanges, type TemplateRef } from "@angular/core";
|
|
2
2
|
import { type ControlValueAccessor } from "@angular/forms";
|
|
3
3
|
import { type APIConfig, type AppearanceMode, type AutocompleteResult, type CompletedParamState, type OptionOverrides } from "@magicx-eng/ai-autocomplete-vanilla";
|
|
4
4
|
import { AIAutocompleteController } from "../controller/ai-autocomplete.controller";
|
|
@@ -44,18 +44,26 @@ export declare class AIAutocompleteComponent implements OnInit, AfterViewInit, O
|
|
|
44
44
|
readonly completedParamsChange: EventEmitter<CompletedParamState[]>;
|
|
45
45
|
readonly focused: EventEmitter<void>;
|
|
46
46
|
readonly blurred: EventEmitter<void>;
|
|
47
|
+
containerRef: ElementRef<HTMLDivElement>;
|
|
47
48
|
editorRef?: ElementRef<HTMLDivElement>;
|
|
48
49
|
pillContainerRef?: ElementRef<HTMLSpanElement>;
|
|
49
50
|
controller: AIAutocompleteController;
|
|
51
|
+
/**
|
|
52
|
+
* Concrete light/dark value bound to `[attr.data-mode]`. Seeded in ngOnInit
|
|
53
|
+
* so the attribute is present during SSR (where ModeController, gated behind
|
|
54
|
+
* isPlatformBrowser in ngAfterViewInit, never runs). On the browser the
|
|
55
|
+
* ModeController's resolve callback keeps this in sync — so its runtime
|
|
56
|
+
* prefers-color-scheme updates and this binding always agree (no clobber).
|
|
57
|
+
*/
|
|
50
58
|
resolvedMode: "light" | "dark";
|
|
51
59
|
private modeController?;
|
|
52
60
|
private resizeObserver?;
|
|
53
61
|
private onChangeFn;
|
|
54
62
|
private onTouchedFn;
|
|
63
|
+
private pendingWriteValue;
|
|
55
64
|
private readonly platformId;
|
|
56
|
-
private readonly el;
|
|
57
|
-
private readonly cdr;
|
|
58
65
|
private readonly zone;
|
|
66
|
+
private readonly cdr;
|
|
59
67
|
ngOnInit(): void;
|
|
60
68
|
ngAfterViewInit(): void;
|
|
61
69
|
ngOnChanges(changes: SimpleChanges): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-autocomplete.component.d.ts","sourceRoot":"","sources":["../../../src/lib/ai-autocomplete/ai-autocomplete.component.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,aAAa,EAIlB,UAAU,
|
|
1
|
+
{"version":3,"file":"ai-autocomplete.component.d.ts","sourceRoot":"","sources":["../../../src/lib/ai-autocomplete/ai-autocomplete.component.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,aAAa,EAIlB,KAAK,UAAU,EACf,YAAY,EAKZ,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,MAAM,EAGX,KAAK,aAAa,EAClB,KAAK,WAAW,EAGjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,oBAAoB,EAAqB,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EACL,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,kBAAkB,EAEvB,KAAK,mBAAmB,EAGxB,KAAK,eAAe,EAErB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;;AAKpF;;;;;;;GAOG;AACH,qBAuBa,uBACX,YAAW,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,oBAAoB;IAInE,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,iBAAiB,UAAS;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,sDAAsD;IAC7C,aAAa,EAAE,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAY;IACpE,wEAAwE;IAC/D,IAAI,EAAE,cAAc,CAAU;IAC9B,eAAe,EAAE,OAAO,GAAG,OAAO,CAAW;IAC7C,UAAU,UAAQ;IAClB,eAAe,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC/C,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAC1C,gDAAgD;IACvC,SAAS,UAAQ;IAC1B,kCAAkC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,wCAAwC;IAC/B,eAAe,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACjD;;;;OAIG;IACM,YAAY,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IAIpD,8CAA8C;IACpC,QAAQ,CAAC,SAAS,mCAA0C;IAC5D,QAAQ,CAAC,OAAO,sBAA6B;IAC7C,QAAQ,CAAC,WAAW,uBAA8B;IAClD,QAAQ,CAAC,qBAAqB,sCAA6C;IAC3E,QAAQ,CAAC,OAAO,qBAA4B;IAC5C,QAAQ,CAAC,OAAO,qBAA4B;IAIZ,YAAY,EAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IAC5C,SAAS,CAAC,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;IACnD,gBAAgB,CAAC,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;IAI3E,UAAU,EAAG,wBAAwB,CAAC;IACtC;;;;;;OAMG;IACH,YAAY,EAAE,OAAO,GAAG,MAAM,CAAU;IAIxC,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,UAAU,CAAiC;IACnD,OAAO,CAAC,WAAW,CAAoB;IAOvC,OAAO,CAAC,iBAAiB,CAAqB;IAG9C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuB;IAClD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAkB;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA6B;IAEjD,QAAQ,IAAI,IAAI;IA2ChB,eAAe,IAAI,IAAI;IAgCvB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAwCzC,WAAW,IAAI,IAAI;IAQnB,yCAAyC;IACzC,KAAK,IAAI,IAAI;IAIb,wCAAwC;IACxC,IAAI,IAAI,IAAI;IAIZ,qDAAqD;IACrD,KAAK,IAAI,IAAI;IAIb,oCAAoC;IACpC,OAAO,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI;IASnC;;;;OAIG;IACH,IAAI,iBAAiB,IAAI,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAIvD;IAED,iEAAiE;IACjE,IAAI,oBAAoB,IAAI,WAAW,CAAC,OAAO,CAAC,GAAG,IAAI,CAEtD;IAED,IAAI,eAAe,IAAI,OAAO,CAE7B;IAED,IAAI,iBAAiB,IAAI,OAAO,CAE/B;IAED;;;OAGG;IACH,SAAS,CAAC,KAAK,EAAE;QAAE,QAAQ,EAAE;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;QAAC,eAAe,EAAE;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,GAAG,OAAO;IAIhG,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAOvC,mBAAmB,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAK5C,iBAAiB,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAK1C,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMjC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAatC,gBAAgB,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAInD,iBAAiB,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI;IAIvC,gBAAgB,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAS1C;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAcpB,OAAO,CAAC,0BAA0B;IAalC,OAAO,CAAC,eAAe;yCAxVZ,uBAAuB;2CAAvB,uBAAuB;CA2WnC"}
|
|
@@ -1,6 +1,20 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type OnChanges, type OnInit, type SimpleChanges } from "@angular/core";
|
|
2
|
+
import { type Suggestion, type SuggestionOption } from "@magicx-eng/ai-autocomplete-vanilla";
|
|
3
|
+
import { type Observable } from "rxjs";
|
|
2
4
|
import type { AIAutocompleteController } from "../controller/ai-autocomplete.controller";
|
|
3
5
|
import * as i0 from "@angular/core";
|
|
6
|
+
interface DropdownVm {
|
|
7
|
+
pills: Suggestion[];
|
|
8
|
+
options: SuggestionOption[];
|
|
9
|
+
activeIndex: number;
|
|
10
|
+
isLoading: boolean;
|
|
11
|
+
showsPills: boolean;
|
|
12
|
+
showsOptions: boolean;
|
|
13
|
+
showsFallbackSkeleton: boolean;
|
|
14
|
+
isVisible: boolean;
|
|
15
|
+
footerKey: string;
|
|
16
|
+
footerHint: string;
|
|
17
|
+
}
|
|
4
18
|
/**
|
|
5
19
|
* Tier 2 dropdown component — the Angular equivalent of React's
|
|
6
20
|
* `<AIAutocompleteDropdown />`. Renders the pillbar, options grid, and
|
|
@@ -16,7 +30,7 @@ import * as i0 from "@angular/core";
|
|
|
16
30
|
*
|
|
17
31
|
* @public
|
|
18
32
|
*/
|
|
19
|
-
export declare class AIAutocompleteDropdownComponent {
|
|
33
|
+
export declare class AIAutocompleteDropdownComponent implements OnInit, OnChanges {
|
|
20
34
|
/** The controller that owns the autocomplete state. Required. */
|
|
21
35
|
controller: AIAutocompleteController;
|
|
22
36
|
/** Whether to render the pillbar above the options grid. Default: true. */
|
|
@@ -29,17 +43,19 @@ export declare class AIAutocompleteDropdownComponent {
|
|
|
29
43
|
* View-model derived from the controller's `dropdown$`. Adds three booleans
|
|
30
44
|
* (`showsPills`, `showsOptions`, `showsFallbackSkeleton`, `isVisible`) that
|
|
31
45
|
* keep template-level logic to a property read per §19.6.
|
|
46
|
+
*
|
|
47
|
+
* Initialized once in `ngOnInit` — must NOT be a getter. A getter returns a
|
|
48
|
+
* fresh `Observable` instance on every property read; with OnPush + `async`
|
|
49
|
+
* pipe that means each change-detection cycle unsubscribes/resubscribes,
|
|
50
|
+
* causing the `*ngIf="vm$ | async as vm"` root to briefly resolve `null`
|
|
51
|
+
* and flicker the entire dropdown DOM.
|
|
32
52
|
*/
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
showsOptions: boolean;
|
|
40
|
-
showsFallbackSkeleton: boolean;
|
|
41
|
-
isVisible: boolean;
|
|
42
|
-
}>;
|
|
53
|
+
vm$: Observable<DropdownVm>;
|
|
54
|
+
private readonly showPills$;
|
|
55
|
+
ngOnInit(): void;
|
|
56
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
57
|
+
/** Build the view-model stream from the current controller + showPills$. */
|
|
58
|
+
private initVm;
|
|
43
59
|
trackByWidth: (_: number, w: number) => number;
|
|
44
60
|
onPillClick(index: number): void;
|
|
45
61
|
onSelect(option: SuggestionOption): void;
|
|
@@ -48,4 +64,5 @@ export declare class AIAutocompleteDropdownComponent {
|
|
|
48
64
|
static ɵfac: i0.ɵɵFactoryDeclaration<AIAutocompleteDropdownComponent, never>;
|
|
49
65
|
static ɵcmp: i0.ɵɵComponentDeclaration<AIAutocompleteDropdownComponent, "ai-autocomplete-dropdown", never, { "controller": "controller"; "showPills": "showPills"; "className": "className"; }, {}, never, never, true, never>;
|
|
50
66
|
}
|
|
67
|
+
export {};
|
|
51
68
|
//# sourceMappingURL=ai-autocomplete-dropdown.component.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-autocomplete-dropdown.component.d.ts","sourceRoot":"","sources":["../../../src/lib/ai-autocomplete-dropdown/ai-autocomplete-dropdown.component.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ai-autocomplete-dropdown.component.d.ts","sourceRoot":"","sources":["../../../src/lib/ai-autocomplete-dropdown/ai-autocomplete-dropdown.component.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,MAAM,EACX,KAAK,aAAa,EAEnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,gBAAgB,EACtB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAkC,KAAK,UAAU,EAAE,MAAM,MAAM,CAAC;AAEvE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;;AAMzF,UAAU,UAAU;IAClB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAea,+BAAgC,YAAW,MAAM,EAAE,SAAS;IACvE,iEAAiE;IACxD,UAAU,EAAG,wBAAwB,CAAC;IAC/C,2EAA2E;IAClE,SAAS,UAAQ;IAC1B,uDAAuD;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IAE5B,+EAA+E;IAC/E,QAAQ,CAAC,yBAAyB,WAAmB;IAErD;;;;;;;;;;OAUG;IACH,GAAG,EAAG,UAAU,CAAC,UAAU,CAAC,CAAC;IAM7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsC;IAEjE,QAAQ,IAAI,IAAI;IAMhB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAezC,4EAA4E;IAC5E,OAAO,CAAC,MAAM;IA8Bd,YAAY,MAAO,MAAM,KAAK,MAAM,KAAG,MAAM,CAAM;IAEnD,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIhC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAIxC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIhC,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;yCAhGpB,+BAA+B;2CAA/B,+BAA+B;CAoG3C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-autocomplete.controller.d.ts","sourceRoot":"","sources":["../../../src/lib/controller/ai-autocomplete.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EAGxB,KAAK,OAAO,EACZ,KAAK,UAAU,EACf,KAAK,gBAAgB,EACtB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAwB,KAAK,UAAU,EAAe,MAAM,MAAM,CAAC;AAC1E,OAAO,KAAK,EACV,+BAA+B,EAC/B,6BAA6B,EAC7B,8BAA8B,EAC9B,2BAA2B,EAC5B,MAAM,iBAAiB,CAAC;AAGzB;;;;;;;;;;;;GAYG;AACH,qBAAa,wBAAwB;IACnC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAqB;IAC1C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA6B;IACvD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAa;IAC7C,OAAO,CAAC,WAAW,CAAS;IAM5B,wCAAwC;IACxC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IACnC,uDAAuD;IACvD,QAAQ,CAAC,gBAAgB,EAAE,UAAU,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAC7D,kEAAkE;IAClE,QAAQ,CAAC,gBAAgB,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC;IACpD,qEAAqE;IACrE,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;IAC1C,yEAAyE;IACzE,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAChD,uEAAuE;IACvE,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC;IAChD,8DAA8D;IAC9D,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IAC1C;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IACzC,gDAAgD;IAChD,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IACvC,8CAA8C;IAC9C,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IACzC,wDAAwD;IACxD,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC9C,wDAAwD;IACxD,QAAQ,CAAC,gBAAgB,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IAC9C,iCAAiC;IACjC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC1C,gDAAgD;IAChD,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;IAC/D,+DAA+D;IAC/D,QAAQ,CAAC,cAAc,EAAE,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACnD,2CAA2C;IAC3C,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAIjD;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,6BAA6B,CAAC,CAAC;IAE3D;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC,2BAA2B,CAAC,CAAC;IAE5D;;;OAGG;gBACS,IAAI,GAAE,+BAAoC;
|
|
1
|
+
{"version":3,"file":"ai-autocomplete.controller.d.ts","sourceRoot":"","sources":["../../../src/lib/controller/ai-autocomplete.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,6 +38,9 @@ export declare class AIAutocompleteInputDirective implements OnInit, OnDestroy,
|
|
|
38
38
|
private readonly destroy$;
|
|
39
39
|
private onChangeFn;
|
|
40
40
|
private onTouchedFn;
|
|
41
|
+
private lastInputAt;
|
|
42
|
+
private lastSeenParamId;
|
|
43
|
+
private pendingWriteValue;
|
|
41
44
|
ngOnInit(): void;
|
|
42
45
|
ngOnDestroy(): void;
|
|
43
46
|
/**
|
|
@@ -48,6 +51,18 @@ export declare class AIAutocompleteInputDirective implements OnInit, OnDestroy,
|
|
|
48
51
|
*/
|
|
49
52
|
onInput(event: Event): void;
|
|
50
53
|
onKeyDown(event: KeyboardEvent): void;
|
|
54
|
+
/**
|
|
55
|
+
* Caret moved by something other than typing — arrow keys, Home/End, or a
|
|
56
|
+
* mouse click/drag (keyup + mouseup). Forward the new offset so the core can
|
|
57
|
+
* re-evaluate the caret-at-end dropdown gate (and exit re-edit if the caret
|
|
58
|
+
* left the region). We deliberately do NOT listen for the `select` event:
|
|
59
|
+
* programmatic `setSelectionRange` calls (the text$ writeback, the post-select
|
|
60
|
+
* caret reposition) fire it in jsdom/some browsers, which would re-enter here
|
|
61
|
+
* and clobber `caretOffset`. `keyup`/`mouseup` only fire for real user input.
|
|
62
|
+
* Skipped right after an `input` event, where the caret is already handled by
|
|
63
|
+
* `handleCaretAfterInput` above.
|
|
64
|
+
*/
|
|
65
|
+
onCaretMove(): void;
|
|
51
66
|
onFocus(): void;
|
|
52
67
|
onBlur(): void;
|
|
53
68
|
writeValue(value: string | null): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-autocomplete-input.directive.d.ts","sourceRoot":"","sources":["../../../src/lib/input/ai-autocomplete-input.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,SAAS,EACd,KAAK,MAAM,EAEZ,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,oBAAoB,EAAqB,MAAM,gBAAgB,CAAC;AAE9E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;;AAEzF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,
|
|
1
|
+
{"version":3,"file":"ai-autocomplete-input.directive.d.ts","sourceRoot":"","sources":["../../../src/lib/input/ai-autocomplete-input.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,SAAS,EACd,KAAK,MAAM,EAEZ,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,oBAAoB,EAAqB,MAAM,gBAAgB,CAAC;AAE9E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;;AAEzF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAsBa,4BAA6B,YAAW,MAAM,EAAE,SAAS,EAAE,oBAAoB;IAC1F;;;OAGG;IACgB,UAAU,EAAG,wBAAwB,CAAC;IAEzD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAA0E;IAC7F,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAEhD,OAAO,CAAC,UAAU,CAAiC;IACnD,OAAO,CAAC,WAAW,CAAoB;IAKvC,OAAO,CAAC,WAAW,CAAK;IAGxB,OAAO,CAAC,eAAe,CAAM;IAQ7B,OAAO,CAAC,iBAAiB,CAAqB;IAE9C,QAAQ,IAAI,IAAI;IA+EhB,WAAW,IAAI,IAAI;IAOnB;;;;;OAKG;IACH,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAqC3B,SAAS,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAIrC;;;;;;;;;;OAUG;IACH,WAAW,IAAI,IAAI;IAOnB,OAAO,IAAI,IAAI;IAIf,MAAM,IAAI,IAAI;IAOd,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAetC,gBAAgB,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAInD,iBAAiB,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI;IAIvC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;yCAvN9B,4BAA4B;2CAA5B,4BAA4B;CA0NxC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor-host.directive.d.ts","sourceRoot":"","sources":["../../../../src/lib/internal/editor-host/editor-host.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,SAAS,EACd,KAAK,MAAM,EAEZ,MAAM,eAAe,CAAC;AASvB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;;AAgB5F;;;;;;;;;;;GAWG;AACH,qBAmBa,iCAAkC,YAAW,MAAM,EAAE,SAAS;IACjD,UAAU,EAAG,wBAAwB,CAAC;IACrD,SAAS,UAAQ;IAE1B,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAkD;IACrE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAkB;IACvC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAEhD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,eAAe,CAAM;IAC7B,OAAO,CAAC,aAAa,CAAM;IAC3B,OAAO,CAAC,cAAc,CAAuB;IAE7C,OAAO,CAAC,yBAAyB,CAAC,CAAa;IAC/C,OAAO,CAAC,mBAAmB,CAAC,CAAyB;IAErD,QAAQ,IAAI,IAAI;IA8BhB,WAAW,IAAI,IAAI;IAanB,kBAAkB,IAAI,IAAI;IAI1B,gBAAgB,IAAI,IAAI;IAKxB,OAAO,IAAI,IAAI;IAMf,SAAS,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAIrC,OAAO,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAoBpC,OAAO,IAAI,IAAI;IAIf,MAAM,IAAI,IAAI;IAMd,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,6BAA6B;
|
|
1
|
+
{"version":3,"file":"editor-host.directive.d.ts","sourceRoot":"","sources":["../../../../src/lib/internal/editor-host/editor-host.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,SAAS,EACd,KAAK,MAAM,EAEZ,MAAM,eAAe,CAAC;AASvB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;;AAgB5F;;;;;;;;;;;GAWG;AACH,qBAmBa,iCAAkC,YAAW,MAAM,EAAE,SAAS;IACjD,UAAU,EAAG,wBAAwB,CAAC;IACrD,SAAS,UAAQ;IAE1B,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAkD;IACrE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAkB;IACvC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAEhD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,eAAe,CAAM;IAC7B,OAAO,CAAC,aAAa,CAAM;IAC3B,OAAO,CAAC,cAAc,CAAuB;IAE7C,OAAO,CAAC,yBAAyB,CAAC,CAAa;IAC/C,OAAO,CAAC,mBAAmB,CAAC,CAAyB;IAErD,QAAQ,IAAI,IAAI;IA8BhB,WAAW,IAAI,IAAI;IAanB,kBAAkB,IAAI,IAAI;IAI1B,gBAAgB,IAAI,IAAI;IAKxB,OAAO,IAAI,IAAI;IAMf,SAAS,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAIrC,OAAO,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAoBpC,OAAO,IAAI,IAAI;IAIf,MAAM,IAAI,IAAI;IAMd,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,6BAA6B;IA8BrC,OAAO,CAAC,uBAAuB;IAsB/B,OAAO,CAAC,qBAAqB;yCA3KlB,iCAAiC;2CAAjC,iCAAiC;CA+M7C"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
/**
|
|
3
|
+
* Horizontal layout primitive — children sit in a row and wrap when out of
|
|
4
|
+
* room. Mirrors the React `<Cluster>` component / vanilla `.aia-cluster` CSS
|
|
5
|
+
* primitive. `noWrap` keeps a single row; `inline` makes it inline-level.
|
|
6
|
+
*
|
|
7
|
+
* @internal
|
|
8
|
+
*/
|
|
9
|
+
export declare class ClusterComponent {
|
|
10
|
+
/** Gap between children. Any CSS length. Defaults to the CSS fallback (0.5rem). */
|
|
11
|
+
gap?: string;
|
|
12
|
+
/** Cross-axis alignment. Defaults to `center`. */
|
|
13
|
+
align: "start" | "center" | "end" | "baseline";
|
|
14
|
+
/** Main-axis distribution. Defaults to `start`. */
|
|
15
|
+
justify: "start" | "center" | "end" | "between" | "around";
|
|
16
|
+
/** When true, the cluster does NOT flex-wrap (single-row clusters). */
|
|
17
|
+
noWrap: boolean;
|
|
18
|
+
/** Render inline-level (inline-flex) instead of block. */
|
|
19
|
+
inline: boolean;
|
|
20
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ClusterComponent, never>;
|
|
21
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ClusterComponent, "aia-cluster", never, { "gap": "gap"; "align": "align"; "justify": "justify"; "noWrap": "noWrap"; "inline": "inline"; }, {}, never, ["*"], true, never>;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=cluster.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cluster.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/internal/layout/cluster.component.ts"],"names":[],"mappings":";AAEA;;;;;;GAMG;AACH,qBAgBa,gBAAgB;IAC3B,mFAAmF;IAC1E,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,kDAAkD;IACzC,KAAK,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,UAAU,CAAY;IACnE,mDAAmD;IAC1C,OAAO,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,GAAG,QAAQ,CAAW;IAC9E,uEAAuE;IAC9D,MAAM,UAAS;IACxB,0DAA0D;IACjD,MAAM,UAAS;yCAVb,gBAAgB;2CAAhB,gBAAgB;CAW5B"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { type AfterViewInit, type ElementRef, type OnDestroy } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Intrinsic grid layout primitive — auto-fits as many columns as fit between
|
|
5
|
+
* `min` and `max` wide, wrapping to new rows when there's no more horizontal
|
|
6
|
+
* room. Mirrors the React `<Grid>` component / vanilla `.aia-grid` primitive.
|
|
7
|
+
*
|
|
8
|
+
* Optionally scrolls (`scroll`, capped height) with a bottom fade overlay
|
|
9
|
+
* (`fade`) that appears while there's hidden overflow below. The fade is driven
|
|
10
|
+
* by a ResizeObserver + scroll listener + MutationObserver (for projected
|
|
11
|
+
* content changes) — all run outside Angular's zone so high-frequency layout
|
|
12
|
+
* events don't trip change detection (mirrors the former SuggestionGrid).
|
|
13
|
+
*
|
|
14
|
+
* @internal
|
|
15
|
+
*/
|
|
16
|
+
export declare class GridComponent implements AfterViewInit, OnDestroy {
|
|
17
|
+
/** Minimum cell width. CSS length, e.g. "16rem". Columns auto-fit at runtime. */
|
|
18
|
+
min: string;
|
|
19
|
+
/** Maximum cell width. CSS length. Defaults (via CSS) to `1fr` (stretch). */
|
|
20
|
+
max?: string;
|
|
21
|
+
/** Gap between cells. */
|
|
22
|
+
gap?: string;
|
|
23
|
+
/** Cap the height and scroll vertically when content overflows. */
|
|
24
|
+
scroll: boolean;
|
|
25
|
+
/** Max height when `scroll`. CSS length. Defaults (via CSS) to 200px. */
|
|
26
|
+
maxHeight?: string;
|
|
27
|
+
/** Show a bottom fade overlay while the grid has hidden overflow below. */
|
|
28
|
+
fade: boolean;
|
|
29
|
+
gridRef?: ElementRef<HTMLDivElement>;
|
|
30
|
+
hasBottomOverflow: boolean;
|
|
31
|
+
private readonly zone;
|
|
32
|
+
private readonly cdr;
|
|
33
|
+
private resizeObserver?;
|
|
34
|
+
private mutationObserver?;
|
|
35
|
+
private scrollListener?;
|
|
36
|
+
ngAfterViewInit(): void;
|
|
37
|
+
ngOnDestroy(): void;
|
|
38
|
+
private bindOverflowTracking;
|
|
39
|
+
private measureOverflow;
|
|
40
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<GridComponent, never>;
|
|
41
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<GridComponent, "aia-grid", never, { "min": "min"; "max": "max"; "gap": "gap"; "scroll": "scroll"; "maxHeight": "maxHeight"; "fade": "fade"; }, {}, never, ["*"], true, never>;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=grid.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grid.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/internal/layout/grid.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAIlB,KAAK,UAAU,EAIf,KAAK,SAAS,EAGf,MAAM,eAAe,CAAC;;AAEvB;;;;;;;;;;;;GAYG;AACH,qBAQa,aAAc,YAAW,aAAa,EAAE,SAAS;IAC5D,iFAAiF;IACxE,GAAG,SAAW;IACvB,6EAA6E;IACpE,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,yBAAyB;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,mEAAmE;IAC1D,MAAM,UAAS;IACxB,yEAAyE;IAChE,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,2EAA2E;IAClE,IAAI,UAAS;IAEgB,OAAO,CAAC,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;IAE3E,iBAAiB,UAAS;IAE1B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAkB;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA6B;IACjD,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,gBAAgB,CAAC,CAAmB;IAC5C,OAAO,CAAC,cAAc,CAAC,CAAa;IAEpC,eAAe,IAAI,IAAI;IAMvB,WAAW,IAAI,IAAI;IAQnB,OAAO,CAAC,oBAAoB;IAuB5B,OAAO,CAAC,eAAe;yCA7DZ,aAAa;2CAAb,aAAa;CAwEzB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
/**
|
|
3
|
+
* Vertical layout primitive — children stack top-to-bottom with `space` gap.
|
|
4
|
+
* Mirrors the React `<Stack>` component / vanilla `.aia-stack` CSS primitive.
|
|
5
|
+
*
|
|
6
|
+
* @internal
|
|
7
|
+
*/
|
|
8
|
+
export declare class StackComponent {
|
|
9
|
+
/** Gap between children. Any CSS length. Defaults to the CSS fallback (0.5rem). */
|
|
10
|
+
space?: string;
|
|
11
|
+
/** Cross-axis alignment of children. Defaults to `stretch` (full width). */
|
|
12
|
+
align: "start" | "center" | "end" | "stretch";
|
|
13
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<StackComponent, never>;
|
|
14
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<StackComponent, "aia-stack", never, { "space": "space"; "align": "align"; }, {}, never, ["*"], true, never>;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=stack.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stack.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/internal/layout/stack.component.ts"],"names":[],"mappings":";AAEA;;;;;GAKG;AACH,qBAaa,cAAc;IACzB,mFAAmF;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,4EAA4E;IACnE,KAAK,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAa;yCAJxD,cAAc;2CAAd,cAAc;CAK1B"}
|
|
@@ -4,7 +4,7 @@ import * as i0 from "@angular/core";
|
|
|
4
4
|
/**
|
|
5
5
|
* Internal pill list used by both the dropdown and Tier 1's inline pillbar.
|
|
6
6
|
* Mirrors `packages/react/src/components/PillList.tsx` one-for-one — including
|
|
7
|
-
* the per-index opacity ramp (
|
|
7
|
+
* the per-index opacity ramp (1 / 0.4 / 0.2) and the skeleton-loading
|
|
8
8
|
* fallback that preserves layout while the next fetch is in flight.
|
|
9
9
|
*
|
|
10
10
|
* @internal
|
|
@@ -23,7 +23,7 @@ export declare class PillListComponent {
|
|
|
23
23
|
readonly selectPill: EventEmitter<number>;
|
|
24
24
|
/** Fallback widths when loading with zero cached pills (matches React). */
|
|
25
25
|
readonly fallbackSkeletonWidths: number[];
|
|
26
|
-
/** Per-index opacity ramp — mirrors PillList.tsx `
|
|
26
|
+
/** Per-index opacity ramp — mirrors PillList.tsx `PILL_OPACITY`. */
|
|
27
27
|
pillOpacity(index: number): number;
|
|
28
28
|
trackByType: (_: number, pill: Suggestion) => string;
|
|
29
29
|
trackByWidth: (_: number, w: number) => number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pill-list.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/internal/pill-list/pill-list.component.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,YAAY,EAIb,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;;AAEtE;;;;;;;GAOG;AACH,qBASa,iBAAiB;IACnB,KAAK,EAAE,UAAU,EAAE,CAAM;IACzB,eAAe,SAAK;IACpB,OAAO,UAAS;IACzB;;;;;OAKG;IACM,OAAO,UAAS;IAEf,QAAQ,CAAC,UAAU,uBAA8B;IAE3D,2EAA2E;IAC3E,QAAQ,CAAC,sBAAsB,WAAa;IAE5C,
|
|
1
|
+
{"version":3,"file":"pill-list.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/internal/pill-list/pill-list.component.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,YAAY,EAIb,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;;AAEtE;;;;;;;GAOG;AACH,qBASa,iBAAiB;IACnB,KAAK,EAAE,UAAU,EAAE,CAAM;IACzB,eAAe,SAAK;IACpB,OAAO,UAAS;IACzB;;;;;OAKG;IACM,OAAO,UAAS;IAEf,QAAQ,CAAC,UAAU,uBAA8B;IAE3D,2EAA2E;IAC3E,QAAQ,CAAC,sBAAsB,WAAa;IAE5C,oEAAoE;IACpE,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAMlC,WAAW,MAAO,MAAM,QAAQ,UAAU,KAAG,MAAM,CAAc;IACjE,YAAY,MAAO,MAAM,KAAK,MAAM,KAAG,MAAM,CAAM;IAEnD,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKhC,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;yCAhCxB,iBAAiB;2CAAjB,iBAAiB;CAoC7B"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { EventEmitter } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Internal default submit button (up-arrow). Angular analogue of React's
|
|
5
|
+
* `SubmitButton`. The default/custom/hidden branching stays in the parent
|
|
6
|
+
* (`AIAutocompleteComponent`); this is only the built-in button.
|
|
7
|
+
*
|
|
8
|
+
* @internal
|
|
9
|
+
*/
|
|
10
|
+
export declare class SubmitButtonComponent {
|
|
11
|
+
disabled: boolean;
|
|
12
|
+
readonly submit: EventEmitter<MouseEvent>;
|
|
13
|
+
onClick(event: MouseEvent): void;
|
|
14
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SubmitButtonComponent, never>;
|
|
15
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SubmitButtonComponent, "aia-submit-button", never, { "disabled": "disabled"; }, { "submit": "submit"; }, never, never, true, never>;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=submit-button.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"submit-button.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/internal/submit-button/submit-button.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,YAAY,EAIb,MAAM,eAAe,CAAC;;AAEvB;;;;;;GAMG;AACH,qBAQa,qBAAqB;IACvB,QAAQ,UAAS;IAChB,QAAQ,CAAC,MAAM,2BAAkC;IAE3D,OAAO,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;yCAJrB,qBAAqB;2CAArB,qBAAqB;CAOjC"}
|
|
@@ -1,36 +1,23 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { EventEmitter } from "@angular/core";
|
|
2
2
|
import type { SuggestionOption } from "@magicx-eng/ai-autocomplete-vanilla";
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
/**
|
|
5
|
-
* Internal
|
|
6
|
-
* `packages/react/src/components/SuggestionGrid.tsx` —
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
5
|
+
* Internal grid of suggestion options. Mirrors
|
|
6
|
+
* `packages/react/src/components/SuggestionGrid.tsx` — a thin wrapper over the
|
|
7
|
+
* `Grid` layout primitive (which owns the auto-fit columns and the
|
|
8
|
+
* capped-height scroll + bottom-fade). It only wires each option to its
|
|
9
|
+
* select/highlight handlers and listbox-scoped id.
|
|
10
10
|
*
|
|
11
11
|
* @internal
|
|
12
12
|
*/
|
|
13
|
-
export declare class SuggestionGridComponent
|
|
13
|
+
export declare class SuggestionGridComponent {
|
|
14
14
|
options: SuggestionOption[];
|
|
15
15
|
activeIndex: number;
|
|
16
16
|
listboxId: string;
|
|
17
17
|
loading: boolean;
|
|
18
18
|
readonly select: EventEmitter<SuggestionOption>;
|
|
19
19
|
readonly highlight: EventEmitter<number>;
|
|
20
|
-
gridRef?: ElementRef<HTMLDivElement>;
|
|
21
|
-
hasBottomOverflow: boolean;
|
|
22
|
-
private readonly zone;
|
|
23
|
-
private readonly cdr;
|
|
24
|
-
private resizeObserver?;
|
|
25
|
-
private scrollListener?;
|
|
26
|
-
ngAfterViewInit(): void;
|
|
27
|
-
ngOnChanges(): void;
|
|
28
|
-
ngOnDestroy(): void;
|
|
29
20
|
trackByOptionText: (_: number, opt: SuggestionOption) => string;
|
|
30
|
-
onSelectItem(option: SuggestionOption): void;
|
|
31
|
-
onHighlightItem(index: number): void;
|
|
32
|
-
private bindOverflowTracking;
|
|
33
|
-
private measureOverflow;
|
|
34
21
|
static ɵfac: i0.ɵɵFactoryDeclaration<SuggestionGridComponent, never>;
|
|
35
22
|
static ɵcmp: i0.ɵɵComponentDeclaration<SuggestionGridComponent, "aia-suggestion-grid", never, { "options": "options"; "activeIndex": "activeIndex"; "listboxId": "listboxId"; "loading": "loading"; }, { "select": "select"; "highlight": "highlight"; }, never, never, true, never>;
|
|
36
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"suggestion-grid.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/internal/suggestion-grid/suggestion-grid.component.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"suggestion-grid.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/internal/suggestion-grid/suggestion-grid.component.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,YAAY,EAIb,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;;AAI5E;;;;;;;;GAQG;AACH,qBAQa,uBAAuB;IACzB,OAAO,EAAE,gBAAgB,EAAE,CAAM;IACjC,WAAW,SAAM;IACjB,SAAS,SAAM;IACf,OAAO,UAAS;IAEf,QAAQ,CAAC,MAAM,iCAAwC;IACvD,QAAQ,CAAC,SAAS,uBAA8B;IAE1D,iBAAiB,MAAO,MAAM,OAAO,gBAAgB,KAAG,MAAM,CAAa;yCAThE,uBAAuB;2CAAvB,uBAAuB;CAUnC"}
|
package/lib/shared/types.d.ts
CHANGED
|
@@ -121,5 +121,7 @@ export interface AIAutocompleteDropdownState {
|
|
|
121
121
|
pills: Suggestion[];
|
|
122
122
|
/** True when the dropdown should render its loading skeleton. */
|
|
123
123
|
isLoading: boolean;
|
|
124
|
+
/** Once the user has tabbed to highlight an option, the footer hint switches from "tab to select" to "→ to skip". */
|
|
125
|
+
hasTabbedToHighlight: boolean;
|
|
124
126
|
}
|
|
125
127
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/shared/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/shared/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@magicx-eng/ai-autocomplete-angular",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "AI Autocomplete Angular SDK — guided autocomplete with pill-based input and dropdown suggestions",
|
|
5
5
|
"module": "fesm2015/magicx-eng-ai-autocomplete-angular.mjs",
|
|
6
6
|
"es2020": "fesm2020/magicx-eng-ai-autocomplete-angular.mjs",
|
|
@@ -14,14 +14,14 @@
|
|
|
14
14
|
"directory": "dist"
|
|
15
15
|
},
|
|
16
16
|
"peerDependencies": {
|
|
17
|
-
"@angular/common": ">=15.0.0
|
|
18
|
-
"@angular/core": ">=15.0.0
|
|
19
|
-
"@angular/forms": ">=15.0.0
|
|
17
|
+
"@angular/common": ">=15.0.0",
|
|
18
|
+
"@angular/core": ">=15.0.0",
|
|
19
|
+
"@angular/forms": ">=15.0.0",
|
|
20
20
|
"rxjs": ">=7.0.0"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
23
|
"tslib": "^2.3.0",
|
|
24
|
-
"@magicx-eng/ai-autocomplete-vanilla": "0.
|
|
24
|
+
"@magicx-eng/ai-autocomplete-vanilla": "0.3.0"
|
|
25
25
|
},
|
|
26
26
|
"keywords": [
|
|
27
27
|
"angular",
|