feat: reorganize admin settings with tabbed interface and documentation

- Reorganized admin settings into tabbed interface (General, Security, Payment Methods)
- Vertical tabs on desktop, horizontal scrollable on mobile
- Moved Payment Methods from separate menu to Settings tab
- Fixed admin profile reuse and dashboard blocking
- Fixed maintenance mode guard to use AppConfig model
- Added admin auto-redirect after login (admins → /admin, users → /)
- Reorganized documentation into docs/ folder structure
- Created comprehensive README and documentation index
- Added PWA and Web Push notifications to to-do list
This commit is contained in:
dwindown
2025-10-13 09:28:12 +07:00
parent 49d60676d0
commit 89f881e7cf
99 changed files with 4884 additions and 392 deletions

View File

@@ -17,6 +17,7 @@ const common_1 = require("@nestjs/common");
const auth_guard_1 = require("../auth/auth.guard");
const admin_guard_1 = require("./guards/admin.guard");
const admin_users_service_1 = require("./admin-users.service");
const skip_maintenance_decorator_1 = require("../common/decorators/skip-maintenance.decorator");
let AdminUsersController = class AdminUsersController {
service;
constructor(service) {
@@ -43,6 +44,15 @@ let AdminUsersController = class AdminUsersController {
grantProAccess(id, body) {
return this.service.grantProAccess(id, body.planSlug, body.durationDays);
}
create(body) {
return this.service.create(body);
}
update(id, body) {
return this.service.update(id, body);
}
delete(id) {
return this.service.delete(id);
}
};
exports.AdminUsersController = AdminUsersController;
__decorate([
@@ -96,9 +106,32 @@ __decorate([
__metadata("design:paramtypes", [String, Object]),
__metadata("design:returntype", void 0)
], AdminUsersController.prototype, "grantProAccess", null);
__decorate([
(0, common_1.Post)(),
__param(0, (0, common_1.Body)()),
__metadata("design:type", Function),
__metadata("design:paramtypes", [Object]),
__metadata("design:returntype", void 0)
], AdminUsersController.prototype, "create", null);
__decorate([
(0, common_1.Put)(':id'),
__param(0, (0, common_1.Param)('id')),
__param(1, (0, common_1.Body)()),
__metadata("design:type", Function),
__metadata("design:paramtypes", [String, Object]),
__metadata("design:returntype", void 0)
], AdminUsersController.prototype, "update", null);
__decorate([
(0, common_1.Delete)(':id'),
__param(0, (0, common_1.Param)('id')),
__metadata("design:type", Function),
__metadata("design:paramtypes", [String]),
__metadata("design:returntype", void 0)
], AdminUsersController.prototype, "delete", null);
exports.AdminUsersController = AdminUsersController = __decorate([
(0, common_1.Controller)('admin/users'),
(0, common_1.UseGuards)(auth_guard_1.AuthGuard, admin_guard_1.AdminGuard),
(0, skip_maintenance_decorator_1.SkipMaintenance)(),
__metadata("design:paramtypes", [admin_users_service_1.AdminUsersService])
], AdminUsersController);
//# sourceMappingURL=admin-users.controller.js.map