mix mishka.ui.gen.mob.components (Mishka Chelekom v0.0.10)

Copy Markdown View Source

Generate multiple (or all) native Mob components at once

Pass a comma-separated list of Mob component names, or omit it (or pass all) to generate every component in priv/mob/.

Each one is generated by mix mishka.ui.gen.mob, so dependencies and the shared kit are resolved exactly as they are for a single component. The composite registry and Mob's config :mob, :extra_tags list are both written once at the end rather than after each component — doing either 72 times would be correct but pointlessly slow, and the tags queue a compile --force.

Declaring the tags is what lets you write <Chip label="Elixir" /> rather than {chip(label: "Elixir")}; see mix mishka.ui.gen.mob for why it is needed.

Example

mix mishka.ui.gen.mob.components drawer,dialog,tabs
mix mishka.ui.gen.mob.components             # all of them
mix mishka.ui.gen.mob.components all         # the same thing

Options

  • --exclude - Comma-separated names to skip
  • --component-prefix - Prefix for public function names
  • --module-prefix - Prefix for module names
  • --no-save - Use prefixes without saving them to config
  • --no-register - Do not write the composite-tag registry
  • --no-tags - Do not add the tags to config :mob, :extra_tags
  • --yes - Apply without prompts

Summary

Functions

igniter(igniter)

Callback implementation for Igniter.Mix.Task.igniter/1.