astro-ghostcms/.pnpm-store/v3/files/bc/6ffca09532515f96fca441a723b...

27 lines
601 B
Plaintext

/**
* @typedef {import('./schema.js').Properties} Properties
* @typedef {import('./schema.js').Normal} Normal
*/
import {Schema} from './schema.js'
/**
* @param {Schema[]} definitions
* @param {string} [space]
* @returns {Schema}
*/
export function merge(definitions, space) {
/** @type {Properties} */
const property = {}
/** @type {Normal} */
const normal = {}
let index = -1
while (++index < definitions.length) {
Object.assign(property, definitions[index].property)
Object.assign(normal, definitions[index].normal)
}
return new Schema(property, normal, space)
}