Auto-commit 2026-04-29 16:31
This commit is contained in:
121
node_modules/twilio/lib/base/serialize.js
generated
vendored
Normal file
121
node_modules/twilio/lib/base/serialize.js
generated
vendored
Normal file
@@ -0,0 +1,121 @@
|
||||
"use strict";
|
||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.iso8601Date = iso8601Date;
|
||||
exports.iso8601DateTime = iso8601DateTime;
|
||||
exports.prefixedCollapsibleMap = prefixedCollapsibleMap;
|
||||
exports.object = object;
|
||||
exports.bool = bool;
|
||||
exports.twiml = twiml;
|
||||
exports.map = map;
|
||||
const dayjs_1 = __importDefault(require("dayjs"));
|
||||
const utc_1 = __importDefault(require("dayjs/plugin/utc"));
|
||||
dayjs_1.default.extend(utc_1.default);
|
||||
/**
|
||||
* @namespace serialize
|
||||
*/
|
||||
/**
|
||||
* Turns a Date object into a string if parameter is a Date otherwise returns the parameter
|
||||
*
|
||||
* @param d - date object to format
|
||||
* @returns date formatted in YYYY-MM-DD form, otherwise the
|
||||
* provided parameter.
|
||||
*/
|
||||
function iso8601Date(date) {
|
||||
if (!date || !(date instanceof Date)) {
|
||||
return date;
|
||||
}
|
||||
else {
|
||||
return dayjs_1.default.utc(date).format("YYYY-MM-DD");
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Turns a Date object into a string if parameter is a Date otherwise returns the parameter
|
||||
*
|
||||
* @param d - date object to format
|
||||
* @returns date formatted in YYYY-MM-DD[T]HH:mm:ss[Z] form, otherwise the
|
||||
* provided parameter.
|
||||
*/
|
||||
function iso8601DateTime(date) {
|
||||
if (!date || !(date instanceof Date)) {
|
||||
return date;
|
||||
}
|
||||
else {
|
||||
return dayjs_1.default.utc(date).format("YYYY-MM-DD[T]HH:mm:ss[Z]");
|
||||
}
|
||||
}
|
||||
function prefixedCollapsibleMap(m, prefix) {
|
||||
if (!m ||
|
||||
typeof m !== "object" ||
|
||||
Object.prototype.toString.call(m) !== "[object Object]") {
|
||||
return {};
|
||||
}
|
||||
function flatten(m, result, previous) {
|
||||
result = result || {};
|
||||
previous = previous || [];
|
||||
Object.keys(m).forEach((key) => {
|
||||
const unionKeys = [...previous];
|
||||
if (!unionKeys.includes(key)) {
|
||||
unionKeys.push(key);
|
||||
}
|
||||
if (typeof m[key] === "object" &&
|
||||
Object.prototype.toString.call(m[key]) === "[object Object]") {
|
||||
flatten(m[key], result, unionKeys);
|
||||
}
|
||||
else {
|
||||
result[unionKeys.join(".")] = m[key];
|
||||
}
|
||||
});
|
||||
return result;
|
||||
}
|
||||
var flattened = flatten(m);
|
||||
var result = flattened;
|
||||
if (prefix) {
|
||||
result = {};
|
||||
Object.keys(flattened).forEach((key) => {
|
||||
result[prefix + "." + key] = flattened[key];
|
||||
});
|
||||
}
|
||||
return result;
|
||||
}
|
||||
function object(o) {
|
||||
if (typeof o === "object") {
|
||||
return JSON.stringify(o);
|
||||
}
|
||||
return o;
|
||||
}
|
||||
/**
|
||||
* Coerces a boolean literal into a string
|
||||
*
|
||||
* @param input - boolean or string to be coerced
|
||||
* @returns a string 'true' or 'false' if passed a boolean, else the value
|
||||
*/
|
||||
function bool(input) {
|
||||
if (typeof input === "string") {
|
||||
return input;
|
||||
}
|
||||
if (typeof input === "boolean" ||
|
||||
(typeof input === "object" &&
|
||||
Object.prototype.toString.call(input) === "[object Boolean]")) {
|
||||
return input.toString();
|
||||
}
|
||||
return input;
|
||||
}
|
||||
function twiml(input) {
|
||||
return input.toString();
|
||||
}
|
||||
/**
|
||||
* Maps transform over each element in input if input is an array
|
||||
*
|
||||
* @param input - array to map transform over, if not an array then it is
|
||||
* returned as is.
|
||||
* @returns new array with transform applied to each element.
|
||||
*/
|
||||
function map(input, transform) {
|
||||
if (typeof input === "object" && Array.isArray(input)) {
|
||||
return input.map((element) => transform(element));
|
||||
}
|
||||
return input;
|
||||
}
|
||||
Reference in New Issue
Block a user