@capawesome/capacitor-pdf-generator 0.0.1

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.
Files changed (43) hide show
  1. package/CapawesomeCapacitorPdfGenerator.podspec +17 -0
  2. package/LICENSE +21 -0
  3. package/Package.swift +28 -0
  4. package/README.md +219 -0
  5. package/android/build.gradle +58 -0
  6. package/android/src/main/AndroidManifest.xml +2 -0
  7. package/android/src/main/java/android/print/PdfGeneratorPrintDriver.java +92 -0
  8. package/android/src/main/java/io/capawesome/capacitorjs/plugins/pdfgenerator/PdfGenerator.java +255 -0
  9. package/android/src/main/java/io/capawesome/capacitorjs/plugins/pdfgenerator/PdfGeneratorPlugin.java +88 -0
  10. package/android/src/main/java/io/capawesome/capacitorjs/plugins/pdfgenerator/classes/CustomException.java +20 -0
  11. package/android/src/main/java/io/capawesome/capacitorjs/plugins/pdfgenerator/classes/CustomExceptions.java +15 -0
  12. package/android/src/main/java/io/capawesome/capacitorjs/plugins/pdfgenerator/classes/options/GenerateFromHtmlOptions.java +45 -0
  13. package/android/src/main/java/io/capawesome/capacitorjs/plugins/pdfgenerator/classes/options/GenerateFromUrlOptions.java +30 -0
  14. package/android/src/main/java/io/capawesome/capacitorjs/plugins/pdfgenerator/classes/options/GenerateOptions.java +80 -0
  15. package/android/src/main/java/io/capawesome/capacitorjs/plugins/pdfgenerator/classes/results/GenerateResult.java +25 -0
  16. package/android/src/main/java/io/capawesome/capacitorjs/plugins/pdfgenerator/interfaces/Callback.java +5 -0
  17. package/android/src/main/java/io/capawesome/capacitorjs/plugins/pdfgenerator/interfaces/NonEmptyResultCallback.java +7 -0
  18. package/android/src/main/java/io/capawesome/capacitorjs/plugins/pdfgenerator/interfaces/Result.java +7 -0
  19. package/android/src/main/res/.gitkeep +0 -0
  20. package/dist/docs.json +401 -0
  21. package/dist/esm/definitions.d.ts +204 -0
  22. package/dist/esm/definitions.js +77 -0
  23. package/dist/esm/definitions.js.map +1 -0
  24. package/dist/esm/index.d.ts +4 -0
  25. package/dist/esm/index.js +7 -0
  26. package/dist/esm/index.js.map +1 -0
  27. package/dist/esm/web.d.ts +6 -0
  28. package/dist/esm/web.js +10 -0
  29. package/dist/esm/web.js.map +1 -0
  30. package/dist/plugin.cjs.js +101 -0
  31. package/dist/plugin.cjs.js.map +1 -0
  32. package/dist/plugin.js +104 -0
  33. package/dist/plugin.js.map +1 -0
  34. package/ios/Plugin/Classes/Options/GenerateFromHtmlOptions.swift +27 -0
  35. package/ios/Plugin/Classes/Options/GenerateFromUrlOptions.swift +21 -0
  36. package/ios/Plugin/Classes/Options/GenerateOptions.swift +47 -0
  37. package/ios/Plugin/Classes/Results/GenerateResult.swift +16 -0
  38. package/ios/Plugin/Enums/CustomError.swift +48 -0
  39. package/ios/Plugin/Info.plist +24 -0
  40. package/ios/Plugin/PdfGenerator.swift +171 -0
  41. package/ios/Plugin/PdfGeneratorPlugin.swift +63 -0
  42. package/ios/Plugin/Protocols/Result.swift +6 -0
  43. package/package.json +94 -0
package/dist/docs.json ADDED
@@ -0,0 +1,401 @@
1
+ {
2
+ "api": {
3
+ "name": "PdfGeneratorPlugin",
4
+ "slug": "pdfgeneratorplugin",
5
+ "docs": "",
6
+ "tags": [],
7
+ "methods": [
8
+ {
9
+ "name": "generateFromHtml",
10
+ "signature": "(options: GenerateFromHtmlOptions) => Promise<GenerateResult>",
11
+ "parameters": [
12
+ {
13
+ "name": "options",
14
+ "docs": "",
15
+ "type": "GenerateFromHtmlOptions"
16
+ }
17
+ ],
18
+ "returns": "Promise<GenerateResult>",
19
+ "tags": [
20
+ {
21
+ "name": "since",
22
+ "text": "0.1.0"
23
+ }
24
+ ],
25
+ "docs": "Generate a paginated PDF file from an HTML string.\n\nOnly available on Android and iOS.",
26
+ "complexTypes": [
27
+ "GenerateResult",
28
+ "GenerateFromHtmlOptions"
29
+ ],
30
+ "slug": "generatefromhtml"
31
+ },
32
+ {
33
+ "name": "generateFromUrl",
34
+ "signature": "(options: GenerateFromUrlOptions) => Promise<GenerateResult>",
35
+ "parameters": [
36
+ {
37
+ "name": "options",
38
+ "docs": "",
39
+ "type": "GenerateFromUrlOptions"
40
+ }
41
+ ],
42
+ "returns": "Promise<GenerateResult>",
43
+ "tags": [
44
+ {
45
+ "name": "since",
46
+ "text": "0.1.0"
47
+ }
48
+ ],
49
+ "docs": "Generate a paginated PDF file from a URL.\n\nOnly available on Android and iOS.",
50
+ "complexTypes": [
51
+ "GenerateResult",
52
+ "GenerateFromUrlOptions"
53
+ ],
54
+ "slug": "generatefromurl"
55
+ }
56
+ ],
57
+ "properties": []
58
+ },
59
+ "interfaces": [
60
+ {
61
+ "name": "GenerateResult",
62
+ "slug": "generateresult",
63
+ "docs": "",
64
+ "tags": [
65
+ {
66
+ "text": "0.1.0",
67
+ "name": "since"
68
+ }
69
+ ],
70
+ "methods": [],
71
+ "properties": [
72
+ {
73
+ "name": "path",
74
+ "tags": [
75
+ {
76
+ "text": "0.1.0",
77
+ "name": "since"
78
+ },
79
+ {
80
+ "text": "'file:///data/user/0/dev.robingenz.capacitor.plugindemo/cache/capawesome_capacitor_pdf_generator_documents/invoice.pdf'",
81
+ "name": "example"
82
+ }
83
+ ],
84
+ "docs": "The path of the generated PDF file.\n\nThe file is stored in the cache directory and deleted on the next app\nlaunch. Move it to a permanent location if you want to keep it.",
85
+ "complexTypes": [],
86
+ "type": "string"
87
+ }
88
+ ]
89
+ },
90
+ {
91
+ "name": "GenerateFromHtmlOptions",
92
+ "slug": "generatefromhtmloptions",
93
+ "docs": "",
94
+ "tags": [
95
+ {
96
+ "text": "0.1.0",
97
+ "name": "since"
98
+ }
99
+ ],
100
+ "methods": [],
101
+ "properties": [
102
+ {
103
+ "name": "baseUrl",
104
+ "tags": [
105
+ {
106
+ "text": "0.1.0",
107
+ "name": "since"
108
+ },
109
+ {
110
+ "text": "'https://capawesome.io/'",
111
+ "name": "example"
112
+ }
113
+ ],
114
+ "docs": "The base URL to resolve relative resources (e.g. images, stylesheets)\nin the HTML content against.",
115
+ "complexTypes": [],
116
+ "type": "string | undefined"
117
+ },
118
+ {
119
+ "name": "fileName",
120
+ "tags": [
121
+ {
122
+ "text": "0.1.0",
123
+ "name": "since"
124
+ },
125
+ {
126
+ "text": "A randomly generated file name.",
127
+ "name": "default"
128
+ },
129
+ {
130
+ "text": "'invoice.pdf'",
131
+ "name": "example"
132
+ }
133
+ ],
134
+ "docs": "The name of the generated PDF file.\n\nIf the name does not end with `.pdf`, the extension is appended.",
135
+ "complexTypes": [],
136
+ "type": "string | undefined"
137
+ },
138
+ {
139
+ "name": "html",
140
+ "tags": [
141
+ {
142
+ "text": "0.1.0",
143
+ "name": "since"
144
+ },
145
+ {
146
+ "text": "'<h1>Hello World</h1>'",
147
+ "name": "example"
148
+ }
149
+ ],
150
+ "docs": "The HTML content to generate the PDF file from.",
151
+ "complexTypes": [],
152
+ "type": "string"
153
+ },
154
+ {
155
+ "name": "orientation",
156
+ "tags": [
157
+ {
158
+ "text": "0.1.0",
159
+ "name": "since"
160
+ },
161
+ {
162
+ "text": "Orientation.Portrait",
163
+ "name": "default"
164
+ }
165
+ ],
166
+ "docs": "The page orientation of the generated PDF file.",
167
+ "complexTypes": [
168
+ "Orientation"
169
+ ],
170
+ "type": "Orientation"
171
+ },
172
+ {
173
+ "name": "pageSize",
174
+ "tags": [
175
+ {
176
+ "text": "0.1.0",
177
+ "name": "since"
178
+ },
179
+ {
180
+ "text": "PageSize.A4",
181
+ "name": "default"
182
+ }
183
+ ],
184
+ "docs": "The page size of the generated PDF file.",
185
+ "complexTypes": [
186
+ "PageSize"
187
+ ],
188
+ "type": "PageSize"
189
+ },
190
+ {
191
+ "name": "timeout",
192
+ "tags": [
193
+ {
194
+ "text": "0.1.0",
195
+ "name": "since"
196
+ },
197
+ {
198
+ "text": "30000",
199
+ "name": "default"
200
+ },
201
+ {
202
+ "text": "10000",
203
+ "name": "example"
204
+ }
205
+ ],
206
+ "docs": "The maximum time in milliseconds to wait for the PDF generation\nto complete before the call is rejected with the `TIMEOUT` error code.",
207
+ "complexTypes": [],
208
+ "type": "number | undefined"
209
+ }
210
+ ]
211
+ },
212
+ {
213
+ "name": "GenerateFromUrlOptions",
214
+ "slug": "generatefromurloptions",
215
+ "docs": "",
216
+ "tags": [
217
+ {
218
+ "text": "0.1.0",
219
+ "name": "since"
220
+ }
221
+ ],
222
+ "methods": [],
223
+ "properties": [
224
+ {
225
+ "name": "fileName",
226
+ "tags": [
227
+ {
228
+ "text": "0.1.0",
229
+ "name": "since"
230
+ },
231
+ {
232
+ "text": "A randomly generated file name.",
233
+ "name": "default"
234
+ },
235
+ {
236
+ "text": "'invoice.pdf'",
237
+ "name": "example"
238
+ }
239
+ ],
240
+ "docs": "The name of the generated PDF file.\n\nIf the name does not end with `.pdf`, the extension is appended.",
241
+ "complexTypes": [],
242
+ "type": "string | undefined"
243
+ },
244
+ {
245
+ "name": "orientation",
246
+ "tags": [
247
+ {
248
+ "text": "0.1.0",
249
+ "name": "since"
250
+ },
251
+ {
252
+ "text": "Orientation.Portrait",
253
+ "name": "default"
254
+ }
255
+ ],
256
+ "docs": "The page orientation of the generated PDF file.",
257
+ "complexTypes": [
258
+ "Orientation"
259
+ ],
260
+ "type": "Orientation"
261
+ },
262
+ {
263
+ "name": "pageSize",
264
+ "tags": [
265
+ {
266
+ "text": "0.1.0",
267
+ "name": "since"
268
+ },
269
+ {
270
+ "text": "PageSize.A4",
271
+ "name": "default"
272
+ }
273
+ ],
274
+ "docs": "The page size of the generated PDF file.",
275
+ "complexTypes": [
276
+ "PageSize"
277
+ ],
278
+ "type": "PageSize"
279
+ },
280
+ {
281
+ "name": "timeout",
282
+ "tags": [
283
+ {
284
+ "text": "0.1.0",
285
+ "name": "since"
286
+ },
287
+ {
288
+ "text": "30000",
289
+ "name": "default"
290
+ },
291
+ {
292
+ "text": "10000",
293
+ "name": "example"
294
+ }
295
+ ],
296
+ "docs": "The maximum time in milliseconds to wait for the PDF generation\nto complete before the call is rejected with the `TIMEOUT` error code.",
297
+ "complexTypes": [],
298
+ "type": "number | undefined"
299
+ },
300
+ {
301
+ "name": "url",
302
+ "tags": [
303
+ {
304
+ "text": "0.1.0",
305
+ "name": "since"
306
+ },
307
+ {
308
+ "text": "'https://capawesome.io/'",
309
+ "name": "example"
310
+ }
311
+ ],
312
+ "docs": "The URL of the web page to generate the PDF file from.",
313
+ "complexTypes": [],
314
+ "type": "string"
315
+ }
316
+ ]
317
+ }
318
+ ],
319
+ "enums": [
320
+ {
321
+ "name": "Orientation",
322
+ "slug": "orientation",
323
+ "members": [
324
+ {
325
+ "name": "Landscape",
326
+ "value": "'LANDSCAPE'",
327
+ "tags": [
328
+ {
329
+ "text": "0.1.0",
330
+ "name": "since"
331
+ }
332
+ ],
333
+ "docs": "Landscape orientation."
334
+ },
335
+ {
336
+ "name": "Portrait",
337
+ "value": "'PORTRAIT'",
338
+ "tags": [
339
+ {
340
+ "text": "0.1.0",
341
+ "name": "since"
342
+ }
343
+ ],
344
+ "docs": "Portrait orientation."
345
+ }
346
+ ]
347
+ },
348
+ {
349
+ "name": "PageSize",
350
+ "slug": "pagesize",
351
+ "members": [
352
+ {
353
+ "name": "A3",
354
+ "value": "'A3'",
355
+ "tags": [
356
+ {
357
+ "text": "0.1.0",
358
+ "name": "since"
359
+ }
360
+ ],
361
+ "docs": "ISO A3 (297 x 420 mm)."
362
+ },
363
+ {
364
+ "name": "A4",
365
+ "value": "'A4'",
366
+ "tags": [
367
+ {
368
+ "text": "0.1.0",
369
+ "name": "since"
370
+ }
371
+ ],
372
+ "docs": "ISO A4 (210 x 297 mm)."
373
+ },
374
+ {
375
+ "name": "A5",
376
+ "value": "'A5'",
377
+ "tags": [
378
+ {
379
+ "text": "0.1.0",
380
+ "name": "since"
381
+ }
382
+ ],
383
+ "docs": "ISO A5 (148 x 210 mm)."
384
+ },
385
+ {
386
+ "name": "Letter",
387
+ "value": "'LETTER'",
388
+ "tags": [
389
+ {
390
+ "text": "0.1.0",
391
+ "name": "since"
392
+ }
393
+ ],
394
+ "docs": "US Letter (8.5 x 11 in)."
395
+ }
396
+ ]
397
+ }
398
+ ],
399
+ "typeAliases": [],
400
+ "pluginConfigs": []
401
+ }
@@ -0,0 +1,204 @@
1
+ export interface PdfGeneratorPlugin {
2
+ /**
3
+ * Generate a paginated PDF file from an HTML string.
4
+ *
5
+ * Only available on Android and iOS.
6
+ *
7
+ * @since 0.1.0
8
+ */
9
+ generateFromHtml(options: GenerateFromHtmlOptions): Promise<GenerateResult>;
10
+ /**
11
+ * Generate a paginated PDF file from a URL.
12
+ *
13
+ * Only available on Android and iOS.
14
+ *
15
+ * @since 0.1.0
16
+ */
17
+ generateFromUrl(options: GenerateFromUrlOptions): Promise<GenerateResult>;
18
+ }
19
+ /**
20
+ * @since 0.1.0
21
+ */
22
+ export interface GenerateFromHtmlOptions {
23
+ /**
24
+ * The base URL to resolve relative resources (e.g. images, stylesheets)
25
+ * in the HTML content against.
26
+ *
27
+ * @since 0.1.0
28
+ * @example 'https://capawesome.io/'
29
+ */
30
+ baseUrl?: string;
31
+ /**
32
+ * The name of the generated PDF file.
33
+ *
34
+ * If the name does not end with `.pdf`, the extension is appended.
35
+ *
36
+ * @since 0.1.0
37
+ * @default A randomly generated file name.
38
+ * @example 'invoice.pdf'
39
+ */
40
+ fileName?: string;
41
+ /**
42
+ * The HTML content to generate the PDF file from.
43
+ *
44
+ * @since 0.1.0
45
+ * @example '<h1>Hello World</h1>'
46
+ */
47
+ html: string;
48
+ /**
49
+ * The page orientation of the generated PDF file.
50
+ *
51
+ * @since 0.1.0
52
+ * @default Orientation.Portrait
53
+ */
54
+ orientation?: Orientation;
55
+ /**
56
+ * The page size of the generated PDF file.
57
+ *
58
+ * @since 0.1.0
59
+ * @default PageSize.A4
60
+ */
61
+ pageSize?: PageSize;
62
+ /**
63
+ * The maximum time in milliseconds to wait for the PDF generation
64
+ * to complete before the call is rejected with the `TIMEOUT` error code.
65
+ *
66
+ * @since 0.1.0
67
+ * @default 30000
68
+ * @example 10000
69
+ */
70
+ timeout?: number;
71
+ }
72
+ /**
73
+ * @since 0.1.0
74
+ */
75
+ export interface GenerateFromUrlOptions {
76
+ /**
77
+ * The name of the generated PDF file.
78
+ *
79
+ * If the name does not end with `.pdf`, the extension is appended.
80
+ *
81
+ * @since 0.1.0
82
+ * @default A randomly generated file name.
83
+ * @example 'invoice.pdf'
84
+ */
85
+ fileName?: string;
86
+ /**
87
+ * The page orientation of the generated PDF file.
88
+ *
89
+ * @since 0.1.0
90
+ * @default Orientation.Portrait
91
+ */
92
+ orientation?: Orientation;
93
+ /**
94
+ * The page size of the generated PDF file.
95
+ *
96
+ * @since 0.1.0
97
+ * @default PageSize.A4
98
+ */
99
+ pageSize?: PageSize;
100
+ /**
101
+ * The maximum time in milliseconds to wait for the PDF generation
102
+ * to complete before the call is rejected with the `TIMEOUT` error code.
103
+ *
104
+ * @since 0.1.0
105
+ * @default 30000
106
+ * @example 10000
107
+ */
108
+ timeout?: number;
109
+ /**
110
+ * The URL of the web page to generate the PDF file from.
111
+ *
112
+ * @since 0.1.0
113
+ * @example 'https://capawesome.io/'
114
+ */
115
+ url: string;
116
+ }
117
+ /**
118
+ * @since 0.1.0
119
+ */
120
+ export interface GenerateResult {
121
+ /**
122
+ * The path of the generated PDF file.
123
+ *
124
+ * The file is stored in the cache directory and deleted on the next app
125
+ * launch. Move it to a permanent location if you want to keep it.
126
+ *
127
+ * @since 0.1.0
128
+ * @example 'file:///data/user/0/dev.robingenz.capacitor.plugindemo/cache/capawesome_capacitor_pdf_generator_documents/invoice.pdf'
129
+ */
130
+ path: string;
131
+ }
132
+ /**
133
+ * The page orientation of the generated PDF file.
134
+ *
135
+ * @since 0.1.0
136
+ */
137
+ export declare enum Orientation {
138
+ /**
139
+ * Landscape orientation.
140
+ *
141
+ * @since 0.1.0
142
+ */
143
+ Landscape = "LANDSCAPE",
144
+ /**
145
+ * Portrait orientation.
146
+ *
147
+ * @since 0.1.0
148
+ */
149
+ Portrait = "PORTRAIT"
150
+ }
151
+ /**
152
+ * The page size of the generated PDF file.
153
+ *
154
+ * @since 0.1.0
155
+ */
156
+ export declare enum PageSize {
157
+ /**
158
+ * ISO A3 (297 x 420 mm).
159
+ *
160
+ * @since 0.1.0
161
+ */
162
+ A3 = "A3",
163
+ /**
164
+ * ISO A4 (210 x 297 mm).
165
+ *
166
+ * @since 0.1.0
167
+ */
168
+ A4 = "A4",
169
+ /**
170
+ * ISO A5 (148 x 210 mm).
171
+ *
172
+ * @since 0.1.0
173
+ */
174
+ A5 = "A5",
175
+ /**
176
+ * US Letter (8.5 x 11 in).
177
+ *
178
+ * @since 0.1.0
179
+ */
180
+ Letter = "LETTER"
181
+ }
182
+ /**
183
+ * @since 0.1.0
184
+ */
185
+ export declare enum ErrorCode {
186
+ /**
187
+ * The PDF file could not be generated.
188
+ *
189
+ * @since 0.1.0
190
+ */
191
+ GenerationFailed = "GENERATION_FAILED",
192
+ /**
193
+ * The HTML content or URL could not be loaded.
194
+ *
195
+ * @since 0.1.0
196
+ */
197
+ LoadFailed = "LOAD_FAILED",
198
+ /**
199
+ * The PDF generation timed out.
200
+ *
201
+ * @since 0.1.0
202
+ */
203
+ Timeout = "TIMEOUT"
204
+ }
@@ -0,0 +1,77 @@
1
+ /**
2
+ * The page orientation of the generated PDF file.
3
+ *
4
+ * @since 0.1.0
5
+ */
6
+ export var Orientation;
7
+ (function (Orientation) {
8
+ /**
9
+ * Landscape orientation.
10
+ *
11
+ * @since 0.1.0
12
+ */
13
+ Orientation["Landscape"] = "LANDSCAPE";
14
+ /**
15
+ * Portrait orientation.
16
+ *
17
+ * @since 0.1.0
18
+ */
19
+ Orientation["Portrait"] = "PORTRAIT";
20
+ })(Orientation || (Orientation = {}));
21
+ /**
22
+ * The page size of the generated PDF file.
23
+ *
24
+ * @since 0.1.0
25
+ */
26
+ export var PageSize;
27
+ (function (PageSize) {
28
+ /**
29
+ * ISO A3 (297 x 420 mm).
30
+ *
31
+ * @since 0.1.0
32
+ */
33
+ PageSize["A3"] = "A3";
34
+ /**
35
+ * ISO A4 (210 x 297 mm).
36
+ *
37
+ * @since 0.1.0
38
+ */
39
+ PageSize["A4"] = "A4";
40
+ /**
41
+ * ISO A5 (148 x 210 mm).
42
+ *
43
+ * @since 0.1.0
44
+ */
45
+ PageSize["A5"] = "A5";
46
+ /**
47
+ * US Letter (8.5 x 11 in).
48
+ *
49
+ * @since 0.1.0
50
+ */
51
+ PageSize["Letter"] = "LETTER";
52
+ })(PageSize || (PageSize = {}));
53
+ /**
54
+ * @since 0.1.0
55
+ */
56
+ export var ErrorCode;
57
+ (function (ErrorCode) {
58
+ /**
59
+ * The PDF file could not be generated.
60
+ *
61
+ * @since 0.1.0
62
+ */
63
+ ErrorCode["GenerationFailed"] = "GENERATION_FAILED";
64
+ /**
65
+ * The HTML content or URL could not be loaded.
66
+ *
67
+ * @since 0.1.0
68
+ */
69
+ ErrorCode["LoadFailed"] = "LOAD_FAILED";
70
+ /**
71
+ * The PDF generation timed out.
72
+ *
73
+ * @since 0.1.0
74
+ */
75
+ ErrorCode["Timeout"] = "TIMEOUT";
76
+ })(ErrorCode || (ErrorCode = {}));
77
+ //# sourceMappingURL=definitions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/definitions.ts"],"names":[],"mappings":"AAuIA;;;;GAIG;AACH,MAAM,CAAN,IAAY,WAaX;AAbD,WAAY,WAAW;IACrB;;;;OAIG;IACH,sCAAuB,CAAA;IACvB;;;;OAIG;IACH,oCAAqB,CAAA;AACvB,CAAC,EAbW,WAAW,KAAX,WAAW,QAatB;AAED;;;;GAIG;AACH,MAAM,CAAN,IAAY,QAyBX;AAzBD,WAAY,QAAQ;IAClB;;;;OAIG;IACH,qBAAS,CAAA;IACT;;;;OAIG;IACH,qBAAS,CAAA;IACT;;;;OAIG;IACH,qBAAS,CAAA;IACT;;;;OAIG;IACH,6BAAiB,CAAA;AACnB,CAAC,EAzBW,QAAQ,KAAR,QAAQ,QAyBnB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,SAmBX;AAnBD,WAAY,SAAS;IACnB;;;;OAIG;IACH,mDAAsC,CAAA;IACtC;;;;OAIG;IACH,uCAA0B,CAAA;IAC1B;;;;OAIG;IACH,gCAAmB,CAAA;AACrB,CAAC,EAnBW,SAAS,KAAT,SAAS,QAmBpB","sourcesContent":["export interface PdfGeneratorPlugin {\n /**\n * Generate a paginated PDF file from an HTML string.\n *\n * Only available on Android and iOS.\n *\n * @since 0.1.0\n */\n generateFromHtml(options: GenerateFromHtmlOptions): Promise<GenerateResult>;\n /**\n * Generate a paginated PDF file from a URL.\n *\n * Only available on Android and iOS.\n *\n * @since 0.1.0\n */\n generateFromUrl(options: GenerateFromUrlOptions): Promise<GenerateResult>;\n}\n\n/**\n * @since 0.1.0\n */\nexport interface GenerateFromHtmlOptions {\n /**\n * The base URL to resolve relative resources (e.g. images, stylesheets)\n * in the HTML content against.\n *\n * @since 0.1.0\n * @example 'https://capawesome.io/'\n */\n baseUrl?: string;\n /**\n * The name of the generated PDF file.\n *\n * If the name does not end with `.pdf`, the extension is appended.\n *\n * @since 0.1.0\n * @default A randomly generated file name.\n * @example 'invoice.pdf'\n */\n fileName?: string;\n /**\n * The HTML content to generate the PDF file from.\n *\n * @since 0.1.0\n * @example '<h1>Hello World</h1>'\n */\n html: string;\n /**\n * The page orientation of the generated PDF file.\n *\n * @since 0.1.0\n * @default Orientation.Portrait\n */\n orientation?: Orientation;\n /**\n * The page size of the generated PDF file.\n *\n * @since 0.1.0\n * @default PageSize.A4\n */\n pageSize?: PageSize;\n /**\n * The maximum time in milliseconds to wait for the PDF generation\n * to complete before the call is rejected with the `TIMEOUT` error code.\n *\n * @since 0.1.0\n * @default 30000\n * @example 10000\n */\n timeout?: number;\n}\n\n/**\n * @since 0.1.0\n */\nexport interface GenerateFromUrlOptions {\n /**\n * The name of the generated PDF file.\n *\n * If the name does not end with `.pdf`, the extension is appended.\n *\n * @since 0.1.0\n * @default A randomly generated file name.\n * @example 'invoice.pdf'\n */\n fileName?: string;\n /**\n * The page orientation of the generated PDF file.\n *\n * @since 0.1.0\n * @default Orientation.Portrait\n */\n orientation?: Orientation;\n /**\n * The page size of the generated PDF file.\n *\n * @since 0.1.0\n * @default PageSize.A4\n */\n pageSize?: PageSize;\n /**\n * The maximum time in milliseconds to wait for the PDF generation\n * to complete before the call is rejected with the `TIMEOUT` error code.\n *\n * @since 0.1.0\n * @default 30000\n * @example 10000\n */\n timeout?: number;\n /**\n * The URL of the web page to generate the PDF file from.\n *\n * @since 0.1.0\n * @example 'https://capawesome.io/'\n */\n url: string;\n}\n\n/**\n * @since 0.1.0\n */\nexport interface GenerateResult {\n /**\n * The path of the generated PDF file.\n *\n * The file is stored in the cache directory and deleted on the next app\n * launch. Move it to a permanent location if you want to keep it.\n *\n * @since 0.1.0\n * @example 'file:///data/user/0/dev.robingenz.capacitor.plugindemo/cache/capawesome_capacitor_pdf_generator_documents/invoice.pdf'\n */\n path: string;\n}\n\n/**\n * The page orientation of the generated PDF file.\n *\n * @since 0.1.0\n */\nexport enum Orientation {\n /**\n * Landscape orientation.\n *\n * @since 0.1.0\n */\n Landscape = 'LANDSCAPE',\n /**\n * Portrait orientation.\n *\n * @since 0.1.0\n */\n Portrait = 'PORTRAIT',\n}\n\n/**\n * The page size of the generated PDF file.\n *\n * @since 0.1.0\n */\nexport enum PageSize {\n /**\n * ISO A3 (297 x 420 mm).\n *\n * @since 0.1.0\n */\n A3 = 'A3',\n /**\n * ISO A4 (210 x 297 mm).\n *\n * @since 0.1.0\n */\n A4 = 'A4',\n /**\n * ISO A5 (148 x 210 mm).\n *\n * @since 0.1.0\n */\n A5 = 'A5',\n /**\n * US Letter (8.5 x 11 in).\n *\n * @since 0.1.0\n */\n Letter = 'LETTER',\n}\n\n/**\n * @since 0.1.0\n */\nexport enum ErrorCode {\n /**\n * The PDF file could not be generated.\n *\n * @since 0.1.0\n */\n GenerationFailed = 'GENERATION_FAILED',\n /**\n * The HTML content or URL could not be loaded.\n *\n * @since 0.1.0\n */\n LoadFailed = 'LOAD_FAILED',\n /**\n * The PDF generation timed out.\n *\n * @since 0.1.0\n */\n Timeout = 'TIMEOUT',\n}\n"]}
@@ -0,0 +1,4 @@
1
+ import type { PdfGeneratorPlugin } from './definitions';
2
+ declare const PdfGenerator: PdfGeneratorPlugin;
3
+ export * from './definitions';
4
+ export { PdfGenerator };
@@ -0,0 +1,7 @@
1
+ import { registerPlugin } from '@capacitor/core';
2
+ const PdfGenerator = registerPlugin('PdfGenerator', {
3
+ web: () => import('./web').then(m => new m.PdfGeneratorWeb()),
4
+ });
5
+ export * from './definitions';
6
+ export { PdfGenerator };
7
+ //# sourceMappingURL=index.js.map