Packages
corex
0.1.1
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/components/floating_panel/anatomy.ex
defmodule Corex.FloatingPanel.Anatomy do
@moduledoc false
defmodule Props do
@moduledoc false
@enforce_keys [:id]
defstruct [
:id,
:size,
:default_size,
:default_position,
:min_size,
:max_size,
draggable: true,
resizable: true,
allow_overflow: true,
close_on_escape: true,
disabled: false,
dir: "ltr",
orientation: "vertical",
persist_rect: false,
grid_size: 1,
on_open_change: nil,
on_open_change_client: nil,
on_position_change: nil,
on_position_change_client: nil,
on_size_change: nil,
on_size_change_client: nil,
on_stage_change: nil,
on_stage_change_client: nil
]
@type t :: %__MODULE__{
id: String.t(),
draggable: boolean(),
resizable: boolean(),
allow_overflow: boolean(),
close_on_escape: boolean(),
disabled: boolean(),
dir: String.t(),
orientation: String.t(),
size: map() | nil,
default_size: map() | nil,
default_position: map() | nil,
min_size: map() | nil,
max_size: map() | nil,
persist_rect: boolean(),
grid_size: number(),
on_open_change: String.t() | nil,
on_open_change_client: String.t() | nil,
on_position_change: String.t() | nil,
on_position_change_client: String.t() | nil,
on_size_change: String.t() | nil,
on_size_change_client: String.t() | nil,
on_stage_change: String.t() | nil,
on_stage_change_client: String.t() | nil
}
end
defmodule Root do
@moduledoc false
defstruct [:id, :dir, orientation: "vertical"]
@type t :: %__MODULE__{id: String.t(), dir: String.t(), orientation: String.t()}
@ignored_attrs ["data-state", "dir", "data-orientation", "id", "data-focus"]
def ignored_attrs, do: @ignored_attrs
end
defmodule Trigger do
@moduledoc false
defstruct [:id, :dir, orientation: "vertical"]
@type t :: %__MODULE__{
id: String.t(),
dir: String.t(),
orientation: String.t()
}
@ignored_attrs [
"type",
"tabindex",
"dir",
"data-orientation",
"data-state",
"id",
"data-focus",
"aria-expanded",
"aria-controls",
"disabled",
"aria-disabled"
]
def ignored_attrs, do: @ignored_attrs
end
defmodule Positioner do
@moduledoc false
defstruct [:id, :dir, orientation: "vertical"]
@type t :: %__MODULE__{id: String.t(), dir: String.t(), orientation: String.t()}
@ignored_attrs [
"dir",
"data-orientation",
"id",
"data-state",
"style",
"data-focus",
"hidden"
]
def ignored_attrs, do: @ignored_attrs
end
defmodule Content do
@moduledoc false
defstruct [:id, :dir, orientation: "vertical"]
@type t :: %__MODULE__{
id: String.t(),
dir: String.t(),
orientation: String.t()
}
@ignored_attrs [
"hidden",
"dir",
"data-orientation",
"id",
"data-state",
"style",
"data-focus",
"role",
"tabindex",
"data-placement",
"data-side"
]
def ignored_attrs, do: @ignored_attrs
end
defmodule Title do
@moduledoc false
defstruct [:id, :dir, orientation: "vertical"]
@type t :: %__MODULE__{id: String.t(), dir: String.t(), orientation: String.t()}
@ignored_attrs ["id", "dir", "data-orientation", "data-state", "data-focus"]
def ignored_attrs, do: @ignored_attrs
end
defmodule Header do
@moduledoc false
defstruct [:id, :dir, orientation: "vertical"]
@type t :: %__MODULE__{id: String.t(), dir: String.t(), orientation: String.t()}
@ignored_attrs ["id", "dir", "data-orientation", "data-state", "data-focus"]
def ignored_attrs, do: @ignored_attrs
end
defmodule Body do
@moduledoc false
defstruct [:id, :dir, orientation: "vertical"]
@type t :: %__MODULE__{id: String.t(), dir: String.t(), orientation: String.t()}
@ignored_attrs ["id", "dir", "data-orientation", "data-state", "data-focus"]
def ignored_attrs, do: @ignored_attrs
end
defmodule DragTrigger do
@moduledoc false
defstruct [:id, :dir, orientation: "vertical"]
@type t :: %__MODULE__{id: String.t(), dir: String.t(), orientation: String.t()}
@ignored_attrs [
"id",
"dir",
"data-orientation",
"data-state",
"data-focus",
"tabindex",
"role"
]
def ignored_attrs, do: @ignored_attrs
end
defmodule ResizeTrigger do
@moduledoc false
defstruct [:id, :axis, :dir, orientation: "vertical"]
@type t :: %__MODULE__{
id: String.t(),
axis: String.t(),
dir: String.t(),
orientation: String.t()
}
@ignored_attrs [
"id",
"dir",
"data-orientation",
"data-state",
"data-focus",
"data-axis",
"role",
"tabindex"
]
def ignored_attrs, do: @ignored_attrs
end
defmodule CloseTrigger do
@moduledoc false
defstruct [:id, :dir, orientation: "vertical"]
@type t :: %__MODULE__{id: String.t(), dir: String.t(), orientation: String.t()}
@ignored_attrs [
"type",
"tabindex",
"id",
"dir",
"data-orientation",
"data-state",
"data-focus",
"aria-label"
]
def ignored_attrs, do: @ignored_attrs
end
defmodule Control do
@moduledoc false
defstruct [:id, :dir, orientation: "vertical"]
@type t :: %__MODULE__{id: String.t(), dir: String.t(), orientation: String.t()}
@ignored_attrs ["id", "dir", "data-orientation", "data-state", "data-focus", "role"]
def ignored_attrs, do: @ignored_attrs
end
defmodule StageTrigger do
@moduledoc false
defstruct [:id, :stage, :dir, orientation: "vertical"]
@type t :: %__MODULE__{
id: String.t(),
stage: String.t(),
dir: String.t(),
orientation: String.t()
}
@ignored_attrs [
"type",
"tabindex",
"id",
"dir",
"data-orientation",
"data-state",
"data-focus",
"data-stage",
"aria-label",
"aria-pressed",
"disabled"
]
def ignored_attrs, do: @ignored_attrs
end
end