UNPKG

@sync-in/server

Version:

The secure, open-source platform for file storage, sharing, collaboration, and sync

232 lines (231 loc) 9.58 kB
/* * Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com> * This file is part of Sync-in | The open source file sync and share solution * See the LICENSE file for licensing details */ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function _export(target, all) { for(var name in all)Object.defineProperty(target, name, { enumerable: true, get: Object.getOwnPropertyDescriptor(all, name).get }); } _export(exports, { get CreateOrUpdateShareDto () { return CreateOrUpdateShareDto; }, get ShareFileDto () { return ShareFileDto; }, get ShareFileSpaceDto () { return ShareFileSpaceDto; }, get ShareFileSpaceRootDto () { return ShareFileSpaceRootDto; }, get ShareMemberDto () { return ShareMemberDto; }, get ShareParentDto () { return ShareParentDto; } }); const _classtransformer = require("class-transformer"); const _classvalidator = require("class-validator"); const _files = require("../../files/utils/files"); const _createorupdatelinkdto = require("../../links/dto/create-or-update-link.dto"); const _member = require("../../users/constants/member"); const _shares = require("../constants/shares"); function _ts_decorate(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; } function _ts_metadata(k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); } let ShareMemberDto = class ShareMemberDto { constructor(){ this.permissions = ''; // used only to update the link this.linkSettings = null; } }; _ts_decorate([ (0, _classvalidator.IsNotEmpty)(), (0, _classvalidator.IsInt)(), _ts_metadata("design:type", Number) ], ShareMemberDto.prototype, "id", void 0); _ts_decorate([ (0, _classvalidator.IsNotEmpty)(), (0, _classvalidator.IsString)(), (0, _classtransformer.Transform)(({ value })=>_member.MEMBER_TYPE_REVERSE[value]), _ts_metadata("design:type", typeof _member.MEMBER_TYPE === "undefined" ? Object : _member.MEMBER_TYPE) ], ShareMemberDto.prototype, "type", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.IsString)(), _ts_metadata("design:type", String) ], ShareMemberDto.prototype, "permissions", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.IsInt)(), _ts_metadata("design:type", Number) ], ShareMemberDto.prototype, "linkId", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.ValidateNested)(), (0, _classtransformer.Type)(()=>_createorupdatelinkdto.CreateOrUpdateLinkDto), _ts_metadata("design:type", typeof _createorupdatelinkdto.CreateOrUpdateLinkDto === "undefined" ? Object : _createorupdatelinkdto.CreateOrUpdateLinkDto) ], ShareMemberDto.prototype, "linkSettings", void 0); let ShareFileSpaceRootDto = class ShareFileSpaceRootDto { }; _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.IsString)(), (0, _classtransformer.Transform)(({ value })=>value ? (0, _files.sanitizeName)(value.trim()) : ''), _ts_metadata("design:type", String) ], ShareFileSpaceRootDto.prototype, "alias", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.IsString)(), (0, _classtransformer.Transform)(({ value })=>value ? (0, _files.sanitizeName)(value.trim()) : ''), _ts_metadata("design:type", String) ], ShareFileSpaceRootDto.prototype, "name", void 0); let ShareFileSpaceDto = class ShareFileSpaceDto { }; _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.IsString)(), (0, _classtransformer.Transform)(({ value })=>value ? value.trim() : ''), _ts_metadata("design:type", String) ], ShareFileSpaceDto.prototype, "alias", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.IsString)(), (0, _classtransformer.Transform)(({ value })=>value ? value.trim() : ''), _ts_metadata("design:type", String) ], ShareFileSpaceDto.prototype, "name", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.ValidateNested)(), (0, _classtransformer.Type)(()=>ShareFileSpaceRootDto), _ts_metadata("design:type", typeof ShareFileSpaceRootDto === "undefined" ? Object : ShareFileSpaceRootDto) ], ShareFileSpaceDto.prototype, "root", void 0); let ShareParentDto = class ShareParentDto { }; _ts_decorate([ (0, _classvalidator.IsNotEmpty)(), (0, _classvalidator.IsString)(), (0, _classtransformer.Transform)(({ value })=>value ? value.trim() : ''), _ts_metadata("design:type", String) ], ShareParentDto.prototype, "alias", void 0); let ShareFileDto = class ShareFileDto { }; _ts_decorate([ (0, _classvalidator.IsNotEmpty)(), (0, _classvalidator.IsInt)(), _ts_metadata("design:type", Number) ], ShareFileDto.prototype, "id", void 0); _ts_decorate([ (0, _classvalidator.ValidateIf)((_, ownerId)=>ownerId === null || typeof ownerId === 'number'), _ts_metadata("design:type", Number) ], ShareFileDto.prototype, "ownerId", void 0); _ts_decorate([ (0, _classvalidator.IsNotEmpty)(), (0, _classvalidator.IsString)(), (0, _classtransformer.Transform)(({ value })=>(0, _files.sanitizePath)(value)), _ts_metadata("design:type", String) ], ShareFileDto.prototype, "path", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.IsString)(), _ts_metadata("design:type", String) ], ShareFileDto.prototype, "permissions", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.ValidateNested)(), (0, _classtransformer.Type)(()=>ShareFileSpaceDto), _ts_metadata("design:type", typeof ShareFileSpaceDto === "undefined" ? Object : ShareFileSpaceDto) ], ShareFileDto.prototype, "space", void 0); let CreateOrUpdateShareDto = class CreateOrUpdateShareDto { constructor(){ this.externalPath = null; this.// contains members (users, guests, links, groups, personal groups) members = []; this.// contains links links = []; } }; _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.IsInt)(), _ts_metadata("design:type", Number) ], CreateOrUpdateShareDto.prototype, "id", void 0); _ts_decorate([ (0, _classvalidator.IsNotEmpty)(), (0, _classvalidator.IsString)(), (0, _classtransformer.Transform)(({ value })=>value ? (0, _files.sanitizeName)(value.trim()) : ''), _ts_metadata("design:type", String) ], CreateOrUpdateShareDto.prototype, "name", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.IsString)(), (0, _classtransformer.Transform)(({ value })=>value ? (0, _files.sanitizeName)(value.trim()) : ''), _ts_metadata("design:type", String) ], CreateOrUpdateShareDto.prototype, "alias", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.IsEnum)(_shares.SHARE_TYPE), _ts_metadata("design:type", typeof _shares.SHARE_TYPE === "undefined" ? Object : _shares.SHARE_TYPE) ], CreateOrUpdateShareDto.prototype, "type", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.IsString)(), _ts_metadata("design:type", String) ], CreateOrUpdateShareDto.prototype, "description", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.IsString)(), _ts_metadata("design:type", String) ], CreateOrUpdateShareDto.prototype, "externalPath", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.IsBoolean)(), _ts_metadata("design:type", Boolean) ], CreateOrUpdateShareDto.prototype, "enabled", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.ValidateNested)(), (0, _classtransformer.Type)(()=>ShareParentDto), _ts_metadata("design:type", typeof ShareParentDto === "undefined" ? Object : ShareParentDto) ], CreateOrUpdateShareDto.prototype, "parent", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.ValidateIf)((_, file)=>!_.externalPath && file?.id), (0, _classvalidator.ValidateNested)(), (0, _classtransformer.Type)(()=>ShareFileDto), _ts_metadata("design:type", typeof ShareFileDto === "undefined" ? Object : ShareFileDto) ], CreateOrUpdateShareDto.prototype, "file", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.IsArray)(), (0, _classvalidator.ValidateNested)({ each: true }), (0, _classtransformer.Type)(()=>ShareMemberDto), _ts_metadata("design:type", Array) ], CreateOrUpdateShareDto.prototype, "members", void 0); _ts_decorate([ (0, _classvalidator.IsOptional)(), (0, _classvalidator.IsArray)(), (0, _classvalidator.ValidateNested)({ each: true }), (0, _classtransformer.Type)(()=>ShareMemberDto), _ts_metadata("design:type", Array) ], CreateOrUpdateShareDto.prototype, "links", void 0); //# sourceMappingURL=create-or-update-share.dto.js.map