demo-inputs.js (1652B)
1 // Curated presentation metadata, never signatures inferred from arbitrary bundles. 2 // The argument order comes from the published demos beside this site. 3 export function demoInputLabels(id, definition) { 4 switch (id) { 5 case 'functions': return definition === 'add' ? ['Left number', 'Right number'] : ['Number']; 6 case 'transform-list': return definition === 'double' ? ['Number'] : []; 7 case 'choices': return ['Number of items']; 8 case 'language-reference': 9 if (definition === 'first') 10 return ['First value', 'Second value']; 11 if (definition === 'firstOr') 12 return ['Fallback', 'List']; 13 return ['identity', 'addTwo', 'describe', 'keep', 'local', 'viaWhere', 'copy', 'localCopy', 'checked', 'sequenced'].includes(definition) ? ['Value'] : []; 14 case 'microscope': return definition === 'same' ? ['First tree', 'Second tree'] : ['Tree to inspect']; 15 case 'rgb': return ['RGB channels (0–255)']; 16 case 'shipping': return ['Destination', 'Cart subtotal (cents)', 'Package weight (grams)']; 17 case 'events': return definition === 'vendorB' ? ['Event [customer refunded totalCents]'] : ['Event [eventName customer totalCents]']; 18 case 'registration': return ['Name', 'Email', 'Age', 'Terms accepted (t = false, (t t) = true)']; 19 case 'lexer': return definition === 'scanWhitespace' ? ['Text with leading whitespace'] : ['Text with a lowercase prefix']; 20 case 'parser': return ['Comma-separated lowercase names']; 21 case 'migration': return ['Profile [name email]']; 22 default: return []; 23 } 24 }