From 2f539354997ddc1752926af27e4755cbc4933463 Mon Sep 17 00:00:00 2001 From: Jan Blaha Date: Tue, 8 Sep 2020 13:44:42 +0200 Subject: [PATCH] add types for more jsreport extensions (#47327) --- types/jsreport-assets/index.d.ts | 19 ++++++ .../jsreport-assets/jsreport-assets-tests.ts | 11 ++++ types/jsreport-assets/tsconfig.json | 23 ++++++++ types/jsreport-assets/tslint.json | 1 + types/jsreport-client/index.d.ts | 20 +++++++ .../jsreport-client/jsreport-client-tests.ts | 18 ++++++ types/jsreport-client/tsconfig.json | 23 ++++++++ types/jsreport-client/tslint.json | 1 + types/jsreport-core/index.d.ts | 8 ++- types/jsreport-docx/index.d.ts | 34 +++++++++++ types/jsreport-docx/jsreport-docx-tests.ts | 25 ++++++++ types/jsreport-docx/tsconfig.json | 23 ++++++++ types/jsreport-docx/tslint.json | 1 + types/jsreport-handlebars/index.d.ts | 10 ++++ .../jsreport-handlebars-tests.ts | 9 +++ types/jsreport-handlebars/tsconfig.json | 23 ++++++++ types/jsreport-handlebars/tslint.json | 1 + types/jsreport-pdf-utils/index.d.ts | 58 +++++++++++++++++++ .../jsreport-pdf-utils-tests.ts | 25 ++++++++ types/jsreport-pdf-utils/tsconfig.json | 23 ++++++++ types/jsreport-pdf-utils/tslint.json | 1 + types/jsreport-reports/index.d.ts | 29 ++++++++++ .../jsreport-reports-tests.ts | 23 ++++++++ types/jsreport-reports/tsconfig.json | 23 ++++++++ types/jsreport-reports/tslint.json | 1 + types/jsreport-scripts/index.d.ts | 28 +++++++++ .../jsreport-scripts-tests.ts | 21 +++++++ types/jsreport-scripts/tsconfig.json | 23 ++++++++ types/jsreport-scripts/tslint.json | 1 + types/jsreport-templates/index.d.ts | 16 +++++ .../jsreport-templates-tests.ts | 10 ++++ types/jsreport-templates/tsconfig.json | 23 ++++++++ types/jsreport-templates/tslint.json | 1 + types/jsreport/index.d.ts | 9 ++- 34 files changed, 563 insertions(+), 2 deletions(-) create mode 100644 types/jsreport-assets/index.d.ts create mode 100644 types/jsreport-assets/jsreport-assets-tests.ts create mode 100644 types/jsreport-assets/tsconfig.json create mode 100644 types/jsreport-assets/tslint.json create mode 100644 types/jsreport-client/index.d.ts create mode 100644 types/jsreport-client/jsreport-client-tests.ts create mode 100644 types/jsreport-client/tsconfig.json create mode 100644 types/jsreport-client/tslint.json create mode 100644 types/jsreport-docx/index.d.ts create mode 100644 types/jsreport-docx/jsreport-docx-tests.ts create mode 100644 types/jsreport-docx/tsconfig.json create mode 100644 types/jsreport-docx/tslint.json create mode 100644 types/jsreport-handlebars/index.d.ts create mode 100644 types/jsreport-handlebars/jsreport-handlebars-tests.ts create mode 100644 types/jsreport-handlebars/tsconfig.json create mode 100644 types/jsreport-handlebars/tslint.json create mode 100644 types/jsreport-pdf-utils/index.d.ts create mode 100644 types/jsreport-pdf-utils/jsreport-pdf-utils-tests.ts create mode 100644 types/jsreport-pdf-utils/tsconfig.json create mode 100644 types/jsreport-pdf-utils/tslint.json create mode 100644 types/jsreport-reports/index.d.ts create mode 100644 types/jsreport-reports/jsreport-reports-tests.ts create mode 100644 types/jsreport-reports/tsconfig.json create mode 100644 types/jsreport-reports/tslint.json create mode 100644 types/jsreport-scripts/index.d.ts create mode 100644 types/jsreport-scripts/jsreport-scripts-tests.ts create mode 100644 types/jsreport-scripts/tsconfig.json create mode 100644 types/jsreport-scripts/tslint.json create mode 100644 types/jsreport-templates/index.d.ts create mode 100644 types/jsreport-templates/jsreport-templates-tests.ts create mode 100644 types/jsreport-templates/tsconfig.json create mode 100644 types/jsreport-templates/tslint.json diff --git a/types/jsreport-assets/index.d.ts b/types/jsreport-assets/index.d.ts new file mode 100644 index 0000000000..aba2dc6327 --- /dev/null +++ b/types/jsreport-assets/index.d.ts @@ -0,0 +1,19 @@ +// Type definitions for jsreport-assets 1.7 +// Project: https://github.com/jsreport/jsreport-assets +// Definitions by: pofider +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +import { ExtensionDefinition } from 'jsreport-core'; + +declare namespace JsReportAssets { + interface Configuration { + allowedFiles?: string; + searchOnDiskIfNotFoundInStore?: boolean; + rootUrlForLinks?: string; + publicAccessEnabled?: boolean; + } +} + +declare function JsReportAssets(cfg?: JsReportAssets.Configuration): ExtensionDefinition; + +export = JsReportAssets; diff --git a/types/jsreport-assets/jsreport-assets-tests.ts b/types/jsreport-assets/jsreport-assets-tests.ts new file mode 100644 index 0000000000..8747d08598 --- /dev/null +++ b/types/jsreport-assets/jsreport-assets-tests.ts @@ -0,0 +1,11 @@ +import JsReport = require('jsreport-core'); +import JsReportAssets = require('jsreport-assets'); + +(async () => { + const jsreport = JsReport(); + jsreport.use(JsReportAssets({ + publicAccessEnabled: true + })); + await jsreport.init(); + await jsreport.close(); +})(); diff --git a/types/jsreport-assets/tsconfig.json b/types/jsreport-assets/tsconfig.json new file mode 100644 index 0000000000..dedbe94c65 --- /dev/null +++ b/types/jsreport-assets/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictFunctionTypes": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "jsreport-assets-tests.ts" + ] +} \ No newline at end of file diff --git a/types/jsreport-assets/tslint.json b/types/jsreport-assets/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/jsreport-assets/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/jsreport-client/index.d.ts b/types/jsreport-client/index.d.ts new file mode 100644 index 0000000000..dd71699f8e --- /dev/null +++ b/types/jsreport-client/index.d.ts @@ -0,0 +1,20 @@ +// Type definitions for jsreport-client 1.2 +// Project: https://github.com/jsreport/nodejs-client +// Definitions by: pofider +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +import jsreport = require('jsreport'); +import JsReport = require('jsreport-core'); +import { ServerResponse } from 'http'; + +declare module 'jsreport-core' { + interface ClientRenderResponse extends ServerResponse { + body(): Promise; + } + interface Client { + render(req: Partial, options?: object): Promise; + } +} + +declare function CreateJsReportClient(url: string, username?: string, password?: string): JsReport.Client; +export = CreateJsReportClient; diff --git a/types/jsreport-client/jsreport-client-tests.ts b/types/jsreport-client/jsreport-client-tests.ts new file mode 100644 index 0000000000..67cabb8da4 --- /dev/null +++ b/types/jsreport-client/jsreport-client-tests.ts @@ -0,0 +1,18 @@ +import JsReport = require('jsreport'); +import Client = require('jsreport-client'); + +(async () => { + const jsreport = JsReport(); + await jsreport.init(); + + const client = Client('http://localhost:5488'); + await client.render({ + template: { + recipe: 'html', + engine: 'none', + content: 'html' + } + }); + + await jsreport.close(); +})(); diff --git a/types/jsreport-client/tsconfig.json b/types/jsreport-client/tsconfig.json new file mode 100644 index 0000000000..7ac6c6f105 --- /dev/null +++ b/types/jsreport-client/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictFunctionTypes": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "jsreport-client-tests.ts" + ] +} \ No newline at end of file diff --git a/types/jsreport-client/tslint.json b/types/jsreport-client/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/jsreport-client/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/jsreport-core/index.d.ts b/types/jsreport-core/index.d.ts index 266aa50bf0..93d64d5b41 100644 --- a/types/jsreport-core/index.d.ts +++ b/types/jsreport-core/index.d.ts @@ -1,6 +1,7 @@ // Type definitions for jsreport-core 1.5 // Project: http://jsreport.net // Definitions by: taoqf +// pofider // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 @@ -20,9 +21,13 @@ declare namespace JsReport { recipe: Recipe | string; } + interface Options { + preview?: boolean; + } + interface Request { template: Partial