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>
26 lines
630 B
Text
26 lines
630 B
Text
import { FieldPosition } from "@smithy/types";
|
|
export class Field {
|
|
name;
|
|
kind;
|
|
values;
|
|
constructor({ name, kind = FieldPosition.HEADER, values = [] }) {
|
|
this.name = name;
|
|
this.kind = kind;
|
|
this.values = values;
|
|
}
|
|
add(value) {
|
|
this.values.push(value);
|
|
}
|
|
set(values) {
|
|
this.values = values;
|
|
}
|
|
remove(value) {
|
|
this.values = this.values.filter((v) => v !== value);
|
|
}
|
|
toString() {
|
|
return this.values.map((v) => (v.includes(",") || v.includes(" ") ? `"${v}"` : v)).join(", ");
|
|
}
|
|
get() {
|
|
return this.values;
|
|
}
|
|
}
|