@nu-art/file-upload
Version:
File Uploader - Express & Typescript based backend framework
72 lines (71 loc) • 3.31 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var _a;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ATS_FileUploader = void 0;
const React = __importStar(require("react"));
const frontend_1 = require("@nu-art/firebase/frontend");
// import {TS_Icons} from '@nu-art/ts-styles';
const frontend_2 = require("@nu-art/thunderstorm/frontend");
const ModuleFE_AssetUploader_1 = require("../modules/ModuleFE_AssetUploader");
const ModuleFE_Assets_1 = require("../modules/ModuleFE_Assets");
const ts_common_1 = require("@nu-art/ts-common");
class ATS_FileUploader extends frontend_2.ComponentSync {
constructor(p) {
super(p);
// @ts-ignore
frontend_1.FirebaseAnalyticsModule.setCurrentScreen((0, ts_common_1.resolveContent)(this.props.pageTitle));
}
render() {
return React.createElement(frontend_2.LL_H_T, null,
"\u00A7",
React.createElement(frontend_2.LL_V_L, null, (0, ts_common_1.sortArray)([...ModuleFE_Assets_1.ModuleFE_Assets.cache.all()], asset => asset.__updated).map(asset => {
const tooltip = frontend_2.openContent.tooltip.bottom(`${asset._id}-tooltip`, () => {
return React.createElement(frontend_2.LL_V_L, null,
asset.bucketName,
"/",
asset.path);
}, { offset: 10 });
return React.createElement(frontend_2.LL_H_C, Object.assign({ key: asset._id, className: "clickable h-gap__n" }, tooltip), asset.name);
})),
React.createElement("div", { style: { width: 400, height: 302 } },
React.createElement(frontend_2.TS_DragAndDrop, { validate: files => {
return files.map(file => ({ file, accepted: true }));
}, onChange: acceptedFiles => {
return ModuleFE_AssetUploader_1.ModuleFE_AssetUploader.upload(acceptedFiles, 'test-upload');
} })));
}
}
exports.ATS_FileUploader = ATS_FileUploader;
_a = ATS_FileUploader;
ATS_FileUploader.screen = {
name: `File Uploader`,
renderer: _a,
group: frontend_2.ATS_Fullstack,
modulesToAwait: [ModuleFE_Assets_1.ModuleFE_Assets],
};
ATS_FileUploader.defaultProps = {
pageTitle: () => _a.screen.name
};