sardaukar / phoenix_liveview_snippets

Phoenix LiveView snippets for Sublime Text

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Phoenix LiveView snippets for Sublime Text

Taken from the Phoenix LiveView course from The Pragmatic Studio.

Installation

Using Package Control, bring up the command palette and install the package by name. Alternatively, clone this repo as a subfolder inside your ~/.config/sublime-text/Packages folder.

Snippets included

Included:

  • checkbox -> <input type="checkbox" id="${1}" name="${2}" value="${3}"/>
  • econd -> <%= cond do %> <% $1 -> %> $2 <% true -> %> $3 <% end %>
  • data -> <datalist id="${1}"> ${0} </datalist>
  • eelse -> <% else %>
  • eend -> % end %>
  • hidden -> <input type="hidden" name="${1}" value="${2}" />
  • eif -> <%= if $1 do %> $2 <% end %>
  • eife -> <%= if $1 do %> $2 <% else %> $3 <% end %>
  • eifa -> <%= if $1, do: "{$1}" %>
  • input -> <input type="text" name="${1}" value="${2}" placeholder="${3}" />
  • et -> <%= $1 %>
  • eunless -> %= unless $1 do %> $2 <% end %>
  • efor -> <%= for ${1:item} <- @$1s do %> $2 <% end %>
  • efori -> <%= for ${1:item} <- @$1s do %> $2 <% end %>
  • lc -> defmodule LiveViewStudioWeb.${1}Component do use LiveViewStudioWeb, :live_component end]
  • he -> def handle_event(${1:event}, _, socket) do socket = assign(socket, ${2:key}: ${3:value}) {:noreply, socket} end
  • hi -> def handle_info(${1:message}, socket) do socket = assign(socket, ${2:key}: ${3:value}) {:noreply, socket} end
  • hp -> def handle_params(params, _url, socket) do {:noreply, socket} end
  • lv -> defmodule LiveViewStudioWeb.${1}Live do use LiveViewStudioWeb, :live_view end
  • mount -> def mount(_params, _session, socket) do socket = assign(socket, ${1:key}: ${2:value}) {:ok, socket} end
  • rend -> def render(assigns) do ~L""" ${0} """ end
  • lt -> ~L""" ${0} """
  • test -> test "${1:description}", %{conn: conn} do {:ok, view, _html} = live(conn, "${2:path}") ${0} end
  • lvtest -> defmodule LiveViewStudioWeb.${1}Test do use LiveViewStudioWeb.ConnCase, async: true import Phoenix.LiveViewTest ${0} end

Contributing

Pull requests welcome.

About

Phoenix LiveView snippets for Sublime Text

License:MIT License