diff --git a/sdks/node/VERSION b/sdks/node/VERSION index d82db9132..00f91b858 100644 --- a/sdks/node/VERSION +++ b/sdks/node/VERSION @@ -1 +1 @@ -1.8-dev +1.8.1-dev diff --git a/sdks/node/api/apis.ts b/sdks/node/api/apis.ts index 771aa5c8e..f9d7d41f6 100644 --- a/sdks/node/api/apis.ts +++ b/sdks/node/api/apis.ts @@ -38,7 +38,7 @@ export const queryParamsSerializer = (params) => { return Qs.stringify(params, { arrayFormat: "brackets" }); }; -export const USER_AGENT = "OpenAPI-Generator/1.8-dev/node"; +export const USER_AGENT = "OpenAPI-Generator/1.8.1-dev/node"; /** * Generates an object containing form data. diff --git a/sdks/node/bin/copy-constants.php b/sdks/node/bin/copy-constants.php new file mode 100755 index 000000000..c9634b6cd --- /dev/null +++ b/sdks/node/bin/copy-constants.php @@ -0,0 +1,64 @@ +#!/usr/bin/env php +run(); diff --git a/sdks/node/dist/api.js b/sdks/node/dist/api.js index 13138becb..094234fea 100644 --- a/sdks/node/dist/api.js +++ b/sdks/node/dist/api.js @@ -10794,6 +10794,14 @@ var require_follow_redirects = __commonJS({ } }); +// node_modules/es-object-atoms/index.js +var require_es_object_atoms = __commonJS({ + "node_modules/es-object-atoms/index.js"(exports, module2) { + "use strict"; + module2.exports = Object; + } +}); + // node_modules/es-errors/index.js var require_es_errors = __commonJS({ "node_modules/es-errors/index.js"(exports, module2) { @@ -10850,6 +10858,118 @@ var require_uri = __commonJS({ } }); +// node_modules/math-intrinsics/abs.js +var require_abs = __commonJS({ + "node_modules/math-intrinsics/abs.js"(exports, module2) { + "use strict"; + module2.exports = Math.abs; + } +}); + +// node_modules/math-intrinsics/floor.js +var require_floor = __commonJS({ + "node_modules/math-intrinsics/floor.js"(exports, module2) { + "use strict"; + module2.exports = Math.floor; + } +}); + +// node_modules/math-intrinsics/max.js +var require_max = __commonJS({ + "node_modules/math-intrinsics/max.js"(exports, module2) { + "use strict"; + module2.exports = Math.max; + } +}); + +// node_modules/math-intrinsics/min.js +var require_min = __commonJS({ + "node_modules/math-intrinsics/min.js"(exports, module2) { + "use strict"; + module2.exports = Math.min; + } +}); + +// node_modules/math-intrinsics/pow.js +var require_pow = __commonJS({ + "node_modules/math-intrinsics/pow.js"(exports, module2) { + "use strict"; + module2.exports = Math.pow; + } +}); + +// node_modules/math-intrinsics/round.js +var require_round = __commonJS({ + "node_modules/math-intrinsics/round.js"(exports, module2) { + "use strict"; + module2.exports = Math.round; + } +}); + +// node_modules/math-intrinsics/isNaN.js +var require_isNaN = __commonJS({ + "node_modules/math-intrinsics/isNaN.js"(exports, module2) { + "use strict"; + module2.exports = Number.isNaN || function isNaN2(a) { + return a !== a; + }; + } +}); + +// node_modules/math-intrinsics/sign.js +var require_sign = __commonJS({ + "node_modules/math-intrinsics/sign.js"(exports, module2) { + "use strict"; + var $isNaN = require_isNaN(); + module2.exports = function sign(number) { + if ($isNaN(number) || number === 0) { + return number; + } + return number < 0 ? -1 : 1; + }; + } +}); + +// node_modules/gopd/gOPD.js +var require_gOPD = __commonJS({ + "node_modules/gopd/gOPD.js"(exports, module2) { + "use strict"; + module2.exports = Object.getOwnPropertyDescriptor; + } +}); + +// node_modules/gopd/index.js +var require_gopd = __commonJS({ + "node_modules/gopd/index.js"(exports, module2) { + "use strict"; + var $gOPD = require_gOPD(); + if ($gOPD) { + try { + $gOPD([], "length"); + } catch (e) { + $gOPD = null; + } + } + module2.exports = $gOPD; + } +}); + +// node_modules/es-define-property/index.js +var require_es_define_property = __commonJS({ + "node_modules/es-define-property/index.js"(exports, module2) { + "use strict"; + var $defineProperty = Object.defineProperty || false; + if ($defineProperty) { + try { + $defineProperty({}, "a", { value: 1 }); + } catch (e) { + $defineProperty = false; + } + } + module2.exports = $defineProperty; + } +}); + // node_modules/has-symbols/shams.js var require_shams = __commonJS({ "node_modules/has-symbols/shams.js"(exports, module2) { @@ -10875,7 +10995,7 @@ var require_shams = __commonJS({ } var symVal = 42; obj[sym] = symVal; - for (sym in obj) { + for (var _ in obj) { return false; } if (typeof Object.keys === "function" && Object.keys(obj).length !== 0) { @@ -10926,18 +11046,20 @@ var require_has_symbols = __commonJS({ } }); -// node_modules/has-proto/index.js -var require_has_proto = __commonJS({ - "node_modules/has-proto/index.js"(exports, module2) { +// node_modules/get-proto/Reflect.getPrototypeOf.js +var require_Reflect_getPrototypeOf = __commonJS({ + "node_modules/get-proto/Reflect.getPrototypeOf.js"(exports, module2) { "use strict"; - var test2 = { - __proto__: null, - foo: {} - }; - var $Object = Object; - module2.exports = function hasProto() { - return { __proto__: test2 }.foo === test2.foo && !(test2 instanceof $Object); - }; + module2.exports = typeof Reflect !== "undefined" && Reflect.getPrototypeOf || null; + } +}); + +// node_modules/get-proto/Object.getPrototypeOf.js +var require_Object_getPrototypeOf = __commonJS({ + "node_modules/get-proto/Object.getPrototypeOf.js"(exports, module2) { + "use strict"; + var $Object = require_es_object_atoms(); + module2.exports = $Object.getPrototypeOf || null; } }); @@ -11026,6 +11148,102 @@ var require_function_bind = __commonJS({ } }); +// node_modules/call-bind-apply-helpers/functionCall.js +var require_functionCall = __commonJS({ + "node_modules/call-bind-apply-helpers/functionCall.js"(exports, module2) { + "use strict"; + module2.exports = Function.prototype.call; + } +}); + +// node_modules/call-bind-apply-helpers/functionApply.js +var require_functionApply = __commonJS({ + "node_modules/call-bind-apply-helpers/functionApply.js"(exports, module2) { + "use strict"; + module2.exports = Function.prototype.apply; + } +}); + +// node_modules/call-bind-apply-helpers/reflectApply.js +var require_reflectApply = __commonJS({ + "node_modules/call-bind-apply-helpers/reflectApply.js"(exports, module2) { + "use strict"; + module2.exports = typeof Reflect !== "undefined" && Reflect && Reflect.apply; + } +}); + +// node_modules/call-bind-apply-helpers/actualApply.js +var require_actualApply = __commonJS({ + "node_modules/call-bind-apply-helpers/actualApply.js"(exports, module2) { + "use strict"; + var bind2 = require_function_bind(); + var $apply = require_functionApply(); + var $call = require_functionCall(); + var $reflectApply = require_reflectApply(); + module2.exports = $reflectApply || bind2.call($call, $apply); + } +}); + +// node_modules/call-bind-apply-helpers/index.js +var require_call_bind_apply_helpers = __commonJS({ + "node_modules/call-bind-apply-helpers/index.js"(exports, module2) { + "use strict"; + var bind2 = require_function_bind(); + var $TypeError = require_type(); + var $call = require_functionCall(); + var $actualApply = require_actualApply(); + module2.exports = function callBindBasic(args) { + if (args.length < 1 || typeof args[0] !== "function") { + throw new $TypeError("a function is required"); + } + return $actualApply(bind2, $call, args); + }; + } +}); + +// node_modules/dunder-proto/get.js +var require_get = __commonJS({ + "node_modules/dunder-proto/get.js"(exports, module2) { + "use strict"; + var callBind = require_call_bind_apply_helpers(); + var gOPD = require_gopd(); + var hasProtoAccessor; + try { + hasProtoAccessor = [].__proto__ === Array.prototype; + } catch (e) { + if (!e || typeof e !== "object" || !("code" in e) || e.code !== "ERR_PROTO_ACCESS") { + throw e; + } + } + var desc = !!hasProtoAccessor && gOPD && gOPD(Object.prototype, "__proto__"); + var $Object = Object; + var $getPrototypeOf = $Object.getPrototypeOf; + module2.exports = desc && typeof desc.get === "function" ? callBind([desc.get]) : typeof $getPrototypeOf === "function" ? function getDunder(value) { + return $getPrototypeOf(value == null ? value : $Object(value)); + } : false; + } +}); + +// node_modules/get-proto/index.js +var require_get_proto = __commonJS({ + "node_modules/get-proto/index.js"(exports, module2) { + "use strict"; + var reflectGetProto = require_Reflect_getPrototypeOf(); + var originalGetProto = require_Object_getPrototypeOf(); + var getDunderProto = require_get(); + module2.exports = reflectGetProto ? function getProto(O) { + return reflectGetProto(O); + } : originalGetProto ? function getProto(O) { + if (!O || typeof O !== "object" && typeof O !== "function") { + throw new TypeError("getProto: not an object"); + } + return originalGetProto(O); + } : getDunderProto ? function getProto(O) { + return getDunderProto(O); + } : null; + } +}); + // node_modules/hasown/index.js var require_hasown = __commonJS({ "node_modules/hasown/index.js"(exports, module2) { @@ -11042,6 +11260,7 @@ var require_get_intrinsic = __commonJS({ "node_modules/get-intrinsic/index.js"(exports, module2) { "use strict"; var undefined2; + var $Object = require_es_object_atoms(); var $Error = require_es_errors(); var $EvalError = require_eval(); var $RangeError = require_range(); @@ -11049,6 +11268,13 @@ var require_get_intrinsic = __commonJS({ var $SyntaxError = require_syntax(); var $TypeError = require_type(); var $URIError = require_uri(); + var abs = require_abs(); + var floor = require_floor(); + var max = require_max(); + var min = require_min(); + var pow = require_pow(); + var round = require_round(); + var sign = require_sign(); var $Function = Function; var getEvalledConstructor = function(expressionSyntax) { try { @@ -11056,14 +11282,8 @@ var require_get_intrinsic = __commonJS({ } catch (e) { } }; - var $gOPD = Object.getOwnPropertyDescriptor; - if ($gOPD) { - try { - $gOPD({}, ""); - } catch (e) { - $gOPD = null; - } - } + var $gOPD = require_gopd(); + var $defineProperty = require_es_define_property(); var throwTypeError = function() { throw new $TypeError(); }; @@ -11080,10 +11300,11 @@ var require_get_intrinsic = __commonJS({ } }() : throwTypeError; var hasSymbols = require_has_symbols()(); - var hasProto = require_has_proto()(); - var getProto = Object.getPrototypeOf || (hasProto ? function(x) { - return x.__proto__; - } : null); + var getProto = require_get_proto(); + var $ObjectGPO = require_Object_getPrototypeOf(); + var $ReflectGPO = require_Reflect_getPrototypeOf(); + var $apply = require_functionApply(); + var $call = require_functionCall(); var needsEval = {}; var TypedArray = typeof Uint8Array === "undefined" || !getProto ? undefined2 : getProto(Uint8Array); var INTRINSICS = { @@ -11111,6 +11332,7 @@ var require_get_intrinsic = __commonJS({ "%Error%": $Error, "%eval%": eval, "%EvalError%": $EvalError, + "%Float16Array%": typeof Float16Array === "undefined" ? undefined2 : Float16Array, "%Float32Array%": typeof Float32Array === "undefined" ? undefined2 : Float32Array, "%Float64Array%": typeof Float64Array === "undefined" ? undefined2 : Float64Array, "%FinalizationRegistry%": typeof FinalizationRegistry === "undefined" ? undefined2 : FinalizationRegistry, @@ -11127,7 +11349,8 @@ var require_get_intrinsic = __commonJS({ "%MapIteratorPrototype%": typeof Map === "undefined" || !hasSymbols || !getProto ? undefined2 : getProto((/* @__PURE__ */ new Map())[Symbol.iterator]()), "%Math%": Math, "%Number%": Number, - "%Object%": Object, + "%Object%": $Object, + "%Object.getOwnPropertyDescriptor%": $gOPD, "%parseFloat%": parseFloat, "%parseInt%": parseInt, "%Promise%": typeof Promise === "undefined" ? undefined2 : Promise, @@ -11153,7 +11376,19 @@ var require_get_intrinsic = __commonJS({ "%URIError%": $URIError, "%WeakMap%": typeof WeakMap === "undefined" ? undefined2 : WeakMap, "%WeakRef%": typeof WeakRef === "undefined" ? undefined2 : WeakRef, - "%WeakSet%": typeof WeakSet === "undefined" ? undefined2 : WeakSet + "%WeakSet%": typeof WeakSet === "undefined" ? undefined2 : WeakSet, + "%Function.prototype.call%": $call, + "%Function.prototype.apply%": $apply, + "%Object.defineProperty%": $defineProperty, + "%Object.getPrototypeOf%": $ObjectGPO, + "%Math.abs%": abs, + "%Math.floor%": floor, + "%Math.max%": max, + "%Math.min%": min, + "%Math.pow%": pow, + "%Math.round%": round, + "%Math.sign%": sign, + "%Reflect.getPrototypeOf%": $ReflectGPO }; if (getProto) { try { @@ -11242,11 +11477,11 @@ var require_get_intrinsic = __commonJS({ }; var bind2 = require_function_bind(); var hasOwn = require_hasown(); - var $concat = bind2.call(Function.call, Array.prototype.concat); - var $spliceApply = bind2.call(Function.apply, Array.prototype.splice); - var $replace = bind2.call(Function.call, String.prototype.replace); - var $strSlice = bind2.call(Function.call, String.prototype.slice); - var $exec = bind2.call(Function.call, RegExp.prototype.exec); + var $concat = bind2.call($call, Array.prototype.concat); + var $spliceApply = bind2.call($apply, Array.prototype.splice); + var $replace = bind2.call($call, String.prototype.replace); + var $strSlice = bind2.call($call, String.prototype.slice); + var $exec = bind2.call($call, RegExp.prototype.exec); var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g; var reEscapeChar = /\\(\\)?/g; var stringToPath = function stringToPath2(string) { @@ -11350,40 +11585,6 @@ var require_get_intrinsic = __commonJS({ } }); -// node_modules/es-define-property/index.js -var require_es_define_property = __commonJS({ - "node_modules/es-define-property/index.js"(exports, module2) { - "use strict"; - var GetIntrinsic = require_get_intrinsic(); - var $defineProperty = GetIntrinsic("%Object.defineProperty%", true) || false; - if ($defineProperty) { - try { - $defineProperty({}, "a", { value: 1 }); - } catch (e) { - $defineProperty = false; - } - } - module2.exports = $defineProperty; - } -}); - -// node_modules/gopd/index.js -var require_gopd = __commonJS({ - "node_modules/gopd/index.js"(exports, module2) { - "use strict"; - var GetIntrinsic = require_get_intrinsic(); - var $gOPD = GetIntrinsic("%Object.getOwnPropertyDescriptor%", true); - if ($gOPD) { - try { - $gOPD([], "length"); - } catch (e) { - $gOPD = null; - } - } - module2.exports = $gOPD; - } -}); - // node_modules/define-data-property/index.js var require_define_data_property = __commonJS({ "node_modules/define-data-property/index.js"(exports, module2) { @@ -18318,6 +18519,18 @@ var primitives = [ "number", "any" ]; +function startsWith(str, match) { + return str.substring(0, match.length) === match; +} +function endsWith2(str, match) { + return str.length >= match.length && str.substring(str.length - match.length) === match; +} +var nullableSuffix = " | null"; +var optionalSuffix = " | undefined"; +var arrayPrefix = "Array<"; +var arraySuffix = ">"; +var mapPrefix = "{ [key: string]: "; +var mapSuffix = "; }"; var ObjectSerializer = class { static findCorrectType(data, expectedType) { if (data == void 0) { @@ -18362,15 +18575,27 @@ var ObjectSerializer = class { return data; } else if (primitives.indexOf(type.toLowerCase()) !== -1) { return data; - } else if (type.lastIndexOf("Array<", 0) === 0) { - let subType = type.replace("Array<", ""); - subType = subType.substring(0, subType.length - 1); + } else if (endsWith2(type, nullableSuffix)) { + let subType = type.slice(0, -nullableSuffix.length); + return ObjectSerializer.serialize(data, subType); + } else if (endsWith2(type, optionalSuffix)) { + let subType = type.slice(0, -optionalSuffix.length); + return ObjectSerializer.serialize(data, subType); + } else if (startsWith(type, arrayPrefix)) { + let subType = type.slice(arrayPrefix.length, -arraySuffix.length); let transformedData = []; for (let index = 0; index < data.length; index++) { let datum = data[index]; transformedData.push(ObjectSerializer.serialize(datum, subType)); } return transformedData; + } else if (startsWith(type, mapPrefix)) { + let subType = type.slice(mapPrefix.length, -mapSuffix.length); + let transformedData = {}; + for (let key in data) { + transformedData[key] = ObjectSerializer.serialize(data[key], subType); + } + return transformedData; } else if (type === "Date") { return data.toISOString(); } else { @@ -18402,15 +18627,27 @@ var ObjectSerializer = class { return data; } else if (primitives.indexOf(type.toLowerCase()) !== -1) { return data; - } else if (type.lastIndexOf("Array<", 0) === 0) { - let subType = type.replace("Array<", ""); - subType = subType.substring(0, subType.length - 1); + } else if (endsWith2(type, nullableSuffix)) { + let subType = type.slice(0, -nullableSuffix.length); + return ObjectSerializer.deserialize(data, subType); + } else if (endsWith2(type, optionalSuffix)) { + let subType = type.slice(0, -optionalSuffix.length); + return ObjectSerializer.deserialize(data, subType); + } else if (startsWith(type, arrayPrefix)) { + let subType = type.slice(arrayPrefix.length, -arraySuffix.length); let transformedData = []; for (let index = 0; index < data.length; index++) { let datum = data[index]; transformedData.push(ObjectSerializer.deserialize(datum, subType)); } return transformedData; + } else if (startsWith(type, mapPrefix)) { + let subType = type.slice(mapPrefix.length, -mapSuffix.length); + let transformedData = {}; + for (let key in data) { + transformedData[key] = ObjectSerializer.deserialize(data[key], subType); + } + return transformedData; } else if (type === "Date") { return new Date(data); } else { @@ -21088,7 +21325,9 @@ SubFormFieldRuleAction.attributeTypeMap = [ ((SubFormFieldRuleAction2) => { let TypeEnum; ((TypeEnum2) => { + TypeEnum2["ChangeFieldVisibility"] = "change-field-visibility"; TypeEnum2["FieldVisibility"] = "change-field-visibility"; + TypeEnum2["ChangeGroupVisibility"] = "change-group-visibility"; TypeEnum2["GroupVisibility"] = "change-group-visibility"; })(TypeEnum = SubFormFieldRuleAction2.TypeEnum || (SubFormFieldRuleAction2.TypeEnum = {})); })(SubFormFieldRuleAction || (SubFormFieldRuleAction = {})); @@ -34214,7 +34453,7 @@ var HttpError = class extends Error { var queryParamsSerializer = (params) => { return import_qs.default.stringify(params, { arrayFormat: "brackets" }); }; -var USER_AGENT = "OpenAPI-Generator/1.8-dev/node"; +var USER_AGENT = "OpenAPI-Generator/1.8.1-dev/node"; var generateFormData = (obj, typemap) => { const data = {}; let localVarUseFormData = false; diff --git a/sdks/node/model/models.ts b/sdks/node/model/models.ts index 3f6c346c4..5db056983 100644 --- a/sdks/node/model/models.ts +++ b/sdks/node/model/models.ts @@ -36,6 +36,26 @@ let primitives = [ "any", ]; +// Check if a string starts with another string without using es6 features +function startsWith(str: string, match: string): boolean { + return str.substring(0, match.length) === match; +} + +// Check if a string ends with another string without using es6 features +function endsWith(str: string, match: string): boolean { + return ( + str.length >= match.length && + str.substring(str.length - match.length) === match + ); +} + +const nullableSuffix = " | null"; +const optionalSuffix = " | undefined"; +const arrayPrefix = "Array<"; +const arraySuffix = ">"; +const mapPrefix = "{ [key: string]: "; +const mapSuffix = "; }"; + export class ObjectSerializer { public static findCorrectType(data: any, expectedType: string) { if (data == undefined) { @@ -83,21 +103,32 @@ export class ObjectSerializer { } } - public static serialize(data: any, type: string) { + public static serialize(data: any, type: string): any { if (data == undefined) { return data; } else if (primitives.indexOf(type.toLowerCase()) !== -1) { return data; - } else if (type.lastIndexOf("Array<", 0) === 0) { - // string.startsWith pre es6 - let subType: string = type.replace("Array<", ""); // Array => Type> - subType = subType.substring(0, subType.length - 1); // Type> => Type + } else if (endsWith(type, nullableSuffix)) { + let subType: string = type.slice(0, -nullableSuffix.length); // Type | null => Type + return ObjectSerializer.serialize(data, subType); + } else if (endsWith(type, optionalSuffix)) { + let subType: string = type.slice(0, -optionalSuffix.length); // Type | undefined => Type + return ObjectSerializer.serialize(data, subType); + } else if (startsWith(type, arrayPrefix)) { + let subType: string = type.slice(arrayPrefix.length, -arraySuffix.length); // Array => Type let transformedData: any[] = []; for (let index = 0; index < data.length; index++) { let datum = data[index]; transformedData.push(ObjectSerializer.serialize(datum, subType)); } return transformedData; + } else if (startsWith(type, mapPrefix)) { + let subType: string = type.slice(mapPrefix.length, -mapSuffix.length); // { [key: string]: Type; } => Type + let transformedData: { [key: string]: any } = {}; + for (let key in data) { + transformedData[key] = ObjectSerializer.serialize(data[key], subType); + } + return transformedData; } else if (type === "Date") { return data.toISOString(); } else { @@ -131,23 +162,34 @@ export class ObjectSerializer { } } - public static deserialize(data: any, type: string) { + public static deserialize(data: any, type: string): any { // polymorphism may change the actual type. type = ObjectSerializer.findCorrectType(data, type); if (data == undefined) { return data; } else if (primitives.indexOf(type.toLowerCase()) !== -1) { return data; - } else if (type.lastIndexOf("Array<", 0) === 0) { - // string.startsWith pre es6 - let subType: string = type.replace("Array<", ""); // Array => Type> - subType = subType.substring(0, subType.length - 1); // Type> => Type + } else if (endsWith(type, nullableSuffix)) { + let subType: string = type.slice(0, -nullableSuffix.length); // Type | null => Type + return ObjectSerializer.deserialize(data, subType); + } else if (endsWith(type, optionalSuffix)) { + let subType: string = type.slice(0, -optionalSuffix.length); // Type | undefined => Type + return ObjectSerializer.deserialize(data, subType); + } else if (startsWith(type, arrayPrefix)) { + let subType: string = type.slice(arrayPrefix.length, -arraySuffix.length); // Array => Type let transformedData: any[] = []; for (let index = 0; index < data.length; index++) { let datum = data[index]; transformedData.push(ObjectSerializer.deserialize(datum, subType)); } return transformedData; + } else if (startsWith(type, mapPrefix)) { + let subType: string = type.slice(mapPrefix.length, -mapSuffix.length); // { [key: string]: Type; } => Type + let transformedData: { [key: string]: any } = {}; + for (let key in data) { + transformedData[key] = ObjectSerializer.deserialize(data[key], subType); + } + return transformedData; } else if (type === "Date") { return new Date(data); } else { diff --git a/sdks/node/model/signatureRequestSendRequest.ts b/sdks/node/model/signatureRequestSendRequest.ts index 63ec9cc6d..75720c17b 100644 --- a/sdks/node/model/signatureRequestSendRequest.ts +++ b/sdks/node/model/signatureRequestSendRequest.ts @@ -93,6 +93,8 @@ export class SignatureRequestSendRequest { "hideTextTags"?: boolean = false; /** * Send with a value of `true` if you wish to enable [Qualified Electronic Signatures](https://www.hellosign.com/features/qualified-electronic-signatures) (QES), which requires a face-to-face call to verify the signer\'s identity.
**NOTE:** QES is only available on the Premium API plan as an add-on purchase. Cannot be used in `test_mode`. Only works on requests with one signer. + * + * @deprecated */ "isQualifiedSignature"?: boolean = false; /** diff --git a/sdks/node/model/signatureRequestSendWithTemplateRequest.ts b/sdks/node/model/signatureRequestSendWithTemplateRequest.ts index 2a3dbb8ea..12232a129 100644 --- a/sdks/node/model/signatureRequestSendWithTemplateRequest.ts +++ b/sdks/node/model/signatureRequestSendWithTemplateRequest.ts @@ -66,6 +66,8 @@ export class SignatureRequestSendWithTemplateRequest { "fileUrls"?: Array; /** * Send with a value of `true` if you wish to enable [Qualified Electronic Signatures](https://www.hellosign.com/features/qualified-electronic-signatures) (QES), which requires a face-to-face call to verify the signer\'s identity.
**NOTE:** QES is only available on the Premium API plan as an add-on purchase. Cannot be used in `test_mode`. Only works on requests with one signer. + * + * @deprecated */ "isQualifiedSignature"?: boolean = false; /** diff --git a/sdks/node/model/subFormFieldRuleAction.ts b/sdks/node/model/subFormFieldRuleAction.ts index 43ec2545f..d1fe6f0ec 100644 --- a/sdks/node/model/subFormFieldRuleAction.ts +++ b/sdks/node/model/subFormFieldRuleAction.ts @@ -76,7 +76,9 @@ export class SubFormFieldRuleAction { export namespace SubFormFieldRuleAction { export enum TypeEnum { + ChangeFieldVisibility = "change-field-visibility", FieldVisibility = "change-field-visibility", + ChangeGroupVisibility = "change-group-visibility", GroupVisibility = "change-group-visibility", } } diff --git a/sdks/node/model/templateCreateEmbeddedDraftResponseTemplate.ts b/sdks/node/model/templateCreateEmbeddedDraftResponseTemplate.ts index af7f9a71b..d74b06aed 100644 --- a/sdks/node/model/templateCreateEmbeddedDraftResponseTemplate.ts +++ b/sdks/node/model/templateCreateEmbeddedDraftResponseTemplate.ts @@ -43,6 +43,8 @@ export class TemplateCreateEmbeddedDraftResponseTemplate { "expiresAt"?: number; /** * A list of warnings. + * + * @deprecated */ "warnings"?: Array; diff --git a/sdks/node/model/templateResponse.ts b/sdks/node/model/templateResponse.ts index 4c4b99226..298db4670 100644 --- a/sdks/node/model/templateResponse.ts +++ b/sdks/node/model/templateResponse.ts @@ -85,10 +85,14 @@ export class TemplateResponse { "documents"?: Array; /** * Deprecated. Use `custom_fields` inside the [documents](https://developers.hellosign.com/api/reference/operation/templateGet/#!c=200&path=template/documents&t=response) array instead. + * + * @deprecated */ "customFields"?: Array | null; /** * Deprecated. Use `form_fields` inside the [documents](https://developers.hellosign.com/api/reference/operation/templateGet/#!c=200&path=template/documents&t=response) array instead. + * + * @deprecated */ "namedFormFields"?: Array | null; /** diff --git a/sdks/node/model/templateUpdateFilesResponseTemplate.ts b/sdks/node/model/templateUpdateFilesResponseTemplate.ts index 98e18dabc..2d32cb3b0 100644 --- a/sdks/node/model/templateUpdateFilesResponseTemplate.ts +++ b/sdks/node/model/templateUpdateFilesResponseTemplate.ts @@ -35,6 +35,8 @@ export class TemplateUpdateFilesResponseTemplate { "templateId"?: string; /** * A list of warnings. + * + * @deprecated */ "warnings"?: Array; diff --git a/sdks/node/openapi-config.yaml b/sdks/node/openapi-config.yaml index e7dabc881..36b2bde68 100644 --- a/sdks/node/openapi-config.yaml +++ b/sdks/node/openapi-config.yaml @@ -2,7 +2,7 @@ generatorName: typescript-node typeMappings: {} additionalProperties: npmName: "@dropbox/sign" - npmVersion: 1.8-dev + npmVersion: 1.8.1-dev supportsES6: true apiDocPath: ./docs/api modelDocPath: ./docs/model diff --git a/sdks/node/package-lock.json b/sdks/node/package-lock.json index 45782de4c..858c48267 100644 --- a/sdks/node/package-lock.json +++ b/sdks/node/package-lock.json @@ -1,12 +1,12 @@ { "name": "@dropbox/sign", - "version": "1.8-dev", + "version": "1.8.1-dev", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@dropbox/sign", - "version": "1.8-dev", + "version": "1.8.1-dev", "dependencies": { "axios": "^1.7.0", "bluebird": "^3.7.2", @@ -1112,9 +1112,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.16.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.1.tgz", - "integrity": "sha512-zJDo7wEadFtSyNz5QITDfRcrhqDvQI1xQNQ0VoizPjM/dVAODqqIUWbJPkvsxmTI0MYRGRikcdjMPhOssnPejQ==", + "version": "20.17.24", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.24.tgz", + "integrity": "sha512-d7fGCyB96w9BnWQrOsJtpyiSaBcAYYr75bnK6ZRjDbql2cGLj/3GsL5OYmLPNq76l7Gf2q4Rv9J2o6h5CrD9sA==", "dev": true, "dependencies": { "undici-types": "~6.19.2" @@ -1492,6 +1492,19 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", @@ -1832,6 +1845,20 @@ "node": ">=0.4.0" } }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/ejs": { "version": "3.1.10", "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", @@ -1881,12 +1908,10 @@ } }, "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", - "dependencies": { - "get-intrinsic": "^1.2.4" - }, + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", "engines": { "node": ">= 0.4" } @@ -1899,6 +1924,18 @@ "node": ">= 0.4" } }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/es5-ext": { "version": "0.10.64", "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.64.tgz", @@ -2287,15 +2324,21 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "license": "MIT", "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -2313,6 +2356,19 @@ "node": ">=8.0.0" } }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/get-stream": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", @@ -2356,11 +2412,12 @@ } }, "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dependencies": { - "get-intrinsic": "^1.1.3" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -2392,21 +2449,11 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-proto": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", - "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -3417,6 +3464,15 @@ "tmpl": "1.0.5" } }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/memoizee": { "version": "0.4.17", "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.17.tgz", diff --git a/sdks/node/package.json b/sdks/node/package.json index 8800697af..c6b26b114 100644 --- a/sdks/node/package.json +++ b/sdks/node/package.json @@ -1,6 +1,6 @@ { "name": "@dropbox/sign", - "version": "1.8-dev", + "version": "1.8.1-dev", "description": "Official Node client for Dropbox Sign", "repository": { "type": "git", diff --git a/sdks/node/run-build b/sdks/node/run-build index 09afd7e37..7a26bec0b 100755 --- a/sdks/node/run-build +++ b/sdks/node/run-build @@ -22,7 +22,7 @@ rm -f "${DIR}/types/model/"*.ts docker run --rm \ -v "${DIR}/:/local" \ --user "$(id -u):$(id -g)" \ - openapitools/openapi-generator-cli:v7.8.0 generate \ + openapitools/openapi-generator-cli:v7.12.0 generate \ -i "/local/openapi-sdk.yaml" \ -c "/local/openapi-config.yaml" \ -t "/local/templates" \ @@ -102,6 +102,9 @@ docker run --rm \ -w "${WORKING_DIR}" \ perl bash ./bin/scan_for +printf "Adding old-style constant names ...\n" +bash "${DIR}/bin/php" ./bin/copy-constants.php + printf "Running build ...\n" bash "${DIR}/bin/node" npm run build bash "${DIR}/bin/node" npm run build-types diff --git a/sdks/node/templates/api-single.mustache b/sdks/node/templates/api-single.mustache index cd57b314c..da9213701 100644 --- a/sdks/node/templates/api-single.mustache +++ b/sdks/node/templates/api-single.mustache @@ -201,6 +201,10 @@ export class {{classname}} { {{#allParams}} * @param {{paramName}} {{description}} {{/allParams}} + {{#isDeprecated}} + * + * @deprecated + {{/isDeprecated}} {{#useCustomTemplateCode}} * @param options {{/useCustomTemplateCode}} diff --git a/sdks/node/templates/model.mustache b/sdks/node/templates/model.mustache index a55b8f195..efc79f496 100644 --- a/sdks/node/templates/model.mustache +++ b/sdks/node/templates/model.mustache @@ -27,9 +27,20 @@ export {{#vendorExtensions.x-base-class}}abstract {{/vendorExtensions.x-base-cla {{#description}} /** * {{{.}}} + {{#deprecated}} + * + * @deprecated + {{/deprecated}} */ {{/description}} {{^useCustomTemplateCode}} +{{^description}} + {{#deprecated}} + /** + * @deprecated + */ + {{/deprecated}} +{{/description}} '{{name}}'{{^required}}?{{/required}}: {{#isEnum}}{{{datatypeWithEnum}}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{#isNullable}} | null{{/isNullable}}{{/isEnum}}{{#defaultValue}} = {{#isEnum}}{{classname}}.{{/isEnum}}{{{.}}}{{/defaultValue}}; {{/useCustomTemplateCode}} {{#useCustomTemplateCode}} diff --git a/sdks/node/templates/models.mustache b/sdks/node/templates/models.mustache index 8443f9341..4285d09ec 100644 --- a/sdks/node/templates/models.mustache +++ b/sdks/node/templates/models.mustache @@ -100,6 +100,23 @@ let typeMap: {[index: string]: any} = { {{/models}} } {{/useCustomTemplateCode}} +// Check if a string starts with another string without using es6 features +function startsWith(str: string, match: string): boolean { + return str.substring(0, match.length) === match; +} + +// Check if a string ends with another string without using es6 features +function endsWith(str: string, match: string): boolean { + return str.length >= match.length && str.substring(str.length - match.length) === match; +} + +const nullableSuffix = " | null"; +const optionalSuffix = " | undefined"; +const arrayPrefix = "Array<"; +const arraySuffix = ">"; +const mapPrefix = "{ [key: string]: "; +const mapSuffix = "; }"; + export class ObjectSerializer { public static findCorrectType(data: any, expectedType: string) { if (data == undefined) { @@ -150,20 +167,35 @@ export class ObjectSerializer { } } - public static serialize(data: any, type: string) { + public static serialize(data: any, type: string): any { if (data == undefined) { return data; } else if (primitives.indexOf(type.toLowerCase()) !== -1) { return data; - } else if (type.lastIndexOf("Array<", 0) === 0) { // string.startsWith pre es6 - let subType: string = type.replace("Array<", ""); // Array => Type> - subType = subType.substring(0, subType.length - 1); // Type> => Type + } else if (endsWith(type, nullableSuffix)) { + let subType: string = type.slice(0, -nullableSuffix.length); // Type | null => Type + return ObjectSerializer.serialize(data, subType); + } else if (endsWith(type, optionalSuffix)) { + let subType: string = type.slice(0, -optionalSuffix.length); // Type | undefined => Type + return ObjectSerializer.serialize(data, subType); + } else if (startsWith(type, arrayPrefix)) { + let subType: string = type.slice(arrayPrefix.length, -arraySuffix.length); // Array => Type let transformedData: any[] = []; for (let index = 0; index < data.length; index++) { let datum = data[index]; transformedData.push(ObjectSerializer.serialize(datum, subType)); } return transformedData; + } else if (startsWith(type, mapPrefix)) { + let subType: string = type.slice(mapPrefix.length, -mapSuffix.length); // { [key: string]: Type; } => Type + let transformedData: { [key: string]: any } = {}; + for (let key in data) { + transformedData[key] = ObjectSerializer.serialize( + data[key], + subType, + ); + } + return transformedData; } else if (type === "Date") { return data.toISOString(); } else { @@ -198,22 +230,37 @@ export class ObjectSerializer { } } - public static deserialize(data: any, type: string) { + public static deserialize(data: any, type: string): any { // polymorphism may change the actual type. type = ObjectSerializer.findCorrectType(data, type); if (data == undefined) { return data; } else if (primitives.indexOf(type.toLowerCase()) !== -1) { return data; - } else if (type.lastIndexOf("Array<", 0) === 0) { // string.startsWith pre es6 - let subType: string = type.replace("Array<", ""); // Array => Type> - subType = subType.substring(0, subType.length - 1); // Type> => Type + } else if (endsWith(type, nullableSuffix)) { + let subType: string = type.slice(0, -nullableSuffix.length); // Type | null => Type + return ObjectSerializer.deserialize(data, subType); + } else if (endsWith(type, optionalSuffix)) { + let subType: string = type.slice(0, -optionalSuffix.length); // Type | undefined => Type + return ObjectSerializer.deserialize(data, subType); + } else if (startsWith(type, arrayPrefix)) { + let subType: string = type.slice(arrayPrefix.length, -arraySuffix.length); // Array => Type let transformedData: any[] = []; for (let index = 0; index < data.length; index++) { let datum = data[index]; transformedData.push(ObjectSerializer.deserialize(datum, subType)); } return transformedData; + } else if (startsWith(type, mapPrefix)) { + let subType: string = type.slice(mapPrefix.length, -mapSuffix.length); // { [key: string]: Type; } => Type + let transformedData: { [key: string]: any } = {}; + for (let key in data) { + transformedData[key] = ObjectSerializer.deserialize( + data[key], + subType, + ); + } + return transformedData; } else if (type === "Date") { return new Date(data); } else { diff --git a/sdks/node/types/api/apis.d.ts b/sdks/node/types/api/apis.d.ts index abe56f276..843716cb2 100644 --- a/sdks/node/types/api/apis.d.ts +++ b/sdks/node/types/api/apis.d.ts @@ -23,7 +23,7 @@ export interface returnTypeI { body?: any; } export declare const queryParamsSerializer: (params: any) => string; -export declare const USER_AGENT = "OpenAPI-Generator/1.8-dev/node"; +export declare const USER_AGENT = "OpenAPI-Generator/1.8.1-dev/node"; export declare const generateFormData: (obj: any, typemap: AttributeTypeMap) => { localVarUseFormData: boolean; data: object; diff --git a/sdks/node/types/model/subFormFieldRuleAction.d.ts b/sdks/node/types/model/subFormFieldRuleAction.d.ts index 43122776f..650f98673 100644 --- a/sdks/node/types/model/subFormFieldRuleAction.d.ts +++ b/sdks/node/types/model/subFormFieldRuleAction.d.ts @@ -11,7 +11,9 @@ export declare class SubFormFieldRuleAction { } export declare namespace SubFormFieldRuleAction { enum TypeEnum { + ChangeFieldVisibility = "change-field-visibility", FieldVisibility = "change-field-visibility", + ChangeGroupVisibility = "change-group-visibility", GroupVisibility = "change-group-visibility" } }