UNPKG

cloud-ide-model-schema

Version:

Pachage for schema management of Cloud IDEsys LMS

69 lines (68 loc) 2.48 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CAppStoreProviderMst = void 0; var mongoose_1 = require("mongoose"); /* SCHEMA START */ var app_store_provider_mst = new mongoose_1.Schema({ appstore_store_name: { type: String, required: true, maxlength: 200, trim: true, comment: "Store name (e.g., 'Apple App Store', 'Google Play Store', 'Vercel', 'Netlify')" }, appstore_store_type_id_sygms: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "core_general_master", required: true, comment: "FK to core_general_master - Store type (APP_STORE_TYPE: 'ios', 'android', 'web', 'both')" }, appstore_store_provider_code: { type: String, required: true, unique: true, maxlength: 100, trim: true, comment: "UNIQUE code: 'app_store', 'play_store', 'vercel', 'netlify', 'galaxy_store', 'appgallery', 'enterprise', etc." }, appstore_store_api_endpoint: { type: String, maxlength: 500, trim: true, comment: "API endpoint if available" }, appstore_store_credentials: { type: mongoose_1.Schema.Types.Mixed, comment: "JSON object - Store credentials (encrypted)" }, appstore_store_config: { type: mongoose_1.Schema.Types.Mixed, comment: "JSON object - Store-specific configuration" }, appstore_is_active: { type: Boolean, default: true, comment: "Can be disabled without deleting" }, appstore_created_by_id_auth: { type: mongoose_1.default.Schema.Types.ObjectId, ref: "auth_user_mst", required: true, comment: "FK to auth_user_mst - User who created" }, appstore_created_at: { type: Date, default: Date.now, comment: "Creation timestamp" }, appstore_updated_at: { type: Date, default: Date.now, comment: "Last update timestamp" } }, { collection: 'app_store_provider_mst', timestamps: { createdAt: 'appstore_created_at', updatedAt: 'appstore_updated_at' } }); // Indexes for performance optimization app_store_provider_mst.index({ appstore_store_type_id_sygms: 1 }); app_store_provider_mst.index({ appstore_is_active: 1 }); var CAppStoreProviderMst = mongoose_1.default.model("app_store_provider_mst", app_store_provider_mst); exports.CAppStoreProviderMst = CAppStoreProviderMst;