AK-21/Graphite-Industrial-Intelligence
0
1"use strict";2var __defProp = Object.defineProperty;3var __getOwnPropDesc = Object.getOwnPropertyDescriptor;4var __getOwnPropNames = Object.getOwnPropertyNames;5var __hasOwnProp = Object.prototype.hasOwnProperty;6var __export = (target, all) => {7 for (var name in all)8 __defProp(target, name, { get: all[name], enumerable: true });9};10var __copyProps = (to, from, except, desc) => {11 if (from && typeof from === "object" || typeof from === "function") {12 for (let key of __getOwnPropNames(from))13 if (!__hasOwnProp.call(to, key) && key !== except)14 __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });15 }16 return to;17};18var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);19var view_exports = {};20__export(view_exports, {21 ManualViewBuilder: () => ManualViewBuilder,22 SQLiteView: () => SQLiteView,23 ViewBuilder: () => ViewBuilder,24 ViewBuilderCore: () => ViewBuilderCore,25 sqliteView: () => sqliteView,26 view: () => view27});28module.exports = __toCommonJS(view_exports);29var import_entity = require("../entity.cjs");30var import_selection_proxy = require("../selection-proxy.cjs");31var import_utils = require("../utils.cjs");32var import_query_builder = require("./query-builders/query-builder.cjs");33var import_table = require("./table.cjs");34var import_view_base = require("./view-base.cjs");35class ViewBuilderCore {36 constructor(name) {37 this.name = name;38 }39 static [import_entity.entityKind] = "SQLiteViewBuilderCore";40 config = {};41}42class ViewBuilder extends ViewBuilderCore {43 static [import_entity.entityKind] = "SQLiteViewBuilder";44 as(qb) {45 if (typeof qb === "function") {46 qb = qb(new import_query_builder.QueryBuilder());47 }48 const selectionProxy = new import_selection_proxy.SelectionProxyHandler({49 alias: this.name,50 sqlBehavior: "error",51 sqlAliasedBehavior: "alias",52 replaceOriginalName: true53 });54 const aliasedSelectedFields = qb.getSelectedFields();55 return new Proxy(56 new SQLiteView({57 // sqliteConfig: this.config,58 config: {59 name: this.name,60 schema: void 0,61 selectedFields: aliasedSelectedFields,62 query: qb.getSQL().inlineParams()63 }64 }),65 selectionProxy66 );67 }68}69class ManualViewBuilder extends ViewBuilderCore {70 static [import_entity.entityKind] = "SQLiteManualViewBuilder";71 columns;72 constructor(name, columns) {73 super(name);74 this.columns = (0, import_utils.getTableColumns)((0, import_table.sqliteTable)(name, columns));75 }76 existing() {77 return new Proxy(78 new SQLiteView({79 config: {80 name: this.name,81 schema: void 0,82 selectedFields: this.columns,83 query: void 084 }85 }),86 new import_selection_proxy.SelectionProxyHandler({87 alias: this.name,88 sqlBehavior: "error",89 sqlAliasedBehavior: "alias",90 replaceOriginalName: true91 })92 );93 }94 as(query) {95 return new Proxy(96 new SQLiteView({97 config: {98 name: this.name,99 schema: void 0,100 selectedFields: this.columns,101 query: query.inlineParams()102 }103 }),104 new import_selection_proxy.SelectionProxyHandler({105 alias: this.name,106 sqlBehavior: "error",107 sqlAliasedBehavior: "alias",108 replaceOriginalName: true109 })110 );111 }112}113class SQLiteView extends import_view_base.SQLiteViewBase {114 static [import_entity.entityKind] = "SQLiteView";115 constructor({ config }) {116 super(config);117 }118}119function sqliteView(name, selection) {120 if (selection) {121 return new ManualViewBuilder(name, selection);122 }123 return new ViewBuilder(name);124}125const view = sqliteView;126// Annotate the CommonJS export names for ESM import in node:1270 && (module.exports = {128 ManualViewBuilder,129 SQLiteView,130 ViewBuilder,131 ViewBuilderCore,132 sqliteView,133 view134});135//# sourceMappingURL=view.cjs.map