Module

Faker.Helpers

Package
purescript-faker-ffi
Repository
philippedev101/purescript-faker-ffi

#elements Source

elements :: forall a. Array a -> Gen a

Pick a random element from an array.

#oneOf Source

oneOf :: forall a. Array (Gen a) -> Gen a

Pick a random generator from an array and run it.

#weighted Source

weighted :: forall a. Array { value :: a, weight :: Number } -> Gen a

Pick a random element with relative weights. weighted [{ value: "a", weight: 5.0 }, { value: "b", weight: 1.0 }] gives "a" 5x more often than "b".

#shuffle Source

shuffle :: forall a. Array a -> Gen (Array a)

Randomly reorder an array.

#uniqueArray Source

uniqueArray :: forall a. Array a -> Int -> Gen (Array a)

Pick N distinct elements from an array (source must have enough elements).

#uniqueArrayGen Source

uniqueArrayGen :: forall a. Gen a -> Int -> Gen (Array a)

Generate N unique values from a generator.

#sample Source

sample :: forall a. Int -> Array a -> Gen (Array a)

Pick a random subset of N elements from an array.

#sampleRange Source

sampleRange :: forall a. { max :: Int, min :: Int } -> Array a -> Gen (Array a)

Pick a random number of elements (between min and max) from an array.

#choose Source

choose :: Int -> Int -> Gen Int

Random int in range [min, max].

#chooseFloat Source

chooseFloat :: Number -> Number -> Gen Number

Random float in range [min, max].

#chance Source

chance :: Number -> Gen Boolean

Boolean with given probability of being true. chance 0.3 = 30% true.

#perhaps Source

perhaps :: forall a. Number -> Gen a -> Gen (Maybe a)

Generate a value with given probability, Nothing otherwise. perhaps 0.7 gen = 70% Just, 30% Nothing.

#listOf Source

listOf :: forall a. Int -> Gen a -> Gen (Array a)

Generate an array of N values.

#listOfRange Source

listOfRange :: forall a. Int -> Int -> Gen a -> Gen (Array a)

Generate an array with random length between min and max.

#frequency Source

frequency :: forall a. Array (Tuple Number (Gen a)) -> Gen a

Weighted choice over generators. Each pair is (weight, generator).

#joinWith Source

joinWith :: String -> Array (Gen String) -> Gen String

Generate strings and join them with a separator.

#slugify Source

slugify :: String -> String

Replace spaces with hyphens, strip non-word characters. Pure function.

#mustache Source

mustache :: forall r. String -> Record r -> String

Mustache-style template substitution. Pure function. mustache "Hello {{name}}" { name: "World" } = "Hello World"

#replaceSymbols Source

replaceSymbols :: String -> Gen String

Replace # with digit, ? with letter, * with either.

#replaceCreditCardSymbols Source

replaceCreditCardSymbols :: String -> String -> Gen String

Replace symbols and compute Luhn check digit for L.

#fromRegExp Source

fromRegExp :: String -> Gen String

Generate a string matching a regex-like pattern.

#fakePattern Source

fakePattern :: String -> Gen String

Interpolate {{module.method}} placeholders using faker methods.

#multiple Source

multiple :: forall a. Gen a -> Int -> Gen (Array a)

Use fakerjs helpers.multiple to call a generator N times.

#multipleRange Source

multipleRange :: forall a. Gen a -> { max :: Int, min :: Int } -> Gen (Array a)

Use fakerjs helpers.multiple with a random count in {min, max}.