Packages
corex
0.1.0-alpha.13
0.1.2
0.1.1
0.1.0
0.1.0-rc.1
0.1.0-rc.0
0.1.0-beta.5
0.1.0-beta.4
0.1.0-beta.3
0.1.0-beta.2
0.1.0-beta.1
0.1.0-alpha.33
0.1.0-alpha.32
0.1.0-alpha.31
0.1.0-alpha.30
0.1.0-alpha.29
0.1.0-alpha.28
0.1.0-alpha.27
0.1.0-alpha.26
0.1.0-alpha.25
0.1.0-alpha.24
0.1.0-alpha.23
0.1.0-alpha.22
0.1.0-alpha.21
0.1.0-alpha.20
0.1.0-alpha.19
0.1.0-alpha.18
0.1.0-alpha.17
0.1.0-alpha.16
0.1.0-alpha.15
0.1.0-alpha.14
0.1.0-alpha.13
0.1.0-alpha.12
0.1.0-alpha.11
0.1.0-alpha.10
0.1.0-alpha.9
0.1.0-alpha.8
0.1.0-alpha.7
0.1.0-alpha.6
0.1.0-alpha.5
0.1.0-alpha.4
0.1.0-alpha.3
0.1.0-alpha.2
0.1.0-alpha.1
Accessible and unstyled UI components library written in Elixir and TypeScript that integrates Zag.js state machines into the Phoenix Framework.
Current section
Files
Jump to
Current section
Files
lib/positoning.ex
defmodule Corex.Positioning do
@moduledoc """
Positioning options for floating elements (popovers, dropdowns, etc.)
Maps to Zag.js PositioningOptions interface.
"""
@derive Jason.Encoder
defstruct hide_when_detached: true,
strategy: "fixed",
placement: "bottom",
gutter: 0,
shift: 0,
overflow_padding: 0,
arrow_padding: 4,
flip: true,
slide: true,
overlap: false,
same_width: true,
fit_viewport: false
@type t :: %__MODULE__{
hide_when_detached: boolean(),
strategy: String.t(),
placement: String.t(),
gutter: integer(),
shift: integer(),
overflow_padding: integer(),
arrow_padding: integer(),
flip: boolean() | list(String.t()),
slide: boolean(),
overlap: boolean(),
same_width: boolean(),
fit_viewport: boolean()
}
end