prostgles-server 4.2.183 → 4.2.185
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/main.yml +15 -15
- package/.prettierignore +2 -0
- package/README.md +1 -1
- package/dist/Auth/AuthHandler.d.ts +1 -1
- package/dist/Auth/AuthHandler.d.ts.map +1 -1
- package/dist/Auth/AuthHandler.js +64 -32
- package/dist/Auth/AuthHandler.js.map +1 -1
- package/dist/Auth/AuthTypes.d.ts +15 -1
- package/dist/Auth/AuthTypes.d.ts.map +1 -1
- package/dist/Auth/getSafeReturnURL.d.ts.map +1 -1
- package/dist/Auth/getSafeReturnURL.js.map +1 -1
- package/dist/Auth/sendEmail.d.ts.map +1 -1
- package/dist/Auth/sendEmail.js +6 -6
- package/dist/Auth/sendEmail.js.map +1 -1
- package/dist/Auth/setAuthProviders.d.ts +1 -1
- package/dist/Auth/setAuthProviders.d.ts.map +1 -1
- package/dist/Auth/setAuthProviders.js +15 -8
- package/dist/Auth/setAuthProviders.js.map +1 -1
- package/dist/Auth/setEmailProvider.d.ts.map +1 -1
- package/dist/Auth/setEmailProvider.js +23 -4
- package/dist/Auth/setEmailProvider.js.map +1 -1
- package/dist/Auth/setupAuthRoutes.d.ts.map +1 -1
- package/dist/Auth/setupAuthRoutes.js +27 -9
- package/dist/Auth/setupAuthRoutes.js.map +1 -1
- package/dist/DBEventsManager.d.ts.map +1 -1
- package/dist/DBEventsManager.js +24 -19
- package/dist/DBEventsManager.js.map +1 -1
- package/dist/DBSchemaBuilder.d.ts.map +1 -1
- package/dist/DBSchemaBuilder.js +18 -5
- package/dist/DBSchemaBuilder.js.map +1 -1
- package/dist/DboBuilder/DboBuilder.d.ts.map +1 -1
- package/dist/DboBuilder/DboBuilder.js +7 -2
- package/dist/DboBuilder/DboBuilder.js.map +1 -1
- package/dist/DboBuilder/DboBuilderTypes.d.ts +4 -4
- package/dist/DboBuilder/DboBuilderTypes.d.ts.map +1 -1
- package/dist/DboBuilder/DboBuilderTypes.js.map +1 -1
- package/dist/DboBuilder/QueryBuilder/Functions.d.ts +2 -2
- package/dist/DboBuilder/QueryBuilder/Functions.d.ts.map +1 -1
- package/dist/DboBuilder/QueryBuilder/Functions.js +293 -173
- package/dist/DboBuilder/QueryBuilder/Functions.js.map +1 -1
- package/dist/DboBuilder/QueryBuilder/QueryBuilder.d.ts +2 -2
- package/dist/DboBuilder/QueryBuilder/QueryBuilder.d.ts.map +1 -1
- package/dist/DboBuilder/QueryBuilder/QueryBuilder.js +52 -29
- package/dist/DboBuilder/QueryBuilder/QueryBuilder.js.map +1 -1
- package/dist/DboBuilder/QueryBuilder/getJoinQuery.d.ts.map +1 -1
- package/dist/DboBuilder/QueryBuilder/getJoinQuery.js +51 -32
- package/dist/DboBuilder/QueryBuilder/getJoinQuery.js.map +1 -1
- package/dist/DboBuilder/QueryBuilder/getNewQuery.d.ts.map +1 -1
- package/dist/DboBuilder/QueryBuilder/getNewQuery.js +48 -25
- package/dist/DboBuilder/QueryBuilder/getNewQuery.js.map +1 -1
- package/dist/DboBuilder/QueryBuilder/getSelectQuery.d.ts +1 -1
- package/dist/DboBuilder/QueryBuilder/getSelectQuery.d.ts.map +1 -1
- package/dist/DboBuilder/QueryBuilder/getSelectQuery.js +32 -23
- package/dist/DboBuilder/QueryBuilder/getSelectQuery.js.map +1 -1
- package/dist/DboBuilder/QueryStreamer.d.ts +2 -2
- package/dist/DboBuilder/QueryStreamer.d.ts.map +1 -1
- package/dist/DboBuilder/QueryStreamer.js +68 -23
- package/dist/DboBuilder/QueryStreamer.js.map +1 -1
- package/dist/DboBuilder/TableHandler/DataValidator.d.ts +1 -1
- package/dist/DboBuilder/TableHandler/DataValidator.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/DataValidator.js +79 -43
- package/dist/DboBuilder/TableHandler/DataValidator.js.map +1 -1
- package/dist/DboBuilder/TableHandler/TableHandler.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/TableHandler.js +39 -15
- package/dist/DboBuilder/TableHandler/TableHandler.js.map +1 -1
- package/dist/DboBuilder/TableHandler/delete.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/delete.js +44 -13
- package/dist/DboBuilder/TableHandler/delete.js.map +1 -1
- package/dist/DboBuilder/TableHandler/insert.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/insert.js +81 -22
- package/dist/DboBuilder/TableHandler/insert.js.map +1 -1
- package/dist/DboBuilder/TableHandler/insertTest.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/insertTest.js.map +1 -1
- package/dist/DboBuilder/TableHandler/onDeleteFromFileTable.d.ts +1 -1
- package/dist/DboBuilder/TableHandler/onDeleteFromFileTable.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/onDeleteFromFileTable.js +7 -4
- package/dist/DboBuilder/TableHandler/onDeleteFromFileTable.js.map +1 -1
- package/dist/DboBuilder/TableHandler/runInsertUpdateQuery.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/runInsertUpdateQuery.js +24 -5
- package/dist/DboBuilder/TableHandler/runInsertUpdateQuery.js.map +1 -1
- package/dist/DboBuilder/TableHandler/update.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/update.js +16 -4
- package/dist/DboBuilder/TableHandler/update.js.map +1 -1
- package/dist/DboBuilder/TableHandler/updateBatch.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/updateBatch.js +33 -10
- package/dist/DboBuilder/TableHandler/updateBatch.js.map +1 -1
- package/dist/DboBuilder/TableHandler/updateFile.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/updateFile.js +24 -6
- package/dist/DboBuilder/TableHandler/updateFile.js.map +1 -1
- package/dist/DboBuilder/TableHandler/upsert.d.ts.map +1 -1
- package/dist/DboBuilder/TableHandler/upsert.js +22 -6
- package/dist/DboBuilder/TableHandler/upsert.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/ViewHandler.d.ts +5 -5
- package/dist/DboBuilder/ViewHandler/ViewHandler.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/ViewHandler.js +64 -36
- package/dist/DboBuilder/ViewHandler/ViewHandler.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/count.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/count.js +21 -7
- package/dist/DboBuilder/ViewHandler/count.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/find.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/find.js +76 -22
- package/dist/DboBuilder/ViewHandler/find.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/getExistsCondition.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/getExistsCondition.js +19 -10
- package/dist/DboBuilder/ViewHandler/getExistsCondition.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/getExistsFilters.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/getExistsFilters.js +12 -5
- package/dist/DboBuilder/ViewHandler/getExistsFilters.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/getInfo.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/getInfo.js +27 -9
- package/dist/DboBuilder/ViewHandler/getInfo.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/getTableJoinQuery.d.ts +2 -2
- package/dist/DboBuilder/ViewHandler/getTableJoinQuery.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/getTableJoinQuery.js +42 -23
- package/dist/DboBuilder/ViewHandler/getTableJoinQuery.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/parseComplexFilter.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/parseComplexFilter.js +22 -9
- package/dist/DboBuilder/ViewHandler/parseComplexFilter.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/parseFieldFilter.d.ts +4 -4
- package/dist/DboBuilder/ViewHandler/parseFieldFilter.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/parseFieldFilter.js +13 -11
- package/dist/DboBuilder/ViewHandler/parseFieldFilter.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/parseJoinPath.d.ts +1 -1
- package/dist/DboBuilder/ViewHandler/parseJoinPath.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/parseJoinPath.js +44 -29
- package/dist/DboBuilder/ViewHandler/parseJoinPath.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/prepareSortItems.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/prepareSortItems.js +36 -27
- package/dist/DboBuilder/ViewHandler/prepareSortItems.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/prepareWhere.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/prepareWhere.js +16 -12
- package/dist/DboBuilder/ViewHandler/prepareWhere.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/size.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/size.js +24 -7
- package/dist/DboBuilder/ViewHandler/size.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/subscribe.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/subscribe.js +40 -12
- package/dist/DboBuilder/ViewHandler/subscribe.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/validateViewRules.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/validateViewRules.js +20 -5
- package/dist/DboBuilder/ViewHandler/validateViewRules.js.map +1 -1
- package/dist/DboBuilder/dboBuilderUtils.d.ts.map +1 -1
- package/dist/DboBuilder/dboBuilderUtils.js +18 -7
- package/dist/DboBuilder/dboBuilderUtils.js.map +1 -1
- package/dist/DboBuilder/getColumns.d.ts.map +1 -1
- package/dist/DboBuilder/getColumns.js +22 -7
- package/dist/DboBuilder/getColumns.js.map +1 -1
- package/dist/DboBuilder/getCondition.d.ts.map +1 -1
- package/dist/DboBuilder/getCondition.js +43 -30
- package/dist/DboBuilder/getCondition.js.map +1 -1
- package/dist/DboBuilder/getSubscribeRelatedTables.d.ts.map +1 -1
- package/dist/DboBuilder/getSubscribeRelatedTables.js +38 -27
- package/dist/DboBuilder/getSubscribeRelatedTables.js.map +1 -1
- package/dist/DboBuilder/getTablesForSchemaPostgresSQL.d.ts.map +1 -1
- package/dist/DboBuilder/getTablesForSchemaPostgresSQL.js +9 -9
- package/dist/DboBuilder/getTablesForSchemaPostgresSQL.js.map +1 -1
- package/dist/DboBuilder/insertNestedRecords.d.ts +3 -3
- package/dist/DboBuilder/insertNestedRecords.d.ts.map +1 -1
- package/dist/DboBuilder/insertNestedRecords.js +79 -44
- package/dist/DboBuilder/insertNestedRecords.js.map +1 -1
- package/dist/DboBuilder/parseUpdateRules.d.ts.map +1 -1
- package/dist/DboBuilder/parseUpdateRules.js +38 -14
- package/dist/DboBuilder/parseUpdateRules.js.map +1 -1
- package/dist/DboBuilder/prepareShortestJoinPaths.d.ts.map +1 -1
- package/dist/DboBuilder/prepareShortestJoinPaths.js +56 -31
- package/dist/DboBuilder/prepareShortestJoinPaths.js.map +1 -1
- package/dist/DboBuilder/runSQL.d.ts.map +1 -1
- package/dist/DboBuilder/runSQL.js +41 -21
- package/dist/DboBuilder/runSQL.js.map +1 -1
- package/dist/DboBuilder/runTransaction.d.ts +1 -1
- package/dist/DboBuilder/runTransaction.d.ts.map +1 -1
- package/dist/DboBuilder/runTransaction.js +2 -2
- package/dist/DboBuilder/runTransaction.js.map +1 -1
- package/dist/DboBuilder/sqlErrCodeToMsg.d.ts.map +1 -1
- package/dist/DboBuilder/sqlErrCodeToMsg.js +297 -38
- package/dist/DboBuilder/sqlErrCodeToMsg.js.map +1 -1
- package/dist/DboBuilder/uploadFile.d.ts.map +1 -1
- package/dist/DboBuilder/uploadFile.js +33 -9
- package/dist/DboBuilder/uploadFile.js.map +1 -1
- package/dist/Event_Trigger_Tags.d.ts +1 -1
- package/dist/Event_Trigger_Tags.d.ts.map +1 -1
- package/dist/Event_Trigger_Tags.js +1 -1
- package/dist/Event_Trigger_Tags.js.map +1 -1
- package/dist/FileManager/FileManager.d.ts.map +1 -1
- package/dist/FileManager/FileManager.js +6 -3
- package/dist/FileManager/FileManager.js.map +1 -1
- package/dist/FileManager/getValidatedFileType.d.ts.map +1 -1
- package/dist/FileManager/getValidatedFileType.js +18 -16
- package/dist/FileManager/getValidatedFileType.js.map +1 -1
- package/dist/FileManager/initFileManager.d.ts.map +1 -1
- package/dist/FileManager/initFileManager.js +7 -1
- package/dist/FileManager/initFileManager.js.map +1 -1
- package/dist/FileManager/upload.d.ts +1 -1
- package/dist/FileManager/upload.d.ts.map +1 -1
- package/dist/FileManager/upload.js +3 -3
- package/dist/FileManager/upload.js.map +1 -1
- package/dist/FileManager/uploadStream.d.ts +1 -1
- package/dist/FileManager/uploadStream.d.ts.map +1 -1
- package/dist/FileManager/uploadStream.js +6 -7
- package/dist/FileManager/uploadStream.js.map +1 -1
- package/dist/Filtering.d.ts +3 -3
- package/dist/Filtering.d.ts.map +1 -1
- package/dist/Filtering.js +70 -37
- package/dist/Filtering.js.map +1 -1
- package/dist/JSONBValidation/validate_jsonb_schema_sql.d.ts.map +1 -1
- package/dist/JSONBValidation/validate_jsonb_schema_sql.js +1 -4
- package/dist/JSONBValidation/validate_jsonb_schema_sql.js.map +1 -1
- package/dist/JSONBValidation/validation.d.ts.map +1 -1
- package/dist/JSONBValidation/validation.js +46 -24
- package/dist/JSONBValidation/validation.js.map +1 -1
- package/dist/Logging.d.ts +2 -2
- package/dist/Logging.d.ts.map +1 -1
- package/dist/PostgresNotifListenManager.d.ts.map +1 -1
- package/dist/PostgresNotifListenManager.js +20 -22
- package/dist/PostgresNotifListenManager.js.map +1 -1
- package/dist/Prostgles.d.ts +1 -1
- package/dist/Prostgles.d.ts.map +1 -1
- package/dist/Prostgles.js +37 -11
- package/dist/Prostgles.js.map +1 -1
- package/dist/ProstglesTypes.d.ts.map +1 -1
- package/dist/ProstglesTypes.js +6 -1
- package/dist/ProstglesTypes.js.map +1 -1
- package/dist/PubSubManager/PubSubManager.d.ts.map +1 -1
- package/dist/PubSubManager/PubSubManager.js +10 -5
- package/dist/PubSubManager/PubSubManager.js.map +1 -1
- package/dist/PubSubManager/addSub.d.ts.map +1 -1
- package/dist/PubSubManager/addSub.js +4 -6
- package/dist/PubSubManager/addSub.js.map +1 -1
- package/dist/PubSubManager/addSync.d.ts.map +1 -1
- package/dist/PubSubManager/addSync.js +10 -6
- package/dist/PubSubManager/addSync.js.map +1 -1
- package/dist/PubSubManager/getCreatePubSubManagerError.d.ts.map +1 -1
- package/dist/PubSubManager/getCreatePubSubManagerError.js +3 -1
- package/dist/PubSubManager/getCreatePubSubManagerError.js.map +1 -1
- package/dist/PubSubManager/getPubSubManagerInitQuery.d.ts.map +1 -1
- package/dist/PubSubManager/getPubSubManagerInitQuery.js +8 -8
- package/dist/PubSubManager/getPubSubManagerInitQuery.js.map +1 -1
- package/dist/PubSubManager/initPubSubManager.d.ts.map +1 -1
- package/dist/PubSubManager/initPubSubManager.js +7 -9
- package/dist/PubSubManager/initPubSubManager.js.map +1 -1
- package/dist/PubSubManager/notifListener.d.ts.map +1 -1
- package/dist/PubSubManager/notifListener.js +23 -12
- package/dist/PubSubManager/notifListener.js.map +1 -1
- package/dist/PubSubManager/orphanTriggerCheck.d.ts.map +1 -1
- package/dist/PubSubManager/orphanTriggerCheck.js.map +1 -1
- package/dist/PubSubManager/pushSubData.d.ts.map +1 -1
- package/dist/PubSubManager/pushSubData.js +1 -1
- package/dist/PubSubManager/pushSubData.js.map +1 -1
- package/dist/PublishParser/PublishParser.d.ts +1 -1
- package/dist/PublishParser/PublishParser.d.ts.map +1 -1
- package/dist/PublishParser/PublishParser.js +25 -14
- package/dist/PublishParser/PublishParser.js.map +1 -1
- package/dist/PublishParser/getFileTableRules.d.ts.map +1 -1
- package/dist/PublishParser/getFileTableRules.js +23 -16
- package/dist/PublishParser/getFileTableRules.js.map +1 -1
- package/dist/PublishParser/getSchemaFromPublish.d.ts.map +1 -1
- package/dist/PublishParser/getSchemaFromPublish.js +39 -16
- package/dist/PublishParser/getSchemaFromPublish.js.map +1 -1
- package/dist/PublishParser/getTableRulesWithoutFileTable.d.ts.map +1 -1
- package/dist/PublishParser/getTableRulesWithoutFileTable.js +42 -22
- package/dist/PublishParser/getTableRulesWithoutFileTable.js.map +1 -1
- package/dist/PublishParser/publishTypesAndUtils.d.ts.map +1 -1
- package/dist/PublishParser/publishTypesAndUtils.js +5 -1
- package/dist/PublishParser/publishTypesAndUtils.js.map +1 -1
- package/dist/RestApi.d.ts +1 -1
- package/dist/RestApi.d.ts.map +1 -1
- package/dist/RestApi.js +1 -1
- package/dist/RestApi.js.map +1 -1
- package/dist/SchemaWatch/SchemaWatch.d.ts +2 -2
- package/dist/SchemaWatch/SchemaWatch.d.ts.map +1 -1
- package/dist/SchemaWatch/SchemaWatch.js +11 -9
- package/dist/SchemaWatch/SchemaWatch.js.map +1 -1
- package/dist/SchemaWatch/getValidatedWatchSchemaType.d.ts.map +1 -1
- package/dist/SchemaWatch/getValidatedWatchSchemaType.js +3 -3
- package/dist/SchemaWatch/getValidatedWatchSchemaType.js.map +1 -1
- package/dist/SchemaWatch/getWatchSchemaTagList.d.ts.map +1 -1
- package/dist/SchemaWatch/getWatchSchemaTagList.js +12 -6
- package/dist/SchemaWatch/getWatchSchemaTagList.js.map +1 -1
- package/dist/SyncReplication.d.ts.map +1 -1
- package/dist/SyncReplication.js +84 -42
- package/dist/SyncReplication.js.map +1 -1
- package/dist/TableConfig/TableConfig.d.ts +5 -5
- package/dist/TableConfig/TableConfig.d.ts.map +1 -1
- package/dist/TableConfig/TableConfig.js +18 -5
- package/dist/TableConfig/TableConfig.js.map +1 -1
- package/dist/TableConfig/getColumnDefinitionQuery.d.ts +2 -2
- package/dist/TableConfig/getColumnDefinitionQuery.d.ts.map +1 -1
- package/dist/TableConfig/getColumnDefinitionQuery.js +20 -9
- package/dist/TableConfig/getColumnDefinitionQuery.js.map +1 -1
- package/dist/TableConfig/getConstraintDefinitionQueries.d.ts +3 -3
- package/dist/TableConfig/getConstraintDefinitionQueries.d.ts.map +1 -1
- package/dist/TableConfig/getConstraintDefinitionQueries.js +12 -7
- package/dist/TableConfig/getConstraintDefinitionQueries.js.map +1 -1
- package/dist/TableConfig/getFutureTableSchema.d.ts +1 -1
- package/dist/TableConfig/getFutureTableSchema.d.ts.map +1 -1
- package/dist/TableConfig/getFutureTableSchema.js +6 -4
- package/dist/TableConfig/getFutureTableSchema.js.map +1 -1
- package/dist/TableConfig/getPGIndexes.d.ts.map +1 -1
- package/dist/TableConfig/getPGIndexes.js.map +1 -1
- package/dist/TableConfig/getTableColumnQueries.d.ts +1 -1
- package/dist/TableConfig/getTableColumnQueries.d.ts.map +1 -1
- package/dist/TableConfig/getTableColumnQueries.js +38 -19
- package/dist/TableConfig/getTableColumnQueries.js.map +1 -1
- package/dist/TableConfig/initTableConfig.d.ts.map +1 -1
- package/dist/TableConfig/initTableConfig.js +91 -43
- package/dist/TableConfig/initTableConfig.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/initProstgles.d.ts.map +1 -1
- package/dist/initProstgles.js +14 -10
- package/dist/initProstgles.js.map +1 -1
- package/dist/onSocketConnected.d.ts.map +1 -1
- package/dist/onSocketConnected.js +38 -16
- package/dist/onSocketConnected.js.map +1 -1
- package/dist/runClientRequest.d.ts.map +1 -1
- package/dist/runClientRequest.js +33 -14
- package/dist/runClientRequest.js.map +1 -1
- package/dist/shortestPath.d.ts.map +1 -1
- package/dist/shortestPath.js +1 -1
- package/dist/shortestPath.js.map +1 -1
- package/dist/typeTests/dboTypeCheck.js.map +1 -1
- package/examples/full-example-typescript/DBoGenerated.d.ts +112 -54
- package/examples/full-example-typescript/DBoGenerated.js +3 -3
- package/examples/full-example-typescript/home.html +28 -26
- package/examples/full-example-typescript/index.d.ts +1 -1
- package/examples/full-example-typescript/index.js +80 -53
- package/examples/full-example-vanilla/home.html +151 -125
- package/examples/server/javascript/index.js +17 -19
- package/lib/Auth/AuthHandler.ts +234 -155
- package/lib/Auth/AuthTypes.ts +27 -4
- package/lib/Auth/getSafeReturnURL.ts +35 -21
- package/lib/Auth/sendEmail.ts +34 -31
- package/lib/Auth/setAuthProviders.ts +94 -71
- package/lib/Auth/setEmailProvider.ts +45 -27
- package/lib/Auth/setupAuthRoutes.ts +164 -100
- package/lib/DBEventsManager.ts +87 -65
- package/lib/DBSchemaBuilder.ts +62 -28
- package/lib/DboBuilder/DboBuilder.ts +45 -21
- package/lib/DboBuilder/DboBuilderTypes.ts +99 -95
- package/lib/DboBuilder/QueryBuilder/Functions.ts +862 -580
- package/lib/DboBuilder/QueryBuilder/QueryBuilder.ts +202 -141
- package/lib/DboBuilder/QueryBuilder/getJoinQuery.ts +199 -124
- package/lib/DboBuilder/QueryBuilder/getNewQuery.ts +209 -148
- package/lib/DboBuilder/QueryBuilder/getSelectQuery.ts +101 -75
- package/lib/DboBuilder/QueryBuilder/prepareHaving.ts +10 -5
- package/lib/DboBuilder/QueryStreamer.ts +207 -100
- package/lib/DboBuilder/TableHandler/DataValidator.ts +253 -148
- package/lib/DboBuilder/TableHandler/TableHandler.ts +155 -60
- package/lib/DboBuilder/TableHandler/delete.ts +82 -29
- package/lib/DboBuilder/TableHandler/insert.ts +177 -81
- package/lib/DboBuilder/TableHandler/insertTest.ts +13 -7
- package/lib/DboBuilder/TableHandler/onDeleteFromFileTable.ts +35 -21
- package/lib/DboBuilder/TableHandler/runInsertUpdateQuery.ts +95 -45
- package/lib/DboBuilder/TableHandler/update.ts +54 -14
- package/lib/DboBuilder/TableHandler/updateBatch.ts +59 -21
- package/lib/DboBuilder/TableHandler/updateFile.ts +57 -26
- package/lib/DboBuilder/TableHandler/upsert.ts +58 -13
- package/lib/DboBuilder/ViewHandler/ViewHandler.ts +264 -121
- package/lib/DboBuilder/ViewHandler/count.ts +56 -25
- package/lib/DboBuilder/ViewHandler/find.ts +153 -68
- package/lib/DboBuilder/ViewHandler/getExistsCondition.ts +59 -32
- package/lib/DboBuilder/ViewHandler/getExistsFilters.ts +31 -19
- package/lib/DboBuilder/ViewHandler/getInfo.ts +47 -16
- package/lib/DboBuilder/ViewHandler/getTableJoinQuery.ts +91 -57
- package/lib/DboBuilder/ViewHandler/parseComplexFilter.ts +51 -29
- package/lib/DboBuilder/ViewHandler/parseFieldFilter.ts +35 -29
- package/lib/DboBuilder/ViewHandler/parseJoinPath.ts +130 -76
- package/lib/DboBuilder/ViewHandler/prepareSortItems.ts +140 -92
- package/lib/DboBuilder/ViewHandler/prepareWhere.ts +66 -26
- package/lib/DboBuilder/ViewHandler/size.ts +56 -22
- package/lib/DboBuilder/ViewHandler/subscribe.ts +122 -46
- package/lib/DboBuilder/ViewHandler/validateViewRules.ts +39 -14
- package/lib/DboBuilder/dboBuilderUtils.ts +41 -18
- package/lib/DboBuilder/getColumns.ts +44 -12
- package/lib/DboBuilder/getCondition.ts +120 -79
- package/lib/DboBuilder/getSubscribeRelatedTables.ts +144 -83
- package/lib/DboBuilder/getTablesForSchemaPostgresSQL.ts +61 -44
- package/lib/DboBuilder/insertNestedRecords.ts +370 -235
- package/lib/DboBuilder/parseUpdateRules.ts +117 -61
- package/lib/DboBuilder/prepareShortestJoinPaths.ts +115 -56
- package/lib/DboBuilder/runSQL.ts +135 -74
- package/lib/DboBuilder/runTransaction.ts +27 -16
- package/lib/DboBuilder/sqlErrCodeToMsg.ts +502 -244
- package/lib/DboBuilder/uploadFile.ts +67 -31
- package/lib/Event_Trigger_Tags.ts +6 -4
- package/lib/FileManager/FileManager.ts +53 -21
- package/lib/FileManager/getValidatedFileType.ts +79 -35
- package/lib/FileManager/initFileManager.ts +21 -9
- package/lib/FileManager/upload.ts +21 -19
- package/lib/FileManager/uploadStream.ts +33 -34
- package/lib/Filtering.ts +249 -197
- package/lib/JSONBValidation/validate_jsonb_schema_sql.ts +2 -7
- package/lib/JSONBValidation/validation.ts +147 -82
- package/lib/Logging.ts +107 -97
- package/lib/PostgresNotifListenManager.ts +96 -63
- package/lib/Prostgles.ts +106 -35
- package/lib/ProstglesTypes.ts +31 -9
- package/lib/PubSubManager/PubSubManager.ts +62 -27
- package/lib/PubSubManager/addSub.ts +56 -37
- package/lib/PubSubManager/addSync.ts +50 -33
- package/lib/PubSubManager/getCreatePubSubManagerError.ts +29 -21
- package/lib/PubSubManager/getPubSubManagerInitQuery.ts +45 -27
- package/lib/PubSubManager/initPubSubManager.ts +27 -18
- package/lib/PubSubManager/notifListener.ts +77 -59
- package/lib/PubSubManager/orphanTriggerCheck.ts +5 -4
- package/lib/PubSubManager/pushSubData.ts +11 -9
- package/lib/PublishParser/PublishParser.ts +102 -44
- package/lib/PublishParser/getFileTableRules.ts +97 -54
- package/lib/PublishParser/getSchemaFromPublish.ts +146 -74
- package/lib/PublishParser/getTableRulesWithoutFileTable.ts +101 -51
- package/lib/PublishParser/publishTypesAndUtils.ts +74 -23
- package/lib/RestApi.ts +10 -2
- package/lib/SchemaWatch/SchemaWatch.ts +52 -34
- package/lib/SchemaWatch/createSchemaWatchEventTrigger.ts +1 -1
- package/lib/SchemaWatch/getValidatedWatchSchemaType.ts +32 -22
- package/lib/SchemaWatch/getWatchSchemaTagList.ts +24 -16
- package/lib/SyncReplication.ts +376 -190
- package/lib/TableConfig/TableConfig.ts +200 -136
- package/lib/TableConfig/getColumnDefinitionQuery.ts +65 -44
- package/lib/TableConfig/getConstraintDefinitionQueries.ts +41 -25
- package/lib/TableConfig/getFutureTableSchema.ts +31 -21
- package/lib/TableConfig/getPGIndexes.ts +7 -4
- package/lib/TableConfig/getTableColumnQueries.ts +101 -54
- package/lib/TableConfig/initTableConfig.ts +192 -101
- package/lib/index.ts +6 -5
- package/lib/initProstgles.ts +57 -51
- package/lib/onSocketConnected.ts +75 -40
- package/lib/runClientRequest.ts +148 -79
- package/lib/shortestPath.ts +80 -76
- package/lib/typeTests/DBoGenerated.d.ts +5 -1
- package/lib/typeTests/dboTypeCheck.ts +8 -8
- package/package.json +1 -1
|
@@ -15,9 +15,17 @@ async function notifListener(data) {
|
|
|
15
15
|
if (notifType === PubSubManager_1.NOTIF_TYPE.schema) {
|
|
16
16
|
if (this.dboBuilder.prostgles.schemaWatch?.onSchemaChange) {
|
|
17
17
|
const [_, command, _event_type, query] = dataArr;
|
|
18
|
-
await this.dboBuilder.prostgles.opts.onLog?.({
|
|
18
|
+
await this.dboBuilder.prostgles.opts.onLog?.({
|
|
19
|
+
type: "debug",
|
|
20
|
+
command: "schemaChangeNotif",
|
|
21
|
+
duration: 0,
|
|
22
|
+
data: { command, query },
|
|
23
|
+
});
|
|
19
24
|
if (query && command) {
|
|
20
|
-
this.dboBuilder.prostgles.schemaWatch.onSchemaChange({
|
|
25
|
+
this.dboBuilder.prostgles.schemaWatch.onSchemaChange({
|
|
26
|
+
command,
|
|
27
|
+
query,
|
|
28
|
+
});
|
|
21
29
|
}
|
|
22
30
|
}
|
|
23
31
|
return;
|
|
@@ -34,7 +42,7 @@ async function notifListener(data) {
|
|
|
34
42
|
throw "notifListener: dataArr length < 3";
|
|
35
43
|
}
|
|
36
44
|
const [_, table_name, op_name, condition_ids_str] = dataArr;
|
|
37
|
-
const condition_ids = condition_ids_str?.split(",").map(v => +v);
|
|
45
|
+
const condition_ids = condition_ids_str?.split(",").map((v) => +v);
|
|
38
46
|
if (!table_name) {
|
|
39
47
|
throw "table_name undef";
|
|
40
48
|
}
|
|
@@ -57,13 +65,13 @@ async function notifListener(data) {
|
|
|
57
65
|
console.error(`${pref}: condition_ids_str: ${condition_ids_str}`);
|
|
58
66
|
tableTriggerConditions.map(({ condition }) => {
|
|
59
67
|
const subs = this.getTriggerSubs(table_name, condition);
|
|
60
|
-
subs.map(s => {
|
|
68
|
+
subs.map((s) => {
|
|
61
69
|
this.pushSubData(s, pref + ". Check server logs. Schema might have changed");
|
|
62
70
|
});
|
|
63
71
|
});
|
|
64
72
|
/* Trigger ok */
|
|
65
73
|
}
|
|
66
|
-
else if (condition_ids?.every(id => Number.isInteger(id))) {
|
|
74
|
+
else if (condition_ids?.every((id) => Number.isInteger(id))) {
|
|
67
75
|
state = "ok";
|
|
68
76
|
const firedTableConditions = tableTriggerConditions.filter(({ idx }) => condition_ids.includes(idx));
|
|
69
77
|
const orphanedTableConditions = condition_ids.filter((condId) => {
|
|
@@ -90,22 +98,23 @@ async function notifListener(data) {
|
|
|
90
98
|
.then(() => {
|
|
91
99
|
this.refreshTriggers();
|
|
92
100
|
})
|
|
93
|
-
.catch(e => {
|
|
101
|
+
.catch((e) => {
|
|
94
102
|
console.error("Error deleting orphaned triggers", e);
|
|
95
103
|
});
|
|
96
104
|
}
|
|
97
105
|
firedTableConditions.map(({ subs, syncs }) => {
|
|
98
|
-
(0, PubSubManager_1.log)("notifListener", subs.map(s => s.channel_name), syncs.map(s => s.channel_name));
|
|
106
|
+
(0, PubSubManager_1.log)("notifListener", subs.map((s) => s.channel_name), syncs.map((s) => s.channel_name));
|
|
99
107
|
syncs.map((s) => {
|
|
100
108
|
this.syncData(s, undefined, "trigger");
|
|
101
109
|
});
|
|
102
110
|
/* Throttle the subscriptions */
|
|
103
|
-
const activeAndReadySubs = subs.filter(sub => sub.triggers.some(trg => this.dbo[trg.table_name] &&
|
|
111
|
+
const activeAndReadySubs = subs.filter((sub) => sub.triggers.some((trg) => this.dbo[trg.table_name] &&
|
|
104
112
|
sub.is_ready &&
|
|
105
|
-
(sub.socket_id && this.sockets[sub.socket_id] || sub.localFuncs)));
|
|
106
|
-
activeAndReadySubs.forEach(sub => {
|
|
113
|
+
((sub.socket_id && this.sockets[sub.socket_id]) || sub.localFuncs)));
|
|
114
|
+
activeAndReadySubs.forEach((sub) => {
|
|
107
115
|
const { throttle = 0, throttleOpts } = sub;
|
|
108
|
-
if (!throttleOpts?.skipFirst &&
|
|
116
|
+
if (!throttleOpts?.skipFirst &&
|
|
117
|
+
sub.last_throttled <= Date.now() - throttle) {
|
|
109
118
|
sub.last_throttled = Date.now();
|
|
110
119
|
/* It is assumed the policy was checked before this point */
|
|
111
120
|
this.pushSubData(sub);
|
|
@@ -134,7 +143,9 @@ async function notifListener(data) {
|
|
|
134
143
|
op_name,
|
|
135
144
|
condition_ids_str,
|
|
136
145
|
tableTriggers: this._triggers?.[table_name],
|
|
137
|
-
tableSyncs: JSON.stringify(this.syncs
|
|
146
|
+
tableSyncs: JSON.stringify(this.syncs
|
|
147
|
+
.filter((s) => s.table_name === table_name)
|
|
148
|
+
.map((s) => (0, PubSubManager_1.pickKeys)(s, ["condition", "socket_id"]))),
|
|
138
149
|
connectedSocketIds: this.connectedSocketIds,
|
|
139
150
|
});
|
|
140
151
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notifListener.js","sourceRoot":"","sources":["../../lib/PubSubManager/notifListener.ts"],"names":[],"mappings":";;;AAAA,mDAA2E;AAE3E,mDAAmD;AAC5C,KAAK,UAAU,aAAa,
|
|
1
|
+
{"version":3,"file":"notifListener.js","sourceRoot":"","sources":["../../lib/PubSubManager/notifListener.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orphanTriggerCheck.d.ts","sourceRoot":"","sources":["../../lib/PubSubManager/orphanTriggerCheck.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"orphanTriggerCheck.d.ts","sourceRoot":"","sources":["../../lib/PubSubManager/orphanTriggerCheck.ts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,8BAA8B,2KAO1C,CAAC;AAEF,+EAA+E;AAC/E,eAAO,MAAM,gBAAgB,cAwC5B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orphanTriggerCheck.js","sourceRoot":"","sources":["../../lib/PubSubManager/orphanTriggerCheck.ts"],"names":[],"mappings":";;;AAAA,mDAAgD;AAChD,2DAAmE;AAEnE;;;;GAIG;AAEH,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"orphanTriggerCheck.js","sourceRoot":"","sources":["../../lib/PubSubManager/orphanTriggerCheck.ts"],"names":[],"mappings":";;;AAAA,mDAAgD;AAChD,2DAAmE;AAEnE;;;;GAIG;AAEH,MAAM,eAAe,GACnB,sFAAsF,CAAC;AACzF,MAAM,8BAA8B,GAAG;;;;;;;CAOtC,CAAC;AAEW,QAAA,8BAA8B,GAAG;;;;;;;CAO7C,CAAC;AAEF,+EAA+E;AACxE,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC;;MAEhC,eAAe;MACf,gDAA4B;MAC5B,6BAAa,CAAC,kCAAkC;;;;;;;;;;;;;;8BAcxB,eAAe;;;;;;QAMrC,8BAA8B;;;;;UAK5B,sCAA8B;;;;;;;;;;;CAWvC,CAAC;AAxCW,QAAA,gBAAgB,oBAwC3B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pushSubData.d.ts","sourceRoot":"","sources":["../../lib/PubSubManager/pushSubData.ts"],"names":[],"mappings":"AACA,OAAO,EAAO,aAAa,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEnE,wBAAsB,WAAW,
|
|
1
|
+
{"version":3,"file":"pushSubData.d.ts","sourceRoot":"","sources":["../../lib/PubSubManager/pushSubData.ts"],"names":[],"mappings":"AACA,OAAO,EAAO,aAAa,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEnE,wBAAsB,WAAW,CAC/B,IAAI,EAAE,aAAa,EACnB,GAAG,EAAE,YAAY,EACjB,GAAG,CAAC,EAAE,GAAG,oBAkDV"}
|
|
@@ -7,7 +7,7 @@ async function pushSubData(sub, err) {
|
|
|
7
7
|
if (!sub)
|
|
8
8
|
throw "pushSubData: invalid sub";
|
|
9
9
|
const { socket_id, channel_name } = sub;
|
|
10
|
-
if (!this.subs.some(s => s.channel_name === channel_name)) {
|
|
10
|
+
if (!this.subs.some((s) => s.channel_name === channel_name)) {
|
|
11
11
|
// Might be throttling a sub that was removed
|
|
12
12
|
return;
|
|
13
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pushSubData.js","sourceRoot":"","sources":["../../lib/PubSubManager/pushSubData.ts"],"names":[],"mappings":";;;AAAA,mEAAsE;AACtE,mDAAmE;AAE5D,KAAK,UAAU,WAAW,
|
|
1
|
+
{"version":3,"file":"pushSubData.js","sourceRoot":"","sources":["../../lib/PubSubManager/pushSubData.ts"],"names":[],"mappings":";;;AAAA,mEAAsE;AACtE,mDAAmE;AAE5D,KAAK,UAAU,WAAW,CAE/B,GAAiB,EACjB,GAAS;IAET,IAAI,CAAC,GAAG;QAAE,MAAM,0BAA0B,CAAC;IAE3C,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC;IACxC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,YAAY,CAAC,EAAE,CAAC;QAC5D,6CAA6C;QAC7C,OAAO;IACT,CAAC;IACD,MAAM,UAAU,GAAG,IAAA,2BAAe,EAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAEnD,IAAI,GAAG,EAAE,CAAC;QACR,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,2CAA2C;QAE3C,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAEjD,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBACzC,IAAA,mBAAG,EAAC,SAAS,GAAG,IAAI,CAAC,MAAM,GAAG,iBAAiB,CAAC,CAAC;gBACjD,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE;oBACxD,OAAO,CAAC,IAAI,CAAC,CAAC;gBAChB,CAAC,CAAC,CAAC;gBACH;;kBAEE;YACJ,CAAC;iBAAM,IAAI,UAAU,EAAE,CAAC;gBACtB,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACxB,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC;YACD,mCAAmC;QACrC,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC;YACjD,IAAI,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBACzC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;YAC9D,CAAC;iBAAM,IAAI,UAAU,EAAE,CAAC;gBACtB,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;oBACxB,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;gBACpD,CAAC;gBACD,UAAU,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;YAC/B,CAAC;YACD,MAAM,CAAC,MAAM,CAAC,CAAC;QACjB,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AArDD,kCAqDC"}
|
|
@@ -21,7 +21,7 @@ export declare class PublishParser {
|
|
|
21
21
|
* @param user
|
|
22
22
|
*/
|
|
23
23
|
getPublish(localParams: LocalParams, clientInfo?: AuthResult): Promise<PublishObject>;
|
|
24
|
-
getValidatedRequestRuleWusr({ tableName, command, localParams }: DboTableCommand): Promise<TableRule>;
|
|
24
|
+
getValidatedRequestRuleWusr({ tableName, command, localParams, }: DboTableCommand): Promise<TableRule>;
|
|
25
25
|
getValidatedRequestRule({ tableName, command, localParams }: DboTableCommand, clientInfo?: AuthResult): Promise<TableRule>;
|
|
26
26
|
getTableRules(args: DboTable, clientInfo?: AuthResult): Promise<ParsedPublishTable | undefined>;
|
|
27
27
|
getTableRulesWithoutFileTable: (args_0: DboTable, clientInfo?: AuthResult, overridenPublish?: PublishObject | undefined) => Promise<ParsedPublishTable | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublishParser.d.ts","sourceRoot":"","sources":["../../lib/PublishParser/PublishParser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"PublishParser.d.ts","sourceRoot":"","sources":["../../lib/PublishParser/PublishParser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAA8B,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,EAAE,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAK9D,OAAO,EACL,QAAQ,EACR,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,aAAa,EAEb,SAAS,EACV,MAAM,wBAAwB,CAAC;AAEhC,qBAAa,aAAa;IACxB,OAAO,EAAE,GAAG,CAAC;IACb,cAAc,CAAC,EAAE,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC,GAAG,SAAS,CAAC;IAC/D,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,GAAG,EAAE,eAAe,CAAC;IACrB,EAAE,EAAE,EAAE,CAAC;IACP,SAAS,EAAE,SAAS,CAAC;gBAGnB,OAAO,EAAE,GAAG,EACZ,cAAc,EAAE,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC,GAAG,SAAS,EAC7D,aAAa,EAAE,GAAG,EAClB,GAAG,EAAE,eAAe,EACpB,EAAE,EAAE,EAAE,EACN,SAAS,EAAE,SAAS;IAYhB,gBAAgB,CACpB,WAAW,EAAE,WAAW,EACxB,UAAU,CAAC,EAAE,UAAU,GACtB,OAAO,CAAC,aAAa,CAAC;IAWnB,iBAAiB,CACrB,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,QAAQ,CAAC,EAChD,QAAQ,CAAC,EAAE,UAAU,GACpB,OAAO,CAAC;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IA0BrC;;;;OAIG;IACG,UAAU,CAAC,WAAW,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC;IAcrF,2BAA2B,CAAC,EAChC,SAAS,EACT,OAAO,EACP,WAAW,GACZ,EAAE,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC;IASjC,uBAAuB,CAC3B,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,eAAe,EACpD,UAAU,CAAC,EAAE,UAAU,GACtB,OAAO,CAAC,SAAS,CAAC;IAsDf,aAAa,CACjB,IAAI,EAAE,QAAQ,EACd,UAAU,CAAC,EAAE,UAAU,GACtB,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAe1C,6BAA6B,uIAA4C;IAGzE,oBAAoB;;;;;;;;;;;;OAAmC;CACxD;AAED,cAAc,wBAAwB,CAAC"}
|
|
@@ -41,7 +41,7 @@ class PublishParser {
|
|
|
41
41
|
if (!this.dbo)
|
|
42
42
|
throw "dbo missing";
|
|
43
43
|
return {
|
|
44
|
-
...(clientInfo || await this.prostgles.authHandler?.getClientInfo(localParams)),
|
|
44
|
+
...(clientInfo || (await this.prostgles.authHandler?.getClientInfo(localParams))),
|
|
45
45
|
dbo: this.dbo,
|
|
46
46
|
db: this.db,
|
|
47
47
|
socket: localParams.socket,
|
|
@@ -53,11 +53,12 @@ class PublishParser {
|
|
|
53
53
|
const publishParams = await this.getPublishParams(reqInfo, userData);
|
|
54
54
|
const _methods = await applyParamsIfFunc(this.publishMethods, publishParams);
|
|
55
55
|
if (_methods && Object.keys(_methods).length) {
|
|
56
|
-
|
|
57
|
-
const isFuncLike = (maybeFunc) =>
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
56
|
+
(0, prostgles_types_1.getObjectEntries)(_methods).map(([key, method]) => {
|
|
57
|
+
const isFuncLike = (maybeFunc) => typeof maybeFunc === "function" || (maybeFunc && typeof maybeFunc.then === "function");
|
|
58
|
+
if (method &&
|
|
59
|
+
(isFuncLike(method) ||
|
|
60
|
+
// @ts-ignore
|
|
61
|
+
((0, prostgles_types_1.isObject)(method) && isFuncLike(method.run)))) {
|
|
61
62
|
methods[key] = _methods[key];
|
|
62
63
|
}
|
|
63
64
|
else {
|
|
@@ -77,14 +78,14 @@ class PublishParser {
|
|
|
77
78
|
const _publish = await applyParamsIfFunc(this.publish, publishParams);
|
|
78
79
|
if (_publish === "*") {
|
|
79
80
|
const publish = {};
|
|
80
|
-
this.prostgles.dboBuilder.tablesOrViews?.map(tov => {
|
|
81
|
+
this.prostgles.dboBuilder.tablesOrViews?.map((tov) => {
|
|
81
82
|
publish[tov.name] = "*";
|
|
82
83
|
});
|
|
83
84
|
return publish;
|
|
84
85
|
}
|
|
85
86
|
return _publish;
|
|
86
87
|
}
|
|
87
|
-
async getValidatedRequestRuleWusr({ tableName, command, localParams }) {
|
|
88
|
+
async getValidatedRequestRuleWusr({ tableName, command, localParams, }) {
|
|
88
89
|
const clientInfo = await this.prostgles.authHandler.getClientInfo(localParams);
|
|
89
90
|
const rules = await this.getValidatedRequestRule({ tableName, command, localParams }, clientInfo);
|
|
90
91
|
return rules;
|
|
@@ -94,7 +95,7 @@ class PublishParser {
|
|
|
94
95
|
throw "INTERNAL ERROR: dbo is missing";
|
|
95
96
|
if (!command || !tableName)
|
|
96
97
|
throw "command OR tableName are missing";
|
|
97
|
-
const rtm = publishTypesAndUtils_1.RULE_TO_METHODS.find(rtms => rtms.methods.includes(command));
|
|
98
|
+
const rtm = publishTypesAndUtils_1.RULE_TO_METHODS.find((rtms) => rtms.methods.includes(command));
|
|
98
99
|
if (!rtm) {
|
|
99
100
|
throw "Invalid command: " + command;
|
|
100
101
|
}
|
|
@@ -102,7 +103,7 @@ class PublishParser {
|
|
|
102
103
|
if (!localParams || (!localParams.socket && !localParams.httpReq)) {
|
|
103
104
|
return publishTypesAndUtils_1.RULE_TO_METHODS.reduce((a, v) => ({
|
|
104
105
|
...a,
|
|
105
|
-
[v.rule]: v.no_limits
|
|
106
|
+
[v.rule]: v.no_limits,
|
|
106
107
|
}), {});
|
|
107
108
|
}
|
|
108
109
|
/* Must be from socket. Must have a publish */
|
|
@@ -114,17 +115,26 @@ class PublishParser {
|
|
|
114
115
|
throw errorInfo.error;
|
|
115
116
|
const table_rule = await this.getTableRules({ tableName, localParams }, clientInfo);
|
|
116
117
|
if (!table_rule)
|
|
117
|
-
throw {
|
|
118
|
+
throw {
|
|
119
|
+
stack: ["getValidatedRequestRule()"],
|
|
120
|
+
message: "Invalid or disallowed table: " + tableName,
|
|
121
|
+
};
|
|
118
122
|
if (command === "upsert") {
|
|
119
123
|
if (!table_rule.update || !table_rule.insert) {
|
|
120
|
-
throw {
|
|
124
|
+
throw {
|
|
125
|
+
stack: ["getValidatedRequestRule()"],
|
|
126
|
+
message: `Invalid or disallowed command: upsert`,
|
|
127
|
+
};
|
|
121
128
|
}
|
|
122
129
|
}
|
|
123
130
|
if (rtm && table_rule && table_rule[rtm.rule]) {
|
|
124
131
|
return table_rule;
|
|
125
132
|
}
|
|
126
133
|
else
|
|
127
|
-
throw {
|
|
134
|
+
throw {
|
|
135
|
+
stack: ["getValidatedRequestRule()"],
|
|
136
|
+
message: `Invalid or disallowed command: ${tableName}.${command}`,
|
|
137
|
+
};
|
|
128
138
|
}
|
|
129
139
|
async getTableRules(args, clientInfo) {
|
|
130
140
|
if (this.dbo[args.tableName]?.is_media) {
|
|
@@ -141,7 +151,8 @@ class PublishParser {
|
|
|
141
151
|
exports.PublishParser = PublishParser;
|
|
142
152
|
__exportStar(require("./publishTypesAndUtils"), exports);
|
|
143
153
|
function applyParamsIfFunc(maybeFunc, ...params) {
|
|
144
|
-
if (
|
|
154
|
+
if (maybeFunc !== null &&
|
|
155
|
+
maybeFunc !== undefined &&
|
|
145
156
|
//@ts-ignore
|
|
146
157
|
(typeof maybeFunc === "function" || typeof maybeFunc.then === "function")) {
|
|
147
158
|
return maybeFunc(...params);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublishParser.js","sourceRoot":"","sources":["../../lib/PublishParser/PublishParser.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"PublishParser.js","sourceRoot":"","sources":["../../lib/PublishParser/PublishParser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getFileTableRules.d.ts","sourceRoot":"","sources":["../../lib/PublishParser/getFileTableRules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAc,MAAM,wBAAwB,CAAC;AAExE;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"getFileTableRules.d.ts","sourceRoot":"","sources":["../../lib/PublishParser/getFileTableRules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAc,MAAM,wBAAwB,CAAC;AAExE;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,aAAa,EACnB,aAAa,EAAE,MAAM,EACrB,qBAAqB,EAAE,kBAAkB,GAAG,SAAS,EACrD,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,GAAG,SAAS;;;eAKG,MAAM;gBAAU,MAAM;;GA6I5D"}
|
|
@@ -16,28 +16,31 @@ async function getFileTableRules(fileTableName, fileTablePublishRules, localPara
|
|
|
16
16
|
const forcedSelectFilters = [];
|
|
17
17
|
const forcedUpdateFilters = [];
|
|
18
18
|
const allowedNestedInserts = [];
|
|
19
|
-
const referencedColumns = this.prostgles.dboBuilder.tablesOrViews
|
|
20
|
-
|
|
19
|
+
const referencedColumns = this.prostgles.dboBuilder.tablesOrViews
|
|
20
|
+
?.filter((t) => !t.is_view && t.name !== fileTableName)
|
|
21
|
+
.map((t) => {
|
|
22
|
+
const refCols = t.columns.filter((c) => c.references?.some((r) => r.ftable === fileTableName));
|
|
21
23
|
if (!refCols.length)
|
|
22
24
|
return undefined;
|
|
23
25
|
return {
|
|
24
26
|
tableName: t.name,
|
|
25
|
-
fileColumns: refCols.map(c => c.name),
|
|
26
|
-
allColumns: t.columns.map(c => c.name),
|
|
27
|
+
fileColumns: refCols.map((c) => c.name),
|
|
28
|
+
allColumns: t.columns.map((c) => c.name),
|
|
27
29
|
};
|
|
28
|
-
})
|
|
30
|
+
})
|
|
31
|
+
.filter(prostgles_types_1.isDefined);
|
|
29
32
|
if (referencedColumns?.length) {
|
|
30
|
-
for await (const { tableName, fileColumns, allColumns } of referencedColumns) {
|
|
33
|
+
for await (const { tableName, fileColumns, allColumns, } of referencedColumns) {
|
|
31
34
|
const table_rules = await this.getTableRules({ localParams, tableName }, clientInfo);
|
|
32
35
|
if (table_rules) {
|
|
33
|
-
fileColumns.map(column => {
|
|
36
|
+
fileColumns.map((column) => {
|
|
34
37
|
const path = [{ table: tableName, on: [{ id: column }] }];
|
|
35
38
|
if (table_rules.delete) {
|
|
36
39
|
forcedDeleteFilters.push({
|
|
37
40
|
$existsJoined: {
|
|
38
41
|
path,
|
|
39
42
|
filter: table_rules.delete.forcedFilter ?? {},
|
|
40
|
-
}
|
|
43
|
+
},
|
|
41
44
|
});
|
|
42
45
|
}
|
|
43
46
|
if (table_rules.select) {
|
|
@@ -48,7 +51,7 @@ async function getFileTableRules(fileTableName, fileTablePublishRules, localPara
|
|
|
48
51
|
$existsJoined: {
|
|
49
52
|
path,
|
|
50
53
|
filter: table_rules.select.forcedFilter ?? {},
|
|
51
|
-
}
|
|
54
|
+
},
|
|
52
55
|
});
|
|
53
56
|
}
|
|
54
57
|
}
|
|
@@ -67,7 +70,7 @@ async function getFileTableRules(fileTableName, fileTablePublishRules, localPara
|
|
|
67
70
|
$existsJoined: {
|
|
68
71
|
path,
|
|
69
72
|
filter: table_rules.update.forcedFilter ?? {},
|
|
70
|
-
}
|
|
73
|
+
},
|
|
71
74
|
});
|
|
72
75
|
}
|
|
73
76
|
}
|
|
@@ -79,11 +82,13 @@ async function getFileTableRules(fileTableName, fileTablePublishRules, localPara
|
|
|
79
82
|
...fileTablePublishRules,
|
|
80
83
|
};
|
|
81
84
|
const getForcedFilter = (rule, forcedFilters) => {
|
|
82
|
-
return
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
85
|
+
return rule && !rule.forcedFilter
|
|
86
|
+
? {}
|
|
87
|
+
: {
|
|
88
|
+
forcedFilter: {
|
|
89
|
+
$or: forcedFilters.concat(rule?.forcedFilter ? [rule?.forcedFilter] : []),
|
|
90
|
+
},
|
|
91
|
+
};
|
|
87
92
|
};
|
|
88
93
|
if (forcedSelectFilters.length || fileTablePublishRules?.select) {
|
|
89
94
|
fileTableRule.select = {
|
|
@@ -110,7 +115,9 @@ async function getFileTableRules(fileTableName, fileTablePublishRules, localPara
|
|
|
110
115
|
fileTableRule.insert = {
|
|
111
116
|
fields: "*",
|
|
112
117
|
...fileTablePublishRules?.insert,
|
|
113
|
-
allowedNestedInserts: fileTablePublishRules?.insert
|
|
118
|
+
allowedNestedInserts: fileTablePublishRules?.insert
|
|
119
|
+
? undefined
|
|
120
|
+
: allowedNestedInserts,
|
|
114
121
|
};
|
|
115
122
|
}
|
|
116
123
|
/** Add missing implied methods (getColumns, getInfo) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getFileTableRules.js","sourceRoot":"","sources":["../../lib/PublishParser/getFileTableRules.ts"],"names":[],"mappings":";;;AAAA,qDAAmE;AAGnE,iFAA8E;AAI9E;;;;;;;GAOG;AACI,KAAK,UAAU,iBAAiB,
|
|
1
|
+
{"version":3,"file":"getFileTableRules.js","sourceRoot":"","sources":["../../lib/PublishParser/getFileTableRules.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getSchemaFromPublish.d.ts","sourceRoot":"","sources":["../../lib/PublishParser/getSchemaFromPublish.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"getSchemaFromPublish.d.ts","sourceRoot":"","sources":["../../lib/PublishParser/getSchemaFromPublish.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAGb,iBAAiB,EACjB,oBAAoB,EAGrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAoB,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAiB,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAG/D,KAAK,IAAI,GAAG,CACR;IACE,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,CAAC,EAAE,SAAS,CAAC;CACrB,GACD;IACE,OAAO,EAAE,UAAU,CAAC;IACpB,MAAM,CAAC,EAAE,SAAS,CAAC;CACpB,CACJ,GAAG;IACF,QAAQ,EAAE,UAAU,GAAG,SAAS,CAAC;CAClC,CAAC;AAEF,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,aAAa,EACnB,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,EAAE,IAAI,GAC/B,OAAO,CAAC;IACT,MAAM,EAAE,oBAAoB,CAAC;IAC7B,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,iBAAiB,EAAE,iBAAiB,CAAC;CACtC,CAAC,CAmLD"}
|
|
@@ -10,7 +10,7 @@ async function getSchemaFromPublish({ userData, ...clientReq }) {
|
|
|
10
10
|
let tables = [];
|
|
11
11
|
try {
|
|
12
12
|
/* Publish tables and views based on socket */
|
|
13
|
-
const clientInfo = userData ?? await this.prostgles.authHandler?.getClientInfo(clientReq);
|
|
13
|
+
const clientInfo = userData ?? (await this.prostgles.authHandler?.getClientInfo(clientReq));
|
|
14
14
|
let _publish;
|
|
15
15
|
try {
|
|
16
16
|
_publish = await this.getPublish(clientReq, clientInfo);
|
|
@@ -25,21 +25,22 @@ async function getSchemaFromPublish({ userData, ...clientReq }) {
|
|
|
25
25
|
txKey = "";
|
|
26
26
|
if (typeof this.prostgles.opts.transactions === "string")
|
|
27
27
|
txKey = this.prostgles.opts.transactions;
|
|
28
|
-
const tableNames = Object.keys(_publish).filter(k => !txKey || txKey !== k);
|
|
28
|
+
const tableNames = Object.keys(_publish).filter((k) => !txKey || txKey !== k);
|
|
29
29
|
const fileTableName = this.prostgles.fileManager?.tableName;
|
|
30
|
-
if (fileTableName &&
|
|
31
|
-
|
|
30
|
+
if (fileTableName &&
|
|
31
|
+
this.dbo[fileTableName]?.is_media &&
|
|
32
|
+
!tableNames.includes(fileTableName)) {
|
|
33
|
+
const isReferenced = this.prostgles.dboBuilder.tablesOrViews?.some((t) => t.columns.some((c) => c.references?.some((r) => r.ftable === fileTableName)));
|
|
32
34
|
if (isReferenced) {
|
|
33
35
|
tableNames.unshift(fileTableName);
|
|
34
36
|
}
|
|
35
37
|
}
|
|
36
|
-
await Promise.all(tableNames
|
|
37
|
-
.map(async (tableName) => {
|
|
38
|
+
await Promise.all(tableNames.map(async (tableName) => {
|
|
38
39
|
if (!this.dbo[tableName]) {
|
|
39
40
|
const errMsg = [
|
|
40
41
|
`Table ${tableName} does not exist`,
|
|
41
|
-
`Expecting one of: ${JSON.stringify(this.prostgles.dboBuilder.tablesOrViews?.map(tov => tov.name))}`,
|
|
42
|
-
`DBO tables: ${JSON.stringify(Object.keys(this.dbo).filter(k => this.dbo[k].find))}`,
|
|
42
|
+
`Expecting one of: ${JSON.stringify(this.prostgles.dboBuilder.tablesOrViews?.map((tov) => tov.name))}`,
|
|
43
|
+
`DBO tables: ${JSON.stringify(Object.keys(this.dbo).filter((k) => this.dbo[k].find))}`,
|
|
43
44
|
].join("\n");
|
|
44
45
|
throw errMsg;
|
|
45
46
|
}
|
|
@@ -54,30 +55,52 @@ async function getSchemaFromPublish({ userData, ...clientReq }) {
|
|
|
54
55
|
methods = (0, prostgles_types_1.getKeys)(table_rules);
|
|
55
56
|
}
|
|
56
57
|
if (!this.prostgles.dboBuilder.canSubscribe) {
|
|
57
|
-
methods = methods.filter(m => ![
|
|
58
|
+
methods = methods.filter((m) => ![
|
|
59
|
+
"subscribe",
|
|
60
|
+
"subscribeOne",
|
|
61
|
+
"sync",
|
|
62
|
+
"unsubscribe",
|
|
63
|
+
"unsync",
|
|
64
|
+
].includes(m));
|
|
58
65
|
}
|
|
59
|
-
await Promise.all(methods
|
|
66
|
+
await Promise.all(methods
|
|
67
|
+
.filter((m) => m !== "select")
|
|
60
68
|
.map(async (method) => {
|
|
61
69
|
if (method === "sync" && table_rules[method]) {
|
|
62
70
|
/* Pass sync info */
|
|
63
71
|
tableSchema[method] = table_rules[method];
|
|
64
72
|
}
|
|
65
73
|
else if (table_rules[method]) {
|
|
66
|
-
tableSchema[method] =
|
|
74
|
+
tableSchema[method] =
|
|
75
|
+
method === "insert"
|
|
76
|
+
? (0, prostgles_types_1.pickKeys)(table_rules.insert, [
|
|
77
|
+
"allowedNestedInserts",
|
|
78
|
+
])
|
|
79
|
+
: {};
|
|
67
80
|
/* Test for issues with the common table CRUD methods () */
|
|
68
81
|
if (Prostgles_1.TABLE_METHODS.includes(method)) {
|
|
69
82
|
try {
|
|
70
|
-
const valid_table_command_rules = await this.getValidatedRequestRule({
|
|
83
|
+
const valid_table_command_rules = await this.getValidatedRequestRule({
|
|
84
|
+
tableName,
|
|
85
|
+
command: method,
|
|
86
|
+
localParams: clientReq,
|
|
87
|
+
}, clientInfo);
|
|
71
88
|
if (this.prostgles.opts.testRulesOnConnect) {
|
|
72
|
-
await this.dbo[tableName][method]({}, {}, {}, valid_table_command_rules, {
|
|
89
|
+
await this.dbo[tableName][method]({}, {}, {}, valid_table_command_rules, {
|
|
90
|
+
...clientReq,
|
|
91
|
+
isRemoteRequest: true,
|
|
92
|
+
testRule: true,
|
|
93
|
+
});
|
|
73
94
|
}
|
|
74
95
|
}
|
|
75
96
|
catch (e) {
|
|
76
97
|
tableSchemaErrors[tableName] ??= {};
|
|
77
|
-
tableSchemaErrors[tableName][method] = {
|
|
98
|
+
tableSchemaErrors[tableName][method] = {
|
|
99
|
+
error: "Internal publish error. Check server logs",
|
|
100
|
+
};
|
|
78
101
|
throw {
|
|
79
102
|
...(0, DboBuilder_1.getErrorAsObject)(e),
|
|
80
|
-
publish_path: `publish.${tableName}.${method}: \n -> ${e}
|
|
103
|
+
publish_path: `publish.${tableName}.${method}: \n -> ${e}`,
|
|
81
104
|
};
|
|
82
105
|
}
|
|
83
106
|
}
|
|
@@ -97,7 +120,7 @@ async function getSchemaFromPublish({ userData, ...clientReq }) {
|
|
|
97
120
|
tables.push({
|
|
98
121
|
name: tableName,
|
|
99
122
|
info: tableInfo,
|
|
100
|
-
columns: tableColumns
|
|
123
|
+
columns: tableColumns,
|
|
101
124
|
});
|
|
102
125
|
}
|
|
103
126
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getSchemaFromPublish.js","sourceRoot":"","sources":["../../lib/PublishParser/getSchemaFromPublish.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"getSchemaFromPublish.js","sourceRoot":"","sources":["../../lib/PublishParser/getSchemaFromPublish.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTableRulesWithoutFileTable.d.ts","sourceRoot":"","sources":["../../lib/PublishParser/getTableRulesWithoutFileTable.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI/C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EACL,QAAQ,
|
|
1
|
+
{"version":3,"file":"getTableRulesWithoutFileTable.d.ts","sourceRoot":"","sources":["../../lib/PublishParser/getTableRulesWithoutFileTable.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI/C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EACL,QAAQ,EACR,kBAAkB,EAClB,aAAa,EAKd,MAAM,wBAAwB,CAAC;AAEhC,wBAAsB,6BAA6B,CACjD,IAAI,EAAE,aAAa,EACnB,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,QAAQ,EACpC,UAAU,CAAC,EAAE,UAAU,EACvB,gBAAgB,CAAC,EAAE,aAAa,GAC/B,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CA6MzC"}
|