MCPcopy Create free account
hub / github.com/dadi/api / create

Method create

dadi/lib/model/schemaStore.js:181–221  ·  view source on GitHub ↗
({fields, name, settings, property, timestamp})

Source from the content-addressed store, hash-verified

179 }
180
181 async create({fields, name, settings, property, timestamp}) {
182 const {results: existingSchemas} = await this.find({
183 name,
184 property
185 })
186
187 if (existingSchemas.length > 0) {
188 throw new Error('SCHEMA_EXISTS')
189 }
190
191 await this.validate({
192 fields,
193 name,
194 property,
195 requiredFields: ['name', 'property'],
196 settings
197 })
198
199 const database = await this.connection
200 const results = await database.insert({
201 collection: config.get('schemas.collection'),
202 data: {
203 fields,
204 name,
205 settings,
206 property,
207 timestamp: timestamp || Date.now()
208 }
209 })
210
211 // Reloading the model.
212 Model({
213 isListable: true,
214 name,
215 schema: fields,
216 settings,
217 property
218 })
219
220 return results
221 }
222
223 async delete({name, property}) {
224 const database = await this.connection

Callers 15

create-client.jsFile · 0.80
clients.jsFile · 0.80
media.jsFile · 0.80
roles.jsFile · 0.80
keys.jsFile · 0.80
collections.jsFile · 0.80
documents.jsFile · 0.80
access.jsFile · 0.80
key.jsFile · 0.80
client.jsFile · 0.80
role.jsFile · 0.80
reference.jsFile · 0.80

Calls 4

findMethod · 0.95
validateMethod · 0.95
ModelFunction · 0.85
getMethod · 0.80

Tested by

no test coverage detected