@rokt/dcui-orchestrator 0.2.1-rc.9 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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/extensions/address-form/src/sagas/cart-service/sagas.d.ts +9 -0
- 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/minimized-bottomsheet/src/components/bottom-sheet/bottom-sheet.d.ts +2 -0
- package/dist/extensions/minimized-bottomsheet/src/components/bottom-sheet/factory.d.ts +1 -0
- package/dist/extensions/minimized-bottomsheet/src/components/bottom-sheet/hooks.d.ts +2 -1
- package/dist/extensions/minimized-bottomsheet/src/components/bottomsheet-wrapper/overlay-wrapper.d.ts +2 -2
- 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 -46
- package/dist/index.js +102 -51
- 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-image-carousel/carousel-indicators.d.ts +20 -0
- package/dist/libraries/dcui-components/src/components/data-image-carousel/data-image-carousel.d.ts +100 -0
- package/dist/libraries/dcui-components/src/components/data-image-carousel/factory.d.ts +2 -0
- package/dist/libraries/dcui-components/src/components/data-image-carousel/index.d.ts +2 -0
- 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/icon-group/factory.d.ts +2 -0
- package/dist/libraries/dcui-components/src/components/icon-group/icon-group.d.ts +36 -0
- package/dist/libraries/dcui-components/src/components/icon-group/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 +44 -0
- 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 +17 -1
- package/dist/libraries/domain/src/behaviors/index.d.ts +6 -0
- package/dist/libraries/domain/src/behaviors/layout-events.d.ts +17 -0
- package/dist/libraries/domain/src/behaviors/offer-engagement.d.ts +3 -1
- package/dist/libraries/domain/src/behaviors/report-error.d.ts +26 -0
- package/dist/libraries/domain/src/behaviors/send-partner.d.ts +40 -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 +3 -0
- package/dist/libraries/domain/src/models/layout/index.d.ts +1 -0
- package/dist/libraries/domain/src/models/layout/layout-catalog-item.d.ts +2 -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-catalog-item.d.ts +8 -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/shipping.d.ts +25 -0
- package/dist/libraries/domain/src/models/signals.d.ts +19 -5
- 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 +2 -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 +7 -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/progression/sagas.d.ts +2 -1
- 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/libraries/saga-utils/src/utils/catalog-translator.d.ts +1 -0
- package/dist/modules/add-to-cart/src/components/escape-hatch/factory.d.ts +1 -1
- 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/components/read-more-text/read-more-text.d.ts +29 -0
- package/dist/modules/add-to-cart/src/components/read-more-text-container/read-more-text-container.d.ts +34 -0
- package/dist/modules/add-to-cart/src/components/scroll-to-target/scroll-to-target.d.ts +56 -0
- package/dist/modules/add-to-cart/src/components/tooltip/tooltip.d.ts +42 -0
- package/dist/modules/add-to-cart/src/components/when-catalog-quantity/when-catalog-quantity.d.ts +22 -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 +11 -0
- package/dist/modules/add-to-cart/src/selectors/catalogItems/selectors.d.ts +2 -0
- package/dist/modules/add-to-cart/src/selectors/creative/index.d.ts +1 -0
- package/dist/modules/add-to-cart/src/selectors/creative/selectors.d.ts +3 -0
- package/dist/modules/add-to-cart/src/selectors/index.d.ts +2 -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 +52 -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 +90 -0
- 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/checkbox/checkbox.d.ts +1 -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/custom-state-validation-trigger-button/custom-state-validation-trigger-button.d.ts +28 -0
- package/dist/modules/instant-purchase/src/components/dismiss-instant-purchase-button/dismiss-instant-purchase-button.d.ts +1 -0
- package/dist/modules/instant-purchase/src/components/escape-hatch/factory.d.ts +1 -1
- package/dist/modules/instant-purchase/src/components/escape-hatch/index.d.ts +1 -0
- package/dist/modules/instant-purchase/src/components/{catalog-drop-down → escapehatch-catalog-drop-down}/catalog-drop-down.d.ts +2 -0
- package/dist/modules/instant-purchase/src/components/{catalog-image-gallery → escapehatch-catalog-image-gallery}/catalog-image-gallery.d.ts +15 -4
- package/dist/modules/instant-purchase/src/components/escapehatch-catalog-image-gallery/constants.d.ts +9 -0
- package/dist/modules/instant-purchase/src/components/inline-container/factory.d.ts +2 -0
- package/dist/modules/instant-purchase/src/components/inline-container/inline-container.d.ts +55 -0
- package/dist/modules/instant-purchase/src/components/loading-spinner/loading-spinner.d.ts +2 -1
- package/dist/modules/instant-purchase/src/components/offer-lifecycle-timer/offer-lifecycle-timer.d.ts +2 -0
- package/dist/modules/instant-purchase/src/components/read-more-text-container/read-more-text-container.d.ts +1 -0
- package/dist/modules/instant-purchase/src/components/rich-text/factory.d.ts +2 -0
- package/dist/modules/instant-purchase/src/components/rich-text/rich-text.d.ts +64 -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 +70 -2
- 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 +17 -2
- package/dist/modules/instant-purchase/src/reducers/instant-purchase/index.d.ts +3 -0
- package/dist/modules/instant-purchase/src/reducers/instant-purchase/offer-lifecycle-event/index.d.ts +1 -0
- package/dist/modules/instant-purchase/src/reducers/instant-purchase/offer-lifecycle-event/reducer.d.ts +4 -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 +16 -1
- package/dist/modules/instant-purchase/src/sagas/instant-purchase/sagas.d.ts +20 -72
- 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 +11 -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 +11 -0
- package/dist/modules/standard-marketing/src/sagas/offer-engagement/channels.d.ts +4 -1
- 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/dist/modules/instant-purchase/src/components/catalog-variation-selection-button/catalog-variation-selection-button.d.ts +0 -28
- 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
|
@@ -1,1118 +1,3421 @@
|
|
|
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;
|
|
426
|
+
/** The opacity of the container, from 0.0 (fully transparent) to 1.0 (fully opaque). */
|
|
136
427
|
opacity?: null | number;
|
|
137
428
|
}
|
|
429
|
+
/**
|
|
430
|
+
* Available style categories for the BottomSheet content element. Each optional field
|
|
431
|
+
* enables a specific category of visual styling. Omit a field to leave that category
|
|
432
|
+
* unstyled.
|
|
433
|
+
*/
|
|
138
434
|
export interface BottomSheetStyles {
|
|
435
|
+
/**
|
|
436
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
437
|
+
* MUST be used to control how children are arranged within the bottom sheet content area.
|
|
438
|
+
*/
|
|
139
439
|
container?: null | ContainerStylingProperties;
|
|
440
|
+
/**
|
|
441
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
442
|
+
* behind the bottom sheet content.
|
|
443
|
+
*/
|
|
140
444
|
background?: null | BackgroundStylingProperties;
|
|
445
|
+
/**
|
|
446
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
447
|
+
* rounded corners to the bottom sheet content area. Typically top corners are rounded.
|
|
448
|
+
*/
|
|
141
449
|
border?: null | BorderStylingProperties;
|
|
450
|
+
/**
|
|
451
|
+
* Width, height and rotation properties. Use to explicitly size the bottom sheet content
|
|
452
|
+
* area. Do NOT set width/height if the bottom sheet should size to its content.
|
|
453
|
+
*/
|
|
142
454
|
dimension?: null | DimensionStylingProperties;
|
|
455
|
+
/**
|
|
456
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
457
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
458
|
+
*/
|
|
143
459
|
flexChild?: null | FlexChildStylingProperties;
|
|
460
|
+
/**
|
|
461
|
+
* Padding, margin and offset properties. Use to add spacing inside or outside the
|
|
462
|
+
* bottom sheet content area.
|
|
463
|
+
*/
|
|
144
464
|
spacing?: null | SpacingStylingProperties;
|
|
145
465
|
}
|
|
466
|
+
/**
|
|
467
|
+
* Style categories for the BottomSheet wrapper (backdrop) element. Controls the appearance
|
|
468
|
+
* of the area behind the bottom sheet content.
|
|
469
|
+
*/
|
|
146
470
|
export interface BottomSheetWrapperStyles {
|
|
471
|
+
/** Layout properties for the wrapper container that positions the bottom sheet content. */
|
|
147
472
|
container?: null | ContainerStylingProperties;
|
|
473
|
+
/**
|
|
474
|
+
* Background color for the backdrop. Typically a semi-transparent color (using `#AARRGGBB`
|
|
475
|
+
* format, e.g. `#80000000`) to dim the content behind the bottom sheet.
|
|
476
|
+
*/
|
|
148
477
|
background?: null | BackgroundStylingProperties;
|
|
149
478
|
}
|
|
479
|
+
/**
|
|
480
|
+
* Styleable elements of the BottomSheet node. The BottomSheet has two styleable elements:
|
|
481
|
+
* its own content area and its wrapper (backdrop).
|
|
482
|
+
*/
|
|
150
483
|
export interface BottomSheetElements {
|
|
484
|
+
/**
|
|
485
|
+
* Style blocks for the bottom sheet content area. The array represents
|
|
486
|
+
* breakpoint-specific styles: first item is the default (no breakpoint), subsequent
|
|
487
|
+
* items correspond to breakpoints in ascending order. MUST contain at least one item
|
|
488
|
+
* for the default style.
|
|
489
|
+
*/
|
|
151
490
|
own: BasicStateStylingBlock<BottomSheetStyles>[];
|
|
491
|
+
/**
|
|
492
|
+
* Style blocks for the bottom sheet wrapper (backdrop). The array represents
|
|
493
|
+
* breakpoint-specific styles: first item is the default, subsequent items correspond
|
|
494
|
+
* to breakpoints in ascending order.
|
|
495
|
+
*/
|
|
152
496
|
wrapper: BasicStateStylingBlock<BottomSheetWrapperStyles>[];
|
|
153
497
|
}
|
|
498
|
+
/**
|
|
499
|
+
* A modal container that slides up from the bottom of the screen. Use for contextual actions,
|
|
500
|
+
* forms, or supplementary content that does not require full-screen takeover. The bottom
|
|
501
|
+
* sheet appears with a backdrop behind it. Do NOT use BottomSheet for persistent content;
|
|
502
|
+
* use a regular Column or ScrollableColumn instead.
|
|
503
|
+
*/
|
|
154
504
|
export interface BottomSheetModel<Children, Predicates> {
|
|
505
|
+
/**
|
|
506
|
+
* If true, clicking the backdrop area closes the bottom sheet. MUST be set to true when
|
|
507
|
+
* the bottom sheet is dismissible. Set to false when the user MUST interact with the
|
|
508
|
+
* bottom sheet content before proceeding.
|
|
509
|
+
*/
|
|
155
510
|
allowBackdropToClose: boolean;
|
|
511
|
+
/**
|
|
512
|
+
* Accessibility label for screen readers. MUST be set to describe the purpose of the
|
|
513
|
+
* bottom sheet (e.g., "Share options" or "Filter settings").
|
|
514
|
+
*/
|
|
156
515
|
a11yLabel?: null | string;
|
|
516
|
+
/**
|
|
517
|
+
* Visual styles for this bottom sheet. See styling documentation for the structure. Omit
|
|
518
|
+
* to use default (unstyled) rendering.
|
|
519
|
+
*/
|
|
157
520
|
styles?: null | LayoutStyle<BottomSheetElements, ConditionalStyleTransition<BottomSheetTransitions, Predicates>>;
|
|
521
|
+
/** The content displayed within the bottom sheet. */
|
|
158
522
|
children: Children[];
|
|
159
523
|
}
|
|
524
|
+
/**
|
|
525
|
+
* Transition styles for the BottomSheet node. Use to animate style changes smoothly,
|
|
526
|
+
* particularly the slide-up entrance animation.
|
|
527
|
+
*/
|
|
160
528
|
export interface BottomSheetTransitions {
|
|
529
|
+
/**
|
|
530
|
+
* Transition properties for the bottom sheet content area. Specifies which style
|
|
531
|
+
* properties should animate and their duration/easing when values change.
|
|
532
|
+
*/
|
|
161
533
|
own?: null | BottomSheetStyles;
|
|
534
|
+
/** Transition properties for the bottom sheet wrapper (backdrop). */
|
|
162
535
|
wrapper?: null | BottomSheetWrapperStyles;
|
|
163
536
|
}
|
|
164
|
-
|
|
537
|
+
/**
|
|
538
|
+
* Condition operators for numeric/orderable comparisons. Use these to compare
|
|
539
|
+
* values that have a natural ordering (numbers, positions, breakpoints).
|
|
540
|
+
* Serialized as kebab-case strings: "is", "is-not", "is-below", "is-above".
|
|
541
|
+
*/
|
|
542
|
+
export type OrderableWhenCondition =
|
|
543
|
+
/** True when the value equals the specified value. */
|
|
544
|
+
"is"
|
|
545
|
+
/** True when the value does not equal the specified value. */
|
|
546
|
+
| "is-not"
|
|
547
|
+
/** True when the value is less than the specified value. */
|
|
548
|
+
| "is-below"
|
|
549
|
+
/** True when the value is greater than the specified value. */
|
|
550
|
+
| "is-above";
|
|
551
|
+
/**
|
|
552
|
+
* Tests the viewport width against a breakpoint value. Use for
|
|
553
|
+
* responsive layouts that adapt to different screen sizes. The value MUST
|
|
554
|
+
* be a string representation of a number in platform units.
|
|
555
|
+
*/
|
|
165
556
|
export interface BreakpointPredicate {
|
|
557
|
+
/** The comparison operator. Use "is-above" or "is-below" for responsive breakpoints. */
|
|
166
558
|
condition: OrderableWhenCondition;
|
|
559
|
+
/**
|
|
560
|
+
* The breakpoint width in platform units to compare against. MUST be a string
|
|
561
|
+
* representation of a number, e.g. "768".
|
|
562
|
+
*/
|
|
167
563
|
value: string;
|
|
168
564
|
}
|
|
565
|
+
/** A styling block with only a default state. Used for non-interactive elements. */
|
|
169
566
|
export interface StatelessStylingBlock<StyleProperties> {
|
|
567
|
+
/** The styles to apply. Always required. */
|
|
170
568
|
default: StyleProperties;
|
|
171
569
|
}
|
|
570
|
+
/**
|
|
571
|
+
* Visual style properties for the CarouselDistribution container.
|
|
572
|
+
* Contains the standard style categories: container layout, background colors,
|
|
573
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
574
|
+
*/
|
|
172
575
|
export interface CarouselDistributionStyles {
|
|
576
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
173
577
|
container?: null | ContainerStylingProperties;
|
|
578
|
+
/** Background color and gradient styles. */
|
|
174
579
|
background?: null | BackgroundStylingProperties;
|
|
580
|
+
/** Border width, color, and radius styles. */
|
|
175
581
|
border?: null | BorderStylingProperties;
|
|
582
|
+
/** Width and height dimension styles. */
|
|
176
583
|
dimension?: null | DimensionStylingProperties;
|
|
584
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
177
585
|
flexChild?: null | FlexChildStylingProperties;
|
|
586
|
+
/** Padding and margin spacing styles. */
|
|
178
587
|
spacing?: null | SpacingStylingProperties;
|
|
179
588
|
}
|
|
589
|
+
/**
|
|
590
|
+
* Styling elements for the CarouselDistribution container.
|
|
591
|
+
* The `own` array contains stateless styling blocks applied to the carousel container itself.
|
|
592
|
+
*/
|
|
180
593
|
export interface CarouselDistributionElements {
|
|
594
|
+
/** Array of stateless styling blocks for the carousel container. */
|
|
181
595
|
own: StatelessStylingBlock<CarouselDistributionStyles>[];
|
|
182
596
|
}
|
|
183
|
-
|
|
597
|
+
/**
|
|
598
|
+
* The size of the peek-through area showing adjacent carousel items.
|
|
599
|
+
* Controls how much of the next/previous items are visible at the edges.
|
|
600
|
+
*/
|
|
601
|
+
export type PeekThroughSize =
|
|
602
|
+
/** A fixed size in platform units (px on Web, pt on iOS, dp on Android) for the peek-through area. */
|
|
603
|
+
{
|
|
184
604
|
type: "Fixed";
|
|
185
605
|
value: number;
|
|
186
|
-
}
|
|
606
|
+
}
|
|
607
|
+
/** A percentage-based size for the peek-through area, relative to the carousel width. */
|
|
608
|
+
| {
|
|
187
609
|
type: "Percentage";
|
|
188
610
|
value: number;
|
|
189
611
|
};
|
|
612
|
+
/**
|
|
613
|
+
* Presents offers in a horizontally scrollable carousel.
|
|
614
|
+
* Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
|
|
615
|
+
* Users can swipe left/right to browse offers.
|
|
616
|
+
*
|
|
617
|
+
* Use `viewableItems` to control how many items are visible at once per breakpoint.
|
|
618
|
+
* Use `peekThroughSize` to hint that more items exist by showing partial adjacent items.
|
|
619
|
+
*/
|
|
190
620
|
export interface CarouselDistributionModel<Predicates> {
|
|
621
|
+
/**
|
|
622
|
+
* Configuration for how many items are visible at once.
|
|
623
|
+
* Provided as an array of values for different breakpoints.
|
|
624
|
+
*/
|
|
191
625
|
viewableItems: number[];
|
|
626
|
+
/**
|
|
627
|
+
* How much of the next/previous items peek into view.
|
|
628
|
+
* Provided as an array of PeekThroughSize values for different breakpoints.
|
|
629
|
+
* Use Fixed for absolute values in platform units or Percentage for relative values.
|
|
630
|
+
*/
|
|
192
631
|
peekThroughSize: PeekThroughSize[];
|
|
632
|
+
/**
|
|
633
|
+
* Visual styles for the carousel container.
|
|
634
|
+
* Uses the LayoutStyle wrapper with conditional style transitions.
|
|
635
|
+
*/
|
|
193
636
|
styles?: null | LayoutStyle<CarouselDistributionElements, ConditionalStyleTransition<CarouselDistributionTransitions, Predicates>>;
|
|
194
637
|
}
|
|
638
|
+
/** Transition styles for animating CarouselDistribution style changes. */
|
|
195
639
|
export interface CarouselDistributionTransitions {
|
|
640
|
+
/** Transition properties for the carousel container's own styles. */
|
|
196
641
|
own?: null | CarouselDistributionStyles;
|
|
197
642
|
}
|
|
643
|
+
/**
|
|
644
|
+
* Visual style properties for the increment and decrement buttons
|
|
645
|
+
* within the quantity counter.
|
|
646
|
+
*/
|
|
198
647
|
export interface CatalogQuantityButtonStyles {
|
|
648
|
+
/** Layout properties for the flex container. */
|
|
199
649
|
container?: null | ContainerStylingProperties;
|
|
650
|
+
/** Background color and image properties. */
|
|
200
651
|
background?: null | BackgroundStylingProperties;
|
|
652
|
+
/** Border radius, color, width and style. */
|
|
201
653
|
border?: null | BorderStylingProperties;
|
|
654
|
+
/** Width, height and rotation properties. */
|
|
202
655
|
dimension?: null | DimensionStylingProperties;
|
|
656
|
+
/** Properties controlling behaviour as a flex child. */
|
|
203
657
|
flexChild?: null | FlexChildStylingProperties;
|
|
658
|
+
/** Padding, margin and offset properties. */
|
|
204
659
|
spacing?: null | SpacingStylingProperties;
|
|
205
660
|
}
|
|
661
|
+
/**
|
|
662
|
+
* Configuration for the increment and decrement button nodes within
|
|
663
|
+
* the quantity counter. Each button contains a child node (typically an icon)
|
|
664
|
+
* and an accessibility label.
|
|
665
|
+
*/
|
|
206
666
|
export interface CatalogQuantityCounterButtons<Node> {
|
|
667
|
+
/** Child node rendered inside the increment ("+") button, typically a plus icon. */
|
|
207
668
|
increment: Node;
|
|
669
|
+
/** Child node rendered inside the decrement ("-") button, typically a minus icon. */
|
|
208
670
|
decrement: Node;
|
|
671
|
+
/** Accessibility label for the increment button, read by screen readers. */
|
|
209
672
|
a11yIncrementLabel?: null | string;
|
|
673
|
+
/** Accessibility label for the decrement button, read by screen readers. */
|
|
210
674
|
a11yDecrementLabel?: null | string;
|
|
211
675
|
}
|
|
676
|
+
/**
|
|
677
|
+
* Visual style properties for the quantity counter's outer container.
|
|
678
|
+
* Controls the overall layout and appearance of the counter widget.
|
|
679
|
+
*/
|
|
212
680
|
export interface CatalogQuantityCounterStyles {
|
|
681
|
+
/** Layout properties for the flex container. */
|
|
213
682
|
container?: null | ContainerStylingProperties;
|
|
683
|
+
/** Background color and image properties. */
|
|
214
684
|
background?: null | BackgroundStylingProperties;
|
|
685
|
+
/** Border radius, color, width and style. */
|
|
215
686
|
border?: null | BorderStylingProperties;
|
|
687
|
+
/** Width, height and rotation properties. */
|
|
216
688
|
dimension?: null | DimensionStylingProperties;
|
|
689
|
+
/** Properties controlling behaviour as a flex child. */
|
|
217
690
|
flexChild?: null | FlexChildStylingProperties;
|
|
691
|
+
/** Padding, margin and offset properties. */
|
|
218
692
|
spacing?: null | SpacingStylingProperties;
|
|
219
693
|
}
|
|
694
|
+
/**
|
|
695
|
+
* Visual style properties for the numeric input field within the quantity counter.
|
|
696
|
+
* Includes text styling for the displayed quantity value.
|
|
697
|
+
*/
|
|
220
698
|
export interface CatalogQuantityInputStyles {
|
|
699
|
+
/** Layout properties for the flex container. */
|
|
221
700
|
container?: null | ContainerStylingProperties;
|
|
701
|
+
/** Background color and image properties. */
|
|
222
702
|
background?: null | BackgroundStylingProperties;
|
|
703
|
+
/** Border radius, color, width and style. */
|
|
223
704
|
border?: null | BorderStylingProperties;
|
|
705
|
+
/** Width, height and rotation properties. */
|
|
224
706
|
dimension?: null | DimensionStylingProperties;
|
|
707
|
+
/** Properties controlling behaviour as a flex child. */
|
|
225
708
|
flexChild?: null | FlexChildStylingProperties;
|
|
709
|
+
/** Padding, margin and offset properties. */
|
|
226
710
|
spacing?: null | SpacingStylingProperties;
|
|
711
|
+
/** Typography properties. */
|
|
227
712
|
text?: null | TextStylingProperties;
|
|
228
713
|
}
|
|
714
|
+
/**
|
|
715
|
+
* Breakpoint-specific style elements for the quantity counter and its sub-elements.
|
|
716
|
+
* Allows different visual treatments for the counter, input field, and buttons
|
|
717
|
+
* at different screen sizes and interaction states.
|
|
718
|
+
*/
|
|
229
719
|
export interface CatalogQuantityCounterElements {
|
|
720
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
230
721
|
own: BasicStateStylingBlock<CatalogQuantityCounterStyles>[];
|
|
722
|
+
/** Style blocks for the numeric input field element. Array represents breakpoint-specific styles. */
|
|
231
723
|
input?: null | BasicStateStylingBlock<CatalogQuantityInputStyles>[];
|
|
724
|
+
/** Style blocks for the decrement ("-") button element. Array represents breakpoint-specific styles. */
|
|
232
725
|
decrementButton?: null | BasicStateStylingBlock<CatalogQuantityButtonStyles>[];
|
|
726
|
+
/** Style blocks for the increment ("+") button element. Array represents breakpoint-specific styles. */
|
|
233
727
|
incrementButton?: null | BasicStateStylingBlock<CatalogQuantityButtonStyles>[];
|
|
234
728
|
}
|
|
729
|
+
/**
|
|
730
|
+
* A quantity selector with increment/decrement controls for catalog items.
|
|
731
|
+
* Displays a numeric input field flanked by "+" and "-" buttons that allow
|
|
732
|
+
* the user to adjust the desired quantity. Optionally shows a forced upsell
|
|
733
|
+
* text message and supports direct numeric input.
|
|
734
|
+
*/
|
|
235
735
|
export interface CatalogQuantityCounterModel<Node, Predicates> {
|
|
736
|
+
/**
|
|
737
|
+
* Responsive and conditional styling for this counter, including breakpoint-specific
|
|
738
|
+
* element styles and animated transitions for the counter, input, and buttons.
|
|
739
|
+
*/
|
|
236
740
|
styles?: null | LayoutStyle<CatalogQuantityCounterElements, ConditionalStyleTransition<CatalogQuantityCounterTransitions, Predicates>>;
|
|
741
|
+
/**
|
|
742
|
+
* When true, renders an editable numeric input field between the buttons so the
|
|
743
|
+
* user can type a quantity directly. When false, only the buttons are shown.
|
|
744
|
+
*/
|
|
237
745
|
showInputField: boolean;
|
|
746
|
+
/**
|
|
747
|
+
* Accessibility label for the numeric input field, read by screen readers
|
|
748
|
+
* to describe the input's purpose (e.g., "Quantity").
|
|
749
|
+
*/
|
|
238
750
|
a11yInputLabel?: null | string;
|
|
751
|
+
/**
|
|
752
|
+
* Optional text displayed below the counter to encourage a larger quantity
|
|
753
|
+
* (e.g., "Buy 3 and save 10%"). Uses a BasicTextModel for styled text rendering.
|
|
754
|
+
*/
|
|
239
755
|
forcedUpsellText?: null | BasicTextModel<Predicates>;
|
|
756
|
+
/**
|
|
757
|
+
* Configuration for the increment and decrement buttons, including their
|
|
758
|
+
* child content nodes and accessibility labels.
|
|
759
|
+
*/
|
|
240
760
|
buttons?: null | CatalogQuantityCounterButtons<Node>;
|
|
241
761
|
}
|
|
762
|
+
/**
|
|
763
|
+
* Transition properties for animating style changes on the quantity counter
|
|
764
|
+
* and its sub-elements (input field and buttons).
|
|
765
|
+
*/
|
|
242
766
|
export interface CatalogQuantityCounterTransitions {
|
|
767
|
+
/** Transition properties for the primary element. */
|
|
243
768
|
own?: null | CatalogQuantityCounterStyles;
|
|
769
|
+
/** Transition properties for the numeric input field element. */
|
|
244
770
|
input?: null | CatalogQuantityInputStyles;
|
|
771
|
+
/** Transition properties for the decrement ("-") button element. */
|
|
245
772
|
decrementButton?: null | CatalogQuantityButtonStyles;
|
|
773
|
+
/** Transition properties for the increment ("+") button element. */
|
|
246
774
|
incrementButton?: null | CatalogQuantityButtonStyles;
|
|
247
775
|
}
|
|
776
|
+
/**
|
|
777
|
+
* Visual style properties for a catalog quantity option.
|
|
778
|
+
* Controls the layout and appearance of the selectable quantity chip.
|
|
779
|
+
*/
|
|
248
780
|
export interface CatalogQuantityStyles {
|
|
781
|
+
/** Layout properties for the flex container. */
|
|
249
782
|
container?: null | ContainerStylingProperties;
|
|
783
|
+
/** Background color and image properties. */
|
|
250
784
|
background?: null | BackgroundStylingProperties;
|
|
785
|
+
/** Border radius, color, width and style. */
|
|
251
786
|
border?: null | BorderStylingProperties;
|
|
787
|
+
/** Width, height and rotation properties. */
|
|
252
788
|
dimension?: null | DimensionStylingProperties;
|
|
789
|
+
/** Properties controlling behaviour as a flex child. */
|
|
253
790
|
flexChild?: null | FlexChildStylingProperties;
|
|
791
|
+
/** Padding, margin and offset properties. */
|
|
254
792
|
spacing?: null | SpacingStylingProperties;
|
|
255
793
|
}
|
|
794
|
+
/**
|
|
795
|
+
* Breakpoint-specific style elements for a catalog quantity option.
|
|
796
|
+
* Provides separate style arrays for the default state, the active (selected) state,
|
|
797
|
+
* and the passive (unselected) state.
|
|
798
|
+
*/
|
|
256
799
|
export interface CatalogQuantityOptionElements {
|
|
800
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
257
801
|
own: BasicStateStylingBlock<CatalogQuantityStyles>[];
|
|
802
|
+
/**
|
|
803
|
+
* Style blocks applied when this option is the currently selected (active) quantity.
|
|
804
|
+
* Array represents breakpoint-specific styles.
|
|
805
|
+
*/
|
|
258
806
|
active?: null | BasicStateStylingBlock<CatalogQuantityStyles>[];
|
|
807
|
+
/**
|
|
808
|
+
* Style blocks applied when this option is not selected (passive/unselected).
|
|
809
|
+
* Array represents breakpoint-specific styles.
|
|
810
|
+
*/
|
|
259
811
|
passive?: null | BasicStateStylingBlock<CatalogQuantityStyles>[];
|
|
260
812
|
}
|
|
813
|
+
/**
|
|
814
|
+
* A selectable quantity option within a catalog radio group or quantity picker.
|
|
815
|
+
* Represents a single discrete quantity value the user can choose (e.g., "1", "2", "5").
|
|
816
|
+
* Each option renders a template node (typically a label) and tracks its own
|
|
817
|
+
* active/passive visual state.
|
|
818
|
+
*/
|
|
261
819
|
export interface CatalogQuantityOptionModel<NodeTemplate, Predicates> {
|
|
820
|
+
/**
|
|
821
|
+
* Accessibility label read by screen readers to describe this quantity option
|
|
822
|
+
* (e.g., "Select quantity 2").
|
|
823
|
+
*/
|
|
262
824
|
a11yLabel?: null | string;
|
|
825
|
+
/**
|
|
826
|
+
* The numeric quantity value this option represents. When selected, this value
|
|
827
|
+
* is used as the chosen quantity for the catalog item.
|
|
828
|
+
*/
|
|
263
829
|
quantity: number;
|
|
830
|
+
/**
|
|
831
|
+
* Template node rendered as the visual content of this option, typically a text
|
|
832
|
+
* label displaying the quantity number.
|
|
833
|
+
*/
|
|
264
834
|
template: NodeTemplate;
|
|
835
|
+
/**
|
|
836
|
+
* Responsive and conditional styling for this option, including breakpoint-specific
|
|
837
|
+
* element styles and animated transitions for default, active, and passive states.
|
|
838
|
+
*/
|
|
265
839
|
styles?: null | LayoutStyle<CatalogQuantityOptionElements, ConditionalStyleTransition<CatalogQuantityOptionTransitions, Predicates>>;
|
|
266
840
|
}
|
|
841
|
+
/**
|
|
842
|
+
* Transition properties for animating style changes on a catalog quantity option
|
|
843
|
+
* across its default, active, and passive states.
|
|
844
|
+
*/
|
|
267
845
|
export interface CatalogQuantityOptionTransitions {
|
|
846
|
+
/** Transition properties for the primary element. */
|
|
268
847
|
own?: null | CatalogQuantityStyles;
|
|
848
|
+
/** Transition properties for the active (selected) state. */
|
|
269
849
|
active?: null | CatalogQuantityStyles;
|
|
850
|
+
/** Transition properties for the passive (unselected) state. */
|
|
270
851
|
passive?: null | CatalogQuantityStyles;
|
|
271
852
|
}
|
|
853
|
+
/**
|
|
854
|
+
* Visual style properties for the radio group's outer container.
|
|
855
|
+
* Controls the overall layout and appearance of the group wrapper.
|
|
856
|
+
*/
|
|
272
857
|
export interface CatalogRadioGroupStyles {
|
|
858
|
+
/** Layout properties for the flex container. */
|
|
273
859
|
container?: null | ContainerStylingProperties;
|
|
860
|
+
/** Background color and image properties. */
|
|
274
861
|
background?: null | BackgroundStylingProperties;
|
|
862
|
+
/** Border radius, color, width and style. */
|
|
275
863
|
border?: null | BorderStylingProperties;
|
|
864
|
+
/** Width, height and rotation properties. */
|
|
276
865
|
dimension?: null | DimensionStylingProperties;
|
|
866
|
+
/** Properties controlling behaviour as a flex child. */
|
|
277
867
|
flexChild?: null | FlexChildStylingProperties;
|
|
868
|
+
/** Padding, margin and offset properties. */
|
|
278
869
|
spacing?: null | SpacingStylingProperties;
|
|
279
870
|
}
|
|
871
|
+
/**
|
|
872
|
+
* Visual style properties for the container wrapping each individual
|
|
873
|
+
* radio option row (radio button + option content).
|
|
874
|
+
*/
|
|
280
875
|
export interface OptionContainerStyles {
|
|
876
|
+
/** Layout properties for the flex container. */
|
|
281
877
|
container?: null | ContainerStylingProperties;
|
|
878
|
+
/** Background color and image properties. */
|
|
282
879
|
background?: null | BackgroundStylingProperties;
|
|
880
|
+
/** Border radius, color, width and style. */
|
|
283
881
|
border?: null | BorderStylingProperties;
|
|
882
|
+
/** Width, height and rotation properties. */
|
|
284
883
|
dimension?: null | DimensionStylingProperties;
|
|
884
|
+
/** Properties controlling behaviour as a flex child. */
|
|
285
885
|
flexChild?: null | FlexChildStylingProperties;
|
|
886
|
+
/** Padding, margin and offset properties. */
|
|
286
887
|
spacing?: null | SpacingStylingProperties;
|
|
287
888
|
}
|
|
889
|
+
/**
|
|
890
|
+
* Visual style properties for the outer ring of a radio button indicator.
|
|
891
|
+
* This is the circular border element surrounding the inner filled circle.
|
|
892
|
+
*/
|
|
288
893
|
export interface RadioOuterStyles {
|
|
894
|
+
/** Layout properties for the flex container. */
|
|
289
895
|
container?: null | ContainerStylingProperties;
|
|
896
|
+
/** Background color and image properties. */
|
|
290
897
|
background?: null | BackgroundStylingProperties;
|
|
898
|
+
/** Border radius, color, width and style. */
|
|
291
899
|
border?: null | BorderStylingProperties;
|
|
900
|
+
/** Width, height and rotation properties. */
|
|
292
901
|
dimension?: null | DimensionStylingProperties;
|
|
902
|
+
/** Properties controlling behaviour as a flex child. */
|
|
293
903
|
flexChild?: null | FlexChildStylingProperties;
|
|
904
|
+
/** Padding, margin and offset properties. */
|
|
294
905
|
spacing?: null | SpacingStylingProperties;
|
|
295
906
|
}
|
|
907
|
+
/**
|
|
908
|
+
* Visual style properties for the inner filled circle of a radio button indicator.
|
|
909
|
+
* This dot appears inside the outer ring when the option is selected.
|
|
910
|
+
*/
|
|
296
911
|
export interface RadioInnerStyles {
|
|
912
|
+
/** Background color and image properties. */
|
|
297
913
|
background?: null | BackgroundStylingProperties;
|
|
914
|
+
/** Border radius, color, width and style. */
|
|
298
915
|
border?: null | BorderStylingProperties;
|
|
916
|
+
/** Properties controlling behaviour as a flex child. */
|
|
299
917
|
flexChild?: null | FlexChildStylingProperties;
|
|
300
918
|
}
|
|
919
|
+
/**
|
|
920
|
+
* Breakpoint-specific style elements for the radio group and all its sub-elements.
|
|
921
|
+
* Provides separate style arrays for the group container, option rows, and both
|
|
922
|
+
* checked and unchecked states of the radio button's outer ring and inner dot.
|
|
923
|
+
*/
|
|
301
924
|
export interface CatalogRadioGroupElements {
|
|
925
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
302
926
|
own: BasicStateStylingBlock<CatalogRadioGroupStyles>[];
|
|
927
|
+
/** Style blocks for each option's row container. Array represents breakpoint-specific styles. */
|
|
303
928
|
optionContainer?: null | BasicStateStylingBlock<OptionContainerStyles>[];
|
|
929
|
+
/**
|
|
930
|
+
* Style blocks for the radio button outer ring in the unchecked state.
|
|
931
|
+
* Array represents breakpoint-specific styles.
|
|
932
|
+
*/
|
|
304
933
|
radioButtonOuter?: null | BasicStateStylingBlock<RadioOuterStyles>[];
|
|
934
|
+
/**
|
|
935
|
+
* Style blocks for the radio button outer ring in the checked (selected) state.
|
|
936
|
+
* Array represents breakpoint-specific styles.
|
|
937
|
+
*/
|
|
305
938
|
radioButtonOuterChecked?: null | BasicStateStylingBlock<RadioOuterStyles>[];
|
|
939
|
+
/**
|
|
940
|
+
* Style blocks for the radio button inner dot in the unchecked state.
|
|
941
|
+
* Array represents breakpoint-specific styles.
|
|
942
|
+
*/
|
|
306
943
|
radioButtonInner?: null | BasicStateStylingBlock<RadioInnerStyles>[];
|
|
944
|
+
/**
|
|
945
|
+
* Style blocks for the radio button inner dot in the checked (selected) state.
|
|
946
|
+
* Array represents breakpoint-specific styles.
|
|
947
|
+
*/
|
|
307
948
|
radioButtonInnerChecked?: null | BasicStateStylingBlock<RadioInnerStyles>[];
|
|
308
949
|
}
|
|
309
|
-
|
|
950
|
+
/**
|
|
951
|
+
* Validation rules that can be applied to input fields. MUST be an object
|
|
952
|
+
* with a "type" field and a "value" field. Currently only "Required"
|
|
953
|
+
* validation is supported. Use to enforce that users provide input before
|
|
954
|
+
* submitting.
|
|
955
|
+
*/
|
|
956
|
+
export type InputValidation =
|
|
957
|
+
/**
|
|
958
|
+
* Validates that the input field is not empty. The value contains the
|
|
959
|
+
* error message configuration to show when validation fails.
|
|
960
|
+
*/
|
|
961
|
+
{
|
|
310
962
|
type: "Required";
|
|
311
963
|
value: InputRequiredValidation;
|
|
312
964
|
};
|
|
965
|
+
/**
|
|
966
|
+
* A radio button group for selecting a quantity from a set of predefined options
|
|
967
|
+
* in a catalog/add-to-cart flow. Renders a list of mutually exclusive radio buttons,
|
|
968
|
+
* each associated with a CatalogQuantityOption. Only one option may be selected at a time.
|
|
969
|
+
* Supports input validation rules to enforce selection constraints.
|
|
970
|
+
*/
|
|
313
971
|
export interface CatalogRadioGroupModel<NodeOptionTemplate, Predicates> {
|
|
972
|
+
/**
|
|
973
|
+
* Accessibility label read by screen readers to describe the radio group's purpose
|
|
974
|
+
* (e.g., "Select quantity").
|
|
975
|
+
*/
|
|
314
976
|
a11yLabel?: null | string;
|
|
977
|
+
/**
|
|
978
|
+
* Responsive and conditional styling for this radio group, including breakpoint-specific
|
|
979
|
+
* element styles and animated transitions for the group, option containers, and
|
|
980
|
+
* radio button indicators in both checked and unchecked states.
|
|
981
|
+
*/
|
|
315
982
|
styles?: null | LayoutStyle<CatalogRadioGroupElements, ConditionalStyleTransition<CatalogRadioGroupTransitions, Predicates>>;
|
|
983
|
+
/**
|
|
984
|
+
* Validation rules applied to the radio group input. Can enforce constraints such as
|
|
985
|
+
* requiring a selection before the form can be submitted.
|
|
986
|
+
*/
|
|
316
987
|
validations: InputValidation[];
|
|
988
|
+
/**
|
|
989
|
+
* The list of selectable quantity options displayed as radio buttons.
|
|
990
|
+
* Each option contains a quantity value and a template node for its visual content.
|
|
991
|
+
*/
|
|
317
992
|
options: CatalogQuantityOptionModel<NodeOptionTemplate, Predicates>[];
|
|
318
993
|
}
|
|
994
|
+
/**
|
|
995
|
+
* Transition properties for animating style changes on the radio group
|
|
996
|
+
* and all its sub-elements across checked and unchecked states.
|
|
997
|
+
*/
|
|
319
998
|
export interface CatalogRadioGroupTransitions {
|
|
999
|
+
/** Transition properties for the primary element. */
|
|
320
1000
|
own?: null | CatalogRadioGroupStyles;
|
|
1001
|
+
/** Transition properties for the option row container. */
|
|
321
1002
|
option_container?: null | OptionContainerStyles;
|
|
1003
|
+
/** Transition properties for the radio button outer ring (unchecked state). */
|
|
322
1004
|
radio_button_outer?: null | RadioOuterStyles;
|
|
1005
|
+
/** Transition properties for the radio button outer ring (checked state). */
|
|
323
1006
|
radio_button_outer_checked?: null | RadioOuterStyles;
|
|
1007
|
+
/** Transition properties for the radio button inner dot (unchecked state). */
|
|
324
1008
|
radio_button_inner?: null | RadioInnerStyles;
|
|
1009
|
+
/** Transition properties for the radio button inner dot (checked state). */
|
|
325
1010
|
radio_button_inner_checked?: null | RadioInnerStyles;
|
|
326
1011
|
}
|
|
1012
|
+
/**
|
|
1013
|
+
* Visual style properties for a catalog response button.
|
|
1014
|
+
* Controls the button's layout, appearance, and sizing.
|
|
1015
|
+
*/
|
|
327
1016
|
export interface CatalogResponseButtonStyles {
|
|
1017
|
+
/** Layout properties for the flex container. */
|
|
328
1018
|
container?: null | ContainerStylingProperties;
|
|
1019
|
+
/** Background color and image properties. */
|
|
329
1020
|
background?: null | BackgroundStylingProperties;
|
|
1021
|
+
/** Border radius, color, width and style. */
|
|
330
1022
|
border?: null | BorderStylingProperties;
|
|
1023
|
+
/** Width, height and rotation properties. */
|
|
331
1024
|
dimension?: null | DimensionStylingProperties;
|
|
1025
|
+
/** Properties controlling behaviour as a flex child. */
|
|
332
1026
|
flexChild?: null | FlexChildStylingProperties;
|
|
1027
|
+
/** Padding, margin and offset properties. */
|
|
333
1028
|
spacing?: null | SpacingStylingProperties;
|
|
334
1029
|
}
|
|
1030
|
+
/**
|
|
1031
|
+
* Breakpoint-specific style elements for a catalog response button.
|
|
1032
|
+
* Allows different visual treatments at different screen sizes and interaction states.
|
|
1033
|
+
*/
|
|
335
1034
|
export interface CatalogResponseButtonElements {
|
|
1035
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
336
1036
|
own: BasicStateStylingBlock<CatalogResponseButtonStyles>[];
|
|
337
1037
|
}
|
|
1038
|
+
/**
|
|
1039
|
+
* A response button for catalog/add-to-cart interactions. Similar to CreativeResponse but
|
|
1040
|
+
* designed for product catalog flows. When tapped, it sends a response keyed by `responseKey`
|
|
1041
|
+
* back to the server to advance the catalog interaction.
|
|
1042
|
+
*/
|
|
338
1043
|
export interface CatalogResponseButtonModel<Children, Predicates> {
|
|
1044
|
+
/** Accessibility label read by screen readers to describe the button's purpose. */
|
|
339
1045
|
a11y_label?: null | string;
|
|
1046
|
+
/**
|
|
1047
|
+
* Responsive and conditional styling for this button, including breakpoint-specific
|
|
1048
|
+
* element styles and animated transitions.
|
|
1049
|
+
*/
|
|
340
1050
|
styles?: null | LayoutStyle<CatalogResponseButtonElements, ConditionalStyleTransition<CatalogResponseButtonTransitions, Predicates>>;
|
|
1051
|
+
/**
|
|
1052
|
+
* Child nodes rendered inside this button. Typically contains text labels or icons
|
|
1053
|
+
* describing the action (e.g., "Add to Cart", product name).
|
|
1054
|
+
*/
|
|
341
1055
|
children: Children[];
|
|
342
1056
|
}
|
|
1057
|
+
/** Transition properties for animating style changes on a catalog response button. */
|
|
343
1058
|
export interface CatalogResponseButtonTransitions {
|
|
1059
|
+
/** Transition properties for the primary element. */
|
|
344
1060
|
own?: null | CatalogResponseButtonStyles;
|
|
345
1061
|
}
|
|
1062
|
+
/**
|
|
1063
|
+
* Visual style properties for the stacked collection container.
|
|
1064
|
+
* Controls the layout and appearance of the outer wrapper that holds
|
|
1065
|
+
* the stacked catalog item cards.
|
|
1066
|
+
*/
|
|
346
1067
|
export interface CatalogStackedCollectionStyles {
|
|
1068
|
+
/** Layout properties for the flex container. */
|
|
347
1069
|
container?: null | ContainerStylingProperties;
|
|
1070
|
+
/** Background color and image properties. */
|
|
348
1071
|
background?: null | BackgroundStylingProperties;
|
|
1072
|
+
/** Border radius, color, width and style. */
|
|
349
1073
|
border?: null | BorderStylingProperties;
|
|
1074
|
+
/** Width, height and rotation properties. */
|
|
350
1075
|
dimension?: null | DimensionStylingProperties;
|
|
1076
|
+
/** Properties controlling behaviour as a flex child. */
|
|
351
1077
|
flexChild?: null | FlexChildStylingProperties;
|
|
1078
|
+
/** Padding, margin and offset properties. */
|
|
352
1079
|
spacing?: null | SpacingStylingProperties;
|
|
353
1080
|
}
|
|
1081
|
+
/**
|
|
1082
|
+
* Breakpoint-specific style elements for a catalog stacked collection.
|
|
1083
|
+
* Uses stateless styling blocks since this is a static container without
|
|
1084
|
+
* interactive states.
|
|
1085
|
+
*/
|
|
354
1086
|
export interface CatalogStackedCollectionElements {
|
|
1087
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
355
1088
|
own: StatelessStylingBlock<CatalogStackedCollectionStyles>[];
|
|
356
1089
|
}
|
|
1090
|
+
/**
|
|
1091
|
+
* A vertically stacked collection of catalog items for add-to-cart flows.
|
|
1092
|
+
* Renders each catalog product as a card in a vertical stack layout, where items
|
|
1093
|
+
* are presented one below another. The visual content of each item is defined by
|
|
1094
|
+
* a reusable template node that is instantiated per product in the collection.
|
|
1095
|
+
*/
|
|
357
1096
|
export interface CatalogStackedCollectionModel<NodeTemplate, Predicates> {
|
|
1097
|
+
/**
|
|
1098
|
+
* Responsive and conditional styling for this collection container, including
|
|
1099
|
+
* breakpoint-specific element styles and animated transitions.
|
|
1100
|
+
*/
|
|
358
1101
|
styles?: null | LayoutStyle<CatalogStackedCollectionElements, ConditionalStyleTransition<CatalogStackedCollectionTransitions, Predicates>>;
|
|
1102
|
+
/**
|
|
1103
|
+
* Template node used to render each catalog item in the stacked collection.
|
|
1104
|
+
* This template is instantiated once per product, with product-specific data
|
|
1105
|
+
* bound at runtime.
|
|
1106
|
+
*/
|
|
359
1107
|
template: NodeTemplate;
|
|
360
1108
|
}
|
|
1109
|
+
/** Transition properties for animating style changes on a catalog stacked collection. */
|
|
361
1110
|
export interface CatalogStackedCollectionTransitions {
|
|
1111
|
+
/** Transition properties for the primary element. */
|
|
362
1112
|
own?: null | CatalogStackedCollectionStyles;
|
|
363
1113
|
}
|
|
1114
|
+
/**
|
|
1115
|
+
* The top-level schema structure for a child layout (layout variant). Similar to
|
|
1116
|
+
* RootSchemaModel but includes predicates for conditional display.
|
|
1117
|
+
*/
|
|
364
1118
|
export interface ChildRootSchemaModel<Layout, Display, Settings, Predicates> {
|
|
1119
|
+
/**
|
|
1120
|
+
* Map of breakpoint names to viewport width thresholds in platform units.
|
|
1121
|
+
* Defines responsive breakpoints for the layout.
|
|
1122
|
+
*/
|
|
365
1123
|
breakpoints: Record<string, number>;
|
|
1124
|
+
/** The root node of the layout tree. */
|
|
366
1125
|
layout: Layout;
|
|
1126
|
+
/** Platform-specific layout settings. */
|
|
367
1127
|
settings?: null | Settings;
|
|
1128
|
+
/** Controls how the layout is displayed (fullscreen, embedded, etc). */
|
|
368
1129
|
display?: null | Display;
|
|
1130
|
+
/** Conditions that determine when this child layout is displayed. */
|
|
369
1131
|
predicates: Predicates[];
|
|
370
1132
|
}
|
|
1133
|
+
/**
|
|
1134
|
+
* Visual style properties for the CloseButton.
|
|
1135
|
+
* Contains the standard style categories: container layout, background colors,
|
|
1136
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
1137
|
+
*/
|
|
371
1138
|
export interface CloseButtonStyles {
|
|
1139
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
372
1140
|
container?: null | ContainerStylingProperties;
|
|
1141
|
+
/** Background color and gradient styles. */
|
|
373
1142
|
background?: null | BackgroundStylingProperties;
|
|
1143
|
+
/** Border width, color, and radius styles. */
|
|
374
1144
|
border?: null | BorderStylingProperties;
|
|
1145
|
+
/** Width and height dimension styles. */
|
|
375
1146
|
dimension?: null | DimensionStylingProperties;
|
|
1147
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
376
1148
|
flexChild?: null | FlexChildStylingProperties;
|
|
1149
|
+
/** Padding and margin spacing styles. */
|
|
377
1150
|
spacing?: null | SpacingStylingProperties;
|
|
378
1151
|
}
|
|
1152
|
+
/**
|
|
1153
|
+
* Styling elements for the CloseButton.
|
|
1154
|
+
* The `own` array contains state-dependent styling blocks (e.g. default, pressed)
|
|
1155
|
+
* applied to the close button itself.
|
|
1156
|
+
*/
|
|
379
1157
|
export interface CloseButtonElements {
|
|
1158
|
+
/**
|
|
1159
|
+
* Array of state-dependent styling blocks for the close button.
|
|
1160
|
+
* Each block targets a specific interaction state (default, pressed, etc.).
|
|
1161
|
+
*/
|
|
380
1162
|
own: BasicStateStylingBlock<CloseButtonStyles>[];
|
|
381
1163
|
}
|
|
1164
|
+
/**
|
|
1165
|
+
* A button that closes/dismisses the layout when clicked.
|
|
1166
|
+
* Typically contains a StaticIcon with the 'Close' icon.
|
|
1167
|
+
*
|
|
1168
|
+
* MUST include child content (usually a StaticIcon with name `"Close"`).
|
|
1169
|
+
* Do NOT use CreativeResponse for dismissal; use CloseButton instead so that
|
|
1170
|
+
* the dismiss action is correctly tracked.
|
|
1171
|
+
*/
|
|
382
1172
|
export interface CloseButtonModel<Children, Predicates> {
|
|
1173
|
+
/**
|
|
1174
|
+
* Accessibility label for the close button.
|
|
1175
|
+
* MUST be provided for screen reader support (e.g. "Close" or "Dismiss").
|
|
1176
|
+
*/
|
|
383
1177
|
a11yLabel?: null | string;
|
|
1178
|
+
/** Visual styles for the close button. Uses the LayoutStyle wrapper with conditional style transitions. */
|
|
384
1179
|
styles?: null | LayoutStyle<CloseButtonElements, ConditionalStyleTransition<CloseButtonTransitions, Predicates>>;
|
|
1180
|
+
/**
|
|
1181
|
+
* Child nodes forming the button content. Typically a StaticIcon with name `"Close"`.
|
|
1182
|
+
* MUST contain at least one child to display the close icon or label.
|
|
1183
|
+
*/
|
|
385
1184
|
children: Children[];
|
|
1185
|
+
/**
|
|
1186
|
+
* Optional dismissal method configuration.
|
|
1187
|
+
* Controls how the dismissal is reported for analytics purposes.
|
|
1188
|
+
*/
|
|
386
1189
|
dismissalMethod?: null | string;
|
|
387
1190
|
}
|
|
1191
|
+
/**
|
|
1192
|
+
* Transition styles for animating CloseButton style changes.
|
|
1193
|
+
* Defines which style properties should animate when the button's conditional styles change.
|
|
1194
|
+
*/
|
|
388
1195
|
export interface CloseButtonTransitions {
|
|
1196
|
+
/** Transition properties for the close button's own styles. */
|
|
389
1197
|
own?: null | CloseButtonStyles;
|
|
390
1198
|
}
|
|
1199
|
+
/**
|
|
1200
|
+
* Available style categories for the Column element. Each optional field enables a specific
|
|
1201
|
+
* category of visual styling. Omit a field to leave that category unstyled.
|
|
1202
|
+
*/
|
|
391
1203
|
export interface ColumnStyle {
|
|
1204
|
+
/**
|
|
1205
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
1206
|
+
* MUST be used to control how children are arranged within the column.
|
|
1207
|
+
*/
|
|
392
1208
|
container?: null | ContainerStylingProperties;
|
|
1209
|
+
/**
|
|
1210
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
1211
|
+
* behind the column content.
|
|
1212
|
+
*/
|
|
393
1213
|
background?: null | BackgroundStylingProperties;
|
|
1214
|
+
/**
|
|
1215
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
1216
|
+
* rounded corners to the column.
|
|
1217
|
+
*/
|
|
394
1218
|
border?: null | BorderStylingProperties;
|
|
1219
|
+
/**
|
|
1220
|
+
* Width, height and rotation properties. Use to explicitly size the column or apply
|
|
1221
|
+
* rotation transforms. Do NOT set width/height if the column should size to its content.
|
|
1222
|
+
*/
|
|
395
1223
|
dimension?: null | DimensionStylingProperties;
|
|
1224
|
+
/**
|
|
1225
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
1226
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
1227
|
+
*/
|
|
396
1228
|
flexChild?: null | FlexChildStylingProperties;
|
|
1229
|
+
/** Padding, margin and offset properties. Use to add spacing inside or outside the column. */
|
|
397
1230
|
spacing?: null | SpacingStylingProperties;
|
|
398
1231
|
}
|
|
1232
|
+
/**
|
|
1233
|
+
* Styleable elements of the Column node. The Column has a single styleable element: its own
|
|
1234
|
+
* container.
|
|
1235
|
+
*/
|
|
399
1236
|
export interface ColumnElements {
|
|
1237
|
+
/**
|
|
1238
|
+
* Style blocks for the column container itself. The array represents breakpoint-specific
|
|
1239
|
+
* styles: first item is the default (no breakpoint), subsequent items correspond to
|
|
1240
|
+
* breakpoints in ascending order. MUST contain at least one item for the default style.
|
|
1241
|
+
*/
|
|
400
1242
|
own: BasicStateStylingBlock<ColumnStyle>[];
|
|
401
1243
|
}
|
|
1244
|
+
/**
|
|
1245
|
+
* A vertical flex container that arranges its children in a column (top to bottom). Use for
|
|
1246
|
+
* vertical layouts. Children are laid out along the vertical axis by default. To control
|
|
1247
|
+
* alignment and distribution, configure the container styles. Do NOT nest Columns
|
|
1248
|
+
* unnecessarily when a single Column with appropriate styling would suffice.
|
|
1249
|
+
*/
|
|
402
1250
|
export interface ColumnModel<Children, Predicates> {
|
|
1251
|
+
/**
|
|
1252
|
+
* Accessibility label for screen readers. Omit if the column is purely decorative or its
|
|
1253
|
+
* children already provide sufficient accessible labels. MUST be set when the column
|
|
1254
|
+
* conveys meaning not available from its children alone.
|
|
1255
|
+
*/
|
|
403
1256
|
a11yLabel?: null | string;
|
|
1257
|
+
/**
|
|
1258
|
+
* Visual styles for this column. See styling documentation for the structure. Omit to use
|
|
1259
|
+
* default (unstyled) rendering.
|
|
1260
|
+
*/
|
|
404
1261
|
styles?: null | LayoutStyle<ColumnElements, ConditionalStyleTransition<ColumnTransitions, Predicates>>;
|
|
1262
|
+
/**
|
|
1263
|
+
* Child nodes rendered vertically within this column.
|
|
1264
|
+
* Children are laid out top to bottom in source order.
|
|
1265
|
+
*/
|
|
405
1266
|
children: Children[];
|
|
406
1267
|
}
|
|
1268
|
+
/** Transition styles for the Column node. Use to animate style changes smoothly. */
|
|
407
1269
|
export interface ColumnTransitions {
|
|
1270
|
+
/**
|
|
1271
|
+
* Transition properties for the column container. Specifies which style properties
|
|
1272
|
+
* should animate and their duration/easing when values change.
|
|
1273
|
+
*/
|
|
408
1274
|
own?: null | ColumnStyle;
|
|
409
1275
|
}
|
|
1276
|
+
/**
|
|
1277
|
+
* Visual style properties for the CopyToClipboardButton.
|
|
1278
|
+
* Contains the standard style categories: container layout, background colors,
|
|
1279
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
1280
|
+
*/
|
|
410
1281
|
export interface CopyToClipboardButtonStyles {
|
|
1282
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
411
1283
|
container?: null | ContainerStylingProperties;
|
|
1284
|
+
/** Background color and gradient styles. */
|
|
412
1285
|
background?: null | BackgroundStylingProperties;
|
|
1286
|
+
/** Border width, color, and radius styles. */
|
|
413
1287
|
border?: null | BorderStylingProperties;
|
|
1288
|
+
/** Width and height dimension styles. */
|
|
414
1289
|
dimension?: null | DimensionStylingProperties;
|
|
1290
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
415
1291
|
flexChild?: null | FlexChildStylingProperties;
|
|
1292
|
+
/** Padding and margin spacing styles. */
|
|
416
1293
|
spacing?: null | SpacingStylingProperties;
|
|
417
1294
|
}
|
|
1295
|
+
/**
|
|
1296
|
+
* Styling elements for the CopyToClipboardButton.
|
|
1297
|
+
* The `own` array contains state-dependent styling blocks applied to the button itself.
|
|
1298
|
+
*/
|
|
418
1299
|
export interface CopyToClipboardButtonElements {
|
|
1300
|
+
/** Array of state-dependent styling blocks for the copy button. */
|
|
419
1301
|
own: BasicStateStylingBlock<CopyToClipboardButtonStyles>[];
|
|
420
1302
|
}
|
|
1303
|
+
/**
|
|
1304
|
+
* A button that copies the specified value to the clipboard when clicked,
|
|
1305
|
+
* and also sets a custom state key to signal the copy has occurred.
|
|
1306
|
+
* Use with When nodes to show a "Copied!" confirmation based on the state.
|
|
1307
|
+
*
|
|
1308
|
+
* MUST provide both `value` (the text to copy) and `customStateKey`.
|
|
1309
|
+
* The state key can be used in When predicates to conditionally show confirmation UI.
|
|
1310
|
+
*/
|
|
421
1311
|
export interface CopyToClipboardButtonModel<Children, Predicates> {
|
|
1312
|
+
/** Accessibility label for the copy button. */
|
|
422
1313
|
a11yLabel?: null | string;
|
|
1314
|
+
/**
|
|
1315
|
+
* The text value to copy to the clipboard when the button is pressed.
|
|
1316
|
+
* MUST be a non-empty string.
|
|
1317
|
+
*/
|
|
423
1318
|
value: string;
|
|
1319
|
+
/**
|
|
1320
|
+
* The custom state key to update when the copy action occurs.
|
|
1321
|
+
* Use with When predicates to show confirmation UI after copy.
|
|
1322
|
+
*/
|
|
424
1323
|
customStateKey: string;
|
|
1324
|
+
/** Visual styles for the copy button. */
|
|
425
1325
|
styles?: null | LayoutStyle<CopyToClipboardButtonElements, ConditionalStyleTransition<CopyToClipboardButtonTransitions, Predicates>>;
|
|
1326
|
+
/** Child nodes forming the button content (e.g. a copy icon or label). */
|
|
426
1327
|
children: Children[];
|
|
427
1328
|
}
|
|
1329
|
+
/** Transition styles for animating CopyToClipboardButton style changes. */
|
|
428
1330
|
export interface CopyToClipboardButtonTransitions {
|
|
1331
|
+
/** Transition properties for the copy button's own styles. */
|
|
429
1332
|
own?: null | CopyToClipboardButtonStyles;
|
|
430
1333
|
}
|
|
431
|
-
|
|
1334
|
+
/**
|
|
1335
|
+
* Condition operators for checking whether a value exists. Use these to
|
|
1336
|
+
* conditionally render content based on whether data is present.
|
|
1337
|
+
* Serialized as kebab-case strings: "exists", "not-exists".
|
|
1338
|
+
*/
|
|
1339
|
+
export type ExistenceWhenCondition =
|
|
1340
|
+
/** True when the value is present and non-empty. */
|
|
1341
|
+
"exists"
|
|
1342
|
+
/** True when the value is absent or empty. */
|
|
1343
|
+
| "not-exists";
|
|
1344
|
+
/**
|
|
1345
|
+
* Tests whether a creative data attribute exists. Use to conditionally show
|
|
1346
|
+
* content only when specific creative data is available. Do NOT use this for
|
|
1347
|
+
* non-creative data checks.
|
|
1348
|
+
*/
|
|
432
1349
|
export interface CreativeCopyPredicate {
|
|
1350
|
+
/** Whether to check for existence or non-existence of the creative attribute. */
|
|
433
1351
|
condition: ExistenceWhenCondition;
|
|
1352
|
+
/**
|
|
1353
|
+
* The dot-notation path to the creative attribute, e.g.
|
|
1354
|
+
* "creative.socialProof.number". MUST use dot notation to reference
|
|
1355
|
+
* nested creative data fields.
|
|
1356
|
+
*/
|
|
434
1357
|
value: string;
|
|
435
1358
|
}
|
|
1359
|
+
/**
|
|
1360
|
+
* Visual style properties for the CreativeResponse button.
|
|
1361
|
+
* Contains the standard style categories: container layout, background colors,
|
|
1362
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
1363
|
+
*/
|
|
436
1364
|
export interface CreativeResponseStyles {
|
|
1365
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
437
1366
|
container?: null | ContainerStylingProperties;
|
|
1367
|
+
/** Background color and gradient styles. */
|
|
438
1368
|
background?: null | BackgroundStylingProperties;
|
|
1369
|
+
/** Border width, color, and radius styles. */
|
|
439
1370
|
border?: null | BorderStylingProperties;
|
|
1371
|
+
/** Width and height dimension styles. */
|
|
440
1372
|
dimension?: null | DimensionStylingProperties;
|
|
1373
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
441
1374
|
flexChild?: null | FlexChildStylingProperties;
|
|
1375
|
+
/** Padding and margin spacing styles. */
|
|
442
1376
|
spacing?: null | SpacingStylingProperties;
|
|
443
1377
|
}
|
|
1378
|
+
/**
|
|
1379
|
+
* Styling elements for the CreativeResponse button.
|
|
1380
|
+
* The `own` array contains state-dependent styling blocks (e.g. default, pressed, disabled)
|
|
1381
|
+
* applied to the button itself.
|
|
1382
|
+
*/
|
|
444
1383
|
export interface CreativeResponseElements {
|
|
1384
|
+
/**
|
|
1385
|
+
* Array of state-dependent styling blocks for the button.
|
|
1386
|
+
* Each block targets a specific interaction state (default, pressed, disabled, etc.).
|
|
1387
|
+
*/
|
|
445
1388
|
own: BasicStateStylingBlock<CreativeResponseStyles>[];
|
|
446
1389
|
}
|
|
447
|
-
|
|
1390
|
+
/**
|
|
1391
|
+
* Controls how links are opened when clicked. MUST be one of the valid
|
|
1392
|
+
* kebab-case string values. Determines the navigation behavior when a
|
|
1393
|
+
* user activates a link action.
|
|
1394
|
+
*/
|
|
1395
|
+
export type LinkOpenTarget =
|
|
1396
|
+
/**
|
|
1397
|
+
* Opens the link within the current context (in-app webview or same
|
|
1398
|
+
* window). Use for links that should keep the user in the application.
|
|
1399
|
+
*/
|
|
1400
|
+
"internally"
|
|
1401
|
+
/**
|
|
1402
|
+
* Opens the link in the system browser. Use for external URLs that
|
|
1403
|
+
* should leave the application context.
|
|
1404
|
+
*/
|
|
1405
|
+
| "externally";
|
|
1406
|
+
/**
|
|
1407
|
+
* A button that triggers a creative response (positive or negative).
|
|
1408
|
+
* This is the primary call-to-action node for offer interactions.
|
|
1409
|
+
* Children inside this node become the button content.
|
|
1410
|
+
*
|
|
1411
|
+
* MUST have a `responseKey` of either `"positive"` or `"negative"`.
|
|
1412
|
+
* Use `"positive"` for accept/CTA buttons and `"negative"` for decline/dismiss buttons.
|
|
1413
|
+
* Do NOT use this node for non-response actions like navigation; use StaticLink or ButtonStateTrigger instead.
|
|
1414
|
+
*/
|
|
448
1415
|
export interface CreativeResponseModel<Children, Predicates> {
|
|
1416
|
+
/**
|
|
1417
|
+
* Accessibility label for the button.
|
|
1418
|
+
* MUST be provided for screen reader support. Describes the button's action to assistive technologies.
|
|
1419
|
+
*/
|
|
449
1420
|
a11yLabel?: null | string;
|
|
1421
|
+
/**
|
|
1422
|
+
* The response type. Use `"positive"` for accept/CTA buttons, `"negative"` for decline/dismiss buttons.
|
|
1423
|
+
* Do NOT use arbitrary strings; only `"positive"` and `"negative"` are valid.
|
|
1424
|
+
*/
|
|
450
1425
|
responseKey: string;
|
|
1426
|
+
/** Visual styles for the button. Uses the LayoutStyle wrapper with conditional style transitions. */
|
|
451
1427
|
styles?: null | LayoutStyle<CreativeResponseElements, ConditionalStyleTransition<CreativeResponseTransitions, Predicates>>;
|
|
1428
|
+
/**
|
|
1429
|
+
* Controls how the response URL is opened when clicked.
|
|
1430
|
+
* If omitted, the default link opening behaviour is used.
|
|
1431
|
+
*/
|
|
452
1432
|
openLinks?: null | LinkOpenTarget;
|
|
1433
|
+
/**
|
|
1434
|
+
* Child nodes that form the button's visible content.
|
|
1435
|
+
* Typically contains a BasicText node with the CTA label.
|
|
1436
|
+
* MUST contain at least one child to display button content.
|
|
1437
|
+
*/
|
|
453
1438
|
children: Children[];
|
|
454
1439
|
}
|
|
1440
|
+
/**
|
|
1441
|
+
* Transition styles for animating CreativeResponse style changes.
|
|
1442
|
+
* Defines which style properties should animate when the button's conditional styles change.
|
|
1443
|
+
*/
|
|
455
1444
|
export interface CreativeResponseTransitions {
|
|
1445
|
+
/** Transition properties for the button's own styles. */
|
|
456
1446
|
own?: null | CreativeResponseStyles;
|
|
457
1447
|
}
|
|
1448
|
+
/**
|
|
1449
|
+
* Tests a custom state value. Custom states are set by state trigger nodes
|
|
1450
|
+
* such as ButtonStateTrigger, ToggleButtonStateTrigger, and similar components.
|
|
1451
|
+
* The value is an integer that represents the current state.
|
|
1452
|
+
*/
|
|
458
1453
|
export interface CustomStatePredicate {
|
|
1454
|
+
/**
|
|
1455
|
+
* The custom state key to check. MUST match the key used in the
|
|
1456
|
+
* corresponding state trigger node.
|
|
1457
|
+
*/
|
|
459
1458
|
key: string;
|
|
1459
|
+
/** The comparison operator. */
|
|
460
1460
|
condition: OrderableWhenCondition;
|
|
1461
|
+
/** The integer value to compare the custom state against. */
|
|
461
1462
|
value: number;
|
|
462
1463
|
}
|
|
463
|
-
|
|
1464
|
+
/**
|
|
1465
|
+
* Condition operators for equality comparisons. Use these when you only need
|
|
1466
|
+
* to test if two values are equal or not equal.
|
|
1467
|
+
* Serialized as kebab-case strings: "is", "is-not".
|
|
1468
|
+
*/
|
|
1469
|
+
export type EqualityWhenCondition =
|
|
1470
|
+
/** True when the value equals the specified value. */
|
|
1471
|
+
"is"
|
|
1472
|
+
/** True when the value does not equal the specified value. */
|
|
1473
|
+
| "is-not";
|
|
1474
|
+
/**
|
|
1475
|
+
* Tests whether dark mode is active. Use to provide different styling or
|
|
1476
|
+
* content for light and dark modes.
|
|
1477
|
+
*/
|
|
464
1478
|
export interface DarkModePredicate {
|
|
1479
|
+
/** Use "is" to check if dark mode matches the value, "is-not" for the inverse. */
|
|
465
1480
|
condition: EqualityWhenCondition;
|
|
1481
|
+
/**
|
|
1482
|
+
* The boolean value to compare against. Set to true to test for dark mode,
|
|
1483
|
+
* false to test for light mode.
|
|
1484
|
+
*/
|
|
466
1485
|
value: boolean;
|
|
467
1486
|
}
|
|
1487
|
+
/** Visual styles for the DataIcon node. */
|
|
468
1488
|
export interface DataIconStyles {
|
|
1489
|
+
/** Typography properties. */
|
|
469
1490
|
text?: null | TextStylingProperties;
|
|
1491
|
+
/** Width, height and rotation properties. */
|
|
470
1492
|
dimension?: null | DimensionStylingProperties;
|
|
1493
|
+
/** Properties controlling behaviour as a flex child. */
|
|
471
1494
|
flexChild?: null | FlexChildStylingProperties;
|
|
1495
|
+
/** Padding, margin and offset properties. */
|
|
472
1496
|
spacing?: null | SpacingStylingProperties;
|
|
1497
|
+
/** Background color and image properties. */
|
|
473
1498
|
background?: null | BackgroundStylingProperties;
|
|
1499
|
+
/** Border radius, color, width and style. */
|
|
474
1500
|
border?: null | BorderStylingProperties;
|
|
475
1501
|
}
|
|
1502
|
+
/** Style elements for the DataIcon node. */
|
|
476
1503
|
export interface DataIconElements {
|
|
1504
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
477
1505
|
own: BasicStateStylingBlock<DataIconStyles>[];
|
|
478
1506
|
}
|
|
1507
|
+
/** Renders an icon from creative data. The icon is resolved from the creative object using the iconKey. */
|
|
479
1508
|
export interface DataIconModel<Predicates> {
|
|
1509
|
+
/** Visual styles for the icon. */
|
|
480
1510
|
styles?: null | LayoutStyle<DataIconElements, ConditionalStyleTransition<DataIconTransitions, Predicates>>;
|
|
1511
|
+
/** The key identifying which icon from the creative data to display. */
|
|
481
1512
|
iconKey: string;
|
|
482
1513
|
}
|
|
1514
|
+
/** Transition definitions for the DataIcon node. */
|
|
483
1515
|
export interface DataIconTransitions {
|
|
1516
|
+
/** Transition properties for the primary element. */
|
|
484
1517
|
own?: null | DataIconStyles;
|
|
485
1518
|
}
|
|
1519
|
+
/** Visual styles for the DataImage node. */
|
|
486
1520
|
export interface DataImageStyles {
|
|
1521
|
+
/** Background color and image properties. */
|
|
487
1522
|
background?: null | BackgroundStylingProperties;
|
|
1523
|
+
/** Border radius, color, width and style. */
|
|
488
1524
|
border?: null | BorderStylingProperties;
|
|
1525
|
+
/** Width, height and rotation properties. */
|
|
489
1526
|
dimension?: null | DimensionStylingProperties;
|
|
1527
|
+
/** Properties controlling behaviour as a flex child. */
|
|
490
1528
|
flexChild?: null | FlexChildStylingProperties;
|
|
1529
|
+
/** Padding, margin and offset properties. */
|
|
491
1530
|
spacing?: null | SpacingStylingProperties;
|
|
492
1531
|
}
|
|
1532
|
+
/** Style elements for the DataImage node. */
|
|
493
1533
|
export interface DataImageElements {
|
|
1534
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
494
1535
|
own: BasicStateStylingBlock<DataImageStyles>[];
|
|
495
1536
|
}
|
|
1537
|
+
/** Renders an image from creative data. The image URL is resolved from the creative object using the imageKey. Use for offer-specific images. */
|
|
496
1538
|
export interface DataImageModel<Predicates> {
|
|
1539
|
+
/** Visual styles for the image element. */
|
|
497
1540
|
styles?: null | LayoutStyle<DataImageElements, ConditionalStyleTransition<DataImageTransitions, Predicates>>;
|
|
1541
|
+
/** The key identifying which image from the creative data to display. */
|
|
498
1542
|
imageKey: string;
|
|
499
1543
|
}
|
|
1544
|
+
/** Transition definitions for the DataImage node. */
|
|
500
1545
|
export interface DataImageTransitions {
|
|
1546
|
+
/** Transition properties for the primary element. */
|
|
501
1547
|
own?: null | DataImageStyles;
|
|
502
1548
|
}
|
|
503
|
-
|
|
1549
|
+
/**
|
|
1550
|
+
* Keys for accessing application domain state in the full layout schema
|
|
1551
|
+
* context. Domain state represents high-level application state managed by
|
|
1552
|
+
* the host application. Serialized as camelCase strings.
|
|
1553
|
+
*/
|
|
1554
|
+
export type DomainStateKey =
|
|
1555
|
+
/**
|
|
1556
|
+
* Indicates whether the current offer has been completed by the user.
|
|
1557
|
+
* Use to show post-completion content or hide offer-specific elements.
|
|
1558
|
+
*/
|
|
1559
|
+
"offerComplete"
|
|
1560
|
+
/**
|
|
1561
|
+
* Indicates the current checkout state. Use to adapt the layout based
|
|
1562
|
+
* on where the user is in the checkout flow.
|
|
1563
|
+
*/
|
|
1564
|
+
| "checkout";
|
|
1565
|
+
/**
|
|
1566
|
+
* Tests application domain state. Domain state is managed by the host
|
|
1567
|
+
* application and represents high-level application state such as whether
|
|
1568
|
+
* an offer is complete or checkout state.
|
|
1569
|
+
*/
|
|
504
1570
|
export interface DomainStatePredicate<DomainStateKey> {
|
|
1571
|
+
/** The domain state key to check. */
|
|
505
1572
|
key: DomainStateKey;
|
|
1573
|
+
/** The comparison operator. */
|
|
506
1574
|
condition: OrderableWhenCondition;
|
|
1575
|
+
/** The integer value to compare the domain state against. */
|
|
507
1576
|
value: number;
|
|
508
1577
|
}
|
|
1578
|
+
/**
|
|
1579
|
+
* Tests a dynamic integer value resolved at runtime. The input is a path
|
|
1580
|
+
* that resolves to an integer value which is then compared against the
|
|
1581
|
+
* specified value.
|
|
1582
|
+
*/
|
|
509
1583
|
export interface DynamicIntegerPredicate {
|
|
1584
|
+
/** The comparison operator. */
|
|
510
1585
|
condition: OrderableWhenCondition;
|
|
1586
|
+
/** The dynamic integer path to evaluate at runtime. */
|
|
511
1587
|
input: string;
|
|
1588
|
+
/** The integer value to compare against. */
|
|
512
1589
|
value: number;
|
|
513
1590
|
}
|
|
514
|
-
|
|
1591
|
+
/**
|
|
1592
|
+
* Condition operators for string comparisons. Supports both equality checks
|
|
1593
|
+
* and existence checks on string values.
|
|
1594
|
+
* Serialized as kebab-case strings: "is", "is-not", "exists", "not-exists".
|
|
1595
|
+
*/
|
|
1596
|
+
export type StringWhenCondition =
|
|
1597
|
+
/** True when the string equals the specified value. */
|
|
1598
|
+
"is"
|
|
1599
|
+
/** True when the string does not equal the specified value. */
|
|
1600
|
+
| "is-not"
|
|
1601
|
+
/** True when the string is present and non-empty. */
|
|
1602
|
+
| "exists"
|
|
1603
|
+
/** True when the string is absent or empty. */
|
|
1604
|
+
| "not-exists";
|
|
1605
|
+
/**
|
|
1606
|
+
* Tests a dynamic string value resolved at runtime. The input is a path
|
|
1607
|
+
* that resolves to a string value which is then compared against the
|
|
1608
|
+
* specified value.
|
|
1609
|
+
*/
|
|
515
1610
|
export interface DynamicStringPredicate {
|
|
1611
|
+
/**
|
|
1612
|
+
* The comparison operator. Supports equality ("is", "is-not") and
|
|
1613
|
+
* existence ("exists", "not-exists") checks.
|
|
1614
|
+
*/
|
|
516
1615
|
condition: StringWhenCondition;
|
|
1616
|
+
/** The dynamic string path to evaluate at runtime. */
|
|
517
1617
|
input: string;
|
|
1618
|
+
/** The string to compare against. */
|
|
518
1619
|
value: string;
|
|
519
1620
|
}
|
|
1621
|
+
/**
|
|
1622
|
+
* An escape hatch node that allows passing raw data through the DCUI schema.
|
|
1623
|
+
* Use sparingly for edge cases not covered by standard nodes.
|
|
1624
|
+
*
|
|
1625
|
+
* Do NOT use this as a general-purpose data container. Prefer standard DCUI nodes
|
|
1626
|
+
* whenever possible. This node bypasses schema validation for its data content.
|
|
1627
|
+
*/
|
|
520
1628
|
export interface EscapeHatchModel {
|
|
1629
|
+
/**
|
|
1630
|
+
* Raw string data to pass through.
|
|
1631
|
+
* The content is opaque to the DCUI renderer and is passed directly to the client.
|
|
1632
|
+
* MUST be a valid string. The client is responsible for parsing and interpreting the data.
|
|
1633
|
+
*/
|
|
521
1634
|
data: string;
|
|
522
1635
|
}
|
|
1636
|
+
/** Settings for a bidirectional fade-in/fade-out transition. */
|
|
523
1637
|
export interface FadeInOutTransitionSettings {
|
|
1638
|
+
/**
|
|
1639
|
+
* The transition duration in milliseconds. MUST be a positive integer.
|
|
1640
|
+
* Common values: 200 for fast, 400 for medium, 1000 for slow.
|
|
1641
|
+
*/
|
|
524
1642
|
duration: number;
|
|
525
1643
|
}
|
|
1644
|
+
/** Settings for a fade-in (enter) transition. */
|
|
526
1645
|
export interface FadeInTransitionSettings {
|
|
1646
|
+
/**
|
|
1647
|
+
* The transition duration in milliseconds. MUST be a positive integer.
|
|
1648
|
+
* Common values: 200 for fast, 400 for medium, 1000 for slow.
|
|
1649
|
+
*/
|
|
527
1650
|
duration: number;
|
|
528
1651
|
}
|
|
1652
|
+
/** Settings for a fade-out (exit) transition. */
|
|
529
1653
|
export interface FadeOutTransitionSettings {
|
|
1654
|
+
/**
|
|
1655
|
+
* The transition duration in milliseconds. MUST be a positive integer.
|
|
1656
|
+
* Common values: 200 for fast, 400 for medium, 1000 for slow.
|
|
1657
|
+
*/
|
|
530
1658
|
duration: number;
|
|
531
1659
|
}
|
|
1660
|
+
/**
|
|
1661
|
+
* Available style categories for the FlowRow element. Each optional field enables a specific
|
|
1662
|
+
* category of visual styling. Omit a field to leave that category unstyled.
|
|
1663
|
+
*/
|
|
532
1664
|
export interface FlowRowStyle {
|
|
1665
|
+
/**
|
|
1666
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
1667
|
+
* MUST be used to control how children are arranged and wrapped within the flow row.
|
|
1668
|
+
*/
|
|
533
1669
|
container?: null | ContainerStylingProperties;
|
|
1670
|
+
/**
|
|
1671
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
1672
|
+
* behind the flow row content.
|
|
1673
|
+
*/
|
|
534
1674
|
background?: null | BackgroundStylingProperties;
|
|
1675
|
+
/**
|
|
1676
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
1677
|
+
* rounded corners to the flow row.
|
|
1678
|
+
*/
|
|
535
1679
|
border?: null | BorderStylingProperties;
|
|
1680
|
+
/**
|
|
1681
|
+
* Width, height and rotation properties. Use to explicitly size the flow row or apply
|
|
1682
|
+
* rotation transforms. Do NOT set width/height if the flow row should size to its content.
|
|
1683
|
+
*/
|
|
536
1684
|
dimension?: null | DimensionStylingProperties;
|
|
1685
|
+
/**
|
|
1686
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
1687
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
1688
|
+
*/
|
|
537
1689
|
flexChild?: null | FlexChildStylingProperties;
|
|
1690
|
+
/** Padding, margin and offset properties. Use to add spacing inside or outside the flow row. */
|
|
538
1691
|
spacing?: null | SpacingStylingProperties;
|
|
539
1692
|
}
|
|
1693
|
+
/**
|
|
1694
|
+
* Styleable elements of the FlowRow node. The FlowRow has a single styleable element: its
|
|
1695
|
+
* own container.
|
|
1696
|
+
*/
|
|
540
1697
|
export interface FlowRowElements {
|
|
1698
|
+
/**
|
|
1699
|
+
* Style blocks for the flow row container itself. The array represents breakpoint-specific
|
|
1700
|
+
* styles: first item is the default (no breakpoint), subsequent items correspond to
|
|
1701
|
+
* breakpoints in ascending order. MUST contain at least one item for the default style.
|
|
1702
|
+
*/
|
|
541
1703
|
own: BasicStateStylingBlock<FlowRowStyle>[];
|
|
542
1704
|
}
|
|
1705
|
+
/**
|
|
1706
|
+
* A horizontal flex container that wraps children to the next line when they exceed the
|
|
1707
|
+
* container width. Like Row but with line wrapping. Use when you have a dynamic number of
|
|
1708
|
+
* items that should flow naturally across lines (e.g., tags, chips, badges). Do NOT use
|
|
1709
|
+
* FlowRow when you need a single non-wrapping horizontal row; use Row instead.
|
|
1710
|
+
*/
|
|
543
1711
|
export interface FlowRowModel<Children, Predicates> {
|
|
1712
|
+
/**
|
|
1713
|
+
* Accessibility label for screen readers. Omit if the flow row is purely decorative or
|
|
1714
|
+
* its children already provide sufficient accessible labels. MUST be set when the flow
|
|
1715
|
+
* row conveys meaning not available from its children alone.
|
|
1716
|
+
*/
|
|
544
1717
|
a11yLabel?: null | string;
|
|
1718
|
+
/**
|
|
1719
|
+
* Visual styles for this flow row. See styling documentation for the structure. Omit to
|
|
1720
|
+
* use default (unstyled) rendering.
|
|
1721
|
+
*/
|
|
545
1722
|
styles?: null | LayoutStyle<FlowRowElements, ConditionalStyleTransition<FlowRowTransitions, Predicates>>;
|
|
1723
|
+
/**
|
|
1724
|
+
* Child nodes rendered horizontally with wrapping within this flow row. MUST contain at
|
|
1725
|
+
* least one child. Children wrap to the next line when they exceed the container width.
|
|
1726
|
+
*/
|
|
546
1727
|
children: Children[];
|
|
547
1728
|
}
|
|
1729
|
+
/** Transition styles for the FlowRow node. Use to animate style changes smoothly. */
|
|
548
1730
|
export interface FlowRowTransitions {
|
|
1731
|
+
/**
|
|
1732
|
+
* Transition properties for the flow row container. Specifies which style properties
|
|
1733
|
+
* should animate and their duration/easing when values change.
|
|
1734
|
+
*/
|
|
549
1735
|
own?: null | FlowRowStyle;
|
|
550
1736
|
}
|
|
1737
|
+
/**
|
|
1738
|
+
* Visual style properties for the GroupedDistribution container.
|
|
1739
|
+
* Contains the standard style categories: container layout, background colors,
|
|
1740
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
1741
|
+
*/
|
|
551
1742
|
export interface GroupedDistributionStyles {
|
|
1743
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
552
1744
|
container?: null | ContainerStylingProperties;
|
|
1745
|
+
/** Background color and gradient styles. */
|
|
553
1746
|
background?: null | BackgroundStylingProperties;
|
|
1747
|
+
/** Border width, color, and radius styles. */
|
|
554
1748
|
border?: null | BorderStylingProperties;
|
|
1749
|
+
/** Width and height dimension styles. */
|
|
555
1750
|
dimension?: null | DimensionStylingProperties;
|
|
1751
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
556
1752
|
flexChild?: null | FlexChildStylingProperties;
|
|
1753
|
+
/** Padding and margin spacing styles. */
|
|
557
1754
|
spacing?: null | SpacingStylingProperties;
|
|
558
1755
|
}
|
|
1756
|
+
/**
|
|
1757
|
+
* Styling elements for the GroupedDistribution container.
|
|
1758
|
+
* The `own` array contains stateless styling blocks applied to the grouped container itself.
|
|
1759
|
+
*/
|
|
559
1760
|
export interface GroupedDistributionElements {
|
|
1761
|
+
/** Array of stateless styling blocks for the grouped container. */
|
|
560
1762
|
own: StatelessStylingBlock<GroupedDistributionStyles>[];
|
|
561
1763
|
}
|
|
562
|
-
|
|
1764
|
+
/**
|
|
1765
|
+
* A bidirectional transition that applies both when showing and hiding an
|
|
1766
|
+
* element. MUST be an object with a "type" field and a "settings" field.
|
|
1767
|
+
* Currently only "FadeInOut" is supported.
|
|
1768
|
+
*/
|
|
1769
|
+
export type Transition =
|
|
1770
|
+
/**
|
|
1771
|
+
* A fade-in/fade-out transition. The element fades in when shown and
|
|
1772
|
+
* fades out when hidden, using the specified duration.
|
|
1773
|
+
*/
|
|
1774
|
+
{
|
|
563
1775
|
type: "FadeInOut";
|
|
564
1776
|
settings: FadeInOutTransitionSettings;
|
|
565
1777
|
};
|
|
1778
|
+
/**
|
|
1779
|
+
* Presents offers in groups, progressing through groups sequentially.
|
|
1780
|
+
* Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
|
|
1781
|
+
* Each group shows a fixed number of offers at once, and the user advances through groups.
|
|
1782
|
+
*
|
|
1783
|
+
* Pair with ProgressControl nodes for group navigation.
|
|
1784
|
+
* Use `viewableItems` to control how many offers appear per group at each breakpoint.
|
|
1785
|
+
*/
|
|
566
1786
|
export interface GroupedDistributionModel<Predicates> {
|
|
1787
|
+
/**
|
|
1788
|
+
* Configuration for how many items per group.
|
|
1789
|
+
* Provided as an array of values for different breakpoints.
|
|
1790
|
+
*/
|
|
567
1791
|
viewableItems: number[];
|
|
1792
|
+
/**
|
|
1793
|
+
* The transition animation between groups.
|
|
1794
|
+
* Defines how the current group exits and the next group enters.
|
|
1795
|
+
*/
|
|
568
1796
|
transition: Transition;
|
|
1797
|
+
/**
|
|
1798
|
+
* Visual styles for the grouped container.
|
|
1799
|
+
* Uses the LayoutStyle wrapper with conditional style transitions.
|
|
1800
|
+
*/
|
|
569
1801
|
styles?: null | LayoutStyle<GroupedDistributionElements, ConditionalStyleTransition<GroupedDistributionTransitions, Predicates>>;
|
|
570
1802
|
}
|
|
1803
|
+
/** Transition styles for animating GroupedDistribution style changes. */
|
|
571
1804
|
export interface GroupedDistributionTransitions {
|
|
1805
|
+
/** Transition properties for the grouped container's own styles. */
|
|
572
1806
|
own?: null | GroupedDistributionStyles;
|
|
573
1807
|
}
|
|
1808
|
+
/**
|
|
1809
|
+
* Typography styling for inline text elements. A subset of TextStylingProperties
|
|
1810
|
+
* without line-level controls (lineHeight, horizontalTextAlign, lineLimit).
|
|
1811
|
+
* All fields are optional. Only include the properties you want to override.
|
|
1812
|
+
*/
|
|
574
1813
|
export interface InlineTextStylingProperties {
|
|
1814
|
+
/** The text color. Uses themed values for light/dark mode support. */
|
|
575
1815
|
textColor?: null | ThemeColor;
|
|
1816
|
+
/** Font size in platform units (px on Web, pt on iOS, dp on Android). */
|
|
576
1817
|
fontSize?: null | number;
|
|
1818
|
+
/** The font family name. Use 'rokt-icons' for icon fonts. */
|
|
577
1819
|
fontFamily?: null | string;
|
|
1820
|
+
/** The weight (boldness) of the font. */
|
|
578
1821
|
fontWeight?: null | FontWeight;
|
|
1822
|
+
/** Vertical alignment of text relative to the baseline. */
|
|
579
1823
|
baselineTextAlign?: null | FontBaselineAlignment;
|
|
1824
|
+
/** Normal or italic text rendering. */
|
|
580
1825
|
fontStyle?: null | FontStyle;
|
|
1826
|
+
/** Controls automatic text capitalisation. */
|
|
581
1827
|
textTransform?: null | TextTransform;
|
|
1828
|
+
/** Additional spacing between characters in platform units. */
|
|
582
1829
|
letterSpacing?: null | number;
|
|
1830
|
+
/** Decorative line applied to text (underline, strikethrough). */
|
|
583
1831
|
textDecoration?: null | TextDecoration;
|
|
584
1832
|
}
|
|
1833
|
+
/** Inline text styling for elements like links within rich text. */
|
|
585
1834
|
export interface InLineTextStyle {
|
|
1835
|
+
/** Typography properties for the inline text element. */
|
|
586
1836
|
text: InlineTextStylingProperties;
|
|
587
1837
|
}
|
|
1838
|
+
/**
|
|
1839
|
+
* Visual style properties for individual indicator items (dots, bars, etc.).
|
|
1840
|
+
* Includes text styling for number-based indicators.
|
|
1841
|
+
*/
|
|
588
1842
|
export interface IndicatorStyles {
|
|
1843
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
589
1844
|
container?: null | ContainerStylingProperties;
|
|
1845
|
+
/** Background color and gradient styles. */
|
|
590
1846
|
background?: null | BackgroundStylingProperties;
|
|
1847
|
+
/** Border width, color, and radius styles. */
|
|
591
1848
|
border?: null | BorderStylingProperties;
|
|
1849
|
+
/** Width and height dimension styles. */
|
|
592
1850
|
dimension?: null | DimensionStylingProperties;
|
|
1851
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
593
1852
|
flexChild?: null | FlexChildStylingProperties;
|
|
1853
|
+
/** Padding and margin spacing styles. */
|
|
594
1854
|
spacing?: null | SpacingStylingProperties;
|
|
1855
|
+
/** Text styling for number-based indicators. */
|
|
595
1856
|
text?: null | TextStylingProperties;
|
|
596
1857
|
}
|
|
1858
|
+
/**
|
|
1859
|
+
* Spacing properties for inline elements. Does not support offset.
|
|
1860
|
+
* 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.
|
|
1861
|
+
* All fields are optional. Only include the properties you want to override.
|
|
1862
|
+
*/
|
|
597
1863
|
export interface InlineSpacingStylingProperties {
|
|
1864
|
+
/**
|
|
1865
|
+
* Internal spacing between the element border and its content. Specified as a
|
|
1866
|
+
* space-separated string of numeric values following CSS shorthand: '10' for all sides,
|
|
1867
|
+
* '10 20' for vertical/horizontal, '10 20 10 20' for top/right/bottom/left.
|
|
1868
|
+
*/
|
|
598
1869
|
padding?: null | string;
|
|
1870
|
+
/** External spacing around the outside of the element border. Same format as padding. */
|
|
599
1871
|
margin?: null | string;
|
|
600
1872
|
}
|
|
1873
|
+
/** Visual styles for an inline BasicText node. */
|
|
601
1874
|
export interface InlineBasicTextStyle {
|
|
1875
|
+
/** Padding, margin and offset properties. */
|
|
602
1876
|
spacing?: null | InlineSpacingStylingProperties;
|
|
1877
|
+
/** Background color and image properties. */
|
|
603
1878
|
background?: null | BackgroundStylingProperties;
|
|
1879
|
+
/** Typography properties. */
|
|
604
1880
|
text?: null | InlineTextStylingProperties;
|
|
605
1881
|
}
|
|
1882
|
+
/** Style elements for the inline BasicText node. */
|
|
606
1883
|
export interface InlineBasicTextElements {
|
|
1884
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
607
1885
|
own: BasicStateStylingBlock<InlineBasicTextStyle>[];
|
|
608
1886
|
}
|
|
1887
|
+
/** Renders a paragraph of plain text in an inline context. Use for simple text content. For text with HTML formatting use RichText instead. */
|
|
609
1888
|
export interface InlineBasicTextModel<Predicates> {
|
|
1889
|
+
/** Visual styles for the text element. */
|
|
610
1890
|
styles?: null | LayoutStyle<InlineBasicTextElements, ConditionalStyleTransition<InlineBasicTextTransitions, Predicates>>;
|
|
1891
|
+
/** The text content to display. Supports data binding placeholders in the format %^DATA.key^% for dynamic creative content. */
|
|
611
1892
|
value: string;
|
|
612
1893
|
}
|
|
1894
|
+
/** Transition definitions for the inline BasicText node. */
|
|
613
1895
|
export interface InlineBasicTextTransitions {
|
|
1896
|
+
/** Transition properties for the primary element. */
|
|
614
1897
|
own?: null | InlineBasicTextStyle;
|
|
615
1898
|
}
|
|
1899
|
+
/**
|
|
1900
|
+
* Available style categories for the InlineContainer element. Each optional field enables a
|
|
1901
|
+
* specific category of visual styling. Omit a field to leave that category unstyled.
|
|
1902
|
+
*/
|
|
616
1903
|
export interface InlineContainerStyles {
|
|
1904
|
+
/**
|
|
1905
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
1906
|
+
* MUST be used to control how inline children are arranged within the container.
|
|
1907
|
+
*/
|
|
617
1908
|
container?: null | ContainerStylingProperties;
|
|
1909
|
+
/**
|
|
1910
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
1911
|
+
* behind the inline container content.
|
|
1912
|
+
*/
|
|
618
1913
|
background?: null | BackgroundStylingProperties;
|
|
1914
|
+
/**
|
|
1915
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
1916
|
+
* rounded corners to the inline container.
|
|
1917
|
+
*/
|
|
619
1918
|
border?: null | BorderStylingProperties;
|
|
1919
|
+
/**
|
|
1920
|
+
* Width, height and rotation properties. Use to explicitly size the inline container or
|
|
1921
|
+
* apply rotation transforms. Do NOT set width/height if the container should size to its
|
|
1922
|
+
* content.
|
|
1923
|
+
*/
|
|
620
1924
|
dimension?: null | DimensionStylingProperties;
|
|
1925
|
+
/**
|
|
1926
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
1927
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
1928
|
+
*/
|
|
621
1929
|
flexChild?: null | FlexChildStylingProperties;
|
|
1930
|
+
/**
|
|
1931
|
+
* Padding, margin and offset properties. Use to add spacing inside or outside the
|
|
1932
|
+
* inline container.
|
|
1933
|
+
*/
|
|
622
1934
|
spacing?: null | SpacingStylingProperties;
|
|
623
1935
|
}
|
|
1936
|
+
/**
|
|
1937
|
+
* Styleable elements of the InlineContainer node. The InlineContainer has a single styleable
|
|
1938
|
+
* element: its own container.
|
|
1939
|
+
*/
|
|
624
1940
|
export interface InlineContainerElements {
|
|
1941
|
+
/**
|
|
1942
|
+
* Style blocks for the inline container itself. The array represents breakpoint-specific
|
|
1943
|
+
* styles: first item is the default (no breakpoint), subsequent items correspond to
|
|
1944
|
+
* breakpoints in ascending order. MUST contain at least one item for the default style.
|
|
1945
|
+
*/
|
|
625
1946
|
own: BasicStateStylingBlock<InlineContainerStyles>[];
|
|
626
1947
|
}
|
|
1948
|
+
/**
|
|
1949
|
+
* An inline container for arranging inline elements like text spans. Used within text-level
|
|
1950
|
+
* layouts. Use InlineContainer when you need to group inline content together with shared
|
|
1951
|
+
* styling. Do NOT use InlineContainer as a general-purpose layout container; use Row or
|
|
1952
|
+
* Column instead.
|
|
1953
|
+
*/
|
|
627
1954
|
export interface InlineContainerModel<Children, Predicates> {
|
|
1955
|
+
/**
|
|
1956
|
+
* Accessibility label for screen readers. Omit if the inline container is purely
|
|
1957
|
+
* decorative or its children already provide sufficient accessible labels. MUST be set
|
|
1958
|
+
* when the inline container conveys meaning not available from its children alone.
|
|
1959
|
+
*/
|
|
628
1960
|
a11yLabel?: null | string;
|
|
1961
|
+
/**
|
|
1962
|
+
* Visual styles for this inline container. See styling documentation for the structure.
|
|
1963
|
+
* Omit to use default (unstyled) rendering.
|
|
1964
|
+
*/
|
|
629
1965
|
styles?: null | LayoutStyle<InlineContainerElements, ConditionalStyleTransition<InlineContainerTransitions, Predicates>>;
|
|
1966
|
+
/**
|
|
1967
|
+
* Child nodes rendered within this inline container.
|
|
1968
|
+
* Children are arranged inline, suitable for text-level content.
|
|
1969
|
+
*/
|
|
630
1970
|
children: Children[];
|
|
631
1971
|
}
|
|
1972
|
+
/** Container styling properties for inline elements. A reduced set compared to full container styling. */
|
|
632
1973
|
export interface InlineContainerStylingProperties {
|
|
1974
|
+
/** Applies a box shadow effect around the container. */
|
|
633
1975
|
shadow?: null | Shadow;
|
|
1976
|
+
/** Applies a Gaussian blur effect. Value is the blur radius in platform units. */
|
|
634
1977
|
blur?: null | number;
|
|
1978
|
+
/** The opacity of the container, from 0.0 (fully transparent) to 1.0 (fully opaque). */
|
|
635
1979
|
opacity?: null | number;
|
|
636
1980
|
}
|
|
1981
|
+
/** Transition styles for the InlineContainer node. Use to animate style changes smoothly. */
|
|
637
1982
|
export interface InlineContainerTransitions {
|
|
1983
|
+
/**
|
|
1984
|
+
* Transition properties for the inline container. Specifies which style properties
|
|
1985
|
+
* should animate and their duration/easing when values change.
|
|
1986
|
+
*/
|
|
638
1987
|
own?: null | InlineContainerStyles;
|
|
639
1988
|
}
|
|
1989
|
+
/**
|
|
1990
|
+
* Visual style properties for the inline variant of StaticLink.
|
|
1991
|
+
* Uses inline-specific container and spacing properties suitable for text-level content.
|
|
1992
|
+
*/
|
|
640
1993
|
export interface InlineStaticLinkStyles {
|
|
1994
|
+
/** Inline container layout styles. */
|
|
641
1995
|
container?: null | InlineContainerStylingProperties;
|
|
1996
|
+
/** Background color and gradient styles. */
|
|
642
1997
|
background?: null | BackgroundStylingProperties;
|
|
1998
|
+
/** Border width, color, and radius styles. */
|
|
643
1999
|
border?: null | BorderStylingProperties;
|
|
2000
|
+
/** Inline spacing (padding/margin) styles. */
|
|
644
2001
|
spacing?: null | InlineSpacingStylingProperties;
|
|
645
2002
|
}
|
|
2003
|
+
/**
|
|
2004
|
+
* Styling elements for the inline StaticLink variant.
|
|
2005
|
+
* The `own` array contains state-dependent styling blocks applied to the inline link itself.
|
|
2006
|
+
*/
|
|
646
2007
|
export interface InlineStaticLinkElements {
|
|
2008
|
+
/** Array of state-dependent styling blocks for the inline link. */
|
|
647
2009
|
own: BasicStateStylingBlock<InlineStaticLinkStyles>[];
|
|
648
2010
|
}
|
|
2011
|
+
/**
|
|
2012
|
+
* An inline clickable link variant that wraps its children.
|
|
2013
|
+
* Used within text-level contexts (e.g. inside a RichText node).
|
|
2014
|
+
* Opens the specified URL when clicked.
|
|
2015
|
+
*/
|
|
649
2016
|
export interface InlineStaticLinkModel<Children, Predicates> {
|
|
2017
|
+
/** Accessibility label for the inline link. */
|
|
650
2018
|
a11yLabel?: null | string;
|
|
2019
|
+
/**
|
|
2020
|
+
* The destination URL to open when the link is clicked.
|
|
2021
|
+
* MUST be a valid URL string.
|
|
2022
|
+
*/
|
|
651
2023
|
src: string;
|
|
2024
|
+
/** Controls how the link URL is opened. */
|
|
652
2025
|
open: LinkOpenTarget;
|
|
2026
|
+
/** Visual styles for the inline link. */
|
|
653
2027
|
styles?: null | LayoutStyle<InlineStaticLinkElements, ConditionalStyleTransition<InlineStaticLinkTransitions, Predicates>>;
|
|
2028
|
+
/** Child nodes that form the clickable inline link content. */
|
|
654
2029
|
children: Children[];
|
|
655
2030
|
}
|
|
2031
|
+
/** Transition styles for animating InlineStaticLink style changes. */
|
|
656
2032
|
export interface InlineStaticLinkTransitions {
|
|
2033
|
+
/** Transition properties for the inline link's own styles. */
|
|
657
2034
|
own?: null | InlineStaticLinkStyles;
|
|
658
2035
|
}
|
|
2036
|
+
/**
|
|
2037
|
+
* Visual style properties for the inline variant of ToggleButtonStateTrigger.
|
|
2038
|
+
* Uses inline-specific container and spacing properties suitable for text-level content.
|
|
2039
|
+
*/
|
|
659
2040
|
export interface InlineToggleButtonStateTriggerStyle {
|
|
2041
|
+
/** Inline container layout styles. */
|
|
660
2042
|
container?: null | InlineContainerStylingProperties;
|
|
2043
|
+
/** Background color and gradient styles. */
|
|
661
2044
|
background?: null | BackgroundStylingProperties;
|
|
2045
|
+
/** Border width, color, and radius styles. */
|
|
662
2046
|
border?: null | BorderStylingProperties;
|
|
2047
|
+
/** Inline spacing (padding/margin) styles. */
|
|
663
2048
|
spacing?: null | InlineSpacingStylingProperties;
|
|
664
2049
|
}
|
|
2050
|
+
/**
|
|
2051
|
+
* Styling elements for the inline ToggleButtonStateTrigger variant.
|
|
2052
|
+
* The `own` array contains state-dependent styling blocks applied to the inline toggle.
|
|
2053
|
+
*/
|
|
665
2054
|
export interface InlineToggleButtonStateTriggerElements {
|
|
2055
|
+
/** Array of state-dependent styling blocks for the inline toggle button. */
|
|
666
2056
|
own: BasicStateStylingBlock<InlineToggleButtonStateTriggerStyle>[];
|
|
667
2057
|
}
|
|
2058
|
+
/**
|
|
2059
|
+
* An inline variant of ToggleButtonStateTrigger for use within text-level contexts.
|
|
2060
|
+
* Cycles a custom state between values when clicked.
|
|
2061
|
+
*/
|
|
668
2062
|
export interface InlineToggleButtonStateTriggerModel<Children, Predicates> {
|
|
2063
|
+
/** Accessibility label for the inline toggle button. */
|
|
669
2064
|
a11yLabel?: null | string;
|
|
2065
|
+
/** Visual styles for the inline toggle button. */
|
|
670
2066
|
styles?: null | LayoutStyle<InlineToggleButtonStateTriggerElements, ConditionalStyleTransition<InlineToggleButtonStateTriggerTransitions, Predicates>>;
|
|
2067
|
+
/** Child nodes forming the inline toggle button content. */
|
|
671
2068
|
children: Children[];
|
|
2069
|
+
/** The custom state key to toggle when the button is pressed. */
|
|
672
2070
|
customStateKey: string;
|
|
673
2071
|
}
|
|
2072
|
+
/** Transition styles for animating InlineToggleButtonStateTrigger style changes. */
|
|
674
2073
|
export interface InlineToggleButtonStateTriggerTransitions {
|
|
2074
|
+
/** Transition properties for the inline toggle button's own styles. */
|
|
675
2075
|
own?: null | InlineToggleButtonStateTriggerStyle;
|
|
676
2076
|
}
|
|
2077
|
+
/**
|
|
2078
|
+
* Configuration for a required-field validation rule. When applied to an
|
|
2079
|
+
* input, the input MUST have a non-empty value to pass validation.
|
|
2080
|
+
*/
|
|
677
2081
|
export interface InputRequiredValidation {
|
|
2082
|
+
/**
|
|
2083
|
+
* The error message to display when validation fails (i.e., the input is
|
|
2084
|
+
* empty). MUST be a user-facing string. Do NOT leave this empty.
|
|
2085
|
+
*/
|
|
678
2086
|
message: string;
|
|
679
2087
|
}
|
|
2088
|
+
/**
|
|
2089
|
+
* Tests application domain state in the full layout schema context. Domain
|
|
2090
|
+
* state is managed by the host application and represents high-level
|
|
2091
|
+
* application state.
|
|
2092
|
+
*/
|
|
680
2093
|
export interface LayoutSchemaDomainStatePredicate {
|
|
2094
|
+
/** The domain state key to check. */
|
|
681
2095
|
key: DomainStateKey;
|
|
2096
|
+
/** The comparison operator. */
|
|
682
2097
|
condition: OrderableWhenCondition;
|
|
2098
|
+
/** The integer value to compare the domain state against. */
|
|
683
2099
|
value: number;
|
|
684
2100
|
}
|
|
2101
|
+
/** Platform-specific settings for the layout behaviour. */
|
|
685
2102
|
export interface LayoutSettings {
|
|
2103
|
+
/** Whether to automatically close the layout after the user completes the interaction flow. */
|
|
686
2104
|
closeOnComplete?: null | boolean;
|
|
2105
|
+
/** Whether to enable partner-side validation before submitting responses. */
|
|
687
2106
|
enablePartnerValidation?: null | boolean;
|
|
688
2107
|
}
|
|
2108
|
+
/**
|
|
2109
|
+
* Visual style properties for the OneByOneDistribution container.
|
|
2110
|
+
* Contains the standard style categories: container layout, background colors,
|
|
2111
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
2112
|
+
*/
|
|
689
2113
|
export interface OneByOneDistributionStyles {
|
|
2114
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
690
2115
|
container?: null | ContainerStylingProperties;
|
|
2116
|
+
/** Background color and gradient styles. */
|
|
691
2117
|
background?: null | BackgroundStylingProperties;
|
|
2118
|
+
/** Border width, color, and radius styles. */
|
|
692
2119
|
border?: null | BorderStylingProperties;
|
|
2120
|
+
/** Width and height dimension styles. */
|
|
693
2121
|
dimension?: null | DimensionStylingProperties;
|
|
2122
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
694
2123
|
flexChild?: null | FlexChildStylingProperties;
|
|
2124
|
+
/** Padding and margin spacing styles. */
|
|
695
2125
|
spacing?: null | SpacingStylingProperties;
|
|
696
2126
|
}
|
|
2127
|
+
/**
|
|
2128
|
+
* Styling elements for the OneByOneDistribution container.
|
|
2129
|
+
* The `own` array contains stateless styling blocks applied to the distribution container itself.
|
|
2130
|
+
*/
|
|
697
2131
|
export interface OneByOneDistributionElements {
|
|
2132
|
+
/** Array of stateless styling blocks for the distribution container. */
|
|
698
2133
|
own: StatelessStylingBlock<OneByOneDistributionStyles>[];
|
|
699
2134
|
}
|
|
2135
|
+
/**
|
|
2136
|
+
* Presents offers one at a time, allowing the user to progress through them sequentially.
|
|
2137
|
+
* Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
|
|
2138
|
+
*
|
|
2139
|
+
* Pair with ProgressControl nodes to enable forward/backward navigation between offers.
|
|
2140
|
+
* Pair with ProgressIndicator to show the user's current position.
|
|
2141
|
+
* Do NOT use this for displaying all offers at once; use StackedDistribution instead.
|
|
2142
|
+
*/
|
|
700
2143
|
export interface OneByOneDistributionModel<Predicates> {
|
|
2144
|
+
/**
|
|
2145
|
+
* Visual styles for the distribution container.
|
|
2146
|
+
* Uses the LayoutStyle wrapper with conditional style transitions.
|
|
2147
|
+
*/
|
|
701
2148
|
styles?: null | LayoutStyle<OneByOneDistributionElements, ConditionalStyleTransition<OneByOneDistributionTransitions, Predicates>>;
|
|
2149
|
+
/**
|
|
2150
|
+
* The animation transition between offers.
|
|
2151
|
+
* Defines how the current offer exits and the next offer enters.
|
|
2152
|
+
*/
|
|
702
2153
|
transition: Transition;
|
|
703
2154
|
}
|
|
2155
|
+
/** Transition styles for animating OneByOneDistribution style changes. */
|
|
704
2156
|
export interface OneByOneDistributionTransitions {
|
|
2157
|
+
/** Transition properties for the distribution container's own styles. */
|
|
705
2158
|
own?: null | OneByOneDistributionStyles;
|
|
706
2159
|
}
|
|
2160
|
+
/**
|
|
2161
|
+
* Available style categories for the Overlay content element. Each optional field enables a
|
|
2162
|
+
* specific category of visual styling. Omit a field to leave that category unstyled.
|
|
2163
|
+
*/
|
|
707
2164
|
export interface OverlayStyles {
|
|
2165
|
+
/**
|
|
2166
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
2167
|
+
* MUST be used to control how children are arranged within the overlay content area.
|
|
2168
|
+
*/
|
|
708
2169
|
container?: null | ContainerStylingProperties;
|
|
2170
|
+
/**
|
|
2171
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
2172
|
+
* behind the overlay content.
|
|
2173
|
+
*/
|
|
709
2174
|
background?: null | BackgroundStylingProperties;
|
|
2175
|
+
/**
|
|
2176
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
2177
|
+
* rounded corners to the overlay content area.
|
|
2178
|
+
*/
|
|
710
2179
|
border?: null | BorderStylingProperties;
|
|
2180
|
+
/**
|
|
2181
|
+
* Width, height and rotation properties. Use to explicitly size the overlay content area.
|
|
2182
|
+
* Do NOT set width/height if the overlay should size to its content.
|
|
2183
|
+
*/
|
|
711
2184
|
dimension?: null | DimensionStylingProperties;
|
|
2185
|
+
/**
|
|
2186
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
2187
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
2188
|
+
*/
|
|
712
2189
|
flexChild?: null | FlexChildStylingProperties;
|
|
2190
|
+
/**
|
|
2191
|
+
* Padding, margin and offset properties. Use to add spacing inside or outside the
|
|
2192
|
+
* overlay content area.
|
|
2193
|
+
*/
|
|
713
2194
|
spacing?: null | SpacingStylingProperties;
|
|
714
2195
|
}
|
|
2196
|
+
/**
|
|
2197
|
+
* Style categories for the Overlay wrapper (backdrop) element. Controls the appearance of
|
|
2198
|
+
* the area behind the overlay content.
|
|
2199
|
+
*/
|
|
715
2200
|
export interface OverlayWrapperStyles {
|
|
2201
|
+
/** Layout properties for the wrapper container that positions the overlay content. */
|
|
716
2202
|
container?: null | ContainerStylingProperties;
|
|
2203
|
+
/**
|
|
2204
|
+
* Background color for the backdrop. Typically a semi-transparent color (using `#AARRGGBB`
|
|
2205
|
+
* format, e.g. `#80000000`) to dim the content behind the overlay.
|
|
2206
|
+
*/
|
|
717
2207
|
background?: null | BackgroundStylingProperties;
|
|
718
2208
|
}
|
|
2209
|
+
/**
|
|
2210
|
+
* Styleable elements of the Overlay node. The Overlay has two styleable elements: its own
|
|
2211
|
+
* content area and its wrapper (backdrop).
|
|
2212
|
+
*/
|
|
719
2213
|
export interface OverlayElements {
|
|
2214
|
+
/**
|
|
2215
|
+
* Style blocks for the overlay content area. The array represents breakpoint-specific
|
|
2216
|
+
* styles: first item is the default (no breakpoint), subsequent items correspond to
|
|
2217
|
+
* breakpoints in ascending order. MUST contain at least one item for the default style.
|
|
2218
|
+
*/
|
|
720
2219
|
own: BasicStateStylingBlock<OverlayStyles>[];
|
|
2220
|
+
/**
|
|
2221
|
+
* Style blocks for the overlay wrapper (backdrop). The array represents
|
|
2222
|
+
* breakpoint-specific styles: first item is the default, subsequent items correspond
|
|
2223
|
+
* to breakpoints in ascending order.
|
|
2224
|
+
*/
|
|
721
2225
|
wrapper: BasicStateStylingBlock<OverlayWrapperStyles>[];
|
|
722
2226
|
}
|
|
2227
|
+
/**
|
|
2228
|
+
* A modal overlay that appears on top of the main content with a backdrop. Use for dialogs,
|
|
2229
|
+
* confirmations, and modal interactions that require user attention. The overlay blocks
|
|
2230
|
+
* interaction with the content behind it. Do NOT use Overlay for inline content layering;
|
|
2231
|
+
* use ZStack instead.
|
|
2232
|
+
*/
|
|
723
2233
|
export interface OverlayModel<Children, Predicates> {
|
|
2234
|
+
/**
|
|
2235
|
+
* If true, clicking the backdrop area closes the overlay. MUST be set to true when the
|
|
2236
|
+
* overlay is dismissible. Set to false when the user MUST interact with the overlay
|
|
2237
|
+
* content before proceeding (e.g., mandatory confirmations).
|
|
2238
|
+
*/
|
|
724
2239
|
allowBackdropToClose: boolean;
|
|
2240
|
+
/**
|
|
2241
|
+
* Accessibility label for screen readers. MUST be set to describe the purpose of the
|
|
2242
|
+
* overlay (e.g., "Confirmation dialog" or "Settings panel").
|
|
2243
|
+
*/
|
|
725
2244
|
a11yLabel?: null | string;
|
|
2245
|
+
/**
|
|
2246
|
+
* Visual styles for this overlay. See styling documentation for the structure. Omit to
|
|
2247
|
+
* use default (unstyled) rendering.
|
|
2248
|
+
*/
|
|
726
2249
|
styles?: null | LayoutStyle<OverlayElements, ConditionalStyleTransition<OverlayTransitions, Predicates>>;
|
|
2250
|
+
/** The content displayed within the overlay. */
|
|
727
2251
|
children: Children[];
|
|
728
2252
|
}
|
|
2253
|
+
/** Transition styles for the Overlay node. Use to animate style changes smoothly. */
|
|
729
2254
|
export interface OverlayTransitions {
|
|
2255
|
+
/**
|
|
2256
|
+
* Transition properties for the overlay content area. Specifies which style properties
|
|
2257
|
+
* should animate and their duration/easing when values change.
|
|
2258
|
+
*/
|
|
730
2259
|
own?: null | OverlayStyles;
|
|
2260
|
+
/** Transition properties for the overlay wrapper (backdrop). */
|
|
731
2261
|
wrapper?: null | OverlayWrapperStyles;
|
|
732
2262
|
}
|
|
2263
|
+
/**
|
|
2264
|
+
* Visual style properties for the PartnerEventButtonTrigger.
|
|
2265
|
+
* Contains the standard style categories: container layout, background colors,
|
|
2266
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
2267
|
+
*/
|
|
733
2268
|
export interface PartnerEventButtonTriggerStyle {
|
|
2269
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
734
2270
|
container?: null | ContainerStylingProperties;
|
|
2271
|
+
/** Background color and gradient styles. */
|
|
735
2272
|
background?: null | BackgroundStylingProperties;
|
|
2273
|
+
/** Border width, color, and radius styles. */
|
|
736
2274
|
border?: null | BorderStylingProperties;
|
|
2275
|
+
/** Width and height dimension styles. */
|
|
737
2276
|
dimension?: null | DimensionStylingProperties;
|
|
2277
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
738
2278
|
flexChild?: null | FlexChildStylingProperties;
|
|
2279
|
+
/** Padding and margin spacing styles. */
|
|
739
2280
|
spacing?: null | SpacingStylingProperties;
|
|
740
2281
|
}
|
|
2282
|
+
/**
|
|
2283
|
+
* Styling elements for the PartnerEventButtonTrigger.
|
|
2284
|
+
* The `own` array contains state-dependent styling blocks applied to the button itself.
|
|
2285
|
+
*/
|
|
741
2286
|
export interface PartnerEventButtonTriggerElements {
|
|
2287
|
+
/** Array of state-dependent styling blocks for the partner event button. */
|
|
742
2288
|
own: BasicStateStylingBlock<PartnerEventButtonTriggerStyle>[];
|
|
743
2289
|
}
|
|
744
|
-
|
|
2290
|
+
/**
|
|
2291
|
+
* A domain-specific partner event that can be triggered.
|
|
2292
|
+
* Each variant represents a specific event type with its associated data.
|
|
2293
|
+
*/
|
|
2294
|
+
export type DomainPartnerEvent =
|
|
2295
|
+
/** An upsell creative sent event, triggered to track upsell offer presentation. */
|
|
2296
|
+
{
|
|
745
2297
|
type: "UPSELL_CREATIVE_SENT";
|
|
746
2298
|
data: UpsellCreativeSentEventData;
|
|
747
2299
|
};
|
|
2300
|
+
/**
|
|
2301
|
+
* A button that triggers a partner domain event when clicked.
|
|
2302
|
+
* Used to fire domain-specific tracking events for partner integrations.
|
|
2303
|
+
*
|
|
2304
|
+
* MUST provide an `event` with the appropriate event type and data.
|
|
2305
|
+
* Do NOT use this for standard offer responses; use CreativeResponse instead.
|
|
2306
|
+
*/
|
|
748
2307
|
export interface PartnerEventButtonTriggerModel<Children, Predicates> {
|
|
2308
|
+
/** Accessibility label for the button. */
|
|
749
2309
|
a11yLabel?: null | string;
|
|
2310
|
+
/** Visual styles for the partner event button. */
|
|
750
2311
|
styles?: null | LayoutStyle<PartnerEventButtonTriggerElements, ConditionalStyleTransition<PartnerEventButtonTriggerTransitions, Predicates>>;
|
|
2312
|
+
/** Child nodes forming the button content. */
|
|
751
2313
|
children: Children[];
|
|
2314
|
+
/**
|
|
2315
|
+
* The domain event to trigger when the button is clicked.
|
|
2316
|
+
* MUST be a valid DomainPartnerEvent variant with required data.
|
|
2317
|
+
*/
|
|
752
2318
|
event: DomainPartnerEvent;
|
|
753
2319
|
}
|
|
2320
|
+
/** Transition styles for animating PartnerEventButtonTrigger style changes. */
|
|
754
2321
|
export interface PartnerEventButtonTriggerTransitions {
|
|
2322
|
+
/** Transition properties for the partner event button's own styles. */
|
|
755
2323
|
own?: null | PartnerEventButtonTriggerStyle;
|
|
756
2324
|
}
|
|
2325
|
+
/**
|
|
2326
|
+
* Tests the position index of the current item within a collection. Use to
|
|
2327
|
+
* style items differently based on their position (e.g. first item, last item).
|
|
2328
|
+
*/
|
|
757
2329
|
export interface PositionPredicate {
|
|
2330
|
+
/** The comparison operator. */
|
|
758
2331
|
condition: OrderableWhenCondition;
|
|
2332
|
+
/**
|
|
2333
|
+
* The position index to compare against. MUST be a string representation
|
|
2334
|
+
* of a number, e.g. "0" for the first item.
|
|
2335
|
+
*/
|
|
759
2336
|
value: string;
|
|
760
2337
|
}
|
|
2338
|
+
/**
|
|
2339
|
+
* Visual style properties for the ProgressControl button.
|
|
2340
|
+
* Contains the standard style categories: container layout, background colors,
|
|
2341
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
2342
|
+
*/
|
|
761
2343
|
export interface ProgressControlStyle {
|
|
2344
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
762
2345
|
container?: null | ContainerStylingProperties;
|
|
2346
|
+
/** Background color and gradient styles. */
|
|
763
2347
|
background?: null | BackgroundStylingProperties;
|
|
2348
|
+
/** Border width, color, and radius styles. */
|
|
764
2349
|
border?: null | BorderStylingProperties;
|
|
2350
|
+
/** Width and height dimension styles. */
|
|
765
2351
|
dimension?: null | DimensionStylingProperties;
|
|
2352
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
766
2353
|
flexChild?: null | FlexChildStylingProperties;
|
|
2354
|
+
/** Padding and margin spacing styles. */
|
|
767
2355
|
spacing?: null | SpacingStylingProperties;
|
|
768
2356
|
}
|
|
2357
|
+
/**
|
|
2358
|
+
* Styling elements for the ProgressControl button.
|
|
2359
|
+
* The `own` array contains state-dependent styling blocks (e.g. default, pressed, disabled)
|
|
2360
|
+
* applied to the control button itself.
|
|
2361
|
+
*/
|
|
769
2362
|
export interface ProgressControlElements {
|
|
2363
|
+
/**
|
|
2364
|
+
* Array of state-dependent styling blocks for the control button.
|
|
2365
|
+
* Each block targets a specific interaction state (default, pressed, disabled, etc.).
|
|
2366
|
+
*/
|
|
770
2367
|
own: BasicStateStylingBlock<ProgressControlStyle>[];
|
|
771
2368
|
}
|
|
772
|
-
|
|
2369
|
+
/** The direction in which the progress control advances offers. */
|
|
2370
|
+
export type ProgressionDirection =
|
|
2371
|
+
/** Advance to the next offer or group. */
|
|
2372
|
+
"Forward"
|
|
2373
|
+
/** Return to the previous offer or group. */
|
|
2374
|
+
| "Backward";
|
|
2375
|
+
/**
|
|
2376
|
+
* A button that advances or reverses offer progression.
|
|
2377
|
+
* Used with OneByOneDistribution or GroupedDistribution for navigation.
|
|
2378
|
+
*
|
|
2379
|
+
* MUST specify a `direction` (Forward or Backward).
|
|
2380
|
+
* Pair with a distribution node for the control to have an effect.
|
|
2381
|
+
* Typically contains an arrow icon as child content.
|
|
2382
|
+
*/
|
|
773
2383
|
export interface ProgressControlModel<Children, Predicates> {
|
|
2384
|
+
/**
|
|
2385
|
+
* Accessibility label for the control.
|
|
2386
|
+
* MUST be provided (e.g. "Next offer" or "Previous offer").
|
|
2387
|
+
*/
|
|
774
2388
|
a11yLabel?: null | string;
|
|
2389
|
+
/** Visual styles for the control. Uses the LayoutStyle wrapper with conditional style transitions. */
|
|
775
2390
|
styles?: null | LayoutStyle<ProgressControlElements, ConditionalStyleTransition<ProgressControlTransitions, Predicates>>;
|
|
2391
|
+
/** The direction to progress. MUST be either Forward or Backward. */
|
|
776
2392
|
direction: ProgressionDirection;
|
|
2393
|
+
/**
|
|
2394
|
+
* Child nodes forming the button content (e.g. an arrow icon).
|
|
2395
|
+
* MUST contain at least one child for the control to have visible content.
|
|
2396
|
+
*/
|
|
777
2397
|
children: Children[];
|
|
778
2398
|
}
|
|
2399
|
+
/** Transition styles for animating ProgressControl style changes. */
|
|
779
2400
|
export interface ProgressControlTransitions {
|
|
2401
|
+
/** Transition properties for the control button's own styles. */
|
|
780
2402
|
own?: null | ProgressControlStyle;
|
|
781
2403
|
}
|
|
2404
|
+
/**
|
|
2405
|
+
* Visual style properties for the ProgressIndicator container.
|
|
2406
|
+
* Contains the standard style categories for the outer indicator wrapper.
|
|
2407
|
+
*/
|
|
782
2408
|
export interface ProgressIndicatorStyles {
|
|
2409
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
783
2410
|
container?: null | ContainerStylingProperties;
|
|
2411
|
+
/** Background color and gradient styles. */
|
|
784
2412
|
background?: null | BackgroundStylingProperties;
|
|
2413
|
+
/** Border width, color, and radius styles. */
|
|
785
2414
|
border?: null | BorderStylingProperties;
|
|
2415
|
+
/** Width and height dimension styles. */
|
|
786
2416
|
dimension?: null | DimensionStylingProperties;
|
|
2417
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
787
2418
|
flexChild?: null | FlexChildStylingProperties;
|
|
2419
|
+
/** Padding and margin spacing styles. */
|
|
788
2420
|
spacing?: null | SpacingStylingProperties;
|
|
789
2421
|
}
|
|
2422
|
+
/**
|
|
2423
|
+
* Styling elements for the ProgressIndicator.
|
|
2424
|
+
* Contains styling blocks for the container, individual indicators, and special indicator states.
|
|
2425
|
+
*/
|
|
790
2426
|
export interface ProgressIndicatorElements {
|
|
2427
|
+
/** Array of state-dependent styling blocks for the indicator container. */
|
|
791
2428
|
own: BasicStateStylingBlock<ProgressIndicatorStyles>[];
|
|
2429
|
+
/** Styling blocks for each individual indicator item (default state). */
|
|
792
2430
|
indicator: BasicStateStylingBlock<IndicatorStyles>[];
|
|
2431
|
+
/**
|
|
2432
|
+
* Optional styling blocks for the currently active indicator.
|
|
2433
|
+
* If omitted, the default indicator styling is used.
|
|
2434
|
+
*/
|
|
793
2435
|
activeIndicator?: null | BasicStateStylingBlock<IndicatorStyles>[];
|
|
2436
|
+
/**
|
|
2437
|
+
* Optional styling blocks for indicators that have been seen/visited.
|
|
2438
|
+
* If omitted, the default indicator styling is used.
|
|
2439
|
+
*/
|
|
794
2440
|
seenIndicator?: null | BasicStateStylingBlock<IndicatorStyles>[];
|
|
795
2441
|
}
|
|
2442
|
+
/**
|
|
2443
|
+
* Displays visual progress indicators (dots, bars) showing the user's position
|
|
2444
|
+
* within a series of offers.
|
|
2445
|
+
*
|
|
2446
|
+
* MUST be paired with a distribution node (OneByOneDistribution, GroupedDistribution, etc.)
|
|
2447
|
+
* to track position. The indicator automatically reflects the current offer position.
|
|
2448
|
+
* Use `indicator` to specify the type (e.g. "dot", "bar", "number").
|
|
2449
|
+
*/
|
|
796
2450
|
export interface ProgressIndicatorModel<Predicates> {
|
|
2451
|
+
/**
|
|
2452
|
+
* Visual styles for the progress indicators.
|
|
2453
|
+
* Uses the LayoutStyle wrapper with conditional style transitions.
|
|
2454
|
+
*/
|
|
797
2455
|
styles?: null | LayoutStyle<ProgressIndicatorElements, ConditionalStyleTransition<ProgressIndicatorTransitions, Predicates>>;
|
|
2456
|
+
/**
|
|
2457
|
+
* The type of indicator to display (e.g. "dot", "bar", "number").
|
|
2458
|
+
* MUST be a valid indicator type string.
|
|
2459
|
+
*/
|
|
798
2460
|
indicator: string;
|
|
2461
|
+
/**
|
|
2462
|
+
* The initial position of the indicator (zero-indexed).
|
|
2463
|
+
* If omitted, defaults to position 0.
|
|
2464
|
+
*/
|
|
799
2465
|
startPosition?: null | number;
|
|
2466
|
+
/**
|
|
2467
|
+
* If true, the indicator is hidden from screen readers.
|
|
2468
|
+
* Set to true when the indicator is purely decorative.
|
|
2469
|
+
*/
|
|
800
2470
|
accessibilityHidden?: null | boolean;
|
|
801
2471
|
}
|
|
2472
|
+
/**
|
|
2473
|
+
* Transition styles for animating ProgressIndicator style changes.
|
|
2474
|
+
* Defines transitions for the container and each indicator state.
|
|
2475
|
+
*/
|
|
802
2476
|
export interface ProgressIndicatorTransitions {
|
|
2477
|
+
/** Transition properties for the indicator container's own styles. */
|
|
803
2478
|
own?: null | ProgressIndicatorStyles;
|
|
2479
|
+
/** Transition properties for the default indicator styles. */
|
|
804
2480
|
indicator?: null | IndicatorStyles;
|
|
2481
|
+
/** Transition properties for the active indicator styles. */
|
|
805
2482
|
activeIndicator?: null | IndicatorStyles;
|
|
2483
|
+
/** Transition properties for the seen indicator styles. */
|
|
806
2484
|
seenIndicator?: null | IndicatorStyles;
|
|
807
2485
|
}
|
|
2486
|
+
/**
|
|
2487
|
+
* Tests which offer index is currently visible in a carousel or progression.
|
|
2488
|
+
* Use 0 for the first offer, -1 for the last offer.
|
|
2489
|
+
*/
|
|
808
2490
|
export interface ProgressionPredicate {
|
|
2491
|
+
/** The comparison operator. */
|
|
809
2492
|
condition: OrderableWhenCondition;
|
|
2493
|
+
/**
|
|
2494
|
+
* The progression index to compare against. MUST be a string representation
|
|
2495
|
+
* of a number. Use "0" for the first offer, "-1" for the last offer.
|
|
2496
|
+
*/
|
|
810
2497
|
value: string;
|
|
811
2498
|
}
|
|
2499
|
+
/** Visual styles for the RichText node. */
|
|
812
2500
|
export interface RichTextStyle {
|
|
2501
|
+
/** Width, height and rotation properties. */
|
|
813
2502
|
dimension?: null | DimensionStylingProperties;
|
|
2503
|
+
/** Properties controlling behaviour as a flex child. */
|
|
814
2504
|
flexChild?: null | FlexChildStylingProperties;
|
|
2505
|
+
/** Padding, margin and offset properties. */
|
|
815
2506
|
spacing?: null | SpacingStylingProperties;
|
|
2507
|
+
/** Background color and image properties. */
|
|
816
2508
|
background?: null | BackgroundStylingProperties;
|
|
2509
|
+
/** Typography properties. */
|
|
817
2510
|
text?: null | TextStylingProperties;
|
|
818
2511
|
}
|
|
2512
|
+
/** Style elements for the RichText node. */
|
|
819
2513
|
export interface RichTextElements {
|
|
2514
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
820
2515
|
own: BasicStateStylingBlock<RichTextStyle>[];
|
|
2516
|
+
/** Style blocks for link elements within the rich text content. */
|
|
821
2517
|
link?: null | BasicStateStylingBlock<InLineTextStyle>[];
|
|
822
2518
|
}
|
|
2519
|
+
/** Renders HTML-formatted text content. Supports `<a>`, `<strong>`, `<em>`, `<br>` and other inline HTML elements. Use BasicText for plain text without HTML. */
|
|
823
2520
|
export interface RichTextModel<Predicates> {
|
|
2521
|
+
/** Visual styles for the text element. */
|
|
824
2522
|
styles?: null | LayoutStyle<RichTextElements, ConditionalStyleTransition<RichTextTransitions, Predicates>>;
|
|
2523
|
+
/** Controls how links within the rich text are opened when clicked. */
|
|
825
2524
|
openLinks?: null | LinkOpenTarget;
|
|
2525
|
+
/** The HTML text content to display. Supports inline HTML tags and data binding placeholders in the format %^DATA.key^% or %^ATTRIBUTE.key^%. */
|
|
826
2526
|
value: string;
|
|
827
2527
|
}
|
|
2528
|
+
/** Transition definitions for the RichText node. */
|
|
828
2529
|
export interface RichTextTransitions {
|
|
2530
|
+
/** Transition properties for the primary element. */
|
|
829
2531
|
own?: null | RichTextStyle;
|
|
2532
|
+
/** Transition properties for link elements. */
|
|
830
2533
|
link?: null | InLineTextStyle;
|
|
831
2534
|
}
|
|
2535
|
+
/**
|
|
2536
|
+
* The top-level schema structure for an outer layout. Contains the layout tree,
|
|
2537
|
+
* breakpoint definitions, settings and display configuration.
|
|
2538
|
+
*/
|
|
832
2539
|
export interface RootSchemaModel<Layout, Display, Settings> {
|
|
2540
|
+
/**
|
|
2541
|
+
* Map of breakpoint names to viewport width thresholds in platform units.
|
|
2542
|
+
* Defines responsive breakpoints for the layout.
|
|
2543
|
+
*/
|
|
833
2544
|
breakpoints: Record<string, number>;
|
|
2545
|
+
/** The root node of the layout tree. */
|
|
834
2546
|
layout: Layout;
|
|
2547
|
+
/** Platform-specific layout settings. */
|
|
835
2548
|
settings?: null | Settings;
|
|
2549
|
+
/** Controls how the layout is displayed (fullscreen, embedded, etc). */
|
|
836
2550
|
display?: null | Display;
|
|
837
2551
|
}
|
|
2552
|
+
/**
|
|
2553
|
+
* Available style categories for the Row element. Each optional field enables a specific
|
|
2554
|
+
* category of visual styling. Omit a field to leave that category unstyled.
|
|
2555
|
+
*/
|
|
838
2556
|
export interface RowStyle {
|
|
2557
|
+
/**
|
|
2558
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
2559
|
+
* MUST be used to control how children are arranged within the row.
|
|
2560
|
+
*/
|
|
839
2561
|
container?: null | ContainerStylingProperties;
|
|
2562
|
+
/**
|
|
2563
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
2564
|
+
* behind the row content.
|
|
2565
|
+
*/
|
|
840
2566
|
background?: null | BackgroundStylingProperties;
|
|
2567
|
+
/**
|
|
2568
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
2569
|
+
* rounded corners to the row.
|
|
2570
|
+
*/
|
|
841
2571
|
border?: null | BorderStylingProperties;
|
|
2572
|
+
/**
|
|
2573
|
+
* Width, height and rotation properties. Use to explicitly size the row or apply rotation
|
|
2574
|
+
* transforms. Do NOT set width/height if the row should size to its content.
|
|
2575
|
+
*/
|
|
842
2576
|
dimension?: null | DimensionStylingProperties;
|
|
2577
|
+
/**
|
|
2578
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
2579
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
2580
|
+
*/
|
|
843
2581
|
flexChild?: null | FlexChildStylingProperties;
|
|
2582
|
+
/** Padding, margin and offset properties. Use to add spacing inside or outside the row. */
|
|
844
2583
|
spacing?: null | SpacingStylingProperties;
|
|
845
2584
|
}
|
|
2585
|
+
/**
|
|
2586
|
+
* Styleable elements of the Row node. The Row has a single styleable element: its own
|
|
2587
|
+
* container.
|
|
2588
|
+
*/
|
|
846
2589
|
export interface RowElements {
|
|
2590
|
+
/**
|
|
2591
|
+
* Style blocks for the row container itself. The array represents breakpoint-specific
|
|
2592
|
+
* styles: first item is the default (no breakpoint), subsequent items correspond to
|
|
2593
|
+
* breakpoints in ascending order. MUST contain at least one item for the default style.
|
|
2594
|
+
*/
|
|
847
2595
|
own: BasicStateStylingBlock<RowStyle>[];
|
|
848
2596
|
}
|
|
2597
|
+
/**
|
|
2598
|
+
* A horizontal flex container that arranges its children in a row (left to right). Use for
|
|
2599
|
+
* horizontal layouts. Children are laid out along the horizontal axis by default. To control
|
|
2600
|
+
* alignment and distribution, configure the container styles. Do NOT nest Rows unnecessarily
|
|
2601
|
+
* when a single Row with appropriate styling would suffice.
|
|
2602
|
+
*/
|
|
849
2603
|
export interface RowModel<Children, Predicates> {
|
|
2604
|
+
/**
|
|
2605
|
+
* Accessibility label for screen readers. Omit if the row is purely decorative or its
|
|
2606
|
+
* children already provide sufficient accessible labels. MUST be set when the row
|
|
2607
|
+
* conveys meaning not available from its children alone.
|
|
2608
|
+
*/
|
|
850
2609
|
a11yLabel?: null | string;
|
|
2610
|
+
/**
|
|
2611
|
+
* Visual styles for this row. See styling documentation for the structure. Omit to use
|
|
2612
|
+
* default (unstyled) rendering.
|
|
2613
|
+
*/
|
|
851
2614
|
styles?: null | LayoutStyle<RowElements, ConditionalStyleTransition<RowTransitions, Predicates>>;
|
|
2615
|
+
/**
|
|
2616
|
+
* Child nodes rendered horizontally within this row.
|
|
2617
|
+
* Children are laid out left to right in source order.
|
|
2618
|
+
*/
|
|
852
2619
|
children: Children[];
|
|
853
2620
|
}
|
|
2621
|
+
/** Transition styles for the Row node. Use to animate style changes smoothly. */
|
|
854
2622
|
export interface RowTransitions {
|
|
2623
|
+
/**
|
|
2624
|
+
* Transition properties for the row container. Specifies which style properties
|
|
2625
|
+
* should animate and their duration/easing when values change.
|
|
2626
|
+
*/
|
|
855
2627
|
own?: null | RowStyle;
|
|
856
2628
|
}
|
|
2629
|
+
/**
|
|
2630
|
+
* Available style categories for the ScrollableColumn element. Each optional field enables a
|
|
2631
|
+
* specific category of visual styling. Omit a field to leave that category unstyled.
|
|
2632
|
+
*/
|
|
857
2633
|
export interface ScrollableColumnStyle {
|
|
2634
|
+
/**
|
|
2635
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
2636
|
+
* MUST be used to control how children are arranged within the scrollable column.
|
|
2637
|
+
*/
|
|
858
2638
|
container?: null | ContainerStylingProperties;
|
|
2639
|
+
/**
|
|
2640
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
2641
|
+
* behind the scrollable column content.
|
|
2642
|
+
*/
|
|
859
2643
|
background?: null | BackgroundStylingProperties;
|
|
2644
|
+
/**
|
|
2645
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
2646
|
+
* rounded corners to the scrollable column.
|
|
2647
|
+
*/
|
|
860
2648
|
border?: null | BorderStylingProperties;
|
|
2649
|
+
/**
|
|
2650
|
+
* Width, height and rotation properties. MUST set a constrained height for scrolling to
|
|
2651
|
+
* work. Without a height constraint, the container will expand to fit all content and
|
|
2652
|
+
* scrolling will not occur.
|
|
2653
|
+
*/
|
|
861
2654
|
dimension?: null | DimensionStylingProperties;
|
|
2655
|
+
/**
|
|
2656
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
2657
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
2658
|
+
*/
|
|
862
2659
|
flexChild?: null | FlexChildStylingProperties;
|
|
2660
|
+
/**
|
|
2661
|
+
* Padding, margin and offset properties. Use to add spacing inside or outside the
|
|
2662
|
+
* scrollable column.
|
|
2663
|
+
*/
|
|
863
2664
|
spacing?: null | SpacingStylingProperties;
|
|
864
2665
|
}
|
|
2666
|
+
/**
|
|
2667
|
+
* Styleable elements of the ScrollableColumn node. The ScrollableColumn has a single
|
|
2668
|
+
* styleable element: its own container.
|
|
2669
|
+
*/
|
|
865
2670
|
export interface ScrollableColumnElements {
|
|
2671
|
+
/**
|
|
2672
|
+
* Style blocks for the scrollable column container itself. The array represents
|
|
2673
|
+
* breakpoint-specific styles: first item is the default (no breakpoint), subsequent
|
|
2674
|
+
* items correspond to breakpoints in ascending order. MUST contain at least one item
|
|
2675
|
+
* for the default style.
|
|
2676
|
+
*/
|
|
866
2677
|
own: BasicStateStylingBlock<ScrollableColumnStyle>[];
|
|
867
2678
|
}
|
|
2679
|
+
/**
|
|
2680
|
+
* A vertical scrollable container. Children that exceed the container height can be scrolled
|
|
2681
|
+
* into view. Use when content may overflow vertically (e.g., long lists, content feeds).
|
|
2682
|
+
* MUST have a constrained height via dimension styles for scrolling to activate. Do NOT use
|
|
2683
|
+
* ScrollableColumn when a regular Column would suffice (i.e., when content fits without
|
|
2684
|
+
* scrolling).
|
|
2685
|
+
*/
|
|
868
2686
|
export interface ScrollableColumnModel<Children, Predicates> {
|
|
2687
|
+
/**
|
|
2688
|
+
* Accessibility label for screen readers. Omit if the scrollable column is purely
|
|
2689
|
+
* decorative or its children already provide sufficient accessible labels. MUST be set
|
|
2690
|
+
* when the scrollable column conveys meaning not available from its children alone.
|
|
2691
|
+
*/
|
|
869
2692
|
a11yLabel?: null | string;
|
|
2693
|
+
/**
|
|
2694
|
+
* Visual styles for this scrollable column. See styling documentation for the structure.
|
|
2695
|
+
* Omit to use default (unstyled) rendering.
|
|
2696
|
+
*/
|
|
870
2697
|
styles?: null | LayoutStyle<ScrollableColumnElements, ConditionalStyleTransition<ScrollableColumnTransitions, Predicates>>;
|
|
2698
|
+
/**
|
|
2699
|
+
* Child nodes rendered vertically within this scrollable column. MUST contain at least
|
|
2700
|
+
* one child. Children are laid out top to bottom in source order and scroll vertically
|
|
2701
|
+
* when they exceed the container height.
|
|
2702
|
+
*/
|
|
871
2703
|
children: Children[];
|
|
872
2704
|
}
|
|
2705
|
+
/** Transition styles for the ScrollableColumn node. Use to animate style changes smoothly. */
|
|
873
2706
|
export interface ScrollableColumnTransitions {
|
|
2707
|
+
/**
|
|
2708
|
+
* Transition properties for the scrollable column container. Specifies which style
|
|
2709
|
+
* properties should animate and their duration/easing when values change.
|
|
2710
|
+
*/
|
|
874
2711
|
own?: null | ScrollableColumnStyle;
|
|
875
2712
|
}
|
|
2713
|
+
/**
|
|
2714
|
+
* Available style categories for the ScrollableRow element. Each optional field enables a
|
|
2715
|
+
* specific category of visual styling. Omit a field to leave that category unstyled.
|
|
2716
|
+
*/
|
|
876
2717
|
export interface ScrollableRowStyle {
|
|
2718
|
+
/**
|
|
2719
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
2720
|
+
* MUST be used to control how children are arranged within the scrollable row.
|
|
2721
|
+
*/
|
|
877
2722
|
container?: null | ContainerStylingProperties;
|
|
2723
|
+
/**
|
|
2724
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
2725
|
+
* behind the scrollable row content.
|
|
2726
|
+
*/
|
|
878
2727
|
background?: null | BackgroundStylingProperties;
|
|
2728
|
+
/**
|
|
2729
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
2730
|
+
* rounded corners to the scrollable row.
|
|
2731
|
+
*/
|
|
879
2732
|
border?: null | BorderStylingProperties;
|
|
2733
|
+
/**
|
|
2734
|
+
* Width, height and rotation properties. MUST set a constrained width for scrolling to
|
|
2735
|
+
* work. Without a width constraint, the container will expand to fit all content and
|
|
2736
|
+
* scrolling will not occur.
|
|
2737
|
+
*/
|
|
880
2738
|
dimension?: null | DimensionStylingProperties;
|
|
2739
|
+
/**
|
|
2740
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
2741
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
2742
|
+
*/
|
|
881
2743
|
flexChild?: null | FlexChildStylingProperties;
|
|
2744
|
+
/**
|
|
2745
|
+
* Padding, margin and offset properties. Use to add spacing inside or outside the
|
|
2746
|
+
* scrollable row.
|
|
2747
|
+
*/
|
|
882
2748
|
spacing?: null | SpacingStylingProperties;
|
|
883
2749
|
}
|
|
2750
|
+
/**
|
|
2751
|
+
* Styleable elements of the ScrollableRow node. The ScrollableRow has a single styleable
|
|
2752
|
+
* element: its own container.
|
|
2753
|
+
*/
|
|
884
2754
|
export interface ScrollableRowElements {
|
|
2755
|
+
/**
|
|
2756
|
+
* Style blocks for the scrollable row container itself. The array represents
|
|
2757
|
+
* breakpoint-specific styles: first item is the default (no breakpoint), subsequent
|
|
2758
|
+
* items correspond to breakpoints in ascending order. MUST contain at least one item
|
|
2759
|
+
* for the default style.
|
|
2760
|
+
*/
|
|
885
2761
|
own: BasicStateStylingBlock<ScrollableRowStyle>[];
|
|
886
2762
|
}
|
|
2763
|
+
/**
|
|
2764
|
+
* A horizontal scrollable container. Children that exceed the container width can be scrolled
|
|
2765
|
+
* into view. Use when content may overflow horizontally (e.g., carousels, horizontal lists).
|
|
2766
|
+
* MUST have a constrained width via dimension styles for scrolling to activate. Do NOT use
|
|
2767
|
+
* ScrollableRow when a regular Row would suffice (i.e., when content fits without scrolling).
|
|
2768
|
+
*/
|
|
887
2769
|
export interface ScrollableRowModel<Children, Predicates> {
|
|
2770
|
+
/**
|
|
2771
|
+
* Accessibility label for screen readers. Omit if the scrollable row is purely decorative
|
|
2772
|
+
* or its children already provide sufficient accessible labels. MUST be set when the
|
|
2773
|
+
* scrollable row conveys meaning not available from its children alone.
|
|
2774
|
+
*/
|
|
888
2775
|
a11yLabel?: null | string;
|
|
2776
|
+
/**
|
|
2777
|
+
* Visual styles for this scrollable row. See styling documentation for the structure.
|
|
2778
|
+
* Omit to use default (unstyled) rendering.
|
|
2779
|
+
*/
|
|
889
2780
|
styles?: null | LayoutStyle<ScrollableRowElements, ConditionalStyleTransition<ScrollableRowTransitions, Predicates>>;
|
|
2781
|
+
/**
|
|
2782
|
+
* Child nodes rendered horizontally within this scrollable row. MUST contain at least
|
|
2783
|
+
* one child. Children are laid out left to right in source order and scroll horizontally
|
|
2784
|
+
* when they exceed the container width.
|
|
2785
|
+
*/
|
|
890
2786
|
children: Children[];
|
|
891
2787
|
}
|
|
2788
|
+
/** Transition styles for the ScrollableRow node. Use to animate style changes smoothly. */
|
|
892
2789
|
export interface ScrollableRowTransitions {
|
|
2790
|
+
/**
|
|
2791
|
+
* Transition properties for the scrollable row container. Specifies which style
|
|
2792
|
+
* properties should animate and their duration/easing when values change.
|
|
2793
|
+
*/
|
|
893
2794
|
own?: null | ScrollableRowStyle;
|
|
894
2795
|
}
|
|
2796
|
+
/**
|
|
2797
|
+
* Visual style properties for the SlideStateTrigger container.
|
|
2798
|
+
* Contains the standard style categories for the slider's outer container.
|
|
2799
|
+
*/
|
|
895
2800
|
export interface SlideStateTriggerOwnStyles {
|
|
2801
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
896
2802
|
container?: null | ContainerStylingProperties;
|
|
2803
|
+
/** Background color and gradient styles. */
|
|
897
2804
|
background?: null | BackgroundStylingProperties;
|
|
2805
|
+
/** Border width, color, and radius styles. */
|
|
898
2806
|
border?: null | BorderStylingProperties;
|
|
2807
|
+
/** Width and height dimension styles. */
|
|
899
2808
|
dimension?: null | DimensionStylingProperties;
|
|
2809
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
900
2810
|
flexChild?: null | FlexChildStylingProperties;
|
|
2811
|
+
/** Padding and margin spacing styles. */
|
|
901
2812
|
spacing?: null | SpacingStylingProperties;
|
|
902
2813
|
}
|
|
2814
|
+
/** Visual style properties for the slider thumb (the draggable handle). */
|
|
903
2815
|
export interface SlideStateTriggerThumbStyles {
|
|
2816
|
+
/** Text styling for the thumb label. */
|
|
904
2817
|
text?: null | TextStylingProperties;
|
|
2818
|
+
/** Background color and gradient styles for the thumb. */
|
|
905
2819
|
background?: null | BackgroundStylingProperties;
|
|
2820
|
+
/** Border width, color, and radius styles for the thumb. */
|
|
906
2821
|
border?: null | BorderStylingProperties;
|
|
2822
|
+
/** Width and height dimension styles for the thumb. */
|
|
907
2823
|
dimension?: null | DimensionStylingProperties;
|
|
2824
|
+
/** Flex child sizing and alignment styles for the thumb. */
|
|
908
2825
|
flexChild?: null | FlexChildStylingProperties;
|
|
2826
|
+
/** Padding and margin spacing styles for the thumb. */
|
|
909
2827
|
spacing?: null | SpacingStylingProperties;
|
|
910
2828
|
}
|
|
2829
|
+
/** Visual style properties for the slider label. */
|
|
911
2830
|
export interface SlideStateTriggerLabelStyles {
|
|
2831
|
+
/** Text styling for the label. */
|
|
912
2832
|
text?: null | TextStylingProperties;
|
|
2833
|
+
/** Padding and margin spacing styles for the label. */
|
|
913
2834
|
spacing?: null | SpacingStylingProperties;
|
|
914
2835
|
}
|
|
2836
|
+
/** Visual style properties for the slider fill (the filled portion of the track). */
|
|
915
2837
|
export interface SlideStateTriggerFillStyles {
|
|
2838
|
+
/** Background color and gradient styles for the fill. */
|
|
916
2839
|
background?: null | BackgroundStylingProperties;
|
|
2840
|
+
/** Border width, color, and radius styles for the fill. */
|
|
917
2841
|
border?: null | BorderStylingProperties;
|
|
918
2842
|
}
|
|
2843
|
+
/**
|
|
2844
|
+
* Styling elements for the SlideStateTrigger.
|
|
2845
|
+
* Contains styling blocks for the container, thumb, label, and fill sub-elements.
|
|
2846
|
+
*/
|
|
919
2847
|
export interface SlideStateTriggerElements {
|
|
2848
|
+
/** Array of stateless styling blocks for the slider container. */
|
|
920
2849
|
own: StatelessStylingBlock<SlideStateTriggerOwnStyles>[];
|
|
2850
|
+
/** Optional styling blocks for the slider thumb (draggable handle). */
|
|
921
2851
|
thumb?: null | StatelessStylingBlock<SlideStateTriggerThumbStyles>[];
|
|
2852
|
+
/** Optional styling blocks for the slider label. */
|
|
922
2853
|
label?: null | StatelessStylingBlock<SlideStateTriggerLabelStyles>[];
|
|
2854
|
+
/** Optional styling blocks for the slider fill (filled track portion). */
|
|
923
2855
|
fill?: null | StatelessStylingBlock<SlideStateTriggerFillStyles>[];
|
|
924
2856
|
}
|
|
2857
|
+
/** Configuration for the slider label. */
|
|
925
2858
|
export interface SlideStateTriggerLabel {
|
|
2859
|
+
/** Optional text value to display as the slider label. */
|
|
926
2860
|
value?: null | string;
|
|
927
2861
|
}
|
|
2862
|
+
/** Configuration for the slider thumb (draggable handle). */
|
|
928
2863
|
export interface SlideStateTriggerThumb {
|
|
2864
|
+
/** Optional icon name to display inside the thumb. */
|
|
929
2865
|
icon?: null | string;
|
|
930
2866
|
}
|
|
2867
|
+
/**
|
|
2868
|
+
* A slider control that updates a custom state value as the user drags.
|
|
2869
|
+
* The slider thumb can be dragged to set the state to a value proportional to the position.
|
|
2870
|
+
* Use with When nodes to conditionally show/hide content based on the slider state.
|
|
2871
|
+
*
|
|
2872
|
+
* MUST provide a `customStateKey` that matches the key in When predicates.
|
|
2873
|
+
* Optionally provide `customStateValue` to set the slider's initial position.
|
|
2874
|
+
*/
|
|
931
2875
|
export interface SlideStateTriggerModel<Predicates> {
|
|
2876
|
+
/**
|
|
2877
|
+
* Accessibility label for the slider.
|
|
2878
|
+
* MUST be provided for screen reader support.
|
|
2879
|
+
*/
|
|
932
2880
|
a11yLabel?: null | string;
|
|
2881
|
+
/** Visual styles for the slider. Uses the LayoutStyle wrapper with conditional style transitions. */
|
|
933
2882
|
styles?: null | LayoutStyle<SlideStateTriggerElements, ConditionalStyleTransition<SlideStateTriggerTransitions, Predicates>>;
|
|
2883
|
+
/** Configuration for the slider thumb (draggable handle). */
|
|
934
2884
|
thumb?: null | SlideStateTriggerThumb;
|
|
2885
|
+
/** Configuration for the slider label. */
|
|
935
2886
|
label?: null | SlideStateTriggerLabel;
|
|
2887
|
+
/**
|
|
2888
|
+
* The custom state key to update as the slider is dragged.
|
|
2889
|
+
* MUST match the key referenced in When node predicates.
|
|
2890
|
+
*/
|
|
936
2891
|
customStateKey: string;
|
|
2892
|
+
/**
|
|
2893
|
+
* The initial value of the custom state (slider position).
|
|
2894
|
+
* If omitted, defaults to the minimum position.
|
|
2895
|
+
*/
|
|
937
2896
|
customStateValue?: null | number;
|
|
938
2897
|
}
|
|
2898
|
+
/**
|
|
2899
|
+
* Transition styles for animating SlideStateTrigger style changes.
|
|
2900
|
+
* Defines transitions for all slider sub-elements.
|
|
2901
|
+
*/
|
|
939
2902
|
export interface SlideStateTriggerTransitions {
|
|
2903
|
+
/** Transition properties for the slider container's own styles. */
|
|
940
2904
|
own?: null | SlideStateTriggerOwnStyles;
|
|
2905
|
+
/** Transition properties for the thumb styles. */
|
|
941
2906
|
thumb?: null | SlideStateTriggerThumbStyles;
|
|
2907
|
+
/** Transition properties for the label styles. */
|
|
942
2908
|
label?: null | SlideStateTriggerLabelStyles;
|
|
2909
|
+
/** Transition properties for the fill styles. */
|
|
943
2910
|
fill?: null | SlideStateTriggerFillStyles;
|
|
944
2911
|
}
|
|
2912
|
+
/**
|
|
2913
|
+
* Visual style properties for the StackedDistribution container.
|
|
2914
|
+
* Contains the standard style categories: container layout, background colors,
|
|
2915
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
2916
|
+
*/
|
|
945
2917
|
export interface StackedDistributionStyles {
|
|
2918
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
946
2919
|
container?: null | ContainerStylingProperties;
|
|
2920
|
+
/** Background color and gradient styles. */
|
|
947
2921
|
background?: null | BackgroundStylingProperties;
|
|
2922
|
+
/** Border width, color, and radius styles. */
|
|
948
2923
|
border?: null | BorderStylingProperties;
|
|
2924
|
+
/** Width and height dimension styles. */
|
|
949
2925
|
dimension?: null | DimensionStylingProperties;
|
|
2926
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
950
2927
|
flexChild?: null | FlexChildStylingProperties;
|
|
2928
|
+
/** Padding and margin spacing styles. */
|
|
951
2929
|
spacing?: null | SpacingStylingProperties;
|
|
952
2930
|
}
|
|
2931
|
+
/**
|
|
2932
|
+
* Styling elements for the StackedDistribution container.
|
|
2933
|
+
* The `own` array contains stateless styling blocks applied to the stacked container itself.
|
|
2934
|
+
*/
|
|
953
2935
|
export interface StackedDistributionElements {
|
|
2936
|
+
/** Array of stateless styling blocks for the stacked container. */
|
|
954
2937
|
own: StatelessStylingBlock<StackedDistributionStyles>[];
|
|
955
2938
|
}
|
|
2939
|
+
/**
|
|
2940
|
+
* Conditional viewable item configuration for stacked distribution.
|
|
2941
|
+
* Controls how many items are viewable based on predicate conditions.
|
|
2942
|
+
*/
|
|
956
2943
|
export interface StackedViewableItem<Predicates> {
|
|
2944
|
+
/** Predicate conditions that determine when this viewable item count applies. */
|
|
957
2945
|
when: Predicates[];
|
|
2946
|
+
/**
|
|
2947
|
+
* The number of items viewable when the predicates are met.
|
|
2948
|
+
* If omitted, all items are shown.
|
|
2949
|
+
*/
|
|
958
2950
|
value?: null | number;
|
|
959
2951
|
}
|
|
2952
|
+
/**
|
|
2953
|
+
* Presents multiple offers stacked vertically, all visible at once.
|
|
2954
|
+
* Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
|
|
2955
|
+
*
|
|
2956
|
+
* Use this when all offers should be visible simultaneously.
|
|
2957
|
+
* Do NOT use this for sequential one-at-a-time presentation; use OneByOneDistribution instead.
|
|
2958
|
+
*/
|
|
960
2959
|
export interface StackedDistributionModel<Predicates> {
|
|
2960
|
+
/**
|
|
2961
|
+
* Visual styles for the stacked container.
|
|
2962
|
+
* Uses the LayoutStyle wrapper with conditional style transitions.
|
|
2963
|
+
*/
|
|
961
2964
|
styles?: null | LayoutStyle<StackedDistributionElements, ConditionalStyleTransition<StackedDistributionTransitions, Predicates>>;
|
|
2965
|
+
/**
|
|
2966
|
+
* Configuration for how many items are viewable in the stack.
|
|
2967
|
+
* Each entry specifies a conditional viewable item count.
|
|
2968
|
+
* If omitted, all items are shown by default.
|
|
2969
|
+
*/
|
|
962
2970
|
viewableItems?: null | StackedViewableItem<Predicates>[];
|
|
963
2971
|
}
|
|
2972
|
+
/** Transition styles for animating StackedDistribution style changes. */
|
|
964
2973
|
export interface StackedDistributionTransitions {
|
|
2974
|
+
/** Transition properties for the stacked container's own styles. */
|
|
965
2975
|
own?: null | StackedDistributionStyles;
|
|
966
2976
|
}
|
|
967
|
-
|
|
2977
|
+
/**
|
|
2978
|
+
* Condition operators for boolean values. Use these to test boolean flags.
|
|
2979
|
+
* Serialized as kebab-case strings: "is-true", "is-false".
|
|
2980
|
+
*/
|
|
2981
|
+
export type BooleanWhenCondition =
|
|
2982
|
+
/** True when the value is true. */
|
|
2983
|
+
"is-true"
|
|
2984
|
+
/** True when the value is false. */
|
|
2985
|
+
| "is-false";
|
|
2986
|
+
/**
|
|
2987
|
+
* A predicate with a hardcoded boolean value. Useful for enabling or disabling
|
|
2988
|
+
* sections during development or for static feature flags.
|
|
2989
|
+
*/
|
|
968
2990
|
export interface StaticBooleanPredicate {
|
|
2991
|
+
/** The boolean condition. Use "is-true" or "is-false". */
|
|
969
2992
|
condition: BooleanWhenCondition;
|
|
2993
|
+
/** The static boolean value to evaluate against the condition. */
|
|
970
2994
|
value: boolean;
|
|
971
2995
|
}
|
|
2996
|
+
/** Visual styles for the StaticIcon node. MUST include text styles with fontFamily set to 'rokt-icons' to render correctly. */
|
|
972
2997
|
export interface StaticIconStyles {
|
|
2998
|
+
/** Typography properties. MUST include fontFamily set to 'rokt-icons' for the icon to render correctly. */
|
|
973
2999
|
text?: null | TextStylingProperties;
|
|
3000
|
+
/** Width, height and rotation properties. */
|
|
974
3001
|
dimension?: null | DimensionStylingProperties;
|
|
3002
|
+
/** Properties controlling behaviour as a flex child. */
|
|
975
3003
|
flexChild?: null | FlexChildStylingProperties;
|
|
3004
|
+
/** Padding, margin and offset properties. */
|
|
976
3005
|
spacing?: null | SpacingStylingProperties;
|
|
3006
|
+
/** Background color and image properties. */
|
|
977
3007
|
background?: null | BackgroundStylingProperties;
|
|
3008
|
+
/** Border radius, color, width and style. */
|
|
978
3009
|
border?: null | BorderStylingProperties;
|
|
979
3010
|
}
|
|
3011
|
+
/** Style elements for the StaticIcon node. */
|
|
980
3012
|
export interface StaticIconElements {
|
|
3013
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
981
3014
|
own: BasicStateStylingBlock<StaticIconStyles>[];
|
|
982
3015
|
}
|
|
3016
|
+
/** Renders an SVG icon from the Rokt icon font. The icon is selected by name from the available icon set. */
|
|
983
3017
|
export interface StaticIconModel<Predicates> {
|
|
3018
|
+
/** Visual styles for the icon. MUST include text styles with fontFamily set to 'rokt-icons' to render correctly. */
|
|
984
3019
|
styles?: null | LayoutStyle<StaticIconElements, ConditionalStyleTransition<StaticIconTransitions, Predicates>>;
|
|
3020
|
+
/** 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. */
|
|
985
3021
|
name: string;
|
|
3022
|
+
/** Accessibility description of the icon for screen readers. */
|
|
986
3023
|
description?: null | string;
|
|
987
3024
|
}
|
|
3025
|
+
/** Transition definitions for the StaticIcon node. */
|
|
988
3026
|
export interface StaticIconTransitions {
|
|
3027
|
+
/** Transition properties for the primary element. */
|
|
989
3028
|
own?: null | StaticIconStyles;
|
|
990
3029
|
}
|
|
3030
|
+
/** Visual styles for the StaticImage node. */
|
|
991
3031
|
export interface StaticImageStyles {
|
|
3032
|
+
/** Background color and image properties. */
|
|
992
3033
|
background?: null | BackgroundStylingProperties;
|
|
3034
|
+
/** Border radius, color, width and style. */
|
|
993
3035
|
border?: null | BorderStylingProperties;
|
|
3036
|
+
/** Width, height and rotation properties. */
|
|
994
3037
|
dimension?: null | DimensionStylingProperties;
|
|
3038
|
+
/** Properties controlling behaviour as a flex child. */
|
|
995
3039
|
flexChild?: null | FlexChildStylingProperties;
|
|
3040
|
+
/** Padding, margin and offset properties. */
|
|
996
3041
|
spacing?: null | SpacingStylingProperties;
|
|
997
3042
|
}
|
|
3043
|
+
/** Style elements for the StaticImage node. */
|
|
998
3044
|
export interface StaticImageElements {
|
|
3045
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
999
3046
|
own: BasicStateStylingBlock<StaticImageStyles>[];
|
|
1000
3047
|
}
|
|
3048
|
+
/** URL configuration for a static image with themed light/dark mode support. */
|
|
1001
3049
|
export interface StaticImageUrl {
|
|
3050
|
+
/** The image URL for light mode. MUST be a valid URL. */
|
|
1002
3051
|
light: string;
|
|
3052
|
+
/** The image URL for dark mode. If not provided, the light URL is used for both modes. */
|
|
1003
3053
|
dark?: null | string;
|
|
1004
3054
|
}
|
|
3055
|
+
/** Renders a static image from a provided URL. Use for images with known URLs (logos, icons, decorative images). */
|
|
1005
3056
|
export interface StaticImageModel<Predicates> {
|
|
3057
|
+
/** Visual styles for the image element. */
|
|
1006
3058
|
styles?: null | LayoutStyle<StaticImageElements, ConditionalStyleTransition<StaticImageTransitions, Predicates>>;
|
|
3059
|
+
/** Alt text for accessibility. Describes the image for screen readers. */
|
|
1007
3060
|
alt?: null | string;
|
|
3061
|
+
/** Title text shown on hover. */
|
|
1008
3062
|
title?: null | string;
|
|
3063
|
+
/** The image URL with themed light/dark mode support. */
|
|
1009
3064
|
url: StaticImageUrl;
|
|
1010
3065
|
}
|
|
3066
|
+
/** Transition definitions for the StaticImage node. */
|
|
1011
3067
|
export interface StaticImageTransitions {
|
|
3068
|
+
/** Transition properties for the primary element. */
|
|
1012
3069
|
own?: null | StaticImageStyles;
|
|
1013
3070
|
}
|
|
3071
|
+
/**
|
|
3072
|
+
* Visual style properties for the StaticLink.
|
|
3073
|
+
* Contains the standard style categories: container layout, background colors,
|
|
3074
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
3075
|
+
*/
|
|
1014
3076
|
export interface StaticLinkStyles {
|
|
3077
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
1015
3078
|
container?: null | ContainerStylingProperties;
|
|
3079
|
+
/** Background color and gradient styles. */
|
|
1016
3080
|
background?: null | BackgroundStylingProperties;
|
|
3081
|
+
/** Border width, color, and radius styles. */
|
|
1017
3082
|
border?: null | BorderStylingProperties;
|
|
3083
|
+
/** Width and height dimension styles. */
|
|
1018
3084
|
dimension?: null | DimensionStylingProperties;
|
|
3085
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
1019
3086
|
flexChild?: null | FlexChildStylingProperties;
|
|
3087
|
+
/** Padding and margin spacing styles. */
|
|
1020
3088
|
spacing?: null | SpacingStylingProperties;
|
|
1021
3089
|
}
|
|
3090
|
+
/**
|
|
3091
|
+
* Styling elements for the StaticLink.
|
|
3092
|
+
* The `own` array contains state-dependent styling blocks (e.g. default, pressed)
|
|
3093
|
+
* applied to the link itself.
|
|
3094
|
+
*/
|
|
1022
3095
|
export interface StaticLinkElements {
|
|
3096
|
+
/**
|
|
3097
|
+
* Array of state-dependent styling blocks for the link.
|
|
3098
|
+
* Each block targets a specific interaction state (default, pressed, etc.).
|
|
3099
|
+
*/
|
|
1023
3100
|
own: BasicStateStylingBlock<StaticLinkStyles>[];
|
|
1024
3101
|
}
|
|
3102
|
+
/**
|
|
3103
|
+
* A clickable link that wraps its children. Opens the specified URL when clicked.
|
|
3104
|
+
*
|
|
3105
|
+
* Use this node for navigation to external URLs. Do NOT use CreativeResponse for link navigation;
|
|
3106
|
+
* CreativeResponse is for offer accept/decline actions only.
|
|
3107
|
+
* The `src` field MUST be a valid URL string.
|
|
3108
|
+
*/
|
|
1025
3109
|
export interface StaticLinkModel<Children, Predicates> {
|
|
3110
|
+
/**
|
|
3111
|
+
* Accessibility label for the link.
|
|
3112
|
+
* MUST be provided for screen reader support. Describes the link destination or purpose.
|
|
3113
|
+
*/
|
|
1026
3114
|
a11yLabel?: null | string;
|
|
3115
|
+
/**
|
|
3116
|
+
* The destination URL to open when the link is clicked.
|
|
3117
|
+
* MUST be a valid URL string (e.g. "https://example.com").
|
|
3118
|
+
*/
|
|
1027
3119
|
src: string;
|
|
3120
|
+
/** Controls how the link URL is opened (e.g. in-app browser, external browser). */
|
|
1028
3121
|
open: LinkOpenTarget;
|
|
3122
|
+
/** Visual styles for the link. Uses the LayoutStyle wrapper with conditional style transitions. */
|
|
1029
3123
|
styles?: null | LayoutStyle<StaticLinkElements, ConditionalStyleTransition<StaticLinkTransitions, Predicates>>;
|
|
3124
|
+
/**
|
|
3125
|
+
* Child nodes that form the clickable link content.
|
|
3126
|
+
* MUST contain at least one child for the link to have visible, tappable content.
|
|
3127
|
+
*/
|
|
1030
3128
|
children: Children[];
|
|
1031
3129
|
}
|
|
3130
|
+
/**
|
|
3131
|
+
* Transition styles for animating StaticLink style changes.
|
|
3132
|
+
* Defines which style properties should animate when the link's conditional styles change.
|
|
3133
|
+
*/
|
|
1032
3134
|
export interface StaticLinkTransitions {
|
|
3135
|
+
/** Transition properties for the link's own styles. */
|
|
1033
3136
|
own?: null | StaticLinkStyles;
|
|
1034
3137
|
}
|
|
3138
|
+
/**
|
|
3139
|
+
* Compares a static string input against a value. Use when you need to
|
|
3140
|
+
* evaluate a known, fixed string against a condition.
|
|
3141
|
+
*/
|
|
1035
3142
|
export interface StaticStringPredicate {
|
|
3143
|
+
/** The static string value to test. */
|
|
1036
3144
|
input: string;
|
|
3145
|
+
/** The comparison operator. Use "is" or "is-not". */
|
|
1037
3146
|
condition: EqualityWhenCondition;
|
|
3147
|
+
/** The string to compare against. */
|
|
1038
3148
|
value: string;
|
|
1039
3149
|
}
|
|
3150
|
+
/**
|
|
3151
|
+
* A non-visual trigger that updates a custom state value after a timed delay.
|
|
3152
|
+
* The timer starts automatically and sets the state after the specified delay.
|
|
3153
|
+
* Use with When nodes to show/hide content after a time period.
|
|
3154
|
+
*
|
|
3155
|
+
* MUST provide a `customStateKey` that matches the key in When predicates.
|
|
3156
|
+
* This node has no visual representation and does NOT render children.
|
|
3157
|
+
* Do NOT use this for user-initiated actions; use ButtonStateTrigger instead.
|
|
3158
|
+
*/
|
|
1040
3159
|
export interface TimerStateTriggerModel {
|
|
3160
|
+
/**
|
|
3161
|
+
* The custom state key to update when the timer fires.
|
|
3162
|
+
* MUST match the key referenced in When node predicates.
|
|
3163
|
+
*/
|
|
1041
3164
|
customStateKey: string;
|
|
3165
|
+
/**
|
|
3166
|
+
* The delay in seconds before the timer fires and sets the state.
|
|
3167
|
+
* If omitted, the timer fires immediately.
|
|
3168
|
+
*/
|
|
1042
3169
|
delay?: null | number;
|
|
3170
|
+
/**
|
|
3171
|
+
* The value to set on the custom state key when the timer fires.
|
|
3172
|
+
* If omitted, a default value is used.
|
|
3173
|
+
*/
|
|
1043
3174
|
value?: null | number;
|
|
1044
3175
|
}
|
|
3176
|
+
/**
|
|
3177
|
+
* Visual style properties for the ToggleButtonStateTrigger.
|
|
3178
|
+
* Contains the standard style categories: container layout, background colors,
|
|
3179
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
3180
|
+
*/
|
|
1045
3181
|
export interface ToggleButtonStateTriggerStyle {
|
|
3182
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
1046
3183
|
container?: null | ContainerStylingProperties;
|
|
3184
|
+
/** Background color and gradient styles. */
|
|
1047
3185
|
background?: null | BackgroundStylingProperties;
|
|
3186
|
+
/** Border width, color, and radius styles. */
|
|
1048
3187
|
border?: null | BorderStylingProperties;
|
|
3188
|
+
/** Width and height dimension styles. */
|
|
1049
3189
|
dimension?: null | DimensionStylingProperties;
|
|
3190
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
1050
3191
|
flexChild?: null | FlexChildStylingProperties;
|
|
3192
|
+
/** Padding and margin spacing styles. */
|
|
1051
3193
|
spacing?: null | SpacingStylingProperties;
|
|
1052
3194
|
}
|
|
3195
|
+
/**
|
|
3196
|
+
* Styling elements for the ToggleButtonStateTrigger.
|
|
3197
|
+
* The `own` array contains state-dependent styling blocks applied to the toggle button itself.
|
|
3198
|
+
*/
|
|
1053
3199
|
export interface ToggleButtonStateTriggerElements {
|
|
3200
|
+
/** Array of state-dependent styling blocks for the toggle button. */
|
|
1054
3201
|
own: BasicStateStylingBlock<ToggleButtonStateTriggerStyle>[];
|
|
1055
3202
|
}
|
|
3203
|
+
/**
|
|
3204
|
+
* A toggle button that cycles a custom state between values when clicked.
|
|
3205
|
+
* Each click toggles the state value, typically between 0 and 1.
|
|
3206
|
+
* Use with When nodes to conditionally show/hide content based on the toggled state.
|
|
3207
|
+
*
|
|
3208
|
+
* MUST provide a `customStateKey` that matches the key in When predicates.
|
|
3209
|
+
* Unlike ButtonStateTrigger, this does NOT require a `value` field; it toggles automatically.
|
|
3210
|
+
*/
|
|
1056
3211
|
export interface ToggleButtonStateTriggerModel<Children, Predicates> {
|
|
3212
|
+
/** Accessibility label for the toggle button. */
|
|
1057
3213
|
a11yLabel?: null | string;
|
|
3214
|
+
/** Visual styles for the toggle button. */
|
|
1058
3215
|
styles?: null | LayoutStyle<ToggleButtonStateTriggerElements, ConditionalStyleTransition<ToggleButtonStateTriggerTransitions, Predicates>>;
|
|
3216
|
+
/** Child nodes forming the toggle button content. */
|
|
1059
3217
|
children: Children[];
|
|
3218
|
+
/**
|
|
3219
|
+
* The custom state key to toggle when the button is pressed.
|
|
3220
|
+
* MUST match the key referenced in When node predicates.
|
|
3221
|
+
*/
|
|
1060
3222
|
customStateKey: string;
|
|
1061
3223
|
}
|
|
3224
|
+
/** Transition styles for animating ToggleButtonStateTrigger style changes. */
|
|
1062
3225
|
export interface ToggleButtonStateTriggerTransitions {
|
|
3226
|
+
/** Transition properties for the toggle button's own styles. */
|
|
1063
3227
|
own?: null | ToggleButtonStateTriggerStyle;
|
|
1064
3228
|
}
|
|
3229
|
+
/**
|
|
3230
|
+
* Data payload for the UpsellCreativeSent partner event.
|
|
3231
|
+
* Contains the details of the upsell offer being tracked.
|
|
3232
|
+
*/
|
|
1065
3233
|
export interface UpsellCreativeSentEventData {
|
|
3234
|
+
/** The provider's unique identifier for the offer. */
|
|
1066
3235
|
providerOfferId: string;
|
|
3236
|
+
/** The title of the upsell offer. */
|
|
1067
3237
|
title: string;
|
|
3238
|
+
/** A description of the upsell offer. */
|
|
1068
3239
|
description: string;
|
|
1069
3240
|
}
|
|
1070
|
-
|
|
3241
|
+
/**
|
|
3242
|
+
* A transition that applies only when an element enters (becomes visible).
|
|
3243
|
+
* MUST be an object with a "type" field and a "settings" field.
|
|
3244
|
+
* Currently only "FadeIn" is supported.
|
|
3245
|
+
*/
|
|
3246
|
+
export type InTransition =
|
|
3247
|
+
/**
|
|
3248
|
+
* A fade-in transition. The element gradually becomes visible over the
|
|
3249
|
+
* specified duration.
|
|
3250
|
+
*/
|
|
3251
|
+
{
|
|
1071
3252
|
type: "FadeIn";
|
|
1072
3253
|
settings: FadeInTransitionSettings;
|
|
1073
3254
|
};
|
|
1074
|
-
|
|
3255
|
+
/**
|
|
3256
|
+
* A transition that applies only when an element exits (becomes hidden).
|
|
3257
|
+
* MUST be an object with a "type" field and a "settings" field.
|
|
3258
|
+
* Currently only "FadeOut" is supported.
|
|
3259
|
+
*/
|
|
3260
|
+
export type OutTransition =
|
|
3261
|
+
/**
|
|
3262
|
+
* A fade-out transition. The element gradually becomes invisible over
|
|
3263
|
+
* the specified duration.
|
|
3264
|
+
*/
|
|
3265
|
+
{
|
|
1075
3266
|
type: "FadeOut";
|
|
1076
3267
|
settings: FadeOutTransitionSettings;
|
|
1077
3268
|
};
|
|
3269
|
+
/**
|
|
3270
|
+
* Transition configuration for when visibility changes.
|
|
3271
|
+
* Defines enter and exit animations for the When node's children.
|
|
3272
|
+
*/
|
|
1078
3273
|
export interface WhenTransition {
|
|
3274
|
+
/** Transition animations to play when children become visible (predicates become true). */
|
|
1079
3275
|
inTransition?: null | InTransition[];
|
|
3276
|
+
/** Transition animations to play when children become hidden (predicates become false). */
|
|
1080
3277
|
outTransition?: null | OutTransition[];
|
|
1081
3278
|
}
|
|
1082
|
-
|
|
3279
|
+
/**
|
|
3280
|
+
* Controls the hiding behaviour of When children.
|
|
3281
|
+
* Determines whether hidden children still occupy space in the layout.
|
|
3282
|
+
*/
|
|
3283
|
+
export type WhenHidden =
|
|
3284
|
+
/**
|
|
3285
|
+
* Children are visually hidden but remain in the layout (take up space).
|
|
3286
|
+
* Use this when you need to preserve layout dimensions even when content is hidden.
|
|
3287
|
+
*/
|
|
3288
|
+
"visually"
|
|
3289
|
+
/**
|
|
3290
|
+
* Children are fully removed from the layout.
|
|
3291
|
+
* They take up no space and do not affect sibling positioning.
|
|
3292
|
+
*/
|
|
3293
|
+
| "functionally";
|
|
3294
|
+
/**
|
|
3295
|
+
* Conditional rendering node. Shows or hides its children based on predicate conditions.
|
|
3296
|
+
* All predicates MUST evaluate to true for children to be shown (AND logic).
|
|
3297
|
+
*
|
|
3298
|
+
* Use this node to conditionally display content based on custom state, offer count, or other
|
|
3299
|
+
* predicate conditions. Do NOT nest When nodes unnecessarily; combine predicates in a single
|
|
3300
|
+
* When node instead.
|
|
3301
|
+
*/
|
|
1083
3302
|
export interface WhenModel<Children, Predicates> {
|
|
3303
|
+
/**
|
|
3304
|
+
* Array of conditions that MUST ALL be true for children to render.
|
|
3305
|
+
* Uses AND logic: if any predicate is false, children are hidden.
|
|
3306
|
+
* MUST contain at least one predicate.
|
|
3307
|
+
*/
|
|
1084
3308
|
predicates: Predicates[];
|
|
3309
|
+
/** Child nodes to conditionally show or hide based on the predicates. */
|
|
1085
3310
|
children: Children[];
|
|
3311
|
+
/**
|
|
3312
|
+
* Optional transition animation configuration for when visibility changes.
|
|
3313
|
+
* Controls how children animate in and out when predicates change.
|
|
3314
|
+
*/
|
|
1086
3315
|
transition?: null | WhenTransition;
|
|
3316
|
+
/**
|
|
3317
|
+
* Controls how hidden children are treated in the layout.
|
|
3318
|
+
* If omitted, defaults to functionally hiding (fully removed from layout).
|
|
3319
|
+
*/
|
|
1087
3320
|
hide?: null | WhenHidden;
|
|
1088
3321
|
}
|
|
3322
|
+
/** Styling properties for ZStack container layout. ZStack layers children on top of each other. */
|
|
1089
3323
|
export interface ZStackContainerStylingProperties {
|
|
3324
|
+
/** Controls horizontal positioning of children within the ZStack. */
|
|
1090
3325
|
justifyContent?: null | FlexJustification;
|
|
3326
|
+
/** Controls vertical positioning of children within the ZStack. */
|
|
1091
3327
|
alignItems?: null | FlexAlignment;
|
|
3328
|
+
/** Applies a box shadow effect around the container. */
|
|
1092
3329
|
shadow?: null | Shadow;
|
|
3330
|
+
/** Controls whether content overflowing the container bounds is visible or hidden. */
|
|
1093
3331
|
overflow?: null | Overflow;
|
|
3332
|
+
/** Applies a Gaussian blur effect. Value is the blur radius in platform units. */
|
|
1094
3333
|
blur?: null | number;
|
|
3334
|
+
/** The opacity of the container, from 0.0 (fully transparent) to 1.0 (fully opaque). */
|
|
1095
3335
|
opacity?: null | number;
|
|
1096
3336
|
}
|
|
3337
|
+
/**
|
|
3338
|
+
* Available style categories for the ZStack element. Each optional field enables a specific
|
|
3339
|
+
* category of visual styling. Omit a field to leave that category unstyled.
|
|
3340
|
+
*/
|
|
1097
3341
|
export interface ZStackStyle {
|
|
3342
|
+
/**
|
|
3343
|
+
* Layout properties for the ZStack container (alignment of stacked children).
|
|
3344
|
+
* MUST be used to control how children are positioned within the stack.
|
|
3345
|
+
*/
|
|
1098
3346
|
container?: null | ZStackContainerStylingProperties;
|
|
3347
|
+
/**
|
|
3348
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
3349
|
+
* behind the stacked content.
|
|
3350
|
+
*/
|
|
1099
3351
|
background?: null | BackgroundStylingProperties;
|
|
3352
|
+
/**
|
|
3353
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
3354
|
+
* rounded corners to the ZStack.
|
|
3355
|
+
*/
|
|
1100
3356
|
border?: null | BorderStylingProperties;
|
|
3357
|
+
/**
|
|
3358
|
+
* Width, height and rotation properties. Use to explicitly size the ZStack or apply
|
|
3359
|
+
* rotation transforms. Do NOT set width/height if the ZStack should size to its content.
|
|
3360
|
+
*/
|
|
1101
3361
|
dimension?: null | DimensionStylingProperties;
|
|
3362
|
+
/**
|
|
3363
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
3364
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
3365
|
+
*/
|
|
1102
3366
|
flexChild?: null | FlexChildStylingProperties;
|
|
3367
|
+
/** Padding, margin and offset properties. Use to add spacing inside or outside the ZStack. */
|
|
1103
3368
|
spacing?: null | SpacingStylingProperties;
|
|
1104
3369
|
}
|
|
3370
|
+
/**
|
|
3371
|
+
* Styleable elements of the ZStack node. The ZStack has a single styleable element: its own
|
|
3372
|
+
* container.
|
|
3373
|
+
*/
|
|
1105
3374
|
export interface ZStackElements {
|
|
3375
|
+
/**
|
|
3376
|
+
* Style blocks for the ZStack container itself. The array represents breakpoint-specific
|
|
3377
|
+
* styles: first item is the default (no breakpoint), subsequent items correspond to
|
|
3378
|
+
* breakpoints in ascending order. MUST contain at least one item for the default style.
|
|
3379
|
+
*/
|
|
1106
3380
|
own: BasicStateStylingBlock<ZStackStyle>[];
|
|
1107
3381
|
}
|
|
3382
|
+
/**
|
|
3383
|
+
* A layered container that stacks children on top of each other along the z-axis. Later
|
|
3384
|
+
* children render on top of earlier ones. Use for overlapping content such as badges on
|
|
3385
|
+
* images, text overlays, or layered decorative elements. Do NOT use ZStack for simple
|
|
3386
|
+
* sequential layouts; use Row or Column instead.
|
|
3387
|
+
*/
|
|
1108
3388
|
export interface ZStackModel<Children, Predicates> {
|
|
3389
|
+
/**
|
|
3390
|
+
* Accessibility label for screen readers. Omit if the ZStack is purely decorative or its
|
|
3391
|
+
* children already provide sufficient accessible labels. MUST be set when the ZStack
|
|
3392
|
+
* conveys meaning not available from its children alone.
|
|
3393
|
+
*/
|
|
1109
3394
|
a11yLabel?: null | string;
|
|
3395
|
+
/**
|
|
3396
|
+
* Visual styles for this ZStack. See styling documentation for the structure. Omit to use
|
|
3397
|
+
* default (unstyled) rendering.
|
|
3398
|
+
*/
|
|
1110
3399
|
styles?: null | LayoutStyle<ZStackElements, ConditionalStyleTransition<ZStackTransitions, Predicates>>;
|
|
3400
|
+
/**
|
|
3401
|
+
* Child nodes stacked on top of each other within this ZStack. MUST contain at least one
|
|
3402
|
+
* child. Children are rendered in source order, with later children appearing on top of
|
|
3403
|
+
* earlier ones.
|
|
3404
|
+
*/
|
|
1111
3405
|
children: Children[];
|
|
1112
3406
|
}
|
|
3407
|
+
/** Transition styles for the ZStack node. Use to animate style changes smoothly. */
|
|
1113
3408
|
export interface ZStackTransitions {
|
|
3409
|
+
/**
|
|
3410
|
+
* Transition properties for the ZStack container. Specifies which style properties
|
|
3411
|
+
* should animate and their duration/easing when values change.
|
|
3412
|
+
*/
|
|
1114
3413
|
own?: null | ZStackStyle;
|
|
1115
3414
|
}
|
|
3415
|
+
/**
|
|
3416
|
+
* Root node types for a catalog stacked collection item template. Must be a Row or Column
|
|
3417
|
+
* that contains CatalogStackedCollectionTemplateNodeChildren.
|
|
3418
|
+
*/
|
|
1116
3419
|
export type CatalogStackedCollectionTemplateNode = {
|
|
1117
3420
|
type: "Row";
|
|
1118
3421
|
node: RowModel<CatalogStackedCollectionTemplateNodeChildren, LayoutVariantWhenPredicate>;
|
|
@@ -1120,6 +3423,11 @@ export type CatalogStackedCollectionTemplateNode = {
|
|
|
1120
3423
|
type: "Column";
|
|
1121
3424
|
node: ColumnModel<CatalogStackedCollectionTemplateNodeChildren, LayoutVariantWhenPredicate>;
|
|
1122
3425
|
};
|
|
3426
|
+
/**
|
|
3427
|
+
* Child node types allowed inside a catalog stacked collection template row or column.
|
|
3428
|
+
* Includes layout containers, text, images, icons, data-bound content, interactive triggers,
|
|
3429
|
+
* catalog response buttons, radio groups, and quantity counters.
|
|
3430
|
+
*/
|
|
1123
3431
|
export type CatalogStackedCollectionTemplateNodeChildren = {
|
|
1124
3432
|
type: "Row";
|
|
1125
3433
|
node: RowModel<CatalogStackedCollectionTemplateNodeChildren, LayoutVariantWhenPredicate>;
|
|
@@ -1184,8 +3492,28 @@ export type CatalogStackedCollectionTemplateNodeChildren = {
|
|
|
1184
3492
|
type: "InlineContainer";
|
|
1185
3493
|
node: InlineContainerModel<LayoutVariantInlineChildren, LayoutVariantWhenPredicate>;
|
|
1186
3494
|
};
|
|
1187
|
-
|
|
1188
|
-
|
|
3495
|
+
/**
|
|
3496
|
+
* Fit behaviour options for height.
|
|
3497
|
+
* Used as the 'value' inside a {"type": "fit", "value": ...} height specification.
|
|
3498
|
+
*/
|
|
3499
|
+
export type DimensionHeightFitValue =
|
|
3500
|
+
/** Shrinks to fit the content height. */
|
|
3501
|
+
"wrap-content"
|
|
3502
|
+
/** Expands to fill the available height. */
|
|
3503
|
+
| "fit-height";
|
|
3504
|
+
/**
|
|
3505
|
+
* Fit behaviour options for width.
|
|
3506
|
+
* Used as the 'value' inside a {"type": "fit", "value": ...} width specification.
|
|
3507
|
+
*/
|
|
3508
|
+
export type DimensionWidthFitValue =
|
|
3509
|
+
/** Shrinks to fit the content width. */
|
|
3510
|
+
"wrap-content"
|
|
3511
|
+
/** Expands to fill the available width. */
|
|
3512
|
+
| "fit-width";
|
|
3513
|
+
/**
|
|
3514
|
+
* Node types valid as inline children in the combined SDK schema. Includes text, links,
|
|
3515
|
+
* and interactive inline elements such as buttons and toggles.
|
|
3516
|
+
*/
|
|
1189
3517
|
export type InlineChildren = {
|
|
1190
3518
|
type: "BasicText";
|
|
1191
3519
|
node: InlineBasicTextModel<WhenPredicate>;
|
|
@@ -1199,7 +3527,18 @@ export type InlineChildren = {
|
|
|
1199
3527
|
type: "ToggleButtonStateTrigger";
|
|
1200
3528
|
node: InlineToggleButtonStateTriggerModel<NonInteractableInlineChildren, WhenPredicate>;
|
|
1201
3529
|
};
|
|
1202
|
-
|
|
3530
|
+
/** Controls how the layout is displayed on the page. */
|
|
3531
|
+
export type LayoutDisplayPreset =
|
|
3532
|
+
/** Layout covers the full viewport. */
|
|
3533
|
+
"FULLSCREEN"
|
|
3534
|
+
/** Layout is embedded inline within the page content. */
|
|
3535
|
+
| "EMBEDDED"
|
|
3536
|
+
/** Layout is attached/anchored to a specific position. */
|
|
3537
|
+
| "ATTACHED";
|
|
3538
|
+
/**
|
|
3539
|
+
* All node types supported in the web platform schema. This is the union type used by SDKs.
|
|
3540
|
+
* Layouts are authored using OuterLayoutSchemaModel or LayoutVariantSchemaModel instead.
|
|
3541
|
+
*/
|
|
1203
3542
|
export type LayoutSchemaModel = {
|
|
1204
3543
|
type: "Row";
|
|
1205
3544
|
node: RowModel<LayoutSchemaModel, WhenPredicate>;
|
|
@@ -1309,6 +3648,11 @@ export type LayoutSchemaModel = {
|
|
|
1309
3648
|
type: "InlineContainer";
|
|
1310
3649
|
node: InlineContainerModel<InlineChildren, WhenPredicate>;
|
|
1311
3650
|
};
|
|
3651
|
+
/**
|
|
3652
|
+
* Recursive child node types allowed within layout variant containers. Includes all layout
|
|
3653
|
+
* variant nodes such as layout, text, images, data-bound content, interactive triggers,
|
|
3654
|
+
* catalog components, and escape hatches.
|
|
3655
|
+
*/
|
|
1312
3656
|
export type LayoutVariantChildren = {
|
|
1313
3657
|
type: "Row";
|
|
1314
3658
|
node: RowModel<LayoutVariantChildren, LayoutVariantWhenPredicate>;
|
|
@@ -1379,7 +3723,27 @@ export type LayoutVariantChildren = {
|
|
|
1379
3723
|
type: "PartnerEventButtonTrigger";
|
|
1380
3724
|
node: PartnerEventButtonTriggerModel<LayoutVariantNonInteractableChildren, LayoutVariantWhenPredicate>;
|
|
1381
3725
|
};
|
|
1382
|
-
|
|
3726
|
+
/**
|
|
3727
|
+
* Keys for accessing application domain state in the layout variant (offer
|
|
3728
|
+
* format) context. Serialized as camelCase strings. These are the domain
|
|
3729
|
+
* state keys available when defining conditional rendering within a layout
|
|
3730
|
+
* variant.
|
|
3731
|
+
*/
|
|
3732
|
+
export type LayoutVariantDomainStateKey =
|
|
3733
|
+
/**
|
|
3734
|
+
* Indicates whether the current offer has been completed by the user.
|
|
3735
|
+
* Use to show post-completion content or hide offer-specific elements.
|
|
3736
|
+
*/
|
|
3737
|
+
"offerComplete"
|
|
3738
|
+
/**
|
|
3739
|
+
* Indicates the current checkout state. Use to adapt the layout based
|
|
3740
|
+
* on where the user is in the checkout flow.
|
|
3741
|
+
*/
|
|
3742
|
+
| "checkout";
|
|
3743
|
+
/**
|
|
3744
|
+
* Node types valid as inline children within layout variants (offer formats). Includes text,
|
|
3745
|
+
* links, partner event triggers, and interactive inline elements scoped to layout variant predicates.
|
|
3746
|
+
*/
|
|
1383
3747
|
export type LayoutVariantInlineChildren = {
|
|
1384
3748
|
type: "BasicText";
|
|
1385
3749
|
node: InlineBasicTextModel<LayoutVariantWhenPredicate>;
|
|
@@ -1393,6 +3757,11 @@ export type LayoutVariantInlineChildren = {
|
|
|
1393
3757
|
type: "ToggleButtonStateTrigger";
|
|
1394
3758
|
node: InlineToggleButtonStateTriggerModel<LayoutVariantNonInteractableInlineChildren, LayoutVariantWhenPredicate>;
|
|
1395
3759
|
};
|
|
3760
|
+
/**
|
|
3761
|
+
* Non-interactive child node types within layout variants. Only allows structural containers,
|
|
3762
|
+
* static/data images, basic text, icons, conditional nodes, and escape hatches. Used as
|
|
3763
|
+
* children of interactive elements like buttons and links in layout variants.
|
|
3764
|
+
*/
|
|
1396
3765
|
export type LayoutVariantNonInteractableChildren = {
|
|
1397
3766
|
type: "Row";
|
|
1398
3767
|
node: RowModel<LayoutVariantNonInteractableChildren, LayoutVariantWhenPredicate>;
|
|
@@ -1430,10 +3799,18 @@ export type LayoutVariantNonInteractableChildren = {
|
|
|
1430
3799
|
type: "InlineContainer";
|
|
1431
3800
|
node: InlineContainerModel<LayoutVariantInlineChildren, LayoutVariantWhenPredicate>;
|
|
1432
3801
|
};
|
|
3802
|
+
/**
|
|
3803
|
+
* Non-interactive inline child nodes within layout variants. Only allows basic text
|
|
3804
|
+
* scoped to layout variant predicates.
|
|
3805
|
+
*/
|
|
1433
3806
|
export type LayoutVariantNonInteractableInlineChildren = {
|
|
1434
3807
|
type: "BasicText";
|
|
1435
3808
|
node: InlineBasicTextModel<LayoutVariantWhenPredicate>;
|
|
1436
3809
|
};
|
|
3810
|
+
/**
|
|
3811
|
+
* Node types valid for use in layout variants (offer formats). Layout variants contain the
|
|
3812
|
+
* offer-specific creative content including images, text, response buttons, and catalog components.
|
|
3813
|
+
*/
|
|
1437
3814
|
export type LayoutVariantSchemaModel = {
|
|
1438
3815
|
type: "Row";
|
|
1439
3816
|
node: RowModel<LayoutVariantChildren, LayoutVariantWhenPredicate>;
|
|
@@ -1504,37 +3881,68 @@ export type LayoutVariantSchemaModel = {
|
|
|
1504
3881
|
type: "PartnerEventButtonTrigger";
|
|
1505
3882
|
node: PartnerEventButtonTriggerModel<LayoutVariantNonInteractableChildren, LayoutVariantWhenPredicate>;
|
|
1506
3883
|
};
|
|
1507
|
-
|
|
3884
|
+
/**
|
|
3885
|
+
* Predicate types available in the layout variant (offer format) context.
|
|
3886
|
+
* This is a subset of predicates that are valid when defining conditional
|
|
3887
|
+
* rendering within a layout variant. Each predicate MUST include a "type"
|
|
3888
|
+
* field and a "predicate" field.
|
|
3889
|
+
*/
|
|
3890
|
+
export type LayoutVariantWhenPredicate =
|
|
3891
|
+
/** Tests the viewport width against a breakpoint value. */
|
|
3892
|
+
{
|
|
1508
3893
|
type: "Breakpoint";
|
|
1509
3894
|
predicate: BreakpointPredicate;
|
|
1510
|
-
}
|
|
3895
|
+
}
|
|
3896
|
+
/** Tests the position index of the current item in a collection. */
|
|
3897
|
+
| {
|
|
1511
3898
|
type: "Position";
|
|
1512
3899
|
predicate: PositionPredicate;
|
|
1513
|
-
}
|
|
3900
|
+
}
|
|
3901
|
+
/** Tests which offer index is currently visible. */
|
|
3902
|
+
| {
|
|
1514
3903
|
type: "Progression";
|
|
1515
3904
|
predicate: ProgressionPredicate;
|
|
1516
|
-
}
|
|
3905
|
+
}
|
|
3906
|
+
/** Tests whether dark mode is active. */
|
|
3907
|
+
| {
|
|
1517
3908
|
type: "DarkMode";
|
|
1518
3909
|
predicate: DarkModePredicate;
|
|
1519
|
-
}
|
|
3910
|
+
}
|
|
3911
|
+
/** Tests whether a creative data attribute exists. */
|
|
3912
|
+
| {
|
|
1520
3913
|
type: "CreativeCopy";
|
|
1521
3914
|
predicate: CreativeCopyPredicate;
|
|
1522
|
-
}
|
|
3915
|
+
}
|
|
3916
|
+
/** Evaluates a hardcoded boolean value. */
|
|
3917
|
+
| {
|
|
1523
3918
|
type: "StaticBoolean";
|
|
1524
3919
|
predicate: StaticBooleanPredicate;
|
|
1525
|
-
}
|
|
3920
|
+
}
|
|
3921
|
+
/** Tests a custom state value set by state trigger nodes. */
|
|
3922
|
+
| {
|
|
1526
3923
|
type: "CustomState";
|
|
1527
3924
|
predicate: CustomStatePredicate;
|
|
1528
|
-
}
|
|
3925
|
+
}
|
|
3926
|
+
/** Tests application domain state in the layout variant context. */
|
|
3927
|
+
| {
|
|
1529
3928
|
type: "DomainState";
|
|
1530
3929
|
predicate: DomainStatePredicate<LayoutVariantDomainStateKey>;
|
|
1531
|
-
}
|
|
3930
|
+
}
|
|
3931
|
+
/** Compares a static string input against a value. */
|
|
3932
|
+
| {
|
|
1532
3933
|
type: "StaticString";
|
|
1533
3934
|
predicate: StaticStringPredicate;
|
|
1534
|
-
}
|
|
3935
|
+
}
|
|
3936
|
+
/** Tests placeholder/input values. */
|
|
3937
|
+
| {
|
|
1535
3938
|
type: "Placeholder";
|
|
1536
3939
|
predicate: PlaceholderPredicate;
|
|
1537
3940
|
};
|
|
3941
|
+
/**
|
|
3942
|
+
* Child node types allowed inside modal containers (Overlay, BottomSheet) in the combined
|
|
3943
|
+
* SDK schema. Includes structural, presentational, distribution, and interactive nodes
|
|
3944
|
+
* but excludes nested modals.
|
|
3945
|
+
*/
|
|
1538
3946
|
export type ModalChildren = {
|
|
1539
3947
|
type: "Row";
|
|
1540
3948
|
node: RowModel<ModalChildren, WhenPredicate>;
|
|
@@ -1611,6 +4019,11 @@ export type ModalChildren = {
|
|
|
1611
4019
|
type: "InlineContainer";
|
|
1612
4020
|
node: InlineContainerModel<InlineChildren, WhenPredicate>;
|
|
1613
4021
|
};
|
|
4022
|
+
/**
|
|
4023
|
+
* Child node types allowed inside modal containers (Overlay, BottomSheet) within outer
|
|
4024
|
+
* layouts. Includes structural, presentational, distribution, and interactive nodes scoped
|
|
4025
|
+
* to outer layout predicates, but excludes nested modals.
|
|
4026
|
+
*/
|
|
1614
4027
|
export type ModalOuterChildren = {
|
|
1615
4028
|
type: "Row";
|
|
1616
4029
|
node: RowModel<ModalOuterChildren, OuterLayoutWhenPredicate>;
|
|
@@ -1687,6 +4100,11 @@ export type ModalOuterChildren = {
|
|
|
1687
4100
|
type: "InlineContainer";
|
|
1688
4101
|
node: InlineContainerModel<OuterLayoutInlineChildren, OuterLayoutWhenPredicate>;
|
|
1689
4102
|
};
|
|
4103
|
+
/**
|
|
4104
|
+
* Non-interactive child node types in the combined SDK schema. Only allows structural
|
|
4105
|
+
* containers, static/data images, basic text, icons, conditional nodes, and escape hatches.
|
|
4106
|
+
* Used as children of interactive elements like buttons and links.
|
|
4107
|
+
*/
|
|
1690
4108
|
export type NonInteractableChildren = {
|
|
1691
4109
|
type: "Row";
|
|
1692
4110
|
node: RowModel<NonInteractableChildren, WhenPredicate>;
|
|
@@ -1724,10 +4142,15 @@ export type NonInteractableChildren = {
|
|
|
1724
4142
|
type: "InlineContainer";
|
|
1725
4143
|
node: InlineContainerModel<InlineChildren, WhenPredicate>;
|
|
1726
4144
|
};
|
|
4145
|
+
/** Non-interactive inline child nodes in the combined SDK schema. Only allows basic text. */
|
|
1727
4146
|
export type NonInteractableInlineChildren = {
|
|
1728
4147
|
type: "BasicText";
|
|
1729
4148
|
node: InlineBasicTextModel<WhenPredicate>;
|
|
1730
4149
|
};
|
|
4150
|
+
/**
|
|
4151
|
+
* Recursive child node types allowed within outer layout containers. Includes structural,
|
|
4152
|
+
* distribution, navigation, and presentational nodes scoped to outer layout predicates.
|
|
4153
|
+
*/
|
|
1731
4154
|
export type OuterLayoutChildren = {
|
|
1732
4155
|
type: "Row";
|
|
1733
4156
|
node: RowModel<OuterLayoutChildren, OuterLayoutWhenPredicate>;
|
|
@@ -1804,6 +4227,10 @@ export type OuterLayoutChildren = {
|
|
|
1804
4227
|
type: "InlineContainer";
|
|
1805
4228
|
node: InlineContainerModel<OuterLayoutInlineChildren, OuterLayoutWhenPredicate>;
|
|
1806
4229
|
};
|
|
4230
|
+
/**
|
|
4231
|
+
* Node types valid as inline children within outer layouts. Includes text, links,
|
|
4232
|
+
* and interactive inline elements scoped to outer layout predicates.
|
|
4233
|
+
*/
|
|
1807
4234
|
export type OuterLayoutInlineChildren = {
|
|
1808
4235
|
type: "BasicText";
|
|
1809
4236
|
node: InlineBasicTextModel<OuterLayoutWhenPredicate>;
|
|
@@ -1814,6 +4241,11 @@ export type OuterLayoutInlineChildren = {
|
|
|
1814
4241
|
type: "ToggleButtonStateTrigger";
|
|
1815
4242
|
node: InlineToggleButtonStateTriggerModel<OuterLayoutNonInteractableInlineChildren, OuterLayoutWhenPredicate>;
|
|
1816
4243
|
};
|
|
4244
|
+
/**
|
|
4245
|
+
* Non-interactive child node types within outer layouts. Only allows structural containers,
|
|
4246
|
+
* static images, basic text, icons, conditional nodes, and escape hatches. Used as children
|
|
4247
|
+
* of interactive elements like buttons and links in outer layouts.
|
|
4248
|
+
*/
|
|
1817
4249
|
export type OuterLayoutNonInteractableChildren = {
|
|
1818
4250
|
type: "Row";
|
|
1819
4251
|
node: RowModel<OuterLayoutNonInteractableChildren, OuterLayoutWhenPredicate>;
|
|
@@ -1845,10 +4277,19 @@ export type OuterLayoutNonInteractableChildren = {
|
|
|
1845
4277
|
type: "InlineContainer";
|
|
1846
4278
|
node: InlineContainerModel<OuterLayoutInlineChildren, OuterLayoutWhenPredicate>;
|
|
1847
4279
|
};
|
|
4280
|
+
/**
|
|
4281
|
+
* Non-interactive inline child nodes within outer layouts. Only allows basic text
|
|
4282
|
+
* scoped to outer layout predicates.
|
|
4283
|
+
*/
|
|
1848
4284
|
export type OuterLayoutNonInteractableInlineChildren = {
|
|
1849
4285
|
type: "BasicText";
|
|
1850
4286
|
node: InlineBasicTextModel<OuterLayoutWhenPredicate>;
|
|
1851
4287
|
};
|
|
4288
|
+
/**
|
|
4289
|
+
* Node types valid for use in outer layouts. Outer layouts define the frame and offer
|
|
4290
|
+
* distribution but do not contain offer-specific content. They include structural containers,
|
|
4291
|
+
* distribution nodes, navigation controls, and close buttons.
|
|
4292
|
+
*/
|
|
1852
4293
|
export type OuterLayoutSchemaModel = {
|
|
1853
4294
|
type: "Row";
|
|
1854
4295
|
node: RowModel<OuterLayoutChildren, OuterLayoutWhenPredicate>;
|
|
@@ -1931,38 +4372,73 @@ export type OuterLayoutSchemaModel = {
|
|
|
1931
4372
|
type: "InlineContainer";
|
|
1932
4373
|
node: InlineContainerModel<OuterLayoutInlineChildren, OuterLayoutWhenPredicate>;
|
|
1933
4374
|
};
|
|
1934
|
-
|
|
4375
|
+
/**
|
|
4376
|
+
* Predicate types available in the outer layout context. This is a more
|
|
4377
|
+
* restricted subset of predicates for use in the outer layout wrapper.
|
|
4378
|
+
* Does NOT include Position, CreativeCopy, or DomainState predicates.
|
|
4379
|
+
* Each predicate MUST include a "type" field and a "predicate" field.
|
|
4380
|
+
*/
|
|
4381
|
+
export type OuterLayoutWhenPredicate =
|
|
4382
|
+
/** Tests the viewport width against a breakpoint value. */
|
|
4383
|
+
{
|
|
1935
4384
|
type: "Breakpoint";
|
|
1936
4385
|
predicate: BreakpointPredicate;
|
|
1937
|
-
}
|
|
4386
|
+
}
|
|
4387
|
+
/** Tests which offer index is currently visible. */
|
|
4388
|
+
| {
|
|
1938
4389
|
type: "Progression";
|
|
1939
4390
|
predicate: ProgressionPredicate;
|
|
1940
|
-
}
|
|
4391
|
+
}
|
|
4392
|
+
/** Tests whether dark mode is active. */
|
|
4393
|
+
| {
|
|
1941
4394
|
type: "DarkMode";
|
|
1942
4395
|
predicate: DarkModePredicate;
|
|
1943
|
-
}
|
|
4396
|
+
}
|
|
4397
|
+
/** Evaluates a hardcoded boolean value. */
|
|
4398
|
+
| {
|
|
1944
4399
|
type: "StaticBoolean";
|
|
1945
4400
|
predicate: StaticBooleanPredicate;
|
|
1946
|
-
}
|
|
4401
|
+
}
|
|
4402
|
+
/** Tests a custom state value set by state trigger nodes. */
|
|
4403
|
+
| {
|
|
1947
4404
|
type: "CustomState";
|
|
1948
4405
|
predicate: CustomStatePredicate;
|
|
1949
|
-
}
|
|
4406
|
+
}
|
|
4407
|
+
/** Compares a static string input against a value. */
|
|
4408
|
+
| {
|
|
1950
4409
|
type: "StaticString";
|
|
1951
4410
|
predicate: StaticStringPredicate;
|
|
1952
|
-
}
|
|
4411
|
+
}
|
|
4412
|
+
/** Tests placeholder/input values. */
|
|
4413
|
+
| {
|
|
1953
4414
|
type: "Placeholder";
|
|
1954
4415
|
predicate: PlaceholderPredicate;
|
|
1955
4416
|
};
|
|
1956
|
-
|
|
4417
|
+
/**
|
|
4418
|
+
* Predicate for testing placeholder/input values. Use to conditionally
|
|
4419
|
+
* render content based on user input in text fields or numeric inputs.
|
|
4420
|
+
* MUST specify a "type" to indicate which kind of placeholder test to perform.
|
|
4421
|
+
*/
|
|
4422
|
+
export type PlaceholderPredicate =
|
|
4423
|
+
/** Tests the text value of a placeholder using string comparison. */
|
|
4424
|
+
{
|
|
1957
4425
|
type: "TextValue";
|
|
1958
4426
|
content: DynamicStringPredicate;
|
|
1959
|
-
}
|
|
4427
|
+
}
|
|
4428
|
+
/** Tests the length of a placeholder text using numeric comparison. */
|
|
4429
|
+
| {
|
|
1960
4430
|
type: "TextLength";
|
|
1961
4431
|
content: DynamicIntegerPredicate;
|
|
1962
|
-
}
|
|
4432
|
+
}
|
|
4433
|
+
/** Tests a numeric placeholder value using numeric comparison. */
|
|
4434
|
+
| {
|
|
1963
4435
|
type: "Numeric";
|
|
1964
4436
|
content: DynamicIntegerPredicate;
|
|
1965
4437
|
};
|
|
4438
|
+
/**
|
|
4439
|
+
* Child node types allowed inside scrollable containers (ScrollableColumn, ScrollableRow)
|
|
4440
|
+
* in the combined SDK schema. Excludes overlay and bottom sheet nodes that cannot scroll.
|
|
4441
|
+
*/
|
|
1966
4442
|
export type ScrollableChildren = {
|
|
1967
4443
|
type: "Row";
|
|
1968
4444
|
node: RowModel<ScrollableChildren, WhenPredicate>;
|
|
@@ -2051,6 +4527,10 @@ export type ScrollableChildren = {
|
|
|
2051
4527
|
type: "InlineContainer";
|
|
2052
4528
|
node: InlineContainerModel<InlineChildren, WhenPredicate>;
|
|
2053
4529
|
};
|
|
4530
|
+
/**
|
|
4531
|
+
* Child node types allowed inside scrollable containers within layout variants. Excludes
|
|
4532
|
+
* overlay and bottom sheet nodes, scoped to layout variant predicates. Includes catalog components.
|
|
4533
|
+
*/
|
|
2054
4534
|
export type ScrollableLayoutVariantChildren = {
|
|
2055
4535
|
type: "Row";
|
|
2056
4536
|
node: RowModel<ScrollableLayoutVariantChildren, LayoutVariantWhenPredicate>;
|
|
@@ -2115,6 +4595,10 @@ export type ScrollableLayoutVariantChildren = {
|
|
|
2115
4595
|
type: "PartnerEventButtonTrigger";
|
|
2116
4596
|
node: PartnerEventButtonTriggerModel<LayoutVariantNonInteractableChildren, LayoutVariantWhenPredicate>;
|
|
2117
4597
|
};
|
|
4598
|
+
/**
|
|
4599
|
+
* Child node types allowed inside scrollable containers within outer layouts. Excludes overlay
|
|
4600
|
+
* and bottom sheet nodes, scoped to outer layout predicates.
|
|
4601
|
+
*/
|
|
2118
4602
|
export type ScrollableOuterLayoutChildren = {
|
|
2119
4603
|
type: "Row";
|
|
2120
4604
|
node: RowModel<ScrollableOuterLayoutChildren, OuterLayoutWhenPredicate>;
|
|
@@ -2185,34 +4669,60 @@ export type ScrollableOuterLayoutChildren = {
|
|
|
2185
4669
|
type: "InlineContainer";
|
|
2186
4670
|
node: InlineContainerModel<OuterLayoutInlineChildren, OuterLayoutWhenPredicate>;
|
|
2187
4671
|
};
|
|
2188
|
-
|
|
4672
|
+
/**
|
|
4673
|
+
* All available predicate types for conditional rendering in the full layout
|
|
4674
|
+
* schema. Used with the When node to conditionally show or hide children.
|
|
4675
|
+
* Each predicate MUST include a "type" field to identify the predicate kind
|
|
4676
|
+
* and a "predicate" field containing the predicate configuration.
|
|
4677
|
+
*/
|
|
4678
|
+
export type WhenPredicate =
|
|
4679
|
+
/** Tests the viewport width against a breakpoint value. */
|
|
4680
|
+
{
|
|
2189
4681
|
type: "Breakpoint";
|
|
2190
4682
|
predicate: BreakpointPredicate;
|
|
2191
|
-
}
|
|
4683
|
+
}
|
|
4684
|
+
/** Tests the position index of the current item in a collection. */
|
|
4685
|
+
| {
|
|
2192
4686
|
type: "Position";
|
|
2193
4687
|
predicate: PositionPredicate;
|
|
2194
|
-
}
|
|
4688
|
+
}
|
|
4689
|
+
/** Tests which offer index is currently visible. */
|
|
4690
|
+
| {
|
|
2195
4691
|
type: "Progression";
|
|
2196
4692
|
predicate: ProgressionPredicate;
|
|
2197
|
-
}
|
|
4693
|
+
}
|
|
4694
|
+
/** Tests whether dark mode is active. */
|
|
4695
|
+
| {
|
|
2198
4696
|
type: "DarkMode";
|
|
2199
4697
|
predicate: DarkModePredicate;
|
|
2200
|
-
}
|
|
4698
|
+
}
|
|
4699
|
+
/** Tests whether a creative data attribute exists. */
|
|
4700
|
+
| {
|
|
2201
4701
|
type: "CreativeCopy";
|
|
2202
4702
|
predicate: CreativeCopyPredicate;
|
|
2203
|
-
}
|
|
4703
|
+
}
|
|
4704
|
+
/** Evaluates a hardcoded boolean value. */
|
|
4705
|
+
| {
|
|
2204
4706
|
type: "StaticBoolean";
|
|
2205
4707
|
predicate: StaticBooleanPredicate;
|
|
2206
|
-
}
|
|
4708
|
+
}
|
|
4709
|
+
/** Tests a custom state value set by state trigger nodes. */
|
|
4710
|
+
| {
|
|
2207
4711
|
type: "CustomState";
|
|
2208
4712
|
predicate: CustomStatePredicate;
|
|
2209
|
-
}
|
|
4713
|
+
}
|
|
4714
|
+
/** Tests application domain state. */
|
|
4715
|
+
| {
|
|
2210
4716
|
type: "DomainState";
|
|
2211
4717
|
predicate: LayoutSchemaDomainStatePredicate;
|
|
2212
|
-
}
|
|
4718
|
+
}
|
|
4719
|
+
/** Compares a static string input against a value. */
|
|
4720
|
+
| {
|
|
2213
4721
|
type: "StaticString";
|
|
2214
4722
|
predicate: StaticStringPredicate;
|
|
2215
|
-
}
|
|
4723
|
+
}
|
|
4724
|
+
/** Tests placeholder/input values. */
|
|
4725
|
+
| {
|
|
2216
4726
|
type: "Placeholder";
|
|
2217
4727
|
predicate: PlaceholderPredicate;
|
|
2218
4728
|
};
|