MCPcopy Create free account
hub / github.com/dataease/SQLBot / mergeJsonSchema

Function mergeJsonSchema

frontend/public/swagger-ui-bundle.js:37226–37262  ·  view source on GitHub ↗
(s, o, i = {})

Source from the content-addressed store, hash-verified

37224 gs = ['minItems', 'maxItems'],
37225 ys = ['minimum', 'maximum', 'exclusiveMinimum', 'exclusiveMaximum'],
37226 vs = ['minLength', 'maxLength'],
37227 mergeJsonSchema = (s, o, i = {}) => {
37228 const a = { ...s }
37229 if (
37230 (['example', 'default', 'enum', 'xml', 'type', ...ms, ...gs, ...ys, ...vs].forEach(
37231 (s) =>
37232 ((s) => {
37233 void 0 === a[s] && void 0 !== o[s] && (a[s] = o[s])
37234 })(s)
37235 ),
37236 void 0 !== o.required &&
37237 Array.isArray(o.required) &&
37238 ((void 0 !== a.required && a.required.length) || (a.required = []),
37239 o.required.forEach((s) => {
37240 a.required.includes(s) || a.required.push(s)
37241 })),
37242 o.properties)
37243 ) {
37244 a.properties || (a.properties = {})
37245 let s = objectify(o.properties)
37246 for (let u in s)
37247 Object.prototype.hasOwnProperty.call(s, u) &&
37248 ((s[u] && s[u].deprecated) ||
37249 (s[u] && s[u].readOnly && !i.includeReadOnly) ||
37250 (s[u] && s[u].writeOnly && !i.includeWriteOnly) ||
37251 a.properties[u] ||
37252 ((a.properties[u] = s[u]),
37253 !o.required &&
37254 Array.isArray(o.required) &&
37255 -1 !== o.required.indexOf(u) &&
37256 (a.required ? a.required.push(u) : (a.required = [u]))))
37257 }
37258 return (
37259 o.items &&
37260 (a.items || (a.items = {}), (a.items = mergeJsonSchema(a.items, o.items, i))),
37261 a
37262 )
37263 },
37264 sampleFromSchemaGeneric = (s, o = {}, i = void 0, a = !1) => {
37265 s && isFunc(s.toJS) && (s = s.toJS())

Callers 1

sampleFromSchemaGenericFunction · 0.85

Calls 5

objectifyFunction · 0.85
forEachMethod · 0.45
isArrayMethod · 0.45
includesMethod · 0.45
pushMethod · 0.45

Tested by

no test coverage detected