----------------------------------------------------------------------------- {-# LANGUAGE OverloadedStrings #-} ----------------------------------------------------------------------------- -- | -- Module : Miso.Native.Element.View.Property -- Copyright : (C) 2016-2026 David M. Johnson -- License : BSD3-style (see the file LICENSE) -- Maintainer : David M. Johnson <code@dmj.io> -- Stability : experimental -- Portability : non-portable ---------------------------------------------------------------------------- module Miso.Native.Element.View.Property ( -- *** Property id_ , name_ , className_ , flatten_ , exposureId_ , exposureScene_ , exposeUIMarginTop_ , exposeUIMarginBottom_ , exposeUIMarginLeft_ , exposeUIMarginRight_ , exposeScreenMarginTop_ , exposeScreenMarginBottom_ , exposeScreenMarginLeft_ , exposeScreenMarginRight_ , exposureArea_ , enableExposureUIMargin_ , enableExposureUIClip_ , accessibilityElement_ , accessibilityLabel_ , accessibilityTrait_ , accessibilityElements_ , accessibilityElementsA11y_ , accessibilityElementsHidden_ , accessibilityExclusiveFocus_ , a11yId_ , iosPlatformAccessibilityId_ , userInteractionEnabled_ , nativeInteractionEnabled_ , panInterceptDirection_ , panInterceptScope_ , blockNativeEvent_ , blockNativeEventAreas_ , consumeSlideEvent_ , eventThroughActiveRegions_ , enableTouchPseudoPropagation_ , hitSlop_ , ignoreFocus_ , eventThrough_ , iosEnableSimultaneousTouch_ , lynxTimingFlag_ ) where ----------------------------------------------------------------------------- import Miso.Property import Miso.Types ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#id -- -- Used to specify the name of the element, generally for native to operate the corresponding node from the native side through `findViewByName`. -- -- > id_ "test" -- id_ :: MisoString -> Attribute model action id_ :: forall model action. MisoString -> Attribute model action id_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "id" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#name -- -- Used to specify the name of the element, generally for native to operate the corresponding node from the native side through `findViewByName`. -- -- > name_ "test" -- name_ :: MisoString -> Attribute model action name_ :: forall model action. MisoString -> Attribute model action name_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "name" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#classname -- -- Use `className` to set CSS class names, equivalent to 'class_' -- -- > className_ "foo" -- className_ :: MisoString -> Attribute model action className_ :: forall model action. MisoString -> Attribute model action className_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "className" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#flatten -- -- *Android* only -- -- Only available on Android platform, used to force specific nodes to create -- corresponding Android Views. -- -- > flatten_ True -- flatten_ :: Bool -> Attribute model action flatten_ :: forall model action. Bool -> Attribute model action flatten_ = MisoString -> Bool -> Attribute model action forall model action. MisoString -> Bool -> Attribute model action boolProp MisoString "flatten" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#exposure-id -- -- Specify whether the target node needs to listen to [exposure/anti-exposure](https://lynxjs.org/guide/interaction/visibility-detection/exposure-ability.html#monitor-exposure-of-the-entire-page) events. -- -- > exposureId_ "id-goes-here" -- exposureId_ :: MisoString -> Attribute model action exposureId_ :: forall model action. MisoString -> Attribute model action exposureId_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "exposure-id" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#exposure-scene -- -- Specify the exposure scene of the target node, and use it together with -- 'exposureId_' to uniquely identify the node that needs to monitor exposure. -- -- > exposureScene_ "example-scene" -- exposureScene_ :: MisoString -> Attribute model action exposureScene_ :: forall model action. MisoString -> Attribute model action exposureScene_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "exposure-scene" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#exposure-ui-margin- -- -- Specify the boundary scaling value of the target node itself in the exposure -- detection, which affects the viewport intersection judgment of the target node. -- Each node can have its own boundary scaling value. -- -- > exposeUIMarginTop_ "10px" -- -- Default Value: "0px" -- exposeUIMarginTop_ :: MisoString -> Attribute model action exposeUIMarginTop_ :: forall model action. MisoString -> Attribute model action exposeUIMarginTop_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "exposure-ui-margin-top" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#exposure-ui-margin- -- -- Specify the boundary scaling value of the target node itself in the exposure -- detection, which affects the viewport intersection judgment of the target node. -- Each node can have its own boundary scaling value. -- -- > exposeUIMarginBottom_ "10px" -- -- Default Value: "0px" -- exposeUIMarginBottom_ :: MisoString -> Attribute model action exposeUIMarginBottom_ :: forall model action. MisoString -> Attribute model action exposeUIMarginBottom_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "exposure-ui-margin-bottom" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#exposure-ui-margin- -- -- Specify the boundary scaling value of the target node itself in the exposure -- detection, which affects the viewport intersection judgment of the target node. -- Each node can have its own boundary scaling value. -- -- > exposeUIMarginLeft_ "10px" -- -- Default Value: "0px" -- exposeUIMarginLeft_ :: MisoString -> Attribute model action exposeUIMarginLeft_ :: forall model action. MisoString -> Attribute model action exposeUIMarginLeft_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "exposure-ui-margin-left" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#exposure-ui-margin- -- -- Specify the boundary scaling value of the target node itself in the exposure -- detection, which affects the viewport intersection judgment of the target node. -- Each node can have its own boundary scaling value. -- -- > exposeUIMarginRight_ "10px" -- -- Default Value: "0px" -- ----------------------------------------------------------------------------- exposeUIMarginRight_ :: MisoString -> Attribute model action exposeUIMarginRight_ :: forall model action. MisoString -> Attribute model action exposeUIMarginRight_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "exposure-ui-margin-right" -- | https://lynxjs.org/api/elements/built-in/view.html#exposure-screen-margin- -- -- Specify the boundary scaling value of the target node itself in the exposure -- detection, which affects the viewport intersection judgment of the target node. -- Each node can have its own boundary scaling value. -- -- > exposeUIMarginTop_ "10px" -- -- Default Value: "0px" -- exposeScreenMarginTop_ :: MisoString -> Attribute model action exposeScreenMarginTop_ :: forall model action. MisoString -> Attribute model action exposeScreenMarginTop_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "exposure-screen-margin-top" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#exposure-screen-margin- -- -- Specify the boundary scaling value of the target node itself in the exposure -- detection, which affects the viewport intersection judgment of the target node. -- Each node can have its own boundary scaling value. -- -- > exposeScreenMarginBottom_ "10px" -- -- Default Value: "0px" -- exposeScreenMarginBottom_ :: MisoString -> Attribute model action exposeScreenMarginBottom_ :: forall model action. MisoString -> Attribute model action exposeScreenMarginBottom_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "exposure-screen-margin-bottom" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#exposure-screen-margin- -- -- Specify the boundary scaling value of the target node itself in the exposure -- detection, which affects the viewport intersection judgment of the target node. -- Each node can have its own boundary scaling value. -- -- > exposeScreenMarginLeft_ "10px" -- -- Default Value: "0px" -- exposeScreenMarginLeft_ :: MisoString -> Attribute model action exposeScreenMarginLeft_ :: forall model action. MisoString -> Attribute model action exposeScreenMarginLeft_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "exposure-screen-margin-left" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#exposure-screen-margin- -- -- Specify the boundary scaling value of the target node itself in the exposure -- detection, which affects the viewport intersection judgment of the target node. -- Each node can have its own boundary scaling value. -- -- > exposeScreenMarginRight_ "10px" -- -- Default Value: "0px" -- exposeScreenMarginRight_ :: MisoString -> Attribute model action exposeScreenMarginRight_ :: forall model action. MisoString -> Attribute model action exposeScreenMarginRight_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "exposure-screen-margin-right" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#exposure-area -- -- Specify the viewport intersection ratio of the target node that can trigger -- the exposure event. When it is greater than this ratio, the exposure event -- is triggered. When it is less than this ratio, the reverse exposure event -- is triggered. By default, the exposure event is triggered when the target -- node is exposed. -- -- > exposureArea_ (pct 10) -- -- Default Value: "0%" -- exposureArea_ :: MisoString -> Attribute model action exposureArea_ :: forall model action. MisoString -> Attribute model action exposureArea_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "exposure-area" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#enable-exposure-ui-margin -- -- Specify whether the target node supports the [exposure-ui-margin-*](https://lynxjs.org/api/elements/built-in/view.html#exposure-ui-margin-) properties. -- -- Setting it to true will change the behavior of [exposure-screen-margin-*](https://lynxjs.org/api/elements/built-in/view.html#exposure-screen-margin-) and may cause the lazy loading of the scrollable container to fail. -- -- > enableExposureUIMargin_ True -- -- Default Value: 'False' -- enableExposureUIMargin_ :: Bool -> Attribute model action enableExposureUIMargin_ :: forall model action. Bool -> Attribute model action enableExposureUIMargin_ = MisoString -> Bool -> Attribute model action forall model action. MisoString -> Bool -> Attribute model action boolProp MisoString "enable-exposure-ui-margin" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#enable-exposure-ui-clip -- -- Specify whether the exposure detection task takes into account the viewport -- clipping of the parent node. -- -- > enableExposureUIClip_ True -- -- Default Value: 'False' -- enableExposureUIClip_ :: Bool -> Attribute model action enableExposureUIClip_ :: forall model action. Bool -> Attribute model action enableExposureUIClip_ = MisoString -> Bool -> Attribute model action forall model action. MisoString -> Bool -> Attribute model action boolProp MisoString "enable-exposure-ui-clip" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#accessibility-element -- -- Set whether the node supports accessibility. -- -- > accessibilityElement_ True -- accessibilityElement_ :: Bool -> Attribute model action accessibilityElement_ :: forall model action. Bool -> Attribute model action accessibilityElement_ = MisoString -> Bool -> Attribute model action forall model action. MisoString -> Bool -> Attribute model action boolProp MisoString "accessibility-element" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#accessibility-label -- -- Set the content of the node voice broadcast. -- -- If the \<text\> node does not set this attribute, the \<text\> node defaults to the \<text\> content. -- -- > accessibilityLabel_ "some-label" -- accessibilityLabel_ :: MisoString -> Attribute model action accessibilityLabel_ :: forall model action. MisoString -> Attribute model action accessibilityLabel_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "accessibility-label" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#accessibility-trait -- -- Set the type characteristics of the node. The system will have specific -- supplements to the playback content for different types of nodes. -- -- > accessibilityTrait_ "button" -- -- Default Value: "button" -- accessibilityTrait_ :: MisoString -> Attribute model action accessibilityTrait_ :: forall model action. MisoString -> Attribute model action accessibilityTrait_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "accessibility-trait" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#accessibility-elements -- -- Customize the focus order of child nodes. This property is set on the parent node, -- and the focus order of its child nodes will be focused according to the -- order of the child node `id` specified by the `accessibility-elements` property. -- -- > accessibilityElements_ "view-3,view-2,view-5,view-1,view-4" -- accessibilityElements_ :: MisoString -> Attribute model action accessibilityElements_ :: forall model action. MisoString -> Attribute model action accessibilityElements_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "accessibility-elements" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#accessibility-elements-a11y -- -- The same as @accessibilityElements_@, but the corresponding @id_@ is @a11yId_@. -- -- > accessibilityElementsA11y_ "id" -- accessibilityElementsA11y_ :: MisoString -> Attribute model action accessibilityElementsA11y_ :: forall model action. MisoString -> Attribute model action accessibilityElementsA11y_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "accessibility-elements-a11y" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#accessibility-exclusive-hidden -- -- Marks the current node and all its child nodes as non-accessible nodes. -- -- > accessibilityExclusiveHidden_ True -- -- Default Value: 'True' -- accessibilityElementsHidden_ :: Bool -> Attribute model action accessibilityElementsHidden_ :: forall model action. Bool -> Attribute model action accessibilityElementsHidden_ = MisoString -> Bool -> Attribute model action forall model action. MisoString -> Bool -> Attribute model action boolProp MisoString "accessibility-elements-hidden" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#accessibility-exclusive-focus -- -- This property can be set for any node. In accessibility mode, sequential navigation will only focus on the child nodes under these nodes. -- -- > accessibilityExclusiveFocus_ True -- -- Default Value: 'True' -- accessibilityExclusiveFocus_ :: Bool -> Attribute model action accessibilityExclusiveFocus_ :: forall model action. Bool -> Attribute model action accessibilityExclusiveFocus_ = MisoString -> Bool -> Attribute model action forall model action. MisoString -> Bool -> Attribute model action boolProp MisoString "accessibility-exclusive-focus" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#a11y-id -- -- Different from `id`, it is used to identify barrier-free nodes separately. -- -- > a11yId_ "test" -- a11yId_ :: MisoString -> Attribute model action a11yId_ :: forall model action. MisoString -> Attribute model action a11yId_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "a11y-id" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#ios-platform-accessibility-id -- -- Used to specify the accessibility identifier of a `UIView` in *iOS*. It is -- only used when the platform-level accessibility framework is accessed. -- -- > iosPlatformAccessibilityId_ "view-3" -- iosPlatformAccessibilityId_ :: MisoString -> Attribute model action iosPlatformAccessibilityId_ :: forall model action. MisoString -> Attribute model action iosPlatformAccessibilityId_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "ios-platform-accessibility-id" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#user-interaction-enabled -- -- Specifies whether the target node and its child nodes can respond to Lynx touch events. -- This property does not affect platform-level gestures (such as scrolling of scroll-view). -- -- > userInteractionEnabled_ False -- -- Default Value: 'True' -- userInteractionEnabled_ :: Bool -> Attribute model action userInteractionEnabled_ :: forall model action. Bool -> Attribute model action userInteractionEnabled_ = MisoString -> Bool -> Attribute model action forall model action. MisoString -> Bool -> Attribute model action boolProp MisoString "user-interaction-enabled" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#native-interaction-enabled -- -- -- Specify whether the target node consumes platform-layer touch events, affects -- platform-layer gestures (such as scrolling of scroll-view), does not affect -- Lynx touch events, and can achieve similar platform-layer gesture -- penetration/interception effects. -- -- > nativeInteractionEnabled_ True -- -- Default Value: 'True' for *iOS*, 'False' for *Android* -- nativeInteractionEnabled_ :: Bool -> Attribute model action nativeInteractionEnabled_ :: forall model action. Bool -> Attribute model action nativeInteractionEnabled_ = MisoString -> Bool -> Attribute model action forall model action. MisoString -> Bool -> Attribute model action boolProp MisoString "native-interaction-enabled" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#pan-intercept-direction -- -- Specify which direction to block platform-layer swipe gestures. -- -- > panInterceptDirection_ "horizontal" -- -- Default Value: "none" -- panInterceptDirection_ :: MisoString -> Attribute model action panInterceptDirection_ :: forall model action. MisoString -> Attribute model action panInterceptDirection_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "pan-intercept-direction" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#pan-intercept-scope -- -- Specify the scope within which platform-layer swipe gestures in a particular -- direction will be blocked. -- -- > panInterceptScope_ "none" -- -- Default Value: "none" -- panInterceptScope_ :: MisoString -> Attribute model action panInterceptScope_ :: forall model action. MisoString -> Attribute model action panInterceptScope_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "pan-intercept-scope" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#block-native-event -- -- Specify whether to block platform layer gestures outside Lynx when the -- target node is on the event response chain, which can achieve an effect -- similar to blocking the platform layer side sliding back. -- -- > blockNativeEvent True -- -- Default Value: 'False' -- blockNativeEvent_ :: Bool -> Attribute model action blockNativeEvent_ :: forall model action. Bool -> Attribute model action blockNativeEvent_ = MisoString -> Bool -> Attribute model action forall model action. MisoString -> Bool -> Attribute model action boolProp MisoString "block-native-event" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#block-native-event-areas -- -- Specify whether to block platform layer gestures outside Lynx when the target node is on the [eventAreas response chain](../../../guide/interaction/eventAreas-handling/eventAreas-propagation.mdx#eventAreas-response-chain), which can achieve an effect similar to blocking the platform layer side sliding back. -- -- > blockNativeEventAreas_ [] -- -- Default Value: [] -- blockNativeEventAreas_ :: [Int] -> Attribute model action blockNativeEventAreas_ :: forall model action. [Int] -> Attribute model action blockNativeEventAreas_ = MisoString -> [Int] -> Attribute model action forall a model action. ToJSON a => MisoString -> a -> Attribute model action prop MisoString "block-native-event-areas" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#consume-slide-event -- -- Specify the target node to slide a specific angle on the -- [event response chain](https://lynxjs.org/api/elements/built-in/view.html#consume-slide-event), -- whether the platform layer gesture responds, does not affect the touch event -- of Lynx, and can realize a front-end scrolling container similar to consuming -- the specified direction of sliding. -- -- > consumeSlideEvent_ [] -- -- Default Value: [] -- consumeSlideEvent_ :: [Double] -> Attribute model action consumeSlideEvent_ :: forall model action. [Double] -> Attribute model action consumeSlideEvent_ = MisoString -> [Double] -> Attribute model action forall a model action. ToJSON a => MisoString -> a -> Attribute model action prop MisoString "consume-slide-event" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#event-through -- -- Specifies whether the touch event of the platform layer is distributed to Lynx -- when the touch is on the target node, which can achieve a similar effect of -- only displaying without interaction. This property supports inheritance. -- -- > eventThrough_ True -- -- Default Value: 'False' -- eventThrough_ :: Bool -> Attribute model action eventThrough_ :: forall model action. Bool -> Attribute model action eventThrough_ = MisoString -> Bool -> Attribute model action forall model action. MisoString -> Bool -> Attribute model action boolProp MisoString "event-through" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#event-through-active-regions -- -- Specify the effective area for 'eventThrough_' functionality, given as a list -- of @[x, y, width, height]@ rectangles (values in px or %). -- -- > eventThroughActiveRegions_ [[0,0,100,100]] -- -- Default Value: [] -- eventThroughActiveRegions_ :: [[Double]] -> Attribute model action eventThroughActiveRegions_ :: forall model action. [[Double]] -> Attribute model action eventThroughActiveRegions_ = MisoString -> [[Double]] -> Attribute model action forall a model action. ToJSON a => MisoString -> a -> Attribute model action prop MisoString "event-through-active-regions" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#enable-touch-pseudo-propagation -- -- Specify whether the target node supports the :active pseudo-class to continue bubbling -- up on the [event response chain](https://lynxjs.org/guide/interaction/event-handling/event-propagation.html#event-response-chain,platform=ios). -- -- > enableTouchPseudoPropagation_ True -- -- Default Value: 'False' -- enableTouchPseudoPropagation_ :: Bool -> Attribute model action enableTouchPseudoPropagation_ :: forall model action. Bool -> Attribute model action enableTouchPseudoPropagation_ = MisoString -> Bool -> Attribute model action forall model action. MisoString -> Bool -> Attribute model action boolProp MisoString "enable-touch-pseudo-propagation" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#hit-slop -- -- Specify the touch event response hotspot of the target node, without -- affecting the platform layer gesture. -- -- > hitSlop_ "0px" -- -- Default Value: "0px" -- hitSlop_ :: MisoString -> Attribute model action hitSlop_ :: forall model action. MisoString -> Attribute model action hitSlop_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "hit-slop" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#ignore-focus -- -- Specify whether to not grab focus when touching the target node. By default, -- the node grabs focus when clicking on it, which can achieve a similar effect -- of not closing the keyboard when clicking other areas. -- -- In addition, it also supports inheritance, that is, the default value of the -- child node is the ignore-focus value of the parent node, and the child node -- can override this value. -- -- > ignoreFocus_ True -- -- Default Value: 'False -- ignoreFocus_ :: MisoString -> Attribute model action ignoreFocus_ :: forall model action. MisoString -> Attribute model action ignoreFocus_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "ignore-focus" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#ios-enable-simultaneous-touch -- -- *iOS* only -- -- > iosEnableSimultaneousTouch_ True -- -- Default Value: 'False' -- iosEnableSimultaneousTouch_ :: Bool -> Attribute model action iosEnableSimultaneousTouch_ :: forall model action. Bool -> Attribute model action iosEnableSimultaneousTouch_ = MisoString -> Bool -> Attribute model action forall model action. MisoString -> Bool -> Attribute model action boolProp MisoString "ios-enable-simultaneous-touch" ----------------------------------------------------------------------------- -- | https://lynxjs.org/api/elements/built-in/view.html#__lynx_timing_flag -- -- Add this flag to the current element to monitor the performance of the -- lynx pipeline it participates in. When flagged, the lynx engine generates -- a PipelineEntry event once the element completes its final painting phase. -- This event can be observed and analyzed by registering a PerformanceObserver(). -- For more detailed usage, see the Marking Lynx Pipeline. -- -- > lynxTimingFlag_ "test" -- lynxTimingFlag_ :: MisoString -> Attribute model action lynxTimingFlag_ :: forall model action. MisoString -> Attribute model action lynxTimingFlag_ = MisoString -> MisoString -> Attribute model action forall model action. MisoString -> MisoString -> Attribute model action textProp MisoString "__lynx_timing_flag" -----------------------------------------------------------------------------