diff --git a/dist/Notary/DocumentNotary.d.ts b/dist/Notary/DocumentNotary.d.ts new file mode 100644 index 0000000..74e901f --- /dev/null +++ b/dist/Notary/DocumentNotary.d.ts @@ -0,0 +1,12 @@ +import File from "./File"; +import OfficeFolder from "./OfficeFolder"; +import Resource from "../Resource"; +import User from "."; +export default class Document extends Resource { + uid?: string; + folder?: OfficeFolder; + depositor?: User; + created_at: Date | null; + updated_at: Date | null; + files?: File[]; +} diff --git a/dist/Notary/DocumentNotary.js b/dist/Notary/DocumentNotary.js new file mode 100644 index 0000000..729f16e --- /dev/null +++ b/dist/Notary/DocumentNotary.js @@ -0,0 +1,58 @@ +"use strict"; +var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); + else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; + return c > 3 && r && Object.defineProperty(target, key, r), r; +}; +var __metadata = (this && this.__metadata) || function (k, v) { + if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const class_validator_1 = require("class-validator"); +const File_1 = __importDefault(require("./File")); +const OfficeFolder_1 = __importDefault(require("./OfficeFolder")); +const Resource_1 = __importDefault(require("../Resource")); +const class_transformer_1 = require("class-transformer"); +const _1 = __importDefault(require(".")); +class Document extends Resource_1.default { + constructor() { + super(...arguments); + this.created_at = null; + this.updated_at = null; + } +} +__decorate([ + (0, class_transformer_1.Expose)(), + (0, class_validator_1.IsNotEmpty)({ groups: ["createFile"], message: "UID is required" }), + __metadata("design:type", String) +], Document.prototype, "uid", void 0); +__decorate([ + (0, class_transformer_1.Expose)(), + (0, class_transformer_1.Type)(() => OfficeFolder_1.default), + __metadata("design:type", OfficeFolder_1.default) +], Document.prototype, "folder", void 0); +__decorate([ + (0, class_transformer_1.Expose)(), + (0, class_transformer_1.Type)(() => _1.default), + __metadata("design:type", _1.default) +], Document.prototype, "depositor", void 0); +__decorate([ + (0, class_transformer_1.Expose)(), + (0, class_validator_1.IsDate)(), + __metadata("design:type", Object) +], Document.prototype, "created_at", void 0); +__decorate([ + (0, class_transformer_1.Expose)(), + (0, class_validator_1.IsDate)(), + __metadata("design:type", Object) +], Document.prototype, "updated_at", void 0); +__decorate([ + (0, class_transformer_1.Expose)(), + (0, class_transformer_1.Type)(() => File_1.default), + __metadata("design:type", Array) +], Document.prototype, "files", void 0); +exports.default = Document; diff --git a/src/Notary/DocumentNotary.ts b/src/Notary/DocumentNotary.ts new file mode 100644 index 0000000..13831fd --- /dev/null +++ b/src/Notary/DocumentNotary.ts @@ -0,0 +1,32 @@ +import { IsDate, IsNotEmpty } from "class-validator"; +import File from "./File"; +import OfficeFolder from "./OfficeFolder"; +import Resource from "../Resource"; +import { Expose, Type } from "class-transformer"; +import User from "."; + +export default class Document extends Resource { + @Expose() + @IsNotEmpty({ groups: ["createFile"], message: "UID is required" }) + public uid?: string; + + @Expose() + @Type(() => OfficeFolder) + public folder?: OfficeFolder; + + @Expose() + @Type(() => User) + public depositor?: User; + + @Expose() + @IsDate() + public created_at: Date | null = null; + + @Expose() + @IsDate() + public updated_at: Date | null = null; + + @Expose() + @Type(() => File) + public files?: File[]; +}