@namiml/web-sdk 3.4.11-dev.202609040555 → 3.4.11-dev.202609092330
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/elements/Button.d.ts +15 -12
- package/dist/nami-web.cjs +1 -1
- package/dist/nami-web.d.ts +15 -12
- package/dist/nami-web.mjs +1 -1
- package/dist/nami-web.umd.js +2 -2
- package/package.json +2 -2
|
@@ -16,19 +16,22 @@ export declare class NamiButton extends NamiElement {
|
|
|
16
16
|
protected updated(changedProperties: PropertyValueMap<this>): void;
|
|
17
17
|
private _handleFocus;
|
|
18
18
|
/**
|
|
19
|
-
*
|
|
20
|
-
* Bridge a focused product button into `state.selectedProducts` so conditions and smart
|
|
21
|
-
* text authored against `${state.selectedProducts.${state.currentGroupId}}` resolve
|
|
22
|
-
* against the *focused* product. Buttons outside a product card carry no `sku` (it is
|
|
23
|
-
* attached per card by `appendSkuToComponents`) and are ignored, as is every non-television
|
|
24
|
-
* form factor, where tap already drives selection.
|
|
19
|
+
* On CTV, focus is the selection signal — there is no tap to select a product (NAM-3607).
|
|
25
20
|
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
21
|
+
* - A focused PRODUCT button (one carrying a `sku`, attached per card by `appendSkuToComponents`)
|
|
22
|
+
* is bridged into `state.selectedProducts`, so conditions and smart text authored against
|
|
23
|
+
* `${state.selectedProducts.${state.currentGroupId}}` resolve against the *focused* product.
|
|
24
|
+
* `selectSKU` is idempotent, so repeat focus events on the same card do not re-render.
|
|
25
|
+
* - A focused NON-product button (login / restore / TV-provider — no `sku`) CLEARS the current
|
|
26
|
+
* group's selection (NAM-4270, decision 3 on NAM-4265), the same positive signal the group
|
|
27
|
+
* toggle already uses (`NamiSegmentPicker._handleFocusIn` → `clearSelectedProduct`, NAM-3606).
|
|
28
|
+
* Every `${sku.*}`-conditioned tile then takes its non-premium branch, matching Apple's
|
|
29
|
+
* `setFocusedSku(nil)` and Roku. This supersedes the earlier set-only rule from NAM-3607.
|
|
30
|
+
*
|
|
31
|
+
* Only focus-IN clears; `_handleBlur` never touches the selection, so focus merely leaving a
|
|
32
|
+
* card does nothing, and on web focus moves only under user input (TVJS), never as a side
|
|
33
|
+
* effect of a re-render — the Compose recomposition-loop hazard behind Android's settle guard
|
|
34
|
+
* does not apply here. Every non-television form factor is ignored: tap drives selection there.
|
|
32
35
|
*/
|
|
33
36
|
private _selectFocusedProductOnTelevision;
|
|
34
37
|
private _handleBlur;
|