"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.serializeGroupingMapKey = serializeGroupingMapKey;
/**
 * 将单元格原始值转为分组 Map 的稳定字符串键。
 * 避免对 object/array 使用 `${value}` 得到 `[object Object]`，导致不同人员/选项被错误合并。
 */
function serializeGroupingMapKey(value) {
    if (value === null || value === undefined) {
        return '';
    }
    const t = typeof value;
    if (t === 'string' || t === 'number' || t === 'boolean') {
        return String(value);
    }
    if (Array.isArray(value)) {
        return value
            .map((item) => {
            if (item && typeof item === 'object') {
                const o = item;
                if (o.workNo != null)
                    return String(o.workNo);
                if (o.value != null)
                    return String(o.value);
            }
            return serializeGroupingMapKey(item);
        })
            .join('\u0001');
    }
    if (t === 'object') {
        const o = value;
        if (o.workNo != null)
            return String(o.workNo);
        if (o.value != null)
            return String(o.value);
        try {
            return JSON.stringify(value);
        }
        catch {
            return String(value);
        }
    }
    return String(value);
}
