jaml-ui 6.0.2 → 7.0.0

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.
@@ -15,6 +15,9 @@ export interface JamlClause {
15
15
  raw: Record<string, unknown>;
16
16
  }
17
17
  export interface JamlFilter {
18
+ name?: string;
19
+ author?: string;
20
+ description?: string;
18
21
  deck?: string;
19
22
  stake?: string;
20
23
  must: JamlClause[];
@@ -0,0 +1,10 @@
1
+ import { JAML_MOTDS } from './motdData.generated.js';
2
+ export { JAML_MOTDS };
3
+ /**
4
+ * Pick a meaning for JAML.
5
+ *
6
+ * Pass a `key` — a seed, a run id, a date string — and it always gives the same
7
+ * answer, so a seed can have *its* meaning instead of a new one every render.
8
+ * Pass nothing and it's a fresh roll.
9
+ */
10
+ export declare function pickMotd(key?: string): string;
@@ -0,0 +1 @@
1
+ export declare const JAML_MOTDS: readonly string[];
package/dist/motd.js ADDED
@@ -0,0 +1,164 @@
1
+ const s = Object.freeze([
2
+ "Just Another Magic Link",
3
+ "Jokers Always Make Luck",
4
+ "Jimbo's Ante Management Lounge",
5
+ "Jackpot Aces Meet Legends",
6
+ "Just Add More Levels",
7
+ "Jimbo Ate My Lunch",
8
+ "Joker Addicts Monthly Letter",
9
+ "Just Another Motely Lake",
10
+ "Jimbo's Awful Messing-up Language",
11
+ "Jealous Antes Make Losers",
12
+ "Jambalaya And Mama's Laughter",
13
+ "Jimbo And Motely? Lovely!",
14
+ "Jimbo Approves My Luck",
15
+ "Jimbo's Amazing Multiplier Locator",
16
+ "Jolly Aces Make Legendaries",
17
+ "Jackpot Ante Modifier Language",
18
+ "Just Another Multiplier Legend",
19
+ "Just Ace Me Lucky",
20
+ "Java? Assembly?? Machine Language?!",
21
+ "Just Another Markup Language",
22
+ "JSON's Awesome Markup Lovechild",
23
+ "YAML Already Made Lemonade",
24
+ "Jolly Ante Manipulation Lab",
25
+ "Just Another Motely Launcher",
26
+ "Jokers Acquired, Multipliers Loaded",
27
+ "Just Ante My Life",
28
+ "Jumbled Assorted Microprocessor Luggage",
29
+ "Jolly And Merry Love",
30
+ "Jimbos Absolutely Magnificent Laughter",
31
+ "Just Add More Legendaries",
32
+ "Jokes And Memes, Literally",
33
+ "Just Another Million Loops",
34
+ "Join And Match Legendaries",
35
+ "Juggling All Matching Loots",
36
+ "Juiced And Massively Loaded",
37
+ "Jetting At Maximum Lightspeed",
38
+ "Jokes Are My Legacy",
39
+ "Jesting About My Luck",
40
+ "Joyful And Maybe Lucky",
41
+ "Jokers, Antes, Mayhem, Loot",
42
+ "Jimbo's Ante Modeling Language",
43
+ "Jester Alchemy Markup Lore",
44
+ "Jokers, Antes, Money, Luck",
45
+ "Jimbo's Arcane Match Language",
46
+ "Jackpot-Adjacent Miracle Logic",
47
+ "Jumbo Ante Mystery List",
48
+ "Jolly Antes, Magnificent Loot",
49
+ "Joy And Mischief, Lovingly",
50
+ "Just Adore My Little-language",
51
+ "Justifiably Allergic to Made-up Lies",
52
+ "Jimmy Ain't Mealy-mouthed, Listening",
53
+ "Jimbo And Me, Long-haul",
54
+ "Jokers, Antes, Multipliers, Legends",
55
+ "Jubilant Aces, Maximum Love",
56
+ "Jimbo's Anti-bullshit Marathon League",
57
+ "Just A Mighty Lifeform",
58
+ "Just A Meaning-Layer",
59
+ "Jamlyzer Always Manifests Lenses",
60
+ "Just A Mighty Little-joker",
61
+ "Justice And Mustard Longdogs",
62
+ "Join A Mining-pool, Lovingly",
63
+ "Jimbo's Astronomically Massive Lottery",
64
+ "Jokers Are Mathematically Lawful",
65
+ "Just A Morning-ritual, Lovingly",
66
+ "Juicing All Matching Lucky-cards",
67
+ "Jobs Are Marked, Leased",
68
+ "Just A Markup, Leveraged",
69
+ "Joyfully Avoiding Manual Labor",
70
+ "Jacked And Massively Leveraged",
71
+ "Just Another Mega Lead-card",
72
+ "Jumbled Aces, Mostly Lopsided",
73
+ "Jimbo Adores My Lola",
74
+ "Janky API, Mostly Loveable",
75
+ "Jellyfish Are Mostly Liquid",
76
+ "Jorts And Mismatched Loafers",
77
+ "Jupiter Aligns Mercury's Lunar-cycle",
78
+ "YAML Anagram? Mostly Lies",
79
+ "Joyfully Annotating Motely's Lookups",
80
+ "Just Add Motely, Limitless",
81
+ "Jointly Auditing Motely's Ledger",
82
+ "Jokers Argue, Multipliers Listen",
83
+ "Jimbo Audits Marginal Luck",
84
+ "Joker Algebra Made Legible",
85
+ "Jittery Aces, Measured Losses",
86
+ "Jimbo's Ante-Math: Lossless",
87
+ "Joyfully Anti-sycophant, Mostly Lucid",
88
+ "Just A Mirror-Layer",
89
+ "Just A Magnet for Legendaries",
90
+ "Jank Acknowledged, Marching Lovingly",
91
+ "Jokers Argue; Mult Is Law",
92
+ "Just A Manifest, Linted",
93
+ "Juiced Aces, Multiplied Loudly",
94
+ "Jolly Anarchists Marking Loot",
95
+ "Jimbo's Arcana, Mapped Lightly",
96
+ "Just A Markup, Load-bearing",
97
+ "Jousting Antes, Mostly Lethal",
98
+ "Jimbo And Motely: Lifers",
99
+ "Joker Acquired, Mult Locked-in",
100
+ "Just Ante, Manifest Legendary",
101
+ "Jambalaya And Mama's Love",
102
+ "Jigglebones And Memes, Laughter",
103
+ "Jiggly Aquatic Micro-Legend",
104
+ "Jukebox Awakens, Miraculously Loud",
105
+ "Just Audit Me, Lovingly",
106
+ "Jelly And Marmalade Lunchbox",
107
+ "Just A Moment, Lola",
108
+ "Jonkler-Approved Mischief License",
109
+ "Just Another Midnight Legend",
110
+ "Jolt Awake, Midnight Locksmith",
111
+ "Jimbo Asked, Motely Listened",
112
+ "Just Applied Math, Lovable",
113
+ "Joyful Autopsy of My Losses",
114
+ "Jettison All Mediocre Loadouts",
115
+ "Jimbo's Advice: More Legendaries",
116
+ "Jimbo's Arithmetic: Mostly Legit",
117
+ "Jackdaws Adore My Lockpicks",
118
+ "Juiced-up Antes, Minimal Losses",
119
+ "Jigsaw of Antes, Masterfully Laid",
120
+ "Juggle Antes, Master Life",
121
+ "Joyride Across Motely's Lanes",
122
+ "Jupiter's Ante, Mars' Luck",
123
+ "Jazz Arrangement, Motely Largo",
124
+ "Jab At Melancholy, Laugh",
125
+ "Jesters Assemble, Money Laughs",
126
+ "Jimbo's Almanac of Mult Lore",
127
+ "Jackpots Arrive, Mortals Laugh",
128
+ "Just Ask, Motely Listens",
129
+ "Jimbo's Ace, My Lifeline",
130
+ "Jailbreaking Ante Math, Legally",
131
+ "Jamboree Always Means Love",
132
+ "Jettison All Menace, Lovingly",
133
+ "Jokers Are Made Locally",
134
+ "Jimbo's Anti-barrel Manifesto, Literally",
135
+ "Jettisoned All Meshes, Lastly",
136
+ "Joy Around Mama's Lap",
137
+ "Jokers Assemble, Mama's Looking",
138
+ "Joker Arithmetic, Mercifully Legible",
139
+ "Jubilant Antes, Merciful Losses",
140
+ "Jimbo's Ante, Mama's Ledger",
141
+ "Jesters And Marmalade, Lately",
142
+ "Jitterbug Antes, Mambo Lessons",
143
+ "Jelly, Ants, Marmalade, Ladybugs",
144
+ "Joyous Alternative to Miserable Labels",
145
+ "Jamboree And Mama's Lemonade",
146
+ "Jimbo Absolutely Means Lola",
147
+ "Just Ask Mama, Lovingly",
148
+ "Jubilee At Motely's Landing",
149
+ "Jokers Argue Merrily, Lovingly",
150
+ "Just A Man, Loved"
151
+ ]);
152
+ function a(o) {
153
+ if (o === void 0)
154
+ return s[Math.floor(Math.random() * s.length)];
155
+ let e = 2166136261;
156
+ for (let t = 0; t < o.length; t++)
157
+ e ^= o.charCodeAt(t), e = Math.imul(e, 16777619);
158
+ return s[(e >>> 0) % s.length];
159
+ }
160
+ export {
161
+ s as JAML_MOTDS,
162
+ a as pickMotd
163
+ };
164
+ //# sourceMappingURL=motd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"motd.js","sources":["../src/motd/motdData.generated.ts","../src/motd/motd.ts"],"sourcesContent":["// AUTO-GENERATED — do not hand-edit.\n//\n// 149 alternate meanings of JAML, generated from the JAML.motds\n// corpus (MOTD.md). Add new ones there and re-run `pnpm motd:emit`.\n\nexport const JAML_MOTDS: readonly string[] = Object.freeze([\n \"Just Another Magic Link\",\n \"Jokers Always Make Luck\",\n \"Jimbo's Ante Management Lounge\",\n \"Jackpot Aces Meet Legends\",\n \"Just Add More Levels\",\n \"Jimbo Ate My Lunch\",\n \"Joker Addicts Monthly Letter\",\n \"Just Another Motely Lake\",\n \"Jimbo's Awful Messing-up Language\",\n \"Jealous Antes Make Losers\",\n \"Jambalaya And Mama's Laughter\",\n \"Jimbo And Motely? Lovely!\",\n \"Jimbo Approves My Luck\",\n \"Jimbo's Amazing Multiplier Locator\",\n \"Jolly Aces Make Legendaries\",\n \"Jackpot Ante Modifier Language\",\n \"Just Another Multiplier Legend\",\n \"Just Ace Me Lucky\",\n \"Java? Assembly?? Machine Language?!\",\n \"Just Another Markup Language\",\n \"JSON's Awesome Markup Lovechild\",\n \"YAML Already Made Lemonade\",\n \"Jolly Ante Manipulation Lab\",\n \"Just Another Motely Launcher\",\n \"Jokers Acquired, Multipliers Loaded\",\n \"Just Ante My Life\",\n \"Jumbled Assorted Microprocessor Luggage\",\n \"Jolly And Merry Love\",\n \"Jimbos Absolutely Magnificent Laughter\",\n \"Just Add More Legendaries\",\n \"Jokes And Memes, Literally\",\n \"Just Another Million Loops\",\n \"Join And Match Legendaries\",\n \"Juggling All Matching Loots\",\n \"Juiced And Massively Loaded\",\n \"Jetting At Maximum Lightspeed\",\n \"Jokes Are My Legacy\",\n \"Jesting About My Luck\",\n \"Joyful And Maybe Lucky\",\n \"Jokers, Antes, Mayhem, Loot\",\n \"Jimbo's Ante Modeling Language\",\n \"Jester Alchemy Markup Lore\",\n \"Jokers, Antes, Money, Luck\",\n \"Jimbo's Arcane Match Language\",\n \"Jackpot-Adjacent Miracle Logic\",\n \"Jumbo Ante Mystery List\",\n \"Jolly Antes, Magnificent Loot\",\n \"Joy And Mischief, Lovingly\",\n \"Just Adore My Little-language\",\n \"Justifiably Allergic to Made-up Lies\",\n \"Jimmy Ain't Mealy-mouthed, Listening\",\n \"Jimbo And Me, Long-haul\",\n \"Jokers, Antes, Multipliers, Legends\",\n \"Jubilant Aces, Maximum Love\",\n \"Jimbo's Anti-bullshit Marathon League\",\n \"Just A Mighty Lifeform\",\n \"Just A Meaning-Layer\",\n \"Jamlyzer Always Manifests Lenses\",\n \"Just A Mighty Little-joker\",\n \"Justice And Mustard Longdogs\",\n \"Join A Mining-pool, Lovingly\",\n \"Jimbo's Astronomically Massive Lottery\",\n \"Jokers Are Mathematically Lawful\",\n \"Just A Morning-ritual, Lovingly\",\n \"Juicing All Matching Lucky-cards\",\n \"Jobs Are Marked, Leased\",\n \"Just A Markup, Leveraged\",\n \"Joyfully Avoiding Manual Labor\",\n \"Jacked And Massively Leveraged\",\n \"Just Another Mega Lead-card\",\n \"Jumbled Aces, Mostly Lopsided\",\n \"Jimbo Adores My Lola\",\n \"Janky API, Mostly Loveable\",\n \"Jellyfish Are Mostly Liquid\",\n \"Jorts And Mismatched Loafers\",\n \"Jupiter Aligns Mercury's Lunar-cycle\",\n \"YAML Anagram? Mostly Lies\",\n \"Joyfully Annotating Motely's Lookups\",\n \"Just Add Motely, Limitless\",\n \"Jointly Auditing Motely's Ledger\",\n \"Jokers Argue, Multipliers Listen\",\n \"Jimbo Audits Marginal Luck\",\n \"Joker Algebra Made Legible\",\n \"Jittery Aces, Measured Losses\",\n \"Jimbo's Ante-Math: Lossless\",\n \"Joyfully Anti-sycophant, Mostly Lucid\",\n \"Just A Mirror-Layer\",\n \"Just A Magnet for Legendaries\",\n \"Jank Acknowledged, Marching Lovingly\",\n \"Jokers Argue; Mult Is Law\",\n \"Just A Manifest, Linted\",\n \"Juiced Aces, Multiplied Loudly\",\n \"Jolly Anarchists Marking Loot\",\n \"Jimbo's Arcana, Mapped Lightly\",\n \"Just A Markup, Load-bearing\",\n \"Jousting Antes, Mostly Lethal\",\n \"Jimbo And Motely: Lifers\",\n \"Joker Acquired, Mult Locked-in\",\n \"Just Ante, Manifest Legendary\",\n \"Jambalaya And Mama's Love\",\n \"Jigglebones And Memes, Laughter\",\n \"Jiggly Aquatic Micro-Legend\",\n \"Jukebox Awakens, Miraculously Loud\",\n \"Just Audit Me, Lovingly\",\n \"Jelly And Marmalade Lunchbox\",\n \"Just A Moment, Lola\",\n \"Jonkler-Approved Mischief License\",\n \"Just Another Midnight Legend\",\n \"Jolt Awake, Midnight Locksmith\",\n \"Jimbo Asked, Motely Listened\",\n \"Just Applied Math, Lovable\",\n \"Joyful Autopsy of My Losses\",\n \"Jettison All Mediocre Loadouts\",\n \"Jimbo's Advice: More Legendaries\",\n \"Jimbo's Arithmetic: Mostly Legit\",\n \"Jackdaws Adore My Lockpicks\",\n \"Juiced-up Antes, Minimal Losses\",\n \"Jigsaw of Antes, Masterfully Laid\",\n \"Juggle Antes, Master Life\",\n \"Joyride Across Motely's Lanes\",\n \"Jupiter's Ante, Mars' Luck\",\n \"Jazz Arrangement, Motely Largo\",\n \"Jab At Melancholy, Laugh\",\n \"Jesters Assemble, Money Laughs\",\n \"Jimbo's Almanac of Mult Lore\",\n \"Jackpots Arrive, Mortals Laugh\",\n \"Just Ask, Motely Listens\",\n \"Jimbo's Ace, My Lifeline\",\n \"Jailbreaking Ante Math, Legally\",\n \"Jamboree Always Means Love\",\n \"Jettison All Menace, Lovingly\",\n \"Jokers Are Made Locally\",\n \"Jimbo's Anti-barrel Manifesto, Literally\",\n \"Jettisoned All Meshes, Lastly\",\n \"Joy Around Mama's Lap\",\n \"Jokers Assemble, Mama's Looking\",\n \"Joker Arithmetic, Mercifully Legible\",\n \"Jubilant Antes, Merciful Losses\",\n \"Jimbo's Ante, Mama's Ledger\",\n \"Jesters And Marmalade, Lately\",\n \"Jitterbug Antes, Mambo Lessons\",\n \"Jelly, Ants, Marmalade, Ladybugs\",\n \"Joyous Alternative to Miserable Labels\",\n \"Jamboree And Mama's Lemonade\",\n \"Jimbo Absolutely Means Lola\",\n \"Just Ask Mama, Lovingly\",\n \"Jubilee At Motely's Landing\",\n \"Jokers Argue Merrily, Lovingly\",\n \"Just A Man, Loved\",\n]);\n","// What JAML stands for, this time.\n//\n// Minecraft's title screen never settled on one joke and neither does this.\n// The corpus lives in the JAML.motds repo; motdData.generated.ts is emitted\n// from it by scripts/emit-motds.mjs. Server-safe: no React, no DOM, no engine.\n\nimport { JAML_MOTDS } from \"./motdData.generated.js\";\n\nexport { JAML_MOTDS };\n\n/**\n * Pick a meaning for JAML.\n *\n * Pass a `key` — a seed, a run id, a date string — and it always gives the same\n * answer, so a seed can have *its* meaning instead of a new one every render.\n * Pass nothing and it's a fresh roll.\n */\nexport function pickMotd(key?: string): string {\n if (key === undefined) {\n return JAML_MOTDS[Math.floor(Math.random() * JAML_MOTDS.length)]!;\n }\n let h = 0x811c9dc5; // FNV-1a: stable across runs, spreads short strings well\n for (let i = 0; i < key.length; i++) {\n h ^= key.charCodeAt(i);\n h = Math.imul(h, 0x01000193);\n }\n return JAML_MOTDS[(h >>> 0) % JAML_MOTDS.length]!;\n}\n"],"names":["JAML_MOTDS","pickMotd","key","h","i"],"mappings":"AAKO,MAAMA,IAAgC,OAAO,OAAO;AAAA,EACzD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AC1IM,SAASC,EAASC,GAAsB;AAC7C,MAAIA,MAAQ;AACV,WAAOF,EAAW,KAAK,MAAM,KAAK,WAAWA,EAAW,MAAM,CAAC;AAEjE,MAAIG,IAAI;AACR,WAASC,IAAI,GAAGA,IAAIF,EAAI,QAAQE;AAC9B,IAAAD,KAAKD,EAAI,WAAWE,CAAC,GACrBD,IAAI,KAAK,KAAKA,GAAG,QAAU;AAE7B,SAAOH,GAAYG,MAAM,KAAKH,EAAW,MAAM;AACjD;"}
@@ -1,6 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
2
  import { JimboOuterTabTone } from './JimboOuterTab.js';
3
- export { defaultPyramidDock, dockActivate, type DockNode, } from './dockTree.js';
4
3
  export interface JimboDockPane {
5
4
  label: string;
6
5
  tone: JimboOuterTabTone;
@@ -0,0 +1,29 @@
1
+ import { default as React } from 'react';
2
+ export interface JimboSeedBatchInputProps {
3
+ /** Called with the cleaned seed list when the user hits Analyze. */
4
+ onAnalyze: (seeds: string[]) => void;
5
+ /** Optional: also inject seeds into the JAML document as a `seeds:` block. */
6
+ onInjectIntoJaml?: (seeds: string[]) => void;
7
+ /** Whether the engine is ready to analyze. */
8
+ ready?: boolean;
9
+ /** Whether an analysis is currently running. */
10
+ running?: boolean;
11
+ /** Optional pre-filled text (e.g. from clipboard sniff). */
12
+ defaultText?: string;
13
+ className?: string;
14
+ style?: React.CSSProperties;
15
+ }
16
+ /**
17
+ * A concrete surface for batch seed input.
18
+ *
19
+ * Aphantasia UX: every state is described in words, not shown by position or
20
+ * color alone. The user always knows:
21
+ * - how many seeds were found
22
+ * - how many are valid (8 chars)
23
+ * - how many are partial (4-7 chars — maybe typos)
24
+ * - what the next action is called and what it will do
25
+ *
26
+ * The textarea is the only input. Paste anywhere inside it. No hidden
27
+ * shortcuts. The Analyze button is disabled with a sentence explaining why.
28
+ */
29
+ export declare function JimboSeedBatchInput({ onAnalyze, onInjectIntoJaml, ready, running, defaultText, className, style, }: JimboSeedBatchInputProps): React.JSX.Element;