UNPKG

@tensorify.io/sdk

Version:

TypeScript SDK for developing Tensorify plugins with comprehensive validation, frontend enforcement, and publishing tools

92 lines 3.44 kB
"use strict"; /** * Settings field types for the Tensorify SDK * Defines how plugin settings are configured and validated */ Object.defineProperty(exports, "__esModule", { value: true }); exports.DEFAULT_VALUES = exports.UI_TYPE_TO_DATA_TYPE_MAP = exports.SettingsDataType = exports.SettingsUIType = void 0; // ======================================== // SETTINGS UI COMPONENT TYPES // ======================================== /** * UI component types available for settings fields */ var SettingsUIType; (function (SettingsUIType) { // Text Input SettingsUIType["INPUT_TEXT"] = "input-text"; SettingsUIType["TEXTAREA"] = "textarea"; // Numeric Input SettingsUIType["INPUT_NUMBER"] = "input-number"; SettingsUIType["SLIDER"] = "slider"; // Boolean Input SettingsUIType["TOGGLE"] = "toggle"; SettingsUIType["CHECKBOX"] = "checkbox"; // Selection Input SettingsUIType["DROPDOWN"] = "dropdown"; SettingsUIType["RADIO"] = "radio"; SettingsUIType["MULTI_SELECT"] = "multi-select"; // Advanced Input SettingsUIType["CODE_EDITOR"] = "code-editor"; SettingsUIType["FILE_UPLOAD"] = "file-upload"; SettingsUIType["COLOR_PICKER"] = "color-picker"; SettingsUIType["DATE_PICKER"] = "date-picker"; })(SettingsUIType || (exports.SettingsUIType = SettingsUIType = {})); /** * Data types for settings fields */ var SettingsDataType; (function (SettingsDataType) { SettingsDataType["STRING"] = "string"; SettingsDataType["NUMBER"] = "number"; SettingsDataType["BOOLEAN"] = "boolean"; SettingsDataType["ARRAY"] = "array"; SettingsDataType["OBJECT"] = "object"; SettingsDataType["FILE"] = "file"; SettingsDataType["DATE"] = "date"; SettingsDataType["COLOR"] = "color"; })(SettingsDataType || (exports.SettingsDataType = SettingsDataType = {})); // ======================================== // SETTINGS VALIDATION HELPERS // ======================================== /** * Type mapping for UI components to data types * Used for validation during plugin development */ exports.UI_TYPE_TO_DATA_TYPE_MAP = { [SettingsUIType.INPUT_TEXT]: [SettingsDataType.STRING], [SettingsUIType.TEXTAREA]: [SettingsDataType.STRING], [SettingsUIType.INPUT_NUMBER]: [SettingsDataType.NUMBER], [SettingsUIType.SLIDER]: [SettingsDataType.NUMBER], [SettingsUIType.TOGGLE]: [SettingsDataType.BOOLEAN], [SettingsUIType.CHECKBOX]: [SettingsDataType.BOOLEAN], [SettingsUIType.DROPDOWN]: [ SettingsDataType.STRING, SettingsDataType.NUMBER, SettingsDataType.BOOLEAN, ], [SettingsUIType.RADIO]: [ SettingsDataType.STRING, SettingsDataType.NUMBER, SettingsDataType.BOOLEAN, ], [SettingsUIType.MULTI_SELECT]: [SettingsDataType.ARRAY], [SettingsUIType.CODE_EDITOR]: [SettingsDataType.STRING], [SettingsUIType.FILE_UPLOAD]: [SettingsDataType.FILE], [SettingsUIType.COLOR_PICKER]: [SettingsDataType.COLOR], [SettingsUIType.DATE_PICKER]: [SettingsDataType.DATE], }; /** * Default values for different data types */ exports.DEFAULT_VALUES = { [SettingsDataType.STRING]: "", [SettingsDataType.NUMBER]: 0, [SettingsDataType.BOOLEAN]: false, [SettingsDataType.ARRAY]: [], [SettingsDataType.OBJECT]: {}, [SettingsDataType.FILE]: null, [SettingsDataType.DATE]: new Date(), [SettingsDataType.COLOR]: "#000000", }; //# sourceMappingURL=settings.js.map