%= panda_cms_form_with model: post, url: url, method: post.persisted? ? :put : :post do |f| %>
<%= f.text_field :title,
class: "block w-full rounded-md border-0 p-2 text-gray-900 ring-1 ring-inset ring-mid placeholder:text-gray-300 focus:ring-1 focus:ring-inset focus:ring-dark sm:leading-6 hover:pointer",
data: {
"slug-target": "input_text",
action: "focusout->slug#generatePath"
} %>
<%= f.text_field :slug,
class: "block w-full rounded-md border-0 p-2 text-gray-900 ring-1 ring-inset ring-mid placeholder:text-gray-300 focus:ring-1 focus:ring-inset focus:ring-dark sm:leading-6 hover:pointer",
data: {
"slug-target": "output_text"
} %>
<%= f.select :author_id, Panda::CMS::User.admin.map { |u| [u.name, u.id] }, {}, class: "block w-full rounded-md border-0 py-1.5 pl-3 pr-10 text-gray-900 ring-1 ring-inset ring-mid focus:ring-1 focus:ring-inset focus:ring-dark sm:leading-6 hover:pointer" %>
<%= f.datetime_field :published_at, class: "block w-full rounded-md border-0 p-2 text-gray-900 ring-1 ring-inset ring-mid placeholder:text-gray-300 focus:ring-1 focus:ring-inset focus:ring-dark sm:leading-6 hover:pointer" %>
<%= f.select :status, options_for_select([["Active", "active"], ["Draft", "draft"], ["Hidden", "hidden"], ["Archived", "archived"]], selected: post.status), {}, class: "block w-full rounded-md border-0 py-1.5 pl-3 pr-10 text-gray-900 ring-1 ring-inset ring-mid focus:ring-1 focus:ring-inset focus:ring-dark sm:leading-6 hover:pointer" %>
<% editor_id = "editor_#{dom_id(post, :content)}" %>
<%= f.hidden_field :content,
data: {
editor_form_target: "hiddenField",
initial_content: editor_content_for(post, local_assigns[:preserved_content]),
action: "change->editor-form#handleContentChange"
} %>
<%= f.submit post.persisted? ? "Update Post" : "Create Post",
class: "btn btn-primary",
data: {
disable_with: "Saving...",
action: "click->editor-form#submit"
} %>
<% end %>