Sha256: 3b66f28b4c905adb55ae66bb6632201548620d7be7e4cc0a713754c41e01f8a8

Contents?: true

Size: 695 Bytes

Versions: 8

Compression:

Stored size: 695 Bytes

Contents

export interface <%= inertia_model_type %> {
  id: number
<% attributes.reject(&:password_digest?).each do |attribute| -%>
  <%= attribute.column_name %>: <%= ts_type(attribute) %>
<% end -%>
}

export type <%= inertia_model_form_type %> = Omit<<%= inertia_model_type %>, <%= omit_input_attributes.map { |a| "'#{a}'" }.join(' | ') %>><% if custom_form_attributes.any? -%> & {
<% custom_form_attributes.map do |attribute| -%>
<% if attribute.password_digest? -%>
  password: string
  password_confirmation: string
<% elsif attribute.attachment? -%>
  <%= attribute.column_name %>?: File
<% elsif attribute.attachments? -%>
  <%= attribute.column_name %>?: File[]
<% end -%>
<% end -%>
}<% end %>

Version data entries

8 entries across 1 versions & 1 rubygems

Version Path
inertia_rails-3.5.0 lib/generators/inertia_templates/scaffold/templates/react/types.ts.tt
inertia_rails-3.5.0 lib/generators/inertia_templates/scaffold/templates/svelte/types.ts.tt
inertia_rails-3.5.0 lib/generators/inertia_templates/scaffold/templates/svelte4/types.ts.tt
inertia_rails-3.5.0 lib/generators/inertia_templates/scaffold/templates/vue/types.ts.tt
inertia_rails-3.5.0 lib/generators/inertia_tw_templates/scaffold/templates/react/types.ts.tt
inertia_rails-3.5.0 lib/generators/inertia_tw_templates/scaffold/templates/svelte/types.ts.tt
inertia_rails-3.5.0 lib/generators/inertia_tw_templates/scaffold/templates/svelte4/types.ts.tt
inertia_rails-3.5.0 lib/generators/inertia_tw_templates/scaffold/templates/vue/types.ts.tt