@opengis/fastify-table 1.4.88 → 1.5.0
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/dist/config.js +33 -0
- package/dist/dblist.js +5 -0
- package/dist/index.js +170 -0
- package/dist/redactionList.js +6 -0
- package/dist/server/helpers/core/badge.js +16 -0
- package/dist/server/helpers/core/buttonFilePreview.js +12 -0
- package/dist/server/helpers/core/buttonHelper.js +20 -0
- package/{server → dist/server}/helpers/core/token.js +16 -18
- package/dist/server/helpers/format/formatAuto.js +14 -0
- package/dist/server/helpers/format/formatDate.js +231 -0
- package/{server → dist/server}/helpers/format/formatDigit.js +21 -21
- package/dist/server/helpers/format/formatNum.js +331 -0
- package/{server → dist/server}/helpers/format/formatNumber.js +50 -55
- package/dist/server/helpers/format/formatRelative.js +180 -0
- package/{server → dist/server}/helpers/format/formatUnit.js +41 -40
- package/{server → dist/server}/helpers/format/num_format.js +40 -44
- package/{server → dist/server}/helpers/format/set.js +26 -27
- package/{server → dist/server}/helpers/funcs/_math.js +49 -50
- package/{server → dist/server}/helpers/funcs/contentList.js +52 -57
- package/{server → dist/server}/helpers/funcs/empty.js +21 -21
- package/dist/server/helpers/funcs/ifCond.js +109 -0
- package/dist/server/helpers/funcs/ifCondAnd.js +109 -0
- package/dist/server/helpers/funcs/ifCondOr.js +110 -0
- package/{server → dist/server}/helpers/funcs/inc.js +19 -20
- package/{server → dist/server}/helpers/funcs/json.js +3 -3
- package/dist/server/helpers/funcs/qrcode.js +65 -0
- package/{server → dist/server}/helpers/funcs/round.js +27 -29
- package/dist/server/helpers/funcs/select.js +39 -0
- package/dist/server/helpers/index.js +125 -0
- package/dist/server/helpers/list/buttonHelper.js +20 -0
- package/{server → dist/server}/helpers/list/descriptionList.js +39 -45
- package/dist/server/helpers/list/tableList.js +104 -0
- package/{server → dist/server}/helpers/list/utils/button.js +3 -3
- package/{server → dist/server}/helpers/list/utils/buttonDel.js +8 -9
- package/{server → dist/server}/helpers/list/utils/buttonEdit.js +8 -9
- package/{server → dist/server}/helpers/string/coalesce.js +33 -39
- package/{server → dist/server}/helpers/string/concat.js +25 -28
- package/{server → dist/server}/helpers/string/split.js +19 -20
- package/{server → dist/server}/helpers/string/str_replace.js +57 -62
- package/{server → dist/server}/helpers/string/substr.js +28 -32
- package/{server → dist/server}/helpers/string/translit.js +20 -23
- package/dist/server/helpers/string/utils/alphabet.js +76 -0
- package/{server → dist/server}/helpers/utils/button.js +3 -3
- package/{server → dist/server}/helpers/utils/buttonAdd.js +4 -4
- package/{server → dist/server}/helpers/utils/buttonDel.js +11 -15
- package/{server → dist/server}/helpers/utils/buttonDownload.js +3 -3
- package/dist/server/helpers/utils/buttonEdit.js +14 -0
- package/{server → dist/server}/helpers/utils/buttonPreview.js +3 -3
- package/{server → dist/server}/helpers/utils/mdToHTML.js +16 -17
- package/{server → dist/server}/helpers/utils/paddingNumber.js +5 -5
- package/dist/server/plugins/access/funcs/getAdminAccess.js +11 -0
- package/dist/server/plugins/cron/cronList.js +2 -0
- package/dist/server/plugins/cron/funcs/addCron.js +41 -0
- package/{server → dist/server}/plugins/cron/funcs/interval2ms.js +36 -40
- package/dist/server/plugins/cron/funcs/runCron.js +20 -0
- package/{server → dist/server}/plugins/cron/funcs/verifyUnique.js +19 -23
- package/dist/server/plugins/cron/index.js +75 -0
- package/dist/server/plugins/crud/funcs/dataDelete.js +87 -0
- package/dist/server/plugins/crud/funcs/dataInsert.js +134 -0
- package/dist/server/plugins/crud/funcs/dataUpdate.js +198 -0
- package/dist/server/plugins/crud/funcs/getAccess.js +82 -0
- package/dist/server/plugins/crud/funcs/getOpt.js +13 -0
- package/dist/server/plugins/crud/funcs/getToken.js +24 -0
- package/dist/server/plugins/crud/funcs/isFileExists.js +11 -0
- package/dist/server/plugins/crud/funcs/setOpt.js +19 -0
- package/dist/server/plugins/crud/funcs/setToken.js +41 -0
- package/dist/server/plugins/crud/funcs/utils/getFolder.js +13 -0
- package/dist/server/plugins/crud/funcs/utils/getInsertQuery.js +54 -0
- package/dist/server/plugins/crud/funcs/utils/logChanges.js +144 -0
- package/{server → dist/server}/plugins/crud/funcs/validateData.js +91 -83
- package/dist/server/plugins/extra/extraData.js +81 -0
- package/dist/server/plugins/extra/extraDataGet.js +52 -0
- package/dist/server/plugins/file/downloadFile.js +15 -0
- package/{server → dist/server}/plugins/file/getExport.js +18 -38
- package/dist/server/plugins/file/isFileExists.js +13 -0
- package/dist/server/plugins/file/providers/fs.js +86 -0
- package/dist/server/plugins/file/providers/index.js +28 -0
- package/dist/server/plugins/file/providers/mime/index.js +7 -0
- package/dist/server/plugins/file/providers/mime/mimes.js +1179 -0
- package/dist/server/plugins/file/providers/s3/client.js +26 -0
- package/dist/server/plugins/file/providers/s3/funcs/downloadFile.js +42 -0
- package/dist/server/plugins/file/providers/s3/funcs/fileExists.js +24 -0
- package/dist/server/plugins/file/providers/s3/funcs/uploadFile.js +35 -0
- package/dist/server/plugins/file/providers/s3/funcs/utils/getS3FilePath.js +18 -0
- package/{server → dist/server}/plugins/file/providers/s3/index.js +11 -12
- package/dist/server/plugins/file/providers/utils/getDataSize.js +19 -0
- package/dist/server/plugins/file/providers/utils/getValidData.js +30 -0
- package/dist/server/plugins/file/providers/utils/handlers/dataTypes.js +7 -0
- package/dist/server/plugins/file/providers/utils/handlers/index.js +50 -0
- package/dist/server/plugins/file/providers/utils/handlers/sizeHandlers.js +9 -0
- package/dist/server/plugins/file/providers/utils/streamToBuffer.js +7 -0
- package/{server → dist/server}/plugins/file/providers/utils/typeguards/isArray.js +2 -3
- package/{server → dist/server}/plugins/file/providers/utils/typeguards/isBuffer.js +2 -3
- package/dist/server/plugins/file/providers/utils/typeguards/isPath.js +3 -0
- package/dist/server/plugins/file/providers/utils/typeguards/isReadableStream.js +7 -0
- package/{server → dist/server}/plugins/file/providers/utils/typeguards/isText.js +2 -3
- package/dist/server/plugins/file/uploadFile.js +14 -0
- package/dist/server/plugins/file/uploadMultiPart.js +101 -0
- package/dist/server/plugins/file/utils/allowedExtensions.js +60 -0
- package/{server → dist/server}/plugins/file/utils/getFileType.js +12 -10
- package/dist/server/plugins/file/utils/getPath.js +30 -0
- package/dist/server/plugins/file/utils/isFileExists.js +15 -0
- package/dist/server/plugins/grpc/file2json.js +50 -0
- package/dist/server/plugins/grpc/grpc.js +103 -0
- package/dist/server/plugins/grpc/office2pdf.js +78 -0
- package/dist/server/plugins/grpc/utils/csv2xls.js +6 -0
- package/dist/server/plugins/grpc/utils/excel2Json.js +10 -0
- package/dist/server/plugins/grpc/utils/html2doc.js +17 -0
- package/dist/server/plugins/grpc/utils/html2img.js +17 -0
- package/dist/server/plugins/grpc/utils/html2pdf.js +19 -0
- package/{server → dist/server}/plugins/grpc/utils/htmlTemplate.js +3 -4
- package/dist/server/plugins/grpc/utils/json2xls.js +11 -0
- package/dist/server/plugins/grpc/utils/mergePdf.js +18 -0
- package/dist/server/plugins/hook/funcs/addHook.js +7 -0
- package/dist/server/plugins/hook/funcs/applyHook.js +25 -0
- package/dist/server/plugins/hook/funcs/applyHookSync.js +7 -0
- package/dist/server/plugins/hook/hookList.js +2 -0
- package/{server → dist/server}/plugins/hook/index.js +7 -8
- package/dist/server/plugins/logger/createFileStream.js +79 -0
- package/dist/server/plugins/logger/errorMessage.js +24 -0
- package/dist/server/plugins/logger/errorStatus.js +17 -0
- package/dist/server/plugins/logger/getHooks.js +17 -0
- package/dist/server/plugins/logger/getLogger.js +52 -0
- package/dist/server/plugins/logger/index.js +37 -0
- package/dist/server/plugins/logger/labels.js +10 -0
- package/dist/server/plugins/logger/serializers.js +22 -0
- package/{server → dist/server}/plugins/logger/timestampWithTimeZone.js +5 -5
- package/dist/server/plugins/md/funcs/formatMdoc.js +45 -0
- package/{server → dist/server}/plugins/md/funcs/mdToHTML.js +16 -17
- package/dist/server/plugins/metric/index.js +6 -0
- package/dist/server/plugins/metric/loggerSystem.js +127 -0
- package/dist/server/plugins/metric/systemMetricsFifthly.js +20 -0
- package/dist/server/plugins/migration/exec.migrations.js +59 -0
- package/dist/server/plugins/migration/exec.sql.js +61 -0
- package/{server → dist/server}/plugins/migration/index.js +5 -7
- package/dist/server/plugins/pg/funcs/autoIndex.js +102 -0
- package/{server → dist/server}/plugins/pg/funcs/getDBParams.js +16 -15
- package/dist/server/plugins/pg/funcs/getMeta.js +48 -0
- package/dist/server/plugins/pg/funcs/getPG.js +39 -0
- package/dist/server/plugins/pg/funcs/getPGAsync.js +45 -0
- package/dist/server/plugins/pg/funcs/init.js +157 -0
- package/dist/server/plugins/pg/index.js +47 -0
- package/dist/server/plugins/pg/pgClients.js +20 -0
- package/dist/server/plugins/policy/funcs/checkPolicy.js +173 -0
- package/dist/server/plugins/policy/funcs/checkXSS.js +44 -0
- package/dist/server/plugins/policy/index.js +11 -0
- package/dist/server/plugins/policy/sqlInjection.js +33 -0
- package/dist/server/plugins/policy/xssInjection.js +72 -0
- package/{server → dist/server}/plugins/redis/client.js +6 -8
- package/dist/server/plugins/redis/funcs/getRedis.js +23 -0
- package/{server → dist/server}/plugins/redis/funcs/redisClients.js +2 -3
- package/dist/server/plugins/redis/index.js +8 -0
- package/dist/server/plugins/sqlite/funcs/getSqlite.js +27 -0
- package/dist/server/plugins/sqlite/funcs/init.js +45 -0
- package/dist/server/plugins/sqlite/index.js +8 -0
- package/dist/server/plugins/sqlite/sqliteClients.js +24 -0
- package/dist/server/plugins/table/funcs/addMenu.js +12 -0
- package/dist/server/plugins/table/funcs/addTemplateDir.js +16 -0
- package/dist/server/plugins/table/funcs/customTokens.js +2 -0
- package/dist/server/plugins/table/funcs/getData.js +25 -0
- package/dist/server/plugins/table/funcs/getFilter.js +18 -0
- package/dist/server/plugins/table/funcs/getFilterSQL/index.js +201 -0
- package/dist/server/plugins/table/funcs/getFilterSQL/util/formatValue.js +131 -0
- package/dist/server/plugins/table/funcs/getFilterSQL/util/getCustomQuery.js +11 -0
- package/dist/server/plugins/table/funcs/getFilterSQL/util/getFilterQuery.js +84 -0
- package/dist/server/plugins/table/funcs/getFilterSQL/util/getOptimizedQuery.js +11 -0
- package/dist/server/plugins/table/funcs/getFilterSQL/util/getRangeQuery.js +161 -0
- package/dist/server/plugins/table/funcs/getFilterSQL/util/getTableSql.js +40 -0
- package/dist/server/plugins/table/funcs/getSelect.js +37 -0
- package/dist/server/plugins/table/funcs/getSelectMeta.js +77 -0
- package/dist/server/plugins/table/funcs/getTemplate.js +86 -0
- package/dist/server/plugins/table/funcs/getTemplatePath.js +60 -0
- package/dist/server/plugins/table/funcs/getTemplateSync.js +84 -0
- package/dist/server/plugins/table/funcs/getTemplates.js +15 -0
- package/dist/server/plugins/table/funcs/gisIRColumn.js +81 -0
- package/dist/server/plugins/table/funcs/loadTemplate.js +2 -0
- package/dist/server/plugins/table/funcs/loadTemplatePath.js +2 -0
- package/dist/server/plugins/table/funcs/menuDirs.js +2 -0
- package/dist/server/plugins/table/funcs/metaFormat/getSelectVal.js +75 -0
- package/dist/server/plugins/table/funcs/metaFormat/index.js +64 -0
- package/dist/server/plugins/table/funcs/userTemplateDir.js +2 -0
- package/dist/server/plugins/table/funcs/userTokens.js +2 -0
- package/dist/server/plugins/util/funcs/eventStream.js +28 -0
- package/{server → dist/server}/plugins/util/funcs/flattenObject.js +14 -12
- package/{server → dist/server}/plugins/util/funcs/unflattenObject.js +48 -46
- package/{server → dist/server}/plugins/yml/funcs/json2yml.js +3 -5
- package/{server → dist/server}/plugins/yml/funcs/yml2json.js +11 -14
- package/{server → dist/server}/routes/access/controllers/access.group.js +17 -23
- package/{server → dist/server}/routes/access/controllers/access.group.post.js +46 -53
- package/dist/server/routes/access/controllers/access.interface.js +36 -0
- package/{server/routes/access/index.mjs → dist/server/routes/access/index.js} +10 -12
- package/{server/routes/access/schema.mjs → dist/server/routes/access/schema.js} +65 -68
- package/dist/server/routes/cron/controllers/cronApi.js +16 -0
- package/dist/server/routes/cron/index.js +15 -0
- package/dist/server/routes/crud/controllers/deleteCrud.js +90 -0
- package/dist/server/routes/crud/controllers/insert.js +110 -0
- package/dist/server/routes/crud/controllers/table.js +144 -0
- package/dist/server/routes/crud/controllers/update.js +113 -0
- package/dist/server/routes/crud/index.js +22 -0
- package/dist/server/routes/dblist/controllers/readItems.js +25 -0
- package/dist/server/routes/dblist/controllers/setItem.js +20 -0
- package/dist/server/routes/dblist/index.js +17 -0
- package/dist/server/routes/dblist/utils/formatData.js +8 -0
- package/dist/server/routes/file/controllers/delete.js +99 -0
- package/dist/server/routes/file/controllers/download.js +56 -0
- package/dist/server/routes/file/controllers/export.js +294 -0
- package/dist/server/routes/file/controllers/files.js +57 -0
- package/dist/server/routes/file/controllers/resize.js +86 -0
- package/dist/server/routes/file/controllers/resizeAll.js +140 -0
- package/dist/server/routes/file/controllers/upload.js +56 -0
- package/dist/server/routes/file/controllers/uploadImage.js +45 -0
- package/dist/server/routes/file/controllers/utils/formatResult.js +13 -0
- package/dist/server/routes/file/controllers/utils/jsonToCsv.js +40 -0
- package/dist/server/routes/file/controllers/utils/jsonToXls.js +37 -0
- package/dist/server/routes/file/index.js +22 -0
- package/dist/server/routes/file/schema.js +14 -0
- package/dist/server/routes/grpc/controllers/file2geojson.js +54 -0
- package/dist/server/routes/grpc/controllers/filePreview.js +87 -0
- package/dist/server/routes/grpc/index.js +9 -0
- package/dist/server/routes/logger/controllers/logger.file.js +81 -0
- package/dist/server/routes/logger/controllers/logger.test.api.js +42 -0
- package/dist/server/routes/logger/controllers/utils/checkUserAccess.js +22 -0
- package/dist/server/routes/logger/controllers/utils/getRootDir.js +25 -0
- package/dist/server/routes/logger/index.js +18 -0
- package/dist/server/routes/menu/controllers/getMenu.js +98 -0
- package/dist/server/routes/menu/controllers/interfaces.js +18 -0
- package/dist/server/routes/menu/index.js +7 -0
- package/dist/server/routes/properties/controllers/properties.get.js +23 -0
- package/dist/server/routes/properties/controllers/properties.post.js +68 -0
- package/dist/server/routes/properties/index.js +21 -0
- package/dist/server/routes/table/controllers/card.js +79 -0
- package/dist/server/routes/table/controllers/cardData.js +161 -0
- package/dist/server/routes/table/controllers/cardTabData.js +49 -0
- package/dist/server/routes/table/controllers/dataInfo.js +57 -0
- package/dist/server/routes/table/controllers/filter.js +181 -0
- package/dist/server/routes/table/controllers/form.js +41 -0
- package/{server → dist/server}/routes/table/controllers/getFormByTable.js +105 -125
- package/dist/server/routes/table/controllers/search.js +80 -0
- package/dist/server/routes/table/controllers/suggest.js +242 -0
- package/dist/server/routes/table/controllers/tableData.js +88 -0
- package/dist/server/routes/table/controllers/tableInfo.js +112 -0
- package/dist/server/routes/table/controllers/tokenInfo.js +10 -0
- package/dist/server/routes/table/controllers/utils/conditions.js +30 -0
- package/dist/server/routes/table/controllers/utils/formatSchema.js +35 -0
- package/dist/server/routes/table/controllers/utils/locales.js +2 -0
- package/dist/server/routes/table/functions/getData.js +584 -0
- package/dist/server/routes/table/index.js +44 -0
- package/dist/server/routes/table/schema.js +117 -0
- package/dist/server/routes/templates/controllers/getTemplate.js +65 -0
- package/dist/server/routes/templates/index.js +7 -0
- package/{server → dist/server}/routes/templates/schema.js +11 -12
- package/dist/server/routes/util/controllers/code.generator.js +75 -0
- package/dist/server/routes/util/controllers/next.id.js +4 -0
- package/dist/server/routes/util/controllers/status.monitor.js +6 -0
- package/dist/server/routes/util/controllers/user.tokens.js +32 -0
- package/dist/server/routes/util/index.js +13 -0
- package/dist/server/routes/widget/controllers/file.edit.js +48 -0
- package/dist/server/routes/widget/controllers/widget.del.js +84 -0
- package/dist/server/routes/widget/controllers/widget.get.js +164 -0
- package/dist/server/routes/widget/controllers/widget.set.js +117 -0
- package/dist/server/routes/widget/hook/onWidgetSet.js +10 -0
- package/dist/server/routes/widget/index.js +42 -0
- package/dist/server/types/core.js +12 -0
- package/dist/utils.js +93 -0
- package/package.json +24 -17
- package/config.js +0 -37
- package/dblist.js +0 -5
- package/index.js +0 -193
- package/redactionList.js +0 -7
- package/server/helpers/core/badge.js +0 -14
- package/server/helpers/core/buttonFilePreview.js +0 -12
- package/server/helpers/core/buttonHelper.js +0 -22
- package/server/helpers/format/formatAuto.js +0 -13
- package/server/helpers/format/formatDate.js +0 -258
- package/server/helpers/format/formatNum.js +0 -365
- package/server/helpers/format/formatRelative.js +0 -106
- package/server/helpers/funcs/ifCond.js +0 -109
- package/server/helpers/funcs/ifCondAnd.js +0 -114
- package/server/helpers/funcs/ifCondOr.js +0 -115
- package/server/helpers/funcs/qrcode.js +0 -68
- package/server/helpers/funcs/select.js +0 -46
- package/server/helpers/index.js +0 -137
- package/server/helpers/list/buttonHelper.js +0 -22
- package/server/helpers/list/tableList.js +0 -87
- package/server/helpers/string/utils/alphabet.js +0 -76
- package/server/helpers/utils/buttonEdit.js +0 -17
- package/server/migrations/0.sql +0 -84
- package/server/migrations/cls.sql +0 -40
- package/server/migrations/context.sql +0 -135
- package/server/migrations/crm.sql +0 -155
- package/server/migrations/log.sql +0 -87
- package/server/migrations/properties.sql +0 -115
- package/server/migrations/roles.sql +0 -191
- package/server/migrations/template.sql +0 -44
- package/server/migrations/users.sql +0 -176
- package/server/plugins/access/funcs/getAdminAccess.js +0 -14
- package/server/plugins/access/index.mjs +0 -6
- package/server/plugins/cron/cronList.js +0 -1
- package/server/plugins/cron/funcs/addCron.js +0 -52
- package/server/plugins/cron/funcs/runCron.js +0 -24
- package/server/plugins/cron/index.js +0 -77
- package/server/plugins/crud/funcs/dataDelete.js +0 -86
- package/server/plugins/crud/funcs/dataInsert.js +0 -131
- package/server/plugins/crud/funcs/dataUpdate.js +0 -179
- package/server/plugins/crud/funcs/getAccess.js +0 -94
- package/server/plugins/crud/funcs/getOpt.js +0 -14
- package/server/plugins/crud/funcs/getToken.js +0 -33
- package/server/plugins/crud/funcs/isFileExists.js +0 -13
- package/server/plugins/crud/funcs/setOpt.js +0 -21
- package/server/plugins/crud/funcs/setToken.js +0 -43
- package/server/plugins/crud/funcs/utils/getFolder.js +0 -11
- package/server/plugins/crud/funcs/utils/getInsertQuery.js +0 -44
- package/server/plugins/crud/funcs/utils/logChanges.js +0 -121
- package/server/plugins/crud/index.js +0 -23
- package/server/plugins/extra/extraData.js +0 -79
- package/server/plugins/extra/extraDataGet.js +0 -56
- package/server/plugins/file/downloadFile.js +0 -18
- package/server/plugins/file/isFileExists.js +0 -17
- package/server/plugins/file/providers/fs.js +0 -100
- package/server/plugins/file/providers/index.d.ts +0 -49
- package/server/plugins/file/providers/index.js +0 -36
- package/server/plugins/file/providers/mime/index.js +0 -12
- package/server/plugins/file/providers/mime/mimes.js +0 -1180
- package/server/plugins/file/providers/s3/client.js +0 -41
- package/server/plugins/file/providers/s3/funcs/downloadFile.js +0 -50
- package/server/plugins/file/providers/s3/funcs/fileExists.js +0 -32
- package/server/plugins/file/providers/s3/funcs/uploadFile.js +0 -46
- package/server/plugins/file/providers/s3/funcs/utils/getS3FilePath.js +0 -23
- package/server/plugins/file/providers/utils/getDataSize.js +0 -20
- package/server/plugins/file/providers/utils/getValidData.js +0 -32
- package/server/plugins/file/providers/utils/handlers/dataTypes.js +0 -8
- package/server/plugins/file/providers/utils/handlers/index.js +0 -53
- package/server/plugins/file/providers/utils/handlers/sizeHandlers.js +0 -11
- package/server/plugins/file/providers/utils/streamToBuffer.js +0 -8
- package/server/plugins/file/providers/utils/typeguards/isPath.js +0 -5
- package/server/plugins/file/providers/utils/typeguards/isReadableStream.js +0 -8
- package/server/plugins/file/uploadFile.js +0 -19
- package/server/plugins/file/uploadMultiPart.js +0 -131
- package/server/plugins/file/utils/allowedExtensions.js +0 -25
- package/server/plugins/file/utils/getPath.js +0 -25
- package/server/plugins/file/utils/isFileExists.js +0 -16
- package/server/plugins/grpc/file2json.js +0 -54
- package/server/plugins/grpc/grpc.js +0 -125
- package/server/plugins/grpc/office2pdf.js +0 -91
- package/server/plugins/grpc/utils/csv2xls.js +0 -8
- package/server/plugins/grpc/utils/excel2Json.js +0 -8
- package/server/plugins/grpc/utils/html2doc.js +0 -19
- package/server/plugins/grpc/utils/html2img.js +0 -18
- package/server/plugins/grpc/utils/html2pdf.js +0 -23
- package/server/plugins/grpc/utils/json2xls.js +0 -13
- package/server/plugins/grpc/utils/mergePdf.js +0 -20
- package/server/plugins/hook/funcs/addHook.js +0 -8
- package/server/plugins/hook/funcs/applyHook.js +0 -25
- package/server/plugins/hook/funcs/applyHookSync.js +0 -9
- package/server/plugins/hook/hookList.js +0 -1
- package/server/plugins/logger/createFileStream.js +0 -88
- package/server/plugins/logger/errorMessage.js +0 -25
- package/server/plugins/logger/errorStatus.js +0 -19
- package/server/plugins/logger/getHooks.js +0 -21
- package/server/plugins/logger/getLogger.js +0 -58
- package/server/plugins/logger/index.js +0 -33
- package/server/plugins/logger/labels.js +0 -11
- package/server/plugins/logger/serializers.js +0 -25
- package/server/plugins/md/funcs/formatMdoc.js +0 -40
- package/server/plugins/metric/index.js +0 -8
- package/server/plugins/metric/loggerSystem.js +0 -131
- package/server/plugins/metric/systemMetricsFifthly.js +0 -24
- package/server/plugins/migration/exec.migrations.js +0 -63
- package/server/plugins/migration/exec.sql.js +0 -67
- package/server/plugins/pg/funcs/autoIndex.js +0 -103
- package/server/plugins/pg/funcs/getMeta.js +0 -49
- package/server/plugins/pg/funcs/getPG.js +0 -42
- package/server/plugins/pg/funcs/getPGAsync.js +0 -62
- package/server/plugins/pg/funcs/init.js +0 -117
- package/server/plugins/pg/index.js +0 -54
- package/server/plugins/pg/pgClients.js +0 -22
- package/server/plugins/policy/funcs/checkPolicy.js +0 -127
- package/server/plugins/policy/funcs/checkXSS.js +0 -37
- package/server/plugins/policy/index.js +0 -11
- package/server/plugins/policy/sqlInjection.js +0 -34
- package/server/plugins/policy/xssInjection.js +0 -73
- package/server/plugins/redis/funcs/getRedis.js +0 -25
- package/server/plugins/redis/index.js +0 -17
- package/server/plugins/sqlite/funcs/getSqlite.js +0 -39
- package/server/plugins/sqlite/funcs/init.js +0 -53
- package/server/plugins/sqlite/index.js +0 -11
- package/server/plugins/sqlite/sqliteClients.js +0 -26
- package/server/plugins/table/funcs/addMenu.js +0 -16
- package/server/plugins/table/funcs/addTemplateDir.js +0 -19
- package/server/plugins/table/funcs/customTokens.js +0 -1
- package/server/plugins/table/funcs/getData.js +0 -14
- package/server/plugins/table/funcs/getFilter.js +0 -14
- package/server/plugins/table/funcs/getFilterSQL/index.js +0 -163
- package/server/plugins/table/funcs/getFilterSQL/util/formatValue.js +0 -136
- package/server/plugins/table/funcs/getFilterSQL/util/getCustomQuery.js +0 -13
- package/server/plugins/table/funcs/getFilterSQL/util/getFilterQuery.js +0 -75
- package/server/plugins/table/funcs/getFilterSQL/util/getOptimizedQuery.js +0 -12
- package/server/plugins/table/funcs/getFilterSQL/util/getRangeQuery.js +0 -156
- package/server/plugins/table/funcs/getFilterSQL/util/getTableSql.js +0 -34
- package/server/plugins/table/funcs/getSelect.js +0 -31
- package/server/plugins/table/funcs/getSelectMeta.js +0 -74
- package/server/plugins/table/funcs/getTemplate.js +0 -88
- package/server/plugins/table/funcs/getTemplatePath.js +0 -60
- package/server/plugins/table/funcs/getTemplateSync.js +0 -87
- package/server/plugins/table/funcs/getTemplates.js +0 -19
- package/server/plugins/table/funcs/gisIRColumn.js +0 -82
- package/server/plugins/table/funcs/loadTemplate.js +0 -1
- package/server/plugins/table/funcs/loadTemplatePath.js +0 -1
- package/server/plugins/table/funcs/menuDirs.js +0 -1
- package/server/plugins/table/funcs/metaFormat/getSelectVal.js +0 -61
- package/server/plugins/table/funcs/metaFormat/index.js +0 -49
- package/server/plugins/table/funcs/userTemplateDir.js +0 -1
- package/server/plugins/table/funcs/userTokens.js +0 -1
- package/server/plugins/table/index.js +0 -13
- package/server/plugins/util/funcs/eventStream.js +0 -29
- package/server/plugins/util/index.js +0 -7
- package/server/routes/access/controllers/access.interface.js +0 -37
- package/server/routes/cron/controllers/cronApi.js +0 -22
- package/server/routes/cron/index.js +0 -19
- package/server/routes/crud/controllers/deleteCrud.js +0 -84
- package/server/routes/crud/controllers/insert.js +0 -103
- package/server/routes/crud/controllers/table.js +0 -116
- package/server/routes/crud/controllers/update.js +0 -108
- package/server/routes/crud/index.js +0 -26
- package/server/routes/dblist/controllers/readItems.js +0 -28
- package/server/routes/dblist/controllers/setItem.js +0 -25
- package/server/routes/dblist/index.mjs +0 -19
- package/server/routes/dblist/utils/formatData.js +0 -7
- package/server/routes/file/controllers/delete.js +0 -108
- package/server/routes/file/controllers/download.js +0 -66
- package/server/routes/file/controllers/export.js +0 -290
- package/server/routes/file/controllers/files.js +0 -72
- package/server/routes/file/controllers/resize.js +0 -96
- package/server/routes/file/controllers/resizeAll.js +0 -165
- package/server/routes/file/controllers/upload.js +0 -55
- package/server/routes/file/controllers/uploadImage.js +0 -47
- package/server/routes/file/controllers/utils/formatResult.js +0 -17
- package/server/routes/file/controllers/utils/jsonToCsv.js +0 -36
- package/server/routes/file/controllers/utils/jsonToXls.js +0 -42
- package/server/routes/file/index.mjs +0 -26
- package/server/routes/file/schema.js +0 -16
- package/server/routes/grpc/controllers/file2geojson.js +0 -60
- package/server/routes/grpc/controllers/filePreview.js +0 -89
- package/server/routes/grpc/index.mjs +0 -12
- package/server/routes/logger/controllers/logger.file.js +0 -97
- package/server/routes/logger/controllers/logger.test.api.js +0 -48
- package/server/routes/logger/controllers/utils/checkUserAccess.js +0 -24
- package/server/routes/logger/controllers/utils/getRootDir.js +0 -27
- package/server/routes/logger/index.js +0 -22
- package/server/routes/menu/controllers/getMenu.js +0 -98
- package/server/routes/menu/controllers/interfaces.js +0 -21
- package/server/routes/menu/index.mjs +0 -8
- package/server/routes/menu/schema.js +0 -0
- package/server/routes/properties/controllers/properties.get.js +0 -33
- package/server/routes/properties/controllers/properties.post.js +0 -76
- package/server/routes/properties/index.js +0 -25
- package/server/routes/table/controllers/card.js +0 -77
- package/server/routes/table/controllers/cardData.js +0 -155
- package/server/routes/table/controllers/cardTabData.js +0 -57
- package/server/routes/table/controllers/dataInfo.js +0 -56
- package/server/routes/table/controllers/filter.js +0 -154
- package/server/routes/table/controllers/form.js +0 -42
- package/server/routes/table/controllers/search.js +0 -74
- package/server/routes/table/controllers/suggest.js +0 -246
- package/server/routes/table/controllers/tableData.js +0 -62
- package/server/routes/table/controllers/tableInfo.js +0 -110
- package/server/routes/table/controllers/tokenInfo.js +0 -12
- package/server/routes/table/controllers/utils/conditions.js +0 -21
- package/server/routes/table/controllers/utils/formatSchema.js +0 -23
- package/server/routes/table/controllers/utils/locales.js +0 -1
- package/server/routes/table/functions/getData.js +0 -436
- package/server/routes/table/index.js +0 -57
- package/server/routes/table/schema.js +0 -127
- package/server/routes/templates/controllers/getTemplate.js +0 -51
- package/server/routes/templates/index.mjs +0 -10
- package/server/routes/util/controllers/code.generator.js +0 -94
- package/server/routes/util/controllers/next.id.js +0 -4
- package/server/routes/util/controllers/status.monitor.js +0 -8
- package/server/routes/util/controllers/user.tokens.js +0 -45
- package/server/routes/util/index.js +0 -14
- package/server/routes/widget/controllers/file.edit.js +0 -55
- package/server/routes/widget/controllers/widget.del.js +0 -99
- package/server/routes/widget/controllers/widget.get.js +0 -156
- package/server/routes/widget/controllers/widget.set.js +0 -108
- package/server/routes/widget/hook/onWidgetSet.js +0 -13
- package/server/routes/widget/index.mjs +0 -38
- package/utils.js +0 -112
- /package/{server → dist/server}/plugins/grpc/utils/convertp.proto +0 -0
- /package/{server → dist/server}/plugins/grpc/utils/office2pdf.proto +0 -0
|
@@ -0,0 +1,331 @@
|
|
|
1
|
+
/* eslint-disable prefer-destructuring */
|
|
2
|
+
function saveEval(jsCode, context = {}) {
|
|
3
|
+
// TODO eval
|
|
4
|
+
const addcontext = Object.keys(context)
|
|
5
|
+
.map((key) => `let ${key}=context["${key}"];`)
|
|
6
|
+
.join("");
|
|
7
|
+
// eslint-disable-next-line no-eval
|
|
8
|
+
return eval(addcontext + jsCode);
|
|
9
|
+
}
|
|
10
|
+
const mapNumbers = {
|
|
11
|
+
ua: {
|
|
12
|
+
0: [2, 1, "нуль"],
|
|
13
|
+
1: [0, 2, "одна", "один"],
|
|
14
|
+
2: [1, 2, "дві", "два", "дві"],
|
|
15
|
+
3: [1, 1, "три"],
|
|
16
|
+
4: [1, 1, "чотири"],
|
|
17
|
+
5: [2, 1, "п'ять"],
|
|
18
|
+
6: [2, 1, "шість"],
|
|
19
|
+
7: [2, 1, "сім"],
|
|
20
|
+
8: [2, 1, "вісім"],
|
|
21
|
+
9: [2, 1, "дев'ять"],
|
|
22
|
+
10: [2, 1, "десять"],
|
|
23
|
+
11: [2, 1, "одинадцять"],
|
|
24
|
+
12: [2, 1, "дванадцять"],
|
|
25
|
+
13: [2, 1, "тринадцять"],
|
|
26
|
+
14: [2, 1, "чотирнадцять"],
|
|
27
|
+
15: [2, 1, "п'ятнадцять"],
|
|
28
|
+
16: [2, 1, "шістнадцять"],
|
|
29
|
+
17: [2, 1, "сімнадцять"],
|
|
30
|
+
18: [2, 1, "вісімнадцять"],
|
|
31
|
+
19: [2, 1, "дев'ятнадцять"],
|
|
32
|
+
20: [2, 1, "двадцять"],
|
|
33
|
+
30: [2, 1, "тридцять"],
|
|
34
|
+
40: [2, 1, "сорок"],
|
|
35
|
+
50: [2, 1, "п'ятдесят"],
|
|
36
|
+
60: [2, 1, "шістдесят"],
|
|
37
|
+
70: [2, 1, "сімдесят"],
|
|
38
|
+
80: [2, 1, "вісімдесят"],
|
|
39
|
+
90: [2, 1, "дев'яносто"],
|
|
40
|
+
100: [2, 1, "сто"],
|
|
41
|
+
200: [2, 1, "двісті"],
|
|
42
|
+
300: [2, 1, "триста"],
|
|
43
|
+
400: [2, 1, "чотириста"],
|
|
44
|
+
500: [2, 1, "п'ятсот"],
|
|
45
|
+
600: [2, 1, "шістсот"],
|
|
46
|
+
700: [2, 1, "сімсот"],
|
|
47
|
+
800: [2, 1, "вісімсот"],
|
|
48
|
+
900: [2, 1, "дев'ятсот"],
|
|
49
|
+
},
|
|
50
|
+
ru: {
|
|
51
|
+
0: [2, 1, "ноль"],
|
|
52
|
+
1: [0, 2, "одна", "один"],
|
|
53
|
+
2: [1, 2, "две", "два", "две"],
|
|
54
|
+
3: [1, 1, "три"],
|
|
55
|
+
4: [1, 1, "четыре"],
|
|
56
|
+
5: [2, 1, "пять"],
|
|
57
|
+
6: [2, 1, "шесть"],
|
|
58
|
+
7: [2, 1, "семь"],
|
|
59
|
+
8: [2, 1, "восемь"],
|
|
60
|
+
9: [2, 1, "девять"],
|
|
61
|
+
10: [2, 1, "десять"],
|
|
62
|
+
11: [2, 1, "одинадцать"],
|
|
63
|
+
12: [2, 1, "двенадцать"],
|
|
64
|
+
13: [2, 1, "тринадцать"],
|
|
65
|
+
14: [2, 1, "четырнадцать"],
|
|
66
|
+
15: [2, 1, "пятнадцать"],
|
|
67
|
+
16: [2, 1, "шестнадцать"],
|
|
68
|
+
17: [2, 1, "семнадцать"],
|
|
69
|
+
18: [2, 1, "восемнадцать"],
|
|
70
|
+
19: [2, 1, "девятнадцать"],
|
|
71
|
+
20: [2, 1, "двадцать"],
|
|
72
|
+
30: [2, 1, "тридцать"],
|
|
73
|
+
40: [2, 1, "сорок"],
|
|
74
|
+
50: [2, 1, "пятьдесят"],
|
|
75
|
+
60: [2, 1, "шестьдесят"],
|
|
76
|
+
70: [2, 1, "семьдесят"],
|
|
77
|
+
80: [2, 1, "восемьдесят"],
|
|
78
|
+
90: [2, 1, "девяносто"],
|
|
79
|
+
100: [2, 1, "сто"],
|
|
80
|
+
200: [2, 1, "двести"],
|
|
81
|
+
300: [2, 1, "триста"],
|
|
82
|
+
400: [2, 1, "четыреста"],
|
|
83
|
+
500: [2, 1, "пятьсот"],
|
|
84
|
+
600: [2, 1, "шестьсот"],
|
|
85
|
+
700: [2, 1, "семьсот"],
|
|
86
|
+
800: [2, 1, "восемьсот"],
|
|
87
|
+
900: [2, 1, "девятьсот"],
|
|
88
|
+
},
|
|
89
|
+
};
|
|
90
|
+
const mapOrders = {
|
|
91
|
+
ua: [
|
|
92
|
+
{ Gender: true, arrStates: ["", "", ""] },
|
|
93
|
+
{ Gender: true, arrStates: ["тисяча", "тисячі", "тисяч"] },
|
|
94
|
+
{ Gender: false, arrStates: ["мільйон", "мільйона", "мільйонів"] },
|
|
95
|
+
{ Gender: false, arrStates: ["мільярд", "мільярда", "мільярдів"] },
|
|
96
|
+
{ Gender: false, arrStates: ["триліон", "триліона", "триліонів"] },
|
|
97
|
+
{
|
|
98
|
+
Gender: true,
|
|
99
|
+
arrStates: {
|
|
100
|
+
uah: ["грн.", "грн.", "грн."],
|
|
101
|
+
rur: ["руб.", "руб.", "руб."],
|
|
102
|
+
},
|
|
103
|
+
bAddZeroWord: true,
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
Gender: true,
|
|
107
|
+
arrStates: ["ціла", "цілих", "цілих"],
|
|
108
|
+
bAddZeroWord: true,
|
|
109
|
+
},
|
|
110
|
+
{ Gender: true, arrStates: ["", "", ""], bAddZeroWord: true },
|
|
111
|
+
{
|
|
112
|
+
Gender: true,
|
|
113
|
+
arrStates: ["дол.", "дол.", "дол."],
|
|
114
|
+
bAddZeroWord: true,
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
Gender: true,
|
|
118
|
+
arrStates: ["грн.", "грн.", "грн."],
|
|
119
|
+
bAddZeroWord: true,
|
|
120
|
+
},
|
|
121
|
+
],
|
|
122
|
+
ru: [
|
|
123
|
+
{ Gender: true, arrStates: ["", "", ""] },
|
|
124
|
+
{ Gender: true, arrStates: ["тысяча", "тысячи", "тысяч"] },
|
|
125
|
+
{ Gender: false, arrStates: ["миллион", "миллиона", "миллионов"] },
|
|
126
|
+
{ Gender: false, arrStates: ["миллиард", "миллиарда", "миллиардов"] },
|
|
127
|
+
{ Gender: false, arrStates: ["триллион", "триллиона", "триллионов"] },
|
|
128
|
+
{
|
|
129
|
+
Gender: true,
|
|
130
|
+
arrStates: {
|
|
131
|
+
uah: ["грн.", "грн.", "грн."],
|
|
132
|
+
rur: ["руб.", "руб.", "руб."],
|
|
133
|
+
usd: ["дол.", "дол.", "дол."],
|
|
134
|
+
},
|
|
135
|
+
bAddZeroWord: true,
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
Gender: true,
|
|
139
|
+
arrStates: ["целых", "целых", "целых"],
|
|
140
|
+
bAddZeroWord: true,
|
|
141
|
+
},
|
|
142
|
+
{ Gender: true, arrStates: ["", "", ""], bAddZeroWord: true },
|
|
143
|
+
{
|
|
144
|
+
Gender: true,
|
|
145
|
+
arrStates: ["дол.", "дол.", "дол."],
|
|
146
|
+
bAddZeroWord: true,
|
|
147
|
+
},
|
|
148
|
+
],
|
|
149
|
+
};
|
|
150
|
+
const objCur = {
|
|
151
|
+
Gender: false,
|
|
152
|
+
arrStates: {
|
|
153
|
+
uah: ["грн.", "грн.", "грн."],
|
|
154
|
+
rur: ["руб.", "руб.", "руб."],
|
|
155
|
+
usd: ["дол.", "дол.", "дол."],
|
|
156
|
+
num: { ru: "цел.", ua: "ціл.", en: "int." },
|
|
157
|
+
},
|
|
158
|
+
};
|
|
159
|
+
const objCoin = {
|
|
160
|
+
Gender: false,
|
|
161
|
+
arrStates: {
|
|
162
|
+
uah: "коп.",
|
|
163
|
+
rur: "коп.",
|
|
164
|
+
usd: "цен.",
|
|
165
|
+
num: { ru: "сот.", ua: "сот.", en: "hund." },
|
|
166
|
+
},
|
|
167
|
+
};
|
|
168
|
+
// функции которые отвечают за форматирование
|
|
169
|
+
/**
|
|
170
|
+
* Formatting from number to string
|
|
171
|
+
*
|
|
172
|
+
* @example
|
|
173
|
+
* // returns 'дві'
|
|
174
|
+
* value(2, true, 'ua');
|
|
175
|
+
* @example
|
|
176
|
+
* // returns 'два'
|
|
177
|
+
* value(2, false, 'ua');
|
|
178
|
+
* @param {Number} dVal
|
|
179
|
+
* @param {Any} bGender
|
|
180
|
+
* @param {String} lang
|
|
181
|
+
* @returns {String} Returns a formatted string
|
|
182
|
+
*/
|
|
183
|
+
function value(dVal, bGender, lang) {
|
|
184
|
+
const dValNew = dVal || 0;
|
|
185
|
+
const xVal = mapNumbers[lang][dValNew];
|
|
186
|
+
if (xVal[1] === 1) {
|
|
187
|
+
return xVal[2];
|
|
188
|
+
}
|
|
189
|
+
return xVal[2 + (bGender ? 0 : 1)];
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Add a number to array(arrRet) in capital form
|
|
193
|
+
*
|
|
194
|
+
* @example
|
|
195
|
+
* // returns null
|
|
196
|
+
* from0To999(arrRet, 404,
|
|
197
|
+
* oObjDesc:
|
|
198
|
+
* {
|
|
199
|
+
* Gender: true,
|
|
200
|
+
* bAddZeroWord: undefined,
|
|
201
|
+
* arrStates: ['','',''],
|
|
202
|
+
* },
|
|
203
|
+
* lang: 'ru'
|
|
204
|
+
* })
|
|
205
|
+
* @param {Array} arrRet
|
|
206
|
+
* @param {Number} fValue
|
|
207
|
+
* @param {Object} [oObjDesc.Gender]
|
|
208
|
+
* @param {Object} [oObjDesc.bAddZeroWord]
|
|
209
|
+
* @param {Object} [oObjDesc.arrStates]
|
|
210
|
+
* @param oObjDesc
|
|
211
|
+
* @param {String} lang
|
|
212
|
+
*/
|
|
213
|
+
function from0To999(arrRet, fValue, oObjDesc, lang) {
|
|
214
|
+
let fValueNew = fValue || 0;
|
|
215
|
+
let nCurrState = 2;
|
|
216
|
+
if (Math.floor(fValueNew / 100) > 0) {
|
|
217
|
+
const fCurr = Math.floor(fValueNew / 100) * 100;
|
|
218
|
+
arrRet.push(value(fCurr, oObjDesc.Gender, lang));
|
|
219
|
+
nCurrState = mapNumbers[lang][fCurr][0];
|
|
220
|
+
fValueNew -= fCurr;
|
|
221
|
+
}
|
|
222
|
+
if (fValueNew === 0) {
|
|
223
|
+
arrRet.push(value(fValueNew, oObjDesc.Gender, lang));
|
|
224
|
+
nCurrState = mapNumbers[lang][fValueNew][0];
|
|
225
|
+
}
|
|
226
|
+
else if (fValueNew < 20) {
|
|
227
|
+
if (Math.floor(fValueNew) > 0 || oObjDesc.bAddZeroWord) {
|
|
228
|
+
arrRet.push(value(fValueNew, oObjDesc.Gender, lang));
|
|
229
|
+
nCurrState = mapNumbers[lang][fValueNew][0];
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
else {
|
|
233
|
+
const fCurr = Math.floor(fValueNew / 10) * 10;
|
|
234
|
+
arrRet.push(value(fCurr, oObjDesc.Gender, lang));
|
|
235
|
+
nCurrState = mapNumbers[lang][fCurr][0];
|
|
236
|
+
fValueNew -= fCurr;
|
|
237
|
+
if (Math.floor(fValueNew) > 0) {
|
|
238
|
+
arrRet.push(value(fValueNew, oObjDesc.Gender, lang));
|
|
239
|
+
nCurrState = mapNumbers[lang][fValueNew][0];
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
arrRet.push(oObjDesc.arrStates[nCurrState]);
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Formatting from number to string
|
|
246
|
+
*
|
|
247
|
+
* @example
|
|
248
|
+
* // returns '404 (четыреста четыре) руб. 101 (сто одна) коп.'
|
|
249
|
+
* floatToSamplesInWordsUkr(404.1011001001, '%d (%dt) %curr %f (%ft) %coin', 3, 'ru', 'rur');
|
|
250
|
+
* @returns {String|Number} fAmount
|
|
251
|
+
* @param {String} resultStr
|
|
252
|
+
* @param {Number} exp
|
|
253
|
+
* @param {String} lang
|
|
254
|
+
* @param {String} currency
|
|
255
|
+
* @returns {String} Returns a formatted string
|
|
256
|
+
*/
|
|
257
|
+
function floatToSamplesInWordsUkr(fAmount, resultStr, exp, lang, currency) {
|
|
258
|
+
let resultStrNew = resultStr;
|
|
259
|
+
let fInt = Math.floor(parseInt(fAmount, 10) + 0.005); // ціла частина
|
|
260
|
+
const fDec = Math.floor((fAmount - fInt) * exp + 0.5); // дробова частина
|
|
261
|
+
let arrRet = [];
|
|
262
|
+
const arrSouthands = [];
|
|
263
|
+
for (; fInt > 0.9999; fInt /= 1000) {
|
|
264
|
+
arrSouthands.push(Math.floor(fInt % 1000));
|
|
265
|
+
}
|
|
266
|
+
if (arrSouthands.length === 0) {
|
|
267
|
+
arrSouthands.push(0);
|
|
268
|
+
}
|
|
269
|
+
for (let iSouth = arrSouthands.length - 1; iSouth >= 0; iSouth -= 1) {
|
|
270
|
+
from0To999(arrRet, arrSouthands[iSouth], mapOrders[lang][iSouth], lang);
|
|
271
|
+
}
|
|
272
|
+
// опрацювуЇмо формат
|
|
273
|
+
resultStrNew = resultStrNew.replace(/%dt/, arrRet.join(" ").replace(" )", ")").trim());
|
|
274
|
+
resultStrNew = resultStrNew.replace(/%d/, Math.floor(parseInt(fAmount, 10) + 0.005));
|
|
275
|
+
if (currency !== "num" && objCur.arrStates[currency]) {
|
|
276
|
+
resultStrNew = resultStrNew.replace(/%curr/, objCur.arrStates[currency][0]);
|
|
277
|
+
}
|
|
278
|
+
else {
|
|
279
|
+
resultStrNew = resultStrNew.replace(/%curr/, objCur.arrStates[lang === "ru" ? "rur" : lang][0]);
|
|
280
|
+
}
|
|
281
|
+
arrRet = [];
|
|
282
|
+
from0To999(arrRet, fDec, mapOrders[lang][0], lang);
|
|
283
|
+
resultStrNew = resultStrNew.replace(/%ft/, arrRet.join(" ").replace(" )", ")").trim());
|
|
284
|
+
resultStrNew = resultStrNew.replace(/%f/, fDec);
|
|
285
|
+
if (currency !== "num" && objCur.arrStates[currency]) {
|
|
286
|
+
resultStrNew = resultStrNew.replace(/%coin/, objCoin.arrStates[currency]);
|
|
287
|
+
}
|
|
288
|
+
else {
|
|
289
|
+
resultStrNew = resultStrNew.replace(/%coin/, objCoin.arrStates[lang === "ru" ? "rur" : lang]);
|
|
290
|
+
}
|
|
291
|
+
return resultStrNew;
|
|
292
|
+
}
|
|
293
|
+
/**
|
|
294
|
+
* Formatting from number to string
|
|
295
|
+
*
|
|
296
|
+
* @summary Formatting from number to string
|
|
297
|
+
* @priority 0
|
|
298
|
+
* @deprecated true
|
|
299
|
+
* @type helper
|
|
300
|
+
* @alias formatNum
|
|
301
|
+
* @param {Number} round Округлення
|
|
302
|
+
* @param {String} currency Валюта
|
|
303
|
+
* @param {String} lang Мова на якій видати інформацію
|
|
304
|
+
* @param {String} format Шаблон вигляду результату
|
|
305
|
+
* @param {String|Number} data Число для форматування
|
|
306
|
+
* @returns {String} Returns HTML
|
|
307
|
+
*/
|
|
308
|
+
export default function formatNum(data, options = {}) {
|
|
309
|
+
let name = data;
|
|
310
|
+
if (!name) {
|
|
311
|
+
name = 0;
|
|
312
|
+
} // в случае значения NULL
|
|
313
|
+
if (typeof name === "string" && !name.match(/^[a-zA-Z0-9.]+$/g)) {
|
|
314
|
+
let exec = name;
|
|
315
|
+
exec = exec.replace(/([a-zA-Z_.]{3,100}[0-9]*)/g, "options.data.root.$1");
|
|
316
|
+
name = saveEval(exec);
|
|
317
|
+
name = name ? parseFloat(name) : 0;
|
|
318
|
+
if (options.hash?.round) {
|
|
319
|
+
name = name.toFixed(options.hash.round);
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
const opt = options.hash; // додатков≥ опц≥њ
|
|
323
|
+
const currency = opt.currency || "uah";
|
|
324
|
+
const lang = opt.lang || "ua";
|
|
325
|
+
// if(['ru','ua'].indexOf(lang)==-1)
|
|
326
|
+
// lang=(['ru','ua'].indexOf(window.lang)>-1?window.lang:'ua');
|
|
327
|
+
const round = opt.round || 2;
|
|
328
|
+
const exp = 10 ** round; // к≥льк≥сть знак≥в псл¤ коми
|
|
329
|
+
const resultStr = opt.format || "%d (%dt) %curr %f (%ft) %coin";
|
|
330
|
+
return floatToSamplesInWordsUkr(name, resultStr, exp, lang, currency);
|
|
331
|
+
}
|
|
@@ -1,55 +1,50 @@
|
|
|
1
|
-
/* eslint-disable no-param-reassign */
|
|
2
|
-
/**
|
|
3
|
-
* Форматування до числа
|
|
4
|
-
*
|
|
5
|
-
* @summary Форматування до числа
|
|
6
|
-
* @priority 0
|
|
7
|
-
* @alias formatNumber
|
|
8
|
-
* @type helper
|
|
9
|
-
* @example
|
|
10
|
-
* {{{formatNumber space}}}
|
|
11
|
-
* @example
|
|
12
|
-
* {{{formatNumber amount}}}
|
|
13
|
-
* @example
|
|
14
|
-
* {{formatNumber size_log}}
|
|
15
|
-
* @example
|
|
16
|
-
* {{formatNumber (coalesce proj_finish 0) }}
|
|
17
|
-
* @param {String|Number} data Число для формування
|
|
18
|
-
* @param {Number} round Параметр округлення
|
|
19
|
-
* @param {String} style Стиль форматування (currency, decimal, percent, unit)
|
|
20
|
-
* @param {String} currency Валюта (наприклад, EUR)
|
|
21
|
-
* @param {String} unit Одиниця вимірювання (наприклад, liter)
|
|
22
|
-
* @param {String} locale Мова (наприклад, ua, en)
|
|
23
|
-
* @param {String} unitDisplay Стиль відображення одиниці (short, narrow, long)
|
|
24
|
-
* @param {String} notation Стиль скорочення чисел (compact)
|
|
25
|
-
* @returns {String} Відформатоване число
|
|
26
|
-
*/
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
maximumFractionDigits: round,
|
|
52
|
-
});
|
|
53
|
-
|
|
54
|
-
return formatter.format(data - 0);
|
|
55
|
-
}
|
|
1
|
+
/* eslint-disable no-param-reassign */
|
|
2
|
+
/**
|
|
3
|
+
* Форматування до числа
|
|
4
|
+
*
|
|
5
|
+
* @summary Форматування до числа
|
|
6
|
+
* @priority 0
|
|
7
|
+
* @alias formatNumber
|
|
8
|
+
* @type helper
|
|
9
|
+
* @example
|
|
10
|
+
* {{{formatNumber space}}}
|
|
11
|
+
* @example
|
|
12
|
+
* {{{formatNumber amount}}}
|
|
13
|
+
* @example
|
|
14
|
+
* {{formatNumber size_log}}
|
|
15
|
+
* @example
|
|
16
|
+
* {{formatNumber (coalesce proj_finish 0) }}
|
|
17
|
+
* @param {String|Number} data Число для формування
|
|
18
|
+
* @param {Number} round Параметр округлення
|
|
19
|
+
* @param {String} style Стиль форматування (currency, decimal, percent, unit)
|
|
20
|
+
* @param {String} currency Валюта (наприклад, EUR)
|
|
21
|
+
* @param {String} unit Одиниця вимірювання (наприклад, liter)
|
|
22
|
+
* @param {String} locale Мова (наприклад, ua, en)
|
|
23
|
+
* @param {String} unitDisplay Стиль відображення одиниці (short, narrow, long)
|
|
24
|
+
* @param {String} notation Стиль скорочення чисел (compact)
|
|
25
|
+
* @returns {String} Відформатоване число
|
|
26
|
+
*/
|
|
27
|
+
export default function formatNumber(data, options) {
|
|
28
|
+
const TP = typeof data;
|
|
29
|
+
if (!data || (TP !== 'number' && TP !== 'string'))
|
|
30
|
+
return '';
|
|
31
|
+
if (TP === 'string') {
|
|
32
|
+
data = data.replace(',', '.') - 0;
|
|
33
|
+
}
|
|
34
|
+
const round = options.hash?.round ?? 2;
|
|
35
|
+
const style = options.hash?.style ?? 'decimal';
|
|
36
|
+
const currency = options.hash?.currency ?? 'UAH';
|
|
37
|
+
const unit = options.hash?.unit ?? 'liter';
|
|
38
|
+
const locale = options.hash?.locale ?? 'ua';
|
|
39
|
+
const unitDisplay = options.hash?.unitDisplay ?? 'short';
|
|
40
|
+
const notation = options.hash?.notation ?? 'standard';
|
|
41
|
+
const formatter = new Intl.NumberFormat(locale, {
|
|
42
|
+
style,
|
|
43
|
+
currency,
|
|
44
|
+
unit,
|
|
45
|
+
unitDisplay,
|
|
46
|
+
notation,
|
|
47
|
+
maximumFractionDigits: round,
|
|
48
|
+
});
|
|
49
|
+
return formatter.format(data - 0);
|
|
50
|
+
}
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
/* eslint-disable no-param-reassign */
|
|
2
|
+
/**
|
|
3
|
+
* Форматування часу скільки залишилося чи пройшло від заданого
|
|
4
|
+
*
|
|
5
|
+
* @priority 3
|
|
6
|
+
* @deprecated true
|
|
7
|
+
* @type helper
|
|
8
|
+
* @alias formatRelative
|
|
9
|
+
* @example
|
|
10
|
+
* {{formatRelative '2022-01-13T13:05:40.841795' locate='ua'}}
|
|
11
|
+
* @example
|
|
12
|
+
* {{formatRelative '2022-01-13T13:20:40.841795' locate='ua' percent=1}}
|
|
13
|
+
* @param {Any} percent Будь-яке значення для відображення часу у відсотках
|
|
14
|
+
* @param {String} locale Мова якою відобразити час: en ru ua
|
|
15
|
+
* @param {String} data Отримана та введена дата для форматування
|
|
16
|
+
* @param {String} short
|
|
17
|
+
* @param {String} units
|
|
18
|
+
* @param {String} unit
|
|
19
|
+
* @param {String} data_only
|
|
20
|
+
* @returns {String} Returns HTML
|
|
21
|
+
*/
|
|
22
|
+
export default function formatRelative(data, options) {
|
|
23
|
+
if (!data)
|
|
24
|
+
return "Date is required";
|
|
25
|
+
if (typeof data === "string") {
|
|
26
|
+
data = new Date(data);
|
|
27
|
+
}
|
|
28
|
+
let chLang;
|
|
29
|
+
let timeOut;
|
|
30
|
+
const locale = options.hash.locate || "en";
|
|
31
|
+
const dateFrom = data;
|
|
32
|
+
const dateTo = options.hash.date_to
|
|
33
|
+
? new Date(options.hash.date_to)
|
|
34
|
+
: new Date();
|
|
35
|
+
const templDifPast = {
|
|
36
|
+
ua: [
|
|
37
|
+
"секунд тому",
|
|
38
|
+
"хвилин тому",
|
|
39
|
+
"годин тому",
|
|
40
|
+
"днів тому",
|
|
41
|
+
"тижнів тому",
|
|
42
|
+
"місяців тому",
|
|
43
|
+
"років тому",
|
|
44
|
+
"Вибачте, але заданого типу не існує",
|
|
45
|
+
],
|
|
46
|
+
ru: [
|
|
47
|
+
"секунд назад",
|
|
48
|
+
"минут назад",
|
|
49
|
+
"часов назад",
|
|
50
|
+
"дней назад",
|
|
51
|
+
"недель назад",
|
|
52
|
+
"місяцев назад",
|
|
53
|
+
"лет назад",
|
|
54
|
+
"Простите, но данного типа не существует",
|
|
55
|
+
],
|
|
56
|
+
en: [
|
|
57
|
+
"seconds ago",
|
|
58
|
+
"minutes ago",
|
|
59
|
+
"hours ago",
|
|
60
|
+
"days ago",
|
|
61
|
+
"weeks ago",
|
|
62
|
+
"months ago",
|
|
63
|
+
"years ago",
|
|
64
|
+
"Sorry, no such type of date ",
|
|
65
|
+
],
|
|
66
|
+
};
|
|
67
|
+
const templDifFeature = {
|
|
68
|
+
ua: [
|
|
69
|
+
"секунд залишилось",
|
|
70
|
+
"хвилин залишилось",
|
|
71
|
+
"годин залишилось",
|
|
72
|
+
"днів залишилось",
|
|
73
|
+
"тижнів залишилось",
|
|
74
|
+
"місяців залишилось",
|
|
75
|
+
"років залишилось",
|
|
76
|
+
"Вибачте, але заданого типу не існує",
|
|
77
|
+
],
|
|
78
|
+
ru: [
|
|
79
|
+
"секунд осталось",
|
|
80
|
+
"минут осталось",
|
|
81
|
+
"часов осталось",
|
|
82
|
+
"дней осталось",
|
|
83
|
+
"недель осталось",
|
|
84
|
+
"місяцев осталось",
|
|
85
|
+
"лет осталось",
|
|
86
|
+
"Простите, но данного типа не существует",
|
|
87
|
+
],
|
|
88
|
+
en: [
|
|
89
|
+
"seconds left",
|
|
90
|
+
"minutes left",
|
|
91
|
+
"hours left",
|
|
92
|
+
"days left",
|
|
93
|
+
"weeks left",
|
|
94
|
+
"months left",
|
|
95
|
+
"years left",
|
|
96
|
+
"Sorry, no such type of date ",
|
|
97
|
+
],
|
|
98
|
+
};
|
|
99
|
+
const short = {
|
|
100
|
+
ua: [
|
|
101
|
+
"сек",
|
|
102
|
+
"хв",
|
|
103
|
+
"год",
|
|
104
|
+
"дн",
|
|
105
|
+
"тижд",
|
|
106
|
+
"міс",
|
|
107
|
+
"р",
|
|
108
|
+
"Вибачте, але заданого типу не існує",
|
|
109
|
+
],
|
|
110
|
+
ru: [
|
|
111
|
+
"сек",
|
|
112
|
+
"мин",
|
|
113
|
+
"час",
|
|
114
|
+
"дн",
|
|
115
|
+
"нед",
|
|
116
|
+
"мес",
|
|
117
|
+
"г",
|
|
118
|
+
"Простите, но данного типа не существует",
|
|
119
|
+
],
|
|
120
|
+
en: [
|
|
121
|
+
"sec",
|
|
122
|
+
"min",
|
|
123
|
+
"hr",
|
|
124
|
+
"day",
|
|
125
|
+
"wk",
|
|
126
|
+
"mon",
|
|
127
|
+
"y",
|
|
128
|
+
"Sorry, no such type of date ",
|
|
129
|
+
],
|
|
130
|
+
};
|
|
131
|
+
let dif = Math.floor(dateTo.getTime() - dateFrom.getTime()) / 1000;
|
|
132
|
+
if (options.hash.percent) {
|
|
133
|
+
return (((new Date().getTime() - dateFrom.getTime()) * 100) /
|
|
134
|
+
(dateTo.getTime() - dateFrom.getTime()));
|
|
135
|
+
}
|
|
136
|
+
if (dif > 0) {
|
|
137
|
+
chLang = options.hash.short ? short[locale] : templDifPast[locale];
|
|
138
|
+
}
|
|
139
|
+
else if (dif < 0) {
|
|
140
|
+
chLang = options.hash.short ? short[locale] : templDifFeature[locale];
|
|
141
|
+
}
|
|
142
|
+
dif = Math.abs(dif);
|
|
143
|
+
const bestFit = [
|
|
144
|
+
dif < 60,
|
|
145
|
+
dif < 3600,
|
|
146
|
+
dif < 3600 * 24,
|
|
147
|
+
dif < 3600 * 24 * 30,
|
|
148
|
+
dif < 3600 * 24 * 365,
|
|
149
|
+
].lastIndexOf(false) + 1;
|
|
150
|
+
options.hash.units =
|
|
151
|
+
options.hash.units ||
|
|
152
|
+
options.hash.unit ||
|
|
153
|
+
["second", "minute", "hour", "day", "week", "month", "year"][bestFit];
|
|
154
|
+
switch (options.hash.units) {
|
|
155
|
+
case "second":
|
|
156
|
+
timeOut = `${dif} ${options.hash.data_only ? "" : chLang[0]}`;
|
|
157
|
+
break;
|
|
158
|
+
case "minute":
|
|
159
|
+
timeOut = `${Math.floor(dif / 60)} ${options.hash.data_only ? "" : chLang[1]}`;
|
|
160
|
+
break;
|
|
161
|
+
case "hour":
|
|
162
|
+
timeOut = `${Math.floor(dif / (60 * 60))} ${options.hash.data_only ? "" : chLang[2]}`;
|
|
163
|
+
break;
|
|
164
|
+
case "day":
|
|
165
|
+
timeOut = `${Math.floor(dif / (60 * 60 * 24))} ${options.hash.data_only ? "" : chLang[3]}`;
|
|
166
|
+
break;
|
|
167
|
+
case "week":
|
|
168
|
+
timeOut = `${Math.floor(dif / (60 * 60 * 24 * 7))} ${options.hash.data_only ? "" : chLang[4]}`;
|
|
169
|
+
break;
|
|
170
|
+
case "month":
|
|
171
|
+
timeOut = `${Math.floor(dif / (60 * 60 * 24 * 30))} ${options.hash.data_only ? "" : chLang[5]}`;
|
|
172
|
+
break;
|
|
173
|
+
case "year":
|
|
174
|
+
timeOut = `${Math.floor(dif / (60 * 60 * 24 * 365))} ${options.hash.data_only ? "" : chLang[6]}`;
|
|
175
|
+
break;
|
|
176
|
+
default:
|
|
177
|
+
break;
|
|
178
|
+
}
|
|
179
|
+
return timeOut;
|
|
180
|
+
}
|