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