@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,790 +1,2423 @@
|
|
|
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
|
+
/**
|
|
386
|
+
* Condition operators for numeric/orderable comparisons. Use these to compare
|
|
387
|
+
* values that have a natural ordering (numbers, positions, breakpoints).
|
|
388
|
+
* Serialized as kebab-case strings: "is", "is-not", "is-below", "is-above".
|
|
389
|
+
*/
|
|
390
|
+
export type OrderableWhenCondition =
|
|
391
|
+
/** True when the value equals the specified value. */
|
|
392
|
+
"is"
|
|
393
|
+
/** True when the value does not equal the specified value. */
|
|
394
|
+
| "is-not"
|
|
395
|
+
/** True when the value is less than the specified value. */
|
|
396
|
+
| "is-below"
|
|
397
|
+
/** True when the value is greater than the specified value. */
|
|
398
|
+
| "is-above";
|
|
399
|
+
/**
|
|
400
|
+
* Tests the viewport width against a breakpoint value. Use for
|
|
401
|
+
* responsive layouts that adapt to different screen sizes. The value MUST
|
|
402
|
+
* be a string representation of a number in platform units.
|
|
403
|
+
*/
|
|
121
404
|
export interface BreakpointPredicate {
|
|
405
|
+
/** The comparison operator. Use "is-above" or "is-below" for responsive breakpoints. */
|
|
122
406
|
condition: OrderableWhenCondition;
|
|
407
|
+
/**
|
|
408
|
+
* The breakpoint width in platform units to compare against. MUST be a string
|
|
409
|
+
* representation of a number, e.g. "768".
|
|
410
|
+
*/
|
|
123
411
|
value: string;
|
|
124
412
|
}
|
|
413
|
+
/** A styling block with only a default state. Used for non-interactive elements. */
|
|
125
414
|
export interface StatelessStylingBlock<StyleProperties> {
|
|
415
|
+
/** The styles to apply. Always required. */
|
|
126
416
|
default: StyleProperties;
|
|
127
417
|
}
|
|
128
|
-
|
|
418
|
+
/** Main-axis justification options for flex containers. */
|
|
419
|
+
export type FlexJustification =
|
|
420
|
+
/** Centers items along the main axis. */
|
|
421
|
+
"center"
|
|
422
|
+
/** Packs items toward the start of the main axis. */
|
|
423
|
+
| "flex-start"
|
|
424
|
+
/** Packs items toward the end of the main axis. */
|
|
425
|
+
| "flex-end";
|
|
426
|
+
/** Defines a box shadow effect. All offset and radius values are in platform units (px on Web, pt on iOS, dp on Android). */
|
|
129
427
|
export interface Shadow {
|
|
428
|
+
/** Horizontal offset of the shadow. Positive values move the shadow right. */
|
|
130
429
|
offsetX?: null | number;
|
|
430
|
+
/** Vertical offset of the shadow. Positive values move the shadow down. */
|
|
131
431
|
offsetY?: null | number;
|
|
432
|
+
/** The blur radius. Higher values create a more diffuse shadow. */
|
|
132
433
|
blurRadius?: null | number;
|
|
434
|
+
/** The spread radius. Positive values expand the shadow, negative values shrink it. */
|
|
133
435
|
spreadRadius?: null | number;
|
|
436
|
+
/** The shadow color. */
|
|
134
437
|
color: ThemeColor;
|
|
135
438
|
}
|
|
136
|
-
|
|
439
|
+
/** Controls visibility of content that overflows the container bounds. */
|
|
440
|
+
export type Overflow =
|
|
441
|
+
/** Content that overflows is clipped and not visible. */
|
|
442
|
+
"hidden"
|
|
443
|
+
/** Content that overflows remains visible outside the container bounds. */
|
|
444
|
+
| "visible";
|
|
445
|
+
/** Styling properties for container layout behaviour. Only applicable to nodes that contain children. */
|
|
137
446
|
export interface ContainerStylingProperties {
|
|
447
|
+
/** Controls how children are distributed along the main axis. For a Row this is horizontal, for a Column this is vertical. */
|
|
138
448
|
justifyContent?: null | FlexJustification;
|
|
449
|
+
/** Controls how children are aligned along the cross axis. For a Row this is vertical, for a Column this is horizontal. */
|
|
139
450
|
alignItems?: null | FlexAlignment;
|
|
451
|
+
/** Applies a box shadow effect around the container. */
|
|
140
452
|
shadow?: null | Shadow;
|
|
453
|
+
/** Controls whether content overflowing the container bounds is visible or hidden. */
|
|
141
454
|
overflow?: null | Overflow;
|
|
455
|
+
/** The gap in platform units between children in the container. */
|
|
142
456
|
gap?: null | number;
|
|
457
|
+
/** Applies a Gaussian blur effect. Value is the blur radius in platform units. */
|
|
143
458
|
blur?: null | number;
|
|
144
459
|
}
|
|
460
|
+
/**
|
|
461
|
+
* Visual style properties for the CarouselDistribution container.
|
|
462
|
+
* Contains the standard style categories: container layout, background colors,
|
|
463
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
464
|
+
*/
|
|
145
465
|
export interface CarouselDistributionStyles {
|
|
466
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
146
467
|
container?: null | ContainerStylingProperties;
|
|
468
|
+
/** Background color and gradient styles. */
|
|
147
469
|
background?: null | BackgroundStylingProperties;
|
|
470
|
+
/** Border width, color, and radius styles. */
|
|
148
471
|
border?: null | BorderStylingProperties;
|
|
472
|
+
/** Width and height dimension styles. */
|
|
149
473
|
dimension?: null | DimensionStylingProperties;
|
|
474
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
150
475
|
flexChild?: null | FlexChildStylingProperties;
|
|
476
|
+
/** Padding and margin spacing styles. */
|
|
151
477
|
spacing?: null | SpacingStylingProperties;
|
|
152
478
|
}
|
|
479
|
+
/**
|
|
480
|
+
* Styling elements for the CarouselDistribution container.
|
|
481
|
+
* The `own` array contains stateless styling blocks applied to the carousel container itself.
|
|
482
|
+
*/
|
|
153
483
|
export interface CarouselDistributionElements {
|
|
484
|
+
/** Array of stateless styling blocks for the carousel container. */
|
|
154
485
|
own: StatelessStylingBlock<CarouselDistributionStyles>[];
|
|
155
486
|
}
|
|
156
|
-
|
|
487
|
+
/**
|
|
488
|
+
* The size of the peek-through area showing adjacent carousel items.
|
|
489
|
+
* Controls how much of the next/previous items are visible at the edges.
|
|
490
|
+
*/
|
|
491
|
+
export type PeekThroughSize =
|
|
492
|
+
/** A fixed size in platform units (px on Web, pt on iOS, dp on Android) for the peek-through area. */
|
|
493
|
+
{
|
|
157
494
|
type: "Fixed";
|
|
158
495
|
value: number;
|
|
159
|
-
}
|
|
496
|
+
}
|
|
497
|
+
/** A percentage-based size for the peek-through area, relative to the carousel width. */
|
|
498
|
+
| {
|
|
160
499
|
type: "Percentage";
|
|
161
500
|
value: number;
|
|
162
501
|
};
|
|
502
|
+
/**
|
|
503
|
+
* Presents offers in a horizontally scrollable carousel.
|
|
504
|
+
* Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
|
|
505
|
+
* Users can swipe left/right to browse offers.
|
|
506
|
+
*
|
|
507
|
+
* Use `viewableItems` to control how many items are visible at once per breakpoint.
|
|
508
|
+
* Use `peekThroughSize` to hint that more items exist by showing partial adjacent items.
|
|
509
|
+
*/
|
|
163
510
|
export interface CarouselDistributionModel<Predicates> {
|
|
511
|
+
/**
|
|
512
|
+
* Configuration for how many items are visible at once.
|
|
513
|
+
* Provided as an array of values for different breakpoints.
|
|
514
|
+
*/
|
|
164
515
|
viewableItems: number[];
|
|
516
|
+
/**
|
|
517
|
+
* How much of the next/previous items peek into view.
|
|
518
|
+
* Provided as an array of PeekThroughSize values for different breakpoints.
|
|
519
|
+
* Use Fixed for absolute values in platform units or Percentage for relative values.
|
|
520
|
+
*/
|
|
165
521
|
peekThroughSize: PeekThroughSize[];
|
|
522
|
+
/**
|
|
523
|
+
* Visual styles for the carousel container.
|
|
524
|
+
* Uses the LayoutStyle wrapper with conditional style transitions.
|
|
525
|
+
*/
|
|
166
526
|
styles?: null | LayoutStyle<CarouselDistributionElements, ConditionalStyleTransition<CarouselDistributionTransitions, Predicates>>;
|
|
167
527
|
}
|
|
528
|
+
/** Transition styles for animating CarouselDistribution style changes. */
|
|
168
529
|
export interface CarouselDistributionTransitions {
|
|
530
|
+
/** Transition properties for the carousel container's own styles. */
|
|
169
531
|
own?: null | CarouselDistributionStyles;
|
|
170
532
|
}
|
|
533
|
+
/**
|
|
534
|
+
* Visual style properties for a catalog response button.
|
|
535
|
+
* Controls the button's layout, appearance, and sizing.
|
|
536
|
+
*/
|
|
171
537
|
export interface CatalogResponseButtonStyles {
|
|
538
|
+
/** Layout properties for the flex container. */
|
|
172
539
|
container?: null | ContainerStylingProperties;
|
|
540
|
+
/** Background color and image properties. */
|
|
173
541
|
background?: null | BackgroundStylingProperties;
|
|
542
|
+
/** Border radius, color, width and style. */
|
|
174
543
|
border?: null | BorderStylingProperties;
|
|
544
|
+
/** Width, height and rotation properties. */
|
|
175
545
|
dimension?: null | DimensionStylingProperties;
|
|
546
|
+
/** Properties controlling behaviour as a flex child. */
|
|
176
547
|
flexChild?: null | FlexChildStylingProperties;
|
|
548
|
+
/** Padding, margin and offset properties. */
|
|
177
549
|
spacing?: null | SpacingStylingProperties;
|
|
178
550
|
}
|
|
551
|
+
/**
|
|
552
|
+
* Breakpoint-specific style elements for a catalog response button.
|
|
553
|
+
* Allows different visual treatments at different screen sizes and interaction states.
|
|
554
|
+
*/
|
|
179
555
|
export interface CatalogResponseButtonElements {
|
|
556
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
180
557
|
own: BasicStateStylingBlock<CatalogResponseButtonStyles>[];
|
|
181
558
|
}
|
|
559
|
+
/**
|
|
560
|
+
* A response button for catalog/add-to-cart interactions. Similar to CreativeResponse but
|
|
561
|
+
* designed for product catalog flows. When tapped, it sends a response keyed by `responseKey`
|
|
562
|
+
* back to the server to advance the catalog interaction.
|
|
563
|
+
*/
|
|
182
564
|
export interface CatalogResponseButtonModel<Children, Predicates> {
|
|
565
|
+
/**
|
|
566
|
+
* Responsive and conditional styling for this button, including breakpoint-specific
|
|
567
|
+
* element styles and animated transitions.
|
|
568
|
+
*/
|
|
183
569
|
styles?: null | LayoutStyle<CatalogResponseButtonElements, ConditionalStyleTransition<CatalogResponseButtonTransitions, Predicates>>;
|
|
570
|
+
/**
|
|
571
|
+
* Child nodes rendered inside this button. Typically contains text labels or icons
|
|
572
|
+
* describing the action (e.g., "Add to Cart", product name).
|
|
573
|
+
*/
|
|
184
574
|
children: Children[];
|
|
185
575
|
}
|
|
576
|
+
/** Transition properties for animating style changes on a catalog response button. */
|
|
186
577
|
export interface CatalogResponseButtonTransitions {
|
|
578
|
+
/** Transition properties for the primary element. */
|
|
187
579
|
own?: null | CatalogResponseButtonStyles;
|
|
188
580
|
}
|
|
581
|
+
/**
|
|
582
|
+
* Visual style properties for the stacked collection container.
|
|
583
|
+
* Controls the layout and appearance of the outer wrapper that holds
|
|
584
|
+
* the stacked catalog item cards.
|
|
585
|
+
*/
|
|
189
586
|
export interface CatalogStackedCollectionStyles {
|
|
587
|
+
/** Layout properties for the flex container. */
|
|
190
588
|
container?: null | ContainerStylingProperties;
|
|
589
|
+
/** Background color and image properties. */
|
|
191
590
|
background?: null | BackgroundStylingProperties;
|
|
591
|
+
/** Border radius, color, width and style. */
|
|
192
592
|
border?: null | BorderStylingProperties;
|
|
593
|
+
/** Width, height and rotation properties. */
|
|
193
594
|
dimension?: null | DimensionStylingProperties;
|
|
595
|
+
/** Properties controlling behaviour as a flex child. */
|
|
194
596
|
flexChild?: null | FlexChildStylingProperties;
|
|
597
|
+
/** Padding, margin and offset properties. */
|
|
195
598
|
spacing?: null | SpacingStylingProperties;
|
|
196
599
|
}
|
|
600
|
+
/**
|
|
601
|
+
* Breakpoint-specific style elements for a catalog stacked collection.
|
|
602
|
+
* Uses stateless styling blocks since this is a static container without
|
|
603
|
+
* interactive states.
|
|
604
|
+
*/
|
|
197
605
|
export interface CatalogStackedCollectionElements {
|
|
606
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
198
607
|
own: StatelessStylingBlock<CatalogStackedCollectionStyles>[];
|
|
199
608
|
}
|
|
609
|
+
/**
|
|
610
|
+
* A vertically stacked collection of catalog items for add-to-cart flows.
|
|
611
|
+
* Renders each catalog product as a card in a vertical stack layout, where items
|
|
612
|
+
* are presented one below another. The visual content of each item is defined by
|
|
613
|
+
* a reusable template node that is instantiated per product in the collection.
|
|
614
|
+
*/
|
|
200
615
|
export interface CatalogStackedCollectionModel<NodeTemplate, Predicates> {
|
|
616
|
+
/**
|
|
617
|
+
* Responsive and conditional styling for this collection container, including
|
|
618
|
+
* breakpoint-specific element styles and animated transitions.
|
|
619
|
+
*/
|
|
201
620
|
styles?: null | LayoutStyle<CatalogStackedCollectionElements, ConditionalStyleTransition<CatalogStackedCollectionTransitions, Predicates>>;
|
|
621
|
+
/**
|
|
622
|
+
* Template node used to render each catalog item in the stacked collection.
|
|
623
|
+
* This template is instantiated once per product, with product-specific data
|
|
624
|
+
* bound at runtime.
|
|
625
|
+
*/
|
|
202
626
|
template: NodeTemplate;
|
|
203
627
|
}
|
|
628
|
+
/** Transition properties for animating style changes on a catalog stacked collection. */
|
|
204
629
|
export interface CatalogStackedCollectionTransitions {
|
|
630
|
+
/** Transition properties for the primary element. */
|
|
205
631
|
own?: null | CatalogStackedCollectionStyles;
|
|
206
632
|
}
|
|
633
|
+
/**
|
|
634
|
+
* Visual style properties for the CloseButton.
|
|
635
|
+
* Contains the standard style categories: container layout, background colors,
|
|
636
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
637
|
+
*/
|
|
207
638
|
export interface CloseButtonStyles {
|
|
639
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
208
640
|
container?: null | ContainerStylingProperties;
|
|
641
|
+
/** Background color and gradient styles. */
|
|
209
642
|
background?: null | BackgroundStylingProperties;
|
|
643
|
+
/** Border width, color, and radius styles. */
|
|
210
644
|
border?: null | BorderStylingProperties;
|
|
645
|
+
/** Width and height dimension styles. */
|
|
211
646
|
dimension?: null | DimensionStylingProperties;
|
|
647
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
212
648
|
flexChild?: null | FlexChildStylingProperties;
|
|
649
|
+
/** Padding and margin spacing styles. */
|
|
213
650
|
spacing?: null | SpacingStylingProperties;
|
|
214
651
|
}
|
|
652
|
+
/**
|
|
653
|
+
* Styling elements for the CloseButton.
|
|
654
|
+
* The `own` array contains state-dependent styling blocks (e.g. default, pressed)
|
|
655
|
+
* applied to the close button itself.
|
|
656
|
+
*/
|
|
215
657
|
export interface CloseButtonElements {
|
|
658
|
+
/**
|
|
659
|
+
* Array of state-dependent styling blocks for the close button.
|
|
660
|
+
* Each block targets a specific interaction state (default, pressed, etc.).
|
|
661
|
+
*/
|
|
216
662
|
own: BasicStateStylingBlock<CloseButtonStyles>[];
|
|
217
663
|
}
|
|
664
|
+
/**
|
|
665
|
+
* A button that closes/dismisses the layout when clicked.
|
|
666
|
+
* Typically contains a StaticIcon with the 'Close' icon.
|
|
667
|
+
*
|
|
668
|
+
* MUST include child content (usually a StaticIcon with name `"Close"`).
|
|
669
|
+
* Do NOT use CreativeResponse for dismissal; use CloseButton instead so that
|
|
670
|
+
* the dismiss action is correctly tracked.
|
|
671
|
+
*/
|
|
218
672
|
export interface CloseButtonModel<Children, Predicates> {
|
|
673
|
+
/** Visual styles for the close button. Uses the LayoutStyle wrapper with conditional style transitions. */
|
|
219
674
|
styles?: null | LayoutStyle<CloseButtonElements, ConditionalStyleTransition<CloseButtonTransitions, Predicates>>;
|
|
675
|
+
/**
|
|
676
|
+
* Child nodes forming the button content. Typically a StaticIcon with name `"Close"`.
|
|
677
|
+
* MUST contain at least one child to display the close icon or label.
|
|
678
|
+
*/
|
|
220
679
|
children: Children[];
|
|
680
|
+
/**
|
|
681
|
+
* Optional dismissal method configuration.
|
|
682
|
+
* Controls how the dismissal is reported for analytics purposes.
|
|
683
|
+
*/
|
|
221
684
|
dismissalMethod?: null | string;
|
|
222
685
|
}
|
|
686
|
+
/**
|
|
687
|
+
* Transition styles for animating CloseButton style changes.
|
|
688
|
+
* Defines which style properties should animate when the button's conditional styles change.
|
|
689
|
+
*/
|
|
223
690
|
export interface CloseButtonTransitions {
|
|
691
|
+
/** Transition properties for the close button's own styles. */
|
|
224
692
|
own?: null | CloseButtonStyles;
|
|
225
693
|
}
|
|
694
|
+
/**
|
|
695
|
+
* Available style categories for the Column element. Each optional field enables a specific
|
|
696
|
+
* category of visual styling. Omit a field to leave that category unstyled.
|
|
697
|
+
*/
|
|
226
698
|
export interface ColumnStyle {
|
|
699
|
+
/**
|
|
700
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
701
|
+
* MUST be used to control how children are arranged within the column.
|
|
702
|
+
*/
|
|
227
703
|
container?: null | ContainerStylingProperties;
|
|
704
|
+
/**
|
|
705
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
706
|
+
* behind the column content.
|
|
707
|
+
*/
|
|
228
708
|
background?: null | BackgroundStylingProperties;
|
|
709
|
+
/**
|
|
710
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
711
|
+
* rounded corners to the column.
|
|
712
|
+
*/
|
|
229
713
|
border?: null | BorderStylingProperties;
|
|
714
|
+
/**
|
|
715
|
+
* Width, height and rotation properties. Use to explicitly size the column or apply
|
|
716
|
+
* rotation transforms. Do NOT set width/height if the column should size to its content.
|
|
717
|
+
*/
|
|
230
718
|
dimension?: null | DimensionStylingProperties;
|
|
719
|
+
/**
|
|
720
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
721
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
722
|
+
*/
|
|
231
723
|
flexChild?: null | FlexChildStylingProperties;
|
|
724
|
+
/** Padding, margin and offset properties. Use to add spacing inside or outside the column. */
|
|
232
725
|
spacing?: null | SpacingStylingProperties;
|
|
233
726
|
}
|
|
727
|
+
/**
|
|
728
|
+
* Styleable elements of the Column node. The Column has a single styleable element: its own
|
|
729
|
+
* container.
|
|
730
|
+
*/
|
|
234
731
|
export interface ColumnElements {
|
|
732
|
+
/**
|
|
733
|
+
* Style blocks for the column container itself. The array represents breakpoint-specific
|
|
734
|
+
* styles: first item is the default (no breakpoint), subsequent items correspond to
|
|
735
|
+
* breakpoints in ascending order. MUST contain at least one item for the default style.
|
|
736
|
+
*/
|
|
235
737
|
own: BasicStateStylingBlock<ColumnStyle>[];
|
|
236
738
|
}
|
|
739
|
+
/**
|
|
740
|
+
* A vertical flex container that arranges its children in a column (top to bottom). Use for
|
|
741
|
+
* vertical layouts. Children are laid out along the vertical axis by default. To control
|
|
742
|
+
* alignment and distribution, configure the container styles. Do NOT nest Columns
|
|
743
|
+
* unnecessarily when a single Column with appropriate styling would suffice.
|
|
744
|
+
*/
|
|
237
745
|
export interface ColumnModel<Children, Predicates> {
|
|
746
|
+
/**
|
|
747
|
+
* Accessibility label for screen readers. Omit if the column is purely decorative or its
|
|
748
|
+
* children already provide sufficient accessible labels. MUST be set when the column
|
|
749
|
+
* conveys meaning not available from its children alone.
|
|
750
|
+
*/
|
|
238
751
|
a11yLabel?: null | string;
|
|
752
|
+
/**
|
|
753
|
+
* Visual styles for this column. See styling documentation for the structure. Omit to use
|
|
754
|
+
* default (unstyled) rendering.
|
|
755
|
+
*/
|
|
239
756
|
styles?: null | LayoutStyle<ColumnElements, ConditionalStyleTransition<ColumnTransitions, Predicates>>;
|
|
757
|
+
/**
|
|
758
|
+
* Child nodes rendered vertically within this column.
|
|
759
|
+
* Children are laid out top to bottom in source order.
|
|
760
|
+
*/
|
|
240
761
|
children: Children[];
|
|
241
762
|
}
|
|
763
|
+
/** Transition styles for the Column node. Use to animate style changes smoothly. */
|
|
242
764
|
export interface ColumnTransitions {
|
|
765
|
+
/**
|
|
766
|
+
* Transition properties for the column container. Specifies which style properties
|
|
767
|
+
* should animate and their duration/easing when values change.
|
|
768
|
+
*/
|
|
243
769
|
own?: null | ColumnStyle;
|
|
244
770
|
}
|
|
245
|
-
|
|
771
|
+
/**
|
|
772
|
+
* Condition operators for checking whether a value exists. Use these to
|
|
773
|
+
* conditionally render content based on whether data is present.
|
|
774
|
+
* Serialized as kebab-case strings: "exists", "not-exists".
|
|
775
|
+
*/
|
|
776
|
+
export type ExistenceWhenCondition =
|
|
777
|
+
/** True when the value is present and non-empty. */
|
|
778
|
+
"exists"
|
|
779
|
+
/** True when the value is absent or empty. */
|
|
780
|
+
| "not-exists";
|
|
781
|
+
/**
|
|
782
|
+
* Tests whether a creative data attribute exists. Use to conditionally show
|
|
783
|
+
* content only when specific creative data is available. Do NOT use this for
|
|
784
|
+
* non-creative data checks.
|
|
785
|
+
*/
|
|
246
786
|
export interface CreativeCopyPredicate {
|
|
787
|
+
/** Whether to check for existence or non-existence of the creative attribute. */
|
|
247
788
|
condition: ExistenceWhenCondition;
|
|
789
|
+
/**
|
|
790
|
+
* The dot-notation path to the creative attribute, e.g.
|
|
791
|
+
* "creative.socialProof.number". MUST use dot notation to reference
|
|
792
|
+
* nested creative data fields.
|
|
793
|
+
*/
|
|
248
794
|
value: string;
|
|
249
795
|
}
|
|
796
|
+
/**
|
|
797
|
+
* Visual style properties for the CreativeResponse button.
|
|
798
|
+
* Contains the standard style categories: container layout, background colors,
|
|
799
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
800
|
+
*/
|
|
250
801
|
export interface CreativeResponseStyles {
|
|
802
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
251
803
|
container?: null | ContainerStylingProperties;
|
|
804
|
+
/** Background color and gradient styles. */
|
|
252
805
|
background?: null | BackgroundStylingProperties;
|
|
806
|
+
/** Border width, color, and radius styles. */
|
|
253
807
|
border?: null | BorderStylingProperties;
|
|
808
|
+
/** Width and height dimension styles. */
|
|
254
809
|
dimension?: null | DimensionStylingProperties;
|
|
810
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
255
811
|
flexChild?: null | FlexChildStylingProperties;
|
|
812
|
+
/** Padding and margin spacing styles. */
|
|
256
813
|
spacing?: null | SpacingStylingProperties;
|
|
257
814
|
}
|
|
815
|
+
/**
|
|
816
|
+
* Styling elements for the CreativeResponse button.
|
|
817
|
+
* The `own` array contains state-dependent styling blocks (e.g. default, pressed, disabled)
|
|
818
|
+
* applied to the button itself.
|
|
819
|
+
*/
|
|
258
820
|
export interface CreativeResponseElements {
|
|
821
|
+
/**
|
|
822
|
+
* Array of state-dependent styling blocks for the button.
|
|
823
|
+
* Each block targets a specific interaction state (default, pressed, disabled, etc.).
|
|
824
|
+
*/
|
|
259
825
|
own: BasicStateStylingBlock<CreativeResponseStyles>[];
|
|
260
826
|
}
|
|
261
|
-
|
|
827
|
+
/**
|
|
828
|
+
* Controls how links are opened when clicked. MUST be one of the valid
|
|
829
|
+
* kebab-case string values. Determines the navigation behavior when a
|
|
830
|
+
* user activates a link action.
|
|
831
|
+
*/
|
|
832
|
+
export type LinkOpenTarget =
|
|
833
|
+
/**
|
|
834
|
+
* Opens the link within the current context (in-app webview or same
|
|
835
|
+
* window). Use for links that should keep the user in the application.
|
|
836
|
+
*/
|
|
837
|
+
"internally"
|
|
838
|
+
/**
|
|
839
|
+
* Opens the link in the system browser. Use for external URLs that
|
|
840
|
+
* should leave the application context.
|
|
841
|
+
*/
|
|
842
|
+
| "externally";
|
|
843
|
+
/**
|
|
844
|
+
* A button that triggers a creative response (positive or negative).
|
|
845
|
+
* This is the primary call-to-action node for offer interactions.
|
|
846
|
+
* Children inside this node become the button content.
|
|
847
|
+
*
|
|
848
|
+
* MUST have a `responseKey` of either `"positive"` or `"negative"`.
|
|
849
|
+
* Use `"positive"` for accept/CTA buttons and `"negative"` for decline/dismiss buttons.
|
|
850
|
+
* Do NOT use this node for non-response actions like navigation; use StaticLink or ButtonStateTrigger instead.
|
|
851
|
+
*/
|
|
262
852
|
export interface CreativeResponseModel<Children, Predicates> {
|
|
853
|
+
/**
|
|
854
|
+
* The response type. Use `"positive"` for accept/CTA buttons, `"negative"` for decline/dismiss buttons.
|
|
855
|
+
* Do NOT use arbitrary strings; only `"positive"` and `"negative"` are valid.
|
|
856
|
+
*/
|
|
263
857
|
responseKey: string;
|
|
858
|
+
/** Visual styles for the button. Uses the LayoutStyle wrapper with conditional style transitions. */
|
|
264
859
|
styles?: null | LayoutStyle<CreativeResponseElements, ConditionalStyleTransition<CreativeResponseTransitions, Predicates>>;
|
|
860
|
+
/**
|
|
861
|
+
* Controls how the response URL is opened when clicked.
|
|
862
|
+
* If omitted, the default link opening behaviour is used.
|
|
863
|
+
*/
|
|
265
864
|
openLinks?: null | LinkOpenTarget;
|
|
865
|
+
/**
|
|
866
|
+
* Child nodes that form the button's visible content.
|
|
867
|
+
* Typically contains a BasicText node with the CTA label.
|
|
868
|
+
* MUST contain at least one child to display button content.
|
|
869
|
+
*/
|
|
266
870
|
children: Children[];
|
|
267
871
|
}
|
|
872
|
+
/**
|
|
873
|
+
* Transition styles for animating CreativeResponse style changes.
|
|
874
|
+
* Defines which style properties should animate when the button's conditional styles change.
|
|
875
|
+
*/
|
|
268
876
|
export interface CreativeResponseTransitions {
|
|
877
|
+
/** Transition properties for the button's own styles. */
|
|
269
878
|
own?: null | CreativeResponseStyles;
|
|
270
879
|
}
|
|
880
|
+
/**
|
|
881
|
+
* Tests a custom state value. Custom states are set by state trigger nodes
|
|
882
|
+
* such as ButtonStateTrigger, ToggleButtonStateTrigger, and similar components.
|
|
883
|
+
* The value is an integer that represents the current state.
|
|
884
|
+
*/
|
|
271
885
|
export interface CustomStatePredicate {
|
|
886
|
+
/**
|
|
887
|
+
* The custom state key to check. MUST match the key used in the
|
|
888
|
+
* corresponding state trigger node.
|
|
889
|
+
*/
|
|
272
890
|
key: string;
|
|
891
|
+
/** The comparison operator. */
|
|
273
892
|
condition: OrderableWhenCondition;
|
|
893
|
+
/** The integer value to compare the custom state against. */
|
|
274
894
|
value: number;
|
|
275
895
|
}
|
|
276
|
-
|
|
896
|
+
/**
|
|
897
|
+
* Condition operators for equality comparisons. Use these when you only need
|
|
898
|
+
* to test if two values are equal or not equal.
|
|
899
|
+
* Serialized as kebab-case strings: "is", "is-not".
|
|
900
|
+
*/
|
|
901
|
+
export type EqualityWhenCondition =
|
|
902
|
+
/** True when the value equals the specified value. */
|
|
903
|
+
"is"
|
|
904
|
+
/** True when the value does not equal the specified value. */
|
|
905
|
+
| "is-not";
|
|
906
|
+
/**
|
|
907
|
+
* Tests whether dark mode is active. Use to provide different styling or
|
|
908
|
+
* content for light and dark modes.
|
|
909
|
+
*/
|
|
277
910
|
export interface DarkModePredicate {
|
|
911
|
+
/** Use "is" to check if dark mode matches the value, "is-not" for the inverse. */
|
|
278
912
|
condition: EqualityWhenCondition;
|
|
913
|
+
/**
|
|
914
|
+
* The boolean value to compare against. Set to true to test for dark mode,
|
|
915
|
+
* false to test for light mode.
|
|
916
|
+
*/
|
|
279
917
|
value: boolean;
|
|
280
918
|
}
|
|
919
|
+
/** Visual styles for the DataIcon node. */
|
|
281
920
|
export interface DataIconStyles {
|
|
921
|
+
/** Typography properties. */
|
|
282
922
|
text?: null | TextStylingProperties;
|
|
923
|
+
/** Width, height and rotation properties. */
|
|
283
924
|
dimension?: null | DimensionStylingProperties;
|
|
925
|
+
/** Properties controlling behaviour as a flex child. */
|
|
284
926
|
flexChild?: null | FlexChildStylingProperties;
|
|
927
|
+
/** Padding, margin and offset properties. */
|
|
285
928
|
spacing?: null | SpacingStylingProperties;
|
|
929
|
+
/** Background color and image properties. */
|
|
286
930
|
background?: null | BackgroundStylingProperties;
|
|
931
|
+
/** Border radius, color, width and style. */
|
|
287
932
|
border?: null | BorderStylingProperties;
|
|
288
933
|
}
|
|
934
|
+
/** Style elements for the DataIcon node. */
|
|
289
935
|
export interface DataIconElements {
|
|
936
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
290
937
|
own: BasicStateStylingBlock<DataIconStyles>[];
|
|
291
938
|
}
|
|
939
|
+
/** Renders an icon from creative data. The icon is resolved from the creative object using the iconKey. */
|
|
292
940
|
export interface DataIconModel<Predicates> {
|
|
941
|
+
/** Visual styles for the icon. */
|
|
293
942
|
styles?: null | LayoutStyle<DataIconElements, ConditionalStyleTransition<DataIconTransitions, Predicates>>;
|
|
943
|
+
/** The key identifying which icon from the creative data to display. */
|
|
294
944
|
iconKey: string;
|
|
295
945
|
}
|
|
946
|
+
/** Transition definitions for the DataIcon node. */
|
|
296
947
|
export interface DataIconTransitions {
|
|
948
|
+
/** Transition properties for the primary element. */
|
|
297
949
|
own?: null | DataIconStyles;
|
|
298
950
|
}
|
|
951
|
+
/** Visual styles for the DataImage node. */
|
|
299
952
|
export interface DataImageStyles {
|
|
953
|
+
/** Background color and image properties. */
|
|
300
954
|
background?: null | BackgroundStylingProperties;
|
|
955
|
+
/** Border radius, color, width and style. */
|
|
301
956
|
border?: null | BorderStylingProperties;
|
|
957
|
+
/** Width, height and rotation properties. */
|
|
302
958
|
dimension?: null | DimensionStylingProperties;
|
|
959
|
+
/** Properties controlling behaviour as a flex child. */
|
|
303
960
|
flexChild?: null | FlexChildStylingProperties;
|
|
961
|
+
/** Padding, margin and offset properties. */
|
|
304
962
|
spacing?: null | SpacingStylingProperties;
|
|
305
963
|
}
|
|
964
|
+
/** Style elements for the DataImage node. */
|
|
306
965
|
export interface DataImageElements {
|
|
966
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
307
967
|
own: BasicStateStylingBlock<DataImageStyles>[];
|
|
308
968
|
}
|
|
969
|
+
/** Renders an image from creative data. The image URL is resolved from the creative object using the imageKey. Use for offer-specific images. */
|
|
309
970
|
export interface DataImageModel<Predicates> {
|
|
971
|
+
/** Visual styles for the image element. */
|
|
310
972
|
styles?: null | LayoutStyle<DataImageElements, ConditionalStyleTransition<DataImageTransitions, Predicates>>;
|
|
973
|
+
/** The key identifying which image from the creative data to display. */
|
|
311
974
|
imageKey: string;
|
|
312
975
|
}
|
|
976
|
+
/** Transition definitions for the DataImage node. */
|
|
313
977
|
export interface DataImageTransitions {
|
|
978
|
+
/** Transition properties for the primary element. */
|
|
314
979
|
own?: null | DataImageStyles;
|
|
315
980
|
}
|
|
316
|
-
|
|
981
|
+
/**
|
|
982
|
+
* Keys for accessing application domain state in the full layout schema
|
|
983
|
+
* context. Domain state represents high-level application state managed by
|
|
984
|
+
* the host application. Serialized as camelCase strings.
|
|
985
|
+
*/
|
|
986
|
+
export type DomainStateKey =
|
|
987
|
+
/**
|
|
988
|
+
* Indicates whether the current offer has been completed by the user.
|
|
989
|
+
* Use to show post-completion content or hide offer-specific elements.
|
|
990
|
+
*/
|
|
991
|
+
"offerComplete";
|
|
992
|
+
/**
|
|
993
|
+
* Tests application domain state. Domain state is managed by the host
|
|
994
|
+
* application and represents high-level application state such as whether
|
|
995
|
+
* an offer is complete or checkout state.
|
|
996
|
+
*/
|
|
317
997
|
export interface DomainStatePredicate<DomainStateKey> {
|
|
998
|
+
/** The domain state key to check. */
|
|
318
999
|
key: DomainStateKey;
|
|
1000
|
+
/** The comparison operator. */
|
|
319
1001
|
condition: OrderableWhenCondition;
|
|
1002
|
+
/** The integer value to compare the domain state against. */
|
|
320
1003
|
value: number;
|
|
321
1004
|
}
|
|
1005
|
+
/**
|
|
1006
|
+
* An escape hatch node that allows passing raw data through the DCUI schema.
|
|
1007
|
+
* Use sparingly for edge cases not covered by standard nodes.
|
|
1008
|
+
*
|
|
1009
|
+
* Do NOT use this as a general-purpose data container. Prefer standard DCUI nodes
|
|
1010
|
+
* whenever possible. This node bypasses schema validation for its data content.
|
|
1011
|
+
*/
|
|
322
1012
|
export interface EscapeHatchModel {
|
|
1013
|
+
/**
|
|
1014
|
+
* Raw string data to pass through.
|
|
1015
|
+
* The content is opaque to the DCUI renderer and is passed directly to the client.
|
|
1016
|
+
* MUST be a valid string. The client is responsible for parsing and interpreting the data.
|
|
1017
|
+
*/
|
|
323
1018
|
data: string;
|
|
324
1019
|
}
|
|
1020
|
+
/** Settings for a bidirectional fade-in/fade-out transition. */
|
|
325
1021
|
export interface FadeInOutTransitionSettings {
|
|
1022
|
+
/**
|
|
1023
|
+
* The transition duration in milliseconds. MUST be a positive integer.
|
|
1024
|
+
* Common values: 200 for fast, 400 for medium, 1000 for slow.
|
|
1025
|
+
*/
|
|
326
1026
|
duration: number;
|
|
327
1027
|
}
|
|
1028
|
+
/** Settings for a fade-in (enter) transition. */
|
|
328
1029
|
export interface FadeInTransitionSettings {
|
|
1030
|
+
/**
|
|
1031
|
+
* The transition duration in milliseconds. MUST be a positive integer.
|
|
1032
|
+
* Common values: 200 for fast, 400 for medium, 1000 for slow.
|
|
1033
|
+
*/
|
|
329
1034
|
duration: number;
|
|
330
1035
|
}
|
|
1036
|
+
/** Settings for a fade-out (exit) transition. */
|
|
331
1037
|
export interface FadeOutTransitionSettings {
|
|
1038
|
+
/**
|
|
1039
|
+
* The transition duration in milliseconds. MUST be a positive integer.
|
|
1040
|
+
* Common values: 200 for fast, 400 for medium, 1000 for slow.
|
|
1041
|
+
*/
|
|
332
1042
|
duration: number;
|
|
333
1043
|
}
|
|
1044
|
+
/**
|
|
1045
|
+
* Available style categories for the FlowRow element. Each optional field enables a specific
|
|
1046
|
+
* category of visual styling. Omit a field to leave that category unstyled.
|
|
1047
|
+
*/
|
|
334
1048
|
export interface FlowRowStyle {
|
|
1049
|
+
/**
|
|
1050
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
1051
|
+
* MUST be used to control how children are arranged and wrapped within the flow row.
|
|
1052
|
+
*/
|
|
335
1053
|
container?: null | ContainerStylingProperties;
|
|
1054
|
+
/**
|
|
1055
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
1056
|
+
* behind the flow row content.
|
|
1057
|
+
*/
|
|
336
1058
|
background?: null | BackgroundStylingProperties;
|
|
1059
|
+
/**
|
|
1060
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
1061
|
+
* rounded corners to the flow row.
|
|
1062
|
+
*/
|
|
337
1063
|
border?: null | BorderStylingProperties;
|
|
1064
|
+
/**
|
|
1065
|
+
* Width, height and rotation properties. Use to explicitly size the flow row or apply
|
|
1066
|
+
* rotation transforms. Do NOT set width/height if the flow row should size to its content.
|
|
1067
|
+
*/
|
|
338
1068
|
dimension?: null | DimensionStylingProperties;
|
|
1069
|
+
/**
|
|
1070
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
1071
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
1072
|
+
*/
|
|
339
1073
|
flexChild?: null | FlexChildStylingProperties;
|
|
1074
|
+
/** Padding, margin and offset properties. Use to add spacing inside or outside the flow row. */
|
|
340
1075
|
spacing?: null | SpacingStylingProperties;
|
|
341
1076
|
}
|
|
1077
|
+
/**
|
|
1078
|
+
* Styleable elements of the FlowRow node. The FlowRow has a single styleable element: its
|
|
1079
|
+
* own container.
|
|
1080
|
+
*/
|
|
342
1081
|
export interface FlowRowElements {
|
|
1082
|
+
/**
|
|
1083
|
+
* Style blocks for the flow row container itself. The array represents breakpoint-specific
|
|
1084
|
+
* styles: first item is the default (no breakpoint), subsequent items correspond to
|
|
1085
|
+
* breakpoints in ascending order. MUST contain at least one item for the default style.
|
|
1086
|
+
*/
|
|
343
1087
|
own: BasicStateStylingBlock<FlowRowStyle>[];
|
|
344
1088
|
}
|
|
1089
|
+
/**
|
|
1090
|
+
* A horizontal flex container that wraps children to the next line when they exceed the
|
|
1091
|
+
* container width. Like Row but with line wrapping. Use when you have a dynamic number of
|
|
1092
|
+
* items that should flow naturally across lines (e.g., tags, chips, badges). Do NOT use
|
|
1093
|
+
* FlowRow when you need a single non-wrapping horizontal row; use Row instead.
|
|
1094
|
+
*/
|
|
345
1095
|
export interface FlowRowModel<Children, Predicates> {
|
|
1096
|
+
/**
|
|
1097
|
+
* Accessibility label for screen readers. Omit if the flow row is purely decorative or
|
|
1098
|
+
* its children already provide sufficient accessible labels. MUST be set when the flow
|
|
1099
|
+
* row conveys meaning not available from its children alone.
|
|
1100
|
+
*/
|
|
346
1101
|
a11yLabel?: null | string;
|
|
1102
|
+
/**
|
|
1103
|
+
* Visual styles for this flow row. See styling documentation for the structure. Omit to
|
|
1104
|
+
* use default (unstyled) rendering.
|
|
1105
|
+
*/
|
|
347
1106
|
styles?: null | LayoutStyle<FlowRowElements, ConditionalStyleTransition<FlowRowTransitions, Predicates>>;
|
|
1107
|
+
/**
|
|
1108
|
+
* Child nodes rendered horizontally with wrapping within this flow row. MUST contain at
|
|
1109
|
+
* least one child. Children wrap to the next line when they exceed the container width.
|
|
1110
|
+
*/
|
|
348
1111
|
children: Children[];
|
|
349
1112
|
}
|
|
1113
|
+
/** Transition styles for the FlowRow node. Use to animate style changes smoothly. */
|
|
350
1114
|
export interface FlowRowTransitions {
|
|
1115
|
+
/**
|
|
1116
|
+
* Transition properties for the flow row container. Specifies which style properties
|
|
1117
|
+
* should animate and their duration/easing when values change.
|
|
1118
|
+
*/
|
|
351
1119
|
own?: null | FlowRowStyle;
|
|
352
1120
|
}
|
|
1121
|
+
/**
|
|
1122
|
+
* Visual style properties for the GroupedDistribution container.
|
|
1123
|
+
* Contains the standard style categories: container layout, background colors,
|
|
1124
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
1125
|
+
*/
|
|
353
1126
|
export interface GroupedDistributionStyles {
|
|
1127
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
354
1128
|
container?: null | ContainerStylingProperties;
|
|
1129
|
+
/** Background color and gradient styles. */
|
|
355
1130
|
background?: null | BackgroundStylingProperties;
|
|
1131
|
+
/** Border width, color, and radius styles. */
|
|
356
1132
|
border?: null | BorderStylingProperties;
|
|
1133
|
+
/** Width and height dimension styles. */
|
|
357
1134
|
dimension?: null | DimensionStylingProperties;
|
|
1135
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
358
1136
|
flexChild?: null | FlexChildStylingProperties;
|
|
1137
|
+
/** Padding and margin spacing styles. */
|
|
359
1138
|
spacing?: null | SpacingStylingProperties;
|
|
360
1139
|
}
|
|
1140
|
+
/**
|
|
1141
|
+
* Styling elements for the GroupedDistribution container.
|
|
1142
|
+
* The `own` array contains stateless styling blocks applied to the grouped container itself.
|
|
1143
|
+
*/
|
|
361
1144
|
export interface GroupedDistributionElements {
|
|
1145
|
+
/** Array of stateless styling blocks for the grouped container. */
|
|
362
1146
|
own: StatelessStylingBlock<GroupedDistributionStyles>[];
|
|
363
1147
|
}
|
|
364
|
-
|
|
1148
|
+
/**
|
|
1149
|
+
* A bidirectional transition that applies both when showing and hiding an
|
|
1150
|
+
* element. MUST be an object with a "type" field and a "settings" field.
|
|
1151
|
+
* Currently only "FadeInOut" is supported.
|
|
1152
|
+
*/
|
|
1153
|
+
export type Transition =
|
|
1154
|
+
/**
|
|
1155
|
+
* A fade-in/fade-out transition. The element fades in when shown and
|
|
1156
|
+
* fades out when hidden, using the specified duration.
|
|
1157
|
+
*/
|
|
1158
|
+
{
|
|
365
1159
|
type: "FadeInOut";
|
|
366
1160
|
settings: FadeInOutTransitionSettings;
|
|
367
1161
|
};
|
|
1162
|
+
/**
|
|
1163
|
+
* Presents offers in groups, progressing through groups sequentially.
|
|
1164
|
+
* Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
|
|
1165
|
+
* Each group shows a fixed number of offers at once, and the user advances through groups.
|
|
1166
|
+
*
|
|
1167
|
+
* Pair with ProgressControl nodes for group navigation.
|
|
1168
|
+
* Use `viewableItems` to control how many offers appear per group at each breakpoint.
|
|
1169
|
+
*/
|
|
368
1170
|
export interface GroupedDistributionModel<Predicates> {
|
|
1171
|
+
/**
|
|
1172
|
+
* Configuration for how many items per group.
|
|
1173
|
+
* Provided as an array of values for different breakpoints.
|
|
1174
|
+
*/
|
|
369
1175
|
viewableItems: number[];
|
|
1176
|
+
/**
|
|
1177
|
+
* The transition animation between groups.
|
|
1178
|
+
* Defines how the current group exits and the next group enters.
|
|
1179
|
+
*/
|
|
370
1180
|
transition: Transition;
|
|
1181
|
+
/**
|
|
1182
|
+
* Visual styles for the grouped container.
|
|
1183
|
+
* Uses the LayoutStyle wrapper with conditional style transitions.
|
|
1184
|
+
*/
|
|
371
1185
|
styles?: null | LayoutStyle<GroupedDistributionElements, ConditionalStyleTransition<GroupedDistributionTransitions, Predicates>>;
|
|
372
1186
|
}
|
|
1187
|
+
/** Transition styles for animating GroupedDistribution style changes. */
|
|
373
1188
|
export interface GroupedDistributionTransitions {
|
|
1189
|
+
/** Transition properties for the grouped container's own styles. */
|
|
374
1190
|
own?: null | GroupedDistributionStyles;
|
|
375
1191
|
}
|
|
1192
|
+
/**
|
|
1193
|
+
* Typography styling for inline text elements. A subset of TextStylingProperties
|
|
1194
|
+
* without line-level controls (lineHeight, horizontalTextAlign, lineLimit).
|
|
1195
|
+
* All fields are optional. Only include the properties you want to override.
|
|
1196
|
+
*/
|
|
376
1197
|
export interface InlineTextStylingProperties {
|
|
1198
|
+
/** The text color. Uses themed values for light/dark mode support. */
|
|
377
1199
|
textColor?: null | ThemeColor;
|
|
1200
|
+
/** Font size in platform units (px on Web, pt on iOS, dp on Android). */
|
|
378
1201
|
fontSize?: null | number;
|
|
1202
|
+
/** The font family name. Use 'rokt-icons' for icon fonts. */
|
|
379
1203
|
fontFamily?: null | string;
|
|
1204
|
+
/** The weight (boldness) of the font. */
|
|
380
1205
|
fontWeight?: null | FontWeight;
|
|
1206
|
+
/** Vertical alignment of text relative to the baseline. */
|
|
381
1207
|
baselineTextAlign?: null | FontBaselineAlignment;
|
|
1208
|
+
/** Normal or italic text rendering. */
|
|
382
1209
|
fontStyle?: null | FontStyle;
|
|
1210
|
+
/** Controls automatic text capitalisation. */
|
|
383
1211
|
textTransform?: null | TextTransform;
|
|
1212
|
+
/** Additional spacing between characters in platform units. */
|
|
384
1213
|
letterSpacing?: null | number;
|
|
1214
|
+
/** Decorative line applied to text (underline, strikethrough). */
|
|
385
1215
|
textDecoration?: null | TextDecoration;
|
|
386
1216
|
}
|
|
1217
|
+
/** Inline text styling for elements like links within rich text. */
|
|
387
1218
|
export interface InLineTextStyle {
|
|
1219
|
+
/** Typography properties for the inline text element. */
|
|
388
1220
|
text: InlineTextStylingProperties;
|
|
389
1221
|
}
|
|
1222
|
+
/**
|
|
1223
|
+
* Visual style properties for individual indicator items (dots, bars, etc.).
|
|
1224
|
+
* Includes text styling for number-based indicators.
|
|
1225
|
+
*/
|
|
390
1226
|
export interface IndicatorStyles {
|
|
1227
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
391
1228
|
container?: null | ContainerStylingProperties;
|
|
1229
|
+
/** Background color and gradient styles. */
|
|
392
1230
|
background?: null | BackgroundStylingProperties;
|
|
1231
|
+
/** Border width, color, and radius styles. */
|
|
393
1232
|
border?: null | BorderStylingProperties;
|
|
1233
|
+
/** Width and height dimension styles. */
|
|
394
1234
|
dimension?: null | DimensionStylingProperties;
|
|
1235
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
395
1236
|
flexChild?: null | FlexChildStylingProperties;
|
|
1237
|
+
/** Padding and margin spacing styles. */
|
|
396
1238
|
spacing?: null | SpacingStylingProperties;
|
|
1239
|
+
/** Text styling for number-based indicators. */
|
|
397
1240
|
text?: null | TextStylingProperties;
|
|
398
1241
|
}
|
|
1242
|
+
/**
|
|
1243
|
+
* Tests application domain state in the full layout schema context. Domain
|
|
1244
|
+
* state is managed by the host application and represents high-level
|
|
1245
|
+
* application state.
|
|
1246
|
+
*/
|
|
399
1247
|
export interface LayoutSchemaDomainStatePredicate {
|
|
1248
|
+
/** The domain state key to check. */
|
|
400
1249
|
key: DomainStateKey;
|
|
1250
|
+
/** The comparison operator. */
|
|
401
1251
|
condition: OrderableWhenCondition;
|
|
1252
|
+
/** The integer value to compare the domain state against. */
|
|
402
1253
|
value: number;
|
|
403
1254
|
}
|
|
1255
|
+
/** Platform-specific settings for the layout behaviour. */
|
|
404
1256
|
export interface LayoutSettings {
|
|
1257
|
+
/** Whether to automatically close the layout after the user completes the interaction flow. */
|
|
405
1258
|
closeOnComplete?: null | boolean;
|
|
406
1259
|
}
|
|
1260
|
+
/**
|
|
1261
|
+
* Visual style properties for the OneByOneDistribution container.
|
|
1262
|
+
* Contains the standard style categories: container layout, background colors,
|
|
1263
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
1264
|
+
*/
|
|
407
1265
|
export interface OneByOneDistributionStyles {
|
|
1266
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
408
1267
|
container?: null | ContainerStylingProperties;
|
|
1268
|
+
/** Background color and gradient styles. */
|
|
409
1269
|
background?: null | BackgroundStylingProperties;
|
|
1270
|
+
/** Border width, color, and radius styles. */
|
|
410
1271
|
border?: null | BorderStylingProperties;
|
|
1272
|
+
/** Width and height dimension styles. */
|
|
411
1273
|
dimension?: null | DimensionStylingProperties;
|
|
1274
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
412
1275
|
flexChild?: null | FlexChildStylingProperties;
|
|
1276
|
+
/** Padding and margin spacing styles. */
|
|
413
1277
|
spacing?: null | SpacingStylingProperties;
|
|
414
1278
|
}
|
|
1279
|
+
/**
|
|
1280
|
+
* Styling elements for the OneByOneDistribution container.
|
|
1281
|
+
* The `own` array contains stateless styling blocks applied to the distribution container itself.
|
|
1282
|
+
*/
|
|
415
1283
|
export interface OneByOneDistributionElements {
|
|
1284
|
+
/** Array of stateless styling blocks for the distribution container. */
|
|
416
1285
|
own: StatelessStylingBlock<OneByOneDistributionStyles>[];
|
|
417
1286
|
}
|
|
1287
|
+
/**
|
|
1288
|
+
* Presents offers one at a time, allowing the user to progress through them sequentially.
|
|
1289
|
+
* Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
|
|
1290
|
+
*
|
|
1291
|
+
* Pair with ProgressControl nodes to enable forward/backward navigation between offers.
|
|
1292
|
+
* Pair with ProgressIndicator to show the user's current position.
|
|
1293
|
+
* Do NOT use this for displaying all offers at once; use StackedDistribution instead.
|
|
1294
|
+
*/
|
|
418
1295
|
export interface OneByOneDistributionModel<Predicates> {
|
|
1296
|
+
/**
|
|
1297
|
+
* Visual styles for the distribution container.
|
|
1298
|
+
* Uses the LayoutStyle wrapper with conditional style transitions.
|
|
1299
|
+
*/
|
|
419
1300
|
styles?: null | LayoutStyle<OneByOneDistributionElements, ConditionalStyleTransition<OneByOneDistributionTransitions, Predicates>>;
|
|
1301
|
+
/**
|
|
1302
|
+
* The animation transition between offers.
|
|
1303
|
+
* Defines how the current offer exits and the next offer enters.
|
|
1304
|
+
*/
|
|
420
1305
|
transition: Transition;
|
|
421
1306
|
}
|
|
1307
|
+
/** Transition styles for animating OneByOneDistribution style changes. */
|
|
422
1308
|
export interface OneByOneDistributionTransitions {
|
|
1309
|
+
/** Transition properties for the distribution container's own styles. */
|
|
423
1310
|
own?: null | OneByOneDistributionStyles;
|
|
424
1311
|
}
|
|
1312
|
+
/**
|
|
1313
|
+
* Available style categories for the Overlay content element. Each optional field enables a
|
|
1314
|
+
* specific category of visual styling. Omit a field to leave that category unstyled.
|
|
1315
|
+
*/
|
|
425
1316
|
export interface OverlayStyles {
|
|
1317
|
+
/**
|
|
1318
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
1319
|
+
* MUST be used to control how children are arranged within the overlay content area.
|
|
1320
|
+
*/
|
|
426
1321
|
container?: null | ContainerStylingProperties;
|
|
1322
|
+
/**
|
|
1323
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
1324
|
+
* behind the overlay content.
|
|
1325
|
+
*/
|
|
427
1326
|
background?: null | BackgroundStylingProperties;
|
|
1327
|
+
/**
|
|
1328
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
1329
|
+
* rounded corners to the overlay content area.
|
|
1330
|
+
*/
|
|
428
1331
|
border?: null | BorderStylingProperties;
|
|
1332
|
+
/**
|
|
1333
|
+
* Width, height and rotation properties. Use to explicitly size the overlay content area.
|
|
1334
|
+
* Do NOT set width/height if the overlay should size to its content.
|
|
1335
|
+
*/
|
|
429
1336
|
dimension?: null | DimensionStylingProperties;
|
|
1337
|
+
/**
|
|
1338
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
1339
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
1340
|
+
*/
|
|
430
1341
|
flexChild?: null | FlexChildStylingProperties;
|
|
1342
|
+
/**
|
|
1343
|
+
* Padding, margin and offset properties. Use to add spacing inside or outside the
|
|
1344
|
+
* overlay content area.
|
|
1345
|
+
*/
|
|
431
1346
|
spacing?: null | SpacingStylingProperties;
|
|
432
1347
|
}
|
|
1348
|
+
/**
|
|
1349
|
+
* Style categories for the Overlay wrapper (backdrop) element. Controls the appearance of
|
|
1350
|
+
* the area behind the overlay content.
|
|
1351
|
+
*/
|
|
433
1352
|
export interface OverlayWrapperStyles {
|
|
1353
|
+
/** Layout properties for the wrapper container that positions the overlay content. */
|
|
434
1354
|
container?: null | ContainerStylingProperties;
|
|
1355
|
+
/**
|
|
1356
|
+
* Background color for the backdrop. Typically a semi-transparent color (using `#AARRGGBB`
|
|
1357
|
+
* format, e.g. `#80000000`) to dim the content behind the overlay.
|
|
1358
|
+
*/
|
|
435
1359
|
background?: null | BackgroundStylingProperties;
|
|
436
1360
|
}
|
|
1361
|
+
/**
|
|
1362
|
+
* Styleable elements of the Overlay node. The Overlay has two styleable elements: its own
|
|
1363
|
+
* content area and its wrapper (backdrop).
|
|
1364
|
+
*/
|
|
437
1365
|
export interface OverlayElements {
|
|
1366
|
+
/**
|
|
1367
|
+
* Style blocks for the overlay content area. The array represents breakpoint-specific
|
|
1368
|
+
* styles: first item is the default (no breakpoint), subsequent items correspond to
|
|
1369
|
+
* breakpoints in ascending order. MUST contain at least one item for the default style.
|
|
1370
|
+
*/
|
|
438
1371
|
own: BasicStateStylingBlock<OverlayStyles>[];
|
|
1372
|
+
/**
|
|
1373
|
+
* Style blocks for the overlay wrapper (backdrop). The array represents
|
|
1374
|
+
* breakpoint-specific styles: first item is the default, subsequent items correspond
|
|
1375
|
+
* to breakpoints in ascending order.
|
|
1376
|
+
*/
|
|
439
1377
|
wrapper: BasicStateStylingBlock<OverlayWrapperStyles>[];
|
|
440
1378
|
}
|
|
1379
|
+
/**
|
|
1380
|
+
* A modal overlay that appears on top of the main content with a backdrop. Use for dialogs,
|
|
1381
|
+
* confirmations, and modal interactions that require user attention. The overlay blocks
|
|
1382
|
+
* interaction with the content behind it. Do NOT use Overlay for inline content layering;
|
|
1383
|
+
* use ZStack instead.
|
|
1384
|
+
*/
|
|
441
1385
|
export interface OverlayModel<Children, Predicates> {
|
|
1386
|
+
/**
|
|
1387
|
+
* If true, clicking the backdrop area closes the overlay. MUST be set to true when the
|
|
1388
|
+
* overlay is dismissible. Set to false when the user MUST interact with the overlay
|
|
1389
|
+
* content before proceeding (e.g., mandatory confirmations).
|
|
1390
|
+
*/
|
|
442
1391
|
allowBackdropToClose: boolean;
|
|
1392
|
+
/**
|
|
1393
|
+
* Accessibility label for screen readers. MUST be set to describe the purpose of the
|
|
1394
|
+
* overlay (e.g., "Confirmation dialog" or "Settings panel").
|
|
1395
|
+
*/
|
|
443
1396
|
a11yLabel?: null | string;
|
|
1397
|
+
/**
|
|
1398
|
+
* Visual styles for this overlay. See styling documentation for the structure. Omit to
|
|
1399
|
+
* use default (unstyled) rendering.
|
|
1400
|
+
*/
|
|
444
1401
|
styles?: null | LayoutStyle<OverlayElements, ConditionalStyleTransition<OverlayTransitions, Predicates>>;
|
|
1402
|
+
/** The content displayed within the overlay. */
|
|
445
1403
|
children: Children[];
|
|
446
1404
|
}
|
|
1405
|
+
/** Transition styles for the Overlay node. Use to animate style changes smoothly. */
|
|
447
1406
|
export interface OverlayTransitions {
|
|
1407
|
+
/**
|
|
1408
|
+
* Transition properties for the overlay content area. Specifies which style properties
|
|
1409
|
+
* should animate and their duration/easing when values change.
|
|
1410
|
+
*/
|
|
448
1411
|
own?: null | OverlayStyles;
|
|
1412
|
+
/** Transition properties for the overlay wrapper (backdrop). */
|
|
449
1413
|
wrapper?: null | OverlayWrapperStyles;
|
|
450
1414
|
}
|
|
1415
|
+
/**
|
|
1416
|
+
* Tests the position index of the current item within a collection. Use to
|
|
1417
|
+
* style items differently based on their position (e.g. first item, last item).
|
|
1418
|
+
*/
|
|
451
1419
|
export interface PositionPredicate {
|
|
1420
|
+
/** The comparison operator. */
|
|
452
1421
|
condition: OrderableWhenCondition;
|
|
1422
|
+
/**
|
|
1423
|
+
* The position index to compare against. MUST be a string representation
|
|
1424
|
+
* of a number, e.g. "0" for the first item.
|
|
1425
|
+
*/
|
|
453
1426
|
value: string;
|
|
454
1427
|
}
|
|
1428
|
+
/**
|
|
1429
|
+
* Visual style properties for the ProgressControl button.
|
|
1430
|
+
* Contains the standard style categories: container layout, background colors,
|
|
1431
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
1432
|
+
*/
|
|
455
1433
|
export interface ProgressControlStyle {
|
|
1434
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
456
1435
|
container?: null | ContainerStylingProperties;
|
|
1436
|
+
/** Background color and gradient styles. */
|
|
457
1437
|
background?: null | BackgroundStylingProperties;
|
|
1438
|
+
/** Border width, color, and radius styles. */
|
|
458
1439
|
border?: null | BorderStylingProperties;
|
|
1440
|
+
/** Width and height dimension styles. */
|
|
459
1441
|
dimension?: null | DimensionStylingProperties;
|
|
1442
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
460
1443
|
flexChild?: null | FlexChildStylingProperties;
|
|
1444
|
+
/** Padding and margin spacing styles. */
|
|
461
1445
|
spacing?: null | SpacingStylingProperties;
|
|
462
1446
|
}
|
|
1447
|
+
/**
|
|
1448
|
+
* Styling elements for the ProgressControl button.
|
|
1449
|
+
* The `own` array contains state-dependent styling blocks (e.g. default, pressed, disabled)
|
|
1450
|
+
* applied to the control button itself.
|
|
1451
|
+
*/
|
|
463
1452
|
export interface ProgressControlElements {
|
|
1453
|
+
/**
|
|
1454
|
+
* Array of state-dependent styling blocks for the control button.
|
|
1455
|
+
* Each block targets a specific interaction state (default, pressed, disabled, etc.).
|
|
1456
|
+
*/
|
|
464
1457
|
own: BasicStateStylingBlock<ProgressControlStyle>[];
|
|
465
1458
|
}
|
|
466
|
-
|
|
1459
|
+
/** The direction in which the progress control advances offers. */
|
|
1460
|
+
export type ProgressionDirection =
|
|
1461
|
+
/** Advance to the next offer or group. */
|
|
1462
|
+
"Forward"
|
|
1463
|
+
/** Return to the previous offer or group. */
|
|
1464
|
+
| "Backward";
|
|
1465
|
+
/**
|
|
1466
|
+
* A button that advances or reverses offer progression.
|
|
1467
|
+
* Used with OneByOneDistribution or GroupedDistribution for navigation.
|
|
1468
|
+
*
|
|
1469
|
+
* MUST specify a `direction` (Forward or Backward).
|
|
1470
|
+
* Pair with a distribution node for the control to have an effect.
|
|
1471
|
+
* Typically contains an arrow icon as child content.
|
|
1472
|
+
*/
|
|
467
1473
|
export interface ProgressControlModel<Children, Predicates> {
|
|
1474
|
+
/** Visual styles for the control. Uses the LayoutStyle wrapper with conditional style transitions. */
|
|
468
1475
|
styles?: null | LayoutStyle<ProgressControlElements, ConditionalStyleTransition<ProgressControlTransitions, Predicates>>;
|
|
1476
|
+
/** The direction to progress. MUST be either Forward or Backward. */
|
|
469
1477
|
direction: ProgressionDirection;
|
|
1478
|
+
/**
|
|
1479
|
+
* Child nodes forming the button content (e.g. an arrow icon).
|
|
1480
|
+
* MUST contain at least one child for the control to have visible content.
|
|
1481
|
+
*/
|
|
470
1482
|
children: Children[];
|
|
471
1483
|
}
|
|
1484
|
+
/** Transition styles for animating ProgressControl style changes. */
|
|
472
1485
|
export interface ProgressControlTransitions {
|
|
1486
|
+
/** Transition properties for the control button's own styles. */
|
|
473
1487
|
own?: null | ProgressControlStyle;
|
|
474
1488
|
}
|
|
1489
|
+
/**
|
|
1490
|
+
* Visual style properties for the ProgressIndicator container.
|
|
1491
|
+
* Contains the standard style categories for the outer indicator wrapper.
|
|
1492
|
+
*/
|
|
475
1493
|
export interface ProgressIndicatorStyles {
|
|
1494
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
476
1495
|
container?: null | ContainerStylingProperties;
|
|
1496
|
+
/** Background color and gradient styles. */
|
|
477
1497
|
background?: null | BackgroundStylingProperties;
|
|
1498
|
+
/** Border width, color, and radius styles. */
|
|
478
1499
|
border?: null | BorderStylingProperties;
|
|
1500
|
+
/** Width and height dimension styles. */
|
|
479
1501
|
dimension?: null | DimensionStylingProperties;
|
|
1502
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
480
1503
|
flexChild?: null | FlexChildStylingProperties;
|
|
1504
|
+
/** Padding and margin spacing styles. */
|
|
481
1505
|
spacing?: null | SpacingStylingProperties;
|
|
482
1506
|
}
|
|
1507
|
+
/**
|
|
1508
|
+
* Styling elements for the ProgressIndicator.
|
|
1509
|
+
* Contains styling blocks for the container, individual indicators, and special indicator states.
|
|
1510
|
+
*/
|
|
483
1511
|
export interface ProgressIndicatorElements {
|
|
1512
|
+
/** Array of state-dependent styling blocks for the indicator container. */
|
|
484
1513
|
own: BasicStateStylingBlock<ProgressIndicatorStyles>[];
|
|
1514
|
+
/** Styling blocks for each individual indicator item (default state). */
|
|
485
1515
|
indicator: BasicStateStylingBlock<IndicatorStyles>[];
|
|
1516
|
+
/**
|
|
1517
|
+
* Optional styling blocks for the currently active indicator.
|
|
1518
|
+
* If omitted, the default indicator styling is used.
|
|
1519
|
+
*/
|
|
486
1520
|
activeIndicator?: null | BasicStateStylingBlock<IndicatorStyles>[];
|
|
1521
|
+
/**
|
|
1522
|
+
* Optional styling blocks for indicators that have been seen/visited.
|
|
1523
|
+
* If omitted, the default indicator styling is used.
|
|
1524
|
+
*/
|
|
487
1525
|
seenIndicator?: null | BasicStateStylingBlock<IndicatorStyles>[];
|
|
488
1526
|
}
|
|
1527
|
+
/**
|
|
1528
|
+
* Displays visual progress indicators (dots, bars) showing the user's position
|
|
1529
|
+
* within a series of offers.
|
|
1530
|
+
*
|
|
1531
|
+
* MUST be paired with a distribution node (OneByOneDistribution, GroupedDistribution, etc.)
|
|
1532
|
+
* to track position. The indicator automatically reflects the current offer position.
|
|
1533
|
+
* Use `indicator` to specify the type (e.g. "dot", "bar", "number").
|
|
1534
|
+
*/
|
|
489
1535
|
export interface ProgressIndicatorModel<Predicates> {
|
|
1536
|
+
/**
|
|
1537
|
+
* Visual styles for the progress indicators.
|
|
1538
|
+
* Uses the LayoutStyle wrapper with conditional style transitions.
|
|
1539
|
+
*/
|
|
490
1540
|
styles?: null | LayoutStyle<ProgressIndicatorElements, ConditionalStyleTransition<ProgressIndicatorTransitions, Predicates>>;
|
|
1541
|
+
/**
|
|
1542
|
+
* The type of indicator to display (e.g. "dot", "bar", "number").
|
|
1543
|
+
* MUST be a valid indicator type string.
|
|
1544
|
+
*/
|
|
491
1545
|
indicator: string;
|
|
1546
|
+
/**
|
|
1547
|
+
* The initial position of the indicator (zero-indexed).
|
|
1548
|
+
* If omitted, defaults to position 0.
|
|
1549
|
+
*/
|
|
492
1550
|
startPosition?: null | number;
|
|
1551
|
+
/**
|
|
1552
|
+
* If true, the indicator is hidden from screen readers.
|
|
1553
|
+
* Set to true when the indicator is purely decorative.
|
|
1554
|
+
*/
|
|
493
1555
|
accessibilityHidden?: null | boolean;
|
|
494
1556
|
}
|
|
1557
|
+
/**
|
|
1558
|
+
* Transition styles for animating ProgressIndicator style changes.
|
|
1559
|
+
* Defines transitions for the container and each indicator state.
|
|
1560
|
+
*/
|
|
495
1561
|
export interface ProgressIndicatorTransitions {
|
|
1562
|
+
/** Transition properties for the indicator container's own styles. */
|
|
496
1563
|
own?: null | ProgressIndicatorStyles;
|
|
1564
|
+
/** Transition properties for the default indicator styles. */
|
|
497
1565
|
indicator?: null | IndicatorStyles;
|
|
1566
|
+
/** Transition properties for the active indicator styles. */
|
|
498
1567
|
activeIndicator?: null | IndicatorStyles;
|
|
1568
|
+
/** Transition properties for the seen indicator styles. */
|
|
499
1569
|
seenIndicator?: null | IndicatorStyles;
|
|
500
1570
|
}
|
|
1571
|
+
/**
|
|
1572
|
+
* Tests which offer index is currently visible in a carousel or progression.
|
|
1573
|
+
* Use 0 for the first offer, -1 for the last offer.
|
|
1574
|
+
*/
|
|
501
1575
|
export interface ProgressionPredicate {
|
|
1576
|
+
/** The comparison operator. */
|
|
502
1577
|
condition: OrderableWhenCondition;
|
|
1578
|
+
/**
|
|
1579
|
+
* The progression index to compare against. MUST be a string representation
|
|
1580
|
+
* of a number. Use "0" for the first offer, "-1" for the last offer.
|
|
1581
|
+
*/
|
|
503
1582
|
value: string;
|
|
504
1583
|
}
|
|
1584
|
+
/** Visual styles for the RichText node. */
|
|
505
1585
|
export interface RichTextStyle {
|
|
1586
|
+
/** Width, height and rotation properties. */
|
|
506
1587
|
dimension?: null | DimensionStylingProperties;
|
|
1588
|
+
/** Properties controlling behaviour as a flex child. */
|
|
507
1589
|
flexChild?: null | FlexChildStylingProperties;
|
|
1590
|
+
/** Padding, margin and offset properties. */
|
|
508
1591
|
spacing?: null | SpacingStylingProperties;
|
|
1592
|
+
/** Background color and image properties. */
|
|
509
1593
|
background?: null | BackgroundStylingProperties;
|
|
1594
|
+
/** Typography properties. */
|
|
510
1595
|
text?: null | TextStylingProperties;
|
|
511
1596
|
}
|
|
1597
|
+
/** Style elements for the RichText node. */
|
|
512
1598
|
export interface RichTextElements {
|
|
1599
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
513
1600
|
own: BasicStateStylingBlock<RichTextStyle>[];
|
|
1601
|
+
/** Style blocks for link elements within the rich text content. */
|
|
514
1602
|
link?: null | BasicStateStylingBlock<InLineTextStyle>[];
|
|
515
1603
|
}
|
|
1604
|
+
/** Renders HTML-formatted text content. Supports `<a>`, `<strong>`, `<em>`, `<br>` and other inline HTML elements. Use BasicText for plain text without HTML. */
|
|
516
1605
|
export interface RichTextModel<Predicates> {
|
|
1606
|
+
/** Visual styles for the text element. */
|
|
517
1607
|
styles?: null | LayoutStyle<RichTextElements, ConditionalStyleTransition<RichTextTransitions, Predicates>>;
|
|
1608
|
+
/** Controls how links within the rich text are opened when clicked. */
|
|
518
1609
|
openLinks?: null | LinkOpenTarget;
|
|
1610
|
+
/** The HTML text content to display. Supports inline HTML tags and data binding placeholders in the format %^DATA.key^% or %^ATTRIBUTE.key^%. */
|
|
519
1611
|
value: string;
|
|
520
1612
|
}
|
|
1613
|
+
/** Transition definitions for the RichText node. */
|
|
521
1614
|
export interface RichTextTransitions {
|
|
1615
|
+
/** Transition properties for the primary element. */
|
|
522
1616
|
own?: null | RichTextStyle;
|
|
1617
|
+
/** Transition properties for link elements. */
|
|
523
1618
|
link?: null | InLineTextStyle;
|
|
524
1619
|
}
|
|
1620
|
+
/**
|
|
1621
|
+
* The top-level schema structure for an outer layout. Contains the layout tree,
|
|
1622
|
+
* breakpoint definitions, settings and display configuration.
|
|
1623
|
+
*/
|
|
525
1624
|
export interface RootSchemaModel<Layout, Display, Settings> {
|
|
1625
|
+
/**
|
|
1626
|
+
* Map of breakpoint names to viewport width thresholds in platform units.
|
|
1627
|
+
* Defines responsive breakpoints for the layout.
|
|
1628
|
+
*/
|
|
526
1629
|
breakpoints: Record<string, number>;
|
|
1630
|
+
/** The root node of the layout tree. */
|
|
527
1631
|
layout: Layout;
|
|
1632
|
+
/** Platform-specific layout settings. */
|
|
528
1633
|
settings?: null | Settings;
|
|
1634
|
+
/** Controls how the layout is displayed (fullscreen, embedded, etc). */
|
|
529
1635
|
display?: null | Display;
|
|
530
1636
|
}
|
|
1637
|
+
/**
|
|
1638
|
+
* Available style categories for the Row element. Each optional field enables a specific
|
|
1639
|
+
* category of visual styling. Omit a field to leave that category unstyled.
|
|
1640
|
+
*/
|
|
531
1641
|
export interface RowStyle {
|
|
1642
|
+
/**
|
|
1643
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
1644
|
+
* MUST be used to control how children are arranged within the row.
|
|
1645
|
+
*/
|
|
532
1646
|
container?: null | ContainerStylingProperties;
|
|
1647
|
+
/**
|
|
1648
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
1649
|
+
* behind the row content.
|
|
1650
|
+
*/
|
|
533
1651
|
background?: null | BackgroundStylingProperties;
|
|
1652
|
+
/**
|
|
1653
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
1654
|
+
* rounded corners to the row.
|
|
1655
|
+
*/
|
|
534
1656
|
border?: null | BorderStylingProperties;
|
|
1657
|
+
/**
|
|
1658
|
+
* Width, height and rotation properties. Use to explicitly size the row or apply rotation
|
|
1659
|
+
* transforms. Do NOT set width/height if the row should size to its content.
|
|
1660
|
+
*/
|
|
535
1661
|
dimension?: null | DimensionStylingProperties;
|
|
1662
|
+
/**
|
|
1663
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
1664
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
1665
|
+
*/
|
|
536
1666
|
flexChild?: null | FlexChildStylingProperties;
|
|
1667
|
+
/** Padding, margin and offset properties. Use to add spacing inside or outside the row. */
|
|
537
1668
|
spacing?: null | SpacingStylingProperties;
|
|
538
1669
|
}
|
|
1670
|
+
/**
|
|
1671
|
+
* Styleable elements of the Row node. The Row has a single styleable element: its own
|
|
1672
|
+
* container.
|
|
1673
|
+
*/
|
|
539
1674
|
export interface RowElements {
|
|
1675
|
+
/**
|
|
1676
|
+
* Style blocks for the row container itself. The array represents breakpoint-specific
|
|
1677
|
+
* styles: first item is the default (no breakpoint), subsequent items correspond to
|
|
1678
|
+
* breakpoints in ascending order. MUST contain at least one item for the default style.
|
|
1679
|
+
*/
|
|
540
1680
|
own: BasicStateStylingBlock<RowStyle>[];
|
|
541
1681
|
}
|
|
1682
|
+
/**
|
|
1683
|
+
* A horizontal flex container that arranges its children in a row (left to right). Use for
|
|
1684
|
+
* horizontal layouts. Children are laid out along the horizontal axis by default. To control
|
|
1685
|
+
* alignment and distribution, configure the container styles. Do NOT nest Rows unnecessarily
|
|
1686
|
+
* when a single Row with appropriate styling would suffice.
|
|
1687
|
+
*/
|
|
542
1688
|
export interface RowModel<Children, Predicates> {
|
|
1689
|
+
/**
|
|
1690
|
+
* Accessibility label for screen readers. Omit if the row is purely decorative or its
|
|
1691
|
+
* children already provide sufficient accessible labels. MUST be set when the row
|
|
1692
|
+
* conveys meaning not available from its children alone.
|
|
1693
|
+
*/
|
|
543
1694
|
a11yLabel?: null | string;
|
|
1695
|
+
/**
|
|
1696
|
+
* Visual styles for this row. See styling documentation for the structure. Omit to use
|
|
1697
|
+
* default (unstyled) rendering.
|
|
1698
|
+
*/
|
|
544
1699
|
styles?: null | LayoutStyle<RowElements, ConditionalStyleTransition<RowTransitions, Predicates>>;
|
|
1700
|
+
/**
|
|
1701
|
+
* Child nodes rendered horizontally within this row.
|
|
1702
|
+
* Children are laid out left to right in source order.
|
|
1703
|
+
*/
|
|
545
1704
|
children: Children[];
|
|
546
1705
|
}
|
|
1706
|
+
/** Transition styles for the Row node. Use to animate style changes smoothly. */
|
|
547
1707
|
export interface RowTransitions {
|
|
1708
|
+
/**
|
|
1709
|
+
* Transition properties for the row container. Specifies which style properties
|
|
1710
|
+
* should animate and their duration/easing when values change.
|
|
1711
|
+
*/
|
|
548
1712
|
own?: null | RowStyle;
|
|
549
1713
|
}
|
|
1714
|
+
/**
|
|
1715
|
+
* Available style categories for the ScrollableColumn element. Each optional field enables a
|
|
1716
|
+
* specific category of visual styling. Omit a field to leave that category unstyled.
|
|
1717
|
+
*/
|
|
550
1718
|
export interface ScrollableColumnStyle {
|
|
1719
|
+
/**
|
|
1720
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
1721
|
+
* MUST be used to control how children are arranged within the scrollable column.
|
|
1722
|
+
*/
|
|
551
1723
|
container?: null | ContainerStylingProperties;
|
|
1724
|
+
/**
|
|
1725
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
1726
|
+
* behind the scrollable column content.
|
|
1727
|
+
*/
|
|
552
1728
|
background?: null | BackgroundStylingProperties;
|
|
1729
|
+
/**
|
|
1730
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
1731
|
+
* rounded corners to the scrollable column.
|
|
1732
|
+
*/
|
|
553
1733
|
border?: null | BorderStylingProperties;
|
|
1734
|
+
/**
|
|
1735
|
+
* Width, height and rotation properties. MUST set a constrained height for scrolling to
|
|
1736
|
+
* work. Without a height constraint, the container will expand to fit all content and
|
|
1737
|
+
* scrolling will not occur.
|
|
1738
|
+
*/
|
|
554
1739
|
dimension?: null | DimensionStylingProperties;
|
|
1740
|
+
/**
|
|
1741
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
1742
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
1743
|
+
*/
|
|
555
1744
|
flexChild?: null | FlexChildStylingProperties;
|
|
1745
|
+
/**
|
|
1746
|
+
* Padding, margin and offset properties. Use to add spacing inside or outside the
|
|
1747
|
+
* scrollable column.
|
|
1748
|
+
*/
|
|
556
1749
|
spacing?: null | SpacingStylingProperties;
|
|
557
1750
|
}
|
|
1751
|
+
/**
|
|
1752
|
+
* Styleable elements of the ScrollableColumn node. The ScrollableColumn has a single
|
|
1753
|
+
* styleable element: its own container.
|
|
1754
|
+
*/
|
|
558
1755
|
export interface ScrollableColumnElements {
|
|
1756
|
+
/**
|
|
1757
|
+
* Style blocks for the scrollable column container itself. The array represents
|
|
1758
|
+
* breakpoint-specific styles: first item is the default (no breakpoint), subsequent
|
|
1759
|
+
* items correspond to breakpoints in ascending order. MUST contain at least one item
|
|
1760
|
+
* for the default style.
|
|
1761
|
+
*/
|
|
559
1762
|
own: BasicStateStylingBlock<ScrollableColumnStyle>[];
|
|
560
1763
|
}
|
|
1764
|
+
/**
|
|
1765
|
+
* A vertical scrollable container. Children that exceed the container height can be scrolled
|
|
1766
|
+
* into view. Use when content may overflow vertically (e.g., long lists, content feeds).
|
|
1767
|
+
* MUST have a constrained height via dimension styles for scrolling to activate. Do NOT use
|
|
1768
|
+
* ScrollableColumn when a regular Column would suffice (i.e., when content fits without
|
|
1769
|
+
* scrolling).
|
|
1770
|
+
*/
|
|
561
1771
|
export interface ScrollableColumnModel<Children, Predicates> {
|
|
1772
|
+
/**
|
|
1773
|
+
* Visual styles for this scrollable column. See styling documentation for the structure.
|
|
1774
|
+
* Omit to use default (unstyled) rendering.
|
|
1775
|
+
*/
|
|
562
1776
|
styles?: null | LayoutStyle<ScrollableColumnElements, ConditionalStyleTransition<ScrollableColumnTransitions, Predicates>>;
|
|
1777
|
+
/**
|
|
1778
|
+
* Child nodes rendered vertically within this scrollable column. MUST contain at least
|
|
1779
|
+
* one child. Children are laid out top to bottom in source order and scroll vertically
|
|
1780
|
+
* when they exceed the container height.
|
|
1781
|
+
*/
|
|
563
1782
|
children: Children[];
|
|
564
1783
|
}
|
|
1784
|
+
/** Transition styles for the ScrollableColumn node. Use to animate style changes smoothly. */
|
|
565
1785
|
export interface ScrollableColumnTransitions {
|
|
1786
|
+
/**
|
|
1787
|
+
* Transition properties for the scrollable column container. Specifies which style
|
|
1788
|
+
* properties should animate and their duration/easing when values change.
|
|
1789
|
+
*/
|
|
566
1790
|
own?: null | ScrollableColumnStyle;
|
|
567
1791
|
}
|
|
1792
|
+
/**
|
|
1793
|
+
* Available style categories for the ScrollableRow element. Each optional field enables a
|
|
1794
|
+
* specific category of visual styling. Omit a field to leave that category unstyled.
|
|
1795
|
+
*/
|
|
568
1796
|
export interface ScrollableRowStyle {
|
|
1797
|
+
/**
|
|
1798
|
+
* Layout properties for the flex container (justification, alignment, gap, overflow).
|
|
1799
|
+
* MUST be used to control how children are arranged within the scrollable row.
|
|
1800
|
+
*/
|
|
569
1801
|
container?: null | ContainerStylingProperties;
|
|
1802
|
+
/**
|
|
1803
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
1804
|
+
* behind the scrollable row content.
|
|
1805
|
+
*/
|
|
570
1806
|
background?: null | BackgroundStylingProperties;
|
|
1807
|
+
/**
|
|
1808
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
1809
|
+
* rounded corners to the scrollable row.
|
|
1810
|
+
*/
|
|
571
1811
|
border?: null | BorderStylingProperties;
|
|
1812
|
+
/**
|
|
1813
|
+
* Width, height and rotation properties. MUST set a constrained width for scrolling to
|
|
1814
|
+
* work. Without a width constraint, the container will expand to fit all content and
|
|
1815
|
+
* scrolling will not occur.
|
|
1816
|
+
*/
|
|
572
1817
|
dimension?: null | DimensionStylingProperties;
|
|
1818
|
+
/**
|
|
1819
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
1820
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
1821
|
+
*/
|
|
573
1822
|
flexChild?: null | FlexChildStylingProperties;
|
|
1823
|
+
/**
|
|
1824
|
+
* Padding, margin and offset properties. Use to add spacing inside or outside the
|
|
1825
|
+
* scrollable row.
|
|
1826
|
+
*/
|
|
574
1827
|
spacing?: null | SpacingStylingProperties;
|
|
575
1828
|
}
|
|
1829
|
+
/**
|
|
1830
|
+
* Styleable elements of the ScrollableRow node. The ScrollableRow has a single styleable
|
|
1831
|
+
* element: its own container.
|
|
1832
|
+
*/
|
|
576
1833
|
export interface ScrollableRowElements {
|
|
1834
|
+
/**
|
|
1835
|
+
* Style blocks for the scrollable row container itself. The array represents
|
|
1836
|
+
* breakpoint-specific styles: first item is the default (no breakpoint), subsequent
|
|
1837
|
+
* items correspond to breakpoints in ascending order. MUST contain at least one item
|
|
1838
|
+
* for the default style.
|
|
1839
|
+
*/
|
|
577
1840
|
own: BasicStateStylingBlock<ScrollableRowStyle>[];
|
|
578
1841
|
}
|
|
1842
|
+
/**
|
|
1843
|
+
* A horizontal scrollable container. Children that exceed the container width can be scrolled
|
|
1844
|
+
* into view. Use when content may overflow horizontally (e.g., carousels, horizontal lists).
|
|
1845
|
+
* MUST have a constrained width via dimension styles for scrolling to activate. Do NOT use
|
|
1846
|
+
* ScrollableRow when a regular Row would suffice (i.e., when content fits without scrolling).
|
|
1847
|
+
*/
|
|
579
1848
|
export interface ScrollableRowModel<Children, Predicates> {
|
|
1849
|
+
/**
|
|
1850
|
+
* Visual styles for this scrollable row. See styling documentation for the structure.
|
|
1851
|
+
* Omit to use default (unstyled) rendering.
|
|
1852
|
+
*/
|
|
580
1853
|
styles?: null | LayoutStyle<ScrollableRowElements, ConditionalStyleTransition<ScrollableRowTransitions, Predicates>>;
|
|
1854
|
+
/**
|
|
1855
|
+
* Child nodes rendered horizontally within this scrollable row. MUST contain at least
|
|
1856
|
+
* one child. Children are laid out left to right in source order and scroll horizontally
|
|
1857
|
+
* when they exceed the container width.
|
|
1858
|
+
*/
|
|
581
1859
|
children: Children[];
|
|
582
1860
|
}
|
|
1861
|
+
/** Transition styles for the ScrollableRow node. Use to animate style changes smoothly. */
|
|
583
1862
|
export interface ScrollableRowTransitions {
|
|
1863
|
+
/**
|
|
1864
|
+
* Transition properties for the scrollable row container. Specifies which style
|
|
1865
|
+
* properties should animate and their duration/easing when values change.
|
|
1866
|
+
*/
|
|
584
1867
|
own?: null | ScrollableRowStyle;
|
|
585
1868
|
}
|
|
1869
|
+
/**
|
|
1870
|
+
* Visual style properties for the SlideStateTrigger container.
|
|
1871
|
+
* Contains the standard style categories for the slider's outer container.
|
|
1872
|
+
*/
|
|
586
1873
|
export interface SlideStateTriggerOwnStyles {
|
|
1874
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
587
1875
|
container?: null | ContainerStylingProperties;
|
|
1876
|
+
/** Background color and gradient styles. */
|
|
588
1877
|
background?: null | BackgroundStylingProperties;
|
|
1878
|
+
/** Border width, color, and radius styles. */
|
|
589
1879
|
border?: null | BorderStylingProperties;
|
|
1880
|
+
/** Width and height dimension styles. */
|
|
590
1881
|
dimension?: null | DimensionStylingProperties;
|
|
1882
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
591
1883
|
flexChild?: null | FlexChildStylingProperties;
|
|
1884
|
+
/** Padding and margin spacing styles. */
|
|
592
1885
|
spacing?: null | SpacingStylingProperties;
|
|
593
1886
|
}
|
|
1887
|
+
/** Visual style properties for the slider thumb (the draggable handle). */
|
|
594
1888
|
export interface SlideStateTriggerThumbStyles {
|
|
1889
|
+
/** Text styling for the thumb label. */
|
|
595
1890
|
text?: null | TextStylingProperties;
|
|
1891
|
+
/** Background color and gradient styles for the thumb. */
|
|
596
1892
|
background?: null | BackgroundStylingProperties;
|
|
1893
|
+
/** Border width, color, and radius styles for the thumb. */
|
|
597
1894
|
border?: null | BorderStylingProperties;
|
|
1895
|
+
/** Width and height dimension styles for the thumb. */
|
|
598
1896
|
dimension?: null | DimensionStylingProperties;
|
|
1897
|
+
/** Flex child sizing and alignment styles for the thumb. */
|
|
599
1898
|
flexChild?: null | FlexChildStylingProperties;
|
|
1899
|
+
/** Padding and margin spacing styles for the thumb. */
|
|
600
1900
|
spacing?: null | SpacingStylingProperties;
|
|
601
1901
|
}
|
|
1902
|
+
/** Visual style properties for the slider label. */
|
|
602
1903
|
export interface SlideStateTriggerLabelStyles {
|
|
1904
|
+
/** Text styling for the label. */
|
|
603
1905
|
text?: null | TextStylingProperties;
|
|
1906
|
+
/** Padding and margin spacing styles for the label. */
|
|
604
1907
|
spacing?: null | SpacingStylingProperties;
|
|
605
1908
|
}
|
|
1909
|
+
/** Visual style properties for the slider fill (the filled portion of the track). */
|
|
606
1910
|
export interface SlideStateTriggerFillStyles {
|
|
1911
|
+
/** Background color and gradient styles for the fill. */
|
|
607
1912
|
background?: null | BackgroundStylingProperties;
|
|
1913
|
+
/** Border width, color, and radius styles for the fill. */
|
|
608
1914
|
border?: null | BorderStylingProperties;
|
|
609
1915
|
}
|
|
1916
|
+
/**
|
|
1917
|
+
* Styling elements for the SlideStateTrigger.
|
|
1918
|
+
* Contains styling blocks for the container, thumb, label, and fill sub-elements.
|
|
1919
|
+
*/
|
|
610
1920
|
export interface SlideStateTriggerElements {
|
|
1921
|
+
/** Array of stateless styling blocks for the slider container. */
|
|
611
1922
|
own: StatelessStylingBlock<SlideStateTriggerOwnStyles>[];
|
|
1923
|
+
/** Optional styling blocks for the slider thumb (draggable handle). */
|
|
612
1924
|
thumb?: null | StatelessStylingBlock<SlideStateTriggerThumbStyles>[];
|
|
1925
|
+
/** Optional styling blocks for the slider label. */
|
|
613
1926
|
label?: null | StatelessStylingBlock<SlideStateTriggerLabelStyles>[];
|
|
1927
|
+
/** Optional styling blocks for the slider fill (filled track portion). */
|
|
614
1928
|
fill?: null | StatelessStylingBlock<SlideStateTriggerFillStyles>[];
|
|
615
1929
|
}
|
|
1930
|
+
/** Configuration for the slider label. */
|
|
616
1931
|
export interface SlideStateTriggerLabel {
|
|
1932
|
+
/** Optional text value to display as the slider label. */
|
|
617
1933
|
value?: null | string;
|
|
618
1934
|
}
|
|
1935
|
+
/** Configuration for the slider thumb (draggable handle). */
|
|
619
1936
|
export interface SlideStateTriggerThumb {
|
|
1937
|
+
/** Optional icon name to display inside the thumb. */
|
|
620
1938
|
icon?: null | string;
|
|
621
1939
|
}
|
|
1940
|
+
/**
|
|
1941
|
+
* A slider control that updates a custom state value as the user drags.
|
|
1942
|
+
* The slider thumb can be dragged to set the state to a value proportional to the position.
|
|
1943
|
+
* Use with When nodes to conditionally show/hide content based on the slider state.
|
|
1944
|
+
*
|
|
1945
|
+
* MUST provide a `customStateKey` that matches the key in When predicates.
|
|
1946
|
+
* Optionally provide `customStateValue` to set the slider's initial position.
|
|
1947
|
+
*/
|
|
622
1948
|
export interface SlideStateTriggerModel<Predicates> {
|
|
1949
|
+
/** Visual styles for the slider. Uses the LayoutStyle wrapper with conditional style transitions. */
|
|
623
1950
|
styles?: null | LayoutStyle<SlideStateTriggerElements, ConditionalStyleTransition<SlideStateTriggerTransitions, Predicates>>;
|
|
1951
|
+
/** Configuration for the slider thumb (draggable handle). */
|
|
624
1952
|
thumb?: null | SlideStateTriggerThumb;
|
|
1953
|
+
/** Configuration for the slider label. */
|
|
625
1954
|
label?: null | SlideStateTriggerLabel;
|
|
1955
|
+
/**
|
|
1956
|
+
* The custom state key to update as the slider is dragged.
|
|
1957
|
+
* MUST match the key referenced in When node predicates.
|
|
1958
|
+
*/
|
|
626
1959
|
customStateKey: string;
|
|
1960
|
+
/**
|
|
1961
|
+
* The initial value of the custom state (slider position).
|
|
1962
|
+
* If omitted, defaults to the minimum position.
|
|
1963
|
+
*/
|
|
627
1964
|
customStateValue?: null | number;
|
|
628
1965
|
}
|
|
1966
|
+
/**
|
|
1967
|
+
* Transition styles for animating SlideStateTrigger style changes.
|
|
1968
|
+
* Defines transitions for all slider sub-elements.
|
|
1969
|
+
*/
|
|
629
1970
|
export interface SlideStateTriggerTransitions {
|
|
1971
|
+
/** Transition properties for the slider container's own styles. */
|
|
630
1972
|
own?: null | SlideStateTriggerOwnStyles;
|
|
1973
|
+
/** Transition properties for the thumb styles. */
|
|
631
1974
|
thumb?: null | SlideStateTriggerThumbStyles;
|
|
1975
|
+
/** Transition properties for the label styles. */
|
|
632
1976
|
label?: null | SlideStateTriggerLabelStyles;
|
|
1977
|
+
/** Transition properties for the fill styles. */
|
|
633
1978
|
fill?: null | SlideStateTriggerFillStyles;
|
|
634
1979
|
}
|
|
1980
|
+
/**
|
|
1981
|
+
* Visual style properties for the StackedDistribution container.
|
|
1982
|
+
* Contains the standard style categories: container layout, background colors,
|
|
1983
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
1984
|
+
*/
|
|
635
1985
|
export interface StackedDistributionStyles {
|
|
1986
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
636
1987
|
container?: null | ContainerStylingProperties;
|
|
1988
|
+
/** Background color and gradient styles. */
|
|
637
1989
|
background?: null | BackgroundStylingProperties;
|
|
1990
|
+
/** Border width, color, and radius styles. */
|
|
638
1991
|
border?: null | BorderStylingProperties;
|
|
1992
|
+
/** Width and height dimension styles. */
|
|
639
1993
|
dimension?: null | DimensionStylingProperties;
|
|
1994
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
640
1995
|
flexChild?: null | FlexChildStylingProperties;
|
|
1996
|
+
/** Padding and margin spacing styles. */
|
|
641
1997
|
spacing?: null | SpacingStylingProperties;
|
|
642
1998
|
}
|
|
1999
|
+
/**
|
|
2000
|
+
* Styling elements for the StackedDistribution container.
|
|
2001
|
+
* The `own` array contains stateless styling blocks applied to the stacked container itself.
|
|
2002
|
+
*/
|
|
643
2003
|
export interface StackedDistributionElements {
|
|
2004
|
+
/** Array of stateless styling blocks for the stacked container. */
|
|
644
2005
|
own: StatelessStylingBlock<StackedDistributionStyles>[];
|
|
645
2006
|
}
|
|
2007
|
+
/**
|
|
2008
|
+
* Presents multiple offers stacked vertically, all visible at once.
|
|
2009
|
+
* Used EXCLUSIVELY in the Outer Layout. This is the container into which offers (Layout Variants) are rendered.
|
|
2010
|
+
*
|
|
2011
|
+
* Use this when all offers should be visible simultaneously.
|
|
2012
|
+
* Do NOT use this for sequential one-at-a-time presentation; use OneByOneDistribution instead.
|
|
2013
|
+
*/
|
|
646
2014
|
export interface StackedDistributionModel<Predicates> {
|
|
2015
|
+
/**
|
|
2016
|
+
* Visual styles for the stacked container.
|
|
2017
|
+
* Uses the LayoutStyle wrapper with conditional style transitions.
|
|
2018
|
+
*/
|
|
647
2019
|
styles?: null | LayoutStyle<StackedDistributionElements, ConditionalStyleTransition<StackedDistributionTransitions, Predicates>>;
|
|
648
2020
|
}
|
|
2021
|
+
/** Transition styles for animating StackedDistribution style changes. */
|
|
649
2022
|
export interface StackedDistributionTransitions {
|
|
2023
|
+
/** Transition properties for the stacked container's own styles. */
|
|
650
2024
|
own?: null | StackedDistributionStyles;
|
|
651
2025
|
}
|
|
652
|
-
|
|
2026
|
+
/**
|
|
2027
|
+
* Condition operators for boolean values. Use these to test boolean flags.
|
|
2028
|
+
* Serialized as kebab-case strings: "is-true", "is-false".
|
|
2029
|
+
*/
|
|
2030
|
+
export type BooleanWhenCondition =
|
|
2031
|
+
/** True when the value is true. */
|
|
2032
|
+
"is-true"
|
|
2033
|
+
/** True when the value is false. */
|
|
2034
|
+
| "is-false";
|
|
2035
|
+
/**
|
|
2036
|
+
* A predicate with a hardcoded boolean value. Useful for enabling or disabling
|
|
2037
|
+
* sections during development or for static feature flags.
|
|
2038
|
+
*/
|
|
653
2039
|
export interface StaticBooleanPredicate {
|
|
2040
|
+
/** The boolean condition. Use "is-true" or "is-false". */
|
|
654
2041
|
condition: BooleanWhenCondition;
|
|
2042
|
+
/** The static boolean value to evaluate against the condition. */
|
|
655
2043
|
value: boolean;
|
|
656
2044
|
}
|
|
2045
|
+
/** Visual styles for the StaticIcon node. MUST include text styles with fontFamily set to 'rokt-icons' to render correctly. */
|
|
657
2046
|
export interface StaticIconStyles {
|
|
2047
|
+
/** Typography properties. MUST include fontFamily set to 'rokt-icons' for the icon to render correctly. */
|
|
658
2048
|
text?: null | TextStylingProperties;
|
|
2049
|
+
/** Width, height and rotation properties. */
|
|
659
2050
|
dimension?: null | DimensionStylingProperties;
|
|
2051
|
+
/** Properties controlling behaviour as a flex child. */
|
|
660
2052
|
flexChild?: null | FlexChildStylingProperties;
|
|
2053
|
+
/** Padding, margin and offset properties. */
|
|
661
2054
|
spacing?: null | SpacingStylingProperties;
|
|
2055
|
+
/** Background color and image properties. */
|
|
662
2056
|
background?: null | BackgroundStylingProperties;
|
|
2057
|
+
/** Border radius, color, width and style. */
|
|
663
2058
|
border?: null | BorderStylingProperties;
|
|
664
2059
|
}
|
|
2060
|
+
/** Style elements for the StaticIcon node. */
|
|
665
2061
|
export interface StaticIconElements {
|
|
2062
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
666
2063
|
own: BasicStateStylingBlock<StaticIconStyles>[];
|
|
667
2064
|
}
|
|
2065
|
+
/** Renders an SVG icon from the Rokt icon font. The icon is selected by name from the available icon set. */
|
|
668
2066
|
export interface StaticIconModel<Predicates> {
|
|
2067
|
+
/** Visual styles for the icon. MUST include text styles with fontFamily set to 'rokt-icons' to render correctly. */
|
|
669
2068
|
styles?: null | LayoutStyle<StaticIconElements, ConditionalStyleTransition<StaticIconTransitions, Predicates>>;
|
|
2069
|
+
/** 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. */
|
|
670
2070
|
name: string;
|
|
2071
|
+
/** Accessibility description of the icon for screen readers. */
|
|
671
2072
|
description?: null | string;
|
|
672
2073
|
}
|
|
2074
|
+
/** Transition definitions for the StaticIcon node. */
|
|
673
2075
|
export interface StaticIconTransitions {
|
|
2076
|
+
/** Transition properties for the primary element. */
|
|
674
2077
|
own?: null | StaticIconStyles;
|
|
675
2078
|
}
|
|
2079
|
+
/** Visual styles for the StaticImage node. */
|
|
676
2080
|
export interface StaticImageStyles {
|
|
2081
|
+
/** Background color and image properties. */
|
|
677
2082
|
background?: null | BackgroundStylingProperties;
|
|
2083
|
+
/** Border radius, color, width and style. */
|
|
678
2084
|
border?: null | BorderStylingProperties;
|
|
2085
|
+
/** Width, height and rotation properties. */
|
|
679
2086
|
dimension?: null | DimensionStylingProperties;
|
|
2087
|
+
/** Properties controlling behaviour as a flex child. */
|
|
680
2088
|
flexChild?: null | FlexChildStylingProperties;
|
|
2089
|
+
/** Padding, margin and offset properties. */
|
|
681
2090
|
spacing?: null | SpacingStylingProperties;
|
|
682
2091
|
}
|
|
2092
|
+
/** Style elements for the StaticImage node. */
|
|
683
2093
|
export interface StaticImageElements {
|
|
2094
|
+
/** Style blocks for the node's primary element. Array represents breakpoint-specific styles. */
|
|
684
2095
|
own: BasicStateStylingBlock<StaticImageStyles>[];
|
|
685
2096
|
}
|
|
2097
|
+
/** URL configuration for a static image with themed light/dark mode support. */
|
|
686
2098
|
export interface StaticImageUrl {
|
|
2099
|
+
/** The image URL for light mode. MUST be a valid URL. */
|
|
687
2100
|
light: string;
|
|
2101
|
+
/** The image URL for dark mode. If not provided, the light URL is used for both modes. */
|
|
688
2102
|
dark?: null | string;
|
|
689
2103
|
}
|
|
2104
|
+
/** Renders a static image from a provided URL. Use for images with known URLs (logos, icons, decorative images). */
|
|
690
2105
|
export interface StaticImageModel<Predicates> {
|
|
2106
|
+
/** Visual styles for the image element. */
|
|
691
2107
|
styles?: null | LayoutStyle<StaticImageElements, ConditionalStyleTransition<StaticImageTransitions, Predicates>>;
|
|
2108
|
+
/** Alt text for accessibility. Describes the image for screen readers. */
|
|
692
2109
|
alt?: null | string;
|
|
2110
|
+
/** Title text shown on hover. */
|
|
693
2111
|
title?: null | string;
|
|
2112
|
+
/** The image URL with themed light/dark mode support. */
|
|
694
2113
|
url: StaticImageUrl;
|
|
695
2114
|
}
|
|
2115
|
+
/** Transition definitions for the StaticImage node. */
|
|
696
2116
|
export interface StaticImageTransitions {
|
|
2117
|
+
/** Transition properties for the primary element. */
|
|
697
2118
|
own?: null | StaticImageStyles;
|
|
698
2119
|
}
|
|
2120
|
+
/**
|
|
2121
|
+
* Visual style properties for the StaticLink.
|
|
2122
|
+
* Contains the standard style categories: container layout, background colors,
|
|
2123
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
2124
|
+
*/
|
|
699
2125
|
export interface StaticLinkStyles {
|
|
2126
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
700
2127
|
container?: null | ContainerStylingProperties;
|
|
2128
|
+
/** Background color and gradient styles. */
|
|
701
2129
|
background?: null | BackgroundStylingProperties;
|
|
2130
|
+
/** Border width, color, and radius styles. */
|
|
702
2131
|
border?: null | BorderStylingProperties;
|
|
2132
|
+
/** Width and height dimension styles. */
|
|
703
2133
|
dimension?: null | DimensionStylingProperties;
|
|
2134
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
704
2135
|
flexChild?: null | FlexChildStylingProperties;
|
|
2136
|
+
/** Padding and margin spacing styles. */
|
|
705
2137
|
spacing?: null | SpacingStylingProperties;
|
|
706
2138
|
}
|
|
2139
|
+
/**
|
|
2140
|
+
* Styling elements for the StaticLink.
|
|
2141
|
+
* The `own` array contains state-dependent styling blocks (e.g. default, pressed)
|
|
2142
|
+
* applied to the link itself.
|
|
2143
|
+
*/
|
|
707
2144
|
export interface StaticLinkElements {
|
|
2145
|
+
/**
|
|
2146
|
+
* Array of state-dependent styling blocks for the link.
|
|
2147
|
+
* Each block targets a specific interaction state (default, pressed, etc.).
|
|
2148
|
+
*/
|
|
708
2149
|
own: BasicStateStylingBlock<StaticLinkStyles>[];
|
|
709
2150
|
}
|
|
2151
|
+
/**
|
|
2152
|
+
* A clickable link that wraps its children. Opens the specified URL when clicked.
|
|
2153
|
+
*
|
|
2154
|
+
* Use this node for navigation to external URLs. Do NOT use CreativeResponse for link navigation;
|
|
2155
|
+
* CreativeResponse is for offer accept/decline actions only.
|
|
2156
|
+
* The `src` field MUST be a valid URL string.
|
|
2157
|
+
*/
|
|
710
2158
|
export interface StaticLinkModel<Children, Predicates> {
|
|
2159
|
+
/**
|
|
2160
|
+
* The destination URL to open when the link is clicked.
|
|
2161
|
+
* MUST be a valid URL string (e.g. "https://example.com").
|
|
2162
|
+
*/
|
|
711
2163
|
src: string;
|
|
2164
|
+
/** Controls how the link URL is opened (e.g. in-app browser, external browser). */
|
|
712
2165
|
open: LinkOpenTarget;
|
|
2166
|
+
/** Visual styles for the link. Uses the LayoutStyle wrapper with conditional style transitions. */
|
|
713
2167
|
styles?: null | LayoutStyle<StaticLinkElements, ConditionalStyleTransition<StaticLinkTransitions, Predicates>>;
|
|
2168
|
+
/**
|
|
2169
|
+
* Child nodes that form the clickable link content.
|
|
2170
|
+
* MUST contain at least one child for the link to have visible, tappable content.
|
|
2171
|
+
*/
|
|
714
2172
|
children: Children[];
|
|
715
2173
|
}
|
|
2174
|
+
/**
|
|
2175
|
+
* Transition styles for animating StaticLink style changes.
|
|
2176
|
+
* Defines which style properties should animate when the link's conditional styles change.
|
|
2177
|
+
*/
|
|
716
2178
|
export interface StaticLinkTransitions {
|
|
2179
|
+
/** Transition properties for the link's own styles. */
|
|
717
2180
|
own?: null | StaticLinkStyles;
|
|
718
2181
|
}
|
|
2182
|
+
/**
|
|
2183
|
+
* Compares a static string input against a value. Use when you need to
|
|
2184
|
+
* evaluate a known, fixed string against a condition.
|
|
2185
|
+
*/
|
|
719
2186
|
export interface StaticStringPredicate {
|
|
2187
|
+
/** The static string value to test. */
|
|
720
2188
|
input: string;
|
|
2189
|
+
/** The comparison operator. Use "is" or "is-not". */
|
|
721
2190
|
condition: EqualityWhenCondition;
|
|
2191
|
+
/** The string to compare against. */
|
|
722
2192
|
value: string;
|
|
723
2193
|
}
|
|
2194
|
+
/**
|
|
2195
|
+
* Visual style properties for the ToggleButtonStateTrigger.
|
|
2196
|
+
* Contains the standard style categories: container layout, background colors,
|
|
2197
|
+
* border appearance, dimensions, flex child positioning, and spacing.
|
|
2198
|
+
*/
|
|
724
2199
|
export interface ToggleButtonStateTriggerStyle {
|
|
2200
|
+
/** Container layout styles (e.g. flex direction, alignment). */
|
|
725
2201
|
container?: null | ContainerStylingProperties;
|
|
2202
|
+
/** Background color and gradient styles. */
|
|
726
2203
|
background?: null | BackgroundStylingProperties;
|
|
2204
|
+
/** Border width, color, and radius styles. */
|
|
727
2205
|
border?: null | BorderStylingProperties;
|
|
2206
|
+
/** Width and height dimension styles. */
|
|
728
2207
|
dimension?: null | DimensionStylingProperties;
|
|
2208
|
+
/** Flex child sizing and alignment styles (grow, shrink, align-self). */
|
|
729
2209
|
flexChild?: null | FlexChildStylingProperties;
|
|
2210
|
+
/** Padding and margin spacing styles. */
|
|
730
2211
|
spacing?: null | SpacingStylingProperties;
|
|
731
2212
|
}
|
|
2213
|
+
/**
|
|
2214
|
+
* Styling elements for the ToggleButtonStateTrigger.
|
|
2215
|
+
* The `own` array contains state-dependent styling blocks applied to the toggle button itself.
|
|
2216
|
+
*/
|
|
732
2217
|
export interface ToggleButtonStateTriggerElements {
|
|
2218
|
+
/** Array of state-dependent styling blocks for the toggle button. */
|
|
733
2219
|
own: BasicStateStylingBlock<ToggleButtonStateTriggerStyle>[];
|
|
734
2220
|
}
|
|
2221
|
+
/**
|
|
2222
|
+
* A toggle button that cycles a custom state between values when clicked.
|
|
2223
|
+
* Each click toggles the state value, typically between 0 and 1.
|
|
2224
|
+
* Use with When nodes to conditionally show/hide content based on the toggled state.
|
|
2225
|
+
*
|
|
2226
|
+
* MUST provide a `customStateKey` that matches the key in When predicates.
|
|
2227
|
+
* Unlike ButtonStateTrigger, this does NOT require a `value` field; it toggles automatically.
|
|
2228
|
+
*/
|
|
735
2229
|
export interface ToggleButtonStateTriggerModel<Children, Predicates> {
|
|
2230
|
+
/** Visual styles for the toggle button. */
|
|
736
2231
|
styles?: null | LayoutStyle<ToggleButtonStateTriggerElements, ConditionalStyleTransition<ToggleButtonStateTriggerTransitions, Predicates>>;
|
|
2232
|
+
/** Child nodes forming the toggle button content. */
|
|
737
2233
|
children: Children[];
|
|
2234
|
+
/**
|
|
2235
|
+
* The custom state key to toggle when the button is pressed.
|
|
2236
|
+
* MUST match the key referenced in When node predicates.
|
|
2237
|
+
*/
|
|
738
2238
|
customStateKey: string;
|
|
739
2239
|
}
|
|
2240
|
+
/** Transition styles for animating ToggleButtonStateTrigger style changes. */
|
|
740
2241
|
export interface ToggleButtonStateTriggerTransitions {
|
|
2242
|
+
/** Transition properties for the toggle button's own styles. */
|
|
741
2243
|
own?: null | ToggleButtonStateTriggerStyle;
|
|
742
2244
|
}
|
|
743
|
-
|
|
2245
|
+
/**
|
|
2246
|
+
* A transition that applies only when an element enters (becomes visible).
|
|
2247
|
+
* MUST be an object with a "type" field and a "settings" field.
|
|
2248
|
+
* Currently only "FadeIn" is supported.
|
|
2249
|
+
*/
|
|
2250
|
+
export type InTransition =
|
|
2251
|
+
/**
|
|
2252
|
+
* A fade-in transition. The element gradually becomes visible over the
|
|
2253
|
+
* specified duration.
|
|
2254
|
+
*/
|
|
2255
|
+
{
|
|
744
2256
|
type: "FadeIn";
|
|
745
2257
|
settings: FadeInTransitionSettings;
|
|
746
2258
|
};
|
|
747
|
-
|
|
2259
|
+
/**
|
|
2260
|
+
* A transition that applies only when an element exits (becomes hidden).
|
|
2261
|
+
* MUST be an object with a "type" field and a "settings" field.
|
|
2262
|
+
* Currently only "FadeOut" is supported.
|
|
2263
|
+
*/
|
|
2264
|
+
export type OutTransition =
|
|
2265
|
+
/**
|
|
2266
|
+
* A fade-out transition. The element gradually becomes invisible over
|
|
2267
|
+
* the specified duration.
|
|
2268
|
+
*/
|
|
2269
|
+
{
|
|
748
2270
|
type: "FadeOut";
|
|
749
2271
|
settings: FadeOutTransitionSettings;
|
|
750
2272
|
};
|
|
2273
|
+
/**
|
|
2274
|
+
* Transition configuration for when visibility changes.
|
|
2275
|
+
* Defines enter and exit animations for the When node's children.
|
|
2276
|
+
*/
|
|
751
2277
|
export interface WhenTransition {
|
|
2278
|
+
/** Transition animations to play when children become visible (predicates become true). */
|
|
752
2279
|
inTransition?: null | InTransition[];
|
|
2280
|
+
/** Transition animations to play when children become hidden (predicates become false). */
|
|
753
2281
|
outTransition?: null | OutTransition[];
|
|
754
2282
|
}
|
|
755
|
-
|
|
2283
|
+
/**
|
|
2284
|
+
* Controls the hiding behaviour of When children.
|
|
2285
|
+
* Determines whether hidden children still occupy space in the layout.
|
|
2286
|
+
*/
|
|
2287
|
+
export type WhenHidden =
|
|
2288
|
+
/**
|
|
2289
|
+
* Children are visually hidden but remain in the layout (take up space).
|
|
2290
|
+
* Use this when you need to preserve layout dimensions even when content is hidden.
|
|
2291
|
+
*/
|
|
2292
|
+
"visually"
|
|
2293
|
+
/**
|
|
2294
|
+
* Children are fully removed from the layout.
|
|
2295
|
+
* They take up no space and do not affect sibling positioning.
|
|
2296
|
+
*/
|
|
2297
|
+
| "functionally";
|
|
2298
|
+
/**
|
|
2299
|
+
* Conditional rendering node. Shows or hides its children based on predicate conditions.
|
|
2300
|
+
* All predicates MUST evaluate to true for children to be shown (AND logic).
|
|
2301
|
+
*
|
|
2302
|
+
* Use this node to conditionally display content based on custom state, offer count, or other
|
|
2303
|
+
* predicate conditions. Do NOT nest When nodes unnecessarily; combine predicates in a single
|
|
2304
|
+
* When node instead.
|
|
2305
|
+
*/
|
|
756
2306
|
export interface WhenModel<Children, Predicates> {
|
|
2307
|
+
/**
|
|
2308
|
+
* Array of conditions that MUST ALL be true for children to render.
|
|
2309
|
+
* Uses AND logic: if any predicate is false, children are hidden.
|
|
2310
|
+
* MUST contain at least one predicate.
|
|
2311
|
+
*/
|
|
757
2312
|
predicates: Predicates[];
|
|
2313
|
+
/** Child nodes to conditionally show or hide based on the predicates. */
|
|
758
2314
|
children: Children[];
|
|
2315
|
+
/**
|
|
2316
|
+
* Optional transition animation configuration for when visibility changes.
|
|
2317
|
+
* Controls how children animate in and out when predicates change.
|
|
2318
|
+
*/
|
|
759
2319
|
transition?: null | WhenTransition;
|
|
2320
|
+
/**
|
|
2321
|
+
* Controls how hidden children are treated in the layout.
|
|
2322
|
+
* If omitted, defaults to functionally hiding (fully removed from layout).
|
|
2323
|
+
*/
|
|
760
2324
|
hide?: null | WhenHidden;
|
|
761
2325
|
}
|
|
2326
|
+
/** Styling properties for ZStack container layout. ZStack layers children on top of each other. */
|
|
762
2327
|
export interface ZStackContainerStylingProperties {
|
|
2328
|
+
/** Controls horizontal positioning of children within the ZStack. */
|
|
763
2329
|
justifyContent?: null | FlexJustification;
|
|
2330
|
+
/** Controls vertical positioning of children within the ZStack. */
|
|
764
2331
|
alignItems?: null | FlexAlignment;
|
|
2332
|
+
/** Applies a box shadow effect around the container. */
|
|
765
2333
|
shadow?: null | Shadow;
|
|
2334
|
+
/** Controls whether content overflowing the container bounds is visible or hidden. */
|
|
766
2335
|
overflow?: null | Overflow;
|
|
2336
|
+
/** Applies a Gaussian blur effect. Value is the blur radius in platform units. */
|
|
767
2337
|
blur?: null | number;
|
|
768
2338
|
}
|
|
2339
|
+
/**
|
|
2340
|
+
* Available style categories for the ZStack element. Each optional field enables a specific
|
|
2341
|
+
* category of visual styling. Omit a field to leave that category unstyled.
|
|
2342
|
+
*/
|
|
769
2343
|
export interface ZStackStyle {
|
|
2344
|
+
/**
|
|
2345
|
+
* Layout properties for the ZStack container (alignment of stacked children).
|
|
2346
|
+
* MUST be used to control how children are positioned within the stack.
|
|
2347
|
+
*/
|
|
770
2348
|
container?: null | ZStackContainerStylingProperties;
|
|
2349
|
+
/**
|
|
2350
|
+
* Background color and image properties. Use to set a solid color, gradient, or image
|
|
2351
|
+
* behind the stacked content.
|
|
2352
|
+
*/
|
|
771
2353
|
background?: null | BackgroundStylingProperties;
|
|
2354
|
+
/**
|
|
2355
|
+
* Border radius, color, width and style properties. Use to add visible borders or
|
|
2356
|
+
* rounded corners to the ZStack.
|
|
2357
|
+
*/
|
|
772
2358
|
border?: null | BorderStylingProperties;
|
|
2359
|
+
/**
|
|
2360
|
+
* Width, height and rotation properties. Use to explicitly size the ZStack or apply
|
|
2361
|
+
* rotation transforms. Do NOT set width/height if the ZStack should size to its content.
|
|
2362
|
+
*/
|
|
773
2363
|
dimension?: null | DimensionStylingProperties;
|
|
2364
|
+
/**
|
|
2365
|
+
* Properties controlling this element's behaviour as a child of a flex container.
|
|
2366
|
+
* Use to set flex-grow, flex-shrink, flex-basis, and align-self.
|
|
2367
|
+
*/
|
|
774
2368
|
flexChild?: null | FlexChildStylingProperties;
|
|
2369
|
+
/** Padding, margin and offset properties. Use to add spacing inside or outside the ZStack. */
|
|
775
2370
|
spacing?: null | SpacingStylingProperties;
|
|
776
2371
|
}
|
|
2372
|
+
/**
|
|
2373
|
+
* Styleable elements of the ZStack node. The ZStack has a single styleable element: its own
|
|
2374
|
+
* container.
|
|
2375
|
+
*/
|
|
777
2376
|
export interface ZStackElements {
|
|
2377
|
+
/**
|
|
2378
|
+
* Style blocks for the ZStack container itself. The array represents breakpoint-specific
|
|
2379
|
+
* styles: first item is the default (no breakpoint), subsequent items correspond to
|
|
2380
|
+
* breakpoints in ascending order. MUST contain at least one item for the default style.
|
|
2381
|
+
*/
|
|
778
2382
|
own: BasicStateStylingBlock<ZStackStyle>[];
|
|
779
2383
|
}
|
|
2384
|
+
/**
|
|
2385
|
+
* A layered container that stacks children on top of each other along the z-axis. Later
|
|
2386
|
+
* children render on top of earlier ones. Use for overlapping content such as badges on
|
|
2387
|
+
* images, text overlays, or layered decorative elements. Do NOT use ZStack for simple
|
|
2388
|
+
* sequential layouts; use Row or Column instead.
|
|
2389
|
+
*/
|
|
780
2390
|
export interface ZStackModel<Children, Predicates> {
|
|
2391
|
+
/**
|
|
2392
|
+
* Accessibility label for screen readers. Omit if the ZStack is purely decorative or its
|
|
2393
|
+
* children already provide sufficient accessible labels. MUST be set when the ZStack
|
|
2394
|
+
* conveys meaning not available from its children alone.
|
|
2395
|
+
*/
|
|
781
2396
|
a11yLabel?: null | string;
|
|
2397
|
+
/**
|
|
2398
|
+
* Visual styles for this ZStack. See styling documentation for the structure. Omit to use
|
|
2399
|
+
* default (unstyled) rendering.
|
|
2400
|
+
*/
|
|
782
2401
|
styles?: null | LayoutStyle<ZStackElements, ConditionalStyleTransition<ZStackTransitions, Predicates>>;
|
|
2402
|
+
/**
|
|
2403
|
+
* Child nodes stacked on top of each other within this ZStack. MUST contain at least one
|
|
2404
|
+
* child. Children are rendered in source order, with later children appearing on top of
|
|
2405
|
+
* earlier ones.
|
|
2406
|
+
*/
|
|
783
2407
|
children: Children[];
|
|
784
2408
|
}
|
|
2409
|
+
/** Transition styles for the ZStack node. Use to animate style changes smoothly. */
|
|
785
2410
|
export interface ZStackTransitions {
|
|
2411
|
+
/**
|
|
2412
|
+
* Transition properties for the ZStack container. Specifies which style properties
|
|
2413
|
+
* should animate and their duration/easing when values change.
|
|
2414
|
+
*/
|
|
786
2415
|
own?: null | ZStackStyle;
|
|
787
2416
|
}
|
|
2417
|
+
/**
|
|
2418
|
+
* Root node types for a catalog stacked collection item template. Must be a Row or Column
|
|
2419
|
+
* that contains CatalogStackedCollectionTemplateNodeChildren.
|
|
2420
|
+
*/
|
|
788
2421
|
export type CatalogStackedCollectionTemplateNode = {
|
|
789
2422
|
type: "Row";
|
|
790
2423
|
node: RowModel<CatalogStackedCollectionTemplateNodeChildren, LayoutVariantWhenPredicate>;
|
|
@@ -792,6 +2425,11 @@ export type CatalogStackedCollectionTemplateNode = {
|
|
|
792
2425
|
type: "Column";
|
|
793
2426
|
node: ColumnModel<CatalogStackedCollectionTemplateNodeChildren, LayoutVariantWhenPredicate>;
|
|
794
2427
|
};
|
|
2428
|
+
/**
|
|
2429
|
+
* Child node types allowed inside a catalog stacked collection template row or column.
|
|
2430
|
+
* Includes layout containers, text, images, icons, data-bound content, interactive triggers,
|
|
2431
|
+
* catalog response buttons, radio groups, and quantity counters.
|
|
2432
|
+
*/
|
|
795
2433
|
export type CatalogStackedCollectionTemplateNodeChildren = {
|
|
796
2434
|
type: "Row";
|
|
797
2435
|
node: RowModel<CatalogStackedCollectionTemplateNodeChildren, LayoutVariantWhenPredicate>;
|
|
@@ -841,9 +2479,36 @@ export type CatalogStackedCollectionTemplateNodeChildren = {
|
|
|
841
2479
|
type: "EscapeHatch";
|
|
842
2480
|
node: EscapeHatchModel;
|
|
843
2481
|
};
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
2482
|
+
/**
|
|
2483
|
+
* Fit behaviour options for height.
|
|
2484
|
+
* Used as the 'value' inside a {"type": "fit", "value": ...} height specification.
|
|
2485
|
+
*/
|
|
2486
|
+
export type DimensionHeightFitValue =
|
|
2487
|
+
/** Shrinks to fit the content height. */
|
|
2488
|
+
"wrap-content"
|
|
2489
|
+
/** Expands to fill the available height. */
|
|
2490
|
+
| "fit-height";
|
|
2491
|
+
/**
|
|
2492
|
+
* Fit behaviour options for width.
|
|
2493
|
+
* Used as the 'value' inside a {"type": "fit", "value": ...} width specification.
|
|
2494
|
+
*/
|
|
2495
|
+
export type DimensionWidthFitValue =
|
|
2496
|
+
/** Shrinks to fit the content width. */
|
|
2497
|
+
"wrap-content"
|
|
2498
|
+
/** Expands to fill the available width. */
|
|
2499
|
+
| "fit-width";
|
|
2500
|
+
/** Controls how the layout is displayed on the page. */
|
|
2501
|
+
export type LayoutDisplayPreset =
|
|
2502
|
+
/** Layout covers the full viewport. */
|
|
2503
|
+
"FULLSCREEN"
|
|
2504
|
+
/** Layout is embedded inline within the page content. */
|
|
2505
|
+
| "EMBEDDED"
|
|
2506
|
+
/** Layout is attached/anchored to a specific position. */
|
|
2507
|
+
| "ATTACHED";
|
|
2508
|
+
/**
|
|
2509
|
+
* All node types supported in the web platform schema. This is the union type used by SDKs.
|
|
2510
|
+
* Layouts are authored using OuterLayoutSchemaModel or LayoutVariantSchemaModel instead.
|
|
2511
|
+
*/
|
|
847
2512
|
export type LayoutSchemaModel = {
|
|
848
2513
|
type: "Row";
|
|
849
2514
|
node: RowModel<LayoutSchemaModel, WhenPredicate>;
|
|
@@ -929,6 +2594,11 @@ export type LayoutSchemaModel = {
|
|
|
929
2594
|
type: "EscapeHatch";
|
|
930
2595
|
node: EscapeHatchModel;
|
|
931
2596
|
};
|
|
2597
|
+
/**
|
|
2598
|
+
* Recursive child node types allowed within layout variant containers. Includes all layout
|
|
2599
|
+
* variant nodes such as layout, text, images, data-bound content, interactive triggers,
|
|
2600
|
+
* catalog components, and escape hatches.
|
|
2601
|
+
*/
|
|
932
2602
|
export type LayoutVariantChildren = {
|
|
933
2603
|
type: "Row";
|
|
934
2604
|
node: RowModel<LayoutVariantChildren, LayoutVariantWhenPredicate>;
|
|
@@ -987,7 +2657,23 @@ export type LayoutVariantChildren = {
|
|
|
987
2657
|
type: "EscapeHatch";
|
|
988
2658
|
node: EscapeHatchModel;
|
|
989
2659
|
};
|
|
990
|
-
|
|
2660
|
+
/**
|
|
2661
|
+
* Keys for accessing application domain state in the layout variant (offer
|
|
2662
|
+
* format) context. Serialized as camelCase strings. These are the domain
|
|
2663
|
+
* state keys available when defining conditional rendering within a layout
|
|
2664
|
+
* variant.
|
|
2665
|
+
*/
|
|
2666
|
+
export type LayoutVariantDomainStateKey =
|
|
2667
|
+
/**
|
|
2668
|
+
* Indicates whether the current offer has been completed by the user.
|
|
2669
|
+
* Use to show post-completion content or hide offer-specific elements.
|
|
2670
|
+
*/
|
|
2671
|
+
"offerComplete";
|
|
2672
|
+
/**
|
|
2673
|
+
* Non-interactive child node types within layout variants. Only allows structural containers,
|
|
2674
|
+
* static/data images, basic text, icons, conditional nodes, and escape hatches. Used as
|
|
2675
|
+
* children of interactive elements like buttons and links in layout variants.
|
|
2676
|
+
*/
|
|
991
2677
|
export type LayoutVariantNonInteractableChildren = {
|
|
992
2678
|
type: "Row";
|
|
993
2679
|
node: RowModel<LayoutVariantNonInteractableChildren, LayoutVariantWhenPredicate>;
|
|
@@ -1022,6 +2708,10 @@ export type LayoutVariantNonInteractableChildren = {
|
|
|
1022
2708
|
type: "EscapeHatch";
|
|
1023
2709
|
node: EscapeHatchModel;
|
|
1024
2710
|
};
|
|
2711
|
+
/**
|
|
2712
|
+
* Node types valid for use in layout variants (offer formats). Layout variants contain the
|
|
2713
|
+
* offer-specific creative content including images, text, response buttons, and catalog components.
|
|
2714
|
+
*/
|
|
1025
2715
|
export type LayoutVariantSchemaModel = {
|
|
1026
2716
|
type: "Row";
|
|
1027
2717
|
node: RowModel<LayoutVariantChildren, LayoutVariantWhenPredicate>;
|
|
@@ -1080,34 +2770,63 @@ export type LayoutVariantSchemaModel = {
|
|
|
1080
2770
|
type: "EscapeHatch";
|
|
1081
2771
|
node: EscapeHatchModel;
|
|
1082
2772
|
};
|
|
1083
|
-
|
|
2773
|
+
/**
|
|
2774
|
+
* Predicate types available in the layout variant (offer format) context.
|
|
2775
|
+
* This is a subset of predicates that are valid when defining conditional
|
|
2776
|
+
* rendering within a layout variant. Each predicate MUST include a "type"
|
|
2777
|
+
* field and a "predicate" field.
|
|
2778
|
+
*/
|
|
2779
|
+
export type LayoutVariantWhenPredicate =
|
|
2780
|
+
/** Tests the viewport width against a breakpoint value. */
|
|
2781
|
+
{
|
|
1084
2782
|
type: "Breakpoint";
|
|
1085
2783
|
predicate: BreakpointPredicate;
|
|
1086
|
-
}
|
|
2784
|
+
}
|
|
2785
|
+
/** Tests the position index of the current item in a collection. */
|
|
2786
|
+
| {
|
|
1087
2787
|
type: "Position";
|
|
1088
2788
|
predicate: PositionPredicate;
|
|
1089
|
-
}
|
|
2789
|
+
}
|
|
2790
|
+
/** Tests which offer index is currently visible. */
|
|
2791
|
+
| {
|
|
1090
2792
|
type: "Progression";
|
|
1091
2793
|
predicate: ProgressionPredicate;
|
|
1092
|
-
}
|
|
2794
|
+
}
|
|
2795
|
+
/** Tests whether dark mode is active. */
|
|
2796
|
+
| {
|
|
1093
2797
|
type: "DarkMode";
|
|
1094
2798
|
predicate: DarkModePredicate;
|
|
1095
|
-
}
|
|
2799
|
+
}
|
|
2800
|
+
/** Tests whether a creative data attribute exists. */
|
|
2801
|
+
| {
|
|
1096
2802
|
type: "CreativeCopy";
|
|
1097
2803
|
predicate: CreativeCopyPredicate;
|
|
1098
|
-
}
|
|
2804
|
+
}
|
|
2805
|
+
/** Evaluates a hardcoded boolean value. */
|
|
2806
|
+
| {
|
|
1099
2807
|
type: "StaticBoolean";
|
|
1100
2808
|
predicate: StaticBooleanPredicate;
|
|
1101
|
-
}
|
|
2809
|
+
}
|
|
2810
|
+
/** Tests a custom state value set by state trigger nodes. */
|
|
2811
|
+
| {
|
|
1102
2812
|
type: "CustomState";
|
|
1103
2813
|
predicate: CustomStatePredicate;
|
|
1104
|
-
}
|
|
2814
|
+
}
|
|
2815
|
+
/** Tests application domain state in the layout variant context. */
|
|
2816
|
+
| {
|
|
1105
2817
|
type: "DomainState";
|
|
1106
2818
|
predicate: DomainStatePredicate<LayoutVariantDomainStateKey>;
|
|
1107
|
-
}
|
|
2819
|
+
}
|
|
2820
|
+
/** Compares a static string input against a value. */
|
|
2821
|
+
| {
|
|
1108
2822
|
type: "StaticString";
|
|
1109
2823
|
predicate: StaticStringPredicate;
|
|
1110
2824
|
};
|
|
2825
|
+
/**
|
|
2826
|
+
* Child node types allowed inside modal containers (Overlay, BottomSheet) in the combined
|
|
2827
|
+
* SDK schema. Includes structural, presentational, distribution, and interactive nodes
|
|
2828
|
+
* but excludes nested modals.
|
|
2829
|
+
*/
|
|
1111
2830
|
export type ModalChildren = {
|
|
1112
2831
|
type: "Row";
|
|
1113
2832
|
node: RowModel<ModalChildren, OuterLayoutWhenPredicate>;
|
|
@@ -1175,6 +2894,11 @@ export type ModalChildren = {
|
|
|
1175
2894
|
type: "EscapeHatch";
|
|
1176
2895
|
node: EscapeHatchModel;
|
|
1177
2896
|
};
|
|
2897
|
+
/**
|
|
2898
|
+
* Non-interactive child node types in the combined SDK schema. Only allows structural
|
|
2899
|
+
* containers, static/data images, basic text, icons, conditional nodes, and escape hatches.
|
|
2900
|
+
* Used as children of interactive elements like buttons and links.
|
|
2901
|
+
*/
|
|
1178
2902
|
export type NonInteractableChildren = {
|
|
1179
2903
|
type: "Row";
|
|
1180
2904
|
node: RowModel<NonInteractableChildren, WhenPredicate>;
|
|
@@ -1209,6 +2933,10 @@ export type NonInteractableChildren = {
|
|
|
1209
2933
|
type: "EscapeHatch";
|
|
1210
2934
|
node: EscapeHatchModel;
|
|
1211
2935
|
};
|
|
2936
|
+
/**
|
|
2937
|
+
* Recursive child node types allowed within outer layout containers. Includes structural,
|
|
2938
|
+
* distribution, navigation, and presentational nodes scoped to outer layout predicates.
|
|
2939
|
+
*/
|
|
1212
2940
|
export type OuterLayoutChildren = {
|
|
1213
2941
|
type: "Row";
|
|
1214
2942
|
node: RowModel<OuterLayoutChildren, OuterLayoutWhenPredicate>;
|
|
@@ -1276,6 +3004,11 @@ export type OuterLayoutChildren = {
|
|
|
1276
3004
|
type: "EscapeHatch";
|
|
1277
3005
|
node: EscapeHatchModel;
|
|
1278
3006
|
};
|
|
3007
|
+
/**
|
|
3008
|
+
* Non-interactive child node types within outer layouts. Only allows structural containers,
|
|
3009
|
+
* static images, basic text, icons, conditional nodes, and escape hatches. Used as children
|
|
3010
|
+
* of interactive elements like buttons and links in outer layouts.
|
|
3011
|
+
*/
|
|
1279
3012
|
export type OuterLayoutNonInteractableChildren = {
|
|
1280
3013
|
type: "Row";
|
|
1281
3014
|
node: RowModel<OuterLayoutNonInteractableChildren, OuterLayoutWhenPredicate>;
|
|
@@ -1304,6 +3037,11 @@ export type OuterLayoutNonInteractableChildren = {
|
|
|
1304
3037
|
type: "EscapeHatch";
|
|
1305
3038
|
node: EscapeHatchModel;
|
|
1306
3039
|
};
|
|
3040
|
+
/**
|
|
3041
|
+
* Node types valid for use in outer layouts. Outer layouts define the frame and offer
|
|
3042
|
+
* distribution but do not contain offer-specific content. They include structural containers,
|
|
3043
|
+
* distribution nodes, navigation controls, and close buttons.
|
|
3044
|
+
*/
|
|
1307
3045
|
export type OuterLayoutSchemaModel = {
|
|
1308
3046
|
type: "Row";
|
|
1309
3047
|
node: RowModel<OuterLayoutChildren, OuterLayoutWhenPredicate>;
|
|
@@ -1374,25 +3112,47 @@ export type OuterLayoutSchemaModel = {
|
|
|
1374
3112
|
type: "EscapeHatch";
|
|
1375
3113
|
node: EscapeHatchModel;
|
|
1376
3114
|
};
|
|
1377
|
-
|
|
3115
|
+
/**
|
|
3116
|
+
* Predicate types available in the outer layout context. This is a more
|
|
3117
|
+
* restricted subset of predicates for use in the outer layout wrapper.
|
|
3118
|
+
* Does NOT include Position, CreativeCopy, or DomainState predicates.
|
|
3119
|
+
* Each predicate MUST include a "type" field and a "predicate" field.
|
|
3120
|
+
*/
|
|
3121
|
+
export type OuterLayoutWhenPredicate =
|
|
3122
|
+
/** Tests the viewport width against a breakpoint value. */
|
|
3123
|
+
{
|
|
1378
3124
|
type: "Breakpoint";
|
|
1379
3125
|
predicate: BreakpointPredicate;
|
|
1380
|
-
}
|
|
3126
|
+
}
|
|
3127
|
+
/** Tests which offer index is currently visible. */
|
|
3128
|
+
| {
|
|
1381
3129
|
type: "Progression";
|
|
1382
3130
|
predicate: ProgressionPredicate;
|
|
1383
|
-
}
|
|
3131
|
+
}
|
|
3132
|
+
/** Tests whether dark mode is active. */
|
|
3133
|
+
| {
|
|
1384
3134
|
type: "DarkMode";
|
|
1385
3135
|
predicate: DarkModePredicate;
|
|
1386
|
-
}
|
|
3136
|
+
}
|
|
3137
|
+
/** Evaluates a hardcoded boolean value. */
|
|
3138
|
+
| {
|
|
1387
3139
|
type: "StaticBoolean";
|
|
1388
3140
|
predicate: StaticBooleanPredicate;
|
|
1389
|
-
}
|
|
3141
|
+
}
|
|
3142
|
+
/** Tests a custom state value set by state trigger nodes. */
|
|
3143
|
+
| {
|
|
1390
3144
|
type: "CustomState";
|
|
1391
3145
|
predicate: CustomStatePredicate;
|
|
1392
|
-
}
|
|
3146
|
+
}
|
|
3147
|
+
/** Compares a static string input against a value. */
|
|
3148
|
+
| {
|
|
1393
3149
|
type: "StaticString";
|
|
1394
3150
|
predicate: StaticStringPredicate;
|
|
1395
3151
|
};
|
|
3152
|
+
/**
|
|
3153
|
+
* Child node types allowed inside scrollable containers (ScrollableColumn, ScrollableRow)
|
|
3154
|
+
* in the combined SDK schema. Excludes overlay and bottom sheet nodes that cannot scroll.
|
|
3155
|
+
*/
|
|
1396
3156
|
export type ScrollableChildren = {
|
|
1397
3157
|
type: "Row";
|
|
1398
3158
|
node: RowModel<ScrollableChildren, WhenPredicate>;
|
|
@@ -1469,6 +3229,10 @@ export type ScrollableChildren = {
|
|
|
1469
3229
|
type: "EscapeHatch";
|
|
1470
3230
|
node: EscapeHatchModel;
|
|
1471
3231
|
};
|
|
3232
|
+
/**
|
|
3233
|
+
* Child node types allowed inside scrollable containers within layout variants. Excludes
|
|
3234
|
+
* overlay and bottom sheet nodes, scoped to layout variant predicates. Includes catalog components.
|
|
3235
|
+
*/
|
|
1472
3236
|
export type ScrollableLayoutVariantChildren = {
|
|
1473
3237
|
type: "Row";
|
|
1474
3238
|
node: RowModel<ScrollableLayoutVariantChildren, LayoutVariantWhenPredicate>;
|
|
@@ -1521,6 +3285,10 @@ export type ScrollableLayoutVariantChildren = {
|
|
|
1521
3285
|
type: "EscapeHatch";
|
|
1522
3286
|
node: EscapeHatchModel;
|
|
1523
3287
|
};
|
|
3288
|
+
/**
|
|
3289
|
+
* Child node types allowed inside scrollable containers within outer layouts. Excludes overlay
|
|
3290
|
+
* and bottom sheet nodes, scoped to outer layout predicates.
|
|
3291
|
+
*/
|
|
1524
3292
|
export type ScrollableOuterLayoutChildren = {
|
|
1525
3293
|
type: "Row";
|
|
1526
3294
|
node: RowModel<ScrollableOuterLayoutChildren, OuterLayoutWhenPredicate>;
|
|
@@ -1582,31 +3350,55 @@ export type ScrollableOuterLayoutChildren = {
|
|
|
1582
3350
|
type: "EscapeHatch";
|
|
1583
3351
|
node: EscapeHatchModel;
|
|
1584
3352
|
};
|
|
1585
|
-
|
|
3353
|
+
/**
|
|
3354
|
+
* All available predicate types for conditional rendering in the full layout
|
|
3355
|
+
* schema. Used with the When node to conditionally show or hide children.
|
|
3356
|
+
* Each predicate MUST include a "type" field to identify the predicate kind
|
|
3357
|
+
* and a "predicate" field containing the predicate configuration.
|
|
3358
|
+
*/
|
|
3359
|
+
export type WhenPredicate =
|
|
3360
|
+
/** Tests the viewport width against a breakpoint value. */
|
|
3361
|
+
{
|
|
1586
3362
|
type: "Breakpoint";
|
|
1587
3363
|
predicate: BreakpointPredicate;
|
|
1588
|
-
}
|
|
3364
|
+
}
|
|
3365
|
+
/** Tests the position index of the current item in a collection. */
|
|
3366
|
+
| {
|
|
1589
3367
|
type: "Position";
|
|
1590
3368
|
predicate: PositionPredicate;
|
|
1591
|
-
}
|
|
3369
|
+
}
|
|
3370
|
+
/** Tests which offer index is currently visible. */
|
|
3371
|
+
| {
|
|
1592
3372
|
type: "Progression";
|
|
1593
3373
|
predicate: ProgressionPredicate;
|
|
1594
|
-
}
|
|
3374
|
+
}
|
|
3375
|
+
/** Tests whether dark mode is active. */
|
|
3376
|
+
| {
|
|
1595
3377
|
type: "DarkMode";
|
|
1596
3378
|
predicate: DarkModePredicate;
|
|
1597
|
-
}
|
|
3379
|
+
}
|
|
3380
|
+
/** Tests whether a creative data attribute exists. */
|
|
3381
|
+
| {
|
|
1598
3382
|
type: "CreativeCopy";
|
|
1599
3383
|
predicate: CreativeCopyPredicate;
|
|
1600
|
-
}
|
|
3384
|
+
}
|
|
3385
|
+
/** Evaluates a hardcoded boolean value. */
|
|
3386
|
+
| {
|
|
1601
3387
|
type: "StaticBoolean";
|
|
1602
3388
|
predicate: StaticBooleanPredicate;
|
|
1603
|
-
}
|
|
3389
|
+
}
|
|
3390
|
+
/** Tests a custom state value set by state trigger nodes. */
|
|
3391
|
+
| {
|
|
1604
3392
|
type: "CustomState";
|
|
1605
3393
|
predicate: CustomStatePredicate;
|
|
1606
|
-
}
|
|
3394
|
+
}
|
|
3395
|
+
/** Tests application domain state. */
|
|
3396
|
+
| {
|
|
1607
3397
|
type: "DomainState";
|
|
1608
3398
|
predicate: LayoutSchemaDomainStatePredicate;
|
|
1609
|
-
}
|
|
3399
|
+
}
|
|
3400
|
+
/** Compares a static string input against a value. */
|
|
3401
|
+
| {
|
|
1610
3402
|
type: "StaticString";
|
|
1611
3403
|
predicate: StaticStringPredicate;
|
|
1612
3404
|
};
|