Socket
Socket
Sign inDemoInstall

@duely/db

Package Overview
Dependencies
Maintainers
1
Versions
67
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@duely/db - npm Package Compare versions

Comparing version 0.0.15 to 0.0.16

6

dist/index.d.ts
import { ClientBase, Pool, QueryConfig } from 'pg';
import { Awaited, ResolvableValue } from '@duely/core';
import { ResourceTypes } from './types';
import { Resource, ResourceDefinitions } from './types';
export * from './errors';

@@ -39,3 +39,3 @@ export declare const pool: Pool;

export declare function queryResourceAccess(client: ClientBase, id: string): Promise<string>;
export declare function queryResource<K extends keyof ResourceTypes, F extends Record<string, any> = Record<string, any>>(context: Context, id_or_resource_name: K, filter?: F): Promise<ResourceTypes[K]>;
export declare function queryResource<K extends keyof ResourceDefinitions, F extends Record<string, any> = Record<string, any>>(context: Context, id_or_resource_name: K, filter?: F): Promise<Resource<K>>;
export declare function queryResource<R = any, F extends Record<string, any> = Record<string, any>>(context: Context, id_or_resource_name: string, filter?: F): Promise<R>;

@@ -58,3 +58,3 @@ export declare function queryResource<R = any, F extends Record<string, any> = Record<string, any>>(client: ClientBase, id_or_resource_name: string, filter?: F): Promise<R>;

queryResourceAccess: import("@duely/core").GenericFunction<Promise<string>, [] | [client: ClientBase, id: string] | [id: string]>;
queryResource<K extends string, R_2 = any, F extends Record<string, any> = Record<string, any>>(id_or_resource_name: K, filter?: F | undefined): Promise<K extends keyof ResourceTypes ? ResourceTypes[K] : R_2>;
queryResource<K extends string, R_2 = any, F extends Record<string, any> = Record<string, any>>(id_or_resource_name: K, filter?: F | undefined): Promise<K extends keyof ResourceDefinitions ? Resource<K> : R_2>;
queryResourceAll<R_3 = any, F_1 extends Record<string, any> = Record<string, any>>(resource_name: string, filter?: F_1 | undefined): Promise<R_3[]>;

@@ -61,0 +61,0 @@ createResource<R_4 = any, I_2 extends Record<string, any> = Record<string, any>>(resource_name: string, data: I_2): Promise<R_4>;

@@ -1,17 +0,201 @@

export declare type Resource = {
id: string;
export declare type Resource<K extends keyof ResourceDefinitions> = 'resource' extends keyof ResourceDefinitions[K] ? Pick<ResourceDefinitions[K], 'resource'> : never;
export declare type ResourceId<K extends keyof ResourceDefinitions> = `${ResourceDefinitions[K]['prefix']}_${string}`;
export declare type SubdomainResource = {
id: ResourceId<'subdomain'>;
name: string;
};
export declare type SubdomainResource = Resource & {
export declare type AgencyResource = {
id: ResourceId<'agency'>;
name: string;
livemode: boolean;
agency: AgencyResource;
subdomain_id: ResourceId<'subdomain'>;
subscription_plan_id: ResourceId<'subscription plan'>;
};
export declare type AgencyResource = Resource & {
export declare type ThemeResource = {
id: ResourceId<'theme'>;
name: string;
livemode: boolean;
subdomain: SubdomainResource;
image_logo_id: ResourceId<'image'>;
image_hero_id: ResourceId<'image'>;
color_primary: string;
color_secondary: string;
color_accent: string;
color_background: string;
color_surface: string;
color_error: string;
color_success: string;
agency_id: ResourceId<'agency'>;
};
export declare type ResourceTypes = {
agency: AgencyResource;
subdomain: SubdomainResource;
export declare type ImageResource = {
id: ResourceId<'image'>;
name: string;
data: string;
color: string;
agency_id: ResourceId<'agency'>;
access: AccessLevel;
};
export declare type UserResource = {
id: ResourceId<'user'>;
name: string;
email_address: string;
};
export declare type ResourceDefinitions = {
subdomain: {
name: 'subdomain';
prefix: 'sub';
table_name: 'subdomain';
resource: SubdomainResource;
};
agency: {
name: 'agency';
prefix: 'agcy';
table_name: 'agency';
resource: AgencyResource;
};
theme: {
name: 'theme';
prefix: 'theme';
table_name: 'theme';
resource: ThemeResource;
};
image: {
name: 'image';
prefix: 'img';
table_name: 'image';
resource: ImageResource;
};
user: {
name: 'user';
prefix: 'user';
table_name: 'user';
resource: UserResource;
};
'sign up': {
name: 'sign up';
prefix: 'su';
table_name: 'sign_up';
};
'password reset': {
name: 'password reset';
prefix: 'pwd';
table_name: 'password_reset';
};
product: {
name: 'product';
prefix: 'prod';
table_name: 'product';
};
markdown: {
name: 'markdown';
prefix: 'md';
table_name: 'markdown';
};
membership: {
name: 'membership';
prefix: 'member';
table_name: 'membership';
};
'notification definition': {
name: 'notification definition';
prefix: 'notidef';
table_name: 'notification_definition';
};
'user notification setting': {
name: 'user notification setting';
prefix: 'set';
table_name: 'user_notification_setting';
};
form: {
name: 'form';
prefix: 'form';
table_name: 'form';
};
'agency thank you page setting': {
name: 'agency thank you page setting';
prefix: 'set';
table_name: 'agency_thank_you_page_setting';
};
'page block definition': {
name: 'page block definition';
prefix: 'pblkdef';
table_name: 'page_block_definition';
};
'product thank you page setting': {
name: 'product thank you page setting';
prefix: 'set';
table_name: 'product_thank_you_page_setting';
};
'form field': {
name: 'form field';
prefix: 'formfld';
table_name: 'form_field';
};
'page block': {
name: 'page block';
prefix: 'pblk';
table_name: 'page_block';
};
'transaction fee': {
name: 'transaction fee';
prefix: 'txnfee';
table_name: 'transaction_fee';
};
'page definition': {
name: 'page definition';
prefix: 'pagedef';
table_name: 'page_definition';
};
page: {
name: 'page';
prefix: 'page';
table_name: 'page';
};
'stripe account': {
name: 'stripe account';
prefix: 'stripe';
table_name: 'stripe_account';
};
'subscription plan': {
name: 'subscription plan';
prefix: 'subplan';
table_name: 'subscription_plan';
};
customer: {
name: 'customer';
prefix: 'cus';
table_name: 'customer';
};
'webhook event': {
name: 'webhook event';
prefix: 'whevt';
table_name: 'webhook_event';
};
price: {
name: 'price';
prefix: 'price';
table_name: 'price';
};
order: {
name: 'order';
prefix: 'ord';
table_name: 'order';
};
credential: {
name: 'credential';
prefix: 'cred';
table_name: 'credential';
};
integration: {
name: 'integration';
prefix: 'inte';
table_name: 'integration';
};
'order item': {
name: 'order item';
prefix: 'orditm';
table_name: 'order_item';
};
};
export declare type AccessLevel = 'owner' | 'manager' | 'agent' | 'client' | 'public';
export declare type OperationType = 'query' | 'create' | 'update' | 'delete';
export declare type ProcessingState = 'pending' | 'processing' | 'processed' | 'failed';
export declare type VerificationStatus = 'started' | 'verified' | 'cancelled' | 'expired';
{
"name": "@duely/db",
"version": "0.0.15",
"version": "0.0.16",
"description": "Client for querying duely-postgres database.",

@@ -5,0 +5,0 @@ "repository": "github:uoleevi/duely",

@@ -5,3 +5,3 @@ import { ClientBase, Pool, PoolClient, QueryConfig } from 'pg';

import { Awaited, ResolvableValue, Util } from '@duely/core';
import { ResourceTypes } from './types';
import { Resource, ResourceDefinitions } from './types';

@@ -245,7 +245,7 @@ export * from './errors';

export async function queryResource<K extends keyof ResourceTypes, F extends Record<string, any> = Record<string, any>>(
export async function queryResource<K extends keyof ResourceDefinitions, F extends Record<string, any> = Record<string, any>>(
context: Context,
id_or_resource_name: K,
filter?: F
): Promise<ResourceTypes[K]>;
): Promise<Resource<K>>;
export async function queryResource<R = any, F extends Record<string, any> = Record<string, any>>(

@@ -401,3 +401,3 @@ context: Context,

filter?: F
): Promise<K extends keyof ResourceTypes ? ResourceTypes[K] : R> {
): Promise<K extends keyof ResourceDefinitions ? Resource<K> : R> {
return await queryResource(client, id_or_resource_name, filter);

@@ -404,0 +404,0 @@ },

@@ -1,20 +0,139 @@

export type Resource = {
id: string;
export type Resource<
K extends keyof ResourceDefinitions
> = 'resource' extends keyof ResourceDefinitions[K]
? Pick<ResourceDefinitions[K], 'resource'>
: never;
export type ResourceId<
K extends keyof ResourceDefinitions
> = `${ResourceDefinitions[K]['prefix']}_${string}`;
export type SubdomainResource = {
id: ResourceId<'subdomain'>;
name: string;
};
export type SubdomainResource = Resource & {
export type AgencyResource = {
id: ResourceId<'agency'>;
name: string;
livemode: boolean;
agency: AgencyResource;
subdomain_id: ResourceId<'subdomain'>;
subscription_plan_id: ResourceId<'subscription plan'>;
};
export type AgencyResource = Resource & {
export type ThemeResource = {
id: ResourceId<'theme'>;
name: string;
livemode: boolean;
subdomain: SubdomainResource;
image_logo_id: ResourceId<'image'>;
image_hero_id: ResourceId<'image'>;
color_primary: string;
color_secondary: string;
color_accent: string;
color_background: string;
color_surface: string;
color_error: string;
color_success: string;
agency_id: ResourceId<'agency'>;
};
export type ResourceTypes = {
agency: AgencyResource;
subdomain: SubdomainResource;
export type ImageResource = {
id: ResourceId<'image'>;
name: string;
data: string;
color: string;
agency_id: ResourceId<'agency'>;
access: AccessLevel;
};
export type UserResource = {
id: ResourceId<'user'>;
name: string;
email_address: string;
};
export type ResourceDefinitions = {
subdomain: {
name: 'subdomain';
prefix: 'sub';
table_name: 'subdomain';
resource: SubdomainResource;
};
agency: { name: 'agency'; prefix: 'agcy'; table_name: 'agency'; resource: AgencyResource };
theme: { name: 'theme'; prefix: 'theme'; table_name: 'theme'; resource: ThemeResource };
image: { name: 'image'; prefix: 'img'; table_name: 'image'; resource: ImageResource };
user: { name: 'user'; prefix: 'user'; table_name: 'user'; resource: UserResource };
'sign up': { name: 'sign up'; prefix: 'su'; table_name: 'sign_up' };
'password reset': {
name: 'password reset';
prefix: 'pwd';
table_name: 'password_reset';
};
product: { name: 'product'; prefix: 'prod'; table_name: 'product' };
markdown: { name: 'markdown'; prefix: 'md'; table_name: 'markdown' };
membership: { name: 'membership'; prefix: 'member'; table_name: 'membership' };
'notification definition': {
name: 'notification definition';
prefix: 'notidef';
table_name: 'notification_definition';
};
'user notification setting': {
name: 'user notification setting';
prefix: 'set';
table_name: 'user_notification_setting';
};
form: { name: 'form'; prefix: 'form'; table_name: 'form' };
'agency thank you page setting': {
name: 'agency thank you page setting';
prefix: 'set';
table_name: 'agency_thank_you_page_setting';
};
'page block definition': {
name: 'page block definition';
prefix: 'pblkdef';
table_name: 'page_block_definition';
};
'product thank you page setting': {
name: 'product thank you page setting';
prefix: 'set';
table_name: 'product_thank_you_page_setting';
};
'form field': { name: 'form field'; prefix: 'formfld'; table_name: 'form_field' };
'page block': { name: 'page block'; prefix: 'pblk'; table_name: 'page_block' };
'transaction fee': {
name: 'transaction fee';
prefix: 'txnfee';
table_name: 'transaction_fee';
};
'page definition': {
name: 'page definition';
prefix: 'pagedef';
table_name: 'page_definition';
};
page: { name: 'page'; prefix: 'page'; table_name: 'page' };
'stripe account': {
name: 'stripe account';
prefix: 'stripe';
table_name: 'stripe_account';
};
'subscription plan': {
name: 'subscription plan';
prefix: 'subplan';
table_name: 'subscription_plan';
};
customer: { name: 'customer'; prefix: 'cus'; table_name: 'customer' };
'webhook event': {
name: 'webhook event';
prefix: 'whevt';
table_name: 'webhook_event';
};
price: { name: 'price'; prefix: 'price'; table_name: 'price' };
order: { name: 'order'; prefix: 'ord'; table_name: 'order' };
credential: { name: 'credential'; prefix: 'cred'; table_name: 'credential' };
integration: { name: 'integration'; prefix: 'inte'; table_name: 'integration' };
'order item': { name: 'order item'; prefix: 'orditm'; table_name: 'order_item' };
};
export type AccessLevel = 'owner' | 'manager' | 'agent' | 'client' | 'public';
export type OperationType = 'query' | 'create' | 'update' | 'delete';
export type ProcessingState = 'pending' | 'processing' | 'processed' | 'failed';
export type VerificationStatus = 'started' | 'verified' | 'cancelled' | 'expired';

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc