UNPKG

reveal-sdk-node

Version:

RevealBI Node.js SDK

111 lines (110 loc) 3.72 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.RVDuckDBDataSourceItem = void 0; const RVDataSourceItem_1 = require("../AbstractClasses/RVDataSourceItem"); const RVDuckDBDataSource_1 = require("./RVDuckDBDataSource"); /** * DuckDB data source item. */ class RVDuckDBDataSourceItem extends RVDataSourceItem_1.RVDataSourceItem { /** @hidden */ constructor(arg) { var _a, _b, _c; super(arg); this._schema = null; this._table = null; // @if SERVER_SDK this._customQuery = null; // @endif this._procedure = null; this._procedureParameters = null; this._processDataOnServer = false; if (arg instanceof RVDuckDBDataSource_1.RVDuckDBDataSource) { this._processDataOnServer = true; } else { var props = arg["Properties"]; if (props) { this._schema = (_a = props["Schema"]) !== null && _a !== void 0 ? _a : null; this._table = (_b = props["Table"]) !== null && _b !== void 0 ? _b : null; this._procedure = (_c = props["Procedure"]) !== null && _c !== void 0 ? _c : null; this._processDataOnServer = props["ServerAggregation"] === true; } this._procedureParameters = arg["Parameters"]; // @if SERVER_SDK this.deserializeCustomQuerySupport(arg, false); // @endif } } /** @hidden */ toJson() { var json = super.toJson(); var props = json["Properties"]; props["Schema"] = this._schema; props["Table"] = this._table; props["Procedure"] = this._procedure; props["ServerAggregation"] = this._processDataOnServer; // @if SERVER_SDK this.serializeCustomQuerySupport(json, false); // @endif //copy procedureParameters values to parameters Object.assign(json['Parameters'], this._procedureParameters); return json; } /** @hidden */ getType() { return "RVDuckDBDataSourceItem"; } /** Name of the schema to use. */ get schema() { return this._schema; } set schema(value) { this._schema = value; } /** * Name of the table (or view) to get data from */ get table() { return this._table; } set table(value) { this._table = value; } /** * (Optional) Custom SQL query to use when getting data */ get customQuery() { return this._customQuery; } set customQuery(value) { this._customQuery = value; } /** * (Optional) name of the stored procedure to get data from, the procedure is expected to return a result set and might * have multiple parameters. */ get procedure() { return this._procedure; } set procedure(value) { this._procedure = value; } /** Parameters to be passed to the stored procedure, if there is such specified in {@link RVDuckDBDataSourceItem.procedure}. */ get procedureParameters() { return this._procedureParameters; } set procedureParameters(value) { this._procedureParameters = value; } /** * Configures if the "Process Data on Server" option is turned on for this item (table or view), defaults to "true" */ get processDataOnServer() { return this._processDataOnServer; } set processDataOnServer(value) { this._processDataOnServer = value; } } exports.RVDuckDBDataSourceItem = RVDuckDBDataSourceItem;