zioinfo-mail/app/node_modules/shallow-clone/index.js
DESKTOP-TKLFCPR\ython 11c670f2a0 refactor: 101.79.17.164 → zioinfo.co.kr 전체 도메인 변환 + Manager UI 배포
- 37개 파일 IP → zioinfo.co.kr 치환 (소스/매뉴얼/설정/하네스)
- Manager DrConsole/NetworkConsole/CsapConsole 빌드 + /var/www/manager/ 배포
- 테스트: Manager HTTP 200, ITSM 신규 API 7개 전체 200

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-31 10:09:17 +09:00

84 lines
1.8 KiB
JavaScript

/*!
* shallow-clone <https://github.com/jonschlinkert/shallow-clone>
*
* Copyright (c) 2015-present, Jon Schlinkert.
* Released under the MIT License.
*/
'use strict';
const valueOf = Symbol.prototype.valueOf;
const typeOf = require('kind-of');
function clone(val, deep) {
switch (typeOf(val)) {
case 'array':
return val.slice();
case 'object':
return Object.assign({}, val);
case 'date':
return new val.constructor(Number(val));
case 'map':
return new Map(val);
case 'set':
return new Set(val);
case 'buffer':
return cloneBuffer(val);
case 'symbol':
return cloneSymbol(val);
case 'arraybuffer':
return cloneArrayBuffer(val);
case 'float32array':
case 'float64array':
case 'int16array':
case 'int32array':
case 'int8array':
case 'uint16array':
case 'uint32array':
case 'uint8clampedarray':
case 'uint8array':
return cloneTypedArray(val);
case 'regexp':
return cloneRegExp(val);
case 'error':
return Object.create(val);
default: {
return val;
}
}
}
function cloneRegExp(val) {
const flags = val.flags !== void 0 ? val.flags : (/\w+$/.exec(val) || void 0);
const re = new val.constructor(val.source, flags);
re.lastIndex = val.lastIndex;
return re;
}
function cloneArrayBuffer(val) {
const res = new val.constructor(val.byteLength);
new Uint8Array(res).set(new Uint8Array(val));
return res;
}
function cloneTypedArray(val, deep) {
return new val.constructor(val.buffer, val.byteOffset, val.length);
}
function cloneBuffer(val) {
const len = val.length;
const buf = Buffer.allocUnsafe ? Buffer.allocUnsafe(len) : Buffer.from(len);
val.copy(buf);
return buf;
}
function cloneSymbol(val) {
return valueOf ? Object(valueOf.call(val)) : {};
}
/**
* Expose `clone`
*/
module.exports = clone;