@webority-technologies/mobile-ui 0.0.5 → 0.0.7

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.
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.DocumentViewer = void 0;
7
+ var _mobileCore = require("@webority-technologies/mobile-core");
8
+ var _react = require("react");
9
+ var _reactNative = require("react-native");
10
+ var _reactNativePdf = _interopRequireDefault(require("react-native-pdf"));
11
+ var _index = require("../Spinner/index.js");
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
+ const toError = value => value instanceof Error ? value : new Error(String(value));
15
+
16
+ /**
17
+ * Renders a PDF only — the WebView fallback consumer apps use for non-PDF
18
+ * office documents is a distinct rendering strategy and stays app-side.
19
+ */
20
+ const DocumentViewer = ({
21
+ source,
22
+ trustAllCerts = false,
23
+ onLoadComplete,
24
+ onPageChanged,
25
+ onError,
26
+ loadingIndicator,
27
+ style,
28
+ testID,
29
+ accessibilityLabel
30
+ }) => {
31
+ const renderActivityIndicator = (0, _react.useCallback)(() => loadingIndicator ? loadingIndicator() : /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.Spinner, {
32
+ size: "lg"
33
+ }), [loadingIndicator]);
34
+ const handleError = (0, _react.useCallback)(error => {
35
+ const err = toError(error);
36
+ _mobileCore.Logger.error('[@webority-technologies/mobile-ui] DocumentViewer failed to load.', err);
37
+ onError?.(err);
38
+ }, [onError]);
39
+ const handleLoadComplete = (0, _react.useCallback)(numberOfPages => onLoadComplete?.(numberOfPages), [onLoadComplete]);
40
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
41
+ style: [styles.root, style],
42
+ testID: testID,
43
+ accessible: accessibilityLabel !== undefined,
44
+ accessibilityLabel: accessibilityLabel,
45
+ accessibilityRole: "none",
46
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativePdf.default, {
47
+ source: source,
48
+ trustAllCerts: trustAllCerts,
49
+ style: styles.pdf,
50
+ renderActivityIndicator: renderActivityIndicator,
51
+ onLoadComplete: handleLoadComplete,
52
+ onPageChanged: onPageChanged,
53
+ onError: handleError
54
+ })
55
+ });
56
+ };
57
+ exports.DocumentViewer = DocumentViewer;
58
+ DocumentViewer.displayName = 'DocumentViewer';
59
+ const styles = _reactNative.StyleSheet.create({
60
+ root: {
61
+ flex: 1
62
+ },
63
+ pdf: {
64
+ flex: 1,
65
+ width: '100%',
66
+ height: '100%'
67
+ }
68
+ });
69
+ var _default = exports.default = DocumentViewer;
70
+ //# sourceMappingURL=DocumentViewer.js.map
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "DocumentViewer", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _DocumentViewer.DocumentViewer;
10
+ }
11
+ });
12
+ var _DocumentViewer = require("./DocumentViewer.js");
13
+ //# sourceMappingURL=index.js.map
@@ -132,7 +132,7 @@ Object.defineProperty(exports, "Confetti", {
132
132
  Object.defineProperty(exports, "DEFAULT_CALLING_CODES", {
133
133
  enumerable: true,
134
134
  get: function () {
135
- return _index42.DEFAULT_CALLING_CODES;
135
+ return _index43.DEFAULT_CALLING_CODES;
136
136
  }
137
137
  });
138
138
  Object.defineProperty(exports, "DatePicker", {
@@ -165,184 +165,190 @@ Object.defineProperty(exports, "Divider", {
165
165
  return _index22.Divider;
166
166
  }
167
167
  });
168
+ Object.defineProperty(exports, "DocumentViewer", {
169
+ enumerable: true,
170
+ get: function () {
171
+ return _index23.DocumentViewer;
172
+ }
173
+ });
168
174
  Object.defineProperty(exports, "Drawer", {
169
175
  enumerable: true,
170
176
  get: function () {
171
- return _index23.Drawer;
177
+ return _index24.Drawer;
172
178
  }
173
179
  });
174
180
  Object.defineProperty(exports, "EmptyState", {
175
181
  enumerable: true,
176
182
  get: function () {
177
- return _index24.EmptyState;
183
+ return _index25.EmptyState;
178
184
  }
179
185
  });
180
186
  Object.defineProperty(exports, "ErrorBoundary", {
181
187
  enumerable: true,
182
188
  get: function () {
183
- return _index25.ErrorBoundary;
189
+ return _index26.ErrorBoundary;
184
190
  }
185
191
  });
186
192
  Object.defineProperty(exports, "FilePicker", {
187
193
  enumerable: true,
188
194
  get: function () {
189
- return _index26.FilePicker;
195
+ return _index27.FilePicker;
190
196
  }
191
197
  });
192
198
  Object.defineProperty(exports, "FloatingActionButton", {
193
199
  enumerable: true,
194
200
  get: function () {
195
- return _index27.FloatingActionButton;
201
+ return _index28.FloatingActionButton;
196
202
  }
197
203
  });
198
204
  Object.defineProperty(exports, "FloatingActionButtonGroup", {
199
205
  enumerable: true,
200
206
  get: function () {
201
- return _index27.FloatingActionButtonGroup;
207
+ return _index28.FloatingActionButtonGroup;
202
208
  }
203
209
  });
204
210
  Object.defineProperty(exports, "ForceUpdateDialog", {
205
211
  enumerable: true,
206
212
  get: function () {
207
- return _index28.ForceUpdateDialog;
213
+ return _index29.ForceUpdateDialog;
208
214
  }
209
215
  });
210
216
  Object.defineProperty(exports, "FormField", {
211
217
  enumerable: true,
212
218
  get: function () {
213
- return _index29.FormField;
219
+ return _index30.FormField;
214
220
  }
215
221
  });
216
222
  Object.defineProperty(exports, "IconButton", {
217
223
  enumerable: true,
218
224
  get: function () {
219
- return _index30.IconButton;
225
+ return _index31.IconButton;
220
226
  }
221
227
  });
222
228
  Object.defineProperty(exports, "ImageGallery", {
223
229
  enumerable: true,
224
230
  get: function () {
225
- return _index31.ImageGallery;
231
+ return _index32.ImageGallery;
226
232
  }
227
233
  });
228
234
  Object.defineProperty(exports, "InlineSelect", {
229
235
  enumerable: true,
230
236
  get: function () {
231
- return _index32.InlineSelect;
237
+ return _index33.InlineSelect;
232
238
  }
233
239
  });
234
240
  Object.defineProperty(exports, "Input", {
235
241
  enumerable: true,
236
242
  get: function () {
237
- return _index33.Input;
243
+ return _index34.Input;
238
244
  }
239
245
  });
240
246
  Object.defineProperty(exports, "KeyboardAwareScrollView", {
241
247
  enumerable: true,
242
248
  get: function () {
243
- return _index34.KeyboardAwareScrollView;
249
+ return _index35.KeyboardAwareScrollView;
244
250
  }
245
251
  });
246
252
  Object.defineProperty(exports, "KeyboardToolbar", {
247
253
  enumerable: true,
248
254
  get: function () {
249
- return _index35.KeyboardToolbar;
255
+ return _index36.KeyboardToolbar;
250
256
  }
251
257
  });
252
258
  Object.defineProperty(exports, "ListItem", {
253
259
  enumerable: true,
254
260
  get: function () {
255
- return _index36.ListItem;
261
+ return _index37.ListItem;
256
262
  }
257
263
  });
258
264
  Object.defineProperty(exports, "LoaderOverlay", {
259
265
  enumerable: true,
260
266
  get: function () {
261
- return _index37.LoaderOverlay;
267
+ return _index38.LoaderOverlay;
262
268
  }
263
269
  });
264
270
  Object.defineProperty(exports, "MODAL_DISMISS_GRACE_MS", {
265
271
  enumerable: true,
266
272
  get: function () {
267
- return _index39.MODAL_DISMISS_GRACE_MS;
273
+ return _index40.MODAL_DISMISS_GRACE_MS;
268
274
  }
269
275
  });
270
276
  Object.defineProperty(exports, "Markdown", {
271
277
  enumerable: true,
272
278
  get: function () {
273
- return _index38.Markdown;
279
+ return _index39.Markdown;
274
280
  }
275
281
  });
276
282
  Object.defineProperty(exports, "Modal", {
277
283
  enumerable: true,
278
284
  get: function () {
279
- return _index39.Modal;
285
+ return _index40.Modal;
280
286
  }
281
287
  });
282
288
  Object.defineProperty(exports, "NumberInput", {
283
289
  enumerable: true,
284
290
  get: function () {
285
- return _index40.NumberInput;
291
+ return _index41.NumberInput;
286
292
  }
287
293
  });
288
294
  Object.defineProperty(exports, "OTPInput", {
289
295
  enumerable: true,
290
296
  get: function () {
291
- return _index41.OTPInput;
297
+ return _index42.OTPInput;
292
298
  }
293
299
  });
294
300
  Object.defineProperty(exports, "PhoneNumberInput", {
295
301
  enumerable: true,
296
302
  get: function () {
297
- return _index42.PhoneNumberInput;
303
+ return _index43.PhoneNumberInput;
298
304
  }
299
305
  });
300
306
  Object.defineProperty(exports, "PickerTrigger", {
301
307
  enumerable: true,
302
308
  get: function () {
303
- return _index43.PickerTrigger;
309
+ return _index44.PickerTrigger;
304
310
  }
305
311
  });
306
312
  Object.defineProperty(exports, "ProgressBar", {
307
313
  enumerable: true,
308
314
  get: function () {
309
- return _index44.ProgressBar;
315
+ return _index45.ProgressBar;
310
316
  }
311
317
  });
312
318
  Object.defineProperty(exports, "Radio", {
313
319
  enumerable: true,
314
320
  get: function () {
315
- return _index45.Radio;
321
+ return _index46.Radio;
316
322
  }
317
323
  });
318
324
  Object.defineProperty(exports, "RadioDot", {
319
325
  enumerable: true,
320
326
  get: function () {
321
- return _index45.RadioDot;
327
+ return _index46.RadioDot;
322
328
  }
323
329
  });
324
330
  Object.defineProperty(exports, "RadioGroup", {
325
331
  enumerable: true,
326
332
  get: function () {
327
- return _index45.RadioGroup;
333
+ return _index46.RadioGroup;
328
334
  }
329
335
  });
330
336
  Object.defineProperty(exports, "Rating", {
331
337
  enumerable: true,
332
338
  get: function () {
333
- return _index46.Rating;
339
+ return _index47.Rating;
334
340
  }
335
341
  });
336
342
  Object.defineProperty(exports, "Repeater", {
337
343
  enumerable: true,
338
344
  get: function () {
339
- return _index47.Repeater;
345
+ return _index48.Repeater;
340
346
  }
341
347
  });
342
348
  Object.defineProperty(exports, "RichTextEditor", {
343
349
  enumerable: true,
344
350
  get: function () {
345
- return _index48.RichTextEditor;
351
+ return _index49.RichTextEditor;
346
352
  }
347
353
  });
348
354
  Object.defineProperty(exports, "Row", {
@@ -354,79 +360,79 @@ Object.defineProperty(exports, "Row", {
354
360
  Object.defineProperty(exports, "SearchBar", {
355
361
  enumerable: true,
356
362
  get: function () {
357
- return _index49.SearchBar;
363
+ return _index50.SearchBar;
358
364
  }
359
365
  });
360
366
  Object.defineProperty(exports, "SegmentedControl", {
361
367
  enumerable: true,
362
368
  get: function () {
363
- return _index50.SegmentedControl;
369
+ return _index51.SegmentedControl;
364
370
  }
365
371
  });
366
372
  Object.defineProperty(exports, "Select", {
367
373
  enumerable: true,
368
374
  get: function () {
369
- return _index51.Select;
375
+ return _index52.Select;
370
376
  }
371
377
  });
372
378
  Object.defineProperty(exports, "Skeleton", {
373
379
  enumerable: true,
374
380
  get: function () {
375
- return _index52.Skeleton;
381
+ return _index53.Skeleton;
376
382
  }
377
383
  });
378
384
  Object.defineProperty(exports, "SkeletonCircle", {
379
385
  enumerable: true,
380
386
  get: function () {
381
- return _index52.SkeletonCircle;
387
+ return _index53.SkeletonCircle;
382
388
  }
383
389
  });
384
390
  Object.defineProperty(exports, "SkeletonClockProvider", {
385
391
  enumerable: true,
386
392
  get: function () {
387
- return _index52.SkeletonClockProvider;
393
+ return _index53.SkeletonClockProvider;
388
394
  }
389
395
  });
390
396
  Object.defineProperty(exports, "SkeletonContent", {
391
397
  enumerable: true,
392
398
  get: function () {
393
- return _index52.SkeletonContent;
399
+ return _index53.SkeletonContent;
394
400
  }
395
401
  });
396
402
  Object.defineProperty(exports, "SkeletonList", {
397
403
  enumerable: true,
398
404
  get: function () {
399
- return _index52.SkeletonList;
405
+ return _index53.SkeletonList;
400
406
  }
401
407
  });
402
408
  Object.defineProperty(exports, "SkeletonProvider", {
403
409
  enumerable: true,
404
410
  get: function () {
405
- return _index52.SkeletonProvider;
411
+ return _index53.SkeletonProvider;
406
412
  }
407
413
  });
408
414
  Object.defineProperty(exports, "SkeletonSkip", {
409
415
  enumerable: true,
410
416
  get: function () {
411
- return _index52.SkeletonSkip;
417
+ return _index53.SkeletonSkip;
412
418
  }
413
419
  });
414
420
  Object.defineProperty(exports, "SkeletonText", {
415
421
  enumerable: true,
416
422
  get: function () {
417
- return _index52.SkeletonText;
423
+ return _index53.SkeletonText;
418
424
  }
419
425
  });
420
426
  Object.defineProperty(exports, "SlideToConfirm", {
421
427
  enumerable: true,
422
428
  get: function () {
423
- return _index54.SlideToConfirm;
429
+ return _index55.SlideToConfirm;
424
430
  }
425
431
  });
426
432
  Object.defineProperty(exports, "Slider", {
427
433
  enumerable: true,
428
434
  get: function () {
429
- return _index53.Slider;
435
+ return _index54.Slider;
430
436
  }
431
437
  });
432
438
  Object.defineProperty(exports, "Spacer", {
@@ -438,7 +444,7 @@ Object.defineProperty(exports, "Spacer", {
438
444
  Object.defineProperty(exports, "Spinner", {
439
445
  enumerable: true,
440
446
  get: function () {
441
- return _index55.Spinner;
447
+ return _index56.Spinner;
442
448
  }
443
449
  });
444
450
  Object.defineProperty(exports, "Stack", {
@@ -450,79 +456,79 @@ Object.defineProperty(exports, "Stack", {
450
456
  Object.defineProperty(exports, "Stepper", {
451
457
  enumerable: true,
452
458
  get: function () {
453
- return _index56.Stepper;
459
+ return _index57.Stepper;
454
460
  }
455
461
  });
456
462
  Object.defineProperty(exports, "Swipeable", {
457
463
  enumerable: true,
458
464
  get: function () {
459
- return _index57.Swipeable;
465
+ return _index58.Swipeable;
460
466
  }
461
467
  });
462
468
  Object.defineProperty(exports, "Switch", {
463
469
  enumerable: true,
464
470
  get: function () {
465
- return _index58.Switch;
471
+ return _index59.Switch;
466
472
  }
467
473
  });
468
474
  Object.defineProperty(exports, "Tabs", {
469
475
  enumerable: true,
470
476
  get: function () {
471
- return _index59.Tabs;
477
+ return _index60.Tabs;
472
478
  }
473
479
  });
474
480
  Object.defineProperty(exports, "TagInput", {
475
481
  enumerable: true,
476
482
  get: function () {
477
- return _index60.TagInput;
483
+ return _index61.TagInput;
478
484
  }
479
485
  });
480
486
  Object.defineProperty(exports, "Text", {
481
487
  enumerable: true,
482
488
  get: function () {
483
- return _index61.Text;
489
+ return _index62.Text;
484
490
  }
485
491
  });
486
492
  Object.defineProperty(exports, "TimePicker", {
487
493
  enumerable: true,
488
494
  get: function () {
489
- return _index63.TimePicker;
495
+ return _index64.TimePicker;
490
496
  }
491
497
  });
492
498
  Object.defineProperty(exports, "Timeline", {
493
499
  enumerable: true,
494
500
  get: function () {
495
- return _index62.Timeline;
501
+ return _index63.Timeline;
496
502
  }
497
503
  });
498
504
  Object.defineProperty(exports, "Toast", {
499
505
  enumerable: true,
500
506
  get: function () {
501
- return _index64.Toast;
507
+ return _index65.Toast;
502
508
  }
503
509
  });
504
510
  Object.defineProperty(exports, "ToastProvider", {
505
511
  enumerable: true,
506
512
  get: function () {
507
- return _index64.ToastProvider;
513
+ return _index65.ToastProvider;
508
514
  }
509
515
  });
510
516
  Object.defineProperty(exports, "Tooltip", {
511
517
  enumerable: true,
512
518
  get: function () {
513
- return _index65.Tooltip;
519
+ return _index66.Tooltip;
514
520
  }
515
521
  });
516
522
  Object.defineProperty(exports, "ZoomableImage", {
517
523
  enumerable: true,
518
524
  get: function () {
519
- return _index66.ZoomableImage;
525
+ return _index67.ZoomableImage;
520
526
  }
521
527
  });
522
528
  Object.defineProperty(exports, "applyMarkdownAction", {
523
529
  enumerable: true,
524
530
  get: function () {
525
- return _index48.applyMarkdownAction;
531
+ return _index49.applyMarkdownAction;
526
532
  }
527
533
  });
528
534
  Object.defineProperty(exports, "authedImageCacheStats", {
@@ -540,13 +546,13 @@ Object.defineProperty(exports, "clearAuthedImageCache", {
540
546
  Object.defineProperty(exports, "formatE164", {
541
547
  enumerable: true,
542
548
  get: function () {
543
- return _index42.formatE164;
549
+ return _index43.formatE164;
544
550
  }
545
551
  });
546
552
  Object.defineProperty(exports, "formatFileSize", {
547
553
  enumerable: true,
548
554
  get: function () {
549
- return _index26.formatFileSize;
555
+ return _index27.formatFileSize;
550
556
  }
551
557
  });
552
558
  Object.defineProperty(exports, "getAuthedImageCacheLimit", {
@@ -558,7 +564,7 @@ Object.defineProperty(exports, "getAuthedImageCacheLimit", {
558
564
  Object.defineProperty(exports, "loader", {
559
565
  enumerable: true,
560
566
  get: function () {
561
- return _index37.loader;
567
+ return _index38.loader;
562
568
  }
563
569
  });
564
570
  Object.defineProperty(exports, "setAuthedImageCacheLimit", {
@@ -570,7 +576,7 @@ Object.defineProperty(exports, "setAuthedImageCacheLimit", {
570
576
  Object.defineProperty(exports, "toast", {
571
577
  enumerable: true,
572
578
  get: function () {
573
- return _index64.toast;
579
+ return _index65.toast;
574
580
  }
575
581
  });
576
582
  Object.defineProperty(exports, "useBottomSheet", {
@@ -582,43 +588,43 @@ Object.defineProperty(exports, "useBottomSheet", {
582
588
  Object.defineProperty(exports, "useErrorHandler", {
583
589
  enumerable: true,
584
590
  get: function () {
585
- return _index25.useErrorHandler;
591
+ return _index26.useErrorHandler;
586
592
  }
587
593
  });
588
594
  Object.defineProperty(exports, "useLoader", {
589
595
  enumerable: true,
590
596
  get: function () {
591
- return _index37.useLoader;
597
+ return _index38.useLoader;
592
598
  }
593
599
  });
594
600
  Object.defineProperty(exports, "useReduceMotion", {
595
601
  enumerable: true,
596
602
  get: function () {
597
- return _index52.useReduceMotion;
603
+ return _index53.useReduceMotion;
598
604
  }
599
605
  });
600
606
  Object.defineProperty(exports, "useSkeletonClock", {
601
607
  enumerable: true,
602
608
  get: function () {
603
- return _index52.useSkeletonClock;
609
+ return _index53.useSkeletonClock;
604
610
  }
605
611
  });
606
612
  Object.defineProperty(exports, "useSkeletonDefaults", {
607
613
  enumerable: true,
608
614
  get: function () {
609
- return _index52.useSkeletonDefaults;
615
+ return _index53.useSkeletonDefaults;
610
616
  }
611
617
  });
612
618
  Object.defineProperty(exports, "useToast", {
613
619
  enumerable: true,
614
620
  get: function () {
615
- return _index64.useToast;
621
+ return _index65.useToast;
616
622
  }
617
623
  });
618
624
  Object.defineProperty(exports, "withErrorBoundary", {
619
625
  enumerable: true,
620
626
  get: function () {
621
- return _index25.withErrorBoundary;
627
+ return _index26.withErrorBoundary;
622
628
  }
623
629
  });
624
630
  var _index = require("./Accordion/index.js");
@@ -645,48 +651,49 @@ var _index19 = require("./DateRangePicker/index.js");
645
651
  var _index20 = require("./Descriptions/index.js");
646
652
  var _index21 = require("./Dialog/index.js");
647
653
  var _index22 = require("./Divider/index.js");
648
- var _index23 = require("./Drawer/index.js");
649
- var _index24 = require("./EmptyState/index.js");
650
- var _index25 = require("./ErrorBoundary/index.js");
651
- var _index26 = require("./FilePicker/index.js");
652
- var _index27 = require("./FloatingActionButton/index.js");
653
- var _index28 = require("./ForceUpdateDialog/index.js");
654
- var _index29 = require("./FormField/index.js");
655
- var _index30 = require("./IconButton/index.js");
656
- var _index31 = require("./ImageGallery/index.js");
657
- var _index32 = require("./InlineSelect/index.js");
658
- var _index33 = require("./Input/index.js");
659
- var _index34 = require("./KeyboardAwareScrollView/index.js");
660
- var _index35 = require("./KeyboardToolbar/index.js");
661
- var _index36 = require("./ListItem/index.js");
662
- var _index37 = require("./LoaderOverlay/index.js");
663
- var _index38 = require("./Markdown/index.js");
664
- var _index39 = require("./Modal/index.js");
665
- var _index40 = require("./NumberInput/index.js");
666
- var _index41 = require("./OTPInput/index.js");
667
- var _index42 = require("./PhoneNumberInput/index.js");
668
- var _index43 = require("./PickerTrigger/index.js");
669
- var _index44 = require("./ProgressBar/index.js");
670
- var _index45 = require("./Radio/index.js");
671
- var _index46 = require("./Rating/index.js");
672
- var _index47 = require("./Repeater/index.js");
673
- var _index48 = require("./RichTextEditor/index.js");
674
- var _index49 = require("./SearchBar/index.js");
675
- var _index50 = require("./SegmentedControl/index.js");
676
- var _index51 = require("./Select/index.js");
677
- var _index52 = require("./Skeleton/index.js");
678
- var _index53 = require("./Slider/index.js");
679
- var _index54 = require("./SlideToConfirm/index.js");
680
- var _index55 = require("./Spinner/index.js");
681
- var _index56 = require("./Stepper/index.js");
682
- var _index57 = require("./Swipeable/index.js");
683
- var _index58 = require("./Switch/index.js");
684
- var _index59 = require("./Tabs/index.js");
685
- var _index60 = require("./TagInput/index.js");
686
- var _index61 = require("./Text/index.js");
687
- var _index62 = require("./Timeline/index.js");
688
- var _index63 = require("./TimePicker/index.js");
689
- var _index64 = require("./Toast/index.js");
690
- var _index65 = require("./Tooltip/index.js");
691
- var _index66 = require("./ZoomableImage/index.js");
654
+ var _index23 = require("./DocumentViewer/index.js");
655
+ var _index24 = require("./Drawer/index.js");
656
+ var _index25 = require("./EmptyState/index.js");
657
+ var _index26 = require("./ErrorBoundary/index.js");
658
+ var _index27 = require("./FilePicker/index.js");
659
+ var _index28 = require("./FloatingActionButton/index.js");
660
+ var _index29 = require("./ForceUpdateDialog/index.js");
661
+ var _index30 = require("./FormField/index.js");
662
+ var _index31 = require("./IconButton/index.js");
663
+ var _index32 = require("./ImageGallery/index.js");
664
+ var _index33 = require("./InlineSelect/index.js");
665
+ var _index34 = require("./Input/index.js");
666
+ var _index35 = require("./KeyboardAwareScrollView/index.js");
667
+ var _index36 = require("./KeyboardToolbar/index.js");
668
+ var _index37 = require("./ListItem/index.js");
669
+ var _index38 = require("./LoaderOverlay/index.js");
670
+ var _index39 = require("./Markdown/index.js");
671
+ var _index40 = require("./Modal/index.js");
672
+ var _index41 = require("./NumberInput/index.js");
673
+ var _index42 = require("./OTPInput/index.js");
674
+ var _index43 = require("./PhoneNumberInput/index.js");
675
+ var _index44 = require("./PickerTrigger/index.js");
676
+ var _index45 = require("./ProgressBar/index.js");
677
+ var _index46 = require("./Radio/index.js");
678
+ var _index47 = require("./Rating/index.js");
679
+ var _index48 = require("./Repeater/index.js");
680
+ var _index49 = require("./RichTextEditor/index.js");
681
+ var _index50 = require("./SearchBar/index.js");
682
+ var _index51 = require("./SegmentedControl/index.js");
683
+ var _index52 = require("./Select/index.js");
684
+ var _index53 = require("./Skeleton/index.js");
685
+ var _index54 = require("./Slider/index.js");
686
+ var _index55 = require("./SlideToConfirm/index.js");
687
+ var _index56 = require("./Spinner/index.js");
688
+ var _index57 = require("./Stepper/index.js");
689
+ var _index58 = require("./Swipeable/index.js");
690
+ var _index59 = require("./Switch/index.js");
691
+ var _index60 = require("./Tabs/index.js");
692
+ var _index61 = require("./TagInput/index.js");
693
+ var _index62 = require("./Text/index.js");
694
+ var _index63 = require("./Timeline/index.js");
695
+ var _index64 = require("./TimePicker/index.js");
696
+ var _index65 = require("./Toast/index.js");
697
+ var _index66 = require("./Tooltip/index.js");
698
+ var _index67 = require("./ZoomableImage/index.js");
692
699
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+
3
+ import { Logger } from '@webority-technologies/mobile-core';
4
+ import { useCallback } from 'react';
5
+ import { StyleSheet, View } from 'react-native';
6
+ import Pdf from 'react-native-pdf';
7
+ import { Spinner } from "../Spinner/index.js";
8
+ import { jsx as _jsx } from "react/jsx-runtime";
9
+ const toError = value => value instanceof Error ? value : new Error(String(value));
10
+
11
+ /**
12
+ * Renders a PDF only — the WebView fallback consumer apps use for non-PDF
13
+ * office documents is a distinct rendering strategy and stays app-side.
14
+ */
15
+ export const DocumentViewer = ({
16
+ source,
17
+ trustAllCerts = false,
18
+ onLoadComplete,
19
+ onPageChanged,
20
+ onError,
21
+ loadingIndicator,
22
+ style,
23
+ testID,
24
+ accessibilityLabel
25
+ }) => {
26
+ const renderActivityIndicator = useCallback(() => loadingIndicator ? loadingIndicator() : /*#__PURE__*/_jsx(Spinner, {
27
+ size: "lg"
28
+ }), [loadingIndicator]);
29
+ const handleError = useCallback(error => {
30
+ const err = toError(error);
31
+ Logger.error('[@webority-technologies/mobile-ui] DocumentViewer failed to load.', err);
32
+ onError?.(err);
33
+ }, [onError]);
34
+ const handleLoadComplete = useCallback(numberOfPages => onLoadComplete?.(numberOfPages), [onLoadComplete]);
35
+ return /*#__PURE__*/_jsx(View, {
36
+ style: [styles.root, style],
37
+ testID: testID,
38
+ accessible: accessibilityLabel !== undefined,
39
+ accessibilityLabel: accessibilityLabel,
40
+ accessibilityRole: "none",
41
+ children: /*#__PURE__*/_jsx(Pdf, {
42
+ source: source,
43
+ trustAllCerts: trustAllCerts,
44
+ style: styles.pdf,
45
+ renderActivityIndicator: renderActivityIndicator,
46
+ onLoadComplete: handleLoadComplete,
47
+ onPageChanged: onPageChanged,
48
+ onError: handleError
49
+ })
50
+ });
51
+ };
52
+ DocumentViewer.displayName = 'DocumentViewer';
53
+ const styles = StyleSheet.create({
54
+ root: {
55
+ flex: 1
56
+ },
57
+ pdf: {
58
+ flex: 1,
59
+ width: '100%',
60
+ height: '100%'
61
+ }
62
+ });
63
+ export default DocumentViewer;
64
+ //# sourceMappingURL=DocumentViewer.js.map
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export { DocumentViewer } from "./DocumentViewer.js";
4
+ //# sourceMappingURL=index.js.map
@@ -24,6 +24,7 @@ export { DateRangePicker } from "./DateRangePicker/index.js";
24
24
  export { Descriptions } from "./Descriptions/index.js";
25
25
  export { Dialog } from "./Dialog/index.js";
26
26
  export { Divider } from "./Divider/index.js";
27
+ export { DocumentViewer } from "./DocumentViewer/index.js";
27
28
  export { Drawer } from "./Drawer/index.js";
28
29
  export { EmptyState } from "./EmptyState/index.js";
29
30
  export { ErrorBoundary, useErrorHandler, withErrorBoundary } from "./ErrorBoundary/index.js";
@@ -0,0 +1,27 @@
1
+ import type React from 'react';
2
+ import type { StyleProp, ViewStyle } from 'react-native';
3
+ export interface DocumentViewerSource {
4
+ uri: string;
5
+ headers?: Record<string, string>;
6
+ cache?: boolean;
7
+ }
8
+ export interface DocumentViewerProps {
9
+ source: DocumentViewerSource;
10
+ /** Trust self-signed / invalid certs on the document request. Default false. */
11
+ trustAllCerts?: boolean;
12
+ onLoadComplete?: (numberOfPages: number) => void;
13
+ onPageChanged?: (page: number, numberOfPages: number) => void;
14
+ onError?: (error: Error) => void;
15
+ /** Replaces the default themed spinner shown while the document loads. */
16
+ loadingIndicator?: () => React.ReactNode;
17
+ style?: StyleProp<ViewStyle>;
18
+ testID?: string;
19
+ accessibilityLabel?: string;
20
+ }
21
+ /**
22
+ * Renders a PDF only — the WebView fallback consumer apps use for non-PDF
23
+ * office documents is a distinct rendering strategy and stays app-side.
24
+ */
25
+ export declare const DocumentViewer: React.FC<DocumentViewerProps>;
26
+ export default DocumentViewer;
27
+ //# sourceMappingURL=DocumentViewer.d.ts.map
@@ -0,0 +1,3 @@
1
+ export type { DocumentViewerProps, DocumentViewerSource } from './DocumentViewer';
2
+ export { DocumentViewer } from './DocumentViewer';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -46,6 +46,8 @@ export type { DialogAction, DialogProps, DialogVariant } from './Dialog';
46
46
  export { Dialog } from './Dialog';
47
47
  export type { DividerOrientation, DividerProps, DividerSpacing } from './Divider';
48
48
  export { Divider } from './Divider';
49
+ export type { DocumentViewerProps, DocumentViewerSource } from './DocumentViewer';
50
+ export { DocumentViewer } from './DocumentViewer';
49
51
  export type { DrawerProps, DrawerRef, DrawerSide } from './Drawer';
50
52
  export { Drawer } from './Drawer';
51
53
  export type { EmptyStateAction, EmptyStateProps, EmptyStateSize } from './EmptyState';
@@ -0,0 +1,27 @@
1
+ import type React from 'react';
2
+ import type { StyleProp, ViewStyle } from 'react-native';
3
+ export interface DocumentViewerSource {
4
+ uri: string;
5
+ headers?: Record<string, string>;
6
+ cache?: boolean;
7
+ }
8
+ export interface DocumentViewerProps {
9
+ source: DocumentViewerSource;
10
+ /** Trust self-signed / invalid certs on the document request. Default false. */
11
+ trustAllCerts?: boolean;
12
+ onLoadComplete?: (numberOfPages: number) => void;
13
+ onPageChanged?: (page: number, numberOfPages: number) => void;
14
+ onError?: (error: Error) => void;
15
+ /** Replaces the default themed spinner shown while the document loads. */
16
+ loadingIndicator?: () => React.ReactNode;
17
+ style?: StyleProp<ViewStyle>;
18
+ testID?: string;
19
+ accessibilityLabel?: string;
20
+ }
21
+ /**
22
+ * Renders a PDF only — the WebView fallback consumer apps use for non-PDF
23
+ * office documents is a distinct rendering strategy and stays app-side.
24
+ */
25
+ export declare const DocumentViewer: React.FC<DocumentViewerProps>;
26
+ export default DocumentViewer;
27
+ //# sourceMappingURL=DocumentViewer.d.ts.map
@@ -0,0 +1,3 @@
1
+ export type { DocumentViewerProps, DocumentViewerSource } from './DocumentViewer.js';
2
+ export { DocumentViewer } from './DocumentViewer.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -46,6 +46,8 @@ export type { DialogAction, DialogProps, DialogVariant } from './Dialog/index.js
46
46
  export { Dialog } from './Dialog/index.js';
47
47
  export type { DividerOrientation, DividerProps, DividerSpacing } from './Divider/index.js';
48
48
  export { Divider } from './Divider/index.js';
49
+ export type { DocumentViewerProps, DocumentViewerSource } from './DocumentViewer/index.js';
50
+ export { DocumentViewer } from './DocumentViewer/index.js';
49
51
  export type { DrawerProps, DrawerRef, DrawerSide } from './Drawer/index.js';
50
52
  export { Drawer } from './Drawer/index.js';
51
53
  export type { EmptyStateAction, EmptyStateProps, EmptyStateSize } from './EmptyState/index.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webority-technologies/mobile-ui",
3
- "version": "0.0.5",
3
+ "version": "0.0.7",
4
4
  "description": "Beautiful, animated, accessible React Native components, theme and form engine for Webority projects.",
5
5
  "keywords": [
6
6
  "react-native",
@@ -61,7 +61,7 @@
61
61
  "typecheck": "tsc --noEmit"
62
62
  },
63
63
  "dependencies": {
64
- "@webority-technologies/mobile-core": "^0.0.5"
64
+ "@webority-technologies/mobile-core": "^0.0.6"
65
65
  },
66
66
  "peerDependencies": {
67
67
  "expo": ">=57.0.0",
@@ -69,6 +69,7 @@
69
69
  "react": "^19.1.0",
70
70
  "react-native": ">=0.81.0",
71
71
  "react-native-gesture-handler": "^2.21.0 || ^3.0.0",
72
+ "react-native-pdf": ">=7.0.4",
72
73
  "react-native-reanimated": "^4.0.0",
73
74
  "react-native-safe-area-context": ">=5.4.0",
74
75
  "react-native-worklets": ">=0.10.0"
@@ -103,6 +104,7 @@
103
104
  ]
104
105
  },
105
106
  "devDependencies": {
106
- "expo-haptics": "^57.0.2"
107
+ "expo-haptics": "^57.0.2",
108
+ "react-native-pdf": "^7.0.4"
107
109
  }
108
110
  }