@umbraco/json-models-builders
Advanced tools
Comparing version
export { MediaTypeBuilder } from './mediaTypeBuilder'; | ||
export { MediaTypeAllowedContentTypeBuilder } from './mediaTypeAllowedContentTypeBuilder'; | ||
export { MediaTypeAllowedMediaTypeBuilder } from './mediaTypeAllowedMediaTypeBuilder'; | ||
export { MediaTypeCompositionBuilder } from './mediaTypeCompositionBuilder'; | ||
export { MediaTypeContainerBuilder } from './mediaTypeContainerBuilder'; | ||
export { MediaTypePropertyBuilder } from './mediaTypePropertyBuilder'; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.MediaTypePropertyBuilder = exports.MediaTypeContainerBuilder = exports.MediaTypeCompositionBuilder = exports.MediaTypeAllowedContentTypeBuilder = exports.MediaTypeBuilder = void 0; | ||
exports.MediaTypePropertyBuilder = exports.MediaTypeContainerBuilder = exports.MediaTypeCompositionBuilder = exports.MediaTypeAllowedMediaTypeBuilder = exports.MediaTypeBuilder = void 0; | ||
var mediaTypeBuilder_1 = require("./mediaTypeBuilder"); | ||
Object.defineProperty(exports, "MediaTypeBuilder", { enumerable: true, get: function () { return mediaTypeBuilder_1.MediaTypeBuilder; } }); | ||
var mediaTypeAllowedContentTypeBuilder_1 = require("./mediaTypeAllowedContentTypeBuilder"); | ||
Object.defineProperty(exports, "MediaTypeAllowedContentTypeBuilder", { enumerable: true, get: function () { return mediaTypeAllowedContentTypeBuilder_1.MediaTypeAllowedContentTypeBuilder; } }); | ||
var mediaTypeAllowedMediaTypeBuilder_1 = require("./mediaTypeAllowedMediaTypeBuilder"); | ||
Object.defineProperty(exports, "MediaTypeAllowedMediaTypeBuilder", { enumerable: true, get: function () { return mediaTypeAllowedMediaTypeBuilder_1.MediaTypeAllowedMediaTypeBuilder; } }); | ||
var mediaTypeCompositionBuilder_1 = require("./mediaTypeCompositionBuilder"); | ||
@@ -9,0 +9,0 @@ Object.defineProperty(exports, "MediaTypeCompositionBuilder", { enumerable: true, get: function () { return mediaTypeCompositionBuilder_1.MediaTypeCompositionBuilder; } }); |
import { MediaTypePropertyBuilder } from "./mediaTypePropertyBuilder"; | ||
import { MediaTypeContainerBuilder } from "./mediaTypeContainerBuilder"; | ||
import { MediaTypeAllowedContentTypeBuilder } from "./mediaTypeAllowedContentTypeBuilder"; | ||
import { MediaTypeAllowedMediaTypeBuilder } from "./mediaTypeAllowedMediaTypeBuilder"; | ||
import { MediaTypeCompositionBuilder } from "./mediaTypeCompositionBuilder"; | ||
@@ -13,9 +13,10 @@ export declare class MediaTypeBuilder { | ||
variesBySegment: boolean; | ||
collectionId: string; | ||
isElement: boolean; | ||
mediaTypePropertyBuilder: MediaTypePropertyBuilder[]; | ||
mediaTypeContainerBuilder: MediaTypeContainerBuilder[]; | ||
mediaTypeAllowedContentTypeBuilder: MediaTypeAllowedContentTypeBuilder[]; | ||
mediaTypeAllowedMediaTypeBuilder: MediaTypeAllowedMediaTypeBuilder[]; | ||
mediaTypeCompositionBuilder: MediaTypeCompositionBuilder[]; | ||
folderId: string; | ||
id: string; | ||
containerId: string; | ||
constructor(); | ||
@@ -30,7 +31,6 @@ withAlias(alias: string): this; | ||
withIsElement(isElement: boolean): this; | ||
addProperties(): MediaTypePropertyBuilder; | ||
addContainers(): MediaTypeContainerBuilder; | ||
addAllowedContentTypes(): MediaTypeAllowedContentTypeBuilder; | ||
addCompositions(): MediaTypeCompositionBuilder; | ||
withContainerId(containerId: string): this; | ||
addProperty(): MediaTypePropertyBuilder; | ||
addContainer(): MediaTypeContainerBuilder; | ||
addAllowedMediaType(): MediaTypeAllowedMediaTypeBuilder; | ||
addComposition(): MediaTypeCompositionBuilder; | ||
withId(id: string): this; | ||
@@ -45,6 +45,11 @@ build(): { | ||
variesBySegment: boolean; | ||
collection: { | ||
id: string; | ||
} | null; | ||
isElement: boolean; | ||
properties: { | ||
id: string | null; | ||
containerId: string | null; | ||
id: string; | ||
container: { | ||
id: string | null; | ||
}; | ||
sortOrder: number; | ||
@@ -54,7 +59,9 @@ alias: string; | ||
description: string; | ||
dataTypeId: string | null; | ||
dataType: { | ||
id: string | null; | ||
}; | ||
variesByCulture: boolean; | ||
variesBySegment: boolean; | ||
mandatory: boolean; | ||
validation: { | ||
mandatory: boolean; | ||
mandatoryMessage: string; | ||
@@ -70,3 +77,5 @@ regEx: string; | ||
id: string | null; | ||
parentId: string | null; | ||
parent: { | ||
id: string; | ||
} | null; | ||
name: string; | ||
@@ -76,13 +85,19 @@ type: string; | ||
}[]; | ||
allowedContentTypes: { | ||
id: string | null; | ||
allowedMediaTypes: { | ||
mediaType: { | ||
id: string | null; | ||
}; | ||
sortOrder: number; | ||
}[]; | ||
compositions: { | ||
id: string | null; | ||
mediaType: { | ||
id: string | null; | ||
}; | ||
compositionType: string; | ||
}[]; | ||
id: string; | ||
containerId: string | null; | ||
folder: { | ||
id: string; | ||
} | null; | ||
}; | ||
} |
@@ -6,3 +6,3 @@ "use strict"; | ||
const mediaTypeContainerBuilder_1 = require("./mediaTypeContainerBuilder"); | ||
const mediaTypeAllowedContentTypeBuilder_1 = require("./mediaTypeAllowedContentTypeBuilder"); | ||
const mediaTypeAllowedMediaTypeBuilder_1 = require("./mediaTypeAllowedMediaTypeBuilder"); | ||
const mediaTypeCompositionBuilder_1 = require("./mediaTypeCompositionBuilder"); | ||
@@ -17,13 +17,14 @@ class MediaTypeBuilder { | ||
variesBySegment; | ||
collectionId; | ||
isElement; | ||
mediaTypePropertyBuilder; | ||
mediaTypeContainerBuilder; | ||
mediaTypeAllowedContentTypeBuilder; | ||
mediaTypeAllowedMediaTypeBuilder; | ||
mediaTypeCompositionBuilder; | ||
folderId; | ||
id; | ||
containerId; | ||
constructor() { | ||
this.mediaTypePropertyBuilder = []; | ||
this.mediaTypeContainerBuilder = []; | ||
this.mediaTypeAllowedContentTypeBuilder = []; | ||
this.mediaTypeAllowedMediaTypeBuilder = []; | ||
this.mediaTypeCompositionBuilder = []; | ||
@@ -63,3 +64,3 @@ } | ||
} | ||
addProperties() { | ||
addProperty() { | ||
const builder = new mediaTypePropertyBuilder_1.MediaTypePropertyBuilder(this); | ||
@@ -69,3 +70,3 @@ this.mediaTypePropertyBuilder.push(builder); | ||
} | ||
addContainers() { | ||
addContainer() { | ||
const builder = new mediaTypeContainerBuilder_1.MediaTypeContainerBuilder(this); | ||
@@ -75,8 +76,8 @@ this.mediaTypeContainerBuilder.push(builder); | ||
} | ||
addAllowedContentTypes() { | ||
const builder = new mediaTypeAllowedContentTypeBuilder_1.MediaTypeAllowedContentTypeBuilder(this); | ||
this.mediaTypeAllowedContentTypeBuilder.push(builder); | ||
addAllowedMediaType() { | ||
const builder = new mediaTypeAllowedMediaTypeBuilder_1.MediaTypeAllowedMediaTypeBuilder(this); | ||
this.mediaTypeAllowedMediaTypeBuilder.push(builder); | ||
return builder; | ||
} | ||
addCompositions() { | ||
addComposition() { | ||
const builder = new mediaTypeCompositionBuilder_1.MediaTypeCompositionBuilder(this); | ||
@@ -86,6 +87,2 @@ this.mediaTypeCompositionBuilder.push(builder); | ||
} | ||
withContainerId(containerId) { | ||
this.containerId = containerId; | ||
return this; | ||
} | ||
withId(id) { | ||
@@ -101,4 +98,4 @@ this.id = id; | ||
return { | ||
alias: this.alias, | ||
name: this.name, | ||
alias: this.alias || "", | ||
name: this.name || "", | ||
description: this.description || "", | ||
@@ -109,2 +106,3 @@ icon: this.icon || "icon-document", | ||
variesBySegment: this.variesBySegment || false, | ||
collection: this.collectionId ? { id: this.collectionId } : null, | ||
isElement: this.isElement || false, | ||
@@ -117,3 +115,3 @@ properties: this.mediaTypePropertyBuilder.map((builder) => { | ||
}) || [], | ||
allowedContentTypes: this.mediaTypeAllowedContentTypeBuilder.map((builder) => { | ||
allowedMediaTypes: this.mediaTypeAllowedMediaTypeBuilder.map((builder) => { | ||
return builder.build(); | ||
@@ -125,3 +123,3 @@ }) || [], | ||
id: this.id, | ||
containerId: this.containerId || null, | ||
folder: this.folderId ? { id: this.folderId } : null, | ||
}; | ||
@@ -128,0 +126,0 @@ } |
import { MediaTypeBuilder } from "./mediaTypeBuilder"; | ||
export declare class MediaTypeCompositionBuilder { | ||
parentBuilder: MediaTypeBuilder; | ||
id: string; | ||
mediaTypeId: string; | ||
compositionType: string; | ||
constructor(parentBuilder: MediaTypeBuilder); | ||
withId(id: string): this; | ||
withMediaTypeId(mediaTypeId: string): this; | ||
withCompositionType(compositionType: string): this; | ||
done(): MediaTypeBuilder; | ||
build(): { | ||
id: string | null; | ||
mediaType: { | ||
id: string | null; | ||
}; | ||
compositionType: string; | ||
}; | ||
} |
@@ -6,3 +6,3 @@ "use strict"; | ||
parentBuilder; | ||
id; | ||
mediaTypeId; | ||
compositionType; | ||
@@ -12,4 +12,4 @@ constructor(parentBuilder) { | ||
} | ||
withId(id) { | ||
this.id = id; | ||
withMediaTypeId(mediaTypeId) { | ||
this.mediaTypeId = mediaTypeId; | ||
return this; | ||
@@ -26,3 +26,5 @@ } | ||
return { | ||
id: this.id || null, | ||
mediaType: { | ||
id: this.mediaTypeId || null | ||
}, | ||
compositionType: this.compositionType || "Composition" | ||
@@ -29,0 +31,0 @@ }; |
@@ -18,3 +18,5 @@ import { MediaTypeBuilder } from "./mediaTypeBuilder"; | ||
id: string | null; | ||
parentId: string | null; | ||
parent: { | ||
id: string; | ||
} | null; | ||
name: string; | ||
@@ -21,0 +23,0 @@ type: string; |
@@ -40,3 +40,3 @@ "use strict"; | ||
id: this.id || null, | ||
parentId: this.parentId || null, | ||
parent: this.parentId ? { id: this.parentId } : null, | ||
name: this.name || "", | ||
@@ -43,0 +43,0 @@ type: this.type || "", |
@@ -35,4 +35,6 @@ import { MediaTypeBuilder } from "./mediaTypeBuilder"; | ||
build(): { | ||
id: string | null; | ||
containerId: string | null; | ||
id: string; | ||
container: { | ||
id: string | null; | ||
}; | ||
sortOrder: number; | ||
@@ -42,7 +44,9 @@ alias: string; | ||
description: string; | ||
dataTypeId: string | null; | ||
dataType: { | ||
id: string | null; | ||
}; | ||
variesByCulture: boolean; | ||
variesBySegment: boolean; | ||
mandatory: boolean; | ||
validation: { | ||
mandatory: boolean; | ||
mandatoryMessage: string; | ||
@@ -49,0 +53,0 @@ regEx: string; |
@@ -83,5 +83,11 @@ "use strict"; | ||
build() { | ||
if (!this.id) { | ||
const crypto = require('crypto'); | ||
this.id = crypto.randomUUID(); | ||
} | ||
return { | ||
id: this.id || null, | ||
containerId: this.containerId || null, | ||
id: this.id, | ||
container: { | ||
id: this.containerId || null | ||
}, | ||
sortOrder: this.sortOrder || 0, | ||
@@ -91,7 +97,9 @@ alias: this.alias || "", | ||
description: this.description || "", | ||
dataTypeId: this.dataTypeId || null, | ||
dataType: { | ||
id: this.dataTypeId || null | ||
}, | ||
variesByCulture: this.variesByCulture || false, | ||
variesBySegment: this.variesBySegment || false, | ||
mandatory: this.mandatory || false, | ||
validation: { | ||
mandatory: this.mandatory || false, | ||
mandatoryMessage: this.mandatoryMessage || "", | ||
@@ -98,0 +106,0 @@ regEx: this.regEx || "", |
{ | ||
"name": "@umbraco/json-models-builders", | ||
"version": "2.0.2", | ||
"version": "2.0.3", | ||
"description": "Builders and models for Umbraco Sites", | ||
@@ -5,0 +5,0 @@ "main": "dist/lib/index.js", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
177604
0.78%2283
1.56%