@gryt/core 0.16.0 → 0.16.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -155,7 +155,8 @@ export class FakeDeliveryService {
|
|
|
155
155
|
if (conversationId === undefined) {
|
|
156
156
|
const devices = this.devicesOf([me]).map((d) => {
|
|
157
157
|
const at = this.deviceAddedAt.get(d.deviceId);
|
|
158
|
-
|
|
158
|
+
const lastResort = [...this.keyPackages].reverse().find((k) => k.deviceId === d.deviceId && k.lastResort)?.data ?? null;
|
|
159
|
+
return { ...d, ...(at ? { createdAt: at, lastSeenAt: at } : {}), lastResortKeyPackage: lastResort };
|
|
159
160
|
});
|
|
160
161
|
return { ok: true, devices };
|
|
161
162
|
}
|
package/dist/mls/dmDriver.js
CHANGED
|
@@ -730,8 +730,10 @@ export function createMlsDmDriver(options) {
|
|
|
730
730
|
});
|
|
731
731
|
}
|
|
732
732
|
}
|
|
733
|
-
/** Names from certificates under your own person key: this device's,
|
|
734
|
-
|
|
733
|
+
/** Names from certificates under your own person key: this device's, your leaves in each group,
|
|
734
|
+
then the last-resort KeyPackage the server lists with each of your devices. */
|
|
735
|
+
async function ownDeviceNames(d, listed) {
|
|
736
|
+
const wanted = new Set(listed.map((x) => x.deviceId));
|
|
735
737
|
const mine = readDeviceCertificate(d.certificate, scope);
|
|
736
738
|
const names = new Map([[mine.deviceId, mine.deviceName]]);
|
|
737
739
|
const unnamed = () => [...wanted].some((id) => !names.has(id));
|
|
@@ -751,6 +753,20 @@ export function createMlsDmDriver(options) {
|
|
|
751
753
|
}
|
|
752
754
|
}
|
|
753
755
|
}
|
|
756
|
+
// Checked here, not trusted: a package that doesn't verify, or isn't under your person key, names nothing.
|
|
757
|
+
for (const x of listed) {
|
|
758
|
+
if (names.has(x.deviceId) || !x.lastResortKeyPackage)
|
|
759
|
+
continue;
|
|
760
|
+
try {
|
|
761
|
+
const bytes = x.lastResortKeyPackage instanceof Uint8Array ? x.lastResortKeyPackage : new Uint8Array(x.lastResortKeyPackage);
|
|
762
|
+
const { certificate: c } = await readMlsKeyPackage(bytes, scope);
|
|
763
|
+
if (c.deviceId === x.deviceId && sameBytes(c.personPublicKey, mine.personPublicKey))
|
|
764
|
+
names.set(x.deviceId, c.deviceName);
|
|
765
|
+
}
|
|
766
|
+
catch {
|
|
767
|
+
// Expired or malformed: the device stays unnamed rather than misnamed.
|
|
768
|
+
}
|
|
769
|
+
}
|
|
754
770
|
return names;
|
|
755
771
|
}
|
|
756
772
|
async function ownDevices() {
|
|
@@ -759,7 +775,7 @@ export function createMlsDmDriver(options) {
|
|
|
759
775
|
throw refused("Listing devices", r);
|
|
760
776
|
const d = await ownDevice();
|
|
761
777
|
const listed = r.devices.filter((x) => x.serverUserId === self);
|
|
762
|
-
const names = await ownDeviceNames(d,
|
|
778
|
+
const names = await ownDeviceNames(d, listed);
|
|
763
779
|
return listed.map((x) => ({
|
|
764
780
|
serverUserId: x.serverUserId,
|
|
765
781
|
deviceId: x.deviceId,
|
package/dist/mls/interfaces.d.ts
CHANGED
|
@@ -17,6 +17,8 @@ export interface MlsDeviceRef {
|
|
|
17
17
|
export interface MlsListedDevice extends MlsDeviceRef {
|
|
18
18
|
createdAt?: string;
|
|
19
19
|
lastSeenAt?: string;
|
|
20
|
+
/** On your own list: the device's last-resort KeyPackage, whose certificate names it (GRYT-1764). */
|
|
21
|
+
lastResortKeyPackage?: Uint8Array | ArrayBuffer | null;
|
|
20
22
|
}
|
|
21
23
|
/** The server's view of a group. `groupId` is lower-case hex. */
|
|
22
24
|
export interface MlsGroupView {
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Gems, metals, animals, weather, sky, and a few playful roles. Long enough that a room of
|
|
3
|
-
* thirty rarely doubles up, which is the whole reason for the size.
|
|
4
|
-
*/
|
|
5
|
-
export declare const NAME_POOL: readonly ["Ruby", "Emerald", "Diamond", "Sapphire", "Topaz", "Opal", "Amber", "Jade", "Onyx", "Pearl", "Quartz", "Garnet", "Amethyst", "Turquoise", "Obsidian", "Marble", "Granite", "Flint", "Slate", "Crystal", "Gold", "Silver", "Copper", "Bronze", "Iron", "Steel", "Cobalt", "Pewter", "Platinum", "Titanium", "Brass", "Nickel", "Shark", "Turtle", "Otter", "Falcon", "Heron", "Badger", "Lynx", "Bison", "Walrus", "Puffin", "Osprey", "Marten", "Ibex", "Tapir", "Gecko", "Manta", "Narwhal", "Pelican", "Raven", "Magpie", "Sparrow", "Kestrel", "Weasel", "Beaver", "Moose", "Elk", "Stoat", "Hedgehog", "Mongoose", "Meerkat", "Albatross", "Barnacle", "Urchin", "Cuttlefish", "Seal", "Puma", "Ocelot", "Caribou", "Wombat", "Numbat", "Quokka", "Capybara", "Sheriff", "Bandit", "Captain", "Ranger", "Scout", "Pilot", "Sailor", "Miner", "Baker", "Cooper", "Mason", "Tinker", "Herald", "Envoy", "Courier", "Gardener", "Lookout", "Skipper", "Wrangler", "Drifter", "Comet", "Nebula", "Quasar", "Aurora", "Meteor", "Eclipse", "Zenith", "Thunder", "Cyclone", "Monsoon", "Blizzard", "Drizzle", "Gale", "Frost", "Ember", "Cinder", "Vapour", "Mistral", "Zephyr", "Squall", "Canyon", "Fjord", "Glacier", "Delta", "Mesa", "Tundra", "Prairie", "Dune", "Reef", "Atoll", "Summit", "Ridge", "Hollow", "Meadow", "Thicket", "Bramble", "Harbour", "Lagoon", "Cove", "Cascade", "Cedar", "Juniper", "Willow", "Birch", "Aspen", "Alder", "Hazel", "Bracken", "Clover", "Fennel", "Sorrel", "Nettle", "Thistle", "Heather", "Saffron", "Cardamom", "Chicory", "Marigold"];
|
|
1
|
+
export declare const NAME_POOL: readonly ["Ruby", "Emerald", "Diamond", "Sapphire", "Topaz", "Opal", "Amber", "Jade", "Onyx", "Pearl", "Quartz", "Garnet", "Amethyst", "Turquoise", "Obsidian", "Marble", "Granite", "Flint", "Slate", "Crystal", "Agate", "Malachite", "Basalt", "Pumice", "Mica", "Feldspar", "Gypsum", "Cinnabar", "Pyrite", "Zircon", "Peridot", "Spinel", "Tourmaline", "Lapis", "Chalk", "Shale", "Galena", "Graphite", "Ochre", "Sandstone", "Limestone", "Pebble", "Cobble", "Gold", "Silver", "Copper", "Bronze", "Iron", "Steel", "Cobalt", "Pewter", "Platinum", "Titanium", "Brass", "Nickel", "Zinc", "Tin", "Chrome", "Tungsten", "Bismuth", "Gallium", "Osmium", "Iridium", "Palladium", "Rhodium", "Lithium", "Neon", "Argon", "Xenon", "Helium", "Carbon", "Shark", "Turtle", "Otter", "Falcon", "Heron", "Badger", "Lynx", "Bison", "Walrus", "Puffin", "Osprey", "Marten", "Ibex", "Tapir", "Gecko", "Manta", "Narwhal", "Pelican", "Raven", "Magpie", "Sparrow", "Kestrel", "Weasel", "Beaver", "Moose", "Elk", "Stoat", "Hedgehog", "Mongoose", "Meerkat", "Albatross", "Barnacle", "Urchin", "Cuttlefish", "Seal", "Puma", "Ocelot", "Caribou", "Wombat", "Numbat", "Quokka", "Capybara", "Panda", "Koala", "Lemur", "Gibbon", "Jaguar", "Cheetah", "Leopard", "Panther", "Coyote", "Jackal", "Dingo", "Ferret", "Mink", "Ermine", "Sable", "Marmot", "Chipmunk", "Squirrel", "Hamster", "Gopher", "Raccoon", "Possum", "Armadillo", "Sloth", "Anteater", "Pangolin", "Aardvark", "Okapi", "Giraffe", "Zebra", "Rhino", "Hippo", "Camel", "Llama", "Alpaca", "Yak", "Gazelle", "Impala", "Antelope", "Kudu", "Oryx", "Hyena", "Mole", "Shrew", "Vole", "Dormouse", "Hare", "Rabbit", "Fox", "Wolf", "Bear", "Lion", "Tiger", "Bobcat", "Cougar", "Wolverine", "Mammoth", "Orca", "Dolphin", "Porpoise", "Manatee", "Dugong", "Beluga", "Octopus", "Squid", "Nautilus", "Lobster", "Crab", "Shrimp", "Krill", "Starfish", "Jellyfish", "Seahorse", "Marlin", "Tuna", "Salmon", "Trout", "Pike", "Perch", "Carp", "Herring", "Mackerel", "Sardine", "Anchovy", "Halibut", "Flounder", "Stingray", "Eel", "Barracuda", "Grouper", "Sheriff", "Bandit", "Captain", "Ranger", "Scout", "Pilot", "Sailor", "Miner", "Baker", "Cooper", "Mason", "Tinker", "Herald", "Envoy", "Courier", "Gardener", "Lookout", "Skipper", "Wrangler", "Drifter", "Navigator", "Cartographer", "Keeper", "Shepherd", "Juggler", "Wizard", "Druid", "Bard", "Jester", "Knight", "Squire", "Tailor", "Weaver", "Brewer", "Glazier", "Cobbler", "Farrier", "Forager", "Nomad", "Pioneer", "Voyager", "Wanderer", "Rambler", "Hermit", "Pilgrim", "Sentinel", "Warden", "Steward", "Builder", "Painter", "Sculptor", "Poet", "Drummer", "Fiddler", "Busker", "Chef", "Barista", "Detective", "Inventor", "Alchemist", "Astronomer", "Botanist", "Beekeeper", "Falconer", "Trapper", "Climber", "Diver", "Surfer", "Skater", "Runner", "Rider", "Racer", "Champion", "Rookie", "Maverick", "Rascal", "Rogue", "Scamp", "Outlaw", "Pirate", "Corsair", "Buccaneer", "Admiral", "Commodore", "Bosun", "Deckhand", "Comet", "Nebula", "Quasar", "Aurora", "Meteor", "Eclipse", "Zenith", "Thunder", "Cyclone", "Monsoon", "Blizzard", "Drizzle", "Gale", "Frost", "Ember", "Cinder", "Vapour", "Mistral", "Zephyr", "Squall", "Rainbow", "Sunbeam", "Moonbeam", "Starlight", "Twilight", "Dusk", "Daybreak", "Sunrise", "Sunset", "Solstice", "Equinox", "Galaxy", "Pulsar", "Orbit", "Cosmos", "Asteroid", "Satellite", "Rocket", "Crescent", "Horizon", "Mirage", "Halo", "Rain", "Hail", "Sleet", "Mist", "Fog", "Haze", "Breeze", "Gust", "Tempest", "Typhoon", "Hurricane", "Tornado", "Whirlwind", "Downpour", "Snowflake", "Snowdrift", "Icicle", "Hailstone", "Lightning", "Sirocco", "Rainfall", "Updraft", "Jetstream", "Canyon", "Fjord", "Glacier", "Delta", "Mesa", "Tundra", "Prairie", "Dune", "Reef", "Atoll", "Summit", "Ridge", "Hollow", "Meadow", "Thicket", "Bramble", "Harbour", "Lagoon", "Cove", "Cascade", "Valley", "Gorge", "Ravine", "Gully", "Plateau", "Butte", "Crag", "Bluff", "Knoll", "Marsh", "Bog", "Fen", "Swamp", "Bayou", "Estuary", "Inlet", "Bay", "Strait", "Peninsula", "Island", "Islet", "Archipelago", "Volcano", "Crater", "Geyser", "Creek", "Stream", "Rapids", "Waterfall", "Oasis", "Steppe", "Taiga", "Jungle", "Grove", "Orchard", "Glade", "Clearing", "Woodland", "Badlands", "Caldera", "Shoal", "Sandbar", "Shore", "Beach", "Headland", "Cape", "Peak", "Pinnacle", "Spire", "Boulder", "Cavern", "Grotto", "Burrow", "Quarry", "Cedar", "Juniper", "Willow", "Birch", "Aspen", "Alder", "Hazel", "Bracken", "Clover", "Fennel", "Sorrel", "Nettle", "Thistle", "Heather", "Saffron", "Cardamom", "Chicory", "Marigold", "Maple", "Oak", "Pine", "Spruce", "Fir", "Larch", "Yew", "Elm", "Beech", "Hawthorn", "Sycamore", "Poplar", "Cypress", "Redwood", "Sequoia", "Baobab", "Acacia", "Bamboo", "Fern", "Moss", "Lichen", "Thyme", "Mint", "Oregano", "Dill", "Parsley", "Lavender", "Tarragon", "Cumin", "Nutmeg", "Clove", "Pepper", "Paprika", "Vanilla", "Cinnamon", "Anise", "Tulip", "Lotus", "Orchid", "Peony", "Lilac", "Foxglove", "Bluebell", "Snowdrop", "Primrose", "Cowslip", "Gorse", "Sedge", "Reed", "Kelp", "Seaweed", "Cactus", "Agave", "Aloe", "Yucca", "Acorn", "Pinecone", "Chestnut", "Walnut", "Almond", "Pistachio", "Cashew", "Peanut", "Coconut", "Mango", "Papaya", "Lemon", "Lime", "Plum", "Apricot", "Peach", "Pear", "Quince", "Fig", "Melon", "Turnip", "Radish", "Parsnip", "Pumpkin", "Squash", "Gourd", "Mushroom", "Toadstool", "Finch", "Lark", "Swift", "Swallow", "Starling", "Thrush", "Owl", "Eagle", "Hawk", "Kite", "Condor", "Vulture", "Crane", "Stork", "Egret", "Ibis", "Flamingo", "Toucan", "Parrot", "Macaw", "Cockatoo", "Kakapo", "Emu", "Ostrich", "Penguin", "Gannet", "Cormorant", "Tern", "Gull", "Plover", "Sandpiper", "Curlew", "Snipe", "Woodcock", "Grouse", "Quail", "Pheasant", "Peacock", "Partridge", "Dove", "Pigeon", "Rook", "Jackdaw", "Crow", "Nightjar", "Hoopoe", "Kingfisher", "Bunting", "Warbler", "Oriole", "Tanager", "Hummingbird", "Woodpecker", "Nuthatch", "Dipper", "Goldcrest", "Iguana", "Python", "Cobra", "Viper", "Adder", "Chameleon", "Tortoise", "Terrapin", "Newt", "Toad", "Frog", "Axolotl", "Salamander", "Caiman", "Beetle", "Cricket", "Firefly", "Hornet", "Bumblebee", "Ladybird", "Mantis", "Moth", "Butterfly", "Dragonfly", "Mayfly", "Cicada", "Termite", "Weevil", "Scarab", "Spider", "Scorpion", "Biscuit", "Pretzel", "Waffle", "Pancake", "Muffin", "Crumpet", "Bagel", "Noodle", "Dumpling", "Pickle", "Pudding", "Toffee", "Fudge", "Nougat", "Marzipan", "Truffle", "Sherbet", "Sorbet", "Custard", "Teacake", "Scone", "Brioche", "Strudel", "Lantern", "Compass", "Anchor", "Kettle", "Teapot", "Sextant", "Telescope", "Beacon", "Lighthouse", "Windmill", "Pinwheel", "Paddle", "Rudder", "Tiller", "Mast", "Satchel", "Kayak", "Canoe", "Sled", "Toboggan", "Hammock", "Button", "Thimble", "Bobbin", "Spindle", "Quill", "Inkwell", "Sundial", "Hourglass"];
|
|
6
2
|
/**
|
|
7
3
|
* One name from the pool. `Math.random` on purpose: this picks something to be called, not a
|
|
8
4
|
* secret, and the crypto RNG here would suggest otherwise.
|
|
@@ -1,40 +1,98 @@
|
|
|
1
1
|
/* Adding to this list: only nouns, only English, nothing that reads as a real person's name.
|
|
2
2
|
Whoever gets one did not choose it, and "Marcus" looks like a claim. */
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
* thirty rarely doubles up, which is the whole reason for the size.
|
|
6
|
-
*/
|
|
3
|
+
/* Gems, metals, animals, weather, plants, food and playful roles. 152 gave two Golds on one server;
|
|
4
|
+
at this size a room of ten rarely doubles up, and the name tags tell any two apart. */
|
|
7
5
|
export const NAME_POOL = [
|
|
8
6
|
// Gems and minerals
|
|
9
|
-
"Ruby", "Emerald", "Diamond", "Sapphire", "Topaz", "Opal", "Amber", "Jade",
|
|
10
|
-
"
|
|
11
|
-
"
|
|
7
|
+
"Ruby", "Emerald", "Diamond", "Sapphire", "Topaz", "Opal", "Amber", "Jade", "Onyx", "Pearl",
|
|
8
|
+
"Quartz", "Garnet", "Amethyst", "Turquoise", "Obsidian", "Marble", "Granite", "Flint", "Slate",
|
|
9
|
+
"Crystal", "Agate", "Malachite", "Basalt", "Pumice", "Mica", "Feldspar", "Gypsum", "Cinnabar",
|
|
10
|
+
"Pyrite", "Zircon", "Peridot", "Spinel", "Tourmaline", "Lapis", "Chalk", "Shale", "Galena",
|
|
11
|
+
"Graphite", "Ochre", "Sandstone", "Limestone", "Pebble", "Cobble",
|
|
12
12
|
// Metals
|
|
13
|
-
"Gold", "Silver", "Copper", "Bronze", "Iron", "Steel", "Cobalt", "Pewter",
|
|
14
|
-
"
|
|
13
|
+
"Gold", "Silver", "Copper", "Bronze", "Iron", "Steel", "Cobalt", "Pewter", "Platinum",
|
|
14
|
+
"Titanium", "Brass", "Nickel", "Zinc", "Tin", "Chrome", "Tungsten", "Bismuth", "Gallium",
|
|
15
|
+
"Osmium", "Iridium", "Palladium", "Rhodium", "Lithium", "Neon", "Argon", "Xenon", "Helium",
|
|
16
|
+
"Carbon",
|
|
15
17
|
// Animals
|
|
16
|
-
"Shark", "Turtle", "Otter", "Falcon", "Heron", "Badger", "Lynx", "Bison",
|
|
17
|
-
"
|
|
18
|
-
"
|
|
19
|
-
"
|
|
20
|
-
"
|
|
21
|
-
"
|
|
18
|
+
"Shark", "Turtle", "Otter", "Falcon", "Heron", "Badger", "Lynx", "Bison", "Walrus", "Puffin",
|
|
19
|
+
"Osprey", "Marten", "Ibex", "Tapir", "Gecko", "Manta", "Narwhal", "Pelican", "Raven", "Magpie",
|
|
20
|
+
"Sparrow", "Kestrel", "Weasel", "Beaver", "Moose", "Elk", "Stoat", "Hedgehog", "Mongoose",
|
|
21
|
+
"Meerkat", "Albatross", "Barnacle", "Urchin", "Cuttlefish", "Seal", "Puma", "Ocelot", "Caribou",
|
|
22
|
+
"Wombat", "Numbat", "Quokka", "Capybara", "Panda", "Koala", "Lemur", "Gibbon", "Jaguar",
|
|
23
|
+
"Cheetah", "Leopard", "Panther", "Coyote", "Jackal", "Dingo", "Ferret", "Mink", "Ermine",
|
|
24
|
+
"Sable", "Marmot", "Chipmunk", "Squirrel", "Hamster", "Gopher", "Raccoon", "Possum",
|
|
25
|
+
"Armadillo", "Sloth", "Anteater", "Pangolin", "Aardvark", "Okapi", "Giraffe", "Zebra", "Rhino",
|
|
26
|
+
"Hippo", "Camel", "Llama", "Alpaca", "Yak", "Gazelle", "Impala", "Antelope", "Kudu", "Oryx",
|
|
27
|
+
"Hyena", "Mole", "Shrew", "Vole", "Dormouse", "Hare", "Rabbit", "Fox", "Wolf", "Bear", "Lion",
|
|
28
|
+
"Tiger", "Bobcat", "Cougar", "Wolverine", "Mammoth", "Orca", "Dolphin", "Porpoise", "Manatee",
|
|
29
|
+
"Dugong", "Beluga", "Octopus", "Squid", "Nautilus", "Lobster", "Crab", "Shrimp", "Krill",
|
|
30
|
+
"Starfish", "Jellyfish", "Seahorse", "Marlin", "Tuna", "Salmon", "Trout", "Pike", "Perch",
|
|
31
|
+
"Carp", "Herring", "Mackerel", "Sardine", "Anchovy", "Halibut", "Flounder", "Stingray", "Eel",
|
|
32
|
+
"Barracuda", "Grouper",
|
|
22
33
|
// Roles, playful
|
|
23
|
-
"Sheriff", "Bandit", "Captain", "Ranger", "Scout", "Pilot", "Sailor",
|
|
24
|
-
"
|
|
25
|
-
"
|
|
34
|
+
"Sheriff", "Bandit", "Captain", "Ranger", "Scout", "Pilot", "Sailor", "Miner", "Baker",
|
|
35
|
+
"Cooper", "Mason", "Tinker", "Herald", "Envoy", "Courier", "Gardener", "Lookout", "Skipper",
|
|
36
|
+
"Wrangler", "Drifter", "Navigator", "Cartographer", "Keeper", "Shepherd", "Juggler", "Wizard",
|
|
37
|
+
"Druid", "Bard", "Jester", "Knight", "Squire", "Tailor", "Weaver", "Brewer", "Glazier",
|
|
38
|
+
"Cobbler", "Farrier", "Forager", "Nomad", "Pioneer", "Voyager", "Wanderer", "Rambler", "Hermit",
|
|
39
|
+
"Pilgrim", "Sentinel", "Warden", "Steward", "Builder", "Painter", "Sculptor", "Poet", "Drummer",
|
|
40
|
+
"Fiddler", "Busker", "Chef", "Barista", "Detective", "Inventor", "Alchemist", "Astronomer",
|
|
41
|
+
"Botanist", "Beekeeper", "Falconer", "Trapper", "Climber", "Diver", "Surfer", "Skater",
|
|
42
|
+
"Runner", "Rider", "Racer", "Champion", "Rookie", "Maverick", "Rascal", "Rogue", "Scamp",
|
|
43
|
+
"Outlaw", "Pirate", "Corsair", "Buccaneer", "Admiral", "Commodore", "Bosun", "Deckhand",
|
|
26
44
|
// Weather and sky
|
|
27
|
-
"Comet", "Nebula", "Quasar", "Aurora", "Meteor", "Eclipse", "Zenith",
|
|
28
|
-
"
|
|
29
|
-
"
|
|
45
|
+
"Comet", "Nebula", "Quasar", "Aurora", "Meteor", "Eclipse", "Zenith", "Thunder", "Cyclone",
|
|
46
|
+
"Monsoon", "Blizzard", "Drizzle", "Gale", "Frost", "Ember", "Cinder", "Vapour", "Mistral",
|
|
47
|
+
"Zephyr", "Squall", "Rainbow", "Sunbeam", "Moonbeam", "Starlight", "Twilight", "Dusk",
|
|
48
|
+
"Daybreak", "Sunrise", "Sunset", "Solstice", "Equinox", "Galaxy", "Pulsar", "Orbit", "Cosmos",
|
|
49
|
+
"Asteroid", "Satellite", "Rocket", "Crescent", "Horizon", "Mirage", "Halo", "Rain", "Hail",
|
|
50
|
+
"Sleet", "Mist", "Fog", "Haze", "Breeze", "Gust", "Tempest", "Typhoon", "Hurricane", "Tornado",
|
|
51
|
+
"Whirlwind", "Downpour", "Snowflake", "Snowdrift", "Icicle", "Hailstone", "Lightning",
|
|
52
|
+
"Sirocco", "Rainfall", "Updraft", "Jetstream",
|
|
30
53
|
// Landscape
|
|
31
|
-
"Canyon", "Fjord", "Glacier", "Delta", "Mesa", "Tundra", "Prairie", "Dune",
|
|
32
|
-
"
|
|
33
|
-
"
|
|
54
|
+
"Canyon", "Fjord", "Glacier", "Delta", "Mesa", "Tundra", "Prairie", "Dune", "Reef", "Atoll",
|
|
55
|
+
"Summit", "Ridge", "Hollow", "Meadow", "Thicket", "Bramble", "Harbour", "Lagoon", "Cove",
|
|
56
|
+
"Cascade", "Valley", "Gorge", "Ravine", "Gully", "Plateau", "Butte", "Crag", "Bluff", "Knoll",
|
|
57
|
+
"Marsh", "Bog", "Fen", "Swamp", "Bayou", "Estuary", "Inlet", "Bay", "Strait", "Peninsula",
|
|
58
|
+
"Island", "Islet", "Archipelago", "Volcano", "Crater", "Geyser", "Creek", "Stream", "Rapids",
|
|
59
|
+
"Waterfall", "Oasis", "Steppe", "Taiga", "Jungle", "Grove", "Orchard", "Glade", "Clearing",
|
|
60
|
+
"Woodland", "Badlands", "Caldera", "Shoal", "Sandbar", "Shore", "Beach", "Headland", "Cape",
|
|
61
|
+
"Peak", "Pinnacle", "Spire", "Boulder", "Cavern", "Grotto", "Burrow", "Quarry",
|
|
34
62
|
// Plants
|
|
35
|
-
"Cedar", "Juniper", "Willow", "Birch", "Aspen", "Alder", "Hazel", "Bracken",
|
|
36
|
-
"
|
|
37
|
-
"
|
|
63
|
+
"Cedar", "Juniper", "Willow", "Birch", "Aspen", "Alder", "Hazel", "Bracken", "Clover", "Fennel",
|
|
64
|
+
"Sorrel", "Nettle", "Thistle", "Heather", "Saffron", "Cardamom", "Chicory", "Marigold", "Maple",
|
|
65
|
+
"Oak", "Pine", "Spruce", "Fir", "Larch", "Yew", "Elm", "Beech", "Hawthorn", "Sycamore",
|
|
66
|
+
"Poplar", "Cypress", "Redwood", "Sequoia", "Baobab", "Acacia", "Bamboo", "Fern", "Moss",
|
|
67
|
+
"Lichen", "Thyme", "Mint", "Oregano", "Dill", "Parsley", "Lavender", "Tarragon", "Cumin",
|
|
68
|
+
"Nutmeg", "Clove", "Pepper", "Paprika", "Vanilla", "Cinnamon", "Anise", "Tulip", "Lotus",
|
|
69
|
+
"Orchid", "Peony", "Lilac", "Foxglove", "Bluebell", "Snowdrop", "Primrose", "Cowslip", "Gorse",
|
|
70
|
+
"Sedge", "Reed", "Kelp", "Seaweed", "Cactus", "Agave", "Aloe", "Yucca", "Acorn", "Pinecone",
|
|
71
|
+
"Chestnut", "Walnut", "Almond", "Pistachio", "Cashew", "Peanut", "Coconut", "Mango", "Papaya",
|
|
72
|
+
"Lemon", "Lime", "Plum", "Apricot", "Peach", "Pear", "Quince", "Fig", "Melon", "Turnip",
|
|
73
|
+
"Radish", "Parsnip", "Pumpkin", "Squash", "Gourd", "Mushroom", "Toadstool",
|
|
74
|
+
// Birds
|
|
75
|
+
"Finch", "Lark", "Swift", "Swallow", "Starling", "Thrush", "Owl", "Eagle", "Hawk", "Kite",
|
|
76
|
+
"Condor", "Vulture", "Crane", "Stork", "Egret", "Ibis", "Flamingo", "Toucan", "Parrot", "Macaw",
|
|
77
|
+
"Cockatoo", "Kakapo", "Emu", "Ostrich", "Penguin", "Gannet", "Cormorant", "Tern", "Gull",
|
|
78
|
+
"Plover", "Sandpiper", "Curlew", "Snipe", "Woodcock", "Grouse", "Quail", "Pheasant", "Peacock",
|
|
79
|
+
"Partridge", "Dove", "Pigeon", "Rook", "Jackdaw", "Crow", "Nightjar", "Hoopoe", "Kingfisher",
|
|
80
|
+
"Bunting", "Warbler", "Oriole", "Tanager", "Hummingbird", "Woodpecker", "Nuthatch", "Dipper",
|
|
81
|
+
"Goldcrest",
|
|
82
|
+
// Reptiles, amphibians and insects
|
|
83
|
+
"Iguana", "Python", "Cobra", "Viper", "Adder", "Chameleon", "Tortoise", "Terrapin", "Newt",
|
|
84
|
+
"Toad", "Frog", "Axolotl", "Salamander", "Caiman", "Beetle", "Cricket", "Firefly", "Hornet",
|
|
85
|
+
"Bumblebee", "Ladybird", "Mantis", "Moth", "Butterfly", "Dragonfly", "Mayfly", "Cicada",
|
|
86
|
+
"Termite", "Weevil", "Scarab", "Spider", "Scorpion",
|
|
87
|
+
// Food
|
|
88
|
+
"Biscuit", "Pretzel", "Waffle", "Pancake", "Muffin", "Crumpet", "Bagel", "Noodle", "Dumpling",
|
|
89
|
+
"Pickle", "Pudding", "Toffee", "Fudge", "Nougat", "Marzipan", "Truffle", "Sherbet", "Sorbet",
|
|
90
|
+
"Custard", "Teacake", "Scone", "Brioche", "Strudel",
|
|
91
|
+
// Things
|
|
92
|
+
"Lantern", "Compass", "Anchor", "Kettle", "Teapot", "Sextant", "Telescope", "Beacon",
|
|
93
|
+
"Lighthouse", "Windmill", "Pinwheel", "Paddle", "Rudder", "Tiller", "Mast", "Satchel", "Kayak",
|
|
94
|
+
"Canoe", "Sled", "Toboggan", "Hammock", "Button", "Thimble", "Bobbin", "Spindle", "Quill",
|
|
95
|
+
"Inkwell", "Sundial", "Hourglass",
|
|
38
96
|
];
|
|
39
97
|
/**
|
|
40
98
|
* One name from the pool. `Math.random` on purpose: this picks something to be called, not a
|
package/package.json
CHANGED