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 utils_exports = {};20__export(utils_exports, {21 extractUsedTable: () => extractUsedTable,22 getMaterializedViewConfig: () => getMaterializedViewConfig,23 getTableConfig: () => getTableConfig,24 getViewConfig: () => getViewConfig25});26module.exports = __toCommonJS(utils_exports);27var import_entity = require("../entity.cjs");28var import_sql = require("../sql/sql.cjs");29var import_subquery = require("../subquery.cjs");30var import_table = require("../table.cjs");31var import_view_common = require("../view-common.cjs");32var import_checks = require("./checks.cjs");33var import_foreign_keys = require("./foreign-keys.cjs");34var import_indexes = require("./indexes.cjs");35var import_policies = require("./policies.cjs");36var import_primary_keys = require("./primary-keys.cjs");37var import_table2 = require("./table.cjs");38var import_unique_constraint = require("./unique-constraint.cjs");39var import_view_common2 = require("./view-common.cjs");40var import_view = require("./view.cjs");41function getTableConfig(table) {42 const columns = Object.values(table[import_table.Table.Symbol.Columns]);43 const indexes = [];44 const checks = [];45 const primaryKeys = [];46 const foreignKeys = Object.values(table[import_table2.GelTable.Symbol.InlineForeignKeys]);47 const uniqueConstraints = [];48 const name = table[import_table.Table.Symbol.Name];49 const schema = table[import_table.Table.Symbol.Schema];50 const policies = [];51 const enableRLS = table[import_table2.GelTable.Symbol.EnableRLS];52 const extraConfigBuilder = table[import_table2.GelTable.Symbol.ExtraConfigBuilder];53 if (extraConfigBuilder !== void 0) {54 const extraConfig = extraConfigBuilder(table[import_table.Table.Symbol.ExtraConfigColumns]);55 const extraValues = Array.isArray(extraConfig) ? extraConfig.flat(1) : Object.values(extraConfig);56 for (const builder of extraValues) {57 if ((0, import_entity.is)(builder, import_indexes.IndexBuilder)) {58 indexes.push(builder.build(table));59 } else if ((0, import_entity.is)(builder, import_checks.CheckBuilder)) {60 checks.push(builder.build(table));61 } else if ((0, import_entity.is)(builder, import_unique_constraint.UniqueConstraintBuilder)) {62 uniqueConstraints.push(builder.build(table));63 } else if ((0, import_entity.is)(builder, import_primary_keys.PrimaryKeyBuilder)) {64 primaryKeys.push(builder.build(table));65 } else if ((0, import_entity.is)(builder, import_foreign_keys.ForeignKeyBuilder)) {66 foreignKeys.push(builder.build(table));67 } else if ((0, import_entity.is)(builder, import_policies.GelPolicy)) {68 policies.push(builder);69 }70 }71 }72 return {73 columns,74 indexes,75 foreignKeys,76 checks,77 primaryKeys,78 uniqueConstraints,79 name,80 schema,81 policies,82 enableRLS83 };84}85function extractUsedTable(table) {86 if ((0, import_entity.is)(table, import_table2.GelTable)) {87 return [`${table[import_table.Table.Symbol.BaseName]}`];88 }89 if ((0, import_entity.is)(table, import_subquery.Subquery)) {90 return table._.usedTables ?? [];91 }92 if ((0, import_entity.is)(table, import_sql.SQL)) {93 return table.usedTables ?? [];94 }95 return [];96}97function getViewConfig(view) {98 return {99 ...view[import_view_common.ViewBaseConfig],100 ...view[import_view_common2.GelViewConfig]101 };102}103function getMaterializedViewConfig(view) {104 return {105 ...view[import_view_common.ViewBaseConfig],106 ...view[import_view.GelMaterializedViewConfig]107 };108}109// Annotate the CommonJS export names for ESM import in node:1100 && (module.exports = {111 extractUsedTable,112 getMaterializedViewConfig,113 getTableConfig,114 getViewConfig115});116//# sourceMappingURL=utils.cjs.map