magically-sdk
Version:
Official SDK for Magically - Build mobile apps with AI
66 lines (65 loc) • 2.98 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MagicallyFunctions = exports.MagicallyFiles = exports.MagicallyLLM = exports.MagicallyData = exports.MagicallyAuth = exports.MagicallySDK = void 0;
exports.init = init;
exports.createClient = createClient;
// Magically SDK - Sentry-style Global Instance Pattern
const MagicallySDK_1 = require("./MagicallySDK");
// Global instance (like Sentry)
let globalInstance = null;
/**
* Initialize Magically SDK with configuration
* Call this once at app startup (like Sentry.init())
*/
function init(config) {
globalInstance = new MagicallySDK_1.MagicallySDK(config);
}
/**
* Create a new Magically client (Supabase-like pattern)
* Useful for edge functions and multiple instances
*/
function createClient(config) {
return new MagicallySDK_1.MagicallySDK(config);
}
// Default export - global instance accessor (like Sentry)
const magically = {
get auth() {
if (!globalInstance)
throw new Error('Magically SDK not initialized. Call init() first.');
return globalInstance.auth;
},
get data() {
if (!globalInstance)
throw new Error('Magically SDK not initialized. Call init() first.');
return globalInstance.data;
},
get llm() {
if (!globalInstance)
throw new Error('Magically SDK not initialized. Call init() first.');
return globalInstance.llm;
},
get files() {
if (!globalInstance)
throw new Error('Magically SDK not initialized. Call init() first.');
return globalInstance.files;
},
get functions() {
if (!globalInstance)
throw new Error('Magically SDK not initialized. Call init() first.');
return globalInstance.functions;
}
};
// Export classes for advanced usage
var MagicallySDK_2 = require("./MagicallySDK");
Object.defineProperty(exports, "MagicallySDK", { enumerable: true, get: function () { return MagicallySDK_2.MagicallySDK; } });
var MagicallyAuth_1 = require("./MagicallyAuth");
Object.defineProperty(exports, "MagicallyAuth", { enumerable: true, get: function () { return MagicallyAuth_1.MagicallyAuth; } });
var MagicallyData_1 = require("./MagicallyData");
Object.defineProperty(exports, "MagicallyData", { enumerable: true, get: function () { return MagicallyData_1.MagicallyData; } });
var MagicallyLLM_1 = require("./MagicallyLLM");
Object.defineProperty(exports, "MagicallyLLM", { enumerable: true, get: function () { return MagicallyLLM_1.MagicallyLLM; } });
var MagicallyFiles_1 = require("./MagicallyFiles");
Object.defineProperty(exports, "MagicallyFiles", { enumerable: true, get: function () { return MagicallyFiles_1.MagicallyFiles; } });
var MagicallyFunctions_1 = require("./MagicallyFunctions");
Object.defineProperty(exports, "MagicallyFunctions", { enumerable: true, get: function () { return MagicallyFunctions_1.MagicallyFunctions; } });
exports.default = magically;