Updated MG session acquisition.

This commit is contained in:
DebaucheryLibrarian
2023-03-27 00:01:38 +02:00
parent a7d094f0b6
commit 1a24d39761
30 changed files with 241 additions and 177 deletions

View File

@@ -7,6 +7,7 @@ const { postgraphile } = require('postgraphile');
const PgConnectionFilterPlugin = require('postgraphile-plugin-connection-filter');
const PgSimplifyInflectorPlugin = require('@graphile-contrib/pg-simplify-inflector');
const PgOrderByRelatedPlugin = require('@graphile-contrib/pg-order-by-related');
const PgAggregatesPlugin = require('@graphile/pg-aggregates').default;
const { ActorPlugins, SitePlugins, ReleasePlugins, MediaPlugins } = require('./plugins/plugins');
@@ -18,6 +19,30 @@ async function pgSettings(req) {
};
}
// console.log(PgAggregatesPlugin);
const TagsAggregatePlugin = (builder) => {
builder.hook('build', (build) => {
const pgAggregateSpecs = [
{
id: 'tags',
humanLabel: 'tags',
HumanLabel: 'Tags',
sqlAggregateWrap: (sqlFrag) => {
console.log('sql frag', sqlFrag);
return build.pgSql.fragment`sum(${sqlFrag})`;
},
isSuitableType: (pgType) => {
// console.log('pg type', pgType);
return pgType.category === 'N';
},
},
];
build.pgAggregateSpecs = pgAggregateSpecs; // eslint-disable-line no-param-reassign
});
};
module.exports = postgraphile(
connectionString,
'public',
@@ -38,11 +63,13 @@ module.exports = postgraphile(
appendPlugins: [
PgSimplifyInflectorPlugin,
PgConnectionFilterPlugin,
PgAggregatesPlugin,
PgOrderByRelatedPlugin,
...ActorPlugins,
...SitePlugins,
...ReleasePlugins,
...MediaPlugins,
TagsAggregatePlugin,
],
pgSettings,
},