Update Types

This commit is contained in:
Benjamin Toby
2024-10-18 06:45:25 +01:00
parent 2f93b6a311
commit bf903d3524
36 changed files with 717 additions and 399 deletions
-117
View File
@@ -1,117 +0,0 @@
// @ts-check
/**
* @typedef {string} DSQL_DatabaseFullName - Database full name(slug) including datasquirel data => "datasquirel_user_7_new_database"
*/
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/**
* @typedef {object} DSQL_DatabaseSchemaType
* @property {string} dbName - Database Full name with spaces => "New Database"
* @property {string} dbSlug - Database Slug => "new_database"
* @property {string} dbFullName - Database full name(slug) including datasquirel data => "datasquirel_user_7_new_database"
* @property {string} [dbDescription] - Database brief description
* @property {string} [dbImage] - Database image - Defaults to "/images/default.png"
* @property {DSQL_TableSchemaType[]} tables - List of database tables
* @property {DSQL_ChildrenDatabaseObject[]} [childrenDatabases] - List of children databases for current database which is parent
* @property {boolean} [childDatabase] - If current database is a child of a different parent database
* @property {string} [childDatabaseDbFullName] - Parent database full name => "datasquirel_user_7_new_database"
* @property {boolean} [updateData] - Should the child database data update when the parent database data is updated?
*/
/**
* @typedef {object} DSQL_ChildrenDatabaseObject
* @property {string} dbFullName - Database Full name => "datasquirel_user_4_db_name"
*/
////////////////////////////////////////
/**
* @typedef {object} DSQL_TableSchemaType
* @property {string} tableName - Table slug (blog_posts)
* @property {string} tableFullName - Table full name with spaces => "Blog Posts"
* @property {string} [tableDescription] - Brief description of table
* @property {DSQL_FieldSchemaType[]} fields - List of table Fields
* @property {DSQL_IndexSchemaType[]} [indexes] - List of table indexes, if available
* @property {DSQL_ChildrenTablesType[]} [childrenTables] - List of children tables
* @property {boolean} [childTable] -If current table is a child clone
* @property {boolean} [updateData] -If the current table data updates with the parent table
* @property {string} [childTableName] - Table slug of parent table => "blog_posts"
* @property {string} [childTableDbFullName] - Database full name(slug) including datasquirel data => "datasquirel_user_7_new_database"
* @property {string} [tableNameOld] - Old table name, incase of renaming table
*/
/**
* @typedef {object} DSQL_ChildrenTablesType
* @property {string} dbNameFull - Database full name(slug) including datasquirel data => "datasquirel_user_7_new_database"
* @property {string} tableName - Table slug => "blog_posts"
* @property {string} [tableNameFull]
*/
////////////////////////////////////////
/**
* @typedef {object} DSQL_FieldSchemaType
* @property {string} [fieldName] - Field Name(slug) => "long_description"
* @property {string} [originName] - Field origin name(optional)
* @property {boolean} [updatedField] - Has this field been renamed?
* @property {string} [dataType] - Field Data type => "BIGIN" | "LONGTEXT" | "VARCHAR(***)" | ...
* @property {boolean} [nullValue] - Is this a null value or not?
* @property {boolean} [notNullValue] - Is this NOT a null value?
* @property {boolean} [primaryKey] - Is this the primary key for table?
* @property {boolean} [encrypted] - Is this field value encrypted?
* @property {boolean} [autoIncrement] - Does this table primary key increment automatically?
* @property {string|number} [defaultValue] - Value of field by default
* @property {string} [defaultValueLiteral] - SQL key word which generates value automatically => "CURRENT_TIMESTAMP"
* @property {DSQL_ForeignKeyType} [foreignKey] - Field foreign key reference object
* @property {boolean} [richText] - Rich text field
* @property {boolean} [json]
* @property {boolean} [yaml]
* @property {boolean} [html]
* @property {boolean} [css]
* @property {boolean} [javascript]
* @property {boolean} [shell]
* @property {boolean} [newTempField]
* @property {boolean} [defaultField]
* @property {boolean} [plainText]
* @property {boolean} [unique]
* @property {string} [pattern]
* @property {string} [patternFlags]
* @property {string} [onUpdate]
* @property {string} [onUpdateLiteral]
* @property {string} [onDelete]
* @property {string} [onDeleteLiteral]
* @property {string[]} [cssFiles]
*/
/**
* @typedef {object} DSQL_ForeignKeyType
* @property {string} [foreignKeyName] - Unique Name of foreign key
* @property {string} [destinationTableName] - Reference table name(slug) => "blog_posts"
* @property {string} [destinationTableColumnName] - Reference column name(slug) => "id"
* @property {string} [destinationTableColumnType] - Reference table field type => "BIGINT" | "VARCHAR(***)" | ...
* @property {boolean} [cascadeDelete] - Does the reference table entry delete when this key is deleted?
* @property {boolean} [cascadeUpdate] - Does the reference table entry update when this key is updated?
*/
////////////////////////////////////////
/**
* @typedef {object} DSQL_IndexSchemaType
* @property {string} [indexName] - Unique Name of index => "blog_text_index"
* @property {string} [indexType] - "regular" or "fullText"
* @property {DSQL_IndexTableFieldType[]} [indexTableFields] - List of Index table fields
* @property {string} [alias] - List of Index table fields
* @property {boolean} [newTempIndex]
*/
/**
* @typedef {object} DSQL_IndexTableFieldType
* @property {string} value - Table Field Name
* @property {string} dataType - Table Field data type "VARCHAR(***)" | "BIGINT" | ...
*/
View File
-37
View File
@@ -1,37 +0,0 @@
// @ts-check
const http = require("http");
/**
* @typedef {http.IncomingMessage} Request
*/
/**
* @typedef {http.ServerResponse} Response
*/
/**
* @typedef {{
* imageBase64: string,
* imageBase64Full: string,
* imageName: string,
* imageSize: number,
* }} ImageInputFileToBase64FunctionReturn
*/
/**
* @typedef {object} GetReqQueryObject
* @property {string} db
* @property {string} query
* @property {string} [queryValues]
* @property {string} [tableName]
*/
/**
* @typedef {(param0: SerializeQueryParams) => string} SerializeQueryFnType
*/
/**
* @typedef {object} SerializeQueryParams
* @property {any} query
*/
+317
View File
@@ -0,0 +1,317 @@
import http from "http";
type DSQL_DatabaseFullName = string;
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
interface DSQL_DatabaseSchemaType {
dbName: string;
dbSlug: string;
dbFullName: string;
dbDescription?: string;
dbImage?: string;
tables: DSQL_TableSchemaType[];
childrenDatabases?: DSQL_ChildrenDatabaseObject[];
childDatabase?: boolean;
childDatabaseDbFullName?: string;
updateData?: boolean;
}
interface DSQL_ChildrenDatabaseObject {
dbFullName: string;
}
////////////////////////////////////////
interface DSQL_TableSchemaType {
tableName: string;
tableFullName: string;
tableDescription?: string;
fields: DSQL_FieldSchemaType[];
indexes?: DSQL_IndexSchemaType[];
childrenTables?: DSQL_ChildrenTablesType[];
childTable?: boolean;
updateData?: boolean;
childTableName?: string;
childTableDbFullName?: string;
tableNameOld?: string;
}
interface DSQL_ChildrenTablesType {
dbNameFull: string;
tableName: string;
tableNameFull?: string;
}
////////////////////////////////////////
interface DSQL_FieldSchemaType {
fieldName?: string;
originName?: string;
updatedField?: boolean;
dataType?: string;
nullValue?: boolean;
notNullValue?: boolean;
primaryKey?: boolean;
encrypted?: boolean;
autoIncrement?: boolean;
defaultValue?: string | number;
defaultValueLiteral?: string;
foreignKey?: DSQL_ForeignKeyType;
richText?: boolean;
json?: boolean;
yaml?: boolean;
html?: boolean;
css?: boolean;
javascript?: boolean;
shell?: boolean;
newTempField?: boolean;
defaultField?: boolean;
plainText?: boolean;
unique?: boolean;
pattern?: string;
patternFlags?: string;
onUpdate?: string;
onUpdateLiteral?: string;
onDelete?: string;
onDeleteLiteral?: string;
cssFiles?: string[];
}
interface DSQL_ForeignKeyType {
foreignKeyName?: string;
destinationTableName?: string;
destinationTableColumnName?: string;
destinationTableColumnType?: string;
cascadeDelete?: boolean;
cascadeUpdate?: boolean;
}
////////////////////////////////////////
interface DSQL_IndexSchemaType {
indexName?: string;
indexType?: string;
indexTableFields?: DSQL_IndexTableFieldType[];
alias?: string;
newTempIndex?: boolean;
}
interface DSQL_IndexTableFieldType {
value: string;
dataType: string;
}
interface DSQL_MYSQL_SHOW_INDEXES_Type {
Key_name: string;
Table: string;
Column_name: string;
Collation: string;
Index_type: string;
Cardinality: string;
Index_comment: string;
Comment: string;
}
////////////////////////////////////////
interface DSQL_MYSQL_SHOW_COLUMNS_Type {
Field: string;
Type: string;
Null: string;
Key: string;
Default: string;
Extra: string;
}
////////////////////////////////////////
interface DSQL_MYSQL_FOREIGN_KEYS_Type {
CONSTRAINT_NAME: string;
CONSTRAINT_SCHEMA: string;
TABLE_NAME: string;
}
////////////////////////////////////////
interface DSQL_MYSQL_user_databases_Type {
user_id: number;
db_full_name: string;
db_name: string;
db_slug: string;
db_image: string;
db_description: string;
active_clone: number;
active_clone_parent_db: string;
}
interface PackageUserLoginRequestBody {
encryptionKey: string;
payload: any;
database: string;
additionalFields?: string[];
email_login?: boolean;
email_login_code?: string;
email_login_field?: string;
token?: boolean;
social?: boolean;
dbSchema?: DSQL_DatabaseSchemaType;
}
interface PackageUserLoginLocalBody {
payload: any;
additionalFields?: string[];
email_login?: boolean;
email_login_code?: string;
email_login_field?: string;
token?: boolean;
social?: boolean;
dbSchema?: DSQL_DatabaseSchemaType;
}
type Request = http.IncomingMessage;
type Response = http.ServerResponse;
type ImageInputFileToBase64FunctionReturn = {
imageBase64: string;
imageBase64Full: string;
imageName: string;
imageSize: number;
};
interface GetReqQueryObject {
db: string;
query: string;
queryValues?: string;
tableName?: string;
}
type SerializeQueryFnType = (param0: SerializeQueryParams) => string;
interface SerializeQueryParams {
query: any;
}
// @ts-check
interface DATASQUIREL_LoggedInUser {
id?: number;
first_name: string;
last_name: string;
email: string;
phone?: string;
user_type?: string;
username?: string;
password: string;
image?: string;
image_thumbnail?: string;
address?: string;
city?: string;
state?: string;
country?: string;
zip_code?: string;
social_login?: number;
social_platform?: string;
social_id?: string;
more_user_data?: string;
verification_status?: number;
loan_officer_id?: number;
is_admin?: number;
admin_level?: number;
admin_permissions?: string;
uuid: string;
temp_login_code?: string;
date_created?: string;
date_created_code?: number;
date_created_timestamp?: string;
date_updated?: string;
date_updated_code?: number;
date_updated_timestamp?: string;
csrf_k?: string;
logged_in_status?: boolean;
date?: number;
more_data?: any;
}
interface AuthenticatedUser {
success: boolean;
payload: DATASQUIREL_LoggedInUser | null;
msg?: string;
userId?: number;
}
interface SuccessUserObject {
id: number;
first_name: string;
last_name: string;
email: string;
}
interface AddUserFunctionReturn {
success: boolean;
payload?: SuccessUserObject | null;
msg?: string;
sqlResult?: any;
}
interface GoogleIdentityPromptNotification {
getMomentType: () => string;
getDismissedReason: () => string;
getNotDisplayedReason: () => string;
getSkippedReason: () => string;
isDismissedMoment: () => boolean;
isDisplayMoment: () => boolean;
isDisplayed: () => boolean;
isNotDisplayed: () => boolean;
isSkippedMoment: () => boolean;
}
interface UserDataPayload {
first_name: string;
last_name: string;
email: string;
password: string;
username: string;
}
interface GetUserFunctionReturn {
success: boolean;
payload: {
id: number;
first_name: string;
last_name: string;
username: string;
email: string;
phone: string;
social_id: [string];
image: string;
image_thumbnail: string;
verification_status: [number];
};
}
interface ReauthUserFunctionReturn {
success: boolean;
payload: DATASQUIREL_LoggedInUser | null;
msg?: string;
userId?: number;
token?: string;
}
interface UpdateUserFunctionReturn {
success: boolean;
payload?: Object[] | string;
}
interface GetReturn {
success: boolean;
payload?: any;
msg?: string;
error?: string;
schema?: DSQL_TableSchemaType;
}
+355
View File
@@ -0,0 +1,355 @@
// @ts-check
/**
* @typedef {string} DSQL_DatabaseFullName - Database full name(slug) including datasquirel data => "datasquirel_user_7_new_database"
*/
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/**
* @typedef {object} DSQL_DatabaseSchemaType
* @property {string} dbName - Database Full name with spaces => "New Database"
* @property {string} dbSlug - Database Slug => "new_database"
* @property {string} dbFullName - Database full name(slug) including datasquirel data => "datasquirel_user_7_new_database"
* @property {string} [dbDescription] - Database brief description
* @property {string} [dbImage] - Database image - Defaults to "/images/default.png"
* @property {DSQL_TableSchemaType[]} tables - List of database tables
* @property {DSQL_ChildrenDatabaseObject[]} [childrenDatabases] - List of children databases for current database which is parent
* @property {boolean} [childDatabase] - If current database is a child of a different parent database
* @property {string} [childDatabaseDbFullName] - Parent database full name => "datasquirel_user_7_new_database"
* @property {boolean} [updateData] - Should the child database data update when the parent database data is updated?
*/
/**
* @typedef {object} DSQL_ChildrenDatabaseObject
* @property {string} dbFullName - Database Full name => "datasquirel_user_4_db_name"
*/
////////////////////////////////////////
/**
* @typedef {object} DSQL_TableSchemaType
* @property {string} tableName - Table slug (blog_posts)
* @property {string} tableFullName - Table full name with spaces => "Blog Posts"
* @property {string} [tableDescription] - Brief description of table
* @property {DSQL_FieldSchemaType[]} fields - List of table Fields
* @property {DSQL_IndexSchemaType[]} [indexes] - List of table indexes, if available
* @property {DSQL_ChildrenTablesType[]} [childrenTables] - List of children tables
* @property {boolean} [childTable] -If current table is a child clone
* @property {boolean} [updateData] -If the current table data updates with the parent table
* @property {string} [childTableName] - Table slug of parent table => "blog_posts"
* @property {string} [childTableDbFullName] - Database full name(slug) including datasquirel data => "datasquirel_user_7_new_database"
* @property {string} [tableNameOld] - Old table name, incase of renaming table
*/
/**
* @typedef {object} DSQL_ChildrenTablesType
* @property {string} dbNameFull - Database full name(slug) including datasquirel data => "datasquirel_user_7_new_database"
* @property {string} tableName - Table slug => "blog_posts"
* @property {string} [tableNameFull]
*/
////////////////////////////////////////
/**
* @typedef {object} DSQL_FieldSchemaType
* @property {string} [fieldName] - Field Name(slug) => "long_description"
* @property {string} [originName] - Field origin name(optional)
* @property {boolean} [updatedField] - Has this field been renamed?
* @property {string} [dataType] - Field Data type => "BIGIN" | "LONGTEXT" | "VARCHAR(***)" | ...
* @property {boolean} [nullValue] - Is this a null value or not?
* @property {boolean} [notNullValue] - Is this NOT a null value?
* @property {boolean} [primaryKey] - Is this the primary key for table?
* @property {boolean} [encrypted] - Is this field value encrypted?
* @property {boolean} [autoIncrement] - Does this table primary key increment automatically?
* @property {string|number} [defaultValue] - Value of field by default
* @property {string} [defaultValueLiteral] - SQL key word which generates value automatically => "CURRENT_TIMESTAMP"
* @property {DSQL_ForeignKeyType} [foreignKey] - Field foreign key reference object
* @property {boolean} [richText] - Rich text field
* @property {boolean} [json]
* @property {boolean} [yaml]
* @property {boolean} [html]
* @property {boolean} [css]
* @property {boolean} [javascript]
* @property {boolean} [shell]
* @property {boolean} [newTempField]
* @property {boolean} [defaultField]
* @property {boolean} [plainText]
* @property {boolean} [unique]
* @property {string} [pattern]
* @property {string} [patternFlags]
* @property {string} [onUpdate]
* @property {string} [onUpdateLiteral]
* @property {string} [onDelete]
* @property {string} [onDeleteLiteral]
* @property {string[]} [cssFiles]
*/
/**
* @typedef {object} DSQL_ForeignKeyType
* @property {string} [foreignKeyName] - Unique Name of foreign key
* @property {string} [destinationTableName] - Reference table name(slug) => "blog_posts"
* @property {string} [destinationTableColumnName] - Reference column name(slug) => "id"
* @property {string} [destinationTableColumnType] - Reference table field type => "BIGINT" | "VARCHAR(***)" | ...
* @property {boolean} [cascadeDelete] - Does the reference table entry delete when this key is deleted?
* @property {boolean} [cascadeUpdate] - Does the reference table entry update when this key is updated?
*/
////////////////////////////////////////
/**
* @typedef {object} DSQL_IndexSchemaType
* @property {string} [indexName] - Unique Name of index => "blog_text_index"
* @property {string} [indexType] - "regular" or "fullText"
* @property {DSQL_IndexTableFieldType[]} [indexTableFields] - List of Index table fields
* @property {string} [alias] - List of Index table fields
* @property {boolean} [newTempIndex]
*/
/**
* @typedef {object} DSQL_IndexTableFieldType
* @property {string} value - Table Field Name
* @property {string} dataType - Table Field data type "VARCHAR(***)" | "BIGINT" | ...
*/
/**
* @typedef {object} DSQL_MYSQL_SHOW_INDEXES_Type
* @property {string} Key_name - MYSQL Index Name
* @property {string} Table - Table Name(slug)
* @property {string} Column_name
* @property {string} Collation
* @property {string} Index_type - "FULL_TEXT" | ...
* @property {string} Cardinality
* @property {string} Index_comment
* @property {string} Comment
*/
////////////////////////////////////////
/**
* @typedef {object} DSQL_MYSQL_SHOW_COLUMNS_Type
* @property {string} Field - Field Name as represented in MSQL database
* @property {string} Type - varchar(***) | tinyint | bigint | ...
* @property {string} Null
* @property {string} Key
* @property {string} Default
* @property {string} Extra
*/
////////////////////////////////////////
/**
* @typedef {object} DSQL_MYSQL_FOREIGN_KEYS_Type
* @property {string} CONSTRAINT_NAME - Constraint Name => "PRIMARY" | "MUL" | null | ...
* @property {string} CONSTRAINT_SCHEMA - Database name
* @property {string} TABLE_NAME - Table name
*/
////////////////////////////////////////
/**
* @typedef {object} DSQL_MYSQL_user_databases_Type
* @property {number} user_id - User Id
* @property {string} db_full_name - Database full name => eg. (dataasquirel_user_2_new_database)
* @property {string} db_name - Database name with spaces => eg. (New Database)
* @property {string} db_slug - Database slug => eg. (new_database)
* @property {string} db_image - Database image path
* @property {string} db_description - Database description
* @property {number} active_clone - is Database active clone => 0 or 1
* @property {string} active_clone_parent_db - Database parent db full name => eg. "datasquirel_user_7_wexculture"
*/
/**
* @typedef {object} PackageUserLoginRequestBody
* @property {string} encryptionKey
* @property {any} payload
* @property {string} database
* @property {string[]} [additionalFields]
* @property {boolean} [email_login]
* @property {string} [email_login_code]
* @property {string} [email_login_field]
* @property {boolean} [token]
* @property {boolean} [social]
* @property {DSQL_DatabaseSchemaType} [dbSchema]
*/
/**
* @typedef {object} PackageUserLoginLocalBody
* @property {any} payload
* @property {string[]} [additionalFields]
* @property {boolean} [email_login]
* @property {string} [email_login_code]
* @property {string} [email_login_field]
* @property {boolean} [token]
* @property {boolean} [social]
* @property {DSQL_DatabaseSchemaType} [dbSchema]
*/
const http = require("http");
/**
* @typedef {http.IncomingMessage} Request
*/
/**
* @typedef {http.ServerResponse} Response
*/
/**
* @typedef {{
* imageBase64: string,
* imageBase64Full: string,
* imageName: string,
* imageSize: number,
* }} ImageInputFileToBase64FunctionReturn
*/
/**
* @typedef {object} GetReqQueryObject
* @property {string} db
* @property {string} query
* @property {string} [queryValues]
* @property {string} [tableName]
*/
/**
* @typedef {(param0: SerializeQueryParams) => string} SerializeQueryFnType
*/
/**
* @typedef {object} SerializeQueryParams
* @property {any} query
*/
// @ts-check
/**
* @typedef {object} DATASQUIREL_LoggedInUser
* @property {number} [id]
* @property {string} first_name
* @property {string} last_name
* @property {string} email
* @property {string} [phone]
* @property {string} [user_type]
* @property {string} [username]
* @property {string} password
* @property {string} [image]
* @property {string} [image_thumbnail]
* @property {string} [address]
* @property {string} [city]
* @property {string} [state]
* @property {string} [country]
* @property {string} [zip_code]
* @property {number} [social_login]
* @property {string?} [social_platform]
* @property {string?} [social_id]
* @property {string} [more_user_data]
* @property {number} [verification_status]
* @property {number?} [loan_officer_id]
* @property {number} [is_admin]
* @property {number} [admin_level]
* @property {string} [admin_permissions]
* @property {string?} uuid
* @property {string?} [temp_login_code]
* @property {string?} [date_created]
* @property {number?} [date_created_code]
* @property {string?} [date_created_timestamp]
* @property {string?} [date_updated]
* @property {number?} [date_updated_code]
* @property {string?} [date_updated_timestamp]
* @property {string} [csrf_k] - CSRF key
* @property {boolean} [logged_in_status]
* @property {number} [date]
* @property {any} [more_data]
*/
/**
* @typedef {object} AuthenticatedUser
* @property {boolean} success - Did the function run successfully?
* @property {DATASQUIREL_LoggedInUser | null} payload - Payload of the response
* @property {string} [msg] - An optional message
* @property {number} [userId] - An optional message
*/
/**
* @typedef {object} SuccessUserObject
* @property {number} id
* @property {string} first_name
* @property {string} last_name
* @property {string} email
*/
/**
* @typedef {object} AddUserFunctionReturn
* @property {boolean} success - Did the function run successfully?
* @property {SuccessUserObject | null} [payload] - Payload
* @property {string} [msg]
* @property {any} [sqlResult]
*/
/**
* @typedef {object} GoogleIdentityPromptNotification
* @property {function(): string} getMomentType - Notification moment type
* @property {function(): string} getDismissedReason - Notification get Dismissed Reason
* @property {function(): string} getNotDisplayedReason - Notification get Not Displayed Reason
* @property {function(): string} getSkippedReason - Notification get Skipped Reason
* @property {function(): boolean} isDismissedMoment - Notification is Dismissed Moment
* @property {function(): boolean} isDisplayMoment - Notification is Display Moment
* @property {function(): boolean} isDisplayed - Notification is Displayed
* @property {function(): boolean} isNotDisplayed - Notification is Not Displayed
* @property {function(): boolean} isSkippedMoment - Notification is Skipped Moment
*/
/**
* @typedef {object} UserDataPayload
* @property {string} first_name - First Name *Required
* @property {string} last_name - Last Name *Required
* @property {string} email - Email *Required
* @property {string} password - Password *Required
* @property {string?} username - Username (Optional)
*/
/**
* @typedef {object} GetUserFunctionReturn
* @property {boolean} success - Did the function run successfully?
* @property {{
* id: number,
* first_name: string,
* last_name: string,
* username: string,
* email: string,
* phone: string,
* social_id: [string],
* image: string,
* image_thumbnail: string,
* verification_status: [number],
* }} payload - Payload
*/
/**
* @typedef {object} ReauthUserFunctionReturn
* @property {boolean} success - Did the function run successfully?
* @property {DATASQUIREL_LoggedInUser | null} payload - Payload
* @property {string} [msg] - Response Message
* @property {number} [userId] - user ID
* @property {string} [token] - new Token
*/
/**
* @typedef {object} UpdateUserFunctionReturn
* @property {boolean} success - Did the function run successfully?
* @property {(Object[]|string)} [payload=[]] - Payload
*/
/**
* @typedef {Object} GetReturn
* @property {boolean} success - Did the function run successfully?
* @property {*} [payload] - GET request results
* @property {string} [msg] - Message
* @property {string} [error] - Error Message
* @property {DSQL_TableSchemaType} [schema] - Error Message
*/
-48
View File
@@ -1,48 +0,0 @@
// @ts-check
/**
* @typedef {object} DSQL_MYSQL_SHOW_INDEXES_Type
* @property {string} Key_name - MYSQL Index Name
* @property {string} Table - Table Name(slug)
* @property {string} Column_name
* @property {string} Collation
* @property {string} Index_type - "FULL_TEXT" | ...
* @property {string} Cardinality
* @property {string} Index_comment
* @property {string} Comment
*/
////////////////////////////////////////
/**
* @typedef {object} DSQL_MYSQL_SHOW_COLUMNS_Type
* @property {string} Field - Field Name as represented in MSQL database
* @property {string} Type - varchar(***) | tinyint | bigint | ...
* @property {string} Null
* @property {string} Key
* @property {string} Default
* @property {string} Extra
*/
////////////////////////////////////////
/**
* @typedef {object} DSQL_MYSQL_FOREIGN_KEYS_Type
* @property {string} CONSTRAINT_NAME - Constraint Name => "PRIMARY" | "MUL" | null | ...
* @property {string} CONSTRAINT_SCHEMA - Database name
* @property {string} TABLE_NAME - Table name
*/
////////////////////////////////////////
/**
* @typedef {object} DSQL_MYSQL_user_databases_Type
* @property {number} user_id - User Id
* @property {string} db_full_name - Database full name => eg. (dataasquirel_user_2_new_database)
* @property {string} db_name - Database name with spaces => eg. (New Database)
* @property {string} db_slug - Database slug => eg. (new_database)
* @property {string} db_image - Database image path
* @property {string} db_description - Database description
* @property {number} active_clone - is Database active clone => 0 or 1
* @property {string} active_clone_parent_db - Database parent db full name => eg. "datasquirel_user_7_wexculture"
*/
@@ -1,38 +0,0 @@
// @ts-check
/**
* @typedef {object} PackageUserLoginRequestBody
* @property {string} encryptionKey
* @property {any} payload
* @property {string} database
* @property {string[]} [additionalFields]
* @property {boolean} [email_login]
* @property {string} [email_login_code]
* @property {string} [email_login_field]
* @property {boolean} [token]
* @property {boolean} [social]
* @property {DSQL_DatabaseSchemaType} [dbSchema]
*/
/**
* @typedef {object} PackageUserLoginLocalBody
* @property {any} payload
* @property {string[]} [additionalFields]
* @property {boolean} [email_login]
* @property {string} [email_login_code]
* @property {string} [email_login_field]
* @property {boolean} [token]
* @property {boolean} [social]
* @property {DSQL_DatabaseSchemaType} [dbSchema]
*/
/**
* @typedef {Object} GetReturn
* @property {boolean} success - Did the function run successfully?
* @property {*} [payload] - GET request results
* @property {string} [msg] - Message
* @property {string} [error] - Error Message
* @property {DSQL_TableSchemaType} [schema] - Error Message
*
* @exports GetReturn
*/
-119
View File
@@ -1,119 +0,0 @@
// @ts-check
/**
* @typedef {object} DATASQUIREL_LoggedInUser
* @property {number} [id]
* @property {string} first_name
* @property {string} last_name
* @property {string} email
* @property {string} [phone]
* @property {string} [user_type]
* @property {string} [username]
* @property {string} password
* @property {string} [image]
* @property {string} [image_thumbnail]
* @property {string} [address]
* @property {string} [city]
* @property {string} [state]
* @property {string} [country]
* @property {string} [zip_code]
* @property {number} [social_login]
* @property {string?} [social_platform]
* @property {string?} [social_id]
* @property {string} [more_user_data]
* @property {number} [verification_status]
* @property {number?} [loan_officer_id]
* @property {number} [is_admin]
* @property {number} [admin_level]
* @property {string} [admin_permissions]
* @property {string?} uuid
* @property {string?} [temp_login_code]
* @property {string?} [date_created]
* @property {number?} [date_created_code]
* @property {string?} [date_created_timestamp]
* @property {string?} [date_updated]
* @property {number?} [date_updated_code]
* @property {string?} [date_updated_timestamp]
* @property {string} [csrf_k] - CSRF key
* @property {boolean} [logged_in_status]
* @property {number} [date]
* @property {any} [more_data]
*/
/**
* @typedef {object} AuthenticatedUser
* @property {boolean} success - Did the function run successfully?
* @property {DATASQUIREL_LoggedInUser | null} payload - Payload of the response
* @property {string} [msg] - An optional message
* @property {number} [userId] - An optional message
*/
/**
* @typedef {object} SuccessUserObject
* @property {number} id
* @property {string} first_name
* @property {string} last_name
* @property {string} email
*/
/**
* @typedef {object} AddUserFunctionReturn
* @property {boolean} success - Did the function run successfully?
* @property {SuccessUserObject | null} [payload] - Payload
* @property {string} [msg]
* @property {any} [sqlResult]
*/
/**
* @typedef {object} GoogleIdentityPromptNotification
* @property {function(): string} getMomentType - Notification moment type
* @property {function(): string} getDismissedReason - Notification get Dismissed Reason
* @property {function(): string} getNotDisplayedReason - Notification get Not Displayed Reason
* @property {function(): string} getSkippedReason - Notification get Skipped Reason
* @property {function(): boolean} isDismissedMoment - Notification is Dismissed Moment
* @property {function(): boolean} isDisplayMoment - Notification is Display Moment
* @property {function(): boolean} isDisplayed - Notification is Displayed
* @property {function(): boolean} isNotDisplayed - Notification is Not Displayed
* @property {function(): boolean} isSkippedMoment - Notification is Skipped Moment
*/
/**
* @typedef {object} UserDataPayload
* @property {string} first_name - First Name *Required
* @property {string} last_name - Last Name *Required
* @property {string} email - Email *Required
* @property {string} password - Password *Required
* @property {string?} username - Username (Optional)
*/
/**
* @typedef {object} GetUserFunctionReturn
* @property {boolean} success - Did the function run successfully?
* @property {{
* id: number,
* first_name: string,
* last_name: string,
* username: string,
* email: string,
* phone: string,
* social_id: [string],
* image: string,
* image_thumbnail: string,
* verification_status: [number],
* }} payload - Payload
*/
/**
* @typedef {object} ReauthUserFunctionReturn
* @property {boolean} success - Did the function run successfully?
* @property {DATASQUIREL_LoggedInUser | null} payload - Payload
* @property {string} [msg] - Response Message
* @property {number} [userId] - user ID
* @property {string} [token] - new Token
*/
/**
* @typedef {object} UpdateUserFunctionReturn
* @property {boolean} success - Did the function run successfully?
* @property {(Object[]|string)} [payload=[]] - Payload
*/