Rocky_Mountain_Vending/.pnpm-store/v10/files/d5/14b288aa0e911e64f070362d1161f6490dc4dcc150d121ef7c5ad47ae31ee8d48c352a07a7928a42bcbf0b68f58b563aeb3c7523af84114a5da1d0f0384b50
DMleadgen 46d973904b
Initial commit: Rocky Mountain Vending website
Next.js website for Rocky Mountain Vending company featuring:
- Product catalog with Stripe integration
- Service areas and parts pages
- Admin dashboard with Clerk authentication
- SEO optimized pages with JSON-LD structured data

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-12 16:22:15 -07:00

36 lines
811 B
Text

'use strict';
const StringPrompt = require('../types/string');
class ListPrompt extends StringPrompt {
constructor(options = {}) {
super(options);
this.sep = this.options.separator || /, */;
this.initial = options.initial || '';
}
split(input = this.value) {
return input ? String(input).split(this.sep) : [];
}
format() {
let style = this.state.submitted ? this.styles.primary : val => val;
return this.list.map(style).join(', ');
}
async submit(value) {
let result = this.state.error || await this.validate(this.list, this.state);
if (result !== true) {
this.state.error = result;
return super.submit();
}
this.value = this.list;
return super.submit();
}
get list() {
return this.split();
}
}
module.exports = ListPrompt;