UNPKG

3.01 kBJavaScriptView Raw
1/*******************************************************************************
2 *
3 * Copyright 2018 Adobe. All rights reserved.
4 * This file is licensed to you under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License. You may obtain a copy
6 * of the License at http://www.apache.org/licenses/LICENSE-2.0
7 *
8 * Unless required by applicable law or agreed to in writing, software distributed under
9 * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
10 * OF ANY KIND, either express or implied. See the License for the specific language
11 * governing permissions and limitations under the License.
12 *
13 ******************************************************************************/
14
15/**
16 * Auto generated code based on Swagger definition.
17 * Dot not edit manually. Manual changes will be overridden.
18 *
19 * @version 1.0.0
20 */
21
22class Category {
23
24 /**
25 * Constructs a Category based on its enclosed builder.
26 * @constructor
27 * @param {Builder} builder the Category builder
28 */
29 constructor(builder) {
30 /**
31 * The date-time when this object was created. The JSON representation must be in RFC339 / ISO8601 format
32 * @type {string}
33 */
34 this.createdAt = undefined;
35
36 /**
37 * The date-time when this object was last modified. The JSON representation must be in RFC339 / ISO8601 format
38 * @type {string}
39 */
40 this.lastModifiedAt = undefined;
41
42 /**
43 * The internal unique ID of the category in the commerce backend system.
44 * @type {string}
45 */
46 this.id = builder.id;
47
48 /**
49 * The name of the category.
50 * @type {string}
51 */
52 this.name = undefined;
53
54 /**
55 * The description of the category.
56 * @type {string}
57 */
58 this.description = undefined;
59
60 /**
61 * The id of the main parent category (if this category has multiple parents).
62 * @type {string}
63 */
64 this.mainParentId = undefined;
65
66 /**
67 * The list of parent categories for this category. Depending on the backend system, the returned items may only have their ids being set.
68 * @type {Category[]}
69 */
70 this.parents = undefined;
71
72 /**
73 * The list of subcategories for this category. Depending on the backend system, the returned items may only have their ids being set.
74 * @type {Category[]}
75 */
76 this.children = undefined;
77
78 }
79
80 /**
81 * Builds a Category based on API required properties.
82 */
83 static get Builder() {
84 class Builder {
85 withId(id) {
86 this.id = id;
87 return this;
88 }
89
90 build() {
91 return new Category(this);
92 }
93 }
94 return Builder;
95 }
96}
97module.exports.Category = Category;