abradley2/elm-i18next-gen/1.0.0

NOTE: the latest version is 2.0.5

Rerouted (retagged, needs approval). The tag now points at a different commit than when this version was published. The Lamdera package server serves a copy recovered from https://github.com/abradley2/elm-i18next-gen.

What we checked: Tag 1.0.0 is still on github.com/abradley2/elm-i18next-gen; its commit ee635ec4bd59 is from 2022-10-06 11:26 UTC, after the version was published (2022-10-05 12:59 UTC); elm.json differs from package.elm-lang.org's; the exposed modules match docs.json; the zip's SHA-1 is not the published one and nothing else confirms its contents.

We could not verify this copy against what was published, so the Lamdera compiler asks before using it (y/n). Without a terminal, as in CI, it stops with an error unless approved:

  • lamdera make --auto-approve-package-rerouting approves rerouted versions for that run,
  • LAMDERA_AUTO_APPROVE_PACKAGE_REROUTING=1 does the same for every run in that environment,
  • LAMDERA_CACHE=off skips the Lamdera package server altogether: packages come from package.elm-lang.org and GitHub only, as with elm, and a rerouted version then fails to download.

Details · package.elm-lang.org's zip: https://github.com/abradley2/elm-i18next-gen/zipball/1.0.0/

I18NextGen

This module contains several functions useful in elm-codegen projects that allow you to generate type-safe code for use with ChristophP/elm-18next. The documentation in this project's README is likely more useful for consuming this module, so start there.

Utilities

files : Flags -> List File

Using the decoded flags (from flagsDecoder), this function will generate a list of Elm.File's to be used in your main Generate.elm function for elm-codegen

flagsDecoder : Decoder Flags

A decoder that consumes a JSON object that conforms to the I18Next v2 specification. This is just a simple object with string keys and string values, that may contain nested objects. The delimiter to replacement placeholders must be the "double curly" format {{like so}}.

type alias Flags =
{ node : Node
, formatted : Dict String String
}

The type for parsed Flags from flagsDecoder that will be needed to generate the resulting code.