主要功能: - 修改RequirementModal支持12个订单班选择 - 添加OrderClassIconMap图标映射组件 - Store中添加selectedOrderClass状态管理 - WorkflowPage支持传递orderClass参数 - web_result添加URL参数切换功能 - 创建order-class-handler.js动态处理页面主题 技术改进: - 创建软链接关联订单班数据目录 - 生成wenlu.json和food.json数据结构 - 删除重复的web_result目录 - 添加测试页面test-order-class.html 影响范围: - 展会策划系统现支持12个订单班 - 结果展示页面自动适配不同订单班主题 - 用户可选择不同行业生成对应方案 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
103 lines
2.7 KiB
JavaScript
103 lines
2.7 KiB
JavaScript
/**
|
|
* @filedescription Validation Strategy
|
|
*/
|
|
|
|
"use strict";
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Class
|
|
//-----------------------------------------------------------------------------
|
|
|
|
/**
|
|
* Container class for several different validation strategies.
|
|
*/
|
|
class ValidationStrategy {
|
|
|
|
/**
|
|
* Validates that a value is an array.
|
|
* @param {*} value The value to validate.
|
|
* @returns {void}
|
|
* @throws {TypeError} If the value is invalid.
|
|
*/
|
|
static array(value) {
|
|
if (!Array.isArray(value)) {
|
|
throw new TypeError("Expected an array.");
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Validates that a value is a boolean.
|
|
* @param {*} value The value to validate.
|
|
* @returns {void}
|
|
* @throws {TypeError} If the value is invalid.
|
|
*/
|
|
static boolean(value) {
|
|
if (typeof value !== "boolean") {
|
|
throw new TypeError("Expected a Boolean.");
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Validates that a value is a number.
|
|
* @param {*} value The value to validate.
|
|
* @returns {void}
|
|
* @throws {TypeError} If the value is invalid.
|
|
*/
|
|
static number(value) {
|
|
if (typeof value !== "number") {
|
|
throw new TypeError("Expected a number.");
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Validates that a value is a object.
|
|
* @param {*} value The value to validate.
|
|
* @returns {void}
|
|
* @throws {TypeError} If the value is invalid.
|
|
*/
|
|
static object(value) {
|
|
if (!value || typeof value !== "object") {
|
|
throw new TypeError("Expected an object.");
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Validates that a value is a object or null.
|
|
* @param {*} value The value to validate.
|
|
* @returns {void}
|
|
* @throws {TypeError} If the value is invalid.
|
|
*/
|
|
static "object?"(value) {
|
|
if (typeof value !== "object") {
|
|
throw new TypeError("Expected an object or null.");
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Validates that a value is a string.
|
|
* @param {*} value The value to validate.
|
|
* @returns {void}
|
|
* @throws {TypeError} If the value is invalid.
|
|
*/
|
|
static string(value) {
|
|
if (typeof value !== "string") {
|
|
throw new TypeError("Expected a string.");
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Validates that a value is a non-empty string.
|
|
* @param {*} value The value to validate.
|
|
* @returns {void}
|
|
* @throws {TypeError} If the value is invalid.
|
|
*/
|
|
static "string!"(value) {
|
|
if (typeof value !== "string" || value.length === 0) {
|
|
throw new TypeError("Expected a non-empty string.");
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
exports.ValidationStrategy = ValidationStrategy;
|