@papyrus-sdk/ui-react-native 0.2.21 → 0.2.23

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/index.mjs CHANGED
@@ -21617,6 +21617,7 @@ import {
21617
21617
  } from "react";
21618
21618
  import {
21619
21619
  View,
21620
+ Text,
21620
21621
  StyleSheet,
21621
21622
  Pressable,
21622
21623
  PanResponder,
@@ -21626,7 +21627,10 @@ import {
21626
21627
  } from "react-native";
21627
21628
  import { Gesture, GestureDetector } from "react-native-gesture-handler";
21628
21629
  import Svg, { Path as SvgPath } from "react-native-svg";
21629
- import { useViewerStore } from "@papyrus-sdk/core";
21630
+ import { papyrusEvents, useViewerStore } from "@papyrus-sdk/core";
21631
+ import {
21632
+ PapyrusEventType
21633
+ } from "@papyrus-sdk/types";
21630
21634
  import {
21631
21635
  PapyrusPageView
21632
21636
  } from "@papyrus-sdk/engine-native";
@@ -21897,6 +21901,14 @@ var resolvePdfBasePageWidth = ({
21897
21901
  horizontalPadding
21898
21902
  }) => Math.max(0, viewportWidth - horizontalPadding * 2);
21899
21903
 
21904
+ // components/selectionEvent.ts
21905
+ var notifyTextSelection = (handler, payload) => {
21906
+ const text = payload.text.replace(/\s+/g, " ").trim();
21907
+ if (!text) return false;
21908
+ handler?.({ ...payload, text });
21909
+ return Boolean(handler);
21910
+ };
21911
+
21900
21912
  // components/PageRenderer.tsx
21901
21913
  import { jsx, jsxs } from "react/jsx-runtime";
21902
21914
  var TEXT_MARKUP_TOOLS = /* @__PURE__ */ new Set([
@@ -21971,6 +21983,9 @@ var PageRenderer = ({
21971
21983
  horizontalPadding = 16,
21972
21984
  spacing = 24,
21973
21985
  onSelectionDragActiveChange,
21986
+ onTextSelected,
21987
+ onDefineSelection,
21988
+ selectionActionLabel,
21974
21989
  gestureScrollLockActive = false,
21975
21990
  lastPinchEndedAt = null,
21976
21991
  requestSelectionVerticalAutoscroll
@@ -22316,6 +22331,17 @@ var PageRenderer = ({
22316
22331
  return;
22317
22332
  }
22318
22333
  const selectedText = selection.text || "";
22334
+ const normalizedText = selectedText.replace(/\s+/g, " ").trim();
22335
+ if (normalizedText) {
22336
+ papyrusEvents.emit(PapyrusEventType.TEXT_SELECTED, {
22337
+ text: normalizedText,
22338
+ pageIndex
22339
+ });
22340
+ }
22341
+ notifyTextSelection(onTextSelected, {
22342
+ text: normalizedText,
22343
+ pageIndex
22344
+ });
22319
22345
  logSelectionPerf("selection.ready", {
22320
22346
  tool: activeTool,
22321
22347
  sourceRectCount: selection.rects.length,
@@ -23251,6 +23277,20 @@ var PageRenderer = ({
23251
23277
  }
23252
23278
  ],
23253
23279
  children: [
23280
+ onDefineSelection ? /* @__PURE__ */ jsx(
23281
+ Pressable,
23282
+ {
23283
+ onPress: (event) => {
23284
+ stopPressPropagation(event);
23285
+ onDefineSelection({
23286
+ text: selectionText,
23287
+ pageIndex
23288
+ });
23289
+ },
23290
+ style: [styles.selectionAction, styles.defineSelectionAction],
23291
+ children: /* @__PURE__ */ jsx(Text, { style: styles.defineSelectionText, children: selectionActionLabel ?? "Definir" })
23292
+ }
23293
+ ) : null,
23254
23294
  /* @__PURE__ */ jsx(
23255
23295
  Pressable,
23256
23296
  {
@@ -23550,6 +23590,15 @@ var styles = StyleSheet.create({
23550
23590
  justifyContent: "center",
23551
23591
  marginRight: 10
23552
23592
  },
23593
+ defineSelectionAction: {
23594
+ width: 58,
23595
+ paddingHorizontal: 6
23596
+ },
23597
+ defineSelectionText: {
23598
+ color: "#FFFFFF",
23599
+ fontSize: 11,
23600
+ fontWeight: "700"
23601
+ },
23553
23602
  selectionActionLast: {
23554
23603
  marginRight: 0
23555
23604
  },
@@ -23581,7 +23630,7 @@ var styles = StyleSheet.create({
23581
23630
  borderRadius: 3
23582
23631
  }
23583
23632
  });
23584
- var arePageRendererPropsEqual = (previous, next) => previous.engine === next.engine && previous.pageIndex === next.pageIndex && previous.scale === next.scale && previous.PageViewComponent === next.PageViewComponent && previous.availableWidth === next.availableWidth && previous.pageViewportWidth === next.pageViewportWidth && previous.horizontalPadding === next.horizontalPadding && previous.spacing === next.spacing && previous.onSelectionDragActiveChange === next.onSelectionDragActiveChange && previous.gestureScrollLockActive === next.gestureScrollLockActive && previous.lastPinchEndedAt === next.lastPinchEndedAt && previous.requestSelectionVerticalAutoscroll === next.requestSelectionVerticalAutoscroll;
23633
+ var arePageRendererPropsEqual = (previous, next) => previous.engine === next.engine && previous.pageIndex === next.pageIndex && previous.scale === next.scale && previous.PageViewComponent === next.PageViewComponent && previous.availableWidth === next.availableWidth && previous.pageViewportWidth === next.pageViewportWidth && previous.horizontalPadding === next.horizontalPadding && previous.spacing === next.spacing && previous.onSelectionDragActiveChange === next.onSelectionDragActiveChange && previous.onTextSelected === next.onTextSelected && previous.onDefineSelection === next.onDefineSelection && previous.selectionActionLabel === next.selectionActionLabel && previous.gestureScrollLockActive === next.gestureScrollLockActive && previous.lastPinchEndedAt === next.lastPinchEndedAt && previous.requestSelectionVerticalAutoscroll === next.requestSelectionVerticalAutoscroll;
23585
23634
  var PageRenderer_default = memo(PageRenderer, arePageRendererPropsEqual);
23586
23635
 
23587
23636
  // components/WebViewViewer.tsx
@@ -23803,7 +23852,7 @@ var WebViewViewer_default = WebViewViewer;
23803
23852
 
23804
23853
  // components/DedicatedAndroidPdfViewer.tsx
23805
23854
  import { useCallback as useCallback2, useEffect as useEffect3, useRef as useRef3, useState as useState3 } from "react";
23806
- import { Pressable as Pressable2, StyleSheet as StyleSheet3, View as View3 } from "react-native";
23855
+ import { Pressable as Pressable2, StyleSheet as StyleSheet3, Text as Text2, View as View3 } from "react-native";
23807
23856
  import { useViewerStore as useViewerStore3 } from "@papyrus-sdk/core";
23808
23857
  import { PapyrusPdfDocumentView } from "@papyrus-sdk/engine-native";
23809
23858
 
@@ -24419,6 +24468,11 @@ var IconCommentBubble = ({
24419
24468
  /* @__PURE__ */ jsx3(Circle, { cx: "15", cy: "11", r: "1", fill: color })
24420
24469
  ] });
24421
24470
 
24471
+ // components/selectionToolbarModel.ts
24472
+ var getSelectionToolbarActions = (label = "Definir") => [
24473
+ { id: "dictionary", label }
24474
+ ];
24475
+
24422
24476
  // components/DedicatedAndroidPdfViewer.tsx
24423
24477
  import { Fragment, jsx as jsx4, jsxs as jsxs4 } from "react/jsx-runtime";
24424
24478
  var TEXT_MARKUP_TOOLS2 = /* @__PURE__ */ new Set(["highlight", "underline", "squiggly", "strikeout"]);
@@ -24431,7 +24485,9 @@ var getDedicatedAndroidPdfEngineId = (engine) => {
24431
24485
  return typeof engineId === "string" && engineId.length > 0 ? engineId : null;
24432
24486
  };
24433
24487
  function DedicatedAndroidPdfViewer({
24434
- engine
24488
+ engine,
24489
+ onDefineSelection,
24490
+ selectionActionLabel
24435
24491
  }) {
24436
24492
  const pageTheme = useViewerStore3((state) => state.pageTheme);
24437
24493
  const zoom = useViewerStore3((state) => state.zoom);
@@ -24614,6 +24670,27 @@ function DedicatedAndroidPdfViewer({
24614
24670
  }
24615
24671
  ),
24616
24672
  /* @__PURE__ */ jsx4(View3, { style: styles3.selectionToolbar, pointerEvents: "box-none", children: /* @__PURE__ */ jsxs4(View3, { style: styles3.toolbarContent, children: [
24673
+ onDefineSelection && getSelectionToolbarActions(selectionActionLabel).map((action) => /* @__PURE__ */ jsxs4(
24674
+ Pressable2,
24675
+ {
24676
+ accessibilityRole: "button",
24677
+ accessibilityLabel: action.label,
24678
+ onPress: () => {
24679
+ const currentSelection = selectionRef.current;
24680
+ if (!currentSelection) return;
24681
+ onDefineSelection({
24682
+ text: currentSelection.text,
24683
+ pageIndex: currentSelection.pageIndex
24684
+ });
24685
+ },
24686
+ style: [styles3.toolbarButton, styles3.dictionaryButton],
24687
+ children: [
24688
+ /* @__PURE__ */ jsx4(IconInfo, { size: 16, color: "#fff" }),
24689
+ /* @__PURE__ */ jsx4(Text2, { style: styles3.toolbarButtonText, children: action.label })
24690
+ ]
24691
+ },
24692
+ action.id
24693
+ )),
24617
24694
  /* @__PURE__ */ jsx4(
24618
24695
  Pressable2,
24619
24696
  {
@@ -24695,6 +24772,11 @@ var styles3 = StyleSheet3.create({
24695
24772
  alignItems: "center",
24696
24773
  justifyContent: "center"
24697
24774
  },
24775
+ dictionaryButton: {
24776
+ width: 118,
24777
+ flexDirection: "row",
24778
+ gap: 6
24779
+ },
24698
24780
  overlay: {
24699
24781
  ...StyleSheet3.absoluteFillObject,
24700
24782
  zIndex: 40
@@ -24744,7 +24826,10 @@ var Viewer = ({
24744
24826
  maxToRenderPerBatch,
24745
24827
  removeClippedSubviews,
24746
24828
  useDedicatedAndroidPdfViewer,
24747
- viewerMode
24829
+ viewerMode,
24830
+ onTextSelected,
24831
+ onDefineSelection,
24832
+ selectionActionLabel
24748
24833
  }) => {
24749
24834
  const pageCount = useViewerStore4((state) => state.pageCount);
24750
24835
  const currentPage = useViewerStore4((state) => state.currentPage);
@@ -25880,6 +25965,9 @@ var Viewer = ({
25880
25965
  pageViewportWidth: columnWidth,
25881
25966
  spacing: DOUBLE_PAGE_SPACING,
25882
25967
  onSelectionDragActiveChange: setSelectionDragActive,
25968
+ onTextSelected,
25969
+ onDefineSelection,
25970
+ selectionActionLabel,
25883
25971
  gestureScrollLockActive,
25884
25972
  lastPinchEndedAt,
25885
25973
  requestSelectionVerticalAutoscroll: handleSelectionVerticalAutoscroll
@@ -25896,6 +25984,9 @@ var Viewer = ({
25896
25984
  pageViewportWidth: columnWidth,
25897
25985
  spacing: DOUBLE_PAGE_SPACING,
25898
25986
  onSelectionDragActiveChange: setSelectionDragActive,
25987
+ onTextSelected,
25988
+ onDefineSelection,
25989
+ selectionActionLabel,
25899
25990
  gestureScrollLockActive,
25900
25991
  lastPinchEndedAt,
25901
25992
  requestSelectionVerticalAutoscroll: handleSelectionVerticalAutoscroll
@@ -25915,6 +26006,9 @@ var Viewer = ({
25915
26006
  pageViewportWidth: documentSurfaceWidth,
25916
26007
  spacing: CONTINUOUS_PAGE_SPACING,
25917
26008
  onSelectionDragActiveChange: setSelectionDragActive,
26009
+ onTextSelected,
26010
+ onDefineSelection,
26011
+ selectionActionLabel,
25918
26012
  gestureScrollLockActive,
25919
26013
  lastPinchEndedAt,
25920
26014
  requestSelectionVerticalAutoscroll: handleSelectionVerticalAutoscroll
@@ -25938,7 +26032,14 @@ var Viewer = ({
25938
26032
  return /* @__PURE__ */ jsx5(View4, { style: [styles4.container, isDark && styles4.containerDark], children: /* @__PURE__ */ jsx5(WebViewViewer_default, { engine }) });
25939
26033
  }
25940
26034
  if (isNativePdfViewer) {
25941
- return /* @__PURE__ */ jsx5(View4, { style: [styles4.container, isDark && styles4.containerDark], children: /* @__PURE__ */ jsx5(DedicatedAndroidPdfViewer, { engine }) });
26035
+ return /* @__PURE__ */ jsx5(View4, { style: [styles4.container, isDark && styles4.containerDark], children: /* @__PURE__ */ jsx5(
26036
+ DedicatedAndroidPdfViewer,
26037
+ {
26038
+ engine,
26039
+ onDefineSelection,
26040
+ selectionActionLabel
26041
+ }
26042
+ ) });
25942
26043
  }
25943
26044
  if (isSingle) {
25944
26045
  return /* @__PURE__ */ jsx5(View4, { style: [styles4.container, isDark && styles4.containerDark], children: /* @__PURE__ */ jsx5(GestureDetector2, { gesture: viewerPinchGesture, children: /* @__PURE__ */ jsx5(
@@ -26004,6 +26105,9 @@ var Viewer = ({
26004
26105
  pageViewportWidth: documentSurfaceWidth,
26005
26106
  spacing: 32,
26006
26107
  onSelectionDragActiveChange: setSelectionDragActive,
26108
+ onTextSelected,
26109
+ onDefineSelection,
26110
+ selectionActionLabel,
26007
26111
  gestureScrollLockActive,
26008
26112
  lastPinchEndedAt,
26009
26113
  requestSelectionVerticalAutoscroll: handleSelectionVerticalAutoscroll
@@ -26141,7 +26245,7 @@ var Viewer_default = Viewer;
26141
26245
 
26142
26246
  // components/Topbar.tsx
26143
26247
  import { useState as useState6 } from "react";
26144
- import { View as View6, Text as Text2, Pressable as Pressable4, StyleSheet as StyleSheet6, useWindowDimensions as useWindowDimensions3 } from "react-native";
26248
+ import { View as View6, Text as Text4, Pressable as Pressable4, StyleSheet as StyleSheet6, useWindowDimensions as useWindowDimensions3 } from "react-native";
26145
26249
  import { useViewerStore as useViewerStore5 } from "@papyrus-sdk/core";
26146
26250
 
26147
26251
  // components/mobileChromeMetrics.ts
@@ -26164,7 +26268,7 @@ var MOBILE_CHROME_METRICS = {
26164
26268
 
26165
26269
  // components/PageJumpModal.tsx
26166
26270
  import { useEffect as useEffect5, useState as useState5 } from "react";
26167
- import { Modal, Pressable as Pressable3, StyleSheet as StyleSheet5, Text, TextInput, View as View5 } from "react-native";
26271
+ import { Modal, Pressable as Pressable3, StyleSheet as StyleSheet5, Text as Text3, TextInput, View as View5 } from "react-native";
26168
26272
 
26169
26273
  // components/pageJumpModel.ts
26170
26274
  var resolvePageJumpTarget = (value, pageCount) => {
@@ -26207,7 +26311,7 @@ function PageJumpModal({
26207
26311
  style: [styles5.card, isDark && styles5.cardDark],
26208
26312
  onPress: (event) => event.stopPropagation(),
26209
26313
  children: [
26210
- /* @__PURE__ */ jsx6(Text, { style: [styles5.title, isDark && styles5.titleDark], children: "Ir para pagina" }),
26314
+ /* @__PURE__ */ jsx6(Text3, { style: [styles5.title, isDark && styles5.titleDark], children: "Ir para pagina" }),
26211
26315
  /* @__PURE__ */ jsx6(
26212
26316
  TextInput,
26213
26317
  {
@@ -26234,7 +26338,7 @@ function PageJumpModal({
26234
26338
  styles5.actionCancel,
26235
26339
  isDark && styles5.actionCancelDark
26236
26340
  ],
26237
- children: /* @__PURE__ */ jsx6(Text, { style: [styles5.actionText, isDark && styles5.actionTextDark], children: "Cancelar" })
26341
+ children: /* @__PURE__ */ jsx6(Text3, { style: [styles5.actionText, isDark && styles5.actionTextDark], children: "Cancelar" })
26238
26342
  }
26239
26343
  ),
26240
26344
  /* @__PURE__ */ jsx6(
@@ -26242,7 +26346,7 @@ function PageJumpModal({
26242
26346
  {
26243
26347
  onPress: confirmJump,
26244
26348
  style: [styles5.actionButton, { backgroundColor: accentColor }],
26245
- children: /* @__PURE__ */ jsx6(Text, { style: [styles5.actionText, styles5.actionTextPrimary], children: "Ir" })
26349
+ children: /* @__PURE__ */ jsx6(Text3, { style: [styles5.actionText, styles5.actionTextPrimary], children: "Ir" })
26246
26350
  }
26247
26351
  )
26248
26352
  ] })
@@ -26367,7 +26471,7 @@ var Topbar = ({
26367
26471
  }
26368
26472
  setJumpModalOpen(true);
26369
26473
  };
26370
- const defaultLogo = /* @__PURE__ */ jsx7(View6, { style: [styles6.logoBadge, { backgroundColor: accentColor }], children: /* @__PURE__ */ jsx7(Text2, { style: styles6.logoText, children: "P" }) });
26474
+ const defaultLogo = /* @__PURE__ */ jsx7(View6, { style: [styles6.logoBadge, { backgroundColor: accentColor }], children: /* @__PURE__ */ jsx7(Text4, { style: styles6.logoText, children: "P" }) });
26371
26475
  const logoElement = logo ?? defaultLogo;
26372
26476
  if (!mobileChromeVisible) return null;
26373
26477
  return /* @__PURE__ */ jsxs7(Fragment2, { children: [
@@ -26397,7 +26501,7 @@ var Topbar = ({
26397
26501
  style: styles6.titleHit,
26398
26502
  accessibilityLabel: "Open page jump",
26399
26503
  children: /* @__PURE__ */ jsx7(
26400
- Text2,
26504
+ Text4,
26401
26505
  {
26402
26506
  numberOfLines: 1,
26403
26507
  style: [styles6.brandText, isDark && styles6.brandTextDark],
@@ -26429,7 +26533,7 @@ var Topbar = ({
26429
26533
  style: styles6.pageIndicatorHit,
26430
26534
  accessibilityLabel: "Page jump",
26431
26535
  children: /* @__PURE__ */ jsxs7(
26432
- Text2,
26536
+ Text4,
26433
26537
  {
26434
26538
  style: [
26435
26539
  styles6.pageIndicator,
@@ -26652,7 +26756,7 @@ var Topbar_default = Topbar;
26652
26756
  import React7, { useEffect as useEffect6, useMemo as useMemo4, useRef as useRef5, useState as useState7 } from "react";
26653
26757
  import {
26654
26758
  View as View7,
26655
- Text as Text3,
26759
+ Text as Text5,
26656
26760
  Pressable as Pressable5,
26657
26761
  StyleSheet as StyleSheet7,
26658
26762
  ScrollView as ScrollView2,
@@ -27306,7 +27410,7 @@ var ToolDock = () => {
27306
27410
  }
27307
27411
  ],
27308
27412
  children: /* @__PURE__ */ jsx8(
27309
- Text3,
27413
+ Text5,
27310
27414
  {
27311
27415
  style: [
27312
27416
  styles7.utilityLabel,
@@ -27422,7 +27526,7 @@ var ToolDock = () => {
27422
27526
  }
27423
27527
  ],
27424
27528
  children: /* @__PURE__ */ jsx8(
27425
- Text3,
27529
+ Text5,
27426
27530
  {
27427
27531
  style: [
27428
27532
  styles7.utilityLabel,
@@ -27728,7 +27832,7 @@ import {
27728
27832
  Platform as Platform3,
27729
27833
  Pressable as Pressable7,
27730
27834
  StyleSheet as StyleSheet9,
27731
- Text as Text5,
27835
+ Text as Text7,
27732
27836
  UIManager,
27733
27837
  View as View9,
27734
27838
  findNodeHandle as findNodeHandle2
@@ -27749,7 +27853,7 @@ import {
27749
27853
  Pressable as Pressable6,
27750
27854
  ScrollView as ScrollView3,
27751
27855
  StyleSheet as StyleSheet8,
27752
- Text as Text4,
27856
+ Text as Text6,
27753
27857
  View as View8
27754
27858
  } from "react-native";
27755
27859
  import { jsx as jsx9, jsxs as jsxs9 } from "react/jsx-runtime";
@@ -27805,7 +27909,7 @@ function NativeSheet({
27805
27909
  }
27806
27910
  ),
27807
27911
  /* @__PURE__ */ jsx9(
27808
- Text4,
27912
+ Text6,
27809
27913
  {
27810
27914
  style: [styles8.title, isDark && styles8.titleDark],
27811
27915
  numberOfLines: 1,
@@ -27985,7 +28089,7 @@ var PageThumbnail = ({
27985
28089
  style: styles9.thumbImage
27986
28090
  }
27987
28091
  ) : /* @__PURE__ */ jsx10(View9, { style: [styles9.thumbFallback, isDark && styles9.thumbFallbackDark], children: /* @__PURE__ */ jsx10(
27988
- Text5,
28092
+ Text7,
27989
28093
  {
27990
28094
  style: [
27991
28095
  styles9.thumbFallbackText,
@@ -27996,7 +28100,7 @@ var PageThumbnail = ({
27996
28100
  ) })
27997
28101
  }
27998
28102
  ),
27999
- /* @__PURE__ */ jsx10(Text5, { style: [styles9.thumbLabel, isDark && styles9.thumbLabelDark], children: pageIndex + 1 })
28103
+ /* @__PURE__ */ jsx10(Text7, { style: [styles9.thumbLabel, isDark && styles9.thumbLabelDark], children: pageIndex + 1 })
28000
28104
  ]
28001
28105
  }
28002
28106
  );
@@ -28013,7 +28117,7 @@ var OutlineNode = ({ item, depth = 0, isDark, onSelect, untitledLabel }) => {
28013
28117
  },
28014
28118
  style: [styles9.outlineRow, { paddingLeft: 12 + depth * 12 }],
28015
28119
  children: /* @__PURE__ */ jsx10(
28016
- Text5,
28120
+ Text7,
28017
28121
  {
28018
28122
  style: [
28019
28123
  styles9.outlineText,
@@ -28289,7 +28393,7 @@ var RightSheet = ({
28289
28393
  maxHeight: sheetHeight,
28290
28394
  children: /* @__PURE__ */ jsxs10(View9, { style: styles9.sheet, children: [
28291
28395
  /* @__PURE__ */ jsxs10(View9, { style: styles9.header, children: [
28292
- /* @__PURE__ */ jsx10(Text5, { style: [styles9.sheetTitle, isDark && styles9.sheetTitleDark], children: showingNotes ? t.notes : navigationTitle }),
28396
+ /* @__PURE__ */ jsx10(Text7, { style: [styles9.sheetTitle, isDark && styles9.sheetTitleDark], children: showingNotes ? t.notes : navigationTitle }),
28293
28397
  !showingNotes ? /* @__PURE__ */ jsx10(
28294
28398
  Pressable7,
28295
28399
  {
@@ -28297,7 +28401,7 @@ var RightSheet = ({
28297
28401
  disabled: showingProgress || pageCount <= 0,
28298
28402
  style: styles9.pageStatusHit,
28299
28403
  accessibilityLabel: "Open page jump",
28300
- children: /* @__PURE__ */ jsx10(Text5, { style: [styles9.pageStatus, isDark && styles9.pageStatusDark], children: showingProgress ? `${Math.round(currentPage / Math.max(pageCount, 1) * 100)}%` : `${currentPage}/${pageCount}` })
28404
+ children: /* @__PURE__ */ jsx10(Text7, { style: [styles9.pageStatus, isDark && styles9.pageStatusDark], children: showingProgress ? `${Math.round(currentPage / Math.max(pageCount, 1) * 100)}%` : `${currentPage}/${pageCount}` })
28301
28405
  }
28302
28406
  ) : null
28303
28407
  ] }),
@@ -28315,7 +28419,7 @@ var RightSheet = ({
28315
28419
  }
28316
28420
  ],
28317
28421
  children: /* @__PURE__ */ jsx10(
28318
- Text5,
28422
+ Text7,
28319
28423
  {
28320
28424
  style: [
28321
28425
  styles9.segmentText,
@@ -28339,7 +28443,7 @@ var RightSheet = ({
28339
28443
  }
28340
28444
  ],
28341
28445
  children: /* @__PURE__ */ jsx10(
28342
- Text5,
28446
+ Text7,
28343
28447
  {
28344
28448
  style: [
28345
28449
  styles9.segmentText,
@@ -28388,7 +28492,7 @@ var RightSheet = ({
28388
28492
  ],
28389
28493
  children: [
28390
28494
  /* @__PURE__ */ jsxs10(
28391
- Text5,
28495
+ Text7,
28392
28496
  {
28393
28497
  style: [
28394
28498
  styles9.progressLabel,
@@ -28401,7 +28505,7 @@ var RightSheet = ({
28401
28505
  }
28402
28506
  ),
28403
28507
  /* @__PURE__ */ jsxs10(
28404
- Text5,
28508
+ Text7,
28405
28509
  {
28406
28510
  style: [
28407
28511
  styles9.progressMeta,
@@ -28425,7 +28529,7 @@ var RightSheet = ({
28425
28529
  {
28426
28530
  contentContainerStyle: styles9.summaryContent,
28427
28531
  showsVerticalScrollIndicator: false,
28428
- children: outline.length === 0 ? /* @__PURE__ */ jsx10(Text5, { style: [styles9.emptyText, isDark && styles9.emptyTextDark], children: t.noSummary }) : outline.map((item, index) => /* @__PURE__ */ jsx10(
28532
+ children: outline.length === 0 ? /* @__PURE__ */ jsx10(Text7, { style: [styles9.emptyText, isDark && styles9.emptyTextDark], children: t.noSummary }) : outline.map((item, index) => /* @__PURE__ */ jsx10(
28429
28533
  OutlineNode,
28430
28534
  {
28431
28535
  item,
@@ -28442,7 +28546,7 @@ var RightSheet = ({
28442
28546
  {
28443
28547
  contentContainerStyle: styles9.content,
28444
28548
  showsVerticalScrollIndicator: false,
28445
- children: annotations.length === 0 ? /* @__PURE__ */ jsx10(Text5, { style: [styles9.emptyText, isDark && styles9.emptyTextDark], children: t.noAnnotations }) : /* @__PURE__ */ jsx10(View9, { children: annotations.map((ann) => /* @__PURE__ */ jsxs10(
28549
+ children: annotations.length === 0 ? /* @__PURE__ */ jsx10(Text7, { style: [styles9.emptyText, isDark && styles9.emptyTextDark], children: t.noAnnotations }) : /* @__PURE__ */ jsx10(View9, { children: annotations.map((ann) => /* @__PURE__ */ jsxs10(
28446
28550
  Pressable7,
28447
28551
  {
28448
28552
  onPress: () => {
@@ -28460,7 +28564,7 @@ var RightSheet = ({
28460
28564
  }
28461
28565
  ),
28462
28566
  /* @__PURE__ */ jsxs10(
28463
- Text5,
28567
+ Text7,
28464
28568
  {
28465
28569
  style: [styles9.noteTitle, isDark && styles9.noteTitleDark],
28466
28570
  children: [
@@ -28472,7 +28576,7 @@ var RightSheet = ({
28472
28576
  )
28473
28577
  ] }),
28474
28578
  /* @__PURE__ */ jsx10(
28475
- Text5,
28579
+ Text7,
28476
28580
  {
28477
28581
  style: [
28478
28582
  styles9.noteType,
@@ -28483,7 +28587,7 @@ var RightSheet = ({
28483
28587
  }
28484
28588
  ),
28485
28589
  ann.content ? /* @__PURE__ */ jsx10(
28486
- Text5,
28590
+ Text7,
28487
28591
  {
28488
28592
  style: [
28489
28593
  styles9.noteContent,
@@ -28754,7 +28858,7 @@ import { useEffect as useEffect8, useState as useState9 } from "react";
28754
28858
  import {
28755
28859
  Modal as Modal3,
28756
28860
  View as View10,
28757
- Text as Text6,
28861
+ Text as Text8,
28758
28862
  TextInput as TextInput2,
28759
28863
  Pressable as Pressable8,
28760
28864
  StyleSheet as StyleSheet10
@@ -28795,7 +28899,7 @@ var AnnotationEditor = () => {
28795
28899
  animationType: "fade",
28796
28900
  onRequestClose: handleClose,
28797
28901
  children: /* @__PURE__ */ jsx11(View10, { style: styles10.overlay, children: /* @__PURE__ */ jsxs11(View10, { style: [styles10.card, isDark && styles10.cardDark], children: [
28798
- /* @__PURE__ */ jsx11(Text6, { style: [styles10.title, isDark && styles10.titleDark], children: t.editNote }),
28902
+ /* @__PURE__ */ jsx11(Text8, { style: [styles10.title, isDark && styles10.titleDark], children: t.editNote }),
28799
28903
  /* @__PURE__ */ jsx11(
28800
28904
  TextInput2,
28801
28905
  {
@@ -28813,7 +28917,7 @@ var AnnotationEditor = () => {
28813
28917
  {
28814
28918
  onPress: handleClose,
28815
28919
  style: [styles10.actionButton, styles10.actionCancel],
28816
- children: /* @__PURE__ */ jsx11(Text6, { style: styles10.actionText, children: t.cancel })
28920
+ children: /* @__PURE__ */ jsx11(Text8, { style: styles10.actionText, children: t.cancel })
28817
28921
  }
28818
28922
  ),
28819
28923
  /* @__PURE__ */ jsx11(
@@ -28825,7 +28929,7 @@ var AnnotationEditor = () => {
28825
28929
  styles10.actionSave,
28826
28930
  { backgroundColor: accentColor }
28827
28931
  ],
28828
- children: /* @__PURE__ */ jsx11(Text6, { style: [styles10.actionText, styles10.actionTextLight], children: t.save })
28932
+ children: /* @__PURE__ */ jsx11(Text8, { style: [styles10.actionText, styles10.actionTextLight], children: t.save })
28829
28933
  }
28830
28934
  )
28831
28935
  ] })
@@ -29191,7 +29295,7 @@ var styles11 = StyleSheet11.create({
29191
29295
  var BottomBar_default = BottomBar;
29192
29296
 
29193
29297
  // components/SettingsSheet.tsx
29194
- import { Dimensions as Dimensions2, View as View12, Text as Text7, Pressable as Pressable10, StyleSheet as StyleSheet12 } from "react-native";
29298
+ import { Dimensions as Dimensions2, View as View12, Text as Text9, Pressable as Pressable10, StyleSheet as StyleSheet12 } from "react-native";
29195
29299
  import { useViewerStore as useViewerStore10 } from "@papyrus-sdk/core";
29196
29300
  import { jsx as jsx13, jsxs as jsxs13 } from "react/jsx-runtime";
29197
29301
  var PAGE_THEME_OPTIONS = [
@@ -29282,7 +29386,7 @@ var SettingsSheet = ({
29282
29386
  children: [
29283
29387
  /* @__PURE__ */ jsxs13(View12, { style: styles12.section, children: [
29284
29388
  /* @__PURE__ */ jsx13(
29285
- Text7,
29389
+ Text9,
29286
29390
  {
29287
29391
  style: [styles12.sectionTitle, isDark && styles12.sectionTitleDark],
29288
29392
  children: t.appearance
@@ -29300,7 +29404,7 @@ var SettingsSheet = ({
29300
29404
  uiTheme === "light" && { backgroundColor: accentColor }
29301
29405
  ],
29302
29406
  children: /* @__PURE__ */ jsx13(
29303
- Text7,
29407
+ Text9,
29304
29408
  {
29305
29409
  style: [
29306
29410
  styles12.optionText,
@@ -29323,7 +29427,7 @@ var SettingsSheet = ({
29323
29427
  uiTheme === "dark" && { backgroundColor: accentColor }
29324
29428
  ],
29325
29429
  children: /* @__PURE__ */ jsx13(
29326
- Text7,
29430
+ Text9,
29327
29431
  {
29328
29432
  style: [
29329
29433
  styles12.optionText,
@@ -29339,7 +29443,7 @@ var SettingsSheet = ({
29339
29443
  ] }),
29340
29444
  /* @__PURE__ */ jsxs13(View12, { style: styles12.section, children: [
29341
29445
  /* @__PURE__ */ jsx13(
29342
- Text7,
29446
+ Text9,
29343
29447
  {
29344
29448
  style: [styles12.sectionTitle, isDark && styles12.sectionTitleDark],
29345
29449
  children: t.pageTheme
@@ -29360,7 +29464,7 @@ var SettingsSheet = ({
29360
29464
  children: [
29361
29465
  /* @__PURE__ */ jsx13(ThemeSwatch, { value: option.value }),
29362
29466
  /* @__PURE__ */ jsx13(
29363
- Text7,
29467
+ Text9,
29364
29468
  {
29365
29469
  style: [
29366
29470
  styles12.themeOptionLabel,
@@ -29378,7 +29482,7 @@ var SettingsSheet = ({
29378
29482
  ] }),
29379
29483
  /* @__PURE__ */ jsxs13(View12, { style: styles12.section, children: [
29380
29484
  /* @__PURE__ */ jsx13(
29381
- Text7,
29485
+ Text9,
29382
29486
  {
29383
29487
  style: [styles12.sectionTitle, isDark && styles12.sectionTitleDark],
29384
29488
  children: t.pageTransition
@@ -29396,7 +29500,7 @@ var SettingsSheet = ({
29396
29500
  (!isPaged || isDouble) && { backgroundColor: accentColor }
29397
29501
  ],
29398
29502
  children: /* @__PURE__ */ jsx13(
29399
- Text7,
29503
+ Text9,
29400
29504
  {
29401
29505
  style: [
29402
29506
  styles12.optionText,
@@ -29419,7 +29523,7 @@ var SettingsSheet = ({
29419
29523
  isPaged && { backgroundColor: accentColor }
29420
29524
  ],
29421
29525
  children: /* @__PURE__ */ jsx13(
29422
- Text7,
29526
+ Text9,
29423
29527
  {
29424
29528
  style: [
29425
29529
  styles12.optionText,
@@ -29435,7 +29539,7 @@ var SettingsSheet = ({
29435
29539
  ] }),
29436
29540
  /* @__PURE__ */ jsxs13(View12, { style: styles12.section, children: [
29437
29541
  /* @__PURE__ */ jsx13(
29438
- Text7,
29542
+ Text9,
29439
29543
  {
29440
29544
  style: [styles12.sectionTitle, isDark && styles12.sectionTitleDark],
29441
29545
  children: t.layout
@@ -29453,7 +29557,7 @@ var SettingsSheet = ({
29453
29557
  !isDouble && { backgroundColor: accentColor }
29454
29558
  ],
29455
29559
  children: /* @__PURE__ */ jsx13(
29456
- Text7,
29560
+ Text9,
29457
29561
  {
29458
29562
  style: [
29459
29563
  styles12.optionText,
@@ -29476,7 +29580,7 @@ var SettingsSheet = ({
29476
29580
  isDouble && { backgroundColor: accentColor }
29477
29581
  ],
29478
29582
  children: /* @__PURE__ */ jsx13(
29479
- Text7,
29583
+ Text9,
29480
29584
  {
29481
29585
  style: [
29482
29586
  styles12.optionText,
@@ -29492,7 +29596,7 @@ var SettingsSheet = ({
29492
29596
  ] }),
29493
29597
  /* @__PURE__ */ jsxs13(View12, { style: styles12.section, children: [
29494
29598
  /* @__PURE__ */ jsx13(
29495
- Text7,
29599
+ Text9,
29496
29600
  {
29497
29601
  style: [styles12.sectionTitle, isDark && styles12.sectionTitleDark],
29498
29602
  children: t.rotate
@@ -29505,7 +29609,7 @@ var SettingsSheet = ({
29505
29609
  onPress: () => handleRotate("counterclockwise"),
29506
29610
  style: [styles12.optionButton, isDark && styles12.optionButtonDark],
29507
29611
  children: /* @__PURE__ */ jsx13(
29508
- Text7,
29612
+ Text9,
29509
29613
  {
29510
29614
  style: [styles12.optionText, isDark && styles12.optionTextDark],
29511
29615
  children: t.counterclockwise
@@ -29519,7 +29623,7 @@ var SettingsSheet = ({
29519
29623
  onPress: () => handleRotate("clockwise"),
29520
29624
  style: [styles12.optionButton, isDark && styles12.optionButtonDark],
29521
29625
  children: /* @__PURE__ */ jsx13(
29522
- Text7,
29626
+ Text9,
29523
29627
  {
29524
29628
  style: [styles12.optionText, isDark && styles12.optionTextDark],
29525
29629
  children: t.clockwise
@@ -29531,7 +29635,7 @@ var SettingsSheet = ({
29531
29635
  ] }),
29532
29636
  /* @__PURE__ */ jsxs13(View12, { style: styles12.section, children: [
29533
29637
  /* @__PURE__ */ jsx13(
29534
- Text7,
29638
+ Text9,
29535
29639
  {
29536
29640
  style: [styles12.sectionTitle, isDark && styles12.sectionTitleDark],
29537
29641
  children: t.zoom
@@ -29546,7 +29650,7 @@ var SettingsSheet = ({
29546
29650
  children: /* @__PURE__ */ jsx13(IconZoomOut, { size: 16, color: isDark ? "#e5e7eb" : "#111827" })
29547
29651
  }
29548
29652
  ),
29549
- /* @__PURE__ */ jsx13(View12, { style: styles12.zoomValue, children: /* @__PURE__ */ jsxs13(Text7, { style: [styles12.zoomText, isDark && styles12.zoomTextDark], children: [
29653
+ /* @__PURE__ */ jsx13(View12, { style: styles12.zoomValue, children: /* @__PURE__ */ jsxs13(Text9, { style: [styles12.zoomText, isDark && styles12.zoomTextDark], children: [
29550
29654
  Math.round(zoom * 100),
29551
29655
  "%"
29552
29656
  ] }) }),
@@ -29562,7 +29666,7 @@ var SettingsSheet = ({
29562
29666
  ] }),
29563
29667
  /* @__PURE__ */ jsxs13(View12, { style: styles12.section, children: [
29564
29668
  /* @__PURE__ */ jsx13(
29565
- Text7,
29669
+ Text9,
29566
29670
  {
29567
29671
  style: [styles12.sectionTitle, isDark && styles12.sectionTitleDark],
29568
29672
  children: t.language
@@ -29580,7 +29684,7 @@ var SettingsSheet = ({
29580
29684
  locale === "en" && { backgroundColor: accentColor }
29581
29685
  ],
29582
29686
  children: /* @__PURE__ */ jsx13(
29583
- Text7,
29687
+ Text9,
29584
29688
  {
29585
29689
  style: [
29586
29690
  styles12.optionText,
@@ -29603,7 +29707,7 @@ var SettingsSheet = ({
29603
29707
  locale === "pt-BR" && { backgroundColor: accentColor }
29604
29708
  ],
29605
29709
  children: /* @__PURE__ */ jsx13(
29606
- Text7,
29710
+ Text9,
29607
29711
  {
29608
29712
  style: [
29609
29713
  styles12.optionText,
@@ -29760,7 +29864,7 @@ import { useEffect as useEffect9, useMemo as useMemo6, useRef as useRef7, useSta
29760
29864
  import {
29761
29865
  ActivityIndicator,
29762
29866
  StyleSheet as StyleSheet13,
29763
- Text as Text8,
29867
+ Text as Text10,
29764
29868
  UIManager as UIManager2,
29765
29869
  View as View13,
29766
29870
  findNodeHandle as findNodeHandle3
@@ -29883,12 +29987,12 @@ var CoverPreview = ({
29883
29987
  }
29884
29988
  };
29885
29989
  if (!shouldRender || !canRender) {
29886
- return /* @__PURE__ */ jsx14(View13, { style: [styles13.container, style], children: placeholder ?? /* @__PURE__ */ jsx14(View13, { style: styles13.placeholder, children: /* @__PURE__ */ jsx14(Text8, { style: styles13.placeholderText, children: "Preview" }) }) });
29990
+ return /* @__PURE__ */ jsx14(View13, { style: [styles13.container, style], children: placeholder ?? /* @__PURE__ */ jsx14(View13, { style: styles13.placeholder, children: /* @__PURE__ */ jsx14(Text10, { style: styles13.placeholderText, children: "Preview" }) }) });
29887
29991
  }
29888
29992
  return /* @__PURE__ */ jsxs14(View13, { style: [styles13.container, style], onLayout: handleLayout, children: [
29889
29993
  /* @__PURE__ */ jsx14(View13, { style: styles13.previewFrame, pointerEvents: allowInteraction ? "auto" : "none", children: isPdf ? /* @__PURE__ */ jsx14(PapyrusPageView3, { ref: viewRef, style: styles13.pageView }) : engine && /* @__PURE__ */ jsx14(WebViewViewer_default, { engine }) }),
29890
29994
  showLoading && loading && /* @__PURE__ */ jsx14(View13, { pointerEvents: "none", style: styles13.loadingOverlay, children: loadingIndicator ?? /* @__PURE__ */ jsx14(ActivityIndicator, { size: "small", color: "#2563eb" }) }),
29891
- error && /* @__PURE__ */ jsx14(View13, { pointerEvents: "none", style: styles13.errorOverlay, children: /* @__PURE__ */ jsx14(Text8, { style: styles13.errorText, children: "Preview unavailable" }) })
29995
+ error && /* @__PURE__ */ jsx14(View13, { pointerEvents: "none", style: styles13.errorOverlay, children: /* @__PURE__ */ jsx14(Text10, { style: styles13.errorText, children: "Preview unavailable" }) })
29892
29996
  ] });
29893
29997
  };
29894
29998
  var styles13 = StyleSheet13.create({
@@ -29947,7 +30051,7 @@ import {
29947
30051
  Modal as Modal4,
29948
30052
  Pressable as Pressable11,
29949
30053
  StyleSheet as StyleSheet14,
29950
- Text as Text9,
30054
+ Text as Text11,
29951
30055
  View as View14
29952
30056
  } from "react-native";
29953
30057
  import { useViewerStore as useViewerStore11 } from "@papyrus-sdk/core";
@@ -29964,12 +30068,12 @@ function DocumentActionsSheet({
29964
30068
  onPress: (event) => event.stopPropagation(),
29965
30069
  style: [styles14.card, isDark && styles14.cardDark],
29966
30070
  children: [
29967
- /* @__PURE__ */ jsx15(Text9, { style: [styles14.eyebrow, isDark && styles14.eyebrowDark], children: "Document actions" }),
30071
+ /* @__PURE__ */ jsx15(Text11, { style: [styles14.eyebrow, isDark && styles14.eyebrowDark], children: "Document actions" }),
29968
30072
  /* @__PURE__ */ jsxs15(View14, { style: styles14.actionList, children: [
29969
- /* @__PURE__ */ jsx15(View14, { style: [styles14.actionItem, isDark && styles14.actionItemDark], children: /* @__PURE__ */ jsx15(Text9, { style: [styles14.actionText, isDark && styles14.actionTextDark], children: "Share" }) }),
29970
- /* @__PURE__ */ jsx15(View14, { style: [styles14.actionItem, isDark && styles14.actionItemDark], children: /* @__PURE__ */ jsx15(Text9, { style: [styles14.actionText, isDark && styles14.actionTextDark], children: "Export" }) })
30073
+ /* @__PURE__ */ jsx15(View14, { style: [styles14.actionItem, isDark && styles14.actionItemDark], children: /* @__PURE__ */ jsx15(Text11, { style: [styles14.actionText, isDark && styles14.actionTextDark], children: "Share" }) }),
30074
+ /* @__PURE__ */ jsx15(View14, { style: [styles14.actionItem, isDark && styles14.actionItemDark], children: /* @__PURE__ */ jsx15(Text11, { style: [styles14.actionText, isDark && styles14.actionTextDark], children: "Export" }) })
29971
30075
  ] }),
29972
- /* @__PURE__ */ jsx15(Pressable11, { onPress: onClose, style: styles14.closeButton, accessibilityLabel: "Close actions sheet", children: /* @__PURE__ */ jsx15(Text9, { style: styles14.closeText, children: "Close" }) })
30076
+ /* @__PURE__ */ jsx15(Pressable11, { onPress: onClose, style: styles14.closeButton, accessibilityLabel: "Close actions sheet", children: /* @__PURE__ */ jsx15(Text11, { style: styles14.closeText, children: "Close" }) })
29973
30077
  ]
29974
30078
  }
29975
30079
  ) }) });
@@ -30040,7 +30144,7 @@ import {
30040
30144
  Pressable as Pressable12,
30041
30145
  ScrollView as ScrollView4,
30042
30146
  StyleSheet as StyleSheet15,
30043
- Text as Text10,
30147
+ Text as Text12,
30044
30148
  View as View15
30045
30149
  } from "react-native";
30046
30150
  import { useViewerStore as useViewerStore12 } from "@papyrus-sdk/core";
@@ -30199,7 +30303,7 @@ function InfoSheet({
30199
30303
  }
30200
30304
  ),
30201
30305
  /* @__PURE__ */ jsx16(
30202
- Text10,
30306
+ Text12,
30203
30307
  {
30204
30308
  style: [styles15.headerTitle, isDark && styles15.headerTitleDark],
30205
30309
  numberOfLines: 1,
@@ -30216,7 +30320,7 @@ function InfoSheet({
30216
30320
  showsVerticalScrollIndicator: false,
30217
30321
  children: [
30218
30322
  /* @__PURE__ */ jsx16(
30219
- Text10,
30323
+ Text12,
30220
30324
  {
30221
30325
  style: [styles15.sectionTitle, isDark && styles15.sectionTitleDark],
30222
30326
  children: locale === "pt-BR" ? "Informa\xE7\xF5es" : "Information"
@@ -30227,9 +30331,9 @@ function InfoSheet({
30227
30331
  {
30228
30332
  style: [styles15.row, isDark && styles15.rowDark],
30229
30333
  children: [
30230
- /* @__PURE__ */ jsx16(Text10, { style: [styles15.label, isDark && styles15.labelDark], children: row.label }),
30334
+ /* @__PURE__ */ jsx16(Text12, { style: [styles15.label, isDark && styles15.labelDark], children: row.label }),
30231
30335
  /* @__PURE__ */ jsx16(
30232
- Text10,
30336
+ Text12,
30233
30337
  {
30234
30338
  style: [styles15.value, isDark && styles15.valueDark],
30235
30339
  selectable: true,
@@ -30352,7 +30456,7 @@ var styles15 = StyleSheet15.create({
30352
30456
  });
30353
30457
 
30354
30458
  // components/OverflowSheet.tsx
30355
- import { Modal as Modal6, Pressable as Pressable13, StyleSheet as StyleSheet16, Text as Text11, View as View16 } from "react-native";
30459
+ import { Modal as Modal6, Pressable as Pressable13, StyleSheet as StyleSheet16, Text as Text13, View as View16 } from "react-native";
30356
30460
  import { useViewerStore as useViewerStore13 } from "@papyrus-sdk/core";
30357
30461
  import { jsx as jsx17, jsxs as jsxs17 } from "react/jsx-runtime";
30358
30462
  var actionLabels = [{ key: "actions", label: "Document actions" }];
@@ -30387,7 +30491,7 @@ function OverflowSheet({
30387
30491
  style: [styles16.actionButton, { borderColor: accentColor }],
30388
30492
  accessibilityLabel: action.label,
30389
30493
  children: /* @__PURE__ */ jsx17(
30390
- Text11,
30494
+ Text13,
30391
30495
  {
30392
30496
  style: [styles16.actionText, isDark && styles16.actionTextDark],
30393
30497
  children: action.label
@@ -30444,7 +30548,7 @@ var styles16 = StyleSheet16.create({
30444
30548
 
30445
30549
  // components/ProgressPill.tsx
30446
30550
  import { useMemo as useMemo7 } from "react";
30447
- import { Pressable as Pressable14, StyleSheet as StyleSheet17, Text as Text12, View as View17 } from "react-native";
30551
+ import { Pressable as Pressable14, StyleSheet as StyleSheet17, Text as Text14, View as View17 } from "react-native";
30448
30552
  import { useViewerStore as useViewerStore14 } from "@papyrus-sdk/core";
30449
30553
  import { jsx as jsx18, jsxs as jsxs18 } from "react/jsx-runtime";
30450
30554
  var clampPercent = (value) => Math.max(0, Math.min(100, Math.round(value)));
@@ -30508,7 +30612,7 @@ function ProgressPill({
30508
30612
  onLongPress: onOpenPageJump,
30509
30613
  style: styles17.labelHit,
30510
30614
  accessibilityLabel: "Open page jump",
30511
- children: /* @__PURE__ */ jsx18(Text12, { style: [styles17.label, isDark && styles17.labelDark], children: label })
30615
+ children: /* @__PURE__ */ jsx18(Text14, { style: [styles17.label, isDark && styles17.labelDark], children: label })
30512
30616
  }
30513
30617
  )
30514
30618
  ]
@@ -30568,7 +30672,7 @@ import {
30568
30672
  Keyboard,
30569
30673
  Pressable as Pressable15,
30570
30674
  StyleSheet as StyleSheet18,
30571
- Text as Text13,
30675
+ Text as Text15,
30572
30676
  TextInput as TextInput3,
30573
30677
  View as View18
30574
30678
  } from "react-native";
@@ -30653,7 +30757,7 @@ function SearchOverlay({
30653
30757
  onPress: handleClose,
30654
30758
  style: [styles18.closeButton, isDark && styles18.closeButtonDark],
30655
30759
  accessibilityLabel: "Close search",
30656
- children: /* @__PURE__ */ jsx19(Text13, { style: [styles18.closeText, isDark && styles18.closeTextDark], children: t.cancel })
30760
+ children: /* @__PURE__ */ jsx19(Text15, { style: [styles18.closeText, isDark && styles18.closeTextDark], children: t.cancel })
30657
30761
  }
30658
30762
  )
30659
30763
  ] }),
@@ -30672,7 +30776,7 @@ function SearchOverlay({
30672
30776
  children: /* @__PURE__ */ jsx19(IconChevronLeft, { size: 16, color: isDark ? "#e5e7eb" : "#111827" })
30673
30777
  }
30674
30778
  ),
30675
- /* @__PURE__ */ jsx19(Text13, { style: [styles18.metaText, isDark && styles18.metaTextDark], children: isSearching ? t.searching : `${currentCount}/${searchResults.length} ${targetLabel}` }),
30779
+ /* @__PURE__ */ jsx19(Text15, { style: [styles18.metaText, isDark && styles18.metaTextDark], children: isSearching ? t.searching : `${currentCount}/${searchResults.length} ${targetLabel}` }),
30676
30780
  /* @__PURE__ */ jsx19(
30677
30781
  Pressable15,
30678
30782
  {
@@ -30695,7 +30799,7 @@ function SearchOverlay({
30695
30799
  onPress: handleSubmit,
30696
30800
  style: [styles18.primaryAction, { backgroundColor: accentColor }],
30697
30801
  accessibilityLabel: "Run search",
30698
- children: /* @__PURE__ */ jsx19(Text13, { style: styles18.primaryActionText, children: t.searchGo })
30802
+ children: /* @__PURE__ */ jsx19(Text15, { style: styles18.primaryActionText, children: t.searchGo })
30699
30803
  }
30700
30804
  ),
30701
30805
  /* @__PURE__ */ jsx19(
@@ -30710,7 +30814,7 @@ function SearchOverlay({
30710
30814
  ],
30711
30815
  accessibilityLabel: "Open all results",
30712
30816
  children: /* @__PURE__ */ jsx19(
30713
- Text13,
30817
+ Text15,
30714
30818
  {
30715
30819
  style: [
30716
30820
  styles18.secondaryActionText,
@@ -30872,7 +30976,7 @@ import {
30872
30976
  Pressable as Pressable16,
30873
30977
  ScrollView as ScrollView5,
30874
30978
  StyleSheet as StyleSheet19,
30875
- Text as Text14,
30979
+ Text as Text16,
30876
30980
  View as View19
30877
30981
  } from "react-native";
30878
30982
  import { useViewerStore as useViewerStore16 } from "@papyrus-sdk/core";
@@ -30912,14 +31016,14 @@ function SearchResultsSheet({
30912
31016
  /* @__PURE__ */ jsxs20(View19, { style: [styles19.sheet, isDark && styles19.sheetDark], children: [
30913
31017
  /* @__PURE__ */ jsx20(View19, { style: [styles19.handle, isDark && styles19.handleDark] }),
30914
31018
  /* @__PURE__ */ jsxs20(View19, { style: styles19.header, children: [
30915
- /* @__PURE__ */ jsx20(Text14, { style: [styles19.title, isDark && styles19.titleDark], children: t.allResults }),
30916
- /* @__PURE__ */ jsxs20(Text14, { style: [styles19.meta, isDark && styles19.metaDark], children: [
31019
+ /* @__PURE__ */ jsx20(Text16, { style: [styles19.title, isDark && styles19.titleDark], children: t.allResults }),
31020
+ /* @__PURE__ */ jsxs20(Text16, { style: [styles19.meta, isDark && styles19.metaDark], children: [
30917
31021
  searchResults.length,
30918
31022
  " ",
30919
31023
  t.results
30920
31024
  ] })
30921
31025
  ] }),
30922
- /* @__PURE__ */ jsx20(ScrollView5, { contentContainerStyle: styles19.content, children: searchResults.length === 0 ? /* @__PURE__ */ jsx20(Text14, { style: [styles19.emptyText, isDark && styles19.emptyTextDark], children: t.noResults }) : searchResults.map((result, index) => {
31026
+ /* @__PURE__ */ jsx20(ScrollView5, { contentContainerStyle: styles19.content, children: searchResults.length === 0 ? /* @__PURE__ */ jsx20(Text16, { style: [styles19.emptyText, isDark && styles19.emptyTextDark], children: t.noResults }) : searchResults.map((result, index) => {
30923
31027
  const isActive = index === activeSearchIndex;
30924
31028
  return /* @__PURE__ */ jsxs20(
30925
31029
  Pressable16,
@@ -30941,9 +31045,9 @@ function SearchResultsSheet({
30941
31045
  }
30942
31046
  ],
30943
31047
  children: [
30944
- /* @__PURE__ */ jsx20(Text14, { style: [styles19.resultLabel, { color: accentColor }], children: getResultLabel(result.pageIndex) }),
31048
+ /* @__PURE__ */ jsx20(Text16, { style: [styles19.resultLabel, { color: accentColor }], children: getResultLabel(result.pageIndex) }),
30945
31049
  /* @__PURE__ */ jsx20(
30946
- Text14,
31050
+ Text16,
30947
31051
  {
30948
31052
  style: [
30949
31053
  styles19.resultText,