Skip to content
This repository has been archived by the owner on Dec 8, 2023. It is now read-only.

Commit

Permalink
change element name to block, based on #4
Browse files Browse the repository at this point in the history
  • Loading branch information
shahryarjb committed Feb 3, 2023
1 parent 62d8b14 commit 2784333
Show file tree
Hide file tree
Showing 2 changed files with 72 additions and 51 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ defmodule MishkaTemplateCreatorWeb.MishkaCoreComponent do

slot :inner_block, required: true

@spec element(map) :: Phoenix.LiveView.Rendered.t()
def element(assigns) do
@spec block(map) :: Phoenix.LiveView.Rendered.t()
def block(assigns) do
~H"""
<div
data-id={@id}
Expand Down Expand Up @@ -70,11 +70,28 @@ defmodule MishkaTemplateCreatorWeb.MishkaCoreComponent do
def section(assigns) do
~H"""
<div class="create-sub-section" id={@id} data-type="section" data-tag={@tag || @id}>
<p :for={_child <- @children}>test</p>
<.element :for={child <- @children} type={child.type} id={child.id} />
</div>
"""
end

attr :id, :string, required: true
attr :on_delete, JS, default: %JS{}
attr :on_duplicate, JS, default: %JS{}
attr :rest, :global

def element(%{rest: %{type: "text"}} = assigns) do
~H"""
<p>text</p>
"""
end

def element(%{rest: %{type: "tabs"}} = assigns) do
~H"""
<p>tabs</p>
"""
end

attr :block_id, :string, required: true
attr :custom_class, :string, required: false
attr :on_click, JS, default: %JS{}
Expand Down Expand Up @@ -247,6 +264,10 @@ defmodule MishkaTemplateCreatorWeb.MishkaCoreComponent do
end)
end

def change_order(_elements, _current_index, _new_index, _parent_id, type)
when type in @elements_type do
end

@spec sort_elements_list(list, boolean) :: list
def sort_elements_list(list, auto \\ true) do
list
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,105 +67,105 @@
id="layoutBlock"
class="grid grid-cols-3 gap-4 text-gray-700 lg:grid-cols-3 2xl:grid-cols-4"
>
<.element id="layout" title="Layout">
<.block id="layout" title="Layout">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>

<.element id="section" title="Section">
<.block id="section" title="Section">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
<.element id="text" title="Text">
</.block>
<.block id="text" title="Text">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
<.element id="tabs" title="Tabs">
</.block>
<.block id="tabs" title="Tabs">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>

<.element id="columns" title="Columns">
<.block id="columns" title="Columns">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>

<.element id="table" title="Table">
<.block id="table" title="Table">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>

<.element id="accordion" title="Accordion">
<.block id="accordion" title="Accordion">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>

<.element id="auotes" title="Quotes">
<.block id="auotes" title="Quotes">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>
</div>
</div>
<hr />
<div id="Elements" class="flex flex-col px-2 py-4 mx-auto w-full">
<h3 class="mb-4 font-bold">Elements</h3>
<div class="grid grid-cols-3 gap-4 text-gray-700 lg:grid-cols-3 2xl:grid-cols-4">
<.element id="layout" title="Layout">
<.block id="layout" title="Layout">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>

<.element id="section" title="Section">
<.block id="section" title="Section">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
<.element id="text" title="Text">
</.block>
<.block id="text" title="Text">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
<.element id="tabs" title="Tabs">
</.block>
<.block id="tabs" title="Tabs">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>

<.element id="columns" title="Columns">
<.block id="columns" title="Columns">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>

<.element id="table" title="Table">
<.block id="table" title="Table">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>

<.element id="accordion" title="Accordion">
<.block id="accordion" title="Accordion">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>

<.element id="auotes" title="Quotes">
<.block id="auotes" title="Quotes">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>
</div>
</div>
<hr />
<div id="Media" class="flex flex-col px-2 py-4 mx-auto w-full">
<h3 class="mb-4 font-bold">Media</h3>
<div class="grid grid-cols-3 gap-4 text-gray-700 lg:grid-cols-3 2xl:grid-cols-4">
<.element id="layout" title="Layout">
<.block id="layout" title="Layout">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>

<.element id="section" title="Section">
<.block id="section" title="Section">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
<.element id="text" title="Text">
</.block>
<.block id="text" title="Text">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
<.element id="tabs" title="Tabs">
</.block>
<.block id="tabs" title="Tabs">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>

<.element id="columns" title="Columns">
<.block id="columns" title="Columns">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>

<.element id="table" title="Table">
<.block id="table" title="Table">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>

<.element id="accordion" title="Accordion">
<.block id="accordion" title="Accordion">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>

<.element id="auotes" title="Quotes">
<.block id="auotes" title="Quotes">
<Heroicons.inbox_stack class="w-6 h-6 mx-auto stroke-current" />
</.element>
</.block>
</div>
</div>
</div>
Expand Down

0 comments on commit 2784333

Please sign in to comment.