Renamed to finos/morphir-elm. It is published under that name, and new versions come out there.
Versions published as Morgan-Stanley/morphir-elm still install under that name. 5 versions of 5 come from the new location (see their notes).
Rerouted (fork, verified). The original repository is gone. This copy comes from a fork that still has the tag. The Lamdera package server serves a copy recovered from https://github.com/maoo/morphir-elm (a fork).
What we checked: Rebuilt with git archive from commit 51e7ceb666e5 of https://github.com/maoo/morphir-elm (a fork) (zip prefix Morgan-Stanley-morphir-elm-c0a167e/, America/Los_Angeles times): the zip is byte-identical to the one package.elm-lang.org recorded, SHA-1 a573dab6e577d8aa40585d10959c1dccb7b8f000.
The Lamdera compiler uses this copy and prints a one-line notice saying so. elm itself fails to download this version.
Details · package.elm-lang.org's zip: https://github.com/Morgan-Stanley/morphir-elm/zipball/2.0.0/
Name is an abstraction of human-readable identifiers made up of words. This abstraction
allows us to use the same identifiers across various naming conventions used by the different
frontend and backend languages Morphir integrates with.
name = fromList [ "value", "in", "u", "s", "d" ]
toTitleCase name --> "ValueInUSD"
toCamelCase name --> "valueInUSD"
toSnakeCase name --> "value_in_USD"We frequently use abbreviations in a business context to be more concise. From a naming perspective abbreviations are challanging because they are not real words and behave slightly differently. In this module we treat abbreviations as a list of single-letter words. This approach fits nicely into camel and title case naming conventions but when using snake-case the direct translation would look unnatural:
toSnakeCase name -- "value_in_u_s_d" ?To resolve this and help creating human-readable strings we added functionality to turn abbreviations into upper-case words. We treat any series of single letter words as an abbreviation:
toSnakeCase name --> "value_in_USD"Convert a list of strings into a name.
Convert a name to a list of strings.
Translate a string into a name by splitting it into words. The algorithm is designed to work with most well-known naming conventions or mix of them. The general rule is that consecutive letters and numbers are treated as words, upper-case letters and non-alphanumeric characters start a new word.
fromString "fooBar_baz 123"
--> Name.fromList [ "foo", "bar", "baz", "123" ]
fromString "valueInUSD"
--> Name.fromList [ "value", "in", "u", "s", "d" ]
fromString "ValueInUSD"
--> Name.fromList [ "value", "in", "u", "s", "d" ]
fromString "value_in_USD"
--> Name.fromList [ "value", "in", "u", "s", "d" ]
fromString "_-%"
--> Name.fromList []Turns a name into a title-case string.
toTitleCase (fromList [ "foo", "bar", "baz", "123" ])
--> "FooBarBaz123"
toTitleCase (fromList [ "value", "in", "u", "s", "d" ])
--> "ValueInUSD"Turns a name into a camel-case string.
toCamelCase (fromList [ "foo", "bar", "baz", "123" ])
--> "fooBarBaz123"
toCamelCase (fromList [ "value", "in", "u", "s", "d" ])
--> "valueInUSD"Turns a name into a snake-case string.
toSnakeCase (fromList [ "foo", "bar", "baz", "123" ])
--> "foo_bar_baz_123"
toSnakeCase (fromList [ "value", "in", "u", "s", "d" ])
--> "value_in_USD"Turns a name into a list of human-readable strings. The only difference
compared to toList is how it handles abbreviations. They will
be turned into a single upper-case word instead of separate single-character
words.
toHumanWords (fromList [ "value", "in", "u", "s", "d" ])
--> [ "value", "in", "USD" ]
Type that represents a name that is made up of words.