@magicx-eng/ai-autocomplete-angular 0.42.1 → 0.44.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.
@@ -111,6 +111,21 @@ export declare class AIAutocompleteComponent implements OnInit, AfterViewInit, O
111
111
  */
112
112
  products?: ProductsConfig;
113
113
  mapProducts?: CoreOptions["mapProducts"];
114
+ /**
115
+ * Adds a product to the cart from its card. When set, every card that isn't
116
+ * sold out (`available: false`) shows an add-to-cart button in the bottom
117
+ * right corner of its image; when unset, no card has one. Pressing the button
118
+ * calls this, not `productSelect`, and the panel stays open. The SDK never
119
+ * touches a cart itself.
120
+ *
121
+ * An input rather than an output because its result matters: return a
122
+ * promise to have the button show progress. It carries
123
+ * `data-aia-cart-state="adding"` until the promise settles, then `"added"`
124
+ * if it resolved. `"added"` stays until the card's product changes; pressing
125
+ * again adds another unit (adding → added again). A rejection puts the
126
+ * button back at rest.
127
+ */
128
+ onProductAddToCart?: (product: Product) => void | PromiseLike<unknown>;
114
129
  /**
115
130
  * Custom submit button. Pass a `<ng-template>` to replace the default arrow
116
131
  * button. Pass `null` to render no button. Default (`undefined`) renders
@@ -233,6 +248,6 @@ export declare class AIAutocompleteComponent implements OnInit, AfterViewInit, O
233
248
  private handleSubmitFromUserAction;
234
249
  private measurePillWrap;
235
250
  static ɵfac: i0.ɵɵFactoryDeclaration<AIAutocompleteComponent, never>;
236
- static ɵcmp: i0.ɵɵComponentDeclaration<AIAutocompleteComponent, "ai-autocomplete", never, { "apiConfig": "apiConfig"; "additionalContext": "additionalContext"; "language": "language"; "currency": "currency"; "productId": "productId"; "visitorId": "visitorId"; "optionOverrides": "optionOverrides"; "maskCompletedText": "maskCompletedText"; "columns": "columns"; "pillPlacement": "pillPlacement"; "mode": "mode"; "optionsPosition": "optionsPosition"; "animations": "animations"; "dropdownTrigger": "dropdownTrigger"; "closeDropdownOnBlur": "closeDropdownOnBlur"; "showNonTappableOptions": "showNonTappableOptions"; "showSkipButton": "showSkipButton"; "showOptionIcons": "showOptionIcons"; "showOptionImages": "showOptionImages"; "showOptionCounts": "showOptionCounts"; "productsLayout": "productsLayout"; "productImageFallback": "productImageFallback"; "showChipIcons": "showChipIcons"; "showChipImages": "showChipImages"; "autoFocus": "autoFocus"; "value": "value"; "completedParams": "completedParams"; "showProducts": "showProducts"; "products": "products"; "mapProducts": "mapProducts"; "submitButton": "submitButton"; "resetOnSubmit": "resetOnSubmit"; }, { "submitted": "submitted"; "resultChange": "resultChange"; "errored": "errored"; "valueChange": "valueChange"; "completedParamsChange": "completedParamsChange"; "focused": "focused"; "blurred": "blurred"; "productSelect": "productSelect"; }, never, never, true, never>;
251
+ static ɵcmp: i0.ɵɵComponentDeclaration<AIAutocompleteComponent, "ai-autocomplete", never, { "apiConfig": "apiConfig"; "additionalContext": "additionalContext"; "language": "language"; "currency": "currency"; "productId": "productId"; "visitorId": "visitorId"; "optionOverrides": "optionOverrides"; "maskCompletedText": "maskCompletedText"; "columns": "columns"; "pillPlacement": "pillPlacement"; "mode": "mode"; "optionsPosition": "optionsPosition"; "animations": "animations"; "dropdownTrigger": "dropdownTrigger"; "closeDropdownOnBlur": "closeDropdownOnBlur"; "showNonTappableOptions": "showNonTappableOptions"; "showSkipButton": "showSkipButton"; "showOptionIcons": "showOptionIcons"; "showOptionImages": "showOptionImages"; "showOptionCounts": "showOptionCounts"; "productsLayout": "productsLayout"; "productImageFallback": "productImageFallback"; "showChipIcons": "showChipIcons"; "showChipImages": "showChipImages"; "autoFocus": "autoFocus"; "value": "value"; "completedParams": "completedParams"; "showProducts": "showProducts"; "products": "products"; "mapProducts": "mapProducts"; "onProductAddToCart": "onProductAddToCart"; "submitButton": "submitButton"; "resetOnSubmit": "resetOnSubmit"; }, { "submitted": "submitted"; "resultChange": "resultChange"; "errored": "errored"; "valueChange": "valueChange"; "completedParamsChange": "completedParamsChange"; "focused": "focused"; "blurred": "blurred"; "productSelect": "productSelect"; }, never, never, true, never>;
237
252
  }
238
253
  //# sourceMappingURL=ai-autocomplete.component.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai-autocomplete.component.d.ts","sourceRoot":"","sources":["../../../src/lib/ai-autocomplete/ai-autocomplete.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-autocomplete.component.d.ts","sourceRoot":"","sources":["../../../src/lib/ai-autocomplete/ai-autocomplete.component.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,8 @@ interface DropdownVm {
32
32
  isVisible: boolean;
33
33
  /** Product cards for the strip. Empty unless `products` is configured. */
34
34
  products: Product[];
35
+ /** Whether the cards draw an add-to-cart button — the controller has a handler. */
36
+ hasProductAddToCart: boolean;
35
37
  /** Identity of the suggestion the options belong to — drives the grid's scroll reset. */
36
38
  groupKey: string;
37
39
  footerKey: string;
@@ -193,6 +195,11 @@ export declare class AIAutocompleteDropdownComponent implements OnInit, OnChange
193
195
  onHighlight(index: number): void;
194
196
  onUnhighlight(index: number): void;
195
197
  onProductSelect(product: Product): void;
198
+ /**
199
+ * The strip's cart buttons. A stable arrow reading the current controller,
200
+ * so the strip's input doesn't change on every pass.
201
+ */
202
+ readonly addProductToCart: (product: Product) => Promise<void>;
196
203
  /**
197
204
  * A card taking focus blurs the editor, which would otherwise close the
198
205
  * panel out from under the card the user just tabbed to.
@@ -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":"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"}
1
+ {"version":3,"file":"ai-autocomplete-dropdown.component.d.ts","sourceRoot":"","sources":["../../../src/lib/ai-autocomplete-dropdown/ai-autocomplete-dropdown.component.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,8 @@ export declare class AIAutocompleteController {
18
18
  private readonly core;
19
19
  private readonly rawState$;
20
20
  private readonly optionsPosition$;
21
+ private productAddToCart;
22
+ private readonly hasProductAddToCart$;
21
23
  private readonly unsubscribeCore;
22
24
  private isDestroyed;
23
25
  /** Plain-text content of the editor. */
@@ -143,6 +145,16 @@ export declare class AIAutocompleteController {
143
145
  * means "open the PDP", "add to cart", or "fill the input".
144
146
  */
145
147
  selectProduct(product: Product): void;
148
+ /**
149
+ * Add a product to the cart through `onProductAddToCart`.
150
+ * `<ai-autocomplete-dropdown>`'s cart buttons call this for you; consumers
151
+ * rendering their own strip call it themselves. Resolves once the handler's
152
+ * promise settles and rejects with its error. Without a handler it does
153
+ * nothing.
154
+ */
155
+ addProductToCart(product: Product): Promise<void>;
156
+ /** Whether cards draw a cart button: an `onProductAddToCart` handler is set. */
157
+ hasProductAddToCart(): boolean;
146
158
  /** Promote the pill at `index` to active (front of the list). */
147
159
  setActivePill(index: number): void;
148
160
  /**
@@ -198,7 +210,9 @@ export declare class AIAutocompleteController {
198
210
  * (`onSubmit`, `onResult`, `onError`, etc.) cannot be swapped this way — they are
199
211
  * registered once at construction (matches the React hook's design). For
200
212
  * dynamic event reactivity, subscribe to the corresponding observable
201
- * (e.g. `text$` instead of `onChange`).
213
+ * (e.g. `text$` instead of `onChange`). The exception is
214
+ * `onProductAddToCart`, a handler rather than an event: passing the key sets,
215
+ * swaps or (with `undefined`) removes it, and the cart buttons follow.
202
216
  */
203
217
  update(opts: AIAutocompleteControllerUpdate): void;
204
218
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ai-autocomplete.controller.d.ts","sourceRoot":"","sources":["../../../src/lib/controller/ai-autocomplete.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-autocomplete.controller.d.ts","sourceRoot":"","sources":["../../../src/lib/controller/ai-autocomplete.controller.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { type ElementRef, EventEmitter, type OnChanges, type OnDestroy } from "@angular/core";
2
2
  import { type Product, type ProductImageFallback, type ProductsLayout, productInitial, type UIStrings } from "@magicx-eng/ai-autocomplete-vanilla";
3
3
  import * as i0 from "@angular/core";
4
+ type CartState = "adding" | "added";
4
5
  /**
5
6
  * Internal product strip rendered below the dropdown's options grid. Mirrors
6
7
  * `packages/react/src/components/ProductStrip.tsx` and the vanilla core's
@@ -36,6 +37,11 @@ export declare class ProductStripComponent implements OnDestroy, OnChanges {
36
37
  imageFallback: ProductImageFallback;
37
38
  /** The words of the widget language. Default: English. */
38
39
  strings: UIStrings;
40
+ /**
41
+ * Set when the integration adds to cart: each card that is not sold out
42
+ * draws a cart button, whose press calls this instead of emitting `select`.
43
+ */
44
+ addToCart: ((product: Product) => void | PromiseLike<unknown>) | null;
39
45
  readonly initial: typeof productInitial;
40
46
  /**
41
47
  * Per product id, the `src`s that failed to load: a card moves on to the
@@ -49,8 +55,15 @@ export declare class ProductStripComponent implements OnDestroy, OnChanges {
49
55
  imageSource(product: Product): string | null;
50
56
  /** Whether the card's photo has loaded, so the placeholder fill steps aside. */
51
57
  imageLoaded(product: Product): boolean;
52
- onImageLoad(product: Product, src: string): void;
58
+ onImageLoad(product: Product, src: string, event?: Event): void;
53
59
  onImageError(product: Product): void;
60
+ /** Per product id, how much of the tile the loaded photo fills (productPhotoFill). */
61
+ private readonly photoFills;
62
+ /**
63
+ * The card's photo-fill custom properties, which put the cart button inside
64
+ * the photo's own corner. Null until the photo loads.
65
+ */
66
+ photoFillStyle(product: Product): Record<string, string> | null;
54
67
  readonly select: EventEmitter<Product>;
55
68
  /**
56
69
  * Focus moved into / out of the strip. The panel closes on blur by default
@@ -60,6 +73,14 @@ export declare class ProductStripComponent implements OnDestroy, OnChanges {
60
73
  */
61
74
  readonly focusChange: EventEmitter<boolean>;
62
75
  private detachWheel;
76
+ private readonly cdr;
77
+ /**
78
+ * Per product id, the cart button's state while it isn't at rest, with the
79
+ * product identity it belongs to and the press that set it (a settle from an
80
+ * earlier press, or for a card since reset, is dropped).
81
+ */
82
+ private readonly carts;
83
+ private destroyed;
63
84
  /**
64
85
  * A mouse wheel over the row scrolls it sideways. The row sits inside the
65
86
  * section's `*ngIf`, so the query fires with the element as products arrive
@@ -67,6 +88,16 @@ export declare class ProductStripComponent implements OnDestroy, OnChanges {
67
88
  */
68
89
  set row(ref: ElementRef<HTMLElement> | undefined);
69
90
  ngOnDestroy(): void;
91
+ /** A sold-out product can't be added, so its card has no button at all. */
92
+ hasCart(product: Product): boolean;
93
+ cartState(product: Product): CartState | null;
94
+ onCartKeyDown(event: KeyboardEvent, product: Product): void;
95
+ /**
96
+ * Mirrors vanilla's `buildCartButton` press: adding → added, or rest on a
97
+ * rejection. The check stays until the product changes; another press adds again.
98
+ */
99
+ onCartPress(event: Event, product: Product): void;
100
+ private settleCart;
70
101
  get labelId(): string;
71
102
  cardId(index: number): string;
72
103
  trackByProduct: (_: number, product: Product) => string;
@@ -75,6 +106,7 @@ export declare class ProductStripComponent implements OnDestroy, OnChanges {
75
106
  onCardFocus(): void;
76
107
  onCardBlur(event: FocusEvent): void;
77
108
  static ɵfac: i0.ɵɵFactoryDeclaration<ProductStripComponent, never>;
78
- static ɵcmp: i0.ɵɵComponentDeclaration<ProductStripComponent, "aia-product-strip", never, { "products": "products"; "listboxId": "listboxId"; "focusable": "focusable"; "layout": "layout"; "imageFallback": "imageFallback"; "strings": "strings"; }, { "select": "select"; "focusChange": "focusChange"; }, never, never, true, never>;
109
+ static ɵcmp: i0.ɵɵComponentDeclaration<ProductStripComponent, "aia-product-strip", never, { "products": "products"; "listboxId": "listboxId"; "focusable": "focusable"; "layout": "layout"; "imageFallback": "imageFallback"; "strings": "strings"; "addToCart": "addToCart"; }, { "select": "select"; "focusChange": "focusChange"; }, never, never, true, never>;
79
110
  }
111
+ export {};
80
112
  //# sourceMappingURL=product-strip.component.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"product-strip.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/internal/product-strip/product-strip.component.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,UAAU,EACf,YAAY,EAEZ,KAAK,SAAS,EACd,KAAK,SAAS,EAIf,MAAM,eAAe,CAAC;AACvB,OAAO,EAEL,KAAK,OAAO,EACZ,KAAK,oBAAoB,EACzB,KAAK,cAAc,EAEnB,cAAc,EACd,KAAK,SAAS,EAEf,MAAM,qCAAqC,CAAC;;AAE7C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBASa,qBAAsB,YAAW,SAAS,EAAE,SAAS;IACvD,QAAQ,EAAE,OAAO,EAAE,CAAM;IAClC,2DAA2D;IAClD,SAAS,SAAM;IACxB;;;;OAIG;IACM,SAAS,UAAQ;IAC1B,8FAA8F;IACrF,MAAM,EAAE,cAAc,CAAS;IAC/B,aAAa,EAAE,oBAAoB,CAAW;IACvD,0DAA0D;IACjD,OAAO,EAAE,SAAS,CAAkB;IAC7C,QAAQ,CAAC,OAAO,wBAAkB;IAClC;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA+B;IAC5D,qFAAqF;IACrF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6B;IAE1D,WAAW,IAAI,IAAI;IAUnB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI;IAK5C,gFAAgF;IAChF,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO;IAKtC,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAIhD,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAK1B,QAAQ,CAAC,MAAM,wBAA+B;IACxD;;;;;OAKG;IACO,QAAQ,CAAC,WAAW,wBAA+B;IAE7D,OAAO,CAAC,WAAW,CAA6B;IAEhD;;;;OAIG;IACH,IACI,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,SAAS,EAG/C;IAED,WAAW,IAAI,IAAI;IAKnB,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAI7B,cAAc,MAAO,MAAM,WAAW,OAAO,KAAG,MAAM,CAAe;IAErE,OAAO,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAWlD,SAAS,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAMvD,WAAW,IAAI,IAAI;IAInB,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;yCAjHxB,qBAAqB;2CAArB,qBAAqB;CAsHjC"}
1
+ {"version":3,"file":"product-strip.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/internal/product-strip/product-strip.component.ts"],"names":[],"mappings":"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"}
@@ -123,6 +123,23 @@ export interface AIAutocompleteControllerOptions {
123
123
  * are left to the browser (cmd-click still opens a tab) and don't fire this.
124
124
  */
125
125
  onProductSelect?: (product: Product) => void;
126
+ /**
127
+ * Adds a product to the cart from its card. When set, every card that isn't
128
+ * sold out (`available: false`) shows an add-to-cart button in the bottom
129
+ * right corner of its image; when unset, no card has one. Pressing the button
130
+ * calls this, not `onProductSelect`, and the panel stays open. The SDK never
131
+ * touches a cart itself.
132
+ *
133
+ * Return a promise to have the button show progress: it carries
134
+ * `data-aia-cart-state="adding"` until the promise settles, then `"added"`
135
+ * if it resolved. `"added"` stays until the card's product changes; pressing
136
+ * again adds another unit (adding → added again). A rejection puts the
137
+ * button back at rest.
138
+ *
139
+ * Unlike the other callbacks it can be swapped or removed through
140
+ * `update()`, which adds or removes the buttons.
141
+ */
142
+ onProductAddToCart?: (product: Product) => void | PromiseLike<unknown>;
126
143
  /** Initial controlled text value. */
127
144
  value?: string;
128
145
  /** Initial controlled completed params. */
@@ -269,6 +286,12 @@ export interface AIAutocompleteDropdownState {
269
286
  * placement is configured once on the controller (no separate input to sync).
270
287
  */
271
288
  optionsPosition: "above" | "below";
289
+ /**
290
+ * Whether product cards draw an add-to-cart button — the controller has an
291
+ * `onProductAddToCart` handler. Optional (undefined ⇒ false) for the same
292
+ * compile-compat reason as `isEditing`.
293
+ */
294
+ hasProductAddToCart?: boolean;
272
295
  /**
273
296
  * How the active pill is answered. `"date"` and `"date-range"` render a
274
297
  * calendar in place of the options grid, and `suggestions[0].options` then
@@ -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.42.1",
3
+ "version": "0.44.0",
4
4
  "description": "AI Autocomplete for Angular: add real-time AI suggestions to any text box and guide users to what your product can do, across search, commerce, agents, and more. Standalone component or controller + directive, with Reactive Forms support.",
5
5
  "homepage": "https://ai-autocomplete.com/docs/angular/getting-started",
6
6
  "module": "fesm2015/magicx-eng-ai-autocomplete-angular.mjs",
@@ -22,7 +22,7 @@
22
22
  },
23
23
  "dependencies": {
24
24
  "tslib": "^2.3.0",
25
- "@magicx-eng/ai-autocomplete-vanilla": "0.53.1"
25
+ "@magicx-eng/ai-autocomplete-vanilla": "0.55.0"
26
26
  },
27
27
  "keywords": [
28
28
  "angular",