View Source Backpex.HTML.Resource (Backpex v0.4.0)

Contains all Backpex resource components.

Summary

Components

Renders an info block to indicate that no items are found.

Renders the index filters if the filter/0 callback is defined in the resource.

Renders form with a search field. Emits the simple-search-input event on change.

Renders a link to change the order direction for a given column.

Renders pagination buttons. You are required to provide a :page pattern in the URL. It will be replaced with the corresponding page number.

Renders pagination info about the current page.

Renders a button group with create and resource action buttons.

Renders the field of the given resource.

Renders the input fields for filters and search.

Renders a resource form field.

Renders the main resource index content.

Renders a resource table.

Renders a show card.

Renders a select per page button.

Functions

Renders an edit panel.

Checks the given module if it has a confirm/1 function exported or a list with fields.

Creates a list of pagination items based on the current page and the total number of pages. A maximum of five pages will be displayed.

Renders the metrics area for the current resource.

Renders a show panel.

Attributes

  • socket (:any) (required)
  • active_fields (:list) (required) - list of active fields.
  • live_resource (:atom) (required) - the live resource.
  • current_url (:string) (required) - the current url.
  • class (:string) - additional class to be added to the component. Defaults to "".
  • x_style (:string) - alpine-bound inline styles for the root div. Defaults to "".

Attributes

  • form (:any) (required) - the form.
  • active_fields (:list) (required) - list of active fields to be displayed.

Components

Renders an info block to indicate that no items are found.

Attributes

  • socket (:any) (required)
  • live_resource (:atom) (required) - live resource module.
  • params (:map) (required) - query params.
  • singular_name (:string) (required) - singular name of the resource.

Renders the index filters if the filter/0 callback is defined in the resource.

Attributes

  • live_resource (:any) (required) - module of the live resource.
  • filter_options (:map) (required) - filter options.
  • filters (:list) (required) - list of active filters.
Link to this function

index_search_form(assigns)

View Source

Renders form with a search field. Emits the simple-search-input event on change.

Attributes

  • searchable_fields (:list) - The fields that can be searched. Here only used to hide the component when empty. Defaults to [].
  • full_text_search (:string) - full text search column name. Defaults to nil.
  • value (:string) (required) - value binding for the search input.
  • placeholder (:string) (required) - placeholder for the search input.

Renders a link to change the order direction for a given column.

Attributes

  • socket (:map) (required)
  • live_resource (:any) (required) - module of the live resource.
  • params (:string) (required) - query parameters.
  • query_options (:map) (required) - query options.
  • label (:string) (required) - label to be displayed on the link.
  • name (:atom) (required) - name of the column the link should change order for.

Renders pagination buttons. You are required to provide a :page pattern in the URL. It will be replaced with the corresponding page number.

Attributes

  • current_page (:integer) (required) - current page number.
  • total_pages (:integer) (required) - number of total pages.
  • path (:string) (required) - path to be used for page links.
Link to this function

pagination_info(assigns)

View Source

Renders pagination info about the current page.

Attributes

  • total (:integer) (required) - total number of items.
  • query_options (:map) (required) - query options.
Link to this function

resource_buttons(assigns)

View Source

Renders a button group with create and resource action buttons.

Attributes

  • socket (:any) (required)
  • live_resource (:any) (required) - module of the live resource.
  • params (:string) (required) - query parameters.
  • query_options (:map) - query options. Defaults to %{}.
  • resource_actions (:list) - list of all resource actions provided by the resource configuration. Defaults to [].
  • singular_name (:string) (required) - singular name of the resource.

Renders the field of the given resource.

Attributes

  • name (:string) (required) - name / key of the item field.
  • item (:map) (required) - the item which provides the value to be rendered.
  • fields (:list) (required) - list of all fields provided by the resource configuration.
Link to this function

resource_filters(assigns)

View Source

Renders the input fields for filters and search.

Attributes

  • live_resource (:any) (required) - module of the live resource.
  • searchable_fields (:list) - The fields that can be searched. Here only used to hide the component when empty. Defaults to [].
  • full_text_search (:string) - full text search column name. Defaults to nil.
  • query_options (:map) - query options. Defaults to %{}.
  • search_placeholder (:string) (required) - placeholder for the search input.
Link to this function

resource_form_field(assigns)

View Source

Renders a resource form field.

Attributes

  • name (:string) (required) - name / key of the item field.
  • form (:map) (required) - form that will be used by the form field.
  • repo (:any) - ecto repo.
  • uploads (:map) - map that contains upload information. Defaults to %{}.
  • fields (:list) (required) - list of all fields provided by the resource configuration.
Link to this function

resource_index_main(assigns)

View Source

Renders the main resource index content.

Attributes

  • socket (:any) (required)
  • live_resource (:any) (required) - module of the live resource.
  • params (:string) (required) - query parameters.
  • query_options (:map) - query options. Defaults to %{}.
  • total_pages (:integer) - amount of total pages. Defaults to 1.
  • resource_actions (:list) - list of all resource actions provided by the resource configuration. Defaults to [].
  • singular_name (:string) (required) - singular name of the resource.
  • orderable_fields (:list) - list of orderable fields. Defaults to [].
  • items (:list) - items that will be displayed in the table. Defaults to [].
  • fields (:list) - list of fields to be displayed in the table on index view. Defaults to [].
Link to this function

resource_index_table(assigns)

View Source

Renders a resource table.

Attributes

  • socket (:any) (required)
  • live_resource (:any) (required) - module of the live resource.
  • params (:string) (required) - query parameters.
  • query_options (:map) - query options. Defaults to %{}.
  • fields (:list) (required) - list of fields to be displayed in the table on index view.
  • orderable_fields (:list) - list of orderable fields. Defaults to [].
  • searchable_fields (:list) - list of searchable fields. Defaults to [].
  • items (:list) - items that will be displayed in the table. Defaults to [].
  • active_fields (:list) (required) - list of active fields.
  • selected_items (:list) (required) - list of selected items.
Link to this function

resource_show_main(assigns)

View Source

Renders a show card.

Attributes

  • socket (:any) (required)
  • live_resource (:any) (required) - module of the live resource.
  • params (:string) (required) - query parameters.
  • item (:map) (required) - item that will be rendered on the card.
  • fields (:list) (required) - list of fields to be displayed on the card.
Link to this function

select_per_page(assigns)

View Source

Renders a select per page button.

Attributes

  • options (:list) (required) - A list of per page options.
  • query_options (:map) - The query options. Defaults to %{}.
  • class (:string) - Extra class to be added to the select. Defaults to "".

Functions

Renders an edit panel.

Attributes

  • form (:any)
  • class (:string) - extra class to be added. Defaults to "".
  • panel_fields (:list) (required) - list of fields to be rendered in the panel.
  • label (:any) - optional label for the panel. Defaults to nil.

Checks the given module if it has a confirm/1 function exported or a list with fields.

Link to this function

pagination_items(current_page, total_pages)

View Source

Creates a list of pagination items based on the current page and the total number of pages. A maximum of five pages will be displayed.

Example

iex> Backpex.HTML.Resource.pagination_items(1, 1)
[%{type: :number, number: 1}]

iex> Backpex.HTML.Resource.pagination_items(1, 2)
[%{type: :number, number: 1}, %{type: :number, number: 2}, %{type: :next, number: nil}]

iex> Backpex.HTML.Resource.pagination_items(2, 2)
[%{type: :prev, number: nil}, %{type: :number, number: 1}, %{type: :number, number: 2}]

iex> Backpex.HTML.Resource.pagination_items(2, 8)
[%{type: :prev, number: nil}, %{type: :number, number: 1}, %{type: :number, number: 2}, %{type: :number, number: 3}, %{type: :number, number: 4}, %{type: :placeholder, number: nil}, %{type: :number, number: 8}, %{type: :next, number: nil}]

iex> Backpex.HTML.Resource.pagination_items(5, 10)
[%{type: :prev, number: nil}, %{type: :number, number: 1}, %{type: :placeholder, number: nil}, %{type: :number, number: 4}, %{type: :number, number: 5}, %{type: :number, number: 6}, %{type: :placeholder, number: nil}, %{type: :number, number: 10}, %{type: :next, number: nil}]

iex> Backpex.HTML.Resource.pagination_items(9, 10)
[%{type: :prev, number: nil}, %{type: :number, number: 1}, %{type: :placeholder, number: nil}, %{type: :number, number: 7}, %{type: :number, number: 8}, %{type: :number, number: 9}, %{type: :number, number: 10}, %{type: :next, number: nil}]
Link to this function

resource_form_main(assigns)

View Source
Link to this function

resource_metrics(assigns)

View Source

Renders the metrics area for the current resource.

Attributes

  • metrics (:list) - list of metrics to be displayed. Defaults to [].

Renders a show panel.

Attributes

  • panel_fields (:list) (required) - list of fields to be rendered in the panel.
  • class (:string) - extra class to be added. Defaults to "".
  • label (:any) - optional label for the panel. Defaults to nil.

Attributes

  • socket (:any) (required)
  • active_fields (:list) (required) - list of active fields.
  • live_resource (:atom) (required) - the live resource.
  • current_url (:string) (required) - the current url.
  • class (:string) - additional class to be added to the component. Defaults to "".
  • x_style (:string) - alpine-bound inline styles for the root div. Defaults to "".
Link to this function

toggle_columns_inputs(assigns)

View Source

Attributes

  • form (:any) (required) - the form.
  • active_fields (:list) (required) - list of active fields to be displayed.