@rokt/dcui-orchestrator 0.2.1-rc.83 → 0.2.1-rc.84
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/extensions/address-form/src/actions/forms.d.ts +11 -0
- package/dist/extensions/address-form/src/actions/index.d.ts +1 -0
- package/dist/extensions/address-form/src/components/address-form.d.ts +96 -0
- package/dist/extensions/address-form/src/components/edit-address-form-view.d.ts +23 -0
- package/dist/extensions/address-form/src/components/form-button.d.ts +15 -0
- package/dist/extensions/address-form/src/components/input-field.d.ts +34 -0
- package/dist/extensions/address-form/src/index.d.ts +3 -0
- package/dist/extensions/address-form/src/models/form-state.d.ts +1 -0
- package/dist/extensions/address-form/src/models/index.d.ts +1 -0
- package/dist/extensions/address-form/src/reducers/forms.d.ts +4 -0
- package/dist/extensions/address-form/src/reducers/index.d.ts +1 -0
- package/dist/extensions/address-form/src/sagas/cart-service/index.d.ts +1 -0
- package/dist/{libraries/orchestrator → extensions/address-form}/src/sagas/cart-service/sagas.d.ts +5 -12
- package/dist/extensions/address-form/src/sagas/index.d.ts +2 -0
- package/dist/extensions/address-form/src/types.d.ts +63 -0
- package/dist/extensions/address-form/src/utils.d.ts +15 -0
- package/dist/extensions/shimmer-background/src/index.d.ts +10 -0
- package/dist/extensions/shimmer-background/src/shimmer-background.d.ts +11 -0
- package/dist/index.cjs +97 -36
- package/dist/index.js +100 -39
- package/dist/libraries/dcui-components/src/components/action-button/action-button.d.ts +24 -0
- package/dist/libraries/dcui-components/src/components/action-button/factory.d.ts +2 -0
- package/dist/libraries/dcui-components/src/components/action-button/index.d.ts +2 -0
- package/dist/libraries/dcui-components/src/components/catalog-carousel-collection/hooks.d.ts +7 -0
- package/dist/libraries/{layout-renderer-utils → dcui-components}/src/components/close-button/factory.d.ts +1 -1
- package/dist/libraries/dcui-components/src/components/data-mapper/form-state-projection.d.ts +31 -0
- package/dist/libraries/dcui-components/src/components/data-mapper/index.d.ts +1 -0
- package/dist/libraries/dcui-components/src/components/extension/context.d.ts +2 -1
- package/dist/libraries/dcui-components/src/components/extension/models.d.ts +2 -1
- package/dist/libraries/dcui-components/src/components/form/factory.d.ts +2 -0
- package/dist/libraries/dcui-components/src/components/form/form.d.ts +24 -0
- package/dist/libraries/dcui-components/src/components/form/index.d.ts +2 -0
- package/dist/libraries/dcui-components/src/components/index.d.ts +5 -0
- package/dist/libraries/dcui-components/src/components/layout-timer/index.d.ts +5 -0
- package/dist/libraries/dcui-components/src/components/layout-timer/layout-timer.d.ts +7 -0
- package/dist/libraries/dcui-components/src/components/layout-timer/timer-countdown-provider.d.ts +8 -0
- package/dist/libraries/dcui-components/src/components/layout-timer/use-layout-timer.d.ts +11 -0
- package/dist/libraries/dcui-components/src/components/layout-timer/use-timer-action-dispatch.d.ts +9 -0
- package/dist/libraries/dcui-components/src/components/rich-text/rich-text.d.ts +2 -0
- package/dist/libraries/dcui-components/src/components/scrollable-column/scrollable-column.d.ts +1 -1
- package/dist/libraries/dcui-components/src/components/scrollable-row/scrollable-row.d.ts +1 -1
- package/dist/libraries/dcui-components/src/components/style-mapper/get-css-writer.d.ts +1 -0
- package/dist/libraries/dcui-components/src/components/style-mapper/transformers/index.d.ts +1 -0
- package/dist/libraries/dcui-components/src/components/style-mapper/transformers/scroll-mask-transformer.d.ts +8 -0
- package/dist/libraries/dcui-components/src/components/style-mapper/types.d.ts +2 -2
- package/dist/libraries/dcui-components/src/components/text-input/factory.d.ts +2 -0
- package/dist/libraries/dcui-components/src/components/text-input/index.d.ts +2 -0
- package/dist/libraries/dcui-components/src/components/text-input/text-input.d.ts +23 -0
- package/dist/libraries/dcui-components/src/components/when/form-state.d.ts +9 -0
- package/dist/libraries/dcui-components/src/contexts/form-context.d.ts +15 -0
- package/dist/libraries/dcui-components/src/contexts/index.d.ts +2 -0
- package/dist/libraries/dcui-components/src/contexts/minimizable-context.d.ts +2 -0
- package/dist/libraries/dcui-components/src/contexts/offer-data-context.d.ts +1 -0
- package/dist/libraries/dcui-components/src/failure-codes.d.ts +1 -0
- package/dist/libraries/dcui-components/src/utils/get-scroll-mask-config.d.ts +20 -0
- package/dist/libraries/dcui-components/src/utils/index.d.ts +2 -0
- package/dist/libraries/dcui-components/src/utils/use-scroll-mask-visibility.d.ts +22 -0
- package/dist/libraries/dcui-schema/src/models/nodes/close-button.d.ts +3 -1
- package/dist/libraries/domain/src/behaviors/cart-item-event.d.ts +7 -12
- package/dist/libraries/domain/src/behaviors/dismiss-overlay.d.ts +9 -0
- package/dist/libraries/domain/src/behaviors/domain-states.d.ts +2 -2
- package/dist/libraries/domain/src/behaviors/form-state.d.ts +66 -0
- package/dist/libraries/domain/src/behaviors/global-actions.d.ts +15 -1
- package/dist/libraries/domain/src/behaviors/index.d.ts +5 -0
- package/dist/libraries/domain/src/behaviors/layout-events.d.ts +17 -0
- package/dist/libraries/domain/src/behaviors/offer-engagement.d.ts +2 -1
- package/dist/libraries/domain/src/behaviors/report-error.d.ts +26 -0
- package/dist/libraries/domain/src/behaviors/send-partner.d.ts +36 -3
- package/dist/libraries/domain/src/behaviors/trigger-action.d.ts +19 -0
- package/dist/libraries/domain/src/models/domain-state-keys.d.ts +5 -0
- package/dist/libraries/domain/src/models/form-state.d.ts +85 -0
- package/dist/libraries/domain/src/models/global-state.d.ts +4 -1
- package/dist/libraries/domain/src/models/index.d.ts +2 -0
- package/dist/libraries/domain/src/models/layout/index.d.ts +1 -0
- package/dist/libraries/domain/src/models/layout/layout-child-config.d.ts +2 -0
- package/dist/libraries/domain/src/models/layout/layout-config.d.ts +2 -2
- package/dist/libraries/domain/src/models/layout/layout-offer.d.ts +2 -0
- package/dist/libraries/domain/src/models/layout/layout-signal-type.d.ts +3 -1
- package/dist/libraries/domain/src/models/layout/layout-transaction-data.d.ts +31 -0
- package/dist/libraries/domain/src/models/partner-event.d.ts +2 -2
- package/dist/libraries/domain/src/models/plugin/index.d.ts +2 -0
- package/dist/libraries/domain/src/models/plugin/plugin-catalog-item-group.d.ts +17 -0
- package/dist/libraries/domain/src/models/plugin/plugin-child-layout-model.d.ts +2 -0
- package/dist/libraries/domain/src/models/plugin/plugin-model.d.ts +3 -3
- package/dist/libraries/domain/src/models/plugin/plugin-offer.d.ts +4 -0
- package/dist/libraries/domain/src/models/plugin/plugin-signal-type.d.ts +4 -1
- package/dist/libraries/domain/src/models/plugin/plugin-transaction-data.d.ts +31 -0
- package/dist/libraries/domain/src/models/purchase.d.ts +54 -0
- package/dist/libraries/domain/src/models/signals.d.ts +14 -6
- package/dist/libraries/layout-renderer-utils/src/actions/domain-states.d.ts +14 -0
- package/dist/libraries/layout-renderer-utils/src/actions/form-states.d.ts +37 -0
- package/dist/libraries/layout-renderer-utils/src/actions/index.d.ts +15 -3
- package/dist/libraries/layout-renderer-utils/src/actions/overlay.d.ts +15 -8
- package/dist/libraries/layout-renderer-utils/src/actions/settings.d.ts +10 -3
- package/dist/libraries/layout-renderer-utils/src/components/index.d.ts +4 -1
- package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/connector.d.ts +2 -0
- package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/drag-handle.d.ts +7 -0
- package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/extract-border-styles.d.ts +25 -0
- package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/factory.d.ts +13 -0
- package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/hooks.d.ts +23 -0
- package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/index.d.ts +2 -0
- package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/minimizable-bottomsheet-wrapper.d.ts +12 -0
- package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/minimizable-bottomsheet.d.ts +27 -0
- package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/sheet-gesture.d.ts +18 -0
- package/dist/libraries/layout-renderer-utils/src/components/minimizable-bottomsheet/types.d.ts +63 -0
- package/dist/libraries/layout-renderer-utils/src/components/minimize-button/factory.d.ts +2 -0
- package/dist/libraries/layout-renderer-utils/src/components/minimize-button/index.d.ts +2 -0
- package/dist/libraries/layout-renderer-utils/src/components/minimize-button/minimize-button.d.ts +12 -0
- package/dist/libraries/layout-renderer-utils/src/components/overlay/overlay.d.ts +1 -0
- package/dist/libraries/layout-renderer-utils/src/components/overlay-wrapper/attached-overlay-wrapper.d.ts +19 -0
- package/dist/libraries/layout-renderer-utils/src/components/overlay-wrapper/index.d.ts +1 -0
- package/dist/libraries/layout-renderer-utils/src/components/utils.d.ts +1 -0
- package/dist/libraries/layout-renderer-utils/src/constant.d.ts +1 -1
- package/dist/libraries/layout-renderer-utils/src/hooks/useEscToClose.d.ts +1 -0
- package/dist/libraries/layout-renderer-utils/src/models/state/fired-events.d.ts +17 -0
- package/dist/libraries/layout-renderer-utils/src/models/state/form-states.d.ts +11 -0
- package/dist/libraries/layout-renderer-utils/src/models/state/index.d.ts +9 -2
- package/dist/libraries/layout-renderer-utils/src/models/state/layout.d.ts +2 -1
- package/dist/libraries/layout-renderer-utils/src/models/state/settings.d.ts +6 -0
- package/dist/libraries/layout-renderer-utils/src/reducers/fired-events/index.d.ts +1 -0
- package/dist/libraries/layout-renderer-utils/src/reducers/fired-events/reducer.d.ts +5 -0
- package/dist/libraries/layout-renderer-utils/src/reducers/form-states/index.d.ts +1 -0
- package/dist/libraries/layout-renderer-utils/src/reducers/form-states/reducer.d.ts +4 -0
- package/dist/libraries/layout-renderer-utils/src/reducers/index.d.ts +6 -0
- package/dist/libraries/layout-renderer-utils/src/reducers/settings/reducer.d.ts +3 -3
- package/dist/libraries/layout-renderer-utils/src/sagas/error/error-codes.d.ts +1 -0
- package/dist/libraries/layout-renderer-utils/src/sagas/form-states/index.d.ts +1 -0
- package/dist/libraries/layout-renderer-utils/src/sagas/form-states/sagas.d.ts +16 -0
- package/dist/libraries/layout-renderer-utils/src/sagas/index.d.ts +2 -0
- package/dist/libraries/layout-renderer-utils/src/sagas/plugin/attached-bottomsheet.d.ts +18 -0
- package/dist/libraries/layout-renderer-utils/src/sagas/plugin/display.d.ts +4 -13
- package/dist/libraries/layout-renderer-utils/src/sagas/plugin/sagas.d.ts +1 -1
- package/dist/libraries/layout-renderer-utils/src/sagas/trigger-action/index.d.ts +1 -0
- package/dist/libraries/layout-renderer-utils/src/sagas/trigger-action/sagas.d.ts +12 -0
- package/dist/libraries/layout-renderer-utils/src/selectors/fired-events/selectors.d.ts +7 -0
- package/dist/libraries/layout-renderer-utils/src/selectors/form-state/index.d.ts +1 -0
- package/dist/libraries/layout-renderer-utils/src/selectors/form-state/selectors.d.ts +8 -0
- package/dist/libraries/layout-renderer-utils/src/selectors/index.d.ts +2 -0
- package/dist/libraries/layout-renderer-utils/src/utils/signals.d.ts +2 -2
- package/dist/libraries/module-connector/src/main.d.ts +1 -1
- package/dist/libraries/module-connector/src/models/gateway.d.ts +4 -3
- package/dist/libraries/module-connector/src/models/module-connector-builder.d.ts +4 -1
- package/dist/libraries/module-utils/src/actions/child-layouts.d.ts +11 -0
- package/dist/libraries/module-utils/src/actions/dynamic-data.d.ts +7 -0
- package/dist/libraries/module-utils/src/actions/index.d.ts +2 -0
- package/dist/libraries/module-utils/src/index.d.ts +5 -0
- package/dist/libraries/module-utils/src/models/index.d.ts +1 -0
- package/dist/libraries/module-utils/src/models/state/child-layouts.d.ts +4 -0
- package/dist/libraries/module-utils/src/models/state/dynamic-data.d.ts +3 -0
- package/dist/libraries/module-utils/src/models/state/index.d.ts +3 -0
- package/dist/libraries/module-utils/src/models/state/static-data.d.ts +6 -0
- package/dist/libraries/module-utils/src/reducers/child-layouts/index.d.ts +1 -0
- package/dist/libraries/module-utils/src/reducers/child-layouts/reducer.d.ts +5 -0
- package/dist/libraries/module-utils/src/reducers/dynamic-data/index.d.ts +1 -0
- package/dist/libraries/module-utils/src/reducers/dynamic-data/reducer.d.ts +4 -0
- package/dist/libraries/module-utils/src/reducers/index.d.ts +3 -0
- package/dist/libraries/module-utils/src/reducers/static-data/index.d.ts +1 -0
- package/dist/libraries/module-utils/src/reducers/static-data/reducer.d.ts +4 -0
- package/dist/libraries/module-utils/src/sagas/child-layouts/index.d.ts +1 -0
- package/dist/libraries/module-utils/src/sagas/child-layouts/sagas.d.ts +5 -0
- package/dist/libraries/module-utils/src/sagas/error-codes.d.ts +1 -0
- package/dist/libraries/module-utils/src/sagas/index.d.ts +1 -0
- package/dist/libraries/module-utils/src/selectors/child-layouts/index.d.ts +1 -0
- package/dist/libraries/module-utils/src/selectors/child-layouts/selectors.d.ts +4 -0
- package/dist/libraries/module-utils/src/selectors/dynamic-data/index.d.ts +1 -0
- package/dist/libraries/module-utils/src/selectors/dynamic-data/selectors.d.ts +4 -0
- package/dist/libraries/module-utils/src/selectors/index.d.ts +3 -0
- package/dist/libraries/module-utils/src/selectors/static-data/index.d.ts +1 -0
- package/dist/libraries/module-utils/src/selectors/static-data/selectors.d.ts +7 -0
- package/dist/libraries/orchestrator/src/actions/domain-states.d.ts +2 -2
- package/dist/libraries/orchestrator/src/actions/index.d.ts +14 -4
- package/dist/libraries/orchestrator/src/actions/trigger-action.d.ts +2 -0
- package/dist/libraries/orchestrator/src/global-store-proxy.d.ts +2 -0
- package/dist/libraries/orchestrator/src/models/index.d.ts +1 -1
- package/dist/libraries/orchestrator/src/models/state/domain-states.d.ts +2 -2
- package/dist/libraries/orchestrator/src/models/state/index.d.ts +0 -2
- package/dist/libraries/orchestrator/src/reducers/domain-states/reducer.d.ts +2 -1
- package/dist/libraries/orchestrator/src/reducers/index.d.ts +3 -1
- package/dist/libraries/orchestrator/src/sagas/plugin/config-transformer.d.ts +2 -2
- package/dist/libraries/orchestrator/src/sagas/plugin/migrate-schema.d.ts +2 -2
- package/dist/libraries/orchestrator/src/sagas/plugin/migrations/migration-mapper.d.ts +3 -3
- package/dist/libraries/orchestrator/src/sagas/plugin/migrations/v1.0.d.ts +2 -2
- package/dist/libraries/orchestrator/src/sagas/plugin/sagas.d.ts +2 -2
- package/dist/libraries/orchestrator/src/sagas/trigger-action/index.d.ts +1 -0
- package/dist/libraries/orchestrator/src/sagas/trigger-action/sagas.d.ts +3 -0
- package/dist/libraries/orchestrator/src/selectors/domain-state/selectors.d.ts +2 -2
- package/dist/libraries/orchestrator/src/selectors/index.d.ts +1 -1
- package/dist/libraries/plugin-utils/src/translate-config.d.ts +5 -1
- package/dist/libraries/saga-utils/src/sagas/handle-variant-action.d.ts +12 -0
- package/dist/libraries/saga-utils/src/sagas/index.d.ts +1 -0
- package/dist/modules/add-to-cart/src/components/mapped-icons/icon-registry-data.d.ts +10 -0
- package/dist/modules/add-to-cart/src/components/mapped-icons/icon-registry.d.ts +9 -0
- package/dist/modules/add-to-cart/src/components/mapped-icons/mapped-icon.d.ts +15 -0
- package/dist/modules/add-to-cart/src/reducers/index.d.ts +1 -1
- package/dist/modules/add-to-cart/src/sagas/cart-service-response/index.d.ts +1 -0
- package/dist/modules/add-to-cart/src/sagas/cart-service-response/sagas.d.ts +11 -0
- package/dist/modules/add-to-cart/src/sagas/index.d.ts +9 -0
- package/dist/modules/add-to-cart/src/selectors/catalogItems/selectors.d.ts +2 -0
- package/dist/modules/add-to-cart/src/selectors/index.d.ts +1 -1
- package/dist/modules/add-to-cart/src/selectors/offerDataState/index.d.ts +1 -0
- package/dist/modules/add-to-cart/src/selectors/{globalOfferDataState → offerDataState}/selectors.d.ts +1 -1
- package/dist/modules/instant-purchase/src/actions/device-pay.d.ts +60 -0
- package/dist/modules/instant-purchase/src/actions/index.d.ts +2 -0
- package/dist/modules/instant-purchase/src/actions/instant-purchase.d.ts +47 -2
- package/dist/modules/instant-purchase/src/actions/paypal.d.ts +35 -0
- package/dist/modules/instant-purchase/src/channels/channel.d.ts +5 -1
- package/dist/modules/instant-purchase/src/components/catalog-device-pay-button/apple-pay-button.d.ts +36 -0
- package/dist/modules/instant-purchase/src/components/catalog-device-pay-button/catalog-device-pay-button.d.ts +59 -0
- package/dist/modules/instant-purchase/src/components/catalog-device-pay-button/factory.d.ts +2 -0
- package/dist/modules/instant-purchase/src/components/catalog-device-pay-button/retryable-device-pay-error.d.ts +1 -0
- package/dist/modules/instant-purchase/src/components/catalog-discount-callout-tag/catalog-discount-callout-tag.d.ts +1 -1
- package/dist/modules/instant-purchase/src/components/catalog-dropdown/catalog-dropdown.d.ts +6 -0
- package/dist/modules/instant-purchase/src/components/catalog-dropdown/dropdown-options-context.d.ts +17 -0
- package/dist/modules/instant-purchase/src/components/catalog-dropdown/factory.d.ts +2 -0
- package/dist/modules/instant-purchase/src/components/catalog-imagegallery/catalog-gallery-index.d.ts +1 -0
- package/dist/modules/instant-purchase/src/components/catalog-imagegallery/catalog-image-gallery.d.ts +6 -0
- package/dist/modules/instant-purchase/src/components/catalog-imagegallery/factory.d.ts +2 -0
- package/dist/modules/instant-purchase/src/components/catalog-selectors-stacked/catalog-selectors-stacked.d.ts +6 -0
- package/dist/modules/instant-purchase/src/components/catalog-selectors-stacked/factory.d.ts +2 -0
- package/dist/modules/instant-purchase/src/components/catalog-thumbnail-gallery/catalog-thumbnail-gallery.d.ts +6 -0
- package/dist/modules/instant-purchase/src/components/catalog-thumbnail-gallery/factory.d.ts +2 -0
- package/dist/modules/instant-purchase/src/components/checkout-state-button-trigger/checkout-state-button-trigger.d.ts +2 -0
- package/dist/modules/instant-purchase/src/components/{catalog-image-gallery → escapehatch-catalog-image-gallery}/catalog-image-gallery.d.ts +6 -0
- package/dist/modules/instant-purchase/src/components/snackbar/snackbar.d.ts +25 -0
- package/dist/modules/instant-purchase/src/constants/device-pay-error.d.ts +4 -0
- package/dist/modules/instant-purchase/src/constants/device-pay-providers.d.ts +26 -0
- package/dist/modules/instant-purchase/src/constants/index.d.ts +2 -0
- package/dist/modules/instant-purchase/src/models/state/device-pay-availability.d.ts +5 -0
- package/dist/modules/instant-purchase/src/models/state/index.d.ts +1 -0
- package/dist/modules/instant-purchase/src/models/state/instant-purchase.d.ts +68 -1
- package/dist/modules/instant-purchase/src/reducers/device-pay-availability/index.d.ts +1 -0
- package/dist/modules/instant-purchase/src/reducers/device-pay-availability/reducer.d.ts +4 -0
- package/dist/modules/instant-purchase/src/reducers/index.d.ts +15 -2
- package/dist/modules/instant-purchase/src/reducers/instant-purchase/index.d.ts +2 -0
- package/dist/modules/instant-purchase/src/reducers/instant-purchase/purchase-id/index.d.ts +1 -0
- package/dist/modules/instant-purchase/src/reducers/instant-purchase/purchase-id/reducer.d.ts +4 -0
- package/dist/modules/instant-purchase/src/reducers/instant-purchase/tax-and-shipping-data-cache/index.d.ts +1 -0
- package/dist/modules/instant-purchase/src/reducers/instant-purchase/tax-and-shipping-data-cache/reducer.d.ts +4 -0
- package/dist/modules/instant-purchase/src/reducers/paypal-purchase-context/index.d.ts +2 -0
- package/dist/modules/instant-purchase/src/reducers/paypal-purchase-context/reducer.d.ts +5 -0
- package/dist/modules/instant-purchase/src/reducers/paypal-transaction-details/index.d.ts +2 -0
- package/dist/modules/instant-purchase/src/reducers/paypal-transaction-details/reducer.d.ts +5 -0
- package/dist/modules/instant-purchase/src/sagas/checkout-lifecycle/sagas.d.ts +1 -1
- package/dist/modules/instant-purchase/src/sagas/device-pay/index.d.ts +1 -0
- package/dist/modules/instant-purchase/src/sagas/device-pay/sagas.d.ts +116 -0
- package/dist/modules/instant-purchase/src/sagas/dismiss-overlay/index.d.ts +1 -0
- package/dist/modules/instant-purchase/src/sagas/dismiss-overlay/sagas.d.ts +7 -0
- package/dist/modules/instant-purchase/src/sagas/error-codes.d.ts +14 -0
- package/dist/modules/instant-purchase/src/sagas/index.d.ts +14 -1
- package/dist/modules/instant-purchase/src/sagas/instant-purchase/sagas.d.ts +20 -81
- package/dist/modules/instant-purchase/src/sagas/instant-purchase-signals.d.ts +4 -0
- package/dist/modules/instant-purchase/src/sagas/layout-events.d.ts +9 -0
- package/dist/modules/instant-purchase/src/sagas/offer-engagement.d.ts +3 -0
- package/dist/modules/instant-purchase/src/sagas/paypal/index.d.ts +1 -0
- package/dist/modules/instant-purchase/src/sagas/paypal/sagas.d.ts +83 -0
- package/dist/modules/instant-purchase/src/sagas/tax-and-shipping/index.d.ts +1 -0
- package/dist/modules/instant-purchase/src/sagas/tax-and-shipping/sagas.d.ts +50 -0
- package/dist/modules/instant-purchase/src/sagas/variant-action-overrides.d.ts +11 -0
- package/dist/modules/instant-purchase/src/selectors/creative/index.d.ts +1 -0
- package/dist/modules/instant-purchase/src/selectors/creative/selectors.d.ts +5 -0
- package/dist/modules/instant-purchase/src/selectors/device-pay-availability/index.d.ts +1 -0
- package/dist/modules/instant-purchase/src/selectors/device-pay-availability/selectors.d.ts +13 -0
- package/dist/modules/instant-purchase/src/selectors/index.d.ts +4 -0
- package/dist/modules/instant-purchase/src/selectors/paypal-transaction-details/index.d.ts +1 -0
- package/dist/modules/instant-purchase/src/selectors/paypal-transaction-details/selectors.d.ts +3 -0
- package/dist/modules/instant-purchase/src/selectors/tax-and-shipping/index.d.ts +1 -0
- package/dist/modules/instant-purchase/src/selectors/tax-and-shipping/selectors.d.ts +3 -0
- package/dist/modules/instant-purchase/src/utils/create-tax-and-shipping-cache-key.d.ts +4 -0
- package/dist/modules/layouts-xp-sandbox/src/reducers/index.d.ts +1 -1
- package/dist/modules/layouts-xp-sandbox/src/sagas/index.d.ts +9 -0
- package/dist/modules/layouts-xp-sandbox/src/sagas/offer-engagement/sagas.d.ts +1 -1
- package/dist/modules/standard-marketing/src/components/escape-hatch/factory.d.ts +2 -0
- package/dist/modules/standard-marketing/src/components/escape-hatch-checkbox/escape-hatch-checkbox.d.ts +28 -0
- package/dist/modules/standard-marketing/src/reducers/index.d.ts +1 -1
- package/dist/modules/standard-marketing/src/sagas/index.d.ts +9 -0
- package/dist/modules/standard-marketing/src/sagas/offer-engagement/sagas.d.ts +3 -3
- package/node_modules/@rokt/dcui-layout-schema/dist/schema.d.ts +4694 -117
- package/node_modules/@rokt/dcui-layout-schema/dist/schema.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/dist/tsconfig.tsbuildinfo +1 -1
- package/node_modules/@rokt/dcui-layout-schema/package.json +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.1/index.d.ts +953 -29
- package/node_modules/@rokt/dcui-layout-schema/v0.1/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.10/index.d.ts +1087 -35
- package/node_modules/@rokt/dcui-layout-schema/v0.10/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.11/index.d.ts +1143 -35
- package/node_modules/@rokt/dcui-layout-schema/v0.11/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.12/index.d.ts +1147 -35
- package/node_modules/@rokt/dcui-layout-schema/v0.12/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.13/index.d.ts +1218 -35
- package/node_modules/@rokt/dcui-layout-schema/v0.13/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.14/index.d.ts +1258 -37
- package/node_modules/@rokt/dcui-layout-schema/v0.14/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.15/index.d.ts +1272 -38
- package/node_modules/@rokt/dcui-layout-schema/v0.15/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.16/index.d.ts +1334 -38
- package/node_modules/@rokt/dcui-layout-schema/v0.16/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.17/index.d.ts +1353 -39
- package/node_modules/@rokt/dcui-layout-schema/v0.17/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.18/index.d.ts +1406 -39
- package/node_modules/@rokt/dcui-layout-schema/v0.18/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.19/index.d.ts +1407 -39
- package/node_modules/@rokt/dcui-layout-schema/v0.19/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.2/index.d.ts +1013 -33
- package/node_modules/@rokt/dcui-layout-schema/v0.2/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.20/index.d.ts +1439 -39
- package/node_modules/@rokt/dcui-layout-schema/v0.20/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.21/index.d.ts +1482 -39
- package/node_modules/@rokt/dcui-layout-schema/v0.21/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.22/index.d.ts +1512 -39
- package/node_modules/@rokt/dcui-layout-schema/v0.22/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.23/index.d.ts +1522 -40
- package/node_modules/@rokt/dcui-layout-schema/v0.23/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.3/index.d.ts +1013 -33
- package/node_modules/@rokt/dcui-layout-schema/v0.3/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.4/index.d.ts +1041 -33
- package/node_modules/@rokt/dcui-layout-schema/v0.4/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.5/index.d.ts +1065 -33
- package/node_modules/@rokt/dcui-layout-schema/v0.5/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.6/index.d.ts +1065 -33
- package/node_modules/@rokt/dcui-layout-schema/v0.6/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.7/index.d.ts +1066 -33
- package/node_modules/@rokt/dcui-layout-schema/v0.7/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.8/index.d.ts +1069 -33
- package/node_modules/@rokt/dcui-layout-schema/v0.8/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v0.9/index.d.ts +1070 -33
- package/node_modules/@rokt/dcui-layout-schema/v0.9/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v1.0/index.d.ts +1827 -59
- package/node_modules/@rokt/dcui-layout-schema/v1.0/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v1.1/index.d.ts +1851 -59
- package/node_modules/@rokt/dcui-layout-schema/v1.1/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v1.10/index.d.ts +5322 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.10/index.js +4 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.11/index.d.ts +5486 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.11/index.js +4 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.12/index.d.ts +5496 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.12/index.js +4 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.13/index.d.ts +5498 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.13/index.js +4 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.14/index.d.ts +5828 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.14/index.js +4 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.15/index.d.ts +6085 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.15/index.js +4 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.16/index.d.ts +6324 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.16/index.js +4 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.17/index.d.ts +6439 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.17/index.js +4 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.18/index.d.ts +6439 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.18/index.js +4 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.19/index.d.ts +6439 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.19/index.js +4 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.2/index.d.ts +1861 -59
- package/node_modules/@rokt/dcui-layout-schema/v1.2/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v1.20/index.d.ts +6558 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.20/index.js +4 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.3/index.d.ts +1948 -59
- package/node_modules/@rokt/dcui-layout-schema/v1.3/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v1.4/index.d.ts +2115 -60
- package/node_modules/@rokt/dcui-layout-schema/v1.4/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v1.5/index.d.ts +2137 -60
- package/node_modules/@rokt/dcui-layout-schema/v1.5/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v1.6/index.d.ts +2308 -60
- package/node_modules/@rokt/dcui-layout-schema/v1.6/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v1.7/index.d.ts +2578 -68
- package/node_modules/@rokt/dcui-layout-schema/v1.7/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v1.8/index.d.ts +2680 -68
- package/node_modules/@rokt/dcui-layout-schema/v1.8/index.js +1 -1
- package/node_modules/@rokt/dcui-layout-schema/v1.9/index.d.ts +5222 -0
- package/node_modules/@rokt/dcui-layout-schema/v1.9/index.js +4 -0
- package/node_modules/@rokt/partner-integration/README.md +85 -0
- package/node_modules/@rokt/partner-integration/dist/cart/index.barrel.d.ts +2 -0
- package/node_modules/@rokt/partner-integration/dist/cart/index.d.ts +3 -0
- package/node_modules/@rokt/partner-integration/dist/cart/v1/delete-alert-partner-message-body.d.ts +7 -0
- package/node_modules/@rokt/partner-integration/dist/cart/v1/events.d.ts +23 -0
- package/node_modules/@rokt/partner-integration/dist/cart/v1/index.d.ts +5 -0
- package/node_modules/@rokt/partner-integration/dist/cart/v1/update-cart-item.d.ts +48 -0
- package/node_modules/@rokt/partner-integration/dist/cart/v1/upsert-alert-partner-message-body.d.ts +15 -0
- package/node_modules/@rokt/partner-integration/dist/cart/v1/upsert-delivery-details-message-body.d.ts +12 -0
- package/node_modules/@rokt/partner-integration/dist/cart/v2/cart-item-updated-placement-message-body.d.ts +48 -0
- package/node_modules/@rokt/partner-integration/dist/cart/v2/index.d.ts +4 -0
- package/node_modules/@rokt/partner-integration/dist/cart/v2/partner-message.d.ts +8 -0
- package/node_modules/@rokt/partner-integration/dist/cart/v2/placement-message.d.ts +10 -0
- package/node_modules/@rokt/partner-integration/dist/cart/v2/update-cart-item-partner-message-body.d.ts +4 -0
- package/node_modules/@rokt/partner-integration/dist/core/events.d.ts +45 -0
- package/node_modules/@rokt/partner-integration/dist/core/index.d.ts +1 -0
- package/node_modules/@rokt/partner-integration/dist/delivery-details/delivery-details.d.ts +20 -0
- package/node_modules/@rokt/partner-integration/dist/delivery-details/index.barrel.d.ts +2 -0
- package/node_modules/@rokt/partner-integration/dist/delivery-details/index.d.ts +2 -0
- package/node_modules/@rokt/partner-integration/dist/delivery-details/placement-message.d.ts +10 -0
- package/node_modules/@rokt/partner-integration/dist/extensions/extension-mapping.d.ts +9 -0
- package/node_modules/@rokt/partner-integration/dist/extensions/extension.d.ts +6 -0
- package/node_modules/@rokt/partner-integration/dist/extensions/index.barrel.d.ts +2 -0
- package/node_modules/@rokt/partner-integration/dist/extensions/index.d.ts +2 -0
- package/node_modules/@rokt/partner-integration/dist/index.d.ts +11 -0
- package/node_modules/@rokt/partner-integration/dist/index.js +1 -0
- package/node_modules/@rokt/partner-integration/dist/instant-purchase/cart-item-instant-purchase-message-body.d.ts +6 -0
- package/node_modules/@rokt/partner-integration/dist/instant-purchase/cart-item-instant-purchase-response-message-body.d.ts +11 -0
- package/node_modules/@rokt/partner-integration/dist/instant-purchase/index.barrel.d.ts +5 -0
- package/node_modules/@rokt/partner-integration/dist/instant-purchase/index.d.ts +2 -0
- package/node_modules/@rokt/partner-integration/dist/instant-purchase/partner-message.d.ts +8 -0
- package/node_modules/@rokt/partner-integration/dist/instant-purchase/placement-message.d.ts +9 -0
- package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/index.barrel.d.ts +5 -0
- package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/index.d.ts +1 -0
- package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/partner-message.d.ts +8 -0
- package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/placement-message.d.ts +9 -0
- package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/upsell-item-instant-purchase-message-body.d.ts +8 -0
- package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/upsell-item-instant-purchase-response-message-body.d.ts +11 -0
- package/node_modules/@rokt/partner-integration/dist/instant-purchase/v2/upsell-item.d.ts +26 -0
- package/node_modules/@rokt/partner-integration/dist/journey/index.barrel.d.ts +1 -0
- package/node_modules/@rokt/partner-integration/dist/journey/index.d.ts +2 -0
- package/node_modules/@rokt/partner-integration/dist/journey/journey-extension.d.ts +39 -0
- package/node_modules/@rokt/partner-integration/dist/link-navigation/index.d.ts +2 -0
- package/node_modules/@rokt/partner-integration/dist/link-navigation/link-navigation-message.d.ts +9 -0
- package/node_modules/@rokt/partner-integration/dist/link-navigation/link-navigation-request-body.d.ts +3 -0
- package/node_modules/@rokt/partner-integration/dist/partner-validation/events.d.ts +17 -0
- package/node_modules/@rokt/partner-integration/dist/partner-validation/index.barrel.d.ts +4 -0
- package/node_modules/@rokt/partner-integration/dist/partner-validation/index.d.ts +2 -0
- package/node_modules/@rokt/partner-integration/dist/partner-validation/partner-validation-extension.d.ts +7 -0
- package/node_modules/@rokt/partner-integration/dist/partner-validation/partner-validation-status.d.ts +10 -0
- package/node_modules/@rokt/partner-integration/dist/partner-validation/set-partner-validation-status.d.ts +12 -0
- package/node_modules/@rokt/partner-integration/dist/promotions-extension/index.d.ts +2 -0
- package/node_modules/@rokt/partner-integration/dist/promotions-extension/realtime-conversion-promotion-events.d.ts +6 -0
- package/node_modules/@rokt/partner-integration/dist/promotions-extension/realtime-conversion-promotion-payload.d.ts +1 -0
- package/node_modules/@rokt/partner-integration/dist/thank-you-page/index.barrel.d.ts +1 -0
- package/node_modules/@rokt/partner-integration/dist/thank-you-page/index.d.ts +2 -0
- package/node_modules/@rokt/partner-integration/dist/thank-you-page/thank-you-page-extension.d.ts +22 -0
- package/node_modules/@rokt/partner-integration/dist/upsells-offers/index.barrel.d.ts +5 -0
- package/node_modules/@rokt/partner-integration/dist/upsells-offers/index.d.ts +2 -0
- package/node_modules/@rokt/partner-integration/dist/upsells-offers/partner-message.d.ts +9 -0
- package/node_modules/@rokt/partner-integration/dist/upsells-offers/placement-message.d.ts +21 -0
- package/node_modules/@rokt/partner-integration/dist/upsells-offers/upsell-creative-sent-message-body.d.ts +14 -0
- package/node_modules/@rokt/partner-integration/dist/upsells-offers/upsells-offer.d.ts +35 -0
- package/node_modules/@rokt/partner-integration/dist/upsells-offers/upsells-offers-sent-body.d.ts +11 -0
- package/node_modules/@rokt/partner-integration/dist/user-action/index.barrel.d.ts +2 -0
- package/node_modules/@rokt/partner-integration/dist/user-action/index.d.ts +2 -0
- package/node_modules/@rokt/partner-integration/dist/user-action/user-action-event.d.ts +11 -0
- package/node_modules/@rokt/partner-integration/dist/user-action/user-action-extension.d.ts +4 -0
- package/node_modules/@rokt/partner-integration/package.json +34 -0
- package/node_modules/@rokt/plugin/bootstrap/bootstrap.d.ts +1 -2
- package/node_modules/@rokt/plugin/bootstrap/bootstrap.js +5 -30
- package/node_modules/@rokt/plugin/interface/context.d.ts +1 -0
- package/node_modules/@rokt/plugin/interface/display.d.ts +1 -0
- package/node_modules/@rokt/plugin/lib/index.barrel.d.ts +1 -14
- package/node_modules/@rokt/plugin/lib/index.barrel.js +1 -14
- package/node_modules/@rokt/plugin/lib/is-preload-frame.d.ts +1 -1
- package/node_modules/@rokt/plugin/lib/is-preload-frame.js +3 -1
- package/node_modules/@rokt/plugin/lib/plugin-instance.d.ts +13 -27
- package/node_modules/@rokt/plugin/lib/plugin-instance.js +1 -99
- package/node_modules/@rokt/plugin/package.json +15 -16
- package/node_modules/@rokt/plugin/standalone/standalone.d.ts +14 -2
- package/node_modules/@rokt/plugin/standalone/standalone.js +1 -0
- package/node_modules/@rokt/plugin/testing/mock-child-plugin-factory.d.ts +1 -1
- package/node_modules/@rokt/plugin/testing/mock-child-plugin-factory.js +2 -1
- package/node_modules/@rokt/plugin/testing/mock-child-plugin.d.ts +5 -5
- package/node_modules/@rokt/plugin/testing/mock-child-plugin.js +6 -5
- package/node_modules/@rokt/plugin/testing/mock-context.d.ts +18 -17
- package/node_modules/@rokt/plugin/testing/mock-context.js +19 -17
- package/node_modules/@rokt/plugin/testing/mock-display.d.ts +1 -1
- package/node_modules/@rokt/plugin/testing/mock-display.js +2 -1
- package/node_modules/@rokt/plugin/testing/mock-engine.d.ts +1 -2
- package/node_modules/@rokt/plugin/testing/mock-error.d.ts +1 -1
- package/node_modules/@rokt/plugin/testing/mock-error.js +2 -1
- package/node_modules/@rokt/plugin/testing/mock-function.d.ts +1 -0
- package/node_modules/@rokt/plugin/testing/mock-function.js +31 -0
- package/node_modules/@rokt/plugin/testing/mock-metrics.d.ts +4 -4
- package/node_modules/@rokt/plugin/testing/mock-metrics.js +5 -4
- package/node_modules/@rokt/plugin/testing/mock-parent-interaction.d.ts +2 -2
- package/node_modules/@rokt/plugin/testing/mock-parent-interaction.js +3 -2
- package/node_modules/@rokt/plugin/testing/mock-partner-interaction.d.ts +2 -2
- package/node_modules/@rokt/plugin/testing/mock-partner-interaction.js +3 -2
- package/node_modules/@rokt/plugin/testing/mock-rdn.d.ts +3 -3
- package/node_modules/@rokt/plugin/testing/mock-rdn.js +4 -3
- package/node_modules/@rokt/plugin/types/library-loaded.d.ts +0 -2
- package/node_modules/@rokt/plugin/types/library-loaded.js +0 -2
- package/package.json +8 -7
- package/node_modules/@rokt/plugin/lib/bootstrap-v1.d.ts +0 -3
- package/node_modules/@rokt/plugin/lib/bootstrap-v1.js +0 -9
- package/node_modules/@rokt/plugin/lib/child-plugin-factory.d.ts +0 -14
- package/node_modules/@rokt/plugin/lib/child-plugin-factory.js +0 -12
- package/node_modules/@rokt/plugin/lib/child-plugin.d.ts +0 -26
- package/node_modules/@rokt/plugin/lib/child-plugin.js +0 -81
- package/node_modules/@rokt/plugin/lib/context.d.ts +0 -23
- package/node_modules/@rokt/plugin/lib/context.js +0 -95
- package/node_modules/@rokt/plugin/lib/debug.d.ts +0 -19
- package/node_modules/@rokt/plugin/lib/debug.js +0 -36
- package/node_modules/@rokt/plugin/lib/display.d.ts +0 -13
- package/node_modules/@rokt/plugin/lib/display.js +0 -81
- package/node_modules/@rokt/plugin/lib/error.d.ts +0 -9
- package/node_modules/@rokt/plugin/lib/error.js +0 -35
- package/node_modules/@rokt/plugin/lib/is-inside-plugin-container.d.ts +0 -8
- package/node_modules/@rokt/plugin/lib/is-inside-plugin-container.js +0 -6
- package/node_modules/@rokt/plugin/lib/metrics.d.ts +0 -13
- package/node_modules/@rokt/plugin/lib/metrics.js +0 -55
- package/node_modules/@rokt/plugin/lib/parent-interaction.d.ts +0 -13
- package/node_modules/@rokt/plugin/lib/parent-interaction.js +0 -46
- package/node_modules/@rokt/plugin/lib/partner-interaction.d.ts +0 -11
- package/node_modules/@rokt/plugin/lib/partner-interaction.js +0 -35
- package/node_modules/@rokt/plugin/lib/plugin-runtime-connection.d.ts +0 -6
- package/node_modules/@rokt/plugin/lib/plugin-runtime-connection.js +0 -35
- package/node_modules/@rokt/plugin/lib/private-context.d.ts +0 -39
- package/node_modules/@rokt/plugin/lib/private-context.js +0 -76
- package/node_modules/@rokt/plugin/lib/rdn.d.ts +0 -15
- package/node_modules/@rokt/plugin/lib/rdn.js +0 -58
- package/node_modules/@rokt/plugin/lib/sender-receiver.d.ts +0 -5
- package/node_modules/@rokt/plugin/lib/sender-receiver.js +0 -1
- package/node_modules/@rokt/plugin/lib/theme.d.ts +0 -8
- package/node_modules/@rokt/plugin/lib/theme.js +0 -8
- package/node_modules/@rokt/plugin/lib/to-observable.d.ts +0 -4
- package/node_modules/@rokt/plugin/lib/to-observable.js +0 -12
- package/node_modules/@rokt/plugin/lib/unsafe.d.ts +0 -3
- package/node_modules/@rokt/plugin/lib/unsafe.js +0 -2
- package/node_modules/@rokt/plugin/lib/with-error-reporting.d.ts +0 -2
- package/node_modules/@rokt/plugin/lib/with-error-reporting.js +0 -22
- /package/dist/libraries/{layout-renderer-utils → dcui-components}/src/components/close-button/close-button.d.ts +0 -0
- /package/dist/libraries/{layout-renderer-utils → dcui-components}/src/components/close-button/index.d.ts +0 -0
- /package/dist/{modules/add-to-cart/src/selectors/globalOfferDataState → libraries/layout-renderer-utils/src/selectors/fired-events}/index.d.ts +0 -0
- /package/dist/modules/instant-purchase/src/components/{catalog-drop-down → escapehatch-catalog-drop-down}/catalog-drop-down.d.ts +0 -0
- /package/dist/modules/instant-purchase/src/components/{catalog-image-gallery → escapehatch-catalog-image-gallery}/constants.d.ts +0 -0
|
@@ -1,818 +1,2543 @@
|
|
|
1
|
+
/** A URL value that supports light and dark mode themes. */
|
|
1
2
|
export interface ThemeUrl {
|
|
3
|
+
/** The URL for light mode. */
|
|
2
4
|
light: string;
|
|
5
|
+
/** The URL for dark mode. Omit to use the light mode URL in both themes. */
|
|
3
6
|
dark?: null | string;
|
|
4
7
|
}
|
|
5
|
-
|
|
6
|
-
|
|
8
|
+
/**
|
|
9
|
+
* Positioning of a background image within its container.
|
|
10
|
+
* Specifies which area of the container the image aligns to.
|
|
11
|
+
*/
|
|
12
|
+
export type BackgroundImagePosition =
|
|
13
|
+
/** Positions the image at the top center. */
|
|
14
|
+
"top"
|
|
15
|
+
/** Positions the image at the center right. */
|
|
16
|
+
| "right"
|
|
17
|
+
/** Positions the image at the bottom center. */
|
|
18
|
+
| "bottom"
|
|
19
|
+
/** Positions the image at the center left. */
|
|
20
|
+
| "left"
|
|
21
|
+
/** Positions the image at the center of the container. */
|
|
22
|
+
| "center"
|
|
23
|
+
/** Positions the image at the top right corner. */
|
|
24
|
+
| "top-right"
|
|
25
|
+
/** Positions the image at the top left corner. */
|
|
26
|
+
| "top-left"
|
|
27
|
+
/** Positions the image at the bottom left corner. */
|
|
28
|
+
| "bottom-left"
|
|
29
|
+
/** Positions the image at the bottom right corner. */
|
|
30
|
+
| "bottom-right";
|
|
31
|
+
/**
|
|
32
|
+
* How a background image is scaled to fit its container.
|
|
33
|
+
* Controls the trade-off between covering the container and preserving aspect ratio.
|
|
34
|
+
*/
|
|
35
|
+
export type BackgroundImageScale =
|
|
36
|
+
/** Scales the image to cover the entire container, cropping edges that overflow. */
|
|
37
|
+
"crop"
|
|
38
|
+
/** Scales the image to fit entirely within the container, potentially leaving empty space. */
|
|
39
|
+
| "fit"
|
|
40
|
+
/** Stretches the image to fill the container exactly, potentially distorting aspect ratio. */
|
|
41
|
+
| "fill";
|
|
42
|
+
/**
|
|
43
|
+
* A background image with themed URL support.
|
|
44
|
+
* Use this to display an image behind element content with control over positioning and scaling.
|
|
45
|
+
*/
|
|
7
46
|
export interface BackgroundImage {
|
|
47
|
+
/** The image URL. Uses themed values for light/dark mode. */
|
|
8
48
|
url: ThemeUrl;
|
|
49
|
+
/** Where the image is positioned within the element. */
|
|
9
50
|
position?: null | BackgroundImagePosition;
|
|
51
|
+
/** How the image is scaled to fit the element. */
|
|
10
52
|
scale?: null | BackgroundImageScale;
|
|
11
53
|
}
|
|
54
|
+
/**
|
|
55
|
+
* A color value that supports light and dark mode themes. Always provide the light mode value.
|
|
56
|
+
* Provide dark mode only if the color should differ from light mode.
|
|
57
|
+
* Colors are hex strings in `#RRGGBB` or `#AARRGGBB` format. NOTE: the alpha channel comes
|
|
58
|
+
* BEFORE the RGB channels (e.g. `#80000000` for 50% transparent black), unlike CSS where alpha is last.
|
|
59
|
+
*/
|
|
12
60
|
export interface ThemeColor {
|
|
61
|
+
/** The color hex code for light mode. Format: `#RRGGBB` or `#AARRGGBB` (e.g. "#FF0000", "#80000000"). */
|
|
13
62
|
light: string;
|
|
63
|
+
/** The color hex code for dark mode. Omit to use the light mode value in both themes. */
|
|
14
64
|
dark?: null | string;
|
|
15
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
* Background styling properties for elements.
|
|
68
|
+
* All fields are optional. Only include the properties you want to override.
|
|
69
|
+
*/
|
|
16
70
|
export interface BackgroundStylingProperties {
|
|
71
|
+
/** The background fill color. */
|
|
17
72
|
backgroundColor?: null | ThemeColor;
|
|
73
|
+
/** A background image to display behind the element content. */
|
|
18
74
|
backgroundImage?: null | BackgroundImage;
|
|
19
75
|
}
|
|
76
|
+
/** A styling block that defines styles for different interaction states. The 'default' state is required; other states are optional and override default styles when active. */
|
|
20
77
|
export interface BasicStateStylingBlock<StyleProperties> {
|
|
78
|
+
/** The base styles applied in the normal state. This is always required. */
|
|
21
79
|
default: StyleProperties;
|
|
80
|
+
/** Styles applied when the element is being pressed/clicked. Only applicable to interactive elements. */
|
|
22
81
|
pressed?: null | StyleProperties;
|
|
82
|
+
/** Styles applied when the cursor is over the element. Only applicable to interactive elements. */
|
|
23
83
|
hovered?: null | StyleProperties;
|
|
84
|
+
/** Styles applied when the element has keyboard focus. */
|
|
24
85
|
focussed?: null | StyleProperties;
|
|
86
|
+
/** Styles applied when the element is disabled. */
|
|
25
87
|
disabled?: null | StyleProperties;
|
|
26
88
|
}
|
|
27
|
-
|
|
89
|
+
/**
|
|
90
|
+
* Width value specification. MUST be an object with 'type' and 'value' properties.
|
|
91
|
+
* Do NOT use bare numbers or CSS strings. Example: {"type": "percentage", "value": 100}.
|
|
92
|
+
*/
|
|
93
|
+
export type DimensionWidthValue =
|
|
94
|
+
/** A fixed width in platform units (px on Web, pt on iOS, dp on Android). Value: {"type": "fixed", "value": <number>}. */
|
|
95
|
+
{
|
|
28
96
|
type: "fixed";
|
|
29
97
|
value: number;
|
|
30
|
-
}
|
|
98
|
+
}
|
|
99
|
+
/** A percentage of the parent container width. Value: {"type": "percentage", "value": <0-100>}. */
|
|
100
|
+
| {
|
|
31
101
|
type: "percentage";
|
|
32
102
|
value: number;
|
|
33
|
-
}
|
|
103
|
+
}
|
|
104
|
+
/** Sizes to fit content. Value: {"type": "fit", "value": "wrap-content" or "fit-width"}. */
|
|
105
|
+
| {
|
|
34
106
|
type: "fit";
|
|
35
107
|
value: DimensionWidthFitValue;
|
|
36
108
|
};
|
|
37
|
-
|
|
109
|
+
/**
|
|
110
|
+
* Height value specification. MUST be an object with 'type' and 'value' properties.
|
|
111
|
+
* Do NOT use bare numbers or CSS strings. Example: {"type": "fixed", "value": 200}.
|
|
112
|
+
*/
|
|
113
|
+
export type DimensionHeightValue =
|
|
114
|
+
/** A fixed height in platform units (px on Web, pt on iOS, dp on Android). Value: {"type": "fixed", "value": <number>}. */
|
|
115
|
+
{
|
|
38
116
|
type: "fixed";
|
|
39
117
|
value: number;
|
|
40
|
-
}
|
|
118
|
+
}
|
|
119
|
+
/** A percentage of the parent container height. Value: {"type": "percentage", "value": <0-100>}. */
|
|
120
|
+
| {
|
|
41
121
|
type: "percentage";
|
|
42
122
|
value: number;
|
|
43
|
-
}
|
|
123
|
+
}
|
|
124
|
+
/** Sizes to fit content. Value: {"type": "fit", "value": "wrap-content" or "fit-height"}. */
|
|
125
|
+
| {
|
|
44
126
|
type: "fit";
|
|
45
127
|
value: DimensionHeightFitValue;
|
|
46
128
|
};
|
|
129
|
+
/**
|
|
130
|
+
* Dimension and size styling properties. Numeric values are in platform units (px on Web, pt on iOS, dp on Android). Plain numbers (e.g. minWidth: 100)
|
|
131
|
+
* while width/height use typed objects. Do NOT use bare numbers for width or height.
|
|
132
|
+
* All fields are optional. Only include the properties you want to override.
|
|
133
|
+
*/
|
|
47
134
|
export interface DimensionStylingProperties {
|
|
135
|
+
/** Minimum width in platform units. */
|
|
48
136
|
minWidth?: null | number;
|
|
137
|
+
/** Maximum width in platform units. */
|
|
49
138
|
maxWidth?: null | number;
|
|
139
|
+
/**
|
|
140
|
+
* The width value. MUST be a typed object, e.g. {"type": "percentage", "value": 100}.
|
|
141
|
+
* Do NOT use bare numbers.
|
|
142
|
+
*/
|
|
50
143
|
width?: null | DimensionWidthValue;
|
|
144
|
+
/** Minimum height in platform units. */
|
|
51
145
|
minHeight?: null | number;
|
|
146
|
+
/** Maximum height in platform units. */
|
|
52
147
|
maxHeight?: null | number;
|
|
148
|
+
/**
|
|
149
|
+
* The height value. MUST be a typed object, e.g. {"type": "fixed", "value": 200}.
|
|
150
|
+
* Do NOT use bare numbers.
|
|
151
|
+
*/
|
|
53
152
|
height?: null | DimensionHeightValue;
|
|
153
|
+
/** Rotation around the z-axis in degrees. */
|
|
54
154
|
rotateZ?: null | number;
|
|
55
155
|
}
|
|
56
|
-
|
|
156
|
+
/** Cross-axis alignment options for flex containers and flex children. */
|
|
157
|
+
export type FlexAlignment =
|
|
158
|
+
/** Centers items along the cross axis. */
|
|
159
|
+
"center"
|
|
160
|
+
/** Aligns items to the start of the cross axis. */
|
|
161
|
+
| "flex-start"
|
|
162
|
+
/** Aligns items to the end of the cross axis. */
|
|
163
|
+
| "flex-end"
|
|
164
|
+
/** Stretches items to fill the cross axis. */
|
|
165
|
+
| "stretch";
|
|
166
|
+
/**
|
|
167
|
+
* Properties that control how this element behaves as a child within a flex container (Row or Column).
|
|
168
|
+
* All fields are optional. Only include the properties you want to override.
|
|
169
|
+
*/
|
|
57
170
|
export interface FlexChildStylingProperties {
|
|
171
|
+
/**
|
|
172
|
+
* The flex grow weight. Determines how remaining space is distributed.
|
|
173
|
+
* A child with weight 2 gets twice the extra space as one with weight 1.
|
|
174
|
+
*/
|
|
58
175
|
weight?: null | number;
|
|
176
|
+
/** The visual order of this child within its container. Lower values appear first. */
|
|
59
177
|
order?: null | number;
|
|
178
|
+
/** Overrides the parent container's alignItems for this specific child. */
|
|
60
179
|
alignSelf?: null | FlexAlignment;
|
|
61
180
|
}
|
|
181
|
+
/**
|
|
182
|
+
* Spacing properties for padding, margin and offset.
|
|
183
|
+
* Values are specified as space-separated strings of numeric values in platform units (px on Web, pt on iOS, dp on Android) following CSS shorthand.
|
|
184
|
+
* All fields are optional. Only include the properties you want to override.
|
|
185
|
+
*/
|
|
62
186
|
export interface SpacingStylingProperties {
|
|
187
|
+
/**
|
|
188
|
+
* Internal spacing between the element border and its content. Specified as a
|
|
189
|
+
* space-separated string of numeric values following CSS shorthand: '10' for all sides,
|
|
190
|
+
* '10 20' for vertical/horizontal, '10 20 10 20' for top/right/bottom/left.
|
|
191
|
+
*/
|
|
63
192
|
padding?: null | string;
|
|
193
|
+
/** External spacing around the outside of the element border. Same format as padding. */
|
|
64
194
|
margin?: null | string;
|
|
195
|
+
/** Positional offset from the element's normal position. Same format as padding. */
|
|
65
196
|
offset?: null | string;
|
|
66
197
|
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
export type
|
|
72
|
-
|
|
198
|
+
/**
|
|
199
|
+
* The weight (boldness) of the font. Values are CSS-standard numeric weights.
|
|
200
|
+
* MUST be one of the predefined weight values. Do NOT use arbitrary numbers.
|
|
201
|
+
*/
|
|
202
|
+
export type FontWeight =
|
|
203
|
+
/** Thin (Hairline). The lightest available weight. */
|
|
204
|
+
"100"
|
|
205
|
+
/** Extra Light (Ultra Light). */
|
|
206
|
+
| "200"
|
|
207
|
+
/** Light. */
|
|
208
|
+
| "300"
|
|
209
|
+
/** Normal / Regular. The default font weight. */
|
|
210
|
+
| "400"
|
|
211
|
+
/** Medium. Slightly bolder than normal. */
|
|
212
|
+
| "500"
|
|
213
|
+
/** Semi Bold (Demi Bold). */
|
|
214
|
+
| "600"
|
|
215
|
+
/** Bold. */
|
|
216
|
+
| "700"
|
|
217
|
+
/** Extra Bold (Ultra Bold). */
|
|
218
|
+
| "800"
|
|
219
|
+
/** Black (Heavy). The boldest available weight. */
|
|
220
|
+
| "900";
|
|
221
|
+
/**
|
|
222
|
+
* Horizontal text alignment within the text element.
|
|
223
|
+
* MUST use one of the specified alignment values. Do NOT use CSS text-align strings directly.
|
|
224
|
+
*/
|
|
225
|
+
export type FontJustification =
|
|
226
|
+
/** Aligns text to the left edge. */
|
|
227
|
+
"left"
|
|
228
|
+
/** Aligns text to the right edge. */
|
|
229
|
+
| "right"
|
|
230
|
+
/** Centers text horizontally. */
|
|
231
|
+
| "center"
|
|
232
|
+
/** Aligns text to the start edge (left in LTR, right in RTL). */
|
|
233
|
+
| "start"
|
|
234
|
+
/** Aligns text to the end edge (right in LTR, left in RTL). */
|
|
235
|
+
| "end"
|
|
236
|
+
/** Stretches text so each line fills the full width, adjusting spacing between words. */
|
|
237
|
+
| "justify";
|
|
238
|
+
/**
|
|
239
|
+
* Vertical alignment of text relative to the baseline.
|
|
240
|
+
* Use this to position text as superscript, subscript, or at the normal baseline.
|
|
241
|
+
*/
|
|
242
|
+
export type FontBaselineAlignment =
|
|
243
|
+
/** Raises text above the baseline (superscript). */
|
|
244
|
+
"super"
|
|
245
|
+
/** Lowers text below the baseline (subscript). */
|
|
246
|
+
| "sub"
|
|
247
|
+
/** Aligns text to the normal baseline position. */
|
|
248
|
+
| "baseline";
|
|
249
|
+
/**
|
|
250
|
+
* The style of the font.
|
|
251
|
+
* Controls whether text is rendered upright or italicised.
|
|
252
|
+
*/
|
|
253
|
+
export type FontStyle =
|
|
254
|
+
/** Standard upright text. */
|
|
255
|
+
"normal"
|
|
256
|
+
/** Italicised text. */
|
|
257
|
+
| "italic";
|
|
258
|
+
/**
|
|
259
|
+
* Controls text capitalisation.
|
|
260
|
+
* Applied as a visual transform; does not alter the underlying text data.
|
|
261
|
+
*/
|
|
262
|
+
export type TextTransform =
|
|
263
|
+
/** Capitalises the first letter of each word. */
|
|
264
|
+
"capitalize"
|
|
265
|
+
/** Transforms all text to uppercase. */
|
|
266
|
+
| "uppercase"
|
|
267
|
+
/** Transforms all text to lowercase. */
|
|
268
|
+
| "lowercase"
|
|
269
|
+
/** No transformation applied. */
|
|
270
|
+
| "none";
|
|
271
|
+
/**
|
|
272
|
+
* Decorative line applied to text.
|
|
273
|
+
* Use to add visual emphasis such as underline or strikethrough.
|
|
274
|
+
*/
|
|
275
|
+
export type TextDecoration =
|
|
276
|
+
/** Adds a line beneath the text. */
|
|
277
|
+
"underline"
|
|
278
|
+
/** Adds a line through the middle of the text. */
|
|
279
|
+
| "strike-through"
|
|
280
|
+
/** No decoration applied. */
|
|
281
|
+
| "none";
|
|
282
|
+
/**
|
|
283
|
+
* Typography styling properties for text elements.
|
|
284
|
+
* All fields are optional. Only include the properties you want to override.
|
|
285
|
+
*/
|
|
73
286
|
export interface TextStylingProperties {
|
|
287
|
+
/** The text color. Uses themed values for light/dark mode support. */
|
|
74
288
|
textColor?: null | ThemeColor;
|
|
289
|
+
/** Font size in platform units (px on Web, pt on iOS, dp on Android). */
|
|
75
290
|
fontSize?: null | number;
|
|
291
|
+
/** The font family name. Use 'rokt-icons' for icon fonts. */
|
|
76
292
|
fontFamily?: null | string;
|
|
293
|
+
/** The weight (boldness) of the font. */
|
|
77
294
|
fontWeight?: null | FontWeight;
|
|
295
|
+
/** Line height in platform units. Controls the spacing between lines of text. */
|
|
78
296
|
lineHeight?: null | number;
|
|
297
|
+
/** Horizontal text alignment within the element. */
|
|
79
298
|
horizontalTextAlign?: null | FontJustification;
|
|
299
|
+
/** Vertical alignment of text relative to the baseline. */
|
|
80
300
|
baselineTextAlign?: null | FontBaselineAlignment;
|
|
301
|
+
/** Normal or italic text rendering. */
|
|
81
302
|
fontStyle?: null | FontStyle;
|
|
303
|
+
/** Controls automatic text capitalisation. */
|
|
82
304
|
textTransform?: null | TextTransform;
|
|
305
|
+
/** Additional spacing between characters in platform units. */
|
|
83
306
|
letterSpacing?: null | number;
|
|
307
|
+
/** Decorative line applied to text (underline, strikethrough). */
|
|
84
308
|
textDecoration?: null | TextDecoration;
|
|
309
|
+
/** Maximum number of lines to display. Text beyond this limit is truncated. */
|
|
85
310
|
lineLimit?: null | number;
|
|
86
311
|
}
|
|
312
|
+
/** Visual styles for the BasicText node. */
|
|
87
313
|
export interface BasicTextStyle {
|
|
314
|
+
/** Width, height and rotation properties. */
|
|
88
315
|
dimension?: null | DimensionStylingProperties;
|
|
316
|
+
/** Properties controlling behaviour as a flex child. */
|
|
89
317
|
flexChild?: null | FlexChildStylingProperties;
|
|
318
|
+
/** Padding, margin and offset properties. */
|
|
90
319
|
spacing?: null | SpacingStylingProperties;
|
|
320
|
+
/** Background color and image properties. */
|
|
91
321
|
background?: null | BackgroundStylingProperties;
|
|
322
|
+
/** Typography properties. */
|
|
92
323
|
text?: null | TextStylingProperties;
|
|
93
324
|
}
|
|
325
|
+
/** Style elements for the BasicText node. */
|
|
94
326
|
export interface BasicTextElements {
|
|
327
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
95
328
|
own: BasicStateStylingBlock<BasicTextStyle>[];
|
|
96
329
|
}
|
|
330
|
+
/** The top-level style object for a node. Contains element styling and optional conditional transitions. */
|
|
97
331
|
export interface LayoutStyle<ElementsStyles, ConditionalTransitionsStyles> {
|
|
332
|
+
/** Defines the visual styles for each styleable element of this node. MUST contain at least an 'own' key with a styling block array. */
|
|
98
333
|
elements?: null | ElementsStyles;
|
|
334
|
+
/** Optional style transitions that are applied when runtime conditions (predicates) are met. */
|
|
99
335
|
conditionalTransitions?: null | ConditionalTransitionsStyles;
|
|
100
336
|
}
|
|
337
|
+
/** Defines a style transition that is applied when the specified predicates evaluate to true. */
|
|
101
338
|
export interface ConditionalStyleTransition<Styles, Predicates> {
|
|
339
|
+
/** The list of conditions that must all be true for this transition to apply. */
|
|
102
340
|
predicates: Predicates[];
|
|
341
|
+
/** The transition duration in milliseconds. */
|
|
103
342
|
duration: number;
|
|
343
|
+
/** The style properties to apply when all predicates are met. */
|
|
104
344
|
value: Styles;
|
|
105
345
|
}
|
|
346
|
+
/** Renders a paragraph of plain text. Use for simple text content. For text with HTML formatting use RichText instead. */
|
|
106
347
|
export interface BasicTextModel<Predicates> {
|
|
348
|
+
/** Visual styles for the text element. */
|
|
107
349
|
styles?: null | LayoutStyle<BasicTextElements, ConditionalStyleTransition<BasicTextTransitions, Predicates>>;
|
|
350
|
+
/** The text content to display. Supports data binding placeholders in the format %^DATA.key^% for dynamic creative content. */
|
|
108
351
|
value: string;
|
|
109
352
|
}
|
|
353
|
+
/** Transition definitions for the BasicText node. */
|
|
110
354
|
export interface BasicTextTransitions {
|
|
355
|
+
/** Transition properties for the primary element. */
|
|
111
356
|
own?: null | BasicTextStyle;
|
|
112
357
|
}
|
|
113
|
-
|
|
358
|
+
/**
|
|
359
|
+
* The visual style of the border line.
|
|
360
|
+
* MUST be one of the supported values. Do NOT use CSS border-style strings directly.
|
|
361
|
+
*/
|
|
362
|
+
export type BorderStyle =
|
|
363
|
+
/** A solid continuous border line. */
|
|
364
|
+
"solid"
|
|
365
|
+
/** A dashed border line. */
|
|
366
|
+
| "dashed";
|
|
367
|
+
/**
|
|
368
|
+
* Border styling properties for elements.
|
|
369
|
+
* All fields are optional. Only include the properties you want to override.
|
|
370
|
+
*/
|
|
114
371
|
export interface BorderStylingProperties {
|
|
372
|
+
/** Corner radius in platform units (px on Web, pt on iOS, dp on Android). Applies uniformly to all corners. */
|
|
115
373
|
borderRadius?: null | number;
|
|
374
|
+
/** The border color. Uses themed values for light/dark mode support. */
|
|
116
375
|
borderColor?: null | ThemeColor;
|
|
376
|
+
/**
|
|
377
|
+
* Border width specified as a space-separated string of numeric values in platform units.
|
|
378
|
+
* Follows CSS shorthand: '2' for all sides, '2 4' for vertical/horizontal,
|
|
379
|
+
* '1 2 3 4' for top/right/bottom/left.
|
|
380
|
+
*/
|
|
117
381
|
borderWidth?: null | string;
|
|
382
|
+
/** The visual style of the border line (solid or dashed). */
|
|
118
383
|
borderStyle?: null | BorderStyle;
|
|
119
384
|
}
|
|
120
|
-
|
|
385
|
+
/** Main-axis justification options for flex containers. */
|
|
386
|
+
export type FlexJustification =
|
|
387
|
+
/** Centers items along the main axis. */
|
|
388
|
+
"center"
|
|
389
|
+
/** Packs items toward the start of the main axis. */
|
|
390
|
+
| "flex-start"
|
|
391
|
+
/** Packs items toward the end of the main axis. */
|
|
392
|
+
| "flex-end";
|
|
393
|
+
/** Defines a box shadow effect. All offset and radius values are in platform units (px on Web, pt on iOS, dp on Android). */
|
|
121
394
|
export interface Shadow {
|
|
395
|
+
/** Horizontal offset of the shadow. Positive values move the shadow right. */
|
|
122
396
|
offsetX?: null | number;
|
|
397
|
+
/** Vertical offset of the shadow. Positive values move the shadow down. */
|
|
123
398
|
offsetY?: null | number;
|
|
399
|
+
/** The blur radius. Higher values create a more diffuse shadow. */
|
|
124
400
|
blurRadius?: null | number;
|
|
401
|
+
/** The spread radius. Positive values expand the shadow, negative values shrink it. */
|
|
125
402
|
spreadRadius?: null | number;
|
|
403
|
+
/** The shadow color. */
|
|
126
404
|
color: ThemeColor;
|
|
127
405
|
}
|
|
128
|
-
|
|
406
|
+
/** Controls visibility of content that overflows the container bounds. */
|
|
407
|
+
export type Overflow =
|
|
408
|
+
/** Content that overflows is clipped and not visible. */
|
|
409
|
+
"hidden"
|
|
410
|
+
/** Content that overflows remains visible outside the container bounds. */
|
|
411
|
+
| "visible";
|
|
412
|
+
/** Styling properties for container layout behaviour. Only applicable to nodes that contain children. */
|
|
129
413
|
export interface ContainerStylingProperties {
|
|
414
|
+
/** Controls how children are distributed along the main axis. For a Row this is horizontal, for a Column this is vertical. */
|
|
130
415
|
justifyContent?: null | FlexJustification;
|
|
416
|
+
/** Controls how children are aligned along the cross axis. For a Row this is vertical, for a Column this is horizontal. */
|
|
131
417
|
alignItems?: null | FlexAlignment;
|
|
418
|
+
/** Applies a box shadow effect around the container. */
|
|
132
419
|
shadow?: null | Shadow;
|
|
420
|
+
/** Controls whether content overflowing the container bounds is visible or hidden. */
|
|
133
421
|
overflow?: null | Overflow;
|
|
422
|
+
/** The gap in platform units between children in the container. */
|
|
134
423
|
gap?: null | number;
|
|
424
|
+
/** Applies a Gaussian blur effect. Value is the blur radius in platform units. */
|
|
135
425
|
blur?: null | number;
|
|
136
426
|
}
|
|
427
|
+
/**
|
|
428
|
+
* Available style categories for the BottomSheet content element. Each optional field
|
|
429
|
+
* enables a specific category of visual styling. Omit a field to leave that category
|
|
430
|
+
* unstyled.
|
|
431
|
+
*/
|
|
137
432
|
export interface BottomSheetStyles {
|
|
433
|
+
/**
|
|
434
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
435
|
+
* MUST be used to control how children are arranged within the bottom sheet content area.
|
|
436
|
+
*/
|
|
138
437
|
container?: null | ContainerStylingProperties;
|
|
438
|
+
/**
|
|
439
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
440
|
+
* behind the bottom sheet content.
|
|
441
|
+
*/
|
|
139
442
|
background?: null | BackgroundStylingProperties;
|
|
443
|
+
/**
|
|
444
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
445
|
+
* rounded corners to the bottom sheet content area. Typically top corners are rounded.
|
|
446
|
+
*/
|
|
140
447
|
border?: null | BorderStylingProperties;
|
|
448
|
+
/**
|
|
449
|
+
* Width, height and rotation properties. Use to explicitly size the bottom sheet content
|
|
450
|
+
* area. Do NOT set width/height if the bottom sheet should size to its content.
|
|
451
|
+
*/
|
|
141
452
|
dimension?: null | DimensionStylingProperties;
|
|
453
|
+
/**
|
|
454
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
455
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
456
|
+
*/
|
|
142
457
|
flexChild?: null | FlexChildStylingProperties;
|
|
458
|
+
/**
|
|
459
|
+
* Padding, margin and offset properties. Use to add spacing inside or outside the
|
|
460
|
+
* bottom sheet content area.
|
|
461
|
+
*/
|
|
143
462
|
spacing?: null | SpacingStylingProperties;
|
|
144
463
|
}
|
|
464
|
+
/**
|
|
465
|
+
* Style categories for the BottomSheet wrapper (backdrop) element. Controls the appearance
|
|
466
|
+
* of the area behind the bottom sheet content.
|
|
467
|
+
*/
|
|
145
468
|
export interface BottomSheetWrapperStyles {
|
|
469
|
+
/** Layout properties for the wrapper container that positions the bottom sheet content. */
|
|
146
470
|
container?: null | ContainerStylingProperties;
|
|
471
|
+
/**
|
|
472
|
+
* Background color for the backdrop. Typically a semi-transparent color (using `#AARRGGBB`
|
|
473
|
+
* format, e.g. `#80000000`) to dim the content behind the bottom sheet.
|
|
474
|
+
*/
|
|
147
475
|
background?: null | BackgroundStylingProperties;
|
|
148
476
|
}
|
|
477
|
+
/**
|
|
478
|
+
* Styleable elements of the BottomSheet node. The BottomSheet has two styleable elements:
|
|
479
|
+
* its own content area and its wrapper (backdrop).
|
|
480
|
+
*/
|
|
149
481
|
export interface BottomSheetElements {
|
|
482
|
+
/**
|
|
483
|
+
* Style blocks for the bottom sheet content area. The array represents
|
|
484
|
+
* breakpoint-specific styles: first item is the default (no breakpoint), subsequent
|
|
485
|
+
* items correspond to breakpoints in ascending order. MUST contain at least one item
|
|
486
|
+
* for the default style.
|
|
487
|
+
*/
|
|
150
488
|
own: BasicStateStylingBlock<BottomSheetStyles>[];
|
|
489
|
+
/**
|
|
490
|
+
* Style blocks for the bottom sheet wrapper (backdrop). The array represents
|
|
491
|
+
* breakpoint-specific styles: first item is the default, subsequent items correspond
|
|
492
|
+
* to breakpoints in ascending order.
|
|
493
|
+
*/
|
|
151
494
|
wrapper: BasicStateStylingBlock<BottomSheetWrapperStyles>[];
|
|
152
495
|
}
|
|
496
|
+
/**
|
|
497
|
+
* A modal container that slides up from the bottom of the screen. Use for contextual actions,
|
|
498
|
+
* forms, or supplementary content that does not require full-screen takeover. The bottom
|
|
499
|
+
* sheet appears with a backdrop behind it. Do NOT use BottomSheet for persistent content;
|
|
500
|
+
* use a regular Column or ScrollableColumn instead.
|
|
501
|
+
*/
|
|
153
502
|
export interface BottomSheetModel<Children, Predicates> {
|
|
503
|
+
/**
|
|
504
|
+
* If true, clicking the backdrop area closes the bottom sheet. MUST be set to true when
|
|
505
|
+
* the bottom sheet is dismissible. Set to false when the user MUST interact with the
|
|
506
|
+
* bottom sheet content before proceeding.
|
|
507
|
+
*/
|
|
154
508
|
allowBackdropToClose: boolean;
|
|
509
|
+
/**
|
|
510
|
+
* Accessibility label for screen readers. MUST be set to describe the purpose of the
|
|
511
|
+
* bottom sheet (e.g., "Share options" or "Filter settings").
|
|
512
|
+
*/
|
|
155
513
|
a11yLabel?: null | string;
|
|
514
|
+
/**
|
|
515
|
+
* Visual styles for this bottom sheet. See styling documentation for the structure. Omit
|
|
516
|
+
* to use default (unstyled) rendering.
|
|
517
|
+
*/
|
|
156
518
|
styles?: null | LayoutStyle<BottomSheetElements, ConditionalStyleTransition<BottomSheetTransitions, Predicates>>;
|
|
519
|
+
/** The content displayed within the bottom sheet. */
|
|
157
520
|
children: Children[];
|
|
158
521
|
}
|
|
522
|
+
/**
|
|
523
|
+
* Transition styles for the BottomSheet node. Use to animate style changes smoothly,
|
|
524
|
+
* particularly the slide-up entrance animation.
|
|
525
|
+
*/
|
|
159
526
|
export interface BottomSheetTransitions {
|
|
527
|
+
/**
|
|
528
|
+
* Transition properties for the bottom sheet content area. Specifies which style
|
|
529
|
+
* properties should animate and their duration/easing when values change.
|
|
530
|
+
*/
|
|
160
531
|
own?: null | BottomSheetStyles;
|
|
532
|
+
/** Transition properties for the bottom sheet wrapper (backdrop). */
|
|
161
533
|
wrapper?: null | BottomSheetWrapperStyles;
|
|
162
534
|
}
|
|
163
|
-
|
|
535
|
+
/**
|
|
536
|
+
* Condition operators for numeric/orderable comparisons. Use these to compare
|
|
537
|
+
* values that have a natural ordering (numbers, positions, breakpoints).
|
|
538
|
+
* Serialized as kebab-case strings: "is", "is-not", "is-below", "is-above".
|
|
539
|
+
*/
|
|
540
|
+
export type OrderableWhenCondition =
|
|
541
|
+
/** True when the value equals the specified value. */
|
|
542
|
+
"is"
|
|
543
|
+
/** True when the value does not equal the specified value. */
|
|
544
|
+
| "is-not"
|
|
545
|
+
/** True when the value is less than the specified value. */
|
|
546
|
+
| "is-below"
|
|
547
|
+
/** True when the value is greater than the specified value. */
|
|
548
|
+
| "is-above";
|
|
549
|
+
/**
|
|
550
|
+
* Tests the viewport width against a breakpoint value. Use for
|
|
551
|
+
* responsive layouts that adapt to different screen sizes. The value MUST
|
|
552
|
+
* be a string representation of a number in platform units.
|
|
553
|
+
*/
|
|
164
554
|
export interface BreakpointPredicate {
|
|
555
|
+
/** The comparison operator. Use "is-above" or "is-below" for responsive breakpoints. */
|
|
165
556
|
condition: OrderableWhenCondition;
|
|
557
|
+
/**
|
|
558
|
+
* The breakpoint width in platform units to compare against. MUST be a string
|
|
559
|
+
* representation of a number, e.g. "768".
|
|
560
|
+
*/
|
|
166
561
|
value: string;
|
|
167
562
|
}
|
|
563
|
+
/** A styling block with only a default state. Used for non-interactive elements. */
|
|
168
564
|
export interface StatelessStylingBlock<StyleProperties> {
|
|
565
|
+
/** The styles to apply. Always required. */
|
|
169
566
|
default: StyleProperties;
|
|
170
567
|
}
|
|
568
|
+
/**
|
|
569
|
+
* Visual style properties for the CarouselDistribution container.
|
|
570
|
+
* Contains the standard style categories: container layout, background colors,
|
|
571
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
572
|
+
*/
|
|
171
573
|
export interface CarouselDistributionStyles {
|
|
574
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
172
575
|
container?: null | ContainerStylingProperties;
|
|
576
|
+
/** Background color and gradient styles. */
|
|
173
577
|
background?: null | BackgroundStylingProperties;
|
|
578
|
+
/** Border width, color, and radius styles. */
|
|
174
579
|
border?: null | BorderStylingProperties;
|
|
580
|
+
/** Width and height dimension styles. */
|
|
175
581
|
dimension?: null | DimensionStylingProperties;
|
|
582
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
176
583
|
flexChild?: null | FlexChildStylingProperties;
|
|
584
|
+
/** Padding and margin spacing styles. */
|
|
177
585
|
spacing?: null | SpacingStylingProperties;
|
|
178
586
|
}
|
|
587
|
+
/**
|
|
588
|
+
* Styling elements for the CarouselDistribution container.
|
|
589
|
+
* The `own` array contains stateless styling blocks applied to the carousel container itself.
|
|
590
|
+
*/
|
|
179
591
|
export interface CarouselDistributionElements {
|
|
592
|
+
/** Array of stateless styling blocks for the carousel container. */
|
|
180
593
|
own: StatelessStylingBlock<CarouselDistributionStyles>[];
|
|
181
594
|
}
|
|
182
|
-
|
|
595
|
+
/**
|
|
596
|
+
* The size of the peek-through area showing adjacent carousel items.
|
|
597
|
+
* Controls how much of the next/previous items are visible at the edges.
|
|
598
|
+
*/
|
|
599
|
+
export type PeekThroughSize =
|
|
600
|
+
/** A fixed size in platform units (px on Web, pt on iOS, dp on Android) for the peek-through area. */
|
|
601
|
+
{
|
|
183
602
|
type: "Fixed";
|
|
184
603
|
value: number;
|
|
185
|
-
}
|
|
604
|
+
}
|
|
605
|
+
/** A percentage-based size for the peek-through area, relative to the carousel width. */
|
|
606
|
+
| {
|
|
186
607
|
type: "Percentage";
|
|
187
608
|
value: number;
|
|
188
609
|
};
|
|
610
|
+
/**
|
|
611
|
+
* Presents offers in a horizontally scrollable carousel.
|
|
612
|
+
* Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
|
|
613
|
+
* Users can swipe left/right to browse offers.
|
|
614
|
+
*
|
|
615
|
+
* Use `viewableItems` to control how many items are visible at once per breakpoint.
|
|
616
|
+
* Use `peekThroughSize` to hint that more items exist by showing partial adjacent items.
|
|
617
|
+
*/
|
|
189
618
|
export interface CarouselDistributionModel<Predicates> {
|
|
619
|
+
/**
|
|
620
|
+
* Configuration for how many items are visible at once.
|
|
621
|
+
* Provided as an array of values for different breakpoints.
|
|
622
|
+
*/
|
|
190
623
|
viewableItems: number[];
|
|
624
|
+
/**
|
|
625
|
+
* How much of the next/previous items peek into view.
|
|
626
|
+
* Provided as an array of PeekThroughSize values for different breakpoints.
|
|
627
|
+
* Use Fixed for absolute values in platform units or Percentage for relative values.
|
|
628
|
+
*/
|
|
191
629
|
peekThroughSize: PeekThroughSize[];
|
|
630
|
+
/**
|
|
631
|
+
* Visual styles for the carousel container.
|
|
632
|
+
* Uses the LayoutStyle wrapper with conditional style transitions.
|
|
633
|
+
*/
|
|
192
634
|
styles?: null | LayoutStyle<CarouselDistributionElements, ConditionalStyleTransition<CarouselDistributionTransitions, Predicates>>;
|
|
193
635
|
}
|
|
636
|
+
/** Transition styles for animating CarouselDistribution style changes. */
|
|
194
637
|
export interface CarouselDistributionTransitions {
|
|
638
|
+
/** Transition properties for the carousel container's own styles. */
|
|
195
639
|
own?: null | CarouselDistributionStyles;
|
|
196
640
|
}
|
|
641
|
+
/**
|
|
642
|
+
* Visual style properties for a catalog response button.
|
|
643
|
+
* Controls the button's layout, appearance, and sizing.
|
|
644
|
+
*/
|
|
197
645
|
export interface CatalogResponseButtonStyles {
|
|
646
|
+
/** Layout properties for the flex container. */
|
|
198
647
|
container?: null | ContainerStylingProperties;
|
|
648
|
+
/** Background color and image properties. */
|
|
199
649
|
background?: null | BackgroundStylingProperties;
|
|
650
|
+
/** Border radius, color, width and style. */
|
|
200
651
|
border?: null | BorderStylingProperties;
|
|
652
|
+
/** Width, height and rotation properties. */
|
|
201
653
|
dimension?: null | DimensionStylingProperties;
|
|
654
|
+
/** Properties controlling behaviour as a flex child. */
|
|
202
655
|
flexChild?: null | FlexChildStylingProperties;
|
|
656
|
+
/** Padding, margin and offset properties. */
|
|
203
657
|
spacing?: null | SpacingStylingProperties;
|
|
204
658
|
}
|
|
659
|
+
/**
|
|
660
|
+
* Breakpoint-specific style elements for a catalog response button.
|
|
661
|
+
* Allows different visual treatments at different screen sizes and interaction states.
|
|
662
|
+
*/
|
|
205
663
|
export interface CatalogResponseButtonElements {
|
|
664
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
206
665
|
own: BasicStateStylingBlock<CatalogResponseButtonStyles>[];
|
|
207
666
|
}
|
|
667
|
+
/**
|
|
668
|
+
* A response button for catalog/add-to-cart interactions. Similar to CreativeResponse but
|
|
669
|
+
* designed for product catalog flows. When tapped, it sends a response keyed by `responseKey`
|
|
670
|
+
* back to the server to advance the catalog interaction.
|
|
671
|
+
*/
|
|
208
672
|
export interface CatalogResponseButtonModel<Children, Predicates> {
|
|
673
|
+
/**
|
|
674
|
+
* Responsive and conditional styling for this button, including breakpoint-specific
|
|
675
|
+
* element styles and animated transitions.
|
|
676
|
+
*/
|
|
209
677
|
styles?: null | LayoutStyle<CatalogResponseButtonElements, ConditionalStyleTransition<CatalogResponseButtonTransitions, Predicates>>;
|
|
678
|
+
/**
|
|
679
|
+
* Child nodes rendered inside this button. Typically contains text labels or icons
|
|
680
|
+
* describing the action (e.g., "Add to Cart", product name).
|
|
681
|
+
*/
|
|
210
682
|
children: Children[];
|
|
211
683
|
}
|
|
684
|
+
/** Transition properties for animating style changes on a catalog response button. */
|
|
212
685
|
export interface CatalogResponseButtonTransitions {
|
|
686
|
+
/** Transition properties for the primary element. */
|
|
213
687
|
own?: null | CatalogResponseButtonStyles;
|
|
214
688
|
}
|
|
689
|
+
/**
|
|
690
|
+
* Visual style properties for the stacked collection container.
|
|
691
|
+
* Controls the layout and appearance of the outer wrapper that holds
|
|
692
|
+
* the stacked catalog item cards.
|
|
693
|
+
*/
|
|
215
694
|
export interface CatalogStackedCollectionStyles {
|
|
695
|
+
/** Layout properties for the flex container. */
|
|
216
696
|
container?: null | ContainerStylingProperties;
|
|
697
|
+
/** Background color and image properties. */
|
|
217
698
|
background?: null | BackgroundStylingProperties;
|
|
699
|
+
/** Border radius, color, width and style. */
|
|
218
700
|
border?: null | BorderStylingProperties;
|
|
701
|
+
/** Width, height and rotation properties. */
|
|
219
702
|
dimension?: null | DimensionStylingProperties;
|
|
703
|
+
/** Properties controlling behaviour as a flex child. */
|
|
220
704
|
flexChild?: null | FlexChildStylingProperties;
|
|
705
|
+
/** Padding, margin and offset properties. */
|
|
221
706
|
spacing?: null | SpacingStylingProperties;
|
|
222
707
|
}
|
|
708
|
+
/**
|
|
709
|
+
* Breakpoint-specific style elements for a catalog stacked collection.
|
|
710
|
+
* Uses stateless styling blocks since this is a static container without
|
|
711
|
+
* interactive states.
|
|
712
|
+
*/
|
|
223
713
|
export interface CatalogStackedCollectionElements {
|
|
714
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
224
715
|
own: StatelessStylingBlock<CatalogStackedCollectionStyles>[];
|
|
225
716
|
}
|
|
717
|
+
/**
|
|
718
|
+
* A vertically stacked collection of catalog items for add-to-cart flows.
|
|
719
|
+
* Renders each catalog product as a card in a vertical stack layout, where items
|
|
720
|
+
* are presented one below another. The visual content of each item is defined by
|
|
721
|
+
* a reusable template node that is instantiated per product in the collection.
|
|
722
|
+
*/
|
|
226
723
|
export interface CatalogStackedCollectionModel<NodeTemplate, Predicates> {
|
|
724
|
+
/**
|
|
725
|
+
* Responsive and conditional styling for this collection container, including
|
|
726
|
+
* breakpoint-specific element styles and animated transitions.
|
|
727
|
+
*/
|
|
227
728
|
styles?: null | LayoutStyle<CatalogStackedCollectionElements, ConditionalStyleTransition<CatalogStackedCollectionTransitions, Predicates>>;
|
|
729
|
+
/**
|
|
730
|
+
* Template node used to render each catalog item in the stacked collection.
|
|
731
|
+
* This template is instantiated once per product, with product-specific data
|
|
732
|
+
* bound at runtime.
|
|
733
|
+
*/
|
|
228
734
|
template: NodeTemplate;
|
|
229
735
|
}
|
|
736
|
+
/** Transition properties for animating style changes on a catalog stacked collection. */
|
|
230
737
|
export interface CatalogStackedCollectionTransitions {
|
|
738
|
+
/** Transition properties for the primary element. */
|
|
231
739
|
own?: null | CatalogStackedCollectionStyles;
|
|
232
740
|
}
|
|
741
|
+
/**
|
|
742
|
+
* Visual style properties for the CloseButton.
|
|
743
|
+
* Contains the standard style categories: container layout, background colors,
|
|
744
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
745
|
+
*/
|
|
233
746
|
export interface CloseButtonStyles {
|
|
747
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
234
748
|
container?: null | ContainerStylingProperties;
|
|
749
|
+
/** Background color and gradient styles. */
|
|
235
750
|
background?: null | BackgroundStylingProperties;
|
|
751
|
+
/** Border width, color, and radius styles. */
|
|
236
752
|
border?: null | BorderStylingProperties;
|
|
753
|
+
/** Width and height dimension styles. */
|
|
237
754
|
dimension?: null | DimensionStylingProperties;
|
|
755
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
238
756
|
flexChild?: null | FlexChildStylingProperties;
|
|
757
|
+
/** Padding and margin spacing styles. */
|
|
239
758
|
spacing?: null | SpacingStylingProperties;
|
|
240
759
|
}
|
|
760
|
+
/**
|
|
761
|
+
* Styling elements for the CloseButton.
|
|
762
|
+
* The `own` array contains state-dependent styling blocks (e.g. default, pressed)
|
|
763
|
+
* applied to the close button itself.
|
|
764
|
+
*/
|
|
241
765
|
export interface CloseButtonElements {
|
|
766
|
+
/**
|
|
767
|
+
* Array of state-dependent styling blocks for the close button.
|
|
768
|
+
* Each block targets a specific interaction state (default, pressed, etc.).
|
|
769
|
+
*/
|
|
242
770
|
own: BasicStateStylingBlock<CloseButtonStyles>[];
|
|
243
771
|
}
|
|
772
|
+
/**
|
|
773
|
+
* A button that closes/dismisses the layout when clicked.
|
|
774
|
+
* Typically contains a StaticIcon with the 'Close' icon.
|
|
775
|
+
*
|
|
776
|
+
* MUST include child content (usually a StaticIcon with name `"Close"`).
|
|
777
|
+
* Do NOT use CreativeResponse for dismissal; use CloseButton instead so that
|
|
778
|
+
* the dismiss action is correctly tracked.
|
|
779
|
+
*/
|
|
244
780
|
export interface CloseButtonModel<Children, Predicates> {
|
|
781
|
+
/** Visual styles for the close button. Uses the LayoutStyle wrapper with conditional style transitions. */
|
|
245
782
|
styles?: null | LayoutStyle<CloseButtonElements, ConditionalStyleTransition<CloseButtonTransitions, Predicates>>;
|
|
783
|
+
/**
|
|
784
|
+
* Child nodes forming the button content. Typically a StaticIcon with name `"Close"`.
|
|
785
|
+
* MUST contain at least one child to display the close icon or label.
|
|
786
|
+
*/
|
|
246
787
|
children: Children[];
|
|
788
|
+
/**
|
|
789
|
+
* Optional dismissal method configuration.
|
|
790
|
+
* Controls how the dismissal is reported for analytics purposes.
|
|
791
|
+
*/
|
|
247
792
|
dismissalMethod?: null | string;
|
|
248
793
|
}
|
|
794
|
+
/**
|
|
795
|
+
* Transition styles for animating CloseButton style changes.
|
|
796
|
+
* Defines which style properties should animate when the button's conditional styles change.
|
|
797
|
+
*/
|
|
249
798
|
export interface CloseButtonTransitions {
|
|
799
|
+
/** Transition properties for the close button's own styles. */
|
|
250
800
|
own?: null | CloseButtonStyles;
|
|
251
801
|
}
|
|
802
|
+
/**
|
|
803
|
+
* Available style categories for the Column element. Each optional field enables a specific
|
|
804
|
+
* category of visual styling. Omit a field to leave that category unstyled.
|
|
805
|
+
*/
|
|
252
806
|
export interface ColumnStyle {
|
|
807
|
+
/**
|
|
808
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
809
|
+
* MUST be used to control how children are arranged within the column.
|
|
810
|
+
*/
|
|
253
811
|
container?: null | ContainerStylingProperties;
|
|
812
|
+
/**
|
|
813
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
814
|
+
* behind the column content.
|
|
815
|
+
*/
|
|
254
816
|
background?: null | BackgroundStylingProperties;
|
|
817
|
+
/**
|
|
818
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
819
|
+
* rounded corners to the column.
|
|
820
|
+
*/
|
|
255
821
|
border?: null | BorderStylingProperties;
|
|
822
|
+
/**
|
|
823
|
+
* Width, height and rotation properties. Use to explicitly size the column or apply
|
|
824
|
+
* rotation transforms. Do NOT set width/height if the column should size to its content.
|
|
825
|
+
*/
|
|
256
826
|
dimension?: null | DimensionStylingProperties;
|
|
827
|
+
/**
|
|
828
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
829
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
830
|
+
*/
|
|
257
831
|
flexChild?: null | FlexChildStylingProperties;
|
|
832
|
+
/** Padding, margin and offset properties. Use to add spacing inside or outside the column. */
|
|
258
833
|
spacing?: null | SpacingStylingProperties;
|
|
259
834
|
}
|
|
835
|
+
/**
|
|
836
|
+
* Styleable elements of the Column node. The Column has a single styleable element: its own
|
|
837
|
+
* container.
|
|
838
|
+
*/
|
|
260
839
|
export interface ColumnElements {
|
|
840
|
+
/**
|
|
841
|
+
* Style blocks for the column container itself. The array represents breakpoint-specific
|
|
842
|
+
* styles: first item is the default (no breakpoint), subsequent items correspond to
|
|
843
|
+
* breakpoints in ascending order. MUST contain at least one item for the default style.
|
|
844
|
+
*/
|
|
261
845
|
own: BasicStateStylingBlock<ColumnStyle>[];
|
|
262
846
|
}
|
|
847
|
+
/**
|
|
848
|
+
* A vertical flex container that arranges its children in a column (top to bottom). Use for
|
|
849
|
+
* vertical layouts. Children are laid out along the vertical axis by default. To control
|
|
850
|
+
* alignment and distribution, configure the container styles. Do NOT nest Columns
|
|
851
|
+
* unnecessarily when a single Column with appropriate styling would suffice.
|
|
852
|
+
*/
|
|
263
853
|
export interface ColumnModel<Children, Predicates> {
|
|
854
|
+
/**
|
|
855
|
+
* Accessibility label for screen readers. Omit if the column is purely decorative or its
|
|
856
|
+
* children already provide sufficient accessible labels. MUST be set when the column
|
|
857
|
+
* conveys meaning not available from its children alone.
|
|
858
|
+
*/
|
|
264
859
|
a11yLabel?: null | string;
|
|
860
|
+
/**
|
|
861
|
+
* Visual styles for this column. See styling documentation for the structure. Omit to use
|
|
862
|
+
* default (unstyled) rendering.
|
|
863
|
+
*/
|
|
265
864
|
styles?: null | LayoutStyle<ColumnElements, ConditionalStyleTransition<ColumnTransitions, Predicates>>;
|
|
865
|
+
/**
|
|
866
|
+
* Child nodes rendered vertically within this column.
|
|
867
|
+
* Children are laid out top to bottom in source order.
|
|
868
|
+
*/
|
|
266
869
|
children: Children[];
|
|
267
870
|
}
|
|
871
|
+
/** Transition styles for the Column node. Use to animate style changes smoothly. */
|
|
268
872
|
export interface ColumnTransitions {
|
|
873
|
+
/**
|
|
874
|
+
* Transition properties for the column container. Specifies which style properties
|
|
875
|
+
* should animate and their duration/easing when values change.
|
|
876
|
+
*/
|
|
269
877
|
own?: null | ColumnStyle;
|
|
270
878
|
}
|
|
271
|
-
|
|
879
|
+
/**
|
|
880
|
+
* Condition operators for checking whether a value exists. Use these to
|
|
881
|
+
* conditionally render content based on whether data is present.
|
|
882
|
+
* Serialized as kebab-case strings: "exists", "not-exists".
|
|
883
|
+
*/
|
|
884
|
+
export type ExistenceWhenCondition =
|
|
885
|
+
/** True when the value is present and non-empty. */
|
|
886
|
+
"exists"
|
|
887
|
+
/** True when the value is absent or empty. */
|
|
888
|
+
| "not-exists";
|
|
889
|
+
/**
|
|
890
|
+
* Tests whether a creative data attribute exists. Use to conditionally show
|
|
891
|
+
* content only when specific creative data is available. Do NOT use this for
|
|
892
|
+
* non-creative data checks.
|
|
893
|
+
*/
|
|
272
894
|
export interface CreativeCopyPredicate {
|
|
895
|
+
/** Whether to check for existence or non-existence of the creative attribute. */
|
|
273
896
|
condition: ExistenceWhenCondition;
|
|
897
|
+
/**
|
|
898
|
+
* The dot-notation path to the creative attribute, e.g.
|
|
899
|
+
* "creative.socialProof.number". MUST use dot notation to reference
|
|
900
|
+
* nested creative data fields.
|
|
901
|
+
*/
|
|
274
902
|
value: string;
|
|
275
903
|
}
|
|
904
|
+
/**
|
|
905
|
+
* Visual style properties for the CreativeResponse button.
|
|
906
|
+
* Contains the standard style categories: container layout, background colors,
|
|
907
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
908
|
+
*/
|
|
276
909
|
export interface CreativeResponseStyles {
|
|
910
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
277
911
|
container?: null | ContainerStylingProperties;
|
|
912
|
+
/** Background color and gradient styles. */
|
|
278
913
|
background?: null | BackgroundStylingProperties;
|
|
914
|
+
/** Border width, color, and radius styles. */
|
|
279
915
|
border?: null | BorderStylingProperties;
|
|
916
|
+
/** Width and height dimension styles. */
|
|
280
917
|
dimension?: null | DimensionStylingProperties;
|
|
918
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
281
919
|
flexChild?: null | FlexChildStylingProperties;
|
|
920
|
+
/** Padding and margin spacing styles. */
|
|
282
921
|
spacing?: null | SpacingStylingProperties;
|
|
283
922
|
}
|
|
923
|
+
/**
|
|
924
|
+
* Styling elements for the CreativeResponse button.
|
|
925
|
+
* The `own` array contains state-dependent styling blocks (e.g. default, pressed, disabled)
|
|
926
|
+
* applied to the button itself.
|
|
927
|
+
*/
|
|
284
928
|
export interface CreativeResponseElements {
|
|
929
|
+
/**
|
|
930
|
+
* Array of state-dependent styling blocks for the button.
|
|
931
|
+
* Each block targets a specific interaction state (default, pressed, disabled, etc.).
|
|
932
|
+
*/
|
|
285
933
|
own: BasicStateStylingBlock<CreativeResponseStyles>[];
|
|
286
934
|
}
|
|
287
|
-
|
|
935
|
+
/**
|
|
936
|
+
* Controls how links are opened when clicked. MUST be one of the valid
|
|
937
|
+
* kebab-case string values. Determines the navigation behavior when a
|
|
938
|
+
* user activates a link action.
|
|
939
|
+
*/
|
|
940
|
+
export type LinkOpenTarget =
|
|
941
|
+
/**
|
|
942
|
+
* Opens the link within the current context (in-app webview or same
|
|
943
|
+
* window). Use for links that should keep the user in the application.
|
|
944
|
+
*/
|
|
945
|
+
"internally"
|
|
946
|
+
/**
|
|
947
|
+
* Opens the link in the system browser. Use for external URLs that
|
|
948
|
+
* should leave the application context.
|
|
949
|
+
*/
|
|
950
|
+
| "externally";
|
|
951
|
+
/**
|
|
952
|
+
* A button that triggers a creative response (positive or negative).
|
|
953
|
+
* This is the primary call-to-action node for offer interactions.
|
|
954
|
+
* Children inside this node become the button content.
|
|
955
|
+
*
|
|
956
|
+
* MUST have a `responseKey` of either `"positive"` or `"negative"`.
|
|
957
|
+
* Use `"positive"` for accept/CTA buttons and `"negative"` for decline/dismiss buttons.
|
|
958
|
+
* Do NOT use this node for non-response actions like navigation; use StaticLink or ButtonStateTrigger instead.
|
|
959
|
+
*/
|
|
288
960
|
export interface CreativeResponseModel<Children, Predicates> {
|
|
961
|
+
/**
|
|
962
|
+
* The response type. Use `"positive"` for accept/CTA buttons, `"negative"` for decline/dismiss buttons.
|
|
963
|
+
* Do NOT use arbitrary strings; only `"positive"` and `"negative"` are valid.
|
|
964
|
+
*/
|
|
289
965
|
responseKey: string;
|
|
966
|
+
/** Visual styles for the button. Uses the LayoutStyle wrapper with conditional style transitions. */
|
|
290
967
|
styles?: null | LayoutStyle<CreativeResponseElements, ConditionalStyleTransition<CreativeResponseTransitions, Predicates>>;
|
|
968
|
+
/**
|
|
969
|
+
* Controls how the response URL is opened when clicked.
|
|
970
|
+
* If omitted, the default link opening behaviour is used.
|
|
971
|
+
*/
|
|
291
972
|
openLinks?: null | LinkOpenTarget;
|
|
973
|
+
/**
|
|
974
|
+
* Child nodes that form the button's visible content.
|
|
975
|
+
* Typically contains a BasicText node with the CTA label.
|
|
976
|
+
* MUST contain at least one child to display button content.
|
|
977
|
+
*/
|
|
292
978
|
children: Children[];
|
|
293
979
|
}
|
|
980
|
+
/**
|
|
981
|
+
* Transition styles for animating CreativeResponse style changes.
|
|
982
|
+
* Defines which style properties should animate when the button's conditional styles change.
|
|
983
|
+
*/
|
|
294
984
|
export interface CreativeResponseTransitions {
|
|
985
|
+
/** Transition properties for the button's own styles. */
|
|
295
986
|
own?: null | CreativeResponseStyles;
|
|
296
987
|
}
|
|
988
|
+
/**
|
|
989
|
+
* Tests a custom state value. Custom states are set by state trigger nodes
|
|
990
|
+
* such as ButtonStateTrigger, ToggleButtonStateTrigger, and similar components.
|
|
991
|
+
* The value is an integer that represents the current state.
|
|
992
|
+
*/
|
|
297
993
|
export interface CustomStatePredicate {
|
|
994
|
+
/**
|
|
995
|
+
* The custom state key to check. MUST match the key used in the
|
|
996
|
+
* corresponding state trigger node.
|
|
997
|
+
*/
|
|
298
998
|
key: string;
|
|
999
|
+
/** The comparison operator. */
|
|
299
1000
|
condition: OrderableWhenCondition;
|
|
1001
|
+
/** The integer value to compare the custom state against. */
|
|
300
1002
|
value: number;
|
|
301
1003
|
}
|
|
302
|
-
|
|
1004
|
+
/**
|
|
1005
|
+
* Condition operators for equality comparisons. Use these when you only need
|
|
1006
|
+
* to test if two values are equal or not equal.
|
|
1007
|
+
* Serialized as kebab-case strings: "is", "is-not".
|
|
1008
|
+
*/
|
|
1009
|
+
export type EqualityWhenCondition =
|
|
1010
|
+
/** True when the value equals the specified value. */
|
|
1011
|
+
"is"
|
|
1012
|
+
/** True when the value does not equal the specified value. */
|
|
1013
|
+
| "is-not";
|
|
1014
|
+
/**
|
|
1015
|
+
* Tests whether dark mode is active. Use to provide different styling or
|
|
1016
|
+
* content for light and dark modes.
|
|
1017
|
+
*/
|
|
303
1018
|
export interface DarkModePredicate {
|
|
1019
|
+
/** Use "is" to check if dark mode matches the value, "is-not" for the inverse. */
|
|
304
1020
|
condition: EqualityWhenCondition;
|
|
1021
|
+
/**
|
|
1022
|
+
* The boolean value to compare against. Set to true to test for dark mode,
|
|
1023
|
+
* false to test for light mode.
|
|
1024
|
+
*/
|
|
305
1025
|
value: boolean;
|
|
306
1026
|
}
|
|
1027
|
+
/** Visual styles for the DataIcon node. */
|
|
307
1028
|
export interface DataIconStyles {
|
|
1029
|
+
/** Typography properties. */
|
|
308
1030
|
text?: null | TextStylingProperties;
|
|
1031
|
+
/** Width, height and rotation properties. */
|
|
309
1032
|
dimension?: null | DimensionStylingProperties;
|
|
1033
|
+
/** Properties controlling behaviour as a flex child. */
|
|
310
1034
|
flexChild?: null | FlexChildStylingProperties;
|
|
1035
|
+
/** Padding, margin and offset properties. */
|
|
311
1036
|
spacing?: null | SpacingStylingProperties;
|
|
1037
|
+
/** Background color and image properties. */
|
|
312
1038
|
background?: null | BackgroundStylingProperties;
|
|
1039
|
+
/** Border radius, color, width and style. */
|
|
313
1040
|
border?: null | BorderStylingProperties;
|
|
314
1041
|
}
|
|
1042
|
+
/** Style elements for the DataIcon node. */
|
|
315
1043
|
export interface DataIconElements {
|
|
1044
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
316
1045
|
own: BasicStateStylingBlock<DataIconStyles>[];
|
|
317
1046
|
}
|
|
1047
|
+
/** Renders an icon from creative data. The icon is resolved from the creative object using the iconKey. */
|
|
318
1048
|
export interface DataIconModel<Predicates> {
|
|
1049
|
+
/** Visual styles for the icon. */
|
|
319
1050
|
styles?: null | LayoutStyle<DataIconElements, ConditionalStyleTransition<DataIconTransitions, Predicates>>;
|
|
1051
|
+
/** The key identifying which icon from the creative data to display. */
|
|
320
1052
|
iconKey: string;
|
|
321
1053
|
}
|
|
1054
|
+
/** Transition definitions for the DataIcon node. */
|
|
322
1055
|
export interface DataIconTransitions {
|
|
1056
|
+
/** Transition properties for the primary element. */
|
|
323
1057
|
own?: null | DataIconStyles;
|
|
324
1058
|
}
|
|
1059
|
+
/** Visual styles for the DataImage node. */
|
|
325
1060
|
export interface DataImageStyles {
|
|
1061
|
+
/** Background color and image properties. */
|
|
326
1062
|
background?: null | BackgroundStylingProperties;
|
|
1063
|
+
/** Border radius, color, width and style. */
|
|
327
1064
|
border?: null | BorderStylingProperties;
|
|
1065
|
+
/** Width, height and rotation properties. */
|
|
328
1066
|
dimension?: null | DimensionStylingProperties;
|
|
1067
|
+
/** Properties controlling behaviour as a flex child. */
|
|
329
1068
|
flexChild?: null | FlexChildStylingProperties;
|
|
1069
|
+
/** Padding, margin and offset properties. */
|
|
330
1070
|
spacing?: null | SpacingStylingProperties;
|
|
331
1071
|
}
|
|
1072
|
+
/** Style elements for the DataImage node. */
|
|
332
1073
|
export interface DataImageElements {
|
|
1074
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
333
1075
|
own: BasicStateStylingBlock<DataImageStyles>[];
|
|
334
1076
|
}
|
|
1077
|
+
/** Renders an image from creative data. The image URL is resolved from the creative object using the imageKey. Use for offer-specific images. */
|
|
335
1078
|
export interface DataImageModel<Predicates> {
|
|
1079
|
+
/** Visual styles for the image element. */
|
|
336
1080
|
styles?: null | LayoutStyle<DataImageElements, ConditionalStyleTransition<DataImageTransitions, Predicates>>;
|
|
1081
|
+
/** The key identifying which image from the creative data to display. */
|
|
337
1082
|
imageKey: string;
|
|
338
1083
|
}
|
|
1084
|
+
/** Transition definitions for the DataImage node. */
|
|
339
1085
|
export interface DataImageTransitions {
|
|
1086
|
+
/** Transition properties for the primary element. */
|
|
340
1087
|
own?: null | DataImageStyles;
|
|
341
1088
|
}
|
|
342
|
-
|
|
1089
|
+
/**
|
|
1090
|
+
* Keys for accessing application domain state in the full layout schema
|
|
1091
|
+
* context. Domain state represents high-level application state managed by
|
|
1092
|
+
* the host application. Serialized as camelCase strings.
|
|
1093
|
+
*/
|
|
1094
|
+
export type DomainStateKey =
|
|
1095
|
+
/**
|
|
1096
|
+
* Indicates whether the current offer has been completed by the user.
|
|
1097
|
+
* Use to show post-completion content or hide offer-specific elements.
|
|
1098
|
+
*/
|
|
1099
|
+
"offerComplete";
|
|
1100
|
+
/**
|
|
1101
|
+
* Tests application domain state. Domain state is managed by the host
|
|
1102
|
+
* application and represents high-level application state such as whether
|
|
1103
|
+
* an offer is complete or checkout state.
|
|
1104
|
+
*/
|
|
343
1105
|
export interface DomainStatePredicate<DomainStateKey> {
|
|
1106
|
+
/** The domain state key to check. */
|
|
344
1107
|
key: DomainStateKey;
|
|
1108
|
+
/** The comparison operator. */
|
|
345
1109
|
condition: OrderableWhenCondition;
|
|
1110
|
+
/** The integer value to compare the domain state against. */
|
|
346
1111
|
value: number;
|
|
347
1112
|
}
|
|
1113
|
+
/**
|
|
1114
|
+
* An escape hatch node that allows passing raw data through the DCUI schema.
|
|
1115
|
+
* Use sparingly for edge cases not covered by standard nodes.
|
|
1116
|
+
*
|
|
1117
|
+
* Do NOT use this as a general-purpose data container. Prefer standard DCUI nodes
|
|
1118
|
+
* whenever possible. This node bypasses schema validation for its data content.
|
|
1119
|
+
*/
|
|
348
1120
|
export interface EscapeHatchModel {
|
|
1121
|
+
/**
|
|
1122
|
+
* Raw string data to pass through.
|
|
1123
|
+
* The content is opaque to the DCUI renderer and is passed directly to the client.
|
|
1124
|
+
* MUST be a valid string. The client is responsible for parsing and interpreting the data.
|
|
1125
|
+
*/
|
|
349
1126
|
data: string;
|
|
350
1127
|
}
|
|
1128
|
+
/** Settings for a bidirectional fade-in/fade-out transition. */
|
|
351
1129
|
export interface FadeInOutTransitionSettings {
|
|
1130
|
+
/**
|
|
1131
|
+
* The transition duration in milliseconds. MUST be a positive integer.
|
|
1132
|
+
* Common values: 200 for fast, 400 for medium, 1000 for slow.
|
|
1133
|
+
*/
|
|
352
1134
|
duration: number;
|
|
353
1135
|
}
|
|
1136
|
+
/** Settings for a fade-in (enter) transition. */
|
|
354
1137
|
export interface FadeInTransitionSettings {
|
|
1138
|
+
/**
|
|
1139
|
+
* The transition duration in milliseconds. MUST be a positive integer.
|
|
1140
|
+
* Common values: 200 for fast, 400 for medium, 1000 for slow.
|
|
1141
|
+
*/
|
|
355
1142
|
duration: number;
|
|
356
1143
|
}
|
|
1144
|
+
/** Settings for a fade-out (exit) transition. */
|
|
357
1145
|
export interface FadeOutTransitionSettings {
|
|
1146
|
+
/**
|
|
1147
|
+
* The transition duration in milliseconds. MUST be a positive integer.
|
|
1148
|
+
* Common values: 200 for fast, 400 for medium, 1000 for slow.
|
|
1149
|
+
*/
|
|
358
1150
|
duration: number;
|
|
359
1151
|
}
|
|
1152
|
+
/**
|
|
1153
|
+
* Available style categories for the FlowRow element. Each optional field enables a specific
|
|
1154
|
+
* category of visual styling. Omit a field to leave that category unstyled.
|
|
1155
|
+
*/
|
|
360
1156
|
export interface FlowRowStyle {
|
|
1157
|
+
/**
|
|
1158
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
1159
|
+
* MUST be used to control how children are arranged and wrapped within the flow row.
|
|
1160
|
+
*/
|
|
361
1161
|
container?: null | ContainerStylingProperties;
|
|
1162
|
+
/**
|
|
1163
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
1164
|
+
* behind the flow row content.
|
|
1165
|
+
*/
|
|
362
1166
|
background?: null | BackgroundStylingProperties;
|
|
1167
|
+
/**
|
|
1168
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
1169
|
+
* rounded corners to the flow row.
|
|
1170
|
+
*/
|
|
363
1171
|
border?: null | BorderStylingProperties;
|
|
1172
|
+
/**
|
|
1173
|
+
* Width, height and rotation properties. Use to explicitly size the flow row or apply
|
|
1174
|
+
* rotation transforms. Do NOT set width/height if the flow row should size to its content.
|
|
1175
|
+
*/
|
|
364
1176
|
dimension?: null | DimensionStylingProperties;
|
|
1177
|
+
/**
|
|
1178
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
1179
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
1180
|
+
*/
|
|
365
1181
|
flexChild?: null | FlexChildStylingProperties;
|
|
1182
|
+
/** Padding, margin and offset properties. Use to add spacing inside or outside the flow row. */
|
|
366
1183
|
spacing?: null | SpacingStylingProperties;
|
|
367
1184
|
}
|
|
1185
|
+
/**
|
|
1186
|
+
* Styleable elements of the FlowRow node. The FlowRow has a single styleable element: its
|
|
1187
|
+
* own container.
|
|
1188
|
+
*/
|
|
368
1189
|
export interface FlowRowElements {
|
|
1190
|
+
/**
|
|
1191
|
+
* Style blocks for the flow row container itself. The array represents breakpoint-specific
|
|
1192
|
+
* styles: first item is the default (no breakpoint), subsequent items correspond to
|
|
1193
|
+
* breakpoints in ascending order. MUST contain at least one item for the default style.
|
|
1194
|
+
*/
|
|
369
1195
|
own: BasicStateStylingBlock<FlowRowStyle>[];
|
|
370
1196
|
}
|
|
1197
|
+
/**
|
|
1198
|
+
* A horizontal flex container that wraps children to the next line when they exceed the
|
|
1199
|
+
* container width. Like Row but with line wrapping. Use when you have a dynamic number of
|
|
1200
|
+
* items that should flow naturally across lines (e.g., tags, chips, badges). Do NOT use
|
|
1201
|
+
* FlowRow when you need a single non-wrapping horizontal row; use Row instead.
|
|
1202
|
+
*/
|
|
371
1203
|
export interface FlowRowModel<Children, Predicates> {
|
|
1204
|
+
/**
|
|
1205
|
+
* Accessibility label for screen readers. Omit if the flow row is purely decorative or
|
|
1206
|
+
* its children already provide sufficient accessible labels. MUST be set when the flow
|
|
1207
|
+
* row conveys meaning not available from its children alone.
|
|
1208
|
+
*/
|
|
372
1209
|
a11yLabel?: null | string;
|
|
1210
|
+
/**
|
|
1211
|
+
* Visual styles for this flow row. See styling documentation for the structure. Omit to
|
|
1212
|
+
* use default (unstyled) rendering.
|
|
1213
|
+
*/
|
|
373
1214
|
styles?: null | LayoutStyle<FlowRowElements, ConditionalStyleTransition<FlowRowTransitions, Predicates>>;
|
|
1215
|
+
/**
|
|
1216
|
+
* Child nodes rendered horizontally with wrapping within this flow row. MUST contain at
|
|
1217
|
+
* least one child. Children wrap to the next line when they exceed the container width.
|
|
1218
|
+
*/
|
|
374
1219
|
children: Children[];
|
|
375
1220
|
}
|
|
1221
|
+
/** Transition styles for the FlowRow node. Use to animate style changes smoothly. */
|
|
376
1222
|
export interface FlowRowTransitions {
|
|
1223
|
+
/**
|
|
1224
|
+
* Transition properties for the flow row container. Specifies which style properties
|
|
1225
|
+
* should animate and their duration/easing when values change.
|
|
1226
|
+
*/
|
|
377
1227
|
own?: null | FlowRowStyle;
|
|
378
1228
|
}
|
|
1229
|
+
/**
|
|
1230
|
+
* Visual style properties for the GroupedDistribution container.
|
|
1231
|
+
* Contains the standard style categories: container layout, background colors,
|
|
1232
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
1233
|
+
*/
|
|
379
1234
|
export interface GroupedDistributionStyles {
|
|
1235
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
380
1236
|
container?: null | ContainerStylingProperties;
|
|
1237
|
+
/** Background color and gradient styles. */
|
|
381
1238
|
background?: null | BackgroundStylingProperties;
|
|
1239
|
+
/** Border width, color, and radius styles. */
|
|
382
1240
|
border?: null | BorderStylingProperties;
|
|
1241
|
+
/** Width and height dimension styles. */
|
|
383
1242
|
dimension?: null | DimensionStylingProperties;
|
|
1243
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
384
1244
|
flexChild?: null | FlexChildStylingProperties;
|
|
1245
|
+
/** Padding and margin spacing styles. */
|
|
385
1246
|
spacing?: null | SpacingStylingProperties;
|
|
386
1247
|
}
|
|
1248
|
+
/**
|
|
1249
|
+
* Styling elements for the GroupedDistribution container.
|
|
1250
|
+
* The `own` array contains stateless styling blocks applied to the grouped container itself.
|
|
1251
|
+
*/
|
|
387
1252
|
export interface GroupedDistributionElements {
|
|
1253
|
+
/** Array of stateless styling blocks for the grouped container. */
|
|
388
1254
|
own: StatelessStylingBlock<GroupedDistributionStyles>[];
|
|
389
1255
|
}
|
|
390
|
-
|
|
1256
|
+
/**
|
|
1257
|
+
* A bidirectional transition that applies both when showing and hiding an
|
|
1258
|
+
* element. MUST be an object with a "type" field and a "settings" field.
|
|
1259
|
+
* Currently only "FadeInOut" is supported.
|
|
1260
|
+
*/
|
|
1261
|
+
export type Transition =
|
|
1262
|
+
/**
|
|
1263
|
+
* A fade-in/fade-out transition. The element fades in when shown and
|
|
1264
|
+
* fades out when hidden, using the specified duration.
|
|
1265
|
+
*/
|
|
1266
|
+
{
|
|
391
1267
|
type: "FadeInOut";
|
|
392
1268
|
settings: FadeInOutTransitionSettings;
|
|
393
1269
|
};
|
|
1270
|
+
/**
|
|
1271
|
+
* Presents offers in groups, progressing through groups sequentially.
|
|
1272
|
+
* Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
|
|
1273
|
+
* Each group shows a fixed number of offers at once, and the user advances through groups.
|
|
1274
|
+
*
|
|
1275
|
+
* Pair with ProgressControl nodes for group navigation.
|
|
1276
|
+
* Use `viewableItems` to control how many offers appear per group at each breakpoint.
|
|
1277
|
+
*/
|
|
394
1278
|
export interface GroupedDistributionModel<Predicates> {
|
|
1279
|
+
/**
|
|
1280
|
+
* Configuration for how many items per group.
|
|
1281
|
+
* Provided as an array of values for different breakpoints.
|
|
1282
|
+
*/
|
|
395
1283
|
viewableItems: number[];
|
|
1284
|
+
/**
|
|
1285
|
+
* The transition animation between groups.
|
|
1286
|
+
* Defines how the current group exits and the next group enters.
|
|
1287
|
+
*/
|
|
396
1288
|
transition: Transition;
|
|
1289
|
+
/**
|
|
1290
|
+
* Visual styles for the grouped container.
|
|
1291
|
+
* Uses the LayoutStyle wrapper with conditional style transitions.
|
|
1292
|
+
*/
|
|
397
1293
|
styles?: null | LayoutStyle<GroupedDistributionElements, ConditionalStyleTransition<GroupedDistributionTransitions, Predicates>>;
|
|
398
1294
|
}
|
|
1295
|
+
/** Transition styles for animating GroupedDistribution style changes. */
|
|
399
1296
|
export interface GroupedDistributionTransitions {
|
|
1297
|
+
/** Transition properties for the grouped container's own styles. */
|
|
400
1298
|
own?: null | GroupedDistributionStyles;
|
|
401
1299
|
}
|
|
1300
|
+
/**
|
|
1301
|
+
* Typography styling for inline text elements. A subset of TextStylingProperties
|
|
1302
|
+
* without line-level controls (lineHeight, horizontalTextAlign, lineLimit).
|
|
1303
|
+
* All fields are optional. Only include the properties you want to override.
|
|
1304
|
+
*/
|
|
402
1305
|
export interface InlineTextStylingProperties {
|
|
1306
|
+
/** The text color. Uses themed values for light/dark mode support. */
|
|
403
1307
|
textColor?: null | ThemeColor;
|
|
1308
|
+
/** Font size in platform units (px on Web, pt on iOS, dp on Android). */
|
|
404
1309
|
fontSize?: null | number;
|
|
1310
|
+
/** The font family name. Use 'rokt-icons' for icon fonts. */
|
|
405
1311
|
fontFamily?: null | string;
|
|
1312
|
+
/** The weight (boldness) of the font. */
|
|
406
1313
|
fontWeight?: null | FontWeight;
|
|
1314
|
+
/** Vertical alignment of text relative to the baseline. */
|
|
407
1315
|
baselineTextAlign?: null | FontBaselineAlignment;
|
|
1316
|
+
/** Normal or italic text rendering. */
|
|
408
1317
|
fontStyle?: null | FontStyle;
|
|
1318
|
+
/** Controls automatic text capitalisation. */
|
|
409
1319
|
textTransform?: null | TextTransform;
|
|
1320
|
+
/** Additional spacing between characters in platform units. */
|
|
410
1321
|
letterSpacing?: null | number;
|
|
1322
|
+
/** Decorative line applied to text (underline, strikethrough). */
|
|
411
1323
|
textDecoration?: null | TextDecoration;
|
|
412
1324
|
}
|
|
1325
|
+
/** Inline text styling for elements like links within rich text. */
|
|
413
1326
|
export interface InLineTextStyle {
|
|
1327
|
+
/** Typography properties for the inline text element. */
|
|
414
1328
|
text: InlineTextStylingProperties;
|
|
415
1329
|
}
|
|
1330
|
+
/**
|
|
1331
|
+
* Visual style properties for individual indicator items (dots, bars, etc.).
|
|
1332
|
+
* Includes text styling for number-based indicators.
|
|
1333
|
+
*/
|
|
416
1334
|
export interface IndicatorStyles {
|
|
1335
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
417
1336
|
container?: null | ContainerStylingProperties;
|
|
1337
|
+
/** Background color and gradient styles. */
|
|
418
1338
|
background?: null | BackgroundStylingProperties;
|
|
1339
|
+
/** Border width, color, and radius styles. */
|
|
419
1340
|
border?: null | BorderStylingProperties;
|
|
1341
|
+
/** Width and height dimension styles. */
|
|
420
1342
|
dimension?: null | DimensionStylingProperties;
|
|
1343
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
421
1344
|
flexChild?: null | FlexChildStylingProperties;
|
|
1345
|
+
/** Padding and margin spacing styles. */
|
|
422
1346
|
spacing?: null | SpacingStylingProperties;
|
|
1347
|
+
/** Text styling for number-based indicators. */
|
|
423
1348
|
text?: null | TextStylingProperties;
|
|
424
1349
|
}
|
|
1350
|
+
/**
|
|
1351
|
+
* Tests application domain state in the full layout schema context. Domain
|
|
1352
|
+
* state is managed by the host application and represents high-level
|
|
1353
|
+
* application state.
|
|
1354
|
+
*/
|
|
425
1355
|
export interface LayoutSchemaDomainStatePredicate {
|
|
1356
|
+
/** The domain state key to check. */
|
|
426
1357
|
key: DomainStateKey;
|
|
1358
|
+
/** The comparison operator. */
|
|
427
1359
|
condition: OrderableWhenCondition;
|
|
1360
|
+
/** The integer value to compare the domain state against. */
|
|
428
1361
|
value: number;
|
|
429
1362
|
}
|
|
1363
|
+
/** Platform-specific settings for the layout behaviour. */
|
|
430
1364
|
export interface LayoutSettings {
|
|
1365
|
+
/** Whether to automatically close the layout after the user completes the interaction flow. */
|
|
431
1366
|
closeOnComplete?: null | boolean;
|
|
432
1367
|
}
|
|
1368
|
+
/**
|
|
1369
|
+
* Visual style properties for the OneByOneDistribution container.
|
|
1370
|
+
* Contains the standard style categories: container layout, background colors,
|
|
1371
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
1372
|
+
*/
|
|
433
1373
|
export interface OneByOneDistributionStyles {
|
|
1374
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
434
1375
|
container?: null | ContainerStylingProperties;
|
|
1376
|
+
/** Background color and gradient styles. */
|
|
435
1377
|
background?: null | BackgroundStylingProperties;
|
|
1378
|
+
/** Border width, color, and radius styles. */
|
|
436
1379
|
border?: null | BorderStylingProperties;
|
|
1380
|
+
/** Width and height dimension styles. */
|
|
437
1381
|
dimension?: null | DimensionStylingProperties;
|
|
1382
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
438
1383
|
flexChild?: null | FlexChildStylingProperties;
|
|
1384
|
+
/** Padding and margin spacing styles. */
|
|
439
1385
|
spacing?: null | SpacingStylingProperties;
|
|
440
1386
|
}
|
|
1387
|
+
/**
|
|
1388
|
+
* Styling elements for the OneByOneDistribution container.
|
|
1389
|
+
* The `own` array contains stateless styling blocks applied to the distribution container itself.
|
|
1390
|
+
*/
|
|
441
1391
|
export interface OneByOneDistributionElements {
|
|
1392
|
+
/** Array of stateless styling blocks for the distribution container. */
|
|
442
1393
|
own: StatelessStylingBlock<OneByOneDistributionStyles>[];
|
|
443
1394
|
}
|
|
1395
|
+
/**
|
|
1396
|
+
* Presents offers one at a time, allowing the user to progress through them sequentially.
|
|
1397
|
+
* Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
|
|
1398
|
+
*
|
|
1399
|
+
* Pair with ProgressControl nodes to enable forward/backward navigation between offers.
|
|
1400
|
+
* Pair with ProgressIndicator to show the user's current position.
|
|
1401
|
+
* Do NOT use this for displaying all offers at once; use StackedDistribution instead.
|
|
1402
|
+
*/
|
|
444
1403
|
export interface OneByOneDistributionModel<Predicates> {
|
|
1404
|
+
/**
|
|
1405
|
+
* Visual styles for the distribution container.
|
|
1406
|
+
* Uses the LayoutStyle wrapper with conditional style transitions.
|
|
1407
|
+
*/
|
|
445
1408
|
styles?: null | LayoutStyle<OneByOneDistributionElements, ConditionalStyleTransition<OneByOneDistributionTransitions, Predicates>>;
|
|
1409
|
+
/**
|
|
1410
|
+
* The animation transition between offers.
|
|
1411
|
+
* Defines how the current offer exits and the next offer enters.
|
|
1412
|
+
*/
|
|
446
1413
|
transition: Transition;
|
|
447
1414
|
}
|
|
1415
|
+
/** Transition styles for animating OneByOneDistribution style changes. */
|
|
448
1416
|
export interface OneByOneDistributionTransitions {
|
|
1417
|
+
/** Transition properties for the distribution container's own styles. */
|
|
449
1418
|
own?: null | OneByOneDistributionStyles;
|
|
450
1419
|
}
|
|
1420
|
+
/**
|
|
1421
|
+
* Available style categories for the Overlay content element. Each optional field enables a
|
|
1422
|
+
* specific category of visual styling. Omit a field to leave that category unstyled.
|
|
1423
|
+
*/
|
|
451
1424
|
export interface OverlayStyles {
|
|
1425
|
+
/**
|
|
1426
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
1427
|
+
* MUST be used to control how children are arranged within the overlay content area.
|
|
1428
|
+
*/
|
|
452
1429
|
container?: null | ContainerStylingProperties;
|
|
1430
|
+
/**
|
|
1431
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
1432
|
+
* behind the overlay content.
|
|
1433
|
+
*/
|
|
453
1434
|
background?: null | BackgroundStylingProperties;
|
|
1435
|
+
/**
|
|
1436
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
1437
|
+
* rounded corners to the overlay content area.
|
|
1438
|
+
*/
|
|
454
1439
|
border?: null | BorderStylingProperties;
|
|
1440
|
+
/**
|
|
1441
|
+
* Width, height and rotation properties. Use to explicitly size the overlay content area.
|
|
1442
|
+
* Do NOT set width/height if the overlay should size to its content.
|
|
1443
|
+
*/
|
|
455
1444
|
dimension?: null | DimensionStylingProperties;
|
|
1445
|
+
/**
|
|
1446
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
1447
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
1448
|
+
*/
|
|
456
1449
|
flexChild?: null | FlexChildStylingProperties;
|
|
1450
|
+
/**
|
|
1451
|
+
* Padding, margin and offset properties. Use to add spacing inside or outside the
|
|
1452
|
+
* overlay content area.
|
|
1453
|
+
*/
|
|
457
1454
|
spacing?: null | SpacingStylingProperties;
|
|
458
1455
|
}
|
|
1456
|
+
/**
|
|
1457
|
+
* Style categories for the Overlay wrapper (backdrop) element. Controls the appearance of
|
|
1458
|
+
* the area behind the overlay content.
|
|
1459
|
+
*/
|
|
459
1460
|
export interface OverlayWrapperStyles {
|
|
1461
|
+
/** Layout properties for the wrapper container that positions the overlay content. */
|
|
460
1462
|
container?: null | ContainerStylingProperties;
|
|
1463
|
+
/**
|
|
1464
|
+
* Background color for the backdrop. Typically a semi-transparent color (using `#AARRGGBB`
|
|
1465
|
+
* format, e.g. `#80000000`) to dim the content behind the overlay.
|
|
1466
|
+
*/
|
|
461
1467
|
background?: null | BackgroundStylingProperties;
|
|
462
1468
|
}
|
|
1469
|
+
/**
|
|
1470
|
+
* Styleable elements of the Overlay node. The Overlay has two styleable elements: its own
|
|
1471
|
+
* content area and its wrapper (backdrop).
|
|
1472
|
+
*/
|
|
463
1473
|
export interface OverlayElements {
|
|
1474
|
+
/**
|
|
1475
|
+
* Style blocks for the overlay content area. The array represents breakpoint-specific
|
|
1476
|
+
* styles: first item is the default (no breakpoint), subsequent items correspond to
|
|
1477
|
+
* breakpoints in ascending order. MUST contain at least one item for the default style.
|
|
1478
|
+
*/
|
|
464
1479
|
own: BasicStateStylingBlock<OverlayStyles>[];
|
|
1480
|
+
/**
|
|
1481
|
+
* Style blocks for the overlay wrapper (backdrop). The array represents
|
|
1482
|
+
* breakpoint-specific styles: first item is the default, subsequent items correspond
|
|
1483
|
+
* to breakpoints in ascending order.
|
|
1484
|
+
*/
|
|
465
1485
|
wrapper: BasicStateStylingBlock<OverlayWrapperStyles>[];
|
|
466
1486
|
}
|
|
1487
|
+
/**
|
|
1488
|
+
* A modal overlay that appears on top of the main content with a backdrop. Use for dialogs,
|
|
1489
|
+
* confirmations, and modal interactions that require user attention. The overlay blocks
|
|
1490
|
+
* interaction with the content behind it. Do NOT use Overlay for inline content layering;
|
|
1491
|
+
* use ZStack instead.
|
|
1492
|
+
*/
|
|
467
1493
|
export interface OverlayModel<Children, Predicates> {
|
|
1494
|
+
/**
|
|
1495
|
+
* If true, clicking the backdrop area closes the overlay. MUST be set to true when the
|
|
1496
|
+
* overlay is dismissible. Set to false when the user MUST interact with the overlay
|
|
1497
|
+
* content before proceeding (e.g., mandatory confirmations).
|
|
1498
|
+
*/
|
|
468
1499
|
allowBackdropToClose: boolean;
|
|
1500
|
+
/**
|
|
1501
|
+
* Accessibility label for screen readers. MUST be set to describe the purpose of the
|
|
1502
|
+
* overlay (e.g., "Confirmation dialog" or "Settings panel").
|
|
1503
|
+
*/
|
|
469
1504
|
a11yLabel?: null | string;
|
|
1505
|
+
/**
|
|
1506
|
+
* Visual styles for this overlay. See styling documentation for the structure. Omit to
|
|
1507
|
+
* use default (unstyled) rendering.
|
|
1508
|
+
*/
|
|
470
1509
|
styles?: null | LayoutStyle<OverlayElements, ConditionalStyleTransition<OverlayTransitions, Predicates>>;
|
|
1510
|
+
/** The content displayed within the overlay. */
|
|
471
1511
|
children: Children[];
|
|
472
1512
|
}
|
|
1513
|
+
/** Transition styles for the Overlay node. Use to animate style changes smoothly. */
|
|
473
1514
|
export interface OverlayTransitions {
|
|
1515
|
+
/**
|
|
1516
|
+
* Transition properties for the overlay content area. Specifies which style properties
|
|
1517
|
+
* should animate and their duration/easing when values change.
|
|
1518
|
+
*/
|
|
474
1519
|
own?: null | OverlayStyles;
|
|
1520
|
+
/** Transition properties for the overlay wrapper (backdrop). */
|
|
475
1521
|
wrapper?: null | OverlayWrapperStyles;
|
|
476
1522
|
}
|
|
1523
|
+
/**
|
|
1524
|
+
* Tests the position index of the current item within a collection. Use to
|
|
1525
|
+
* style items differently based on their position (e.g. first item, last item).
|
|
1526
|
+
*/
|
|
477
1527
|
export interface PositionPredicate {
|
|
1528
|
+
/** The comparison operator. */
|
|
478
1529
|
condition: OrderableWhenCondition;
|
|
1530
|
+
/**
|
|
1531
|
+
* The position index to compare against. MUST be a string representation
|
|
1532
|
+
* of a number, e.g. "0" for the first item.
|
|
1533
|
+
*/
|
|
479
1534
|
value: string;
|
|
480
1535
|
}
|
|
1536
|
+
/**
|
|
1537
|
+
* Visual style properties for the ProgressControl button.
|
|
1538
|
+
* Contains the standard style categories: container layout, background colors,
|
|
1539
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
1540
|
+
*/
|
|
481
1541
|
export interface ProgressControlStyle {
|
|
1542
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
482
1543
|
container?: null | ContainerStylingProperties;
|
|
1544
|
+
/** Background color and gradient styles. */
|
|
483
1545
|
background?: null | BackgroundStylingProperties;
|
|
1546
|
+
/** Border width, color, and radius styles. */
|
|
484
1547
|
border?: null | BorderStylingProperties;
|
|
1548
|
+
/** Width and height dimension styles. */
|
|
485
1549
|
dimension?: null | DimensionStylingProperties;
|
|
1550
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
486
1551
|
flexChild?: null | FlexChildStylingProperties;
|
|
1552
|
+
/** Padding and margin spacing styles. */
|
|
487
1553
|
spacing?: null | SpacingStylingProperties;
|
|
488
1554
|
}
|
|
1555
|
+
/**
|
|
1556
|
+
* Styling elements for the ProgressControl button.
|
|
1557
|
+
* The `own` array contains state-dependent styling blocks (e.g. default, pressed, disabled)
|
|
1558
|
+
* applied to the control button itself.
|
|
1559
|
+
*/
|
|
489
1560
|
export interface ProgressControlElements {
|
|
1561
|
+
/**
|
|
1562
|
+
* Array of state-dependent styling blocks for the control button.
|
|
1563
|
+
* Each block targets a specific interaction state (default, pressed, disabled, etc.).
|
|
1564
|
+
*/
|
|
490
1565
|
own: BasicStateStylingBlock<ProgressControlStyle>[];
|
|
491
1566
|
}
|
|
492
|
-
|
|
1567
|
+
/** The direction in which the progress control advances offers. */
|
|
1568
|
+
export type ProgressionDirection =
|
|
1569
|
+
/** Advance to the next offer or group. */
|
|
1570
|
+
"Forward"
|
|
1571
|
+
/** Return to the previous offer or group. */
|
|
1572
|
+
| "Backward";
|
|
1573
|
+
/**
|
|
1574
|
+
* A button that advances or reverses offer progression.
|
|
1575
|
+
* Used with OneByOneDistribution or GroupedDistribution for navigation.
|
|
1576
|
+
*
|
|
1577
|
+
* MUST specify a `direction` (Forward or Backward).
|
|
1578
|
+
* Pair with a distribution node for the control to have an effect.
|
|
1579
|
+
* Typically contains an arrow icon as child content.
|
|
1580
|
+
*/
|
|
493
1581
|
export interface ProgressControlModel<Children, Predicates> {
|
|
1582
|
+
/** Visual styles for the control. Uses the LayoutStyle wrapper with conditional style transitions. */
|
|
494
1583
|
styles?: null | LayoutStyle<ProgressControlElements, ConditionalStyleTransition<ProgressControlTransitions, Predicates>>;
|
|
1584
|
+
/** The direction to progress. MUST be either Forward or Backward. */
|
|
495
1585
|
direction: ProgressionDirection;
|
|
1586
|
+
/**
|
|
1587
|
+
* Child nodes forming the button content (e.g. an arrow icon).
|
|
1588
|
+
* MUST contain at least one child for the control to have visible content.
|
|
1589
|
+
*/
|
|
496
1590
|
children: Children[];
|
|
497
1591
|
}
|
|
1592
|
+
/** Transition styles for animating ProgressControl style changes. */
|
|
498
1593
|
export interface ProgressControlTransitions {
|
|
1594
|
+
/** Transition properties for the control button's own styles. */
|
|
499
1595
|
own?: null | ProgressControlStyle;
|
|
500
1596
|
}
|
|
1597
|
+
/**
|
|
1598
|
+
* Visual style properties for the ProgressIndicator container.
|
|
1599
|
+
* Contains the standard style categories for the outer indicator wrapper.
|
|
1600
|
+
*/
|
|
501
1601
|
export interface ProgressIndicatorStyles {
|
|
1602
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
502
1603
|
container?: null | ContainerStylingProperties;
|
|
1604
|
+
/** Background color and gradient styles. */
|
|
503
1605
|
background?: null | BackgroundStylingProperties;
|
|
1606
|
+
/** Border width, color, and radius styles. */
|
|
504
1607
|
border?: null | BorderStylingProperties;
|
|
1608
|
+
/** Width and height dimension styles. */
|
|
505
1609
|
dimension?: null | DimensionStylingProperties;
|
|
1610
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
506
1611
|
flexChild?: null | FlexChildStylingProperties;
|
|
1612
|
+
/** Padding and margin spacing styles. */
|
|
507
1613
|
spacing?: null | SpacingStylingProperties;
|
|
508
1614
|
}
|
|
1615
|
+
/**
|
|
1616
|
+
* Styling elements for the ProgressIndicator.
|
|
1617
|
+
* Contains styling blocks for the container, individual indicators, and special indicator states.
|
|
1618
|
+
*/
|
|
509
1619
|
export interface ProgressIndicatorElements {
|
|
1620
|
+
/** Array of state-dependent styling blocks for the indicator container. */
|
|
510
1621
|
own: BasicStateStylingBlock<ProgressIndicatorStyles>[];
|
|
1622
|
+
/** Styling blocks for each individual indicator item (default state). */
|
|
511
1623
|
indicator: BasicStateStylingBlock<IndicatorStyles>[];
|
|
1624
|
+
/**
|
|
1625
|
+
* Optional styling blocks for the currently active indicator.
|
|
1626
|
+
* If omitted, the default indicator styling is used.
|
|
1627
|
+
*/
|
|
512
1628
|
activeIndicator?: null | BasicStateStylingBlock<IndicatorStyles>[];
|
|
1629
|
+
/**
|
|
1630
|
+
* Optional styling blocks for indicators that have been seen/visited.
|
|
1631
|
+
* If omitted, the default indicator styling is used.
|
|
1632
|
+
*/
|
|
513
1633
|
seenIndicator?: null | BasicStateStylingBlock<IndicatorStyles>[];
|
|
514
1634
|
}
|
|
1635
|
+
/**
|
|
1636
|
+
* Displays visual progress indicators (dots, bars) showing the user's position
|
|
1637
|
+
* within a series of offers.
|
|
1638
|
+
*
|
|
1639
|
+
* MUST be paired with a distribution node (OneByOneDistribution, GroupedDistribution, etc.)
|
|
1640
|
+
* to track position. The indicator automatically reflects the current offer position.
|
|
1641
|
+
* Use `indicator` to specify the type (e.g. "dot", "bar", "number").
|
|
1642
|
+
*/
|
|
515
1643
|
export interface ProgressIndicatorModel<Predicates> {
|
|
1644
|
+
/**
|
|
1645
|
+
* Visual styles for the progress indicators.
|
|
1646
|
+
* Uses the LayoutStyle wrapper with conditional style transitions.
|
|
1647
|
+
*/
|
|
516
1648
|
styles?: null | LayoutStyle<ProgressIndicatorElements, ConditionalStyleTransition<ProgressIndicatorTransitions, Predicates>>;
|
|
1649
|
+
/**
|
|
1650
|
+
* The type of indicator to display (e.g. "dot", "bar", "number").
|
|
1651
|
+
* MUST be a valid indicator type string.
|
|
1652
|
+
*/
|
|
517
1653
|
indicator: string;
|
|
1654
|
+
/**
|
|
1655
|
+
* The initial position of the indicator (zero-indexed).
|
|
1656
|
+
* If omitted, defaults to position 0.
|
|
1657
|
+
*/
|
|
518
1658
|
startPosition?: null | number;
|
|
1659
|
+
/**
|
|
1660
|
+
* If true, the indicator is hidden from screen readers.
|
|
1661
|
+
* Set to true when the indicator is purely decorative.
|
|
1662
|
+
*/
|
|
519
1663
|
accessibilityHidden?: null | boolean;
|
|
520
1664
|
}
|
|
1665
|
+
/**
|
|
1666
|
+
* Transition styles for animating ProgressIndicator style changes.
|
|
1667
|
+
* Defines transitions for the container and each indicator state.
|
|
1668
|
+
*/
|
|
521
1669
|
export interface ProgressIndicatorTransitions {
|
|
1670
|
+
/** Transition properties for the indicator container's own styles. */
|
|
522
1671
|
own?: null | ProgressIndicatorStyles;
|
|
1672
|
+
/** Transition properties for the default indicator styles. */
|
|
523
1673
|
indicator?: null | IndicatorStyles;
|
|
1674
|
+
/** Transition properties for the active indicator styles. */
|
|
524
1675
|
activeIndicator?: null | IndicatorStyles;
|
|
1676
|
+
/** Transition properties for the seen indicator styles. */
|
|
525
1677
|
seenIndicator?: null | IndicatorStyles;
|
|
526
1678
|
}
|
|
1679
|
+
/**
|
|
1680
|
+
* Tests which offer index is currently visible in a carousel or progression.
|
|
1681
|
+
* Use 0 for the first offer, -1 for the last offer.
|
|
1682
|
+
*/
|
|
527
1683
|
export interface ProgressionPredicate {
|
|
1684
|
+
/** The comparison operator. */
|
|
528
1685
|
condition: OrderableWhenCondition;
|
|
1686
|
+
/**
|
|
1687
|
+
* The progression index to compare against. MUST be a string representation
|
|
1688
|
+
* of a number. Use "0" for the first offer, "-1" for the last offer.
|
|
1689
|
+
*/
|
|
529
1690
|
value: string;
|
|
530
1691
|
}
|
|
1692
|
+
/** Visual styles for the RichText node. */
|
|
531
1693
|
export interface RichTextStyle {
|
|
1694
|
+
/** Width, height and rotation properties. */
|
|
532
1695
|
dimension?: null | DimensionStylingProperties;
|
|
1696
|
+
/** Properties controlling behaviour as a flex child. */
|
|
533
1697
|
flexChild?: null | FlexChildStylingProperties;
|
|
1698
|
+
/** Padding, margin and offset properties. */
|
|
534
1699
|
spacing?: null | SpacingStylingProperties;
|
|
1700
|
+
/** Background color and image properties. */
|
|
535
1701
|
background?: null | BackgroundStylingProperties;
|
|
1702
|
+
/** Typography properties. */
|
|
536
1703
|
text?: null | TextStylingProperties;
|
|
537
1704
|
}
|
|
1705
|
+
/** Style elements for the RichText node. */
|
|
538
1706
|
export interface RichTextElements {
|
|
1707
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
539
1708
|
own: BasicStateStylingBlock<RichTextStyle>[];
|
|
1709
|
+
/** Style blocks for link elements within the rich text content. */
|
|
540
1710
|
link?: null | BasicStateStylingBlock<InLineTextStyle>[];
|
|
541
1711
|
}
|
|
1712
|
+
/** Renders HTML-formatted text content. Supports `<a>`, `<strong>`, `<em>`, `<br>` and other inline HTML elements. Use BasicText for plain text without HTML. */
|
|
542
1713
|
export interface RichTextModel<Predicates> {
|
|
1714
|
+
/** Visual styles for the text element. */
|
|
543
1715
|
styles?: null | LayoutStyle<RichTextElements, ConditionalStyleTransition<RichTextTransitions, Predicates>>;
|
|
1716
|
+
/** Controls how links within the rich text are opened when clicked. */
|
|
544
1717
|
openLinks?: null | LinkOpenTarget;
|
|
1718
|
+
/** The HTML text content to display. Supports inline HTML tags and data binding placeholders in the format %^DATA.key^% or %^ATTRIBUTE.key^%. */
|
|
545
1719
|
value: string;
|
|
546
1720
|
}
|
|
1721
|
+
/** Transition definitions for the RichText node. */
|
|
547
1722
|
export interface RichTextTransitions {
|
|
1723
|
+
/** Transition properties for the primary element. */
|
|
548
1724
|
own?: null | RichTextStyle;
|
|
1725
|
+
/** Transition properties for link elements. */
|
|
549
1726
|
link?: null | InLineTextStyle;
|
|
550
1727
|
}
|
|
1728
|
+
/**
|
|
1729
|
+
* The top-level schema structure for an outer layout. Contains the layout tree,
|
|
1730
|
+
* breakpoint definitions, settings and display configuration.
|
|
1731
|
+
*/
|
|
551
1732
|
export interface RootSchemaModel<Layout, Display, Settings> {
|
|
1733
|
+
/**
|
|
1734
|
+
* Map of breakpoint names to viewport width thresholds in platform units.
|
|
1735
|
+
* Defines responsive breakpoints for the layout.
|
|
1736
|
+
*/
|
|
552
1737
|
breakpoints: Record<string, number>;
|
|
1738
|
+
/** The root node of the layout tree. */
|
|
553
1739
|
layout: Layout;
|
|
1740
|
+
/** Platform-specific layout settings. */
|
|
554
1741
|
settings?: null | Settings;
|
|
1742
|
+
/** Controls how the layout is displayed (fullscreen, embedded, etc). */
|
|
555
1743
|
display?: null | Display;
|
|
556
1744
|
}
|
|
1745
|
+
/**
|
|
1746
|
+
* Available style categories for the Row element. Each optional field enables a specific
|
|
1747
|
+
* category of visual styling. Omit a field to leave that category unstyled.
|
|
1748
|
+
*/
|
|
557
1749
|
export interface RowStyle {
|
|
1750
|
+
/**
|
|
1751
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
1752
|
+
* MUST be used to control how children are arranged within the row.
|
|
1753
|
+
*/
|
|
558
1754
|
container?: null | ContainerStylingProperties;
|
|
1755
|
+
/**
|
|
1756
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
1757
|
+
* behind the row content.
|
|
1758
|
+
*/
|
|
559
1759
|
background?: null | BackgroundStylingProperties;
|
|
1760
|
+
/**
|
|
1761
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
1762
|
+
* rounded corners to the row.
|
|
1763
|
+
*/
|
|
560
1764
|
border?: null | BorderStylingProperties;
|
|
1765
|
+
/**
|
|
1766
|
+
* Width, height and rotation properties. Use to explicitly size the row or apply rotation
|
|
1767
|
+
* transforms. Do NOT set width/height if the row should size to its content.
|
|
1768
|
+
*/
|
|
561
1769
|
dimension?: null | DimensionStylingProperties;
|
|
1770
|
+
/**
|
|
1771
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
1772
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
1773
|
+
*/
|
|
562
1774
|
flexChild?: null | FlexChildStylingProperties;
|
|
1775
|
+
/** Padding, margin and offset properties. Use to add spacing inside or outside the row. */
|
|
563
1776
|
spacing?: null | SpacingStylingProperties;
|
|
564
1777
|
}
|
|
1778
|
+
/**
|
|
1779
|
+
* Styleable elements of the Row node. The Row has a single styleable element: its own
|
|
1780
|
+
* container.
|
|
1781
|
+
*/
|
|
565
1782
|
export interface RowElements {
|
|
1783
|
+
/**
|
|
1784
|
+
* Style blocks for the row container itself. The array represents breakpoint-specific
|
|
1785
|
+
* styles: first item is the default (no breakpoint), subsequent items correspond to
|
|
1786
|
+
* breakpoints in ascending order. MUST contain at least one item for the default style.
|
|
1787
|
+
*/
|
|
566
1788
|
own: BasicStateStylingBlock<RowStyle>[];
|
|
567
1789
|
}
|
|
1790
|
+
/**
|
|
1791
|
+
* A horizontal flex container that arranges its children in a row (left to right). Use for
|
|
1792
|
+
* horizontal layouts. Children are laid out along the horizontal axis by default. To control
|
|
1793
|
+
* alignment and distribution, configure the container styles. Do NOT nest Rows unnecessarily
|
|
1794
|
+
* when a single Row with appropriate styling would suffice.
|
|
1795
|
+
*/
|
|
568
1796
|
export interface RowModel<Children, Predicates> {
|
|
1797
|
+
/**
|
|
1798
|
+
* Accessibility label for screen readers. Omit if the row is purely decorative or its
|
|
1799
|
+
* children already provide sufficient accessible labels. MUST be set when the row
|
|
1800
|
+
* conveys meaning not available from its children alone.
|
|
1801
|
+
*/
|
|
569
1802
|
a11yLabel?: null | string;
|
|
1803
|
+
/**
|
|
1804
|
+
* Visual styles for this row. See styling documentation for the structure. Omit to use
|
|
1805
|
+
* default (unstyled) rendering.
|
|
1806
|
+
*/
|
|
570
1807
|
styles?: null | LayoutStyle<RowElements, ConditionalStyleTransition<RowTransitions, Predicates>>;
|
|
1808
|
+
/**
|
|
1809
|
+
* Child nodes rendered horizontally within this row.
|
|
1810
|
+
* Children are laid out left to right in source order.
|
|
1811
|
+
*/
|
|
571
1812
|
children: Children[];
|
|
572
1813
|
}
|
|
1814
|
+
/** Transition styles for the Row node. Use to animate style changes smoothly. */
|
|
573
1815
|
export interface RowTransitions {
|
|
1816
|
+
/**
|
|
1817
|
+
* Transition properties for the row container. Specifies which style properties
|
|
1818
|
+
* should animate and their duration/easing when values change.
|
|
1819
|
+
*/
|
|
574
1820
|
own?: null | RowStyle;
|
|
575
1821
|
}
|
|
1822
|
+
/**
|
|
1823
|
+
* Available style categories for the ScrollableColumn element. Each optional field enables a
|
|
1824
|
+
* specific category of visual styling. Omit a field to leave that category unstyled.
|
|
1825
|
+
*/
|
|
576
1826
|
export interface ScrollableColumnStyle {
|
|
1827
|
+
/**
|
|
1828
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
1829
|
+
* MUST be used to control how children are arranged within the scrollable column.
|
|
1830
|
+
*/
|
|
577
1831
|
container?: null | ContainerStylingProperties;
|
|
1832
|
+
/**
|
|
1833
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
1834
|
+
* behind the scrollable column content.
|
|
1835
|
+
*/
|
|
578
1836
|
background?: null | BackgroundStylingProperties;
|
|
1837
|
+
/**
|
|
1838
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
1839
|
+
* rounded corners to the scrollable column.
|
|
1840
|
+
*/
|
|
579
1841
|
border?: null | BorderStylingProperties;
|
|
1842
|
+
/**
|
|
1843
|
+
* Width, height and rotation properties. MUST set a constrained height for scrolling to
|
|
1844
|
+
* work. Without a height constraint, the container will expand to fit all content and
|
|
1845
|
+
* scrolling will not occur.
|
|
1846
|
+
*/
|
|
580
1847
|
dimension?: null | DimensionStylingProperties;
|
|
1848
|
+
/**
|
|
1849
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
1850
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
1851
|
+
*/
|
|
581
1852
|
flexChild?: null | FlexChildStylingProperties;
|
|
1853
|
+
/**
|
|
1854
|
+
* Padding, margin and offset properties. Use to add spacing inside or outside the
|
|
1855
|
+
* scrollable column.
|
|
1856
|
+
*/
|
|
582
1857
|
spacing?: null | SpacingStylingProperties;
|
|
583
1858
|
}
|
|
1859
|
+
/**
|
|
1860
|
+
* Styleable elements of the ScrollableColumn node. The ScrollableColumn has a single
|
|
1861
|
+
* styleable element: its own container.
|
|
1862
|
+
*/
|
|
584
1863
|
export interface ScrollableColumnElements {
|
|
1864
|
+
/**
|
|
1865
|
+
* Style blocks for the scrollable column container itself. The array represents
|
|
1866
|
+
* breakpoint-specific styles: first item is the default (no breakpoint), subsequent
|
|
1867
|
+
* items correspond to breakpoints in ascending order. MUST contain at least one item
|
|
1868
|
+
* for the default style.
|
|
1869
|
+
*/
|
|
585
1870
|
own: BasicStateStylingBlock<ScrollableColumnStyle>[];
|
|
586
1871
|
}
|
|
1872
|
+
/**
|
|
1873
|
+
* A vertical scrollable container. Children that exceed the container height can be scrolled
|
|
1874
|
+
* into view. Use when content may overflow vertically (e.g., long lists, content feeds).
|
|
1875
|
+
* MUST have a constrained height via dimension styles for scrolling to activate. Do NOT use
|
|
1876
|
+
* ScrollableColumn when a regular Column would suffice (i.e., when content fits without
|
|
1877
|
+
* scrolling).
|
|
1878
|
+
*/
|
|
587
1879
|
export interface ScrollableColumnModel<Children, Predicates> {
|
|
1880
|
+
/**
|
|
1881
|
+
* Accessibility label for screen readers. Omit if the scrollable column is purely
|
|
1882
|
+
* decorative or its children already provide sufficient accessible labels. MUST be set
|
|
1883
|
+
* when the scrollable column conveys meaning not available from its children alone.
|
|
1884
|
+
*/
|
|
588
1885
|
a11yLabel?: null | string;
|
|
1886
|
+
/**
|
|
1887
|
+
* Visual styles for this scrollable column. See styling documentation for the structure.
|
|
1888
|
+
* Omit to use default (unstyled) rendering.
|
|
1889
|
+
*/
|
|
589
1890
|
styles?: null | LayoutStyle<ScrollableColumnElements, ConditionalStyleTransition<ScrollableColumnTransitions, Predicates>>;
|
|
1891
|
+
/**
|
|
1892
|
+
* Child nodes rendered vertically within this scrollable column. MUST contain at least
|
|
1893
|
+
* one child. Children are laid out top to bottom in source order and scroll vertically
|
|
1894
|
+
* when they exceed the container height.
|
|
1895
|
+
*/
|
|
590
1896
|
children: Children[];
|
|
591
1897
|
}
|
|
1898
|
+
/** Transition styles for the ScrollableColumn node. Use to animate style changes smoothly. */
|
|
592
1899
|
export interface ScrollableColumnTransitions {
|
|
1900
|
+
/**
|
|
1901
|
+
* Transition properties for the scrollable column container. Specifies which style
|
|
1902
|
+
* properties should animate and their duration/easing when values change.
|
|
1903
|
+
*/
|
|
593
1904
|
own?: null | ScrollableColumnStyle;
|
|
594
1905
|
}
|
|
1906
|
+
/**
|
|
1907
|
+
* Available style categories for the ScrollableRow element. Each optional field enables a
|
|
1908
|
+
* specific category of visual styling. Omit a field to leave that category unstyled.
|
|
1909
|
+
*/
|
|
595
1910
|
export interface ScrollableRowStyle {
|
|
1911
|
+
/**
|
|
1912
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
1913
|
+
* MUST be used to control how children are arranged within the scrollable row.
|
|
1914
|
+
*/
|
|
596
1915
|
container?: null | ContainerStylingProperties;
|
|
1916
|
+
/**
|
|
1917
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
1918
|
+
* behind the scrollable row content.
|
|
1919
|
+
*/
|
|
597
1920
|
background?: null | BackgroundStylingProperties;
|
|
1921
|
+
/**
|
|
1922
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
1923
|
+
* rounded corners to the scrollable row.
|
|
1924
|
+
*/
|
|
598
1925
|
border?: null | BorderStylingProperties;
|
|
1926
|
+
/**
|
|
1927
|
+
* Width, height and rotation properties. MUST set a constrained width for scrolling to
|
|
1928
|
+
* work. Without a width constraint, the container will expand to fit all content and
|
|
1929
|
+
* scrolling will not occur.
|
|
1930
|
+
*/
|
|
599
1931
|
dimension?: null | DimensionStylingProperties;
|
|
1932
|
+
/**
|
|
1933
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
1934
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
1935
|
+
*/
|
|
600
1936
|
flexChild?: null | FlexChildStylingProperties;
|
|
1937
|
+
/**
|
|
1938
|
+
* Padding, margin and offset properties. Use to add spacing inside or outside the
|
|
1939
|
+
* scrollable row.
|
|
1940
|
+
*/
|
|
601
1941
|
spacing?: null | SpacingStylingProperties;
|
|
602
1942
|
}
|
|
1943
|
+
/**
|
|
1944
|
+
* Styleable elements of the ScrollableRow node. The ScrollableRow has a single styleable
|
|
1945
|
+
* element: its own container.
|
|
1946
|
+
*/
|
|
603
1947
|
export interface ScrollableRowElements {
|
|
1948
|
+
/**
|
|
1949
|
+
* Style blocks for the scrollable row container itself. The array represents
|
|
1950
|
+
* breakpoint-specific styles: first item is the default (no breakpoint), subsequent
|
|
1951
|
+
* items correspond to breakpoints in ascending order. MUST contain at least one item
|
|
1952
|
+
* for the default style.
|
|
1953
|
+
*/
|
|
604
1954
|
own: BasicStateStylingBlock<ScrollableRowStyle>[];
|
|
605
1955
|
}
|
|
1956
|
+
/**
|
|
1957
|
+
* A horizontal scrollable container. Children that exceed the container width can be scrolled
|
|
1958
|
+
* into view. Use when content may overflow horizontally (e.g., carousels, horizontal lists).
|
|
1959
|
+
* MUST have a constrained width via dimension styles for scrolling to activate. Do NOT use
|
|
1960
|
+
* ScrollableRow when a regular Row would suffice (i.e., when content fits without scrolling).
|
|
1961
|
+
*/
|
|
606
1962
|
export interface ScrollableRowModel<Children, Predicates> {
|
|
1963
|
+
/**
|
|
1964
|
+
* Accessibility label for screen readers. Omit if the scrollable row is purely decorative
|
|
1965
|
+
* or its children already provide sufficient accessible labels. MUST be set when the
|
|
1966
|
+
* scrollable row conveys meaning not available from its children alone.
|
|
1967
|
+
*/
|
|
607
1968
|
a11yLabel?: null | string;
|
|
1969
|
+
/**
|
|
1970
|
+
* Visual styles for this scrollable row. See styling documentation for the structure.
|
|
1971
|
+
* Omit to use default (unstyled) rendering.
|
|
1972
|
+
*/
|
|
608
1973
|
styles?: null | LayoutStyle<ScrollableRowElements, ConditionalStyleTransition<ScrollableRowTransitions, Predicates>>;
|
|
1974
|
+
/**
|
|
1975
|
+
* Child nodes rendered horizontally within this scrollable row. MUST contain at least
|
|
1976
|
+
* one child. Children are laid out left to right in source order and scroll horizontally
|
|
1977
|
+
* when they exceed the container width.
|
|
1978
|
+
*/
|
|
609
1979
|
children: Children[];
|
|
610
1980
|
}
|
|
1981
|
+
/** Transition styles for the ScrollableRow node. Use to animate style changes smoothly. */
|
|
611
1982
|
export interface ScrollableRowTransitions {
|
|
1983
|
+
/**
|
|
1984
|
+
* Transition properties for the scrollable row container. Specifies which style
|
|
1985
|
+
* properties should animate and their duration/easing when values change.
|
|
1986
|
+
*/
|
|
612
1987
|
own?: null | ScrollableRowStyle;
|
|
613
1988
|
}
|
|
1989
|
+
/**
|
|
1990
|
+
* Visual style properties for the SlideStateTrigger container.
|
|
1991
|
+
* Contains the standard style categories for the slider's outer container.
|
|
1992
|
+
*/
|
|
614
1993
|
export interface SlideStateTriggerOwnStyles {
|
|
1994
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
615
1995
|
container?: null | ContainerStylingProperties;
|
|
1996
|
+
/** Background color and gradient styles. */
|
|
616
1997
|
background?: null | BackgroundStylingProperties;
|
|
1998
|
+
/** Border width, color, and radius styles. */
|
|
617
1999
|
border?: null | BorderStylingProperties;
|
|
2000
|
+
/** Width and height dimension styles. */
|
|
618
2001
|
dimension?: null | DimensionStylingProperties;
|
|
2002
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
619
2003
|
flexChild?: null | FlexChildStylingProperties;
|
|
2004
|
+
/** Padding and margin spacing styles. */
|
|
620
2005
|
spacing?: null | SpacingStylingProperties;
|
|
621
2006
|
}
|
|
2007
|
+
/** Visual style properties for the slider thumb (the draggable handle). */
|
|
622
2008
|
export interface SlideStateTriggerThumbStyles {
|
|
2009
|
+
/** Text styling for the thumb label. */
|
|
623
2010
|
text?: null | TextStylingProperties;
|
|
2011
|
+
/** Background color and gradient styles for the thumb. */
|
|
624
2012
|
background?: null | BackgroundStylingProperties;
|
|
2013
|
+
/** Border width, color, and radius styles for the thumb. */
|
|
625
2014
|
border?: null | BorderStylingProperties;
|
|
2015
|
+
/** Width and height dimension styles for the thumb. */
|
|
626
2016
|
dimension?: null | DimensionStylingProperties;
|
|
2017
|
+
/** Flex child sizing and alignment styles for the thumb. */
|
|
627
2018
|
flexChild?: null | FlexChildStylingProperties;
|
|
2019
|
+
/** Padding and margin spacing styles for the thumb. */
|
|
628
2020
|
spacing?: null | SpacingStylingProperties;
|
|
629
2021
|
}
|
|
2022
|
+
/** Visual style properties for the slider label. */
|
|
630
2023
|
export interface SlideStateTriggerLabelStyles {
|
|
2024
|
+
/** Text styling for the label. */
|
|
631
2025
|
text?: null | TextStylingProperties;
|
|
2026
|
+
/** Padding and margin spacing styles for the label. */
|
|
632
2027
|
spacing?: null | SpacingStylingProperties;
|
|
633
2028
|
}
|
|
2029
|
+
/** Visual style properties for the slider fill (the filled portion of the track). */
|
|
634
2030
|
export interface SlideStateTriggerFillStyles {
|
|
2031
|
+
/** Background color and gradient styles for the fill. */
|
|
635
2032
|
background?: null | BackgroundStylingProperties;
|
|
2033
|
+
/** Border width, color, and radius styles for the fill. */
|
|
636
2034
|
border?: null | BorderStylingProperties;
|
|
637
2035
|
}
|
|
2036
|
+
/**
|
|
2037
|
+
* Styling elements for the SlideStateTrigger.
|
|
2038
|
+
* Contains styling blocks for the container, thumb, label, and fill sub-elements.
|
|
2039
|
+
*/
|
|
638
2040
|
export interface SlideStateTriggerElements {
|
|
2041
|
+
/** Array of stateless styling blocks for the slider container. */
|
|
639
2042
|
own: StatelessStylingBlock<SlideStateTriggerOwnStyles>[];
|
|
2043
|
+
/** Optional styling blocks for the slider thumb (draggable handle). */
|
|
640
2044
|
thumb?: null | StatelessStylingBlock<SlideStateTriggerThumbStyles>[];
|
|
2045
|
+
/** Optional styling blocks for the slider label. */
|
|
641
2046
|
label?: null | StatelessStylingBlock<SlideStateTriggerLabelStyles>[];
|
|
2047
|
+
/** Optional styling blocks for the slider fill (filled track portion). */
|
|
642
2048
|
fill?: null | StatelessStylingBlock<SlideStateTriggerFillStyles>[];
|
|
643
2049
|
}
|
|
2050
|
+
/** Configuration for the slider label. */
|
|
644
2051
|
export interface SlideStateTriggerLabel {
|
|
2052
|
+
/** Optional text value to display as the slider label. */
|
|
645
2053
|
value?: null | string;
|
|
646
2054
|
}
|
|
2055
|
+
/** Configuration for the slider thumb (draggable handle). */
|
|
647
2056
|
export interface SlideStateTriggerThumb {
|
|
2057
|
+
/** Optional icon name to display inside the thumb. */
|
|
648
2058
|
icon?: null | string;
|
|
649
2059
|
}
|
|
2060
|
+
/**
|
|
2061
|
+
* A slider control that updates a custom state value as the user drags.
|
|
2062
|
+
* The slider thumb can be dragged to set the state to a value proportional to the position.
|
|
2063
|
+
* Use with When nodes to conditionally show/hide content based on the slider state.
|
|
2064
|
+
*
|
|
2065
|
+
* MUST provide a `customStateKey` that matches the key in When predicates.
|
|
2066
|
+
* Optionally provide `customStateValue` to set the slider's initial position.
|
|
2067
|
+
*/
|
|
650
2068
|
export interface SlideStateTriggerModel<Predicates> {
|
|
2069
|
+
/** Visual styles for the slider. Uses the LayoutStyle wrapper with conditional style transitions. */
|
|
651
2070
|
styles?: null | LayoutStyle<SlideStateTriggerElements, ConditionalStyleTransition<SlideStateTriggerTransitions, Predicates>>;
|
|
2071
|
+
/** Configuration for the slider thumb (draggable handle). */
|
|
652
2072
|
thumb?: null | SlideStateTriggerThumb;
|
|
2073
|
+
/** Configuration for the slider label. */
|
|
653
2074
|
label?: null | SlideStateTriggerLabel;
|
|
2075
|
+
/**
|
|
2076
|
+
* The custom state key to update as the slider is dragged.
|
|
2077
|
+
* MUST match the key referenced in When node predicates.
|
|
2078
|
+
*/
|
|
654
2079
|
customStateKey: string;
|
|
2080
|
+
/**
|
|
2081
|
+
* The initial value of the custom state (slider position).
|
|
2082
|
+
* If omitted, defaults to the minimum position.
|
|
2083
|
+
*/
|
|
655
2084
|
customStateValue?: null | number;
|
|
656
2085
|
}
|
|
2086
|
+
/**
|
|
2087
|
+
* Transition styles for animating SlideStateTrigger style changes.
|
|
2088
|
+
* Defines transitions for all slider sub-elements.
|
|
2089
|
+
*/
|
|
657
2090
|
export interface SlideStateTriggerTransitions {
|
|
2091
|
+
/** Transition properties for the slider container's own styles. */
|
|
658
2092
|
own?: null | SlideStateTriggerOwnStyles;
|
|
2093
|
+
/** Transition properties for the thumb styles. */
|
|
659
2094
|
thumb?: null | SlideStateTriggerThumbStyles;
|
|
2095
|
+
/** Transition properties for the label styles. */
|
|
660
2096
|
label?: null | SlideStateTriggerLabelStyles;
|
|
2097
|
+
/** Transition properties for the fill styles. */
|
|
661
2098
|
fill?: null | SlideStateTriggerFillStyles;
|
|
662
2099
|
}
|
|
2100
|
+
/**
|
|
2101
|
+
* Visual style properties for the StackedDistribution container.
|
|
2102
|
+
* Contains the standard style categories: container layout, background colors,
|
|
2103
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
2104
|
+
*/
|
|
663
2105
|
export interface StackedDistributionStyles {
|
|
2106
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
664
2107
|
container?: null | ContainerStylingProperties;
|
|
2108
|
+
/** Background color and gradient styles. */
|
|
665
2109
|
background?: null | BackgroundStylingProperties;
|
|
2110
|
+
/** Border width, color, and radius styles. */
|
|
666
2111
|
border?: null | BorderStylingProperties;
|
|
2112
|
+
/** Width and height dimension styles. */
|
|
667
2113
|
dimension?: null | DimensionStylingProperties;
|
|
2114
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
668
2115
|
flexChild?: null | FlexChildStylingProperties;
|
|
2116
|
+
/** Padding and margin spacing styles. */
|
|
669
2117
|
spacing?: null | SpacingStylingProperties;
|
|
670
2118
|
}
|
|
2119
|
+
/**
|
|
2120
|
+
* Styling elements for the StackedDistribution container.
|
|
2121
|
+
* The `own` array contains stateless styling blocks applied to the stacked container itself.
|
|
2122
|
+
*/
|
|
671
2123
|
export interface StackedDistributionElements {
|
|
2124
|
+
/** Array of stateless styling blocks for the stacked container. */
|
|
672
2125
|
own: StatelessStylingBlock<StackedDistributionStyles>[];
|
|
673
2126
|
}
|
|
2127
|
+
/**
|
|
2128
|
+
* Presents multiple offers stacked vertically, all visible at once.
|
|
2129
|
+
* Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
|
|
2130
|
+
*
|
|
2131
|
+
* Use this when all offers should be visible simultaneously.
|
|
2132
|
+
* Do NOT use this for sequential one-at-a-time presentation; use OneByOneDistribution instead.
|
|
2133
|
+
*/
|
|
674
2134
|
export interface StackedDistributionModel<Predicates> {
|
|
2135
|
+
/**
|
|
2136
|
+
* Visual styles for the stacked container.
|
|
2137
|
+
* Uses the LayoutStyle wrapper with conditional style transitions.
|
|
2138
|
+
*/
|
|
675
2139
|
styles?: null | LayoutStyle<StackedDistributionElements, ConditionalStyleTransition<StackedDistributionTransitions, Predicates>>;
|
|
676
2140
|
}
|
|
2141
|
+
/** Transition styles for animating StackedDistribution style changes. */
|
|
677
2142
|
export interface StackedDistributionTransitions {
|
|
2143
|
+
/** Transition properties for the stacked container's own styles. */
|
|
678
2144
|
own?: null | StackedDistributionStyles;
|
|
679
2145
|
}
|
|
680
|
-
|
|
2146
|
+
/**
|
|
2147
|
+
* Condition operators for boolean values. Use these to test boolean flags.
|
|
2148
|
+
* Serialized as kebab-case strings: "is-true", "is-false".
|
|
2149
|
+
*/
|
|
2150
|
+
export type BooleanWhenCondition =
|
|
2151
|
+
/** True when the value is true. */
|
|
2152
|
+
"is-true"
|
|
2153
|
+
/** True when the value is false. */
|
|
2154
|
+
| "is-false";
|
|
2155
|
+
/**
|
|
2156
|
+
* A predicate with a hardcoded boolean value. Useful for enabling or disabling
|
|
2157
|
+
* sections during development or for static feature flags.
|
|
2158
|
+
*/
|
|
681
2159
|
export interface StaticBooleanPredicate {
|
|
2160
|
+
/** The boolean condition. Use "is-true" or "is-false". */
|
|
682
2161
|
condition: BooleanWhenCondition;
|
|
2162
|
+
/** The static boolean value to evaluate against the condition. */
|
|
683
2163
|
value: boolean;
|
|
684
2164
|
}
|
|
2165
|
+
/** Visual styles for the StaticIcon node. MUST include text styles with fontFamily set to 'rokt-icons' to render correctly. */
|
|
685
2166
|
export interface StaticIconStyles {
|
|
2167
|
+
/** Typography properties. MUST include fontFamily set to 'rokt-icons' for the icon to render correctly. */
|
|
686
2168
|
text?: null | TextStylingProperties;
|
|
2169
|
+
/** Width, height and rotation properties. */
|
|
687
2170
|
dimension?: null | DimensionStylingProperties;
|
|
2171
|
+
/** Properties controlling behaviour as a flex child. */
|
|
688
2172
|
flexChild?: null | FlexChildStylingProperties;
|
|
2173
|
+
/** Padding, margin and offset properties. */
|
|
689
2174
|
spacing?: null | SpacingStylingProperties;
|
|
2175
|
+
/** Background color and image properties. */
|
|
690
2176
|
background?: null | BackgroundStylingProperties;
|
|
2177
|
+
/** Border radius, color, width and style. */
|
|
691
2178
|
border?: null | BorderStylingProperties;
|
|
692
2179
|
}
|
|
2180
|
+
/** Style elements for the StaticIcon node. */
|
|
693
2181
|
export interface StaticIconElements {
|
|
2182
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
694
2183
|
own: BasicStateStylingBlock<StaticIconStyles>[];
|
|
695
2184
|
}
|
|
2185
|
+
/** Renders an SVG icon from the Rokt icon font. The icon is selected by name from the available icon set. */
|
|
696
2186
|
export interface StaticIconModel<Predicates> {
|
|
2187
|
+
/** Visual styles for the icon. MUST include text styles with fontFamily set to 'rokt-icons' to render correctly. */
|
|
697
2188
|
styles?: null | LayoutStyle<StaticIconElements, ConditionalStyleTransition<StaticIconTransitions, Predicates>>;
|
|
2189
|
+
/** The icon name. Available icons include: Car, CreditCard, Ticket, Star, Mobile, Train, Utensils, Calculator, Couch, CheckApproved, Check, Lock, Shield, ThumbUp, ShoppingCart, TrendingUp, Wallet, Luggage, Close, ChevronLeft, ChevronRight, ExpandMore, ExpandLess, ArrowBack, ArrowForward, ArrowUpward, ArrowDownward, Add, Remove, ExternalLink, CircleCheck, Help, Info. */
|
|
698
2190
|
name: string;
|
|
2191
|
+
/** Accessibility description of the icon for screen readers. */
|
|
699
2192
|
description?: null | string;
|
|
700
2193
|
}
|
|
2194
|
+
/** Transition definitions for the StaticIcon node. */
|
|
701
2195
|
export interface StaticIconTransitions {
|
|
2196
|
+
/** Transition properties for the primary element. */
|
|
702
2197
|
own?: null | StaticIconStyles;
|
|
703
2198
|
}
|
|
2199
|
+
/** Visual styles for the StaticImage node. */
|
|
704
2200
|
export interface StaticImageStyles {
|
|
2201
|
+
/** Background color and image properties. */
|
|
705
2202
|
background?: null | BackgroundStylingProperties;
|
|
2203
|
+
/** Border radius, color, width and style. */
|
|
706
2204
|
border?: null | BorderStylingProperties;
|
|
2205
|
+
/** Width, height and rotation properties. */
|
|
707
2206
|
dimension?: null | DimensionStylingProperties;
|
|
2207
|
+
/** Properties controlling behaviour as a flex child. */
|
|
708
2208
|
flexChild?: null | FlexChildStylingProperties;
|
|
2209
|
+
/** Padding, margin and offset properties. */
|
|
709
2210
|
spacing?: null | SpacingStylingProperties;
|
|
710
2211
|
}
|
|
2212
|
+
/** Style elements for the StaticImage node. */
|
|
711
2213
|
export interface StaticImageElements {
|
|
2214
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
712
2215
|
own: BasicStateStylingBlock<StaticImageStyles>[];
|
|
713
2216
|
}
|
|
2217
|
+
/** URL configuration for a static image with themed light/dark mode support. */
|
|
714
2218
|
export interface StaticImageUrl {
|
|
2219
|
+
/** The image URL for light mode. MUST be a valid URL. */
|
|
715
2220
|
light: string;
|
|
2221
|
+
/** The image URL for dark mode. If not provided, the light URL is used for both modes. */
|
|
716
2222
|
dark?: null | string;
|
|
717
2223
|
}
|
|
2224
|
+
/** Renders a static image from a provided URL. Use for images with known URLs (logos, icons, decorative images). */
|
|
718
2225
|
export interface StaticImageModel<Predicates> {
|
|
2226
|
+
/** Visual styles for the image element. */
|
|
719
2227
|
styles?: null | LayoutStyle<StaticImageElements, ConditionalStyleTransition<StaticImageTransitions, Predicates>>;
|
|
2228
|
+
/** Alt text for accessibility. Describes the image for screen readers. */
|
|
720
2229
|
alt?: null | string;
|
|
2230
|
+
/** Title text shown on hover. */
|
|
721
2231
|
title?: null | string;
|
|
2232
|
+
/** The image URL with themed light/dark mode support. */
|
|
722
2233
|
url: StaticImageUrl;
|
|
723
2234
|
}
|
|
2235
|
+
/** Transition definitions for the StaticImage node. */
|
|
724
2236
|
export interface StaticImageTransitions {
|
|
2237
|
+
/** Transition properties for the primary element. */
|
|
725
2238
|
own?: null | StaticImageStyles;
|
|
726
2239
|
}
|
|
2240
|
+
/**
|
|
2241
|
+
* Visual style properties for the StaticLink.
|
|
2242
|
+
* Contains the standard style categories: container layout, background colors,
|
|
2243
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
2244
|
+
*/
|
|
727
2245
|
export interface StaticLinkStyles {
|
|
2246
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
728
2247
|
container?: null | ContainerStylingProperties;
|
|
2248
|
+
/** Background color and gradient styles. */
|
|
729
2249
|
background?: null | BackgroundStylingProperties;
|
|
2250
|
+
/** Border width, color, and radius styles. */
|
|
730
2251
|
border?: null | BorderStylingProperties;
|
|
2252
|
+
/** Width and height dimension styles. */
|
|
731
2253
|
dimension?: null | DimensionStylingProperties;
|
|
2254
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
732
2255
|
flexChild?: null | FlexChildStylingProperties;
|
|
2256
|
+
/** Padding and margin spacing styles. */
|
|
733
2257
|
spacing?: null | SpacingStylingProperties;
|
|
734
2258
|
}
|
|
2259
|
+
/**
|
|
2260
|
+
* Styling elements for the StaticLink.
|
|
2261
|
+
* The `own` array contains state-dependent styling blocks (e.g. default, pressed)
|
|
2262
|
+
* applied to the link itself.
|
|
2263
|
+
*/
|
|
735
2264
|
export interface StaticLinkElements {
|
|
2265
|
+
/**
|
|
2266
|
+
* Array of state-dependent styling blocks for the link.
|
|
2267
|
+
* Each block targets a specific interaction state (default, pressed, etc.).
|
|
2268
|
+
*/
|
|
736
2269
|
own: BasicStateStylingBlock<StaticLinkStyles>[];
|
|
737
2270
|
}
|
|
2271
|
+
/**
|
|
2272
|
+
* A clickable link that wraps its children. Opens the specified URL when clicked.
|
|
2273
|
+
*
|
|
2274
|
+
* Use this node for navigation to external URLs. Do NOT use CreativeResponse for link navigation;
|
|
2275
|
+
* CreativeResponse is for offer accept/decline actions only.
|
|
2276
|
+
* The `src` field MUST be a valid URL string.
|
|
2277
|
+
*/
|
|
738
2278
|
export interface StaticLinkModel<Children, Predicates> {
|
|
2279
|
+
/**
|
|
2280
|
+
* The destination URL to open when the link is clicked.
|
|
2281
|
+
* MUST be a valid URL string (e.g. "https://example.com").
|
|
2282
|
+
*/
|
|
739
2283
|
src: string;
|
|
2284
|
+
/** Controls how the link URL is opened (e.g. in-app browser, external browser). */
|
|
740
2285
|
open: LinkOpenTarget;
|
|
2286
|
+
/** Visual styles for the link. Uses the LayoutStyle wrapper with conditional style transitions. */
|
|
741
2287
|
styles?: null | LayoutStyle<StaticLinkElements, ConditionalStyleTransition<StaticLinkTransitions, Predicates>>;
|
|
2288
|
+
/**
|
|
2289
|
+
* Child nodes that form the clickable link content.
|
|
2290
|
+
* MUST contain at least one child for the link to have visible, tappable content.
|
|
2291
|
+
*/
|
|
742
2292
|
children: Children[];
|
|
743
2293
|
}
|
|
2294
|
+
/**
|
|
2295
|
+
* Transition styles for animating StaticLink style changes.
|
|
2296
|
+
* Defines which style properties should animate when the link's conditional styles change.
|
|
2297
|
+
*/
|
|
744
2298
|
export interface StaticLinkTransitions {
|
|
2299
|
+
/** Transition properties for the link's own styles. */
|
|
745
2300
|
own?: null | StaticLinkStyles;
|
|
746
2301
|
}
|
|
2302
|
+
/**
|
|
2303
|
+
* Compares a static string input against a value. Use when you need to
|
|
2304
|
+
* evaluate a known, fixed string against a condition.
|
|
2305
|
+
*/
|
|
747
2306
|
export interface StaticStringPredicate {
|
|
2307
|
+
/** The static string value to test. */
|
|
748
2308
|
input: string;
|
|
2309
|
+
/** The comparison operator. Use "is" or "is-not". */
|
|
749
2310
|
condition: EqualityWhenCondition;
|
|
2311
|
+
/** The string to compare against. */
|
|
750
2312
|
value: string;
|
|
751
2313
|
}
|
|
2314
|
+
/**
|
|
2315
|
+
* Visual style properties for the ToggleButtonStateTrigger.
|
|
2316
|
+
* Contains the standard style categories: container layout, background colors,
|
|
2317
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
2318
|
+
*/
|
|
752
2319
|
export interface ToggleButtonStateTriggerStyle {
|
|
2320
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
753
2321
|
container?: null | ContainerStylingProperties;
|
|
2322
|
+
/** Background color and gradient styles. */
|
|
754
2323
|
background?: null | BackgroundStylingProperties;
|
|
2324
|
+
/** Border width, color, and radius styles. */
|
|
755
2325
|
border?: null | BorderStylingProperties;
|
|
2326
|
+
/** Width and height dimension styles. */
|
|
756
2327
|
dimension?: null | DimensionStylingProperties;
|
|
2328
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
757
2329
|
flexChild?: null | FlexChildStylingProperties;
|
|
2330
|
+
/** Padding and margin spacing styles. */
|
|
758
2331
|
spacing?: null | SpacingStylingProperties;
|
|
759
2332
|
}
|
|
2333
|
+
/**
|
|
2334
|
+
* Styling elements for the ToggleButtonStateTrigger.
|
|
2335
|
+
* The `own` array contains state-dependent styling blocks applied to the toggle button itself.
|
|
2336
|
+
*/
|
|
760
2337
|
export interface ToggleButtonStateTriggerElements {
|
|
2338
|
+
/** Array of state-dependent styling blocks for the toggle button. */
|
|
761
2339
|
own: BasicStateStylingBlock<ToggleButtonStateTriggerStyle>[];
|
|
762
2340
|
}
|
|
2341
|
+
/**
|
|
2342
|
+
* A toggle button that cycles a custom state between values when clicked.
|
|
2343
|
+
* Each click toggles the state value, typically between 0 and 1.
|
|
2344
|
+
* Use with When nodes to conditionally show/hide content based on the toggled state.
|
|
2345
|
+
*
|
|
2346
|
+
* MUST provide a `customStateKey` that matches the key in When predicates.
|
|
2347
|
+
* Unlike ButtonStateTrigger, this does NOT require a `value` field; it toggles automatically.
|
|
2348
|
+
*/
|
|
763
2349
|
export interface ToggleButtonStateTriggerModel<Children, Predicates> {
|
|
2350
|
+
/** Visual styles for the toggle button. */
|
|
764
2351
|
styles?: null | LayoutStyle<ToggleButtonStateTriggerElements, ConditionalStyleTransition<ToggleButtonStateTriggerTransitions, Predicates>>;
|
|
2352
|
+
/** Child nodes forming the toggle button content. */
|
|
765
2353
|
children: Children[];
|
|
2354
|
+
/**
|
|
2355
|
+
* The custom state key to toggle when the button is pressed.
|
|
2356
|
+
* MUST match the key referenced in When node predicates.
|
|
2357
|
+
*/
|
|
766
2358
|
customStateKey: string;
|
|
767
2359
|
}
|
|
2360
|
+
/** Transition styles for animating ToggleButtonStateTrigger style changes. */
|
|
768
2361
|
export interface ToggleButtonStateTriggerTransitions {
|
|
2362
|
+
/** Transition properties for the toggle button's own styles. */
|
|
769
2363
|
own?: null | ToggleButtonStateTriggerStyle;
|
|
770
2364
|
}
|
|
771
|
-
|
|
2365
|
+
/**
|
|
2366
|
+
* A transition that applies only when an element enters (becomes visible).
|
|
2367
|
+
* MUST be an object with a "type" field and a "settings" field.
|
|
2368
|
+
* Currently only "FadeIn" is supported.
|
|
2369
|
+
*/
|
|
2370
|
+
export type InTransition =
|
|
2371
|
+
/**
|
|
2372
|
+
* A fade-in transition. The element gradually becomes visible over the
|
|
2373
|
+
* specified duration.
|
|
2374
|
+
*/
|
|
2375
|
+
{
|
|
772
2376
|
type: "FadeIn";
|
|
773
2377
|
settings: FadeInTransitionSettings;
|
|
774
2378
|
};
|
|
775
|
-
|
|
2379
|
+
/**
|
|
2380
|
+
* A transition that applies only when an element exits (becomes hidden).
|
|
2381
|
+
* MUST be an object with a "type" field and a "settings" field.
|
|
2382
|
+
* Currently only "FadeOut" is supported.
|
|
2383
|
+
*/
|
|
2384
|
+
export type OutTransition =
|
|
2385
|
+
/**
|
|
2386
|
+
* A fade-out transition. The element gradually becomes invisible over
|
|
2387
|
+
* the specified duration.
|
|
2388
|
+
*/
|
|
2389
|
+
{
|
|
776
2390
|
type: "FadeOut";
|
|
777
2391
|
settings: FadeOutTransitionSettings;
|
|
778
2392
|
};
|
|
2393
|
+
/**
|
|
2394
|
+
* Transition configuration for when visibility changes.
|
|
2395
|
+
* Defines enter and exit animations for the When node's children.
|
|
2396
|
+
*/
|
|
779
2397
|
export interface WhenTransition {
|
|
2398
|
+
/** Transition animations to play when children become visible (predicates become true). */
|
|
780
2399
|
inTransition?: null | InTransition[];
|
|
2400
|
+
/** Transition animations to play when children become hidden (predicates become false). */
|
|
781
2401
|
outTransition?: null | OutTransition[];
|
|
782
2402
|
}
|
|
783
|
-
|
|
2403
|
+
/**
|
|
2404
|
+
* Controls the hiding behaviour of When children.
|
|
2405
|
+
* Determines whether hidden children still occupy space in the layout.
|
|
2406
|
+
*/
|
|
2407
|
+
export type WhenHidden =
|
|
2408
|
+
/**
|
|
2409
|
+
* Children are visually hidden but remain in the layout (take up space).
|
|
2410
|
+
* Use this when you need to preserve layout dimensions even when content is hidden.
|
|
2411
|
+
*/
|
|
2412
|
+
"visually"
|
|
2413
|
+
/**
|
|
2414
|
+
* Children are fully removed from the layout.
|
|
2415
|
+
* They take up no space and do not affect sibling positioning.
|
|
2416
|
+
*/
|
|
2417
|
+
| "functionally";
|
|
2418
|
+
/**
|
|
2419
|
+
* Conditional rendering node. Shows or hides its children based on predicate conditions.
|
|
2420
|
+
* All predicates MUST evaluate to true for children to be shown (AND logic).
|
|
2421
|
+
*
|
|
2422
|
+
* Use this node to conditionally display content based on custom state, offer count, or other
|
|
2423
|
+
* predicate conditions. Do NOT nest When nodes unnecessarily; combine predicates in a single
|
|
2424
|
+
* When node instead.
|
|
2425
|
+
*/
|
|
784
2426
|
export interface WhenModel<Children, Predicates> {
|
|
2427
|
+
/**
|
|
2428
|
+
* Array of conditions that MUST ALL be true for children to render.
|
|
2429
|
+
* Uses AND logic: if any predicate is false, children are hidden.
|
|
2430
|
+
* MUST contain at least one predicate.
|
|
2431
|
+
*/
|
|
785
2432
|
predicates: Predicates[];
|
|
2433
|
+
/** Child nodes to conditionally show or hide based on the predicates. */
|
|
786
2434
|
children: Children[];
|
|
2435
|
+
/**
|
|
2436
|
+
* Optional transition animation configuration for when visibility changes.
|
|
2437
|
+
* Controls how children animate in and out when predicates change.
|
|
2438
|
+
*/
|
|
787
2439
|
transition?: null | WhenTransition;
|
|
2440
|
+
/**
|
|
2441
|
+
* Controls how hidden children are treated in the layout.
|
|
2442
|
+
* If omitted, defaults to functionally hiding (fully removed from layout).
|
|
2443
|
+
*/
|
|
788
2444
|
hide?: null | WhenHidden;
|
|
789
2445
|
}
|
|
2446
|
+
/** Styling properties for ZStack container layout. ZStack layers children on top of each other. */
|
|
790
2447
|
export interface ZStackContainerStylingProperties {
|
|
2448
|
+
/** Controls horizontal positioning of children within the ZStack. */
|
|
791
2449
|
justifyContent?: null | FlexJustification;
|
|
2450
|
+
/** Controls vertical positioning of children within the ZStack. */
|
|
792
2451
|
alignItems?: null | FlexAlignment;
|
|
2452
|
+
/** Applies a box shadow effect around the container. */
|
|
793
2453
|
shadow?: null | Shadow;
|
|
2454
|
+
/** Controls whether content overflowing the container bounds is visible or hidden. */
|
|
794
2455
|
overflow?: null | Overflow;
|
|
2456
|
+
/** Applies a Gaussian blur effect. Value is the blur radius in platform units. */
|
|
795
2457
|
blur?: null | number;
|
|
796
2458
|
}
|
|
2459
|
+
/**
|
|
2460
|
+
* Available style categories for the ZStack element. Each optional field enables a specific
|
|
2461
|
+
* category of visual styling. Omit a field to leave that category unstyled.
|
|
2462
|
+
*/
|
|
797
2463
|
export interface ZStackStyle {
|
|
2464
|
+
/**
|
|
2465
|
+
* Layout properties for the ZStack container (alignment of stacked children).
|
|
2466
|
+
* MUST be used to control how children are positioned within the stack.
|
|
2467
|
+
*/
|
|
798
2468
|
container?: null | ZStackContainerStylingProperties;
|
|
2469
|
+
/**
|
|
2470
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
2471
|
+
* behind the stacked content.
|
|
2472
|
+
*/
|
|
799
2473
|
background?: null | BackgroundStylingProperties;
|
|
2474
|
+
/**
|
|
2475
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
2476
|
+
* rounded corners to the ZStack.
|
|
2477
|
+
*/
|
|
800
2478
|
border?: null | BorderStylingProperties;
|
|
2479
|
+
/**
|
|
2480
|
+
* Width, height and rotation properties. Use to explicitly size the ZStack or apply
|
|
2481
|
+
* rotation transforms. Do NOT set width/height if the ZStack should size to its content.
|
|
2482
|
+
*/
|
|
801
2483
|
dimension?: null | DimensionStylingProperties;
|
|
2484
|
+
/**
|
|
2485
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
2486
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
2487
|
+
*/
|
|
802
2488
|
flexChild?: null | FlexChildStylingProperties;
|
|
2489
|
+
/** Padding, margin and offset properties. Use to add spacing inside or outside the ZStack. */
|
|
803
2490
|
spacing?: null | SpacingStylingProperties;
|
|
804
2491
|
}
|
|
2492
|
+
/**
|
|
2493
|
+
* Styleable elements of the ZStack node. The ZStack has a single styleable element: its own
|
|
2494
|
+
* container.
|
|
2495
|
+
*/
|
|
805
2496
|
export interface ZStackElements {
|
|
2497
|
+
/**
|
|
2498
|
+
* Style blocks for the ZStack container itself. The array represents breakpoint-specific
|
|
2499
|
+
* styles: first item is the default (no breakpoint), subsequent items correspond to
|
|
2500
|
+
* breakpoints in ascending order. MUST contain at least one item for the default style.
|
|
2501
|
+
*/
|
|
806
2502
|
own: BasicStateStylingBlock<ZStackStyle>[];
|
|
807
2503
|
}
|
|
2504
|
+
/**
|
|
2505
|
+
* A layered container that stacks children on top of each other along the z-axis. Later
|
|
2506
|
+
* children render on top of earlier ones. Use for overlapping content such as badges on
|
|
2507
|
+
* images, text overlays, or layered decorative elements. Do NOT use ZStack for simple
|
|
2508
|
+
* sequential layouts; use Row or Column instead.
|
|
2509
|
+
*/
|
|
808
2510
|
export interface ZStackModel<Children, Predicates> {
|
|
2511
|
+
/**
|
|
2512
|
+
* Accessibility label for screen readers. Omit if the ZStack is purely decorative or its
|
|
2513
|
+
* children already provide sufficient accessible labels. MUST be set when the ZStack
|
|
2514
|
+
* conveys meaning not available from its children alone.
|
|
2515
|
+
*/
|
|
809
2516
|
a11yLabel?: null | string;
|
|
2517
|
+
/**
|
|
2518
|
+
* Visual styles for this ZStack. See styling documentation for the structure. Omit to use
|
|
2519
|
+
* default (unstyled) rendering.
|
|
2520
|
+
*/
|
|
810
2521
|
styles?: null | LayoutStyle<ZStackElements, ConditionalStyleTransition<ZStackTransitions, Predicates>>;
|
|
2522
|
+
/**
|
|
2523
|
+
* Child nodes stacked on top of each other within this ZStack. MUST contain at least one
|
|
2524
|
+
* child. Children are rendered in source order, with later children appearing on top of
|
|
2525
|
+
* earlier ones.
|
|
2526
|
+
*/
|
|
811
2527
|
children: Children[];
|
|
812
2528
|
}
|
|
2529
|
+
/** Transition styles for the ZStack node. Use to animate style changes smoothly. */
|
|
813
2530
|
export interface ZStackTransitions {
|
|
2531
|
+
/**
|
|
2532
|
+
* Transition properties for the ZStack container. Specifies which style properties
|
|
2533
|
+
* should animate and their duration/easing when values change.
|
|
2534
|
+
*/
|
|
814
2535
|
own?: null | ZStackStyle;
|
|
815
2536
|
}
|
|
2537
|
+
/**
|
|
2538
|
+
* Root node types for a catalog stacked collection item template. Must be a Row or Column
|
|
2539
|
+
* that contains CatalogStackedCollectionTemplateNodeChildren.
|
|
2540
|
+
*/
|
|
816
2541
|
export type CatalogStackedCollectionTemplateNode = {
|
|
817
2542
|
type: "Row";
|
|
818
2543
|
node: RowModel<CatalogStackedCollectionTemplateNodeChildren, LayoutVariantWhenPredicate>;
|
|
@@ -820,6 +2545,11 @@ export type CatalogStackedCollectionTemplateNode = {
|
|
|
820
2545
|
type: "Column";
|
|
821
2546
|
node: ColumnModel<CatalogStackedCollectionTemplateNodeChildren, LayoutVariantWhenPredicate>;
|
|
822
2547
|
};
|
|
2548
|
+
/**
|
|
2549
|
+
* Child node types allowed inside a catalog stacked collection template row or column.
|
|
2550
|
+
* Includes layout containers, text, images, icons, data-bound content, interactive triggers,
|
|
2551
|
+
* catalog response buttons, radio groups, and quantity counters.
|
|
2552
|
+
*/
|
|
823
2553
|
export type CatalogStackedCollectionTemplateNodeChildren = {
|
|
824
2554
|
type: "Row";
|
|
825
2555
|
node: RowModel<CatalogStackedCollectionTemplateNodeChildren, LayoutVariantWhenPredicate>;
|
|
@@ -869,9 +2599,36 @@ export type CatalogStackedCollectionTemplateNodeChildren = {
|
|
|
869
2599
|
type: "EscapeHatch";
|
|
870
2600
|
node: EscapeHatchModel;
|
|
871
2601
|
};
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
2602
|
+
/**
|
|
2603
|
+
* Fit behaviour options for height.
|
|
2604
|
+
* Used as the 'value' inside a {"type": "fit", "value": ...} height specification.
|
|
2605
|
+
*/
|
|
2606
|
+
export type DimensionHeightFitValue =
|
|
2607
|
+
/** Shrinks to fit the content height. */
|
|
2608
|
+
"wrap-content"
|
|
2609
|
+
/** Expands to fill the available height. */
|
|
2610
|
+
| "fit-height";
|
|
2611
|
+
/**
|
|
2612
|
+
* Fit behaviour options for width.
|
|
2613
|
+
* Used as the 'value' inside a {"type": "fit", "value": ...} width specification.
|
|
2614
|
+
*/
|
|
2615
|
+
export type DimensionWidthFitValue =
|
|
2616
|
+
/** Shrinks to fit the content width. */
|
|
2617
|
+
"wrap-content"
|
|
2618
|
+
/** Expands to fill the available width. */
|
|
2619
|
+
| "fit-width";
|
|
2620
|
+
/** Controls how the layout is displayed on the page. */
|
|
2621
|
+
export type LayoutDisplayPreset =
|
|
2622
|
+
/** Layout covers the full viewport. */
|
|
2623
|
+
"FULLSCREEN"
|
|
2624
|
+
/** Layout is embedded inline within the page content. */
|
|
2625
|
+
| "EMBEDDED"
|
|
2626
|
+
/** Layout is attached/anchored to a specific position. */
|
|
2627
|
+
| "ATTACHED";
|
|
2628
|
+
/**
|
|
2629
|
+
* All node types supported in the web platform schema. This is the union type used by SDKs.
|
|
2630
|
+
* Layouts are authored using OuterLayoutSchemaModel or LayoutVariantSchemaModel instead.
|
|
2631
|
+
*/
|
|
875
2632
|
export type LayoutSchemaModel = {
|
|
876
2633
|
type: "Row";
|
|
877
2634
|
node: RowModel<LayoutSchemaModel, WhenPredicate>;
|
|
@@ -960,6 +2717,11 @@ export type LayoutSchemaModel = {
|
|
|
960
2717
|
type: "EscapeHatch";
|
|
961
2718
|
node: EscapeHatchModel;
|
|
962
2719
|
};
|
|
2720
|
+
/**
|
|
2721
|
+
* Recursive child node types allowed within layout variant containers. Includes all layout
|
|
2722
|
+
* variant nodes such as layout, text, images, data-bound content, interactive triggers,
|
|
2723
|
+
* catalog components, and escape hatches.
|
|
2724
|
+
*/
|
|
963
2725
|
export type LayoutVariantChildren = {
|
|
964
2726
|
type: "Row";
|
|
965
2727
|
node: RowModel<LayoutVariantChildren, LayoutVariantWhenPredicate>;
|
|
@@ -1018,7 +2780,23 @@ export type LayoutVariantChildren = {
|
|
|
1018
2780
|
type: "EscapeHatch";
|
|
1019
2781
|
node: EscapeHatchModel;
|
|
1020
2782
|
};
|
|
1021
|
-
|
|
2783
|
+
/**
|
|
2784
|
+
* Keys for accessing application domain state in the layout variant (offer
|
|
2785
|
+
* format) context. Serialized as camelCase strings. These are the domain
|
|
2786
|
+
* state keys available when defining conditional rendering within a layout
|
|
2787
|
+
* variant.
|
|
2788
|
+
*/
|
|
2789
|
+
export type LayoutVariantDomainStateKey =
|
|
2790
|
+
/**
|
|
2791
|
+
* Indicates whether the current offer has been completed by the user.
|
|
2792
|
+
* Use to show post-completion content or hide offer-specific elements.
|
|
2793
|
+
*/
|
|
2794
|
+
"offerComplete";
|
|
2795
|
+
/**
|
|
2796
|
+
* Non-interactive child node types within layout variants. Only allows structural containers,
|
|
2797
|
+
* static/data images, basic text, icons, conditional nodes, and escape hatches. Used as
|
|
2798
|
+
* children of interactive elements like buttons and links in layout variants.
|
|
2799
|
+
*/
|
|
1022
2800
|
export type LayoutVariantNonInteractableChildren = {
|
|
1023
2801
|
type: "Row";
|
|
1024
2802
|
node: RowModel<LayoutVariantNonInteractableChildren, LayoutVariantWhenPredicate>;
|
|
@@ -1053,6 +2831,10 @@ export type LayoutVariantNonInteractableChildren = {
|
|
|
1053
2831
|
type: "EscapeHatch";
|
|
1054
2832
|
node: EscapeHatchModel;
|
|
1055
2833
|
};
|
|
2834
|
+
/**
|
|
2835
|
+
* Node types valid for use in layout variants (offer formats). Layout variants contain the
|
|
2836
|
+
* offer-specific creative content including images, text, response buttons, and catalog components.
|
|
2837
|
+
*/
|
|
1056
2838
|
export type LayoutVariantSchemaModel = {
|
|
1057
2839
|
type: "Row";
|
|
1058
2840
|
node: RowModel<LayoutVariantChildren, LayoutVariantWhenPredicate>;
|
|
@@ -1111,34 +2893,63 @@ export type LayoutVariantSchemaModel = {
|
|
|
1111
2893
|
type: "EscapeHatch";
|
|
1112
2894
|
node: EscapeHatchModel;
|
|
1113
2895
|
};
|
|
1114
|
-
|
|
2896
|
+
/**
|
|
2897
|
+
* Predicate types available in the layout variant (offer format) context.
|
|
2898
|
+
* This is a subset of predicates that are valid when defining conditional
|
|
2899
|
+
* rendering within a layout variant. Each predicate MUST include a "type"
|
|
2900
|
+
* field and a "predicate" field.
|
|
2901
|
+
*/
|
|
2902
|
+
export type LayoutVariantWhenPredicate =
|
|
2903
|
+
/** Tests the viewport width against a breakpoint value. */
|
|
2904
|
+
{
|
|
1115
2905
|
type: "Breakpoint";
|
|
1116
2906
|
predicate: BreakpointPredicate;
|
|
1117
|
-
}
|
|
2907
|
+
}
|
|
2908
|
+
/** Tests the position index of the current item in a collection. */
|
|
2909
|
+
| {
|
|
1118
2910
|
type: "Position";
|
|
1119
2911
|
predicate: PositionPredicate;
|
|
1120
|
-
}
|
|
2912
|
+
}
|
|
2913
|
+
/** Tests which offer index is currently visible. */
|
|
2914
|
+
| {
|
|
1121
2915
|
type: "Progression";
|
|
1122
2916
|
predicate: ProgressionPredicate;
|
|
1123
|
-
}
|
|
2917
|
+
}
|
|
2918
|
+
/** Tests whether dark mode is active. */
|
|
2919
|
+
| {
|
|
1124
2920
|
type: "DarkMode";
|
|
1125
2921
|
predicate: DarkModePredicate;
|
|
1126
|
-
}
|
|
2922
|
+
}
|
|
2923
|
+
/** Tests whether a creative data attribute exists. */
|
|
2924
|
+
| {
|
|
1127
2925
|
type: "CreativeCopy";
|
|
1128
2926
|
predicate: CreativeCopyPredicate;
|
|
1129
|
-
}
|
|
2927
|
+
}
|
|
2928
|
+
/** Evaluates a hardcoded boolean value. */
|
|
2929
|
+
| {
|
|
1130
2930
|
type: "StaticBoolean";
|
|
1131
2931
|
predicate: StaticBooleanPredicate;
|
|
1132
|
-
}
|
|
2932
|
+
}
|
|
2933
|
+
/** Tests a custom state value set by state trigger nodes. */
|
|
2934
|
+
| {
|
|
1133
2935
|
type: "CustomState";
|
|
1134
2936
|
predicate: CustomStatePredicate;
|
|
1135
|
-
}
|
|
2937
|
+
}
|
|
2938
|
+
/** Tests application domain state in the layout variant context. */
|
|
2939
|
+
| {
|
|
1136
2940
|
type: "DomainState";
|
|
1137
2941
|
predicate: DomainStatePredicate<LayoutVariantDomainStateKey>;
|
|
1138
|
-
}
|
|
2942
|
+
}
|
|
2943
|
+
/** Compares a static string input against a value. */
|
|
2944
|
+
| {
|
|
1139
2945
|
type: "StaticString";
|
|
1140
2946
|
predicate: StaticStringPredicate;
|
|
1141
2947
|
};
|
|
2948
|
+
/**
|
|
2949
|
+
* Child node types allowed inside modal containers (Overlay, BottomSheet) in the combined
|
|
2950
|
+
* SDK schema. Includes structural, presentational, distribution, and interactive nodes
|
|
2951
|
+
* but excludes nested modals.
|
|
2952
|
+
*/
|
|
1142
2953
|
export type ModalChildren = {
|
|
1143
2954
|
type: "Row";
|
|
1144
2955
|
node: RowModel<ModalChildren, WhenPredicate>;
|
|
@@ -1206,6 +3017,11 @@ export type ModalChildren = {
|
|
|
1206
3017
|
type: "EscapeHatch";
|
|
1207
3018
|
node: EscapeHatchModel;
|
|
1208
3019
|
};
|
|
3020
|
+
/**
|
|
3021
|
+
* Child node types allowed inside modal containers (Overlay, BottomSheet) within outer
|
|
3022
|
+
* layouts. Includes structural, presentational, distribution, and interactive nodes scoped
|
|
3023
|
+
* to outer layout predicates, but excludes nested modals.
|
|
3024
|
+
*/
|
|
1209
3025
|
export type ModalOuterChildren = {
|
|
1210
3026
|
type: "Row";
|
|
1211
3027
|
node: RowModel<ModalOuterChildren, OuterLayoutWhenPredicate>;
|
|
@@ -1273,6 +3089,11 @@ export type ModalOuterChildren = {
|
|
|
1273
3089
|
type: "EscapeHatch";
|
|
1274
3090
|
node: EscapeHatchModel;
|
|
1275
3091
|
};
|
|
3092
|
+
/**
|
|
3093
|
+
* Non-interactive child node types in the combined SDK schema. Only allows structural
|
|
3094
|
+
* containers, static/data images, basic text, icons, conditional nodes, and escape hatches.
|
|
3095
|
+
* Used as children of interactive elements like buttons and links.
|
|
3096
|
+
*/
|
|
1276
3097
|
export type NonInteractableChildren = {
|
|
1277
3098
|
type: "Row";
|
|
1278
3099
|
node: RowModel<NonInteractableChildren, WhenPredicate>;
|
|
@@ -1307,6 +3128,10 @@ export type NonInteractableChildren = {
|
|
|
1307
3128
|
type: "EscapeHatch";
|
|
1308
3129
|
node: EscapeHatchModel;
|
|
1309
3130
|
};
|
|
3131
|
+
/**
|
|
3132
|
+
* Recursive child node types allowed within outer layout containers. Includes structural,
|
|
3133
|
+
* distribution, navigation, and presentational nodes scoped to outer layout predicates.
|
|
3134
|
+
*/
|
|
1310
3135
|
export type OuterLayoutChildren = {
|
|
1311
3136
|
type: "Row";
|
|
1312
3137
|
node: RowModel<OuterLayoutChildren, OuterLayoutWhenPredicate>;
|
|
@@ -1374,6 +3199,11 @@ export type OuterLayoutChildren = {
|
|
|
1374
3199
|
type: "EscapeHatch";
|
|
1375
3200
|
node: EscapeHatchModel;
|
|
1376
3201
|
};
|
|
3202
|
+
/**
|
|
3203
|
+
* Non-interactive child node types within outer layouts. Only allows structural containers,
|
|
3204
|
+
* static images, basic text, icons, conditional nodes, and escape hatches. Used as children
|
|
3205
|
+
* of interactive elements like buttons and links in outer layouts.
|
|
3206
|
+
*/
|
|
1377
3207
|
export type OuterLayoutNonInteractableChildren = {
|
|
1378
3208
|
type: "Row";
|
|
1379
3209
|
node: RowModel<OuterLayoutNonInteractableChildren, OuterLayoutWhenPredicate>;
|
|
@@ -1402,6 +3232,11 @@ export type OuterLayoutNonInteractableChildren = {
|
|
|
1402
3232
|
type: "EscapeHatch";
|
|
1403
3233
|
node: EscapeHatchModel;
|
|
1404
3234
|
};
|
|
3235
|
+
/**
|
|
3236
|
+
* Node types valid for use in outer layouts. Outer layouts define the frame and offer
|
|
3237
|
+
* distribution but do not contain offer-specific content. They include structural containers,
|
|
3238
|
+
* distribution nodes, navigation controls, and close buttons.
|
|
3239
|
+
*/
|
|
1405
3240
|
export type OuterLayoutSchemaModel = {
|
|
1406
3241
|
type: "Row";
|
|
1407
3242
|
node: RowModel<OuterLayoutChildren, OuterLayoutWhenPredicate>;
|
|
@@ -1475,25 +3310,47 @@ export type OuterLayoutSchemaModel = {
|
|
|
1475
3310
|
type: "EscapeHatch";
|
|
1476
3311
|
node: EscapeHatchModel;
|
|
1477
3312
|
};
|
|
1478
|
-
|
|
3313
|
+
/**
|
|
3314
|
+
* Predicate types available in the outer layout context. This is a more
|
|
3315
|
+
* restricted subset of predicates for use in the outer layout wrapper.
|
|
3316
|
+
* Does NOT include Position, CreativeCopy, or DomainState predicates.
|
|
3317
|
+
* Each predicate MUST include a "type" field and a "predicate" field.
|
|
3318
|
+
*/
|
|
3319
|
+
export type OuterLayoutWhenPredicate =
|
|
3320
|
+
/** Tests the viewport width against a breakpoint value. */
|
|
3321
|
+
{
|
|
1479
3322
|
type: "Breakpoint";
|
|
1480
3323
|
predicate: BreakpointPredicate;
|
|
1481
|
-
}
|
|
3324
|
+
}
|
|
3325
|
+
/** Tests which offer index is currently visible. */
|
|
3326
|
+
| {
|
|
1482
3327
|
type: "Progression";
|
|
1483
3328
|
predicate: ProgressionPredicate;
|
|
1484
|
-
}
|
|
3329
|
+
}
|
|
3330
|
+
/** Tests whether dark mode is active. */
|
|
3331
|
+
| {
|
|
1485
3332
|
type: "DarkMode";
|
|
1486
3333
|
predicate: DarkModePredicate;
|
|
1487
|
-
}
|
|
3334
|
+
}
|
|
3335
|
+
/** Evaluates a hardcoded boolean value. */
|
|
3336
|
+
| {
|
|
1488
3337
|
type: "StaticBoolean";
|
|
1489
3338
|
predicate: StaticBooleanPredicate;
|
|
1490
|
-
}
|
|
3339
|
+
}
|
|
3340
|
+
/** Tests a custom state value set by state trigger nodes. */
|
|
3341
|
+
| {
|
|
1491
3342
|
type: "CustomState";
|
|
1492
3343
|
predicate: CustomStatePredicate;
|
|
1493
|
-
}
|
|
3344
|
+
}
|
|
3345
|
+
/** Compares a static string input against a value. */
|
|
3346
|
+
| {
|
|
1494
3347
|
type: "StaticString";
|
|
1495
3348
|
predicate: StaticStringPredicate;
|
|
1496
3349
|
};
|
|
3350
|
+
/**
|
|
3351
|
+
* Child node types allowed inside scrollable containers (ScrollableColumn, ScrollableRow)
|
|
3352
|
+
* in the combined SDK schema. Excludes overlay and bottom sheet nodes that cannot scroll.
|
|
3353
|
+
*/
|
|
1497
3354
|
export type ScrollableChildren = {
|
|
1498
3355
|
type: "Row";
|
|
1499
3356
|
node: RowModel<ScrollableChildren, WhenPredicate>;
|
|
@@ -1570,6 +3427,10 @@ export type ScrollableChildren = {
|
|
|
1570
3427
|
type: "EscapeHatch";
|
|
1571
3428
|
node: EscapeHatchModel;
|
|
1572
3429
|
};
|
|
3430
|
+
/**
|
|
3431
|
+
* Child node types allowed inside scrollable containers within layout variants. Excludes
|
|
3432
|
+
* overlay and bottom sheet nodes, scoped to layout variant predicates. Includes catalog components.
|
|
3433
|
+
*/
|
|
1573
3434
|
export type ScrollableLayoutVariantChildren = {
|
|
1574
3435
|
type: "Row";
|
|
1575
3436
|
node: RowModel<ScrollableLayoutVariantChildren, LayoutVariantWhenPredicate>;
|
|
@@ -1622,6 +3483,10 @@ export type ScrollableLayoutVariantChildren = {
|
|
|
1622
3483
|
type: "EscapeHatch";
|
|
1623
3484
|
node: EscapeHatchModel;
|
|
1624
3485
|
};
|
|
3486
|
+
/**
|
|
3487
|
+
* Child node types allowed inside scrollable containers within outer layouts. Excludes overlay
|
|
3488
|
+
* and bottom sheet nodes, scoped to outer layout predicates.
|
|
3489
|
+
*/
|
|
1625
3490
|
export type ScrollableOuterLayoutChildren = {
|
|
1626
3491
|
type: "Row";
|
|
1627
3492
|
node: RowModel<ScrollableOuterLayoutChildren, OuterLayoutWhenPredicate>;
|
|
@@ -1683,31 +3548,55 @@ export type ScrollableOuterLayoutChildren = {
|
|
|
1683
3548
|
type: "EscapeHatch";
|
|
1684
3549
|
node: EscapeHatchModel;
|
|
1685
3550
|
};
|
|
1686
|
-
|
|
3551
|
+
/**
|
|
3552
|
+
* All available predicate types for conditional rendering in the full layout
|
|
3553
|
+
* schema. Used with the When node to conditionally show or hide children.
|
|
3554
|
+
* Each predicate MUST include a "type" field to identify the predicate kind
|
|
3555
|
+
* and a "predicate" field containing the predicate configuration.
|
|
3556
|
+
*/
|
|
3557
|
+
export type WhenPredicate =
|
|
3558
|
+
/** Tests the viewport width against a breakpoint value. */
|
|
3559
|
+
{
|
|
1687
3560
|
type: "Breakpoint";
|
|
1688
3561
|
predicate: BreakpointPredicate;
|
|
1689
|
-
}
|
|
3562
|
+
}
|
|
3563
|
+
/** Tests the position index of the current item in a collection. */
|
|
3564
|
+
| {
|
|
1690
3565
|
type: "Position";
|
|
1691
3566
|
predicate: PositionPredicate;
|
|
1692
|
-
}
|
|
3567
|
+
}
|
|
3568
|
+
/** Tests which offer index is currently visible. */
|
|
3569
|
+
| {
|
|
1693
3570
|
type: "Progression";
|
|
1694
3571
|
predicate: ProgressionPredicate;
|
|
1695
|
-
}
|
|
3572
|
+
}
|
|
3573
|
+
/** Tests whether dark mode is active. */
|
|
3574
|
+
| {
|
|
1696
3575
|
type: "DarkMode";
|
|
1697
3576
|
predicate: DarkModePredicate;
|
|
1698
|
-
}
|
|
3577
|
+
}
|
|
3578
|
+
/** Tests whether a creative data attribute exists. */
|
|
3579
|
+
| {
|
|
1699
3580
|
type: "CreativeCopy";
|
|
1700
3581
|
predicate: CreativeCopyPredicate;
|
|
1701
|
-
}
|
|
3582
|
+
}
|
|
3583
|
+
/** Evaluates a hardcoded boolean value. */
|
|
3584
|
+
| {
|
|
1702
3585
|
type: "StaticBoolean";
|
|
1703
3586
|
predicate: StaticBooleanPredicate;
|
|
1704
|
-
}
|
|
3587
|
+
}
|
|
3588
|
+
/** Tests a custom state value set by state trigger nodes. */
|
|
3589
|
+
| {
|
|
1705
3590
|
type: "CustomState";
|
|
1706
3591
|
predicate: CustomStatePredicate;
|
|
1707
|
-
}
|
|
3592
|
+
}
|
|
3593
|
+
/** Tests application domain state. */
|
|
3594
|
+
| {
|
|
1708
3595
|
type: "DomainState";
|
|
1709
3596
|
predicate: LayoutSchemaDomainStatePredicate;
|
|
1710
|
-
}
|
|
3597
|
+
}
|
|
3598
|
+
/** Compares a static string input against a value. */
|
|
3599
|
+
| {
|
|
1711
3600
|
type: "StaticString";
|
|
1712
3601
|
predicate: StaticStringPredicate;
|
|
1713
3602
|
};
|