@embedpdf/viewer-chrome 3.0.0-next.15 → 3.0.0-next.16

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 (200) hide show
  1. package/dist/{annotation-fonts-BqoLZ4Mp.js → annotation-fonts-DWjVOTP0.js} +2 -2
  2. package/dist/{annotation-fonts-BqoLZ4Mp.js.map → annotation-fonts-DWjVOTP0.js.map} +1 -1
  3. package/dist/{annotation-fonts-Dt0IQXhz.cjs → annotation-fonts-dpfVkhnq.cjs} +2 -2
  4. package/dist/{annotation-fonts-Dt0IQXhz.cjs.map → annotation-fonts-dpfVkhnq.cjs.map} +1 -1
  5. package/dist/{annotation-style-Bzvvp8-N.cjs → annotation-style-B3XKAyZ-.cjs} +3 -3
  6. package/dist/{annotation-style-Bzvvp8-N.cjs.map → annotation-style-B3XKAyZ-.cjs.map} +1 -1
  7. package/dist/{annotation-style--rPIZsuP.js → annotation-style-CXF3X47Z.js} +3 -3
  8. package/dist/{annotation-style--rPIZsuP.js.map → annotation-style-CXF3X47Z.js.map} +1 -1
  9. package/dist/{ar-DnEj5vbP.cjs → ar-B132r9bo.cjs} +93 -1
  10. package/dist/ar-B132r9bo.cjs.map +1 -0
  11. package/dist/{ar-D9XKAmDx.js → ar-BLWFJoA_.js} +93 -1
  12. package/dist/ar-BLWFJoA_.js.map +1 -0
  13. package/dist/attachments-panel-Cxln8xos.cjs +217 -0
  14. package/dist/attachments-panel-Cxln8xos.cjs.map +1 -0
  15. package/dist/attachments-panel-H1ucRbwo.js +217 -0
  16. package/dist/attachments-panel-H1ucRbwo.js.map +1 -0
  17. package/dist/chrome.cjs +21 -0
  18. package/dist/chrome.cjs.map +1 -1
  19. package/dist/chrome.js +21 -0
  20. package/dist/chrome.js.map +1 -1
  21. package/dist/{commands-BmgxhJ8B.js → commands-BkgLP3Om.js} +418 -23
  22. package/dist/commands-BkgLP3Om.js.map +1 -0
  23. package/dist/{commands-CYt4SFUX.cjs → commands-DL1gjZt7.cjs} +433 -20
  24. package/dist/commands-DL1gjZt7.cjs.map +1 -0
  25. package/dist/commands.cjs +2 -1
  26. package/dist/commands.d.cts +3 -1
  27. package/dist/commands.d.ts +3 -1
  28. package/dist/commands.js +2 -2
  29. package/dist/{comments-panel-pEcQg4Vs.cjs → comments-panel-BsnWedTh.cjs} +2 -2
  30. package/dist/{comments-panel-pEcQg4Vs.cjs.map → comments-panel-BsnWedTh.cjs.map} +1 -1
  31. package/dist/{comments-panel-MUVgLCBI.js → comments-panel-D7Eadws9.js} +2 -2
  32. package/dist/{comments-panel-MUVgLCBI.js.map → comments-panel-D7Eadws9.js.map} +1 -1
  33. package/dist/{de-Dv6zvbnd.cjs → de-7_MvFWzN.cjs} +93 -1
  34. package/dist/de-7_MvFWzN.cjs.map +1 -0
  35. package/dist/{de-Bdr4aWzm.js → de-BUhwc9-x.js} +93 -1
  36. package/dist/de-BUhwc9-x.js.map +1 -0
  37. package/dist/{dialog-B5GBisKv.js → dialog-BIb373cg.js} +3 -3
  38. package/dist/dialog-BIb373cg.js.map +1 -0
  39. package/dist/{dialog-t8F13BL_.cjs → dialog-CngKTnAM.cjs} +3 -3
  40. package/dist/dialog-CngKTnAM.cjs.map +1 -0
  41. package/dist/{es-BP09DR9w.cjs → es-DgYj-1L3.cjs} +93 -1
  42. package/dist/es-DgYj-1L3.cjs.map +1 -0
  43. package/dist/{es-BSXz5tBv.js → es-DoXTqFoO.js} +93 -1
  44. package/dist/es-DoXTqFoO.js.map +1 -0
  45. package/dist/{form-design-panel-vWWU9uB-.js → form-design-panel-CgV_5YWC.js} +3 -3
  46. package/dist/{form-design-panel-vWWU9uB-.js.map → form-design-panel-CgV_5YWC.js.map} +1 -1
  47. package/dist/{form-design-panel-B5MXTZ96.cjs → form-design-panel-D0FdmWXW.cjs} +3 -3
  48. package/dist/{form-design-panel-B5MXTZ96.cjs.map → form-design-panel-D0FdmWXW.cjs.map} +1 -1
  49. package/dist/{fr-Ckn3K9v1.js → fr-B-8NDhBA.js} +93 -1
  50. package/dist/fr-B-8NDhBA.js.map +1 -0
  51. package/dist/{fr-BBQQn7tJ.cjs → fr-C856dmQJ.cjs} +93 -1
  52. package/dist/fr-C856dmQJ.cjs.map +1 -0
  53. package/dist/{he-DRsG7bH7.cjs → he-BFTeNc4t.cjs} +93 -1
  54. package/dist/he-BFTeNc4t.cjs.map +1 -0
  55. package/dist/{he-wdGU5PkU.js → he-Dlh0fNXM.js} +93 -1
  56. package/dist/he-Dlh0fNXM.js.map +1 -0
  57. package/dist/{icons-x0Tc05bs.cjs → icons-1UfLUZ_y.cjs} +20 -1
  58. package/dist/icons-1UfLUZ_y.cjs.map +1 -0
  59. package/dist/{icons-BrK5iVL8.js → icons-7dB0Y1ct.js} +20 -1
  60. package/dist/icons-7dB0Y1ct.js.map +1 -0
  61. package/dist/index.cjs +740 -171
  62. package/dist/index.cjs.map +1 -1
  63. package/dist/index.d.cts +16 -2
  64. package/dist/index.d.ts +16 -2
  65. package/dist/index.js +727 -170
  66. package/dist/index.js.map +1 -1
  67. package/dist/{it-BuP4o0xQ.cjs → it-Bef-2Yxq.cjs} +93 -1
  68. package/dist/it-Bef-2Yxq.cjs.map +1 -0
  69. package/dist/{it-Us-VmvIu.js → it-BkirG7ol.js} +93 -1
  70. package/dist/it-BkirG7ol.js.map +1 -0
  71. package/dist/{ja-Cizj0-5O.js → ja-CGEjCE-s.js} +93 -1
  72. package/dist/ja-CGEjCE-s.js.map +1 -0
  73. package/dist/{ja-DovEd6ts.cjs → ja-DNw2zqSD.cjs} +93 -1
  74. package/dist/ja-DNw2zqSD.cjs.map +1 -0
  75. package/dist/{ko-DlrXliE1.js → ko-CTkl5vMh.js} +93 -1
  76. package/dist/ko-CTkl5vMh.js.map +1 -0
  77. package/dist/{ko-B-qJEol2.cjs → ko-YHzeBqP6.cjs} +93 -1
  78. package/dist/ko-YHzeBqP6.cjs.map +1 -0
  79. package/dist/{link-editor-CSjqPnj1.cjs → link-editor-CAS7MZM2.cjs} +2 -2
  80. package/dist/{link-editor-CSjqPnj1.cjs.map → link-editor-CAS7MZM2.cjs.map} +1 -1
  81. package/dist/{link-editor-SxM1nnJU.js → link-editor-CkwtqRvb.js} +2 -2
  82. package/dist/{link-editor-SxM1nnJU.js.map → link-editor-CkwtqRvb.js.map} +1 -1
  83. package/dist/{measurement-Bs61XWbJ.js → measurement-CQdbnIrn.js} +2 -2
  84. package/dist/{measurement-Bs61XWbJ.js.map → measurement-CQdbnIrn.js.map} +1 -1
  85. package/dist/{measurement-CcCsHPOX.cjs → measurement-Cxv1Ahxx.cjs} +2 -2
  86. package/dist/{measurement-CcCsHPOX.cjs.map → measurement-Cxv1Ahxx.cjs.map} +1 -1
  87. package/dist/{nl-D3KZDDiJ.cjs → nl-BjkbaLq3.cjs} +93 -1
  88. package/dist/nl-BjkbaLq3.cjs.map +1 -0
  89. package/dist/{nl-0aF7M_0h.js → nl-Dya4sR8_.js} +93 -1
  90. package/dist/nl-Dya4sR8_.js.map +1 -0
  91. package/dist/outline-panel-BpGtBdj0.cjs +707 -0
  92. package/dist/outline-panel-BpGtBdj0.cjs.map +1 -0
  93. package/dist/outline-panel-DO5_REYw.js +707 -0
  94. package/dist/outline-panel-DO5_REYw.js.map +1 -0
  95. package/dist/outline-properties-BCa2cc0t.js +330 -0
  96. package/dist/outline-properties-BCa2cc0t.js.map +1 -0
  97. package/dist/outline-properties-DT3FIxCw.cjs +330 -0
  98. package/dist/outline-properties-DT3FIxCw.cjs.map +1 -0
  99. package/dist/{pl-DSFhAUqx.cjs → pl-CKKdVnpZ.cjs} +93 -1
  100. package/dist/pl-CKKdVnpZ.cjs.map +1 -0
  101. package/dist/{pl-BW--AaCI.js → pl-DA9b5NVg.js} +93 -1
  102. package/dist/pl-DA9b5NVg.js.map +1 -0
  103. package/dist/print-dialog-BqIrHCBh.cjs +276 -0
  104. package/dist/print-dialog-BqIrHCBh.cjs.map +1 -0
  105. package/dist/print-dialog-DvcI2m2_.js +276 -0
  106. package/dist/print-dialog-DvcI2m2_.js.map +1 -0
  107. package/dist/{pt-C5S-8MC5.cjs → pt-DLcszlzi.cjs} +93 -1
  108. package/dist/pt-DLcszlzi.cjs.map +1 -0
  109. package/dist/{pt-DIhpU5pT.js → pt-Nm8yyjbX.js} +93 -1
  110. package/dist/pt-Nm8yyjbX.js.map +1 -0
  111. package/dist/{redact-confirm-CX_SY2ZN.cjs → redact-confirm-C6EiK8yN.cjs} +2 -2
  112. package/dist/{redact-confirm-CX_SY2ZN.cjs.map → redact-confirm-C6EiK8yN.cjs.map} +1 -1
  113. package/dist/{redact-confirm-B6j36TPw.js → redact-confirm-CKuv9iN_.js} +2 -2
  114. package/dist/{redact-confirm-B6j36TPw.js.map → redact-confirm-CKuv9iN_.js.map} +1 -1
  115. package/dist/{redaction-panel-IJDshSJI.js → redaction-panel-CgNZ-pQk.js} +2 -2
  116. package/dist/{redaction-panel-IJDshSJI.js.map → redaction-panel-CgNZ-pQk.js.map} +1 -1
  117. package/dist/{redaction-panel-BmoIl-Ll.cjs → redaction-panel-ZhX0dlMi.cjs} +2 -2
  118. package/dist/{redaction-panel-BmoIl-Ll.cjs.map → redaction-panel-ZhX0dlMi.cjs.map} +1 -1
  119. package/dist/{search-panel-HfIhJm1M.js → search-panel-BE4xzWlm.js} +4 -4
  120. package/dist/{search-panel-HfIhJm1M.js.map → search-panel-BE4xzWlm.js.map} +1 -1
  121. package/dist/{search-panel-s9IoiOtv.cjs → search-panel-wcbTNG1z.cjs} +4 -4
  122. package/dist/{search-panel-s9IoiOtv.cjs.map → search-panel-wcbTNG1z.cjs.map} +1 -1
  123. package/dist/{sheet-BDsa_Sup.cjs → sheet-DTBFiwde.cjs} +30 -11
  124. package/dist/sheet-DTBFiwde.cjs.map +1 -0
  125. package/dist/{sheet-R6XDgyEf.js → sheet-DyjKfAq0.js} +25 -12
  126. package/dist/sheet-DyjKfAq0.js.map +1 -0
  127. package/dist/{sign-dialog-CgnR7akj.cjs → sign-dialog-D5WGx-Yn.cjs} +2 -2
  128. package/dist/{sign-dialog-CgnR7akj.cjs.map → sign-dialog-D5WGx-Yn.cjs.map} +1 -1
  129. package/dist/{sign-dialog-GDqCoQhA.js → sign-dialog-DerNe8qT.js} +2 -2
  130. package/dist/{sign-dialog-GDqCoQhA.js.map → sign-dialog-DerNe8qT.js.map} +1 -1
  131. package/dist/{signature-inspector-DyO313Qf.cjs → signature-inspector-Bz6TAfZM.cjs} +4 -10
  132. package/dist/signature-inspector-Bz6TAfZM.cjs.map +1 -0
  133. package/dist/{signature-inspector-okFz8do6.js → signature-inspector-CsGr9EBk.js} +4 -10
  134. package/dist/signature-inspector-CsGr9EBk.js.map +1 -0
  135. package/dist/{signature-maker-BoYa8vgA.cjs → signature-maker-D_YfBXLn.cjs} +3 -3
  136. package/dist/{signature-maker-BoYa8vgA.cjs.map → signature-maker-D_YfBXLn.cjs.map} +1 -1
  137. package/dist/{signature-maker-BhCmYyHD.js → signature-maker-Dnth4rV4.js} +3 -3
  138. package/dist/{signature-maker-BhCmYyHD.js.map → signature-maker-Dnth4rV4.js.map} +1 -1
  139. package/dist/{signatures-panel-B56PC6d9.cjs → signatures-panel-Ci_LaI1C.cjs} +4 -10
  140. package/dist/signatures-panel-Ci_LaI1C.cjs.map +1 -0
  141. package/dist/{signatures-panel-CgnFfhFm.js → signatures-panel-DZ9ywrjz.js} +4 -10
  142. package/dist/signatures-panel-DZ9ywrjz.js.map +1 -0
  143. package/dist/{stamps-panel-CDO0FPyK.js → stamps-panel-BrczStaz.js} +4 -10
  144. package/dist/stamps-panel-BrczStaz.js.map +1 -0
  145. package/dist/{stamps-panel-B9NYGayn.cjs → stamps-panel-Cv9nJBwx.cjs} +4 -10
  146. package/dist/stamps-panel-Cv9nJBwx.cjs.map +1 -0
  147. package/dist/theme-Be0OZokZ.js +97 -0
  148. package/dist/theme-Be0OZokZ.js.map +1 -0
  149. package/dist/theme-FR26JI3r.cjs +126 -0
  150. package/dist/theme-FR26JI3r.cjs.map +1 -0
  151. package/dist/{toolbar-z9od3tKl.js → toolbar-DF361xWY.js} +7 -6
  152. package/dist/toolbar-DF361xWY.js.map +1 -0
  153. package/dist/{toolbar-CJu2wKTU.cjs → toolbar-ddvpsvTb.cjs} +7 -6
  154. package/dist/toolbar-ddvpsvTb.cjs.map +1 -0
  155. package/dist/{zh-cn-CxkUUBct.js → zh-cn-BMPPkLpL.js} +93 -1
  156. package/dist/zh-cn-BMPPkLpL.js.map +1 -0
  157. package/dist/{zh-cn-3tmMeHqv.cjs → zh-cn-CZOO3p4H.cjs} +93 -1
  158. package/dist/zh-cn-CZOO3p4H.cjs.map +1 -0
  159. package/package.json +4 -4
  160. package/src/styles.css +8 -0
  161. package/dist/ar-D9XKAmDx.js.map +0 -1
  162. package/dist/ar-DnEj5vbP.cjs.map +0 -1
  163. package/dist/commands-BmgxhJ8B.js.map +0 -1
  164. package/dist/commands-CYt4SFUX.cjs.map +0 -1
  165. package/dist/de-Bdr4aWzm.js.map +0 -1
  166. package/dist/de-Dv6zvbnd.cjs.map +0 -1
  167. package/dist/dialog-B5GBisKv.js.map +0 -1
  168. package/dist/dialog-t8F13BL_.cjs.map +0 -1
  169. package/dist/es-BP09DR9w.cjs.map +0 -1
  170. package/dist/es-BSXz5tBv.js.map +0 -1
  171. package/dist/fr-BBQQn7tJ.cjs.map +0 -1
  172. package/dist/fr-Ckn3K9v1.js.map +0 -1
  173. package/dist/he-DRsG7bH7.cjs.map +0 -1
  174. package/dist/he-wdGU5PkU.js.map +0 -1
  175. package/dist/icons-BrK5iVL8.js.map +0 -1
  176. package/dist/icons-x0Tc05bs.cjs.map +0 -1
  177. package/dist/it-BuP4o0xQ.cjs.map +0 -1
  178. package/dist/it-Us-VmvIu.js.map +0 -1
  179. package/dist/ja-Cizj0-5O.js.map +0 -1
  180. package/dist/ja-DovEd6ts.cjs.map +0 -1
  181. package/dist/ko-B-qJEol2.cjs.map +0 -1
  182. package/dist/ko-DlrXliE1.js.map +0 -1
  183. package/dist/nl-0aF7M_0h.js.map +0 -1
  184. package/dist/nl-D3KZDDiJ.cjs.map +0 -1
  185. package/dist/pl-BW--AaCI.js.map +0 -1
  186. package/dist/pl-DSFhAUqx.cjs.map +0 -1
  187. package/dist/pt-C5S-8MC5.cjs.map +0 -1
  188. package/dist/pt-DIhpU5pT.js.map +0 -1
  189. package/dist/sheet-BDsa_Sup.cjs.map +0 -1
  190. package/dist/sheet-R6XDgyEf.js.map +0 -1
  191. package/dist/signature-inspector-DyO313Qf.cjs.map +0 -1
  192. package/dist/signature-inspector-okFz8do6.js.map +0 -1
  193. package/dist/signatures-panel-B56PC6d9.cjs.map +0 -1
  194. package/dist/signatures-panel-CgnFfhFm.js.map +0 -1
  195. package/dist/stamps-panel-B9NYGayn.cjs.map +0 -1
  196. package/dist/stamps-panel-CDO0FPyK.js.map +0 -1
  197. package/dist/toolbar-CJu2wKTU.cjs.map +0 -1
  198. package/dist/toolbar-z9od3tKl.js.map +0 -1
  199. package/dist/zh-cn-3tmMeHqv.cjs.map +0 -1
  200. package/dist/zh-cn-CxkUUBct.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"icons-BrK5iVL8.js","names":[],"sources":["../src/config/viewer-commands.ts","../src/config-context.tsx","../src/ui/icons.tsx"],"sourcesContent":["/**\n * Your commands, as the `commands` config gives them, over the built-in ones.\n *\n * A command of yours is the headless command, with functions that get the viewer's words:\n * `get` takes a plugin's name (`get('selection')`) as well as its token, and `viewer` is the\n * viewer `onReady` gets. One with a built-in id merges over the built-in command, so what it\n * leaves out stays: `{ id: 'document:download', run }` keeps Download's label, icon, shortcut\n * and checks. A shortcut of yours takes its keys from every built-in command that has them, so\n * a key runs your command and the built-in one's tooltip no longer shows it.\n */\nimport { sameShortcut } from '@embedpdf/core-ui';\nimport type {\n CommandContext as PluginCommandContext,\n CommandDef as PluginCommandDef,\n IconAccent,\n} from '@embedpdf/react/commands';\nimport type { CapabilityToken } from '@embedpdf/react/runtime';\n\nimport type { PluginTokens, ScopedViewer, Viewer } from '../handle';\nimport type { IconName } from '../ui/icons';\n\n/** What a command's functions get: its document, any plugin by its name or token, and the viewer. */\nexport interface CommandContext extends ScopedViewer {\n /** The document it's for: the one named, else the active one; `null` with none open. */\n readonly documentId: string | null;\n /** What the caller passed: `execute(id, { args })`. */\n readonly args?: unknown;\n /** Fires when the caller cancels `execute()`: pass it on to the calls `run` makes. */\n readonly signal?: AbortSignal;\n /** The viewer, as `onReady` gets it. */\n readonly viewer: Viewer;\n}\n\n/**\n * A command, as the `commands` config takes it: the headless command, its functions getting\n * {@link CommandContext}. With a built-in command's id it changes that one, field by field.\n */\nexport interface CommandDef extends Omit<\n PluginCommandDef,\n 'icon' | 'iconAccent' | 'allowed' | 'enabled' | 'active' | 'visible' | 'run'\n> {\n /** An icon's name: one of the viewer's, or one of yours (`icons`). */\n readonly icon?: IconName | (string & {});\n /** Colors for the icon, read from live state like `active`. */\n readonly iconAccent?: (context: CommandContext) => IconAccent | null;\n /** Whether the session may run it, from the plugins' `can*` checks. Prefer `requires`. */\n readonly allowed?: (context: CommandContext) => boolean;\n /** When it can run. When it can't, its button is greyed out. Default: always. */\n readonly enabled?: (context: CommandContext) => boolean;\n /** When it shows as pressed, or checked in a menu. */\n readonly active?: (context: CommandContext) => boolean;\n /** When it shows at all. Default: always. */\n readonly visible?: (context: CommandContext) => boolean;\n /** What it does; `execute()` resolves once it has. Not needed for a `menu` or `panel`. */\n readonly run?: (context: CommandContext) => void | Promise<unknown>;\n}\n\n/** What a command of yours reaches: the viewer's plugins by name, and the viewer once it's live. */\nexport interface CommandScope {\n readonly plugins: PluginTokens;\n /** The viewer now, or `null` before it's live. */\n viewer(): Viewer | null;\n}\n\nconst FUNCTIONS = ['iconAccent', 'allowed', 'enabled', 'active', 'visible', 'run'] as const;\n\n/** Fields that go together: giving one of them replaces all of the built-in command's. */\nconst TOGETHER: readonly (readonly (keyof PluginCommandDef)[])[] = [\n ['label', 'labelKey'],\n ['run', 'menu', 'panel', 'modal'],\n];\n\n/** The viewer's words over a command's context: plugins by name, and the viewer. */\nfunction viewerContextOf(context: PluginCommandContext, scope: CommandScope): CommandContext {\n const tokenOf = (plugin: string | CapabilityToken<unknown>): CapabilityToken<unknown> | null =>\n typeof plugin !== 'string'\n ? plugin\n : Object.prototype.hasOwnProperty.call(scope.plugins, plugin)\n ? (scope.plugins[plugin] ?? null)\n : null;\n const get = ((plugin: string | CapabilityToken<unknown>): unknown => {\n const token = tokenOf(plugin);\n if (!token) {\n throw new Error(\n `[embedpdf] the viewer has no plugin named \"${String(plugin)}\". Its plugins: ` +\n `${Object.keys(scope.plugins).join(', ')}.`,\n );\n }\n return context.get(token);\n }) as ScopedViewer['get'];\n const tryGet = ((plugin: string | CapabilityToken<unknown>): unknown => {\n const token = tokenOf(plugin);\n return token ? context.tryGet(token) : null;\n }) as ScopedViewer['tryGet'];\n return {\n documentId: context.documentId,\n ...(context.args === undefined ? {} : { args: context.args }),\n ...(context.signal ? { signal: context.signal } : {}),\n get,\n tryGet,\n get viewer(): Viewer {\n const viewer = scope.viewer();\n if (!viewer) throw new Error('[embedpdf] the viewer is not live yet');\n return viewer;\n },\n };\n}\n\n/** A command of yours as the commands plugin takes it: each function gets the viewer's words. */\nexport function toPluginCommand(command: CommandDef, scope: CommandScope): PluginCommandDef {\n // One context per resolution: a command's functions are all asked with the same one.\n const contexts = new WeakMap<PluginCommandContext, CommandContext>();\n const contextOf = (context: PluginCommandContext): CommandContext => {\n let viewerContext = contexts.get(context);\n if (!viewerContext) {\n viewerContext = viewerContextOf(context, scope);\n contexts.set(context, viewerContext);\n }\n return viewerContext;\n };\n const converted: Record<string, unknown> = { ...command };\n for (const name of FUNCTIONS) {\n const given = command[name] as ((context: CommandContext) => unknown) | undefined;\n if (given) converted[name] = (context: PluginCommandContext) => given(contextOf(context));\n }\n return converted as unknown as PluginCommandDef;\n}\n\n/** A built-in command with yours over it: what yours gives replaces, the rest stays. */\nexport function mergeCommand(builtIn: PluginCommandDef, yours: PluginCommandDef): PluginCommandDef {\n const merged: Record<string, unknown> = { ...builtIn };\n for (const fields of TOGETHER) {\n if (!fields.some((field) => yours[field] !== undefined)) continue;\n for (const field of fields) delete merged[field];\n }\n for (const [field, value] of Object.entries(yours))\n if (value !== undefined) merged[field] = value;\n return merged as unknown as PluginCommandDef;\n}\n\nconst shortcutsOf = (command: Pick<PluginCommandDef, 'shortcut'>): readonly string[] =>\n command.shortcut === undefined ? [] : ([] as string[]).concat(command.shortcut);\n\n/** The commands the viewer registers, from the built-in ones and yours. */\nexport interface ViewerCommands {\n /** The built-in commands with yours merged over them, then the rest of yours, in order. */\n readonly commands: readonly PluginCommandDef[];\n /** Whether a command with this id is yours alone: no built-in command has the id. */\n isYours(id: string): boolean;\n /**\n * A built-in command as yours changes it: without the keys your shortcuts take, and with\n * yours of the same id merged over it. For the commands the layout brings, its panels' and\n * modes'.\n */\n over(builtIn: PluginCommandDef): PluginCommandDef;\n}\n\n/** No commands of yours: the built-in ones as they are. */\nexport const NO_VIEWER_COMMANDS: ViewerCommands = {\n commands: [],\n isYours: () => false,\n over: (builtIn) => builtIn,\n};\n\n/**\n * Your commands over the built-in ones. A later command of yours with an id that's taken\n * replaces the earlier one. `isMac` says which keys `Mod` is, to tell two shortcuts apart.\n */\nexport function resolveViewerCommands(\n builtIns: readonly PluginCommandDef[],\n given: readonly CommandDef[],\n scope: CommandScope,\n options: { readonly isMac: boolean },\n): ViewerCommands {\n const yours = new Map<string, PluginCommandDef>();\n for (const command of given) yours.set(command.id, toPluginCommand(command, scope));\n const taken = [...yours.values()].flatMap(shortcutsOf);\n const isTaken = (shortcut: string): boolean =>\n taken.some((key) => {\n try {\n return sameShortcut(key, shortcut, options);\n } catch {\n return false;\n }\n });\n const over = (builtIn: PluginCommandDef): PluginCommandDef => {\n const shortcuts = shortcutsOf(builtIn);\n const kept = shortcuts.filter((shortcut) => !isTaken(shortcut));\n const base = kept.length === shortcuts.length ? builtIn : { ...builtIn, shortcut: kept };\n const own = yours.get(builtIn.id);\n return own ? mergeCommand(base, own) : base;\n };\n const builtInIds = new Set(builtIns.map((command) => command.id));\n return {\n commands: [\n ...builtIns.map(over),\n ...[...yours.values()].filter((command) => !builtInIds.has(command.id)),\n ],\n isYours: (id) => yours.has(id) && !builtInIds.has(id),\n over,\n };\n}\n","/**\n * The resolved customization, as React context. The `layout` option and the\n * user's extra icons are resolved once in <FullViewer>; the layout at the\n * viewer's current size is resolved by <LayoutRoot> (layout-root.tsx), and read\n * here by the shell, menus and strips — no component imports the default\n * layout directly, so \"the host changed the layout\" is invisible below this\n * line.\n *\n * The default context values are the default config and the default layout:\n * components render correctly in tests and stories without a provider.\n */\nimport { createContext, useContext } from 'react';\nimport {\n EXPANDED_MIN_WIDTH_PX,\n barsAt,\n compileBar,\n menuOf,\n type LayoutData,\n type LayoutEnv,\n type LayoutOption,\n type MenuSection,\n type SelectionTarget,\n} from '@embedpdf/core-ui';\nimport type { BarGroup, BarSchema } from '@embedpdf/react/toolbar';\nimport { DEFAULT_LAYOUT } from './config/chrome';\nimport type { IconDef } from './ui/icons';\nimport { NO_VIEWER_COMMANDS, type ViewerCommands } from './config/viewer-commands';\nimport type { ViewerSignatureSettings, ViewerStampSettings } from './plugin-settings';\n\n/**\n * A font beyond the standard 14, for the engine: what `engine.fonts` lists. The style panel\n * offers it for text boxes, once it's registered on the engine and mounted for the live editor.\n */\nexport interface ViewerFont {\n /** The id a free-text `fontFamily` carries, and the engine's key for it. Not one of the 14 standard names. */\n readonly key: string;\n /** Where the TTF or OTF file comes from (same-origin or CORS-enabled). */\n readonly url?: string;\n /** The file's bytes, in place of `url`. */\n readonly data?: Uint8Array | ArrayBuffer;\n /** The family's name, which the style panel shows (else the key); inferred from the file when left out. */\n readonly familyName?: string;\n readonly weight?: number;\n readonly italic?: boolean;\n}\n\n/** What `onPanelResize` hears: the panel, and the width the user gave it. */\nexport interface PanelResizeEvent {\n /** The panel's id. */\n readonly id: string;\n /** Its width now, in px. */\n readonly width: number;\n}\n\nexport interface ResolvedViewerConfig {\n /** The `layout` option as given: the default without one. */\n readonly layout?: LayoutOption;\n /** User-registered icons — additive over the built-in set. */\n readonly icons: Readonly<Record<string, IconDef>>;\n /** Your commands over the built-in ones, for the commands the layout brings too. */\n readonly viewerCommands: ViewerCommands;\n /** What the viewer adds to `plugins.stamp`: the standard stamps, the quick stamps. */\n readonly stamp: ViewerStampSettings;\n /** What the viewer adds to `plugins.signature`: which marks people keep, their fonts. */\n readonly signature: ViewerSignatureSettings;\n /** The engine's fonts the style panel offers (see {@link ViewerFont}). */\n readonly fonts: readonly ViewerFont[];\n /** Hears each width the user gives a panel, by dragging its edge or with its keys. */\n readonly onPanelResize?: (event: PanelResizeEvent) => void;\n}\n\nconst DEFAULT_CONFIG: ResolvedViewerConfig = {\n icons: {},\n viewerCommands: NO_VIEWER_COMMANDS,\n stamp: {},\n signature: {},\n fonts: [],\n};\n\nconst ViewerConfigContext = createContext<ResolvedViewerConfig>(DEFAULT_CONFIG);\n\nexport const ViewerConfigProvider = ViewerConfigContext.Provider;\n\n/** The `layout` option, for <LayoutRoot> to resolve at the viewer's size. */\nexport function useLayoutOption(): LayoutOption | undefined {\n return useContext(ViewerConfigContext).layout;\n}\n\n/** Tells the app a panel's new width: what the panel frame calls once the user has resized it. */\nexport function usePanelResize(): (event: PanelResizeEvent) => void {\n const { onPanelResize } = useContext(ViewerConfigContext);\n return (event) => onPanelResize?.(event);\n}\n\n// ── the layout at the viewer's current size ──────────────────────────────────\n\n/** The layout as the viewer shows it now: at its env, with what shows nothing left out. */\nexport interface ResolvedLayout {\n /** The layout's data at this env. */\n readonly data: LayoutData;\n readonly env: LayoutEnv;\n /** A bar as its toolbar fits it, or `null` for a bar the layout doesn't have. */\n bar(id: string): BarSchema | null;\n /** The bars over a selection of this kind, as one bar, or `null` when there is none. */\n strip(target: SelectionTarget): BarSchema | null;\n /** A menu's sections, or `null` for a menu the layout doesn't have. */\n menu(id: string): readonly MenuSection[] | null;\n}\n\n/** The env before the viewer is measured, and without a <LayoutRoot>. */\nexport const DEFAULT_ENV: LayoutEnv = {\n size: 'expanded',\n width: EXPANDED_MIN_WIDTH_PX,\n touch: false,\n dir: 'ltr',\n};\n\n/**\n * The bars over a selection of this kind as one bar, read through `bar`: one bar as it is, or\n * several as one, their groups in bar order and named after their bar so the names stay unique.\n */\nexport function stripOf(\n data: LayoutData,\n target: SelectionTarget,\n bar: (id: string) => BarSchema | null,\n): BarSchema | null {\n const bars = barsAt(data, target)\n .map(bar)\n .filter((each): each is BarSchema => each !== null);\n if (bars.length <= 1) return bars[0] ?? null;\n const sections: { -readonly [Name in 'start' | 'center' | 'end']?: readonly BarGroup[] } = {};\n for (const name of ['start', 'center', 'end'] as const) {\n const groups = bars.flatMap((each) =>\n (each.sections[name] ?? []).map((group) => ({ ...group, id: `${each.id}.${group.id}` })),\n );\n if (groups.length > 0) sections[name] = groups;\n }\n return { id: target, sections };\n}\n\n/** The layout as plain reads of its data: no bar leaves anything out. */\nexport function staticResolvedLayout(data: LayoutData, env: LayoutEnv): ResolvedLayout {\n const bar = (id: string) => compileBar(data, id);\n return {\n data,\n env,\n bar,\n strip: (target) => stripOf(data, target, bar),\n menu: (id) => menuOf(data, id),\n };\n}\n\nconst ResolvedLayoutContext = createContext<ResolvedLayout>(\n staticResolvedLayout(DEFAULT_LAYOUT, DEFAULT_ENV),\n);\n\nexport const ResolvedLayoutProvider = ResolvedLayoutContext.Provider;\n\nexport function useResolvedLayout(): ResolvedLayout {\n return useContext(ResolvedLayoutContext);\n}\n\n/** The viewer's env: its size, width, whether it's touched, and its direction. */\nexport function useLayoutEnv(): LayoutEnv {\n return useContext(ResolvedLayoutContext).env;\n}\n\n/** A menu's sections from the layout, or `null` for a menu it doesn't have. */\nexport function useMenu(id: string): readonly MenuSection[] | null {\n return useContext(ResolvedLayoutContext).menu(id);\n}\n\n/** The bars over a selection of this kind, as one bar; `undefined` when the layout has none. */\nexport function useStripSchema(target: SelectionTarget): BarSchema | undefined {\n return useContext(ResolvedLayoutContext).strip(target) ?? undefined;\n}\n\n/** Your commands over the built-in ones: what the layout's panel and mode commands merge under. */\nexport function useViewerCommands(): ViewerCommands {\n return useContext(ViewerConfigContext).viewerCommands;\n}\n\nexport function useCustomIcons(): Readonly<Record<string, IconDef>> {\n return useContext(ViewerConfigContext).icons;\n}\n\nexport function useStampSettings(): ViewerStampSettings {\n return useContext(ViewerConfigContext).stamp;\n}\n\nexport function useSignatureSettings(): ViewerSignatureSettings {\n return useContext(ViewerConfigContext).signature;\n}\n\nexport function useConfiguredFonts(): readonly ViewerFont[] {\n return useContext(ViewerConfigContext).fonts;\n}\n","/**\n * Icon set — Tabler-style stroke icons as path data, rendered by one <Icon>\n * component. Stroke-based (currentColor); a few glyphs carry filled sub-paths,\n * marked `fill: true`. The names are API: a command's `icon` names one, and an\n * icon of yours with the same name replaces it everywhere it shows.\n *\n * Accent slots: a tool glyph tags the sub-paths that preview the tool's\n * drawing defaults — `stroke`/`fill: 'primary' | 'secondary'` paint from the\n * command's resolved `iconAccent`. With no accent, a slotted stroke inherits\n * currentColor and a slotted fill renders nothing — pixel-identical to the\n * untagged glyph, so non-tool surfaces never change.\n */\nimport * as React from 'react';\nimport { useCustomIcons } from '../config-context';\n\nexport type PathSpec =\n | string\n | {\n d: string;\n /** Fill paint: `true` = currentColor (a filled glyph part); a slot\n * name = that accent color (nothing when the accent is absent). */\n fill?: boolean | 'primary' | 'secondary';\n /** Stroke paint: a slot name = that accent color (currentColor when\n * the accent is absent). */\n stroke?: 'primary' | 'secondary';\n strokeWidth?: number;\n strokeDasharray?: string;\n strokeOpacity?: number;\n fillOpacity?: number;\n };\n\n/** An icon's path data: a string is one path, an array several. */\nexport type IconPaths = string | readonly PathSpec[];\n\n/**\n * An icon of yours: 24 × 24 path data drawn as a line (Tabler and Lucide icons paste in as\n * they are), or `{ paths, fill: true }` to fill the paths instead of drawing their outline.\n */\nexport type IconDef = IconPaths | { readonly paths: IconPaths; readonly fill?: boolean };\n\nconst isPathList = (paths: IconDef): paths is readonly PathSpec[] => Array.isArray(paths);\n\n/** An icon's paths as the renderer draws them: filled ones carry `fill: true`. */\nexport function pathsOfIcon(icon: IconDef): readonly PathSpec[] {\n if (typeof icon === 'string') return [icon];\n if (isPathList(icon)) return icon;\n const paths = typeof icon.paths === 'string' ? [icon.paths] : icon.paths;\n if (!icon.fill) return paths;\n return paths.map((path) => (typeof path === 'string' ? { d: path, fill: true } : path));\n}\n\n/** The two tintable slots — structurally identical to plugin-commands'\n * IconAccent, kept local so the icon set stays dependency-free. */\nexport interface IconAccent {\n primary?: string;\n secondary?: string;\n}\n\nconst measurementOutline: PathSpec[] = [\n { d: 'M5 4H19M20 5V19M19 20H5M4 19V5', stroke: 'primary' },\n {\n d: 'M3.1 3.1h1.8v1.8H3.1zM19.1 3.1h1.8v1.8h-1.8zM3.1 19.1h1.8v1.8H3.1zM19.1 19.1h1.8v1.8h-1.8z',\n stroke: 'primary',\n },\n];\n\nexport const ICON_PATHS = {\n ruler: ['M3 8h18v8H3z', 'M7 8v4M11 8v2M15 8v4M19 8v2'],\n distance: [\n { d: 'M5 12H19', stroke: 'primary', strokeDasharray: '2 2' },\n {\n d: 'M3.5 10.5a1.5 1.5 0 1 0 0 3a1.5 1.5 0 1 0 0-3M20.5 10.5a1.5 1.5 0 1 0 0 3a1.5 1.5 0 1 0 0-3',\n stroke: 'primary',\n fill: 'primary',\n fillOpacity: 0.25,\n },\n ],\n perimeter: measurementOutline,\n area: [\n { d: 'M5 4H19V5H20V19H19V20H5V19H4V5H5Z', fill: 'primary', fillOpacity: 0.08 },\n {\n d: 'M4.5 7.5L7.5 4.5M4.5 10.5L10.5 4.5M4.5 13.5L13.5 4.5M4.5 16.5L16.5 4.5M4.5 19.5L19.5 4.5M7.5 19.5L19.5 7.5M10.5 19.5L19.5 10.5M13.5 19.5L19.5 13.5M16.5 19.5L19.5 16.5',\n stroke: 'primary',\n strokeWidth: 0.6,\n strokeOpacity: 0.5,\n },\n ...measurementOutline,\n ],\n alertTriangle: [\n 'M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z',\n ],\n alignBottom: [\n 'M3 19v-14a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2z',\n 'M11 17h2',\n 'M9 14h6',\n 'M10 11h4',\n ],\n alignCenter: ['M4 6l16 0', 'M8 12l8 0', 'M6 18l12 0'],\n alignLeft: ['M4 6l16 0', 'M4 12l10 0', 'M4 18l14 0'],\n alignMiddle: [\n 'M3 19v-14a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2z',\n 'M11 15h2',\n 'M9 12h6',\n 'M10 9h4',\n ],\n alignRight: ['M4 6l16 0', 'M10 12l10 0', 'M6 18l14 0'],\n alignTop: [\n 'M3 19v-14a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2z',\n 'M11 13h2',\n 'M9 10h6',\n 'M10 7h4',\n ],\n arrowBackUp: ['M9 14l-4 -4l4 -4', 'M5 10h11a4 4 0 1 1 0 8h-1'],\n arrowForwardUp: ['M15 14l4 -4l-4 -4', 'M19 10h-11a4 4 0 1 0 0 8h1'],\n bold: ['M7 5h6a3.5 3.5 0 0 1 0 7h-6z', 'M13 12h1a3.5 3.5 0 0 1 0 7h-7v-7'],\n book: [\n 'M3 19a9 9 0 0 1 9 0a9 9 0 0 1 9 0',\n 'M3 6a9 9 0 0 1 9 0a9 9 0 0 1 9 0',\n 'M3 6l0 13',\n 'M12 6l0 13',\n 'M21 6l0 13',\n ],\n book2: [\n 'M19 4v16h-12a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2h12z',\n 'M19 16h-12a2 2 0 0 0 -2 2',\n 'M9 8h6',\n ],\n calibrate: [\n 'M12 12m-7.5 0a7.5 7.5 0 1 0 15 0a7.5 7.5 0 1 0 -15 0',\n 'M12 2.75V7M12 17V21.25M2.75 12H7M17 12H21.25',\n 'M12 12m-2.5 0a2.5 2.5 0 1 0 5 0a2.5 2.5 0 1 0 -5 0',\n ],\n callout: [\n {\n d: 'M20 6v4a1 1 0 0 1 -1 1h-14a1 1 0 0 1 -1 -1v-4a1 1 0 0 1 1 -1h14a1 1 0 0 1 1 1',\n stroke: 'primary',\n fill: 'secondary',\n },\n { d: 'M17 11v6h-9', stroke: 'primary' },\n { d: 'M8 15l-2 2l2 2', stroke: 'primary' },\n ],\n check: ['M5 12l5 5l10 -10'],\n chevronDown: ['M6 9l6 6l6 -6'],\n chevronLeft: ['M15 6l-6 6l6 6'],\n chevronRight: ['M9 6l6 6l-6 6'],\n circle: [\n { d: 'M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0', stroke: 'primary', fill: 'secondary' },\n ],\n comment: [\n 'M12 11v.01',\n 'M8 11v.01',\n 'M16 11v.01',\n 'M18 4a3 3 0 0 1 3 3v8a3 3 0 0 1 -3 3h-5l-5 3v-3h-2a3 3 0 0 1 -3 -3v-8a3 3 0 0 1 3 -3z',\n ],\n copy: [\n 'M7 7m0 2.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667z',\n 'M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1',\n ],\n deviceFloppy: [\n 'M6 4h10l4 4v10a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2',\n 'M12 14m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0',\n 'M14 4l0 4l-6 0l0 -4',\n ],\n dots: [\n 'M5 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0',\n 'M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0',\n 'M19 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0',\n ],\n doublePage: [\n 'M3 3m0 1a1 1 0 0 1 1 -1h16a1 1 0 0 1 1 1v16a1 1 0 0 1 -1 1h-16a1 1 0 0 1 -1 -1zm9 -1v18',\n ],\n download: ['M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2', 'M7 11l5 5l5 -5', 'M12 4l0 12'],\n externalLink: [\n 'M12 6h-6a2 2 0 0 0 -2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-6',\n 'M11 13l9 -9',\n 'M15 4h5v5',\n ],\n eye: ['M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z', 'M9 12a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'],\n file: ['M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'],\n fileImport: [\n 'M14 3v4a1 1 0 0 0 1 1h4',\n 'M5 13v-8a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2h-5.5m-9.5 -2h7m-3 -3l3 3l-3 3',\n ],\n fitToPage: [\n 'M12 20h-6a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2h6',\n 'M18 14v7',\n 'M18 3v7',\n 'M15 18l3 3l3 -3',\n 'M15 6l3 -3l3 3',\n ],\n fitToWidth: [\n 'M4 12v-6a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v6',\n 'M10 18h-7',\n 'M21 18h-7',\n 'M6 15l-3 3l3 3',\n 'M18 15l3 3l-3 3',\n ],\n formButton: [\n 'M3 8a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-8',\n 'M8 12h8',\n ],\n formCheckbox: [\n 'M3 5a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-14',\n 'M9 12l2 2l4 -4',\n ],\n // The form designer: a form's list of fields.\n formDesign: [\n 'M9 5h-2a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-12a2 2 0 0 0 -2 -2h-2',\n 'M9 5a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2',\n 'M9 12l.01 0',\n 'M13 12l2 0',\n 'M9 16l.01 0',\n 'M13 16l2 0',\n ],\n formListbox: [\n 'M3 5a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-14',\n 'M11 8h6',\n 'M11 12h6',\n 'M11 16h6',\n 'M7 8l0 .01',\n 'M7 12l0 .01',\n 'M7 16l0 .01',\n ],\n formRadio: [\n { d: 'M9 12a2 2 0 1 0 6 0a2 2 0 1 0 -6 0', fill: true },\n 'M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0',\n ],\n formSelect: [\n 'M3 5a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-14',\n 'M9 11l3 3l3 -3',\n ],\n formTextfield: [\n 'M12 3a3 3 0 0 0 -3 3v12a3 3 0 0 0 3 3',\n 'M6 3a3 3 0 0 1 3 3v12a3 3 0 0 1 -3 3',\n 'M13 7h7a1 1 0 0 1 1 1v8a1 1 0 0 1 -1 1h-7',\n 'M5 7h-1a1 1 0 0 0 -1 1v8a1 1 0 0 0 1 1h1',\n 'M17 12h.01',\n 'M13 12h.01',\n ],\n freeText: [\n { d: 'M4 7v-2h12v2', stroke: 'primary' },\n { d: 'M10 5v14', stroke: 'primary' },\n { d: 'M12 19h-4', stroke: 'primary' },\n { d: 'M15 13v-1h6v1', stroke: 'primary' },\n { d: 'M18 12v7', stroke: 'primary' },\n { d: 'M17 19h2', stroke: 'primary' },\n ],\n fullscreen: [\n 'M4 8v-2a2 2 0 0 1 2 -2h2',\n 'M4 16v2a2 2 0 0 0 2 2h2',\n 'M16 4h2a2 2 0 0 1 2 2v2',\n 'M16 20h2a2 2 0 0 0 2 -2v-2',\n ],\n fullscreenExit: [\n 'M4 8v-2c0 -.551 .223 -1.05 .584 -1.412',\n 'M4 16v2a2 2 0 0 0 2 2h2',\n 'M16 4h2a2 2 0 0 1 2 2v2',\n 'M16 20h2c.545 0 1.04 -.218 1.4 -.572',\n 'M3 3l18 18',\n ],\n group: [\n 'M3 5a2 2 0 1 0 4 0a2 2 0 1 0 -4 0',\n 'M17 5a2 2 0 1 0 4 0a2 2 0 1 0 -4 0',\n 'M3 19a2 2 0 1 0 4 0a2 2 0 1 0 -4 0',\n 'M17 19a2 2 0 1 0 4 0a2 2 0 1 0 -4 0',\n 'M5 7v10',\n 'M19 7v10',\n 'M7 5h10',\n 'M7 19h10',\n 'M8 8H12.8V11.2H16V16H11.2V12.8H8V8Z',\n ],\n hand: [\n 'M8 13v-7.5a1.5 1.5 0 0 1 3 0v6.5',\n 'M11 5.5v-2a1.5 1.5 0 1 1 3 0v8.5',\n 'M14 5.5a1.5 1.5 0 0 1 3 0v6.5',\n 'M17 7.5a1.5 1.5 0 0 1 3 0v8.5a6 6 0 0 1 -6 6h-2h.208a6 6 0 0 1 -5.012 -2.7a69.74 69.74 0 0 1 -.196 -.3c-.312 -.479 -1.407 -2.388 -3.286 -5.728a1.5 1.5 0 0 1 .536 -2.022a1.867 1.867 0 0 1 2.28 .28l1.47 1.47',\n ],\n highlight: [\n // the marker block behind the \"A\" — visible only when accented\n {\n d: 'M4 6h16a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2H4a2 2 0 0 1 -2 -2V8a2 2 0 0 1 2 -2z',\n fill: 'primary',\n },\n 'M8 16v-8a4 4 0 1 1 8 0v8',\n 'M8 10h8',\n ],\n horizontal: ['M7 8l-4 4l4 4', 'M17 8l4 4l-4 4', 'M3 12l18 0'],\n inkHighlighter: [\n 'M3 19h4l10.5 -10.5a2.828 2.828 0 1 0 -4 -4l-10.5 10.5v4',\n 'M12.5 5.5l4 4',\n 'M4.5 13.5l4 4',\n { d: 'M21 15v4h-8l4 -4l4 0', stroke: 'primary', fill: 'primary' },\n ],\n insertText: [\n { d: 'M3 7v-2h12v2', stroke: 'primary' },\n { d: 'M9 5v14', stroke: 'primary' },\n { d: 'M7 19h4', stroke: 'primary' },\n { d: 'M18 15l2 2h-5', stroke: 'primary' },\n { d: 'M18 19l2 -2', stroke: 'primary' },\n ],\n italic: ['M11 5l6 0', 'M7 19l6 0', 'M14 5l-4 14'],\n line: [{ d: 'M20 4l-16 16', stroke: 'primary' }],\n // Both strokes tag the `primary` accent slot so the arrow glyph previews the\n // tool's stroke colour (like the plain `line` icon); with no accent they render\n // as currentColor — identical to the untagged glyph.\n lineArrow: [\n { d: 'M20 4l-16 16', stroke: 'primary' },\n { d: 'M16 3h5v5', stroke: 'primary' },\n ],\n link: [\n 'M9 15l6 -6',\n 'M11 6l.463 -.536a5 5 0 0 1 7.071 7.072l-.534 .464',\n 'M13 18l-.397 .534a5.068 5.068 0 0 1 -7.127 0a4.972 4.972 0 0 1 0 -7.071l.524 -.463',\n ],\n linkOff: [\n 'M9 15l3 -3m2 -2l1 -1',\n 'M11 6l.463 -.536a5 5 0 0 1 7.072 7.071l-.534 .464',\n 'M13 18l-.397 .534a5.068 5.068 0 0 1 -7.127 0a4.972 4.972 0 0 1 0 -7.071l.524 -.463',\n 'M3 3l18 18',\n ],\n listTree: ['M9 6h11', 'M12 12h8', 'M15 18h5', 'M5 6v.01', 'M8 12v.01', 'M11 18v.01'],\n lock: [\n 'M5 11h14a2 2 0 0 1 2 2v7a2 2 0 0 1 -2 2H5a2 2 0 0 1 -2 -2v-7a2 2 0 0 1 2 -2z',\n 'M7 11V7a5 5 0 0 1 10 0v4',\n ],\n marqueeSelect: [\n 'M17 20h6',\n 'M20 17v6',\n 'M4 13v-2',\n 'M4 6v-1a1 1 0 0 1 1 -1h1',\n 'M6 20h-1a1 1 0 0 1 -1 -1v-1',\n 'M11 4h2',\n 'M11 20h2',\n 'M18 4h1a1 1 0 0 1 1 1v1',\n 'M20 11v2',\n ],\n menu: ['M4 8l16 0', 'M4 16l16 0'],\n message: [\n 'M8 9h8',\n 'M8 13h6',\n 'M18 4a3 3 0 0 1 3 3v8a3 3 0 0 1 -3 3h-5l-5 3v-3h-2a3 3 0 0 1 -3 -3v-8a3 3 0 0 1 3 -3h12',\n ],\n palette: [\n 'M12 21a9 9 0 0 1 0 -18c4.97 0 9 3.582 9 8c0 1.06 -.474 2.078 -1.318 2.828c-.844 .75 -1.989 1.172 -3.182 1.172h-2.5a2 2 0 0 0 -1 3.75a1.3 1.3 0 0 1 -1 2.25',\n 'M8.5 10.5m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0',\n 'M12.5 7.5m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0',\n 'M16.5 10.5m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0',\n ],\n paperclip: [\n 'M15 7l-6.5 6.5a1.5 1.5 0 0 0 3 3l6.5 -6.5a3 3 0 0 0 -6 -6l-6.5 6.5a4.5 4.5 0 0 0 9 9l6.5 -6.5',\n ],\n pencilMarker: [\n 'm9.109 16.275 8.856-8.097c.812-.743.87-2.014.127-2.826s-2.014-.869-2.826-.127L6.41 13.322l-.127 2.826zM13.79 6.575l2.7 2.952',\n {\n d: 'M19.375 20.125c.569.063-4.05-.562-6.412-.437s-4.759 1.229-6.857 1.625c-1.764.687-3.404-.938-1.981-2.5',\n stroke: 'primary',\n },\n ],\n photo: [\n 'M15 8h.01',\n 'M3 6a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v12a3 3 0 0 1 -3 3h-12a3 3 0 0 1 -3 -3v-12z',\n 'M3 16l5 -5c.928 -.893 2.072 -.893 3 0l5 5',\n 'M14 14l1 -1c.928 -.893 2.072 -.893 3 0l3 3',\n ],\n plus: ['M12 5l0 14', 'M5 12l14 0'],\n pointer: [\n 'M7.904 17.563a1.2 1.2 0 0 0 2.228 .308l2.09 -3.093l4.907 4.907a1.067 1.067 0 0 0 1.509 0l1.047 -1.047a1.067 1.067 0 0 0 0 -1.509l-4.907 -4.907l3.113 -2.09a1.2 1.2 0 0 0 -.309 -2.228l-13.582 -3.904l3.904 13.563z',\n ],\n polygon: [\n {\n d: 'M13.163 2.168l8.021 5.828c.694 .504 .984 1.397 .719 2.212l-3.064 9.43a1.978 1.978 0 0 1 -1.881 1.367h-9.916a1.978 1.978 0 0 1 -1.881 -1.367l-3.064 -9.43a1.978 1.978 0 0 1 .719 -2.212l8.021 -5.828a1.978 1.978 0 0 1 2.326 0z',\n stroke: 'primary',\n fill: 'secondary',\n },\n ],\n print: [\n 'M17 17h2a2 2 0 0 0 2 -2v-4a2 2 0 0 0 -2 -2h-14a2 2 0 0 0 -2 2v4a2 2 0 0 0 2 2h2',\n 'M17 9v-4a2 2 0 0 0 -2 -2h-6a2 2 0 0 0 -2 2v4',\n 'M7 13m0 2a2 2 0 0 1 2 -2h6a2 2 0 0 1 2 2v4a2 2 0 0 1 -2 2h-6a2 2 0 0 1 -2 -2z',\n ],\n redact: [\n 'M7 4h10',\n 'M12 4v8',\n 'M-7 24l12 -12',\n 'M-3 24l12 -12',\n 'M1 24l12 -12',\n 'M5 24l12 -12',\n 'M9 24l12 -12',\n 'M13 24l12 -12',\n 'M17 24l12 -12',\n 'M21 24l12 -12',\n 'M25 24l12 -12',\n ],\n // A dashed frame + a small rounded hatched box. This icon system is plain\n // paths (no <clipPath>), so the hatch segments are pre-clipped to the\n // 10..22 box analytically.\n redactArea: [\n 'M6 20h-1a2 2 0 0 1 -2 -2v-1',\n 'M3 13v-3',\n 'M3 6v-1a2 2 0 0 1 2 -2h1',\n 'M10 3h3',\n 'M17 3h1a2 2 0 0 1 2 2v1',\n 'M12 10h8a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2v-8a2 2 0 0 1 2 -2z',\n 'M10 12l2 -2',\n 'M10 16l6 -6',\n 'M10 20l10 -10',\n 'M12 22l10 -10',\n 'M16 22l6 -6',\n 'M20 22l2 -2',\n ],\n redactCombined: [\n 'M6 20h-1a2 2 0 0 1 -2 -2v-1',\n 'M3 13v-3',\n 'M20 13v-3',\n 'M3 6v-1a2 2 0 0 1 2 -2h1',\n 'M10 3h3',\n 'M17 3h1a2 2 0 0 1 2 2v1',\n 'M8 8h8',\n 'M12 8v7',\n 'M6 19l12 -12',\n 'M6 23l12 -12',\n 'M10 23l12 -12',\n 'M14 27l12 -12',\n 'M14 23l12 -12',\n ],\n redactionSidebar: [\n 'M4 6a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z',\n 'M15 4v16',\n 'M7 8h5',\n 'M7 11h5',\n 'M7 14h4',\n ],\n replaceText: [\n { d: 'M3 7v-2h12v2', stroke: 'primary' },\n { d: 'M9 5v14', stroke: 'primary' },\n { d: 'M7 19h4', stroke: 'primary' },\n { d: 'M20 14l2 2h-3', stroke: 'primary' },\n { d: 'M20 18l2 -2', stroke: 'primary' },\n { d: 'M19 16a3 3 0 1 0 2 5.236', stroke: 'primary' },\n ],\n rotateClockwise: ['M4.05 11a8 8 0 1 1 .5 4m-.5 5v-5h5'],\n rotateCounterClockwise: ['M19.95 11a8 8 0 1 0 -.5 4m.5 5v-5h-5'],\n rubberStamp: [\n 'M21 17.85h-18c0 -4.05 1.421 -4.05 3.79 -4.05c5.21 0 1.21 -4.59 1.21 -6.8a4 4 0 1 1 8 0c0 2.21 -4 6.8 1.21 6.8c2.369 0 3.79 0 3.79 4.05',\n 'M5 21h14',\n ],\n rubberStampPlus: [\n 'M21 17.85h-18c0 -4.05 1.421 -4.05 3.79 -4.05c5.21 0 1.21 -4.59 1.21 -6.8a4 4 0 0 1 4.9 -4.1',\n 'M16 10c0 1.2 -4 3.8 1.21 3.8c2.369 0 3.79 0 3.79 4.05',\n 'M5 21h14',\n 'M16 5h6',\n 'M19 2v6',\n ],\n save: [\n 'M6 4h10l4 4v10a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2',\n 'M12 14m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0',\n 'M14 4l0 4l-6 0l0 -4',\n ],\n screenshot: [\n 'M7 19a2 2 0 0 1 -2 -2',\n 'M5 13v-2',\n 'M5 7a2 2 0 0 1 2 -2',\n 'M11 5h2',\n 'M17 5a2 2 0 0 1 2 2',\n 'M19 11v2',\n 'M19 17v4',\n 'M21 19h-4',\n 'M13 19h-2',\n ],\n search: ['M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0', 'M21 21l-6 -6'],\n settings: [\n 'M10.325 4.317c.426 -1.756 2.924 -1.756 3.35 0a1.724 1.724 0 0 0 2.573 1.066c1.543 -.94 3.31 .826 2.37 2.37a1.724 1.724 0 0 0 1.065 2.572c1.756 .426 1.756 2.924 0 3.35a1.724 1.724 0 0 0 -1.066 2.573c.94 1.543 -.826 3.31 -2.37 2.37a1.724 1.724 0 0 0 -2.572 1.065c-.426 1.756 -2.924 1.756 -3.35 0a1.724 1.724 0 0 0 -2.573 -1.066c-1.543 .94 -3.31 -.826 -2.37 -2.37a1.724 1.724 0 0 0 -1.065 -2.572c-1.756 -.426 -1.756 -2.924 0 -3.35a1.724 1.724 0 0 0 1.066 -2.573c-.94 -1.543 .826 -3.31 2.37 -2.37c1 .608 2.296 .07 2.572 -1.065z',\n 'M9 12a3 3 0 1 0 6 0a3 3 0 0 0 -6 0',\n ],\n sidebar: [\n 'M4 18v-12a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z',\n 'M10 18v-12a2 2 0 0 1 2 -2h6a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-6a2 2 0 0 1 -2 -2z',\n ],\n signature: [\n 'M3 17c3.333 -3.333 5 -6 5 -8c0 -3 -1 -3 -2 -3s-2.032 1.085 -2 3c.034 2.048 1.658 4.877 2.5 6c1.5 2 2.5 2.5 3.5 1l2 -3c.333 2.667 1.333 4 3 4c.53 0 2.639 -2 3 -2c.517 0 1.517 .667 3 2',\n ],\n singlePage: ['M5 3m0 1a1 1 0 0 1 1 -1h12a1 1 0 0 1 1 1v16a1 1 0 0 1 -1 1h-12a1 1 0 0 1 -1 -1z'],\n square: [\n {\n d: 'M3 3m0 2a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2z',\n stroke: 'primary',\n fill: 'secondary',\n },\n ],\n squares: [\n 'M8 10a2 2 0 0 1 2 -2h9a2 2 0 0 1 2 2v9a2 2 0 0 1 -2 2h-9a2 2 0 0 1 -2 -2z',\n 'M16 8v-3a2 2 0 0 0 -2 -2h-9a2 2 0 0 0 -2 2v9a2 2 0 0 0 2 2h3',\n ],\n squiggly: [\n 'M8 16v-8a4 4 0 1 1 8 0v8',\n 'M8 10h8',\n { d: 'M4 20c1.5 -1.5 3.5 -1.5 5 0s3.5 1.5 5 0 3.5 -1.5 5 0', stroke: 'primary' },\n ],\n strikethrough: ['M8 16v-8a4 4 0 1 1 8 0v8', { d: 'M4 10h16', stroke: 'primary' }],\n text: [\n 'M6.5 15.5m-3.5 0a3.5 3.5 0 1 0 7 0a3.5 3.5 0 1 0 -7 0',\n 'M14 19v-10.5a3.5 3.5 0 0 1 7 0v10.5',\n 'M14 13h7',\n 'M10 12v7',\n ],\n trash: [\n 'M4 7l16 0',\n 'M10 11l0 6',\n 'M14 11l0 6',\n 'M5 7l1 12a2 2 0 0 0 2 2h8a2 2 0 0 0 2 -2l1 -12',\n 'M9 7v-3a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v3',\n ],\n underline: [{ d: 'M4 20h16', stroke: 'primary' }, 'M8 16v-8a4 4 0 1 1 8 0v8', 'M8 10h8'],\n // the ungroup glyph: two separated rounded rects\n ungroup: [\n 'M4 5a1 1 0 0 1 1 -1h5a1 1 0 0 1 1 1v5a1 1 0 0 1 -1 1h-5a1 1 0 0 1 -1 -1z',\n 'M13 14a1 1 0 0 1 1 -1h5a1 1 0 0 1 1 1v5a1 1 0 0 1 -1 1h-5a1 1 0 0 1 -1 -1z',\n ],\n unlock: ['M7 11V7a5 5 0 0 1 9.9-1'],\n updateScale: [\n 'M3.5 13.5L18.5 7.5L21.25 14.5L6.25 20.5L3.5 13.5Z',\n 'M8 12.8L9 15.2M11.5 11.4L12.2 13.2M15 10L16 12.4',\n 'M4 9.39849C4.10585 8.34804 4.487 7.34411 5.10497 6.48809C5.72294 5.63207 6.55584 4.95427 7.51957 4.52312C8.4833 4.09198 9.54373 3.92277 10.5938 4.03257C11.6438 4.14237 12.6463 4.5273 13.5 5.14849M11.5 6.00003L13.5 5.14849L12.7807 2.96999',\n ],\n vertical: ['M8 7l4 -4l4 4', 'M8 17l4 4l4 -4', 'M12 3l0 18'],\n viewSettings: [\n 'M12 14m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0',\n 'M12 10.5v1.5',\n 'M12 16v1.5',\n 'M15.031 12.25l-1.299 .75',\n 'M10.268 15l-1.3 .75',\n 'M15 15.803l-1.285 -.773',\n 'M10.285 12.97l-1.285 -.773',\n 'M14 3v4a1 1 0 0 0 1 1h4',\n 'M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z',\n ],\n widgetEdit: [\n 'M7 7h-1a2 2 0 0 0 -2 2v9a2 2 0 0 0 2 2h9a2 2 0 0 0 2 -2v-1',\n 'M20.385 6.585a2.1 2.1 0 0 0 -2.97 -2.97l-8.415 8.385v3h3l8.385 -8.415',\n 'M16 5l3 3',\n ],\n x: ['M18 6l-12 12', 'M6 6l12 12'],\n zigzag: [{ d: 'M12 2.4L21.36 11.76L2.64 12.24L12 21.6', stroke: 'primary' }],\n zoomIn: ['M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0', 'M9 12h6', 'M12 9v6'],\n zoomInArea: [\n 'M15 13v4',\n 'M13 15h4',\n 'M15 15m-5 0a5 5 0 1 0 10 0a5 5 0 1 0 -10 0',\n 'M22 22l-3 -3',\n 'M6 18h-1a2 2 0 0 1 -2 -2v-1',\n 'M3 11v-1',\n 'M3 6v-1a2 2 0 0 1 2 -2h1',\n 'M10 3h1',\n 'M15 3h1a2 2 0 0 1 2 2v1',\n ],\n zoomOut: ['M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0', 'M9 12l6 0'],\n} satisfies Record<string, readonly PathSpec[]>;\n\n/** The name of one of the viewer's own icons. */\nexport type IconName = keyof typeof ICON_PATHS;\n\nconst BUILT_IN_ICONS: Readonly<Record<string, readonly PathSpec[]>> = ICON_PATHS;\n\n/** Whether the viewer has an icon by this name of its own. */\nexport const hasIcon = (name: string): name is IconName =>\n Object.prototype.hasOwnProperty.call(BUILT_IN_ICONS, name);\n\n/** The paths an icon name draws: yours, else the viewer's own; `null` for neither. */\nexport function iconPathsOf(\n name: string,\n custom: Readonly<Record<string, IconDef>>,\n): readonly PathSpec[] | null {\n const own = Object.prototype.hasOwnProperty.call(custom, name) ? custom[name] : undefined;\n if (own !== undefined) return pathsOfIcon(own);\n return hasIcon(name) ? BUILT_IN_ICONS[name]! : null;\n}\n\nexport interface IconProps {\n name: string;\n size?: number;\n strokeWidth?: number;\n className?: string;\n title?: string;\n /** Paints the glyph's slot-tagged sub-paths (a tool previewing its\n * drawing defaults). Absent → the plain, untinted glyph. */\n accent?: IconAccent;\n}\n\n/** One SVG renderer for every icon. Unknown names render nothing (caller shows\n * a text fallback), so a missing glyph never throws. */\nexport function Icon({ name, size = 20, strokeWidth = 2, className, title, accent }: IconProps) {\n // Registry semantics: user icons are additive and a colliding name wins —\n // re-skinning a built-in glyph is a supported move, not an accident.\n const paths = iconPathsOf(name, useCustomIcons());\n if (!paths) return null;\n return (\n <svg\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={className}\n role=\"img\"\n aria-hidden={title ? undefined : true}\n aria-label={title}\n >\n {paths.map((path, i) => {\n if (typeof path === 'string') return <path key={i} d={path} />;\n const fill =\n path.fill === true ? 'currentColor' : path.fill ? accent?.[path.fill] : undefined;\n // a stroke slot paints from the accent, inheriting currentColor\n // without one; a fill-only path never gets an outline\n const stroke = path.stroke ? accent?.[path.stroke] : path.fill ? 'none' : undefined;\n return (\n <path\n key={i}\n d={path.d}\n fill={fill ?? 'none'}\n stroke={stroke}\n strokeWidth={path.strokeWidth}\n strokeDasharray={path.strokeDasharray}\n strokeOpacity={path.strokeOpacity}\n fillOpacity={path.fillOpacity}\n />\n );\n })}\n </svg>\n );\n}\n"],"mappings":"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AAY;CACnD,aAAa;EACX;EACA;EACA;EACA;CACF;CACA,YAAY;EAAC;EAAa;EAAe;CAAY;CACrD,UAAU;EACR;EACA;EACA;EACA;CACF;CACA,aAAa,CAAC,oBAAoB,2BAA2B;CAC7D,gBAAgB,CAAC,qBAAqB,4BAA4B;CAClE,MAAM,CAAC,gCAAgC,kCAAkC;CACzE,MAAM;EACJ;EACA;EACA;EACA;EACA;CACF;CACA,OAAO;EACL;EACA;EACA;CACF;CACA,WAAW;EACT;EACA;EACA;CACF;CACA,SAAS;EACP;GACE,GAAG;GACH,QAAQ;GACR,MAAM;EACR;EACA;GAAE,GAAG;GAAe,QAAQ;EAAU;EACtC;GAAE,GAAG;GAAkB,QAAQ;EAAU;CAC3C;CACA,OAAO,CAAC,kBAAkB;CAC1B,aAAa,CAAC,eAAe;CAC7B,aAAa,CAAC,gBAAgB;CAC9B,cAAc,CAAC,eAAe;CAC9B,QAAQ,CACN;EAAE,GAAG;EAA8C,QAAQ;EAAW,MAAM;CAAY,CAC1F;CACA,SAAS;EACP;EACA;EACA;EACA;CACF;CACA,MAAM,CACJ,gKACA,+FACF;CACA,cAAc;EACZ;EACA;EACA;CACF;CACA,MAAM;EACJ;EACA;EACA;CACF;CACA,YAAY,CACV,yFACF;CACA,UAAU;EAAC;EAA8C;EAAkB;CAAY;CACvF,cAAc;EACZ;EACA;EACA;CACF;CACA,KAAK,CAAC,gDAAgD,oCAAoC;CAC1F,MAAM,CAAC,4DAA4D;CACnE,YAAY,CACV,2BACA,+EACF;CACA,WAAW;EACT;EACA;EACA;EACA;EACA;CACF;CACA,YAAY;EACV;EACA;EACA;EACA;EACA;CACF;CACA,YAAY,CACV,gFACA,SACF;CACA,cAAc,CACZ,kFACA,gBACF;CAEA,YAAY;EACV;EACA;EACA;EACA;EACA;EACA;CACF;CACA,aAAa;EACX;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,WAAW,CACT;EAAE,GAAG;EAAsC,MAAM;CAAK,GACtD,sCACF;CACA,YAAY,CACV,kFACA,gBACF;CACA,eAAe;EACb;EACA;EACA;EACA;EACA;EACA;CACF;CACA,UAAU;EACR;GAAE,GAAG;GAAgB,QAAQ;EAAU;EACvC;GAAE,GAAG;GAAY,QAAQ;EAAU;EACnC;GAAE,GAAG;GAAa,QAAQ;EAAU;EACpC;GAAE,GAAG;GAAiB,QAAQ;EAAU;EACxC;GAAE,GAAG;GAAY,QAAQ;EAAU;EACnC;GAAE,GAAG;GAAY,QAAQ;EAAU;CACrC;CACA,YAAY;EACV;EACA;EACA;EACA;CACF;CACA,gBAAgB;EACd;EACA;EACA;EACA;EACA;CACF;CACA,OAAO;EACL;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,MAAM;EACJ;EACA;EACA;EACA;CACF;CACA,WAAW;EAET;GACE,GAAG;GACH,MAAM;EACR;EACA;EACA;CACF;CACA,YAAY;EAAC;EAAiB;EAAkB;CAAY;CAC5D,gBAAgB;EACd;EACA;EACA;EACA;GAAE,GAAG;GAAwB,QAAQ;GAAW,MAAM;EAAU;CAClE;CACA,YAAY;EACV;GAAE,GAAG;GAAgB,QAAQ;EAAU;EACvC;GAAE,GAAG;GAAW,QAAQ;EAAU;EAClC;GAAE,GAAG;GAAW,QAAQ;EAAU;EAClC;GAAE,GAAG;GAAiB,QAAQ;EAAU;EACxC;GAAE,GAAG;GAAe,QAAQ;EAAU;CACxC;CACA,QAAQ;EAAC;EAAa;EAAa;CAAa;CAChD,MAAM,CAAC;EAAE,GAAG;EAAgB,QAAQ;CAAU,CAAC;CAI/C,WAAW,CACT;EAAE,GAAG;EAAgB,QAAQ;CAAU,GACvC;EAAE,GAAG;EAAa,QAAQ;CAAU,CACtC;CACA,MAAM;EACJ;EACA;EACA;CACF;CACA,SAAS;EACP;EACA;EACA;EACA;CACF;CACA,UAAU;EAAC;EAAW;EAAY;EAAY;EAAY;EAAa;CAAY;CACnF,MAAM,CACJ,gFACA,0BACF;CACA,eAAe;EACb;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,MAAM,CAAC,aAAa,YAAY;CAChC,SAAS;EACP;EACA;EACA;CACF;CACA,SAAS;EACP;EACA;EACA;EACA;CACF;CACA,WAAW,CACT,+FACF;CACA,cAAc,CACZ,gIACA;EACE,GAAG;EACH,QAAQ;CACV,CACF;CACA,OAAO;EACL;EACA;EACA;EACA;CACF;CACA,MAAM,CAAC,cAAc,YAAY;CACjC,SAAS,CACP,oNACF;CACA,SAAS,CACP;EACE,GAAG;EACH,QAAQ;EACR,MAAM;CACR,CACF;CACA,OAAO;EACL;EACA;EACA;CACF;CACA,QAAQ;EACN;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CAIA,YAAY;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,gBAAgB;EACd;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,kBAAkB;EAChB;EACA;EACA;EACA;EACA;CACF;CACA,aAAa;EACX;GAAE,GAAG;GAAgB,QAAQ;EAAU;EACvC;GAAE,GAAG;GAAW,QAAQ;EAAU;EAClC;GAAE,GAAG;GAAW,QAAQ;EAAU;EAClC;GAAE,GAAG;GAAiB,QAAQ;EAAU;EACxC;GAAE,GAAG;GAAe,QAAQ;EAAU;EACtC;GAAE,GAAG;GAA4B,QAAQ;EAAU;CACrD;CACA,iBAAiB,CAAC,oCAAoC;CACtD,wBAAwB,CAAC,sCAAsC;CAC/D,aAAa,CACX,0IACA,UACF;CACA,iBAAiB;EACf;EACA;EACA;EACA;EACA;CACF;CACA,MAAM;EACJ;EACA;EACA;CACF;CACA,YAAY;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,QAAQ,CAAC,8CAA8C,cAAc;CACrE,UAAU,CACR,+gBACA,oCACF;CACA,SAAS,CACP,oFACA,iFACF;CACA,WAAW,CACT,wLACF;CACA,YAAY,CAAC,iFAAiF;CAC9F,QAAQ,CACN;EACE,GAAG;EACH,QAAQ;EACR,MAAM;CACR,CACF;CACA,SAAS,CACP,6EACA,8DACF;CACA,UAAU;EACR;EACA;EACA;GAAE,GAAG;GAAwD,QAAQ;EAAU;CACjF;CACA,eAAe,CAAC,4BAA4B;EAAE,GAAG;EAAY,QAAQ;CAAU,CAAC;CAChF,MAAM;EACJ;EACA;EACA;EACA;CACF;CACA,OAAO;EACL;EACA;EACA;EACA;EACA;CACF;CACA,WAAW;EAAC;GAAE,GAAG;GAAY,QAAQ;EAAU;EAAG;EAA4B;CAAS;CAEvF,SAAS,CACP,4EACA,4EACF;CACA,QAAQ,CAAC,yBAAyB;CAClC,aAAa;EACX;EACA;EACA;CACF;CACA,UAAU;EAAC;EAAiB;EAAkB;CAAY;CAC1D,cAAc;EACZ;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,YAAY;EACV;EACA;EACA;CACF;CACA,GAAG,CAAC,gBAAgB,YAAY;CAChC,QAAQ,CAAC;EAAE,GAAG;EAA0C,QAAQ;CAAU,CAAC;CAC3E,QAAQ;EAAC;EAAwC;EAAW;CAAS;CACrE,YAAY;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,SAAS,CAAC,8CAA8C,WAAW;AACrE;AAKA,MAAM,iBAAgE;;AAGtE,MAAa,WAAW,SACtB,OAAO,UAAU,eAAe,KAAK,gBAAgB,IAAI;;AAG3D,SAAgB,YACd,MACA,QAC4B;CAC5B,MAAM,MAAM,OAAO,UAAU,eAAe,KAAK,QAAQ,IAAI,IAAI,OAAO,QAAQ,KAAA;CAChF,IAAI,QAAQ,KAAA,GAAW,OAAO,YAAY,GAAG;CAC7C,OAAO,QAAQ,IAAI,IAAI,eAAe,QAAS;AACjD;;;AAeA,SAAgB,KAAK,EAAE,MAAM,OAAO,IAAI,cAAc,GAAG,WAAW,OAAO,UAAqB;CAG9F,MAAM,QAAQ,YAAY,MAAM,eAAe,CAAC;CAChD,IAAI,CAAC,OAAO,OAAO;CACnB,OACE,oBAAC,OAAD;EACE,OAAO;EACP,QAAQ;EACR,SAAQ;EACR,MAAK;EACL,QAAO;EACM;EACb,eAAc;EACd,gBAAe;EACJ;EACX,MAAK;EACL,eAAa,QAAQ,KAAA,IAAY;EACjC,cAAY;EAEX,UAAA,MAAM,KAAK,MAAM,MAAM;GACtB,IAAI,OAAO,SAAS,UAAU,OAAO,oBAAC,QAAD,EAAc,GAAG,KAAO,GAAb,CAAa;GAC7D,MAAM,OACJ,KAAK,SAAS,OAAO,iBAAiB,KAAK,OAAO,SAAS,KAAK,QAAQ,KAAA;GAG1E,MAAM,SAAS,KAAK,SAAS,SAAS,KAAK,UAAU,KAAK,OAAO,SAAS,KAAA;GAC1E,OACE,oBAAC,QAAD;IAEE,GAAG,KAAK;IACR,MAAM,QAAQ;IACN;IACR,aAAa,KAAK;IAClB,iBAAiB,KAAK;IACtB,eAAe,KAAK;IACpB,aAAa,KAAK;GACnB,GARM,CAQN;EAEL,CAAC;CACE,CAAA;AAET"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"icons-x0Tc05bs.cjs","names":["EXPANDED_MIN_WIDTH_PX","DEFAULT_LAYOUT"],"sources":["../src/config/viewer-commands.ts","../src/config-context.tsx","../src/ui/icons.tsx"],"sourcesContent":["/**\n * Your commands, as the `commands` config gives them, over the built-in ones.\n *\n * A command of yours is the headless command, with functions that get the viewer's words:\n * `get` takes a plugin's name (`get('selection')`) as well as its token, and `viewer` is the\n * viewer `onReady` gets. One with a built-in id merges over the built-in command, so what it\n * leaves out stays: `{ id: 'document:download', run }` keeps Download's label, icon, shortcut\n * and checks. A shortcut of yours takes its keys from every built-in command that has them, so\n * a key runs your command and the built-in one's tooltip no longer shows it.\n */\nimport { sameShortcut } from '@embedpdf/core-ui';\nimport type {\n CommandContext as PluginCommandContext,\n CommandDef as PluginCommandDef,\n IconAccent,\n} from '@embedpdf/react/commands';\nimport type { CapabilityToken } from '@embedpdf/react/runtime';\n\nimport type { PluginTokens, ScopedViewer, Viewer } from '../handle';\nimport type { IconName } from '../ui/icons';\n\n/** What a command's functions get: its document, any plugin by its name or token, and the viewer. */\nexport interface CommandContext extends ScopedViewer {\n /** The document it's for: the one named, else the active one; `null` with none open. */\n readonly documentId: string | null;\n /** What the caller passed: `execute(id, { args })`. */\n readonly args?: unknown;\n /** Fires when the caller cancels `execute()`: pass it on to the calls `run` makes. */\n readonly signal?: AbortSignal;\n /** The viewer, as `onReady` gets it. */\n readonly viewer: Viewer;\n}\n\n/**\n * A command, as the `commands` config takes it: the headless command, its functions getting\n * {@link CommandContext}. With a built-in command's id it changes that one, field by field.\n */\nexport interface CommandDef extends Omit<\n PluginCommandDef,\n 'icon' | 'iconAccent' | 'allowed' | 'enabled' | 'active' | 'visible' | 'run'\n> {\n /** An icon's name: one of the viewer's, or one of yours (`icons`). */\n readonly icon?: IconName | (string & {});\n /** Colors for the icon, read from live state like `active`. */\n readonly iconAccent?: (context: CommandContext) => IconAccent | null;\n /** Whether the session may run it, from the plugins' `can*` checks. Prefer `requires`. */\n readonly allowed?: (context: CommandContext) => boolean;\n /** When it can run. When it can't, its button is greyed out. Default: always. */\n readonly enabled?: (context: CommandContext) => boolean;\n /** When it shows as pressed, or checked in a menu. */\n readonly active?: (context: CommandContext) => boolean;\n /** When it shows at all. Default: always. */\n readonly visible?: (context: CommandContext) => boolean;\n /** What it does; `execute()` resolves once it has. Not needed for a `menu` or `panel`. */\n readonly run?: (context: CommandContext) => void | Promise<unknown>;\n}\n\n/** What a command of yours reaches: the viewer's plugins by name, and the viewer once it's live. */\nexport interface CommandScope {\n readonly plugins: PluginTokens;\n /** The viewer now, or `null` before it's live. */\n viewer(): Viewer | null;\n}\n\nconst FUNCTIONS = ['iconAccent', 'allowed', 'enabled', 'active', 'visible', 'run'] as const;\n\n/** Fields that go together: giving one of them replaces all of the built-in command's. */\nconst TOGETHER: readonly (readonly (keyof PluginCommandDef)[])[] = [\n ['label', 'labelKey'],\n ['run', 'menu', 'panel', 'modal'],\n];\n\n/** The viewer's words over a command's context: plugins by name, and the viewer. */\nfunction viewerContextOf(context: PluginCommandContext, scope: CommandScope): CommandContext {\n const tokenOf = (plugin: string | CapabilityToken<unknown>): CapabilityToken<unknown> | null =>\n typeof plugin !== 'string'\n ? plugin\n : Object.prototype.hasOwnProperty.call(scope.plugins, plugin)\n ? (scope.plugins[plugin] ?? null)\n : null;\n const get = ((plugin: string | CapabilityToken<unknown>): unknown => {\n const token = tokenOf(plugin);\n if (!token) {\n throw new Error(\n `[embedpdf] the viewer has no plugin named \"${String(plugin)}\". Its plugins: ` +\n `${Object.keys(scope.plugins).join(', ')}.`,\n );\n }\n return context.get(token);\n }) as ScopedViewer['get'];\n const tryGet = ((plugin: string | CapabilityToken<unknown>): unknown => {\n const token = tokenOf(plugin);\n return token ? context.tryGet(token) : null;\n }) as ScopedViewer['tryGet'];\n return {\n documentId: context.documentId,\n ...(context.args === undefined ? {} : { args: context.args }),\n ...(context.signal ? { signal: context.signal } : {}),\n get,\n tryGet,\n get viewer(): Viewer {\n const viewer = scope.viewer();\n if (!viewer) throw new Error('[embedpdf] the viewer is not live yet');\n return viewer;\n },\n };\n}\n\n/** A command of yours as the commands plugin takes it: each function gets the viewer's words. */\nexport function toPluginCommand(command: CommandDef, scope: CommandScope): PluginCommandDef {\n // One context per resolution: a command's functions are all asked with the same one.\n const contexts = new WeakMap<PluginCommandContext, CommandContext>();\n const contextOf = (context: PluginCommandContext): CommandContext => {\n let viewerContext = contexts.get(context);\n if (!viewerContext) {\n viewerContext = viewerContextOf(context, scope);\n contexts.set(context, viewerContext);\n }\n return viewerContext;\n };\n const converted: Record<string, unknown> = { ...command };\n for (const name of FUNCTIONS) {\n const given = command[name] as ((context: CommandContext) => unknown) | undefined;\n if (given) converted[name] = (context: PluginCommandContext) => given(contextOf(context));\n }\n return converted as unknown as PluginCommandDef;\n}\n\n/** A built-in command with yours over it: what yours gives replaces, the rest stays. */\nexport function mergeCommand(builtIn: PluginCommandDef, yours: PluginCommandDef): PluginCommandDef {\n const merged: Record<string, unknown> = { ...builtIn };\n for (const fields of TOGETHER) {\n if (!fields.some((field) => yours[field] !== undefined)) continue;\n for (const field of fields) delete merged[field];\n }\n for (const [field, value] of Object.entries(yours))\n if (value !== undefined) merged[field] = value;\n return merged as unknown as PluginCommandDef;\n}\n\nconst shortcutsOf = (command: Pick<PluginCommandDef, 'shortcut'>): readonly string[] =>\n command.shortcut === undefined ? [] : ([] as string[]).concat(command.shortcut);\n\n/** The commands the viewer registers, from the built-in ones and yours. */\nexport interface ViewerCommands {\n /** The built-in commands with yours merged over them, then the rest of yours, in order. */\n readonly commands: readonly PluginCommandDef[];\n /** Whether a command with this id is yours alone: no built-in command has the id. */\n isYours(id: string): boolean;\n /**\n * A built-in command as yours changes it: without the keys your shortcuts take, and with\n * yours of the same id merged over it. For the commands the layout brings, its panels' and\n * modes'.\n */\n over(builtIn: PluginCommandDef): PluginCommandDef;\n}\n\n/** No commands of yours: the built-in ones as they are. */\nexport const NO_VIEWER_COMMANDS: ViewerCommands = {\n commands: [],\n isYours: () => false,\n over: (builtIn) => builtIn,\n};\n\n/**\n * Your commands over the built-in ones. A later command of yours with an id that's taken\n * replaces the earlier one. `isMac` says which keys `Mod` is, to tell two shortcuts apart.\n */\nexport function resolveViewerCommands(\n builtIns: readonly PluginCommandDef[],\n given: readonly CommandDef[],\n scope: CommandScope,\n options: { readonly isMac: boolean },\n): ViewerCommands {\n const yours = new Map<string, PluginCommandDef>();\n for (const command of given) yours.set(command.id, toPluginCommand(command, scope));\n const taken = [...yours.values()].flatMap(shortcutsOf);\n const isTaken = (shortcut: string): boolean =>\n taken.some((key) => {\n try {\n return sameShortcut(key, shortcut, options);\n } catch {\n return false;\n }\n });\n const over = (builtIn: PluginCommandDef): PluginCommandDef => {\n const shortcuts = shortcutsOf(builtIn);\n const kept = shortcuts.filter((shortcut) => !isTaken(shortcut));\n const base = kept.length === shortcuts.length ? builtIn : { ...builtIn, shortcut: kept };\n const own = yours.get(builtIn.id);\n return own ? mergeCommand(base, own) : base;\n };\n const builtInIds = new Set(builtIns.map((command) => command.id));\n return {\n commands: [\n ...builtIns.map(over),\n ...[...yours.values()].filter((command) => !builtInIds.has(command.id)),\n ],\n isYours: (id) => yours.has(id) && !builtInIds.has(id),\n over,\n };\n}\n","/**\n * The resolved customization, as React context. The `layout` option and the\n * user's extra icons are resolved once in <FullViewer>; the layout at the\n * viewer's current size is resolved by <LayoutRoot> (layout-root.tsx), and read\n * here by the shell, menus and strips — no component imports the default\n * layout directly, so \"the host changed the layout\" is invisible below this\n * line.\n *\n * The default context values are the default config and the default layout:\n * components render correctly in tests and stories without a provider.\n */\nimport { createContext, useContext } from 'react';\nimport {\n EXPANDED_MIN_WIDTH_PX,\n barsAt,\n compileBar,\n menuOf,\n type LayoutData,\n type LayoutEnv,\n type LayoutOption,\n type MenuSection,\n type SelectionTarget,\n} from '@embedpdf/core-ui';\nimport type { BarGroup, BarSchema } from '@embedpdf/react/toolbar';\nimport { DEFAULT_LAYOUT } from './config/chrome';\nimport type { IconDef } from './ui/icons';\nimport { NO_VIEWER_COMMANDS, type ViewerCommands } from './config/viewer-commands';\nimport type { ViewerSignatureSettings, ViewerStampSettings } from './plugin-settings';\n\n/**\n * A font beyond the standard 14, for the engine: what `engine.fonts` lists. The style panel\n * offers it for text boxes, once it's registered on the engine and mounted for the live editor.\n */\nexport interface ViewerFont {\n /** The id a free-text `fontFamily` carries, and the engine's key for it. Not one of the 14 standard names. */\n readonly key: string;\n /** Where the TTF or OTF file comes from (same-origin or CORS-enabled). */\n readonly url?: string;\n /** The file's bytes, in place of `url`. */\n readonly data?: Uint8Array | ArrayBuffer;\n /** The family's name, which the style panel shows (else the key); inferred from the file when left out. */\n readonly familyName?: string;\n readonly weight?: number;\n readonly italic?: boolean;\n}\n\n/** What `onPanelResize` hears: the panel, and the width the user gave it. */\nexport interface PanelResizeEvent {\n /** The panel's id. */\n readonly id: string;\n /** Its width now, in px. */\n readonly width: number;\n}\n\nexport interface ResolvedViewerConfig {\n /** The `layout` option as given: the default without one. */\n readonly layout?: LayoutOption;\n /** User-registered icons — additive over the built-in set. */\n readonly icons: Readonly<Record<string, IconDef>>;\n /** Your commands over the built-in ones, for the commands the layout brings too. */\n readonly viewerCommands: ViewerCommands;\n /** What the viewer adds to `plugins.stamp`: the standard stamps, the quick stamps. */\n readonly stamp: ViewerStampSettings;\n /** What the viewer adds to `plugins.signature`: which marks people keep, their fonts. */\n readonly signature: ViewerSignatureSettings;\n /** The engine's fonts the style panel offers (see {@link ViewerFont}). */\n readonly fonts: readonly ViewerFont[];\n /** Hears each width the user gives a panel, by dragging its edge or with its keys. */\n readonly onPanelResize?: (event: PanelResizeEvent) => void;\n}\n\nconst DEFAULT_CONFIG: ResolvedViewerConfig = {\n icons: {},\n viewerCommands: NO_VIEWER_COMMANDS,\n stamp: {},\n signature: {},\n fonts: [],\n};\n\nconst ViewerConfigContext = createContext<ResolvedViewerConfig>(DEFAULT_CONFIG);\n\nexport const ViewerConfigProvider = ViewerConfigContext.Provider;\n\n/** The `layout` option, for <LayoutRoot> to resolve at the viewer's size. */\nexport function useLayoutOption(): LayoutOption | undefined {\n return useContext(ViewerConfigContext).layout;\n}\n\n/** Tells the app a panel's new width: what the panel frame calls once the user has resized it. */\nexport function usePanelResize(): (event: PanelResizeEvent) => void {\n const { onPanelResize } = useContext(ViewerConfigContext);\n return (event) => onPanelResize?.(event);\n}\n\n// ── the layout at the viewer's current size ──────────────────────────────────\n\n/** The layout as the viewer shows it now: at its env, with what shows nothing left out. */\nexport interface ResolvedLayout {\n /** The layout's data at this env. */\n readonly data: LayoutData;\n readonly env: LayoutEnv;\n /** A bar as its toolbar fits it, or `null` for a bar the layout doesn't have. */\n bar(id: string): BarSchema | null;\n /** The bars over a selection of this kind, as one bar, or `null` when there is none. */\n strip(target: SelectionTarget): BarSchema | null;\n /** A menu's sections, or `null` for a menu the layout doesn't have. */\n menu(id: string): readonly MenuSection[] | null;\n}\n\n/** The env before the viewer is measured, and without a <LayoutRoot>. */\nexport const DEFAULT_ENV: LayoutEnv = {\n size: 'expanded',\n width: EXPANDED_MIN_WIDTH_PX,\n touch: false,\n dir: 'ltr',\n};\n\n/**\n * The bars over a selection of this kind as one bar, read through `bar`: one bar as it is, or\n * several as one, their groups in bar order and named after their bar so the names stay unique.\n */\nexport function stripOf(\n data: LayoutData,\n target: SelectionTarget,\n bar: (id: string) => BarSchema | null,\n): BarSchema | null {\n const bars = barsAt(data, target)\n .map(bar)\n .filter((each): each is BarSchema => each !== null);\n if (bars.length <= 1) return bars[0] ?? null;\n const sections: { -readonly [Name in 'start' | 'center' | 'end']?: readonly BarGroup[] } = {};\n for (const name of ['start', 'center', 'end'] as const) {\n const groups = bars.flatMap((each) =>\n (each.sections[name] ?? []).map((group) => ({ ...group, id: `${each.id}.${group.id}` })),\n );\n if (groups.length > 0) sections[name] = groups;\n }\n return { id: target, sections };\n}\n\n/** The layout as plain reads of its data: no bar leaves anything out. */\nexport function staticResolvedLayout(data: LayoutData, env: LayoutEnv): ResolvedLayout {\n const bar = (id: string) => compileBar(data, id);\n return {\n data,\n env,\n bar,\n strip: (target) => stripOf(data, target, bar),\n menu: (id) => menuOf(data, id),\n };\n}\n\nconst ResolvedLayoutContext = createContext<ResolvedLayout>(\n staticResolvedLayout(DEFAULT_LAYOUT, DEFAULT_ENV),\n);\n\nexport const ResolvedLayoutProvider = ResolvedLayoutContext.Provider;\n\nexport function useResolvedLayout(): ResolvedLayout {\n return useContext(ResolvedLayoutContext);\n}\n\n/** The viewer's env: its size, width, whether it's touched, and its direction. */\nexport function useLayoutEnv(): LayoutEnv {\n return useContext(ResolvedLayoutContext).env;\n}\n\n/** A menu's sections from the layout, or `null` for a menu it doesn't have. */\nexport function useMenu(id: string): readonly MenuSection[] | null {\n return useContext(ResolvedLayoutContext).menu(id);\n}\n\n/** The bars over a selection of this kind, as one bar; `undefined` when the layout has none. */\nexport function useStripSchema(target: SelectionTarget): BarSchema | undefined {\n return useContext(ResolvedLayoutContext).strip(target) ?? undefined;\n}\n\n/** Your commands over the built-in ones: what the layout's panel and mode commands merge under. */\nexport function useViewerCommands(): ViewerCommands {\n return useContext(ViewerConfigContext).viewerCommands;\n}\n\nexport function useCustomIcons(): Readonly<Record<string, IconDef>> {\n return useContext(ViewerConfigContext).icons;\n}\n\nexport function useStampSettings(): ViewerStampSettings {\n return useContext(ViewerConfigContext).stamp;\n}\n\nexport function useSignatureSettings(): ViewerSignatureSettings {\n return useContext(ViewerConfigContext).signature;\n}\n\nexport function useConfiguredFonts(): readonly ViewerFont[] {\n return useContext(ViewerConfigContext).fonts;\n}\n","/**\n * Icon set — Tabler-style stroke icons as path data, rendered by one <Icon>\n * component. Stroke-based (currentColor); a few glyphs carry filled sub-paths,\n * marked `fill: true`. The names are API: a command's `icon` names one, and an\n * icon of yours with the same name replaces it everywhere it shows.\n *\n * Accent slots: a tool glyph tags the sub-paths that preview the tool's\n * drawing defaults — `stroke`/`fill: 'primary' | 'secondary'` paint from the\n * command's resolved `iconAccent`. With no accent, a slotted stroke inherits\n * currentColor and a slotted fill renders nothing — pixel-identical to the\n * untagged glyph, so non-tool surfaces never change.\n */\nimport * as React from 'react';\nimport { useCustomIcons } from '../config-context';\n\nexport type PathSpec =\n | string\n | {\n d: string;\n /** Fill paint: `true` = currentColor (a filled glyph part); a slot\n * name = that accent color (nothing when the accent is absent). */\n fill?: boolean | 'primary' | 'secondary';\n /** Stroke paint: a slot name = that accent color (currentColor when\n * the accent is absent). */\n stroke?: 'primary' | 'secondary';\n strokeWidth?: number;\n strokeDasharray?: string;\n strokeOpacity?: number;\n fillOpacity?: number;\n };\n\n/** An icon's path data: a string is one path, an array several. */\nexport type IconPaths = string | readonly PathSpec[];\n\n/**\n * An icon of yours: 24 × 24 path data drawn as a line (Tabler and Lucide icons paste in as\n * they are), or `{ paths, fill: true }` to fill the paths instead of drawing their outline.\n */\nexport type IconDef = IconPaths | { readonly paths: IconPaths; readonly fill?: boolean };\n\nconst isPathList = (paths: IconDef): paths is readonly PathSpec[] => Array.isArray(paths);\n\n/** An icon's paths as the renderer draws them: filled ones carry `fill: true`. */\nexport function pathsOfIcon(icon: IconDef): readonly PathSpec[] {\n if (typeof icon === 'string') return [icon];\n if (isPathList(icon)) return icon;\n const paths = typeof icon.paths === 'string' ? [icon.paths] : icon.paths;\n if (!icon.fill) return paths;\n return paths.map((path) => (typeof path === 'string' ? { d: path, fill: true } : path));\n}\n\n/** The two tintable slots — structurally identical to plugin-commands'\n * IconAccent, kept local so the icon set stays dependency-free. */\nexport interface IconAccent {\n primary?: string;\n secondary?: string;\n}\n\nconst measurementOutline: PathSpec[] = [\n { d: 'M5 4H19M20 5V19M19 20H5M4 19V5', stroke: 'primary' },\n {\n d: 'M3.1 3.1h1.8v1.8H3.1zM19.1 3.1h1.8v1.8h-1.8zM3.1 19.1h1.8v1.8H3.1zM19.1 19.1h1.8v1.8h-1.8z',\n stroke: 'primary',\n },\n];\n\nexport const ICON_PATHS = {\n ruler: ['M3 8h18v8H3z', 'M7 8v4M11 8v2M15 8v4M19 8v2'],\n distance: [\n { d: 'M5 12H19', stroke: 'primary', strokeDasharray: '2 2' },\n {\n d: 'M3.5 10.5a1.5 1.5 0 1 0 0 3a1.5 1.5 0 1 0 0-3M20.5 10.5a1.5 1.5 0 1 0 0 3a1.5 1.5 0 1 0 0-3',\n stroke: 'primary',\n fill: 'primary',\n fillOpacity: 0.25,\n },\n ],\n perimeter: measurementOutline,\n area: [\n { d: 'M5 4H19V5H20V19H19V20H5V19H4V5H5Z', fill: 'primary', fillOpacity: 0.08 },\n {\n d: 'M4.5 7.5L7.5 4.5M4.5 10.5L10.5 4.5M4.5 13.5L13.5 4.5M4.5 16.5L16.5 4.5M4.5 19.5L19.5 4.5M7.5 19.5L19.5 7.5M10.5 19.5L19.5 10.5M13.5 19.5L19.5 13.5M16.5 19.5L19.5 16.5',\n stroke: 'primary',\n strokeWidth: 0.6,\n strokeOpacity: 0.5,\n },\n ...measurementOutline,\n ],\n alertTriangle: [\n 'M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z',\n ],\n alignBottom: [\n 'M3 19v-14a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2z',\n 'M11 17h2',\n 'M9 14h6',\n 'M10 11h4',\n ],\n alignCenter: ['M4 6l16 0', 'M8 12l8 0', 'M6 18l12 0'],\n alignLeft: ['M4 6l16 0', 'M4 12l10 0', 'M4 18l14 0'],\n alignMiddle: [\n 'M3 19v-14a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2z',\n 'M11 15h2',\n 'M9 12h6',\n 'M10 9h4',\n ],\n alignRight: ['M4 6l16 0', 'M10 12l10 0', 'M6 18l14 0'],\n alignTop: [\n 'M3 19v-14a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2z',\n 'M11 13h2',\n 'M9 10h6',\n 'M10 7h4',\n ],\n arrowBackUp: ['M9 14l-4 -4l4 -4', 'M5 10h11a4 4 0 1 1 0 8h-1'],\n arrowForwardUp: ['M15 14l4 -4l-4 -4', 'M19 10h-11a4 4 0 1 0 0 8h1'],\n bold: ['M7 5h6a3.5 3.5 0 0 1 0 7h-6z', 'M13 12h1a3.5 3.5 0 0 1 0 7h-7v-7'],\n book: [\n 'M3 19a9 9 0 0 1 9 0a9 9 0 0 1 9 0',\n 'M3 6a9 9 0 0 1 9 0a9 9 0 0 1 9 0',\n 'M3 6l0 13',\n 'M12 6l0 13',\n 'M21 6l0 13',\n ],\n book2: [\n 'M19 4v16h-12a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2h12z',\n 'M19 16h-12a2 2 0 0 0 -2 2',\n 'M9 8h6',\n ],\n calibrate: [\n 'M12 12m-7.5 0a7.5 7.5 0 1 0 15 0a7.5 7.5 0 1 0 -15 0',\n 'M12 2.75V7M12 17V21.25M2.75 12H7M17 12H21.25',\n 'M12 12m-2.5 0a2.5 2.5 0 1 0 5 0a2.5 2.5 0 1 0 -5 0',\n ],\n callout: [\n {\n d: 'M20 6v4a1 1 0 0 1 -1 1h-14a1 1 0 0 1 -1 -1v-4a1 1 0 0 1 1 -1h14a1 1 0 0 1 1 1',\n stroke: 'primary',\n fill: 'secondary',\n },\n { d: 'M17 11v6h-9', stroke: 'primary' },\n { d: 'M8 15l-2 2l2 2', stroke: 'primary' },\n ],\n check: ['M5 12l5 5l10 -10'],\n chevronDown: ['M6 9l6 6l6 -6'],\n chevronLeft: ['M15 6l-6 6l6 6'],\n chevronRight: ['M9 6l6 6l-6 6'],\n circle: [\n { d: 'M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0', stroke: 'primary', fill: 'secondary' },\n ],\n comment: [\n 'M12 11v.01',\n 'M8 11v.01',\n 'M16 11v.01',\n 'M18 4a3 3 0 0 1 3 3v8a3 3 0 0 1 -3 3h-5l-5 3v-3h-2a3 3 0 0 1 -3 -3v-8a3 3 0 0 1 3 -3z',\n ],\n copy: [\n 'M7 7m0 2.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667z',\n 'M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1',\n ],\n deviceFloppy: [\n 'M6 4h10l4 4v10a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2',\n 'M12 14m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0',\n 'M14 4l0 4l-6 0l0 -4',\n ],\n dots: [\n 'M5 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0',\n 'M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0',\n 'M19 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0',\n ],\n doublePage: [\n 'M3 3m0 1a1 1 0 0 1 1 -1h16a1 1 0 0 1 1 1v16a1 1 0 0 1 -1 1h-16a1 1 0 0 1 -1 -1zm9 -1v18',\n ],\n download: ['M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2', 'M7 11l5 5l5 -5', 'M12 4l0 12'],\n externalLink: [\n 'M12 6h-6a2 2 0 0 0 -2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-6',\n 'M11 13l9 -9',\n 'M15 4h5v5',\n ],\n eye: ['M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z', 'M9 12a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'],\n file: ['M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'],\n fileImport: [\n 'M14 3v4a1 1 0 0 0 1 1h4',\n 'M5 13v-8a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2h-5.5m-9.5 -2h7m-3 -3l3 3l-3 3',\n ],\n fitToPage: [\n 'M12 20h-6a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2h6',\n 'M18 14v7',\n 'M18 3v7',\n 'M15 18l3 3l3 -3',\n 'M15 6l3 -3l3 3',\n ],\n fitToWidth: [\n 'M4 12v-6a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v6',\n 'M10 18h-7',\n 'M21 18h-7',\n 'M6 15l-3 3l3 3',\n 'M18 15l3 3l-3 3',\n ],\n formButton: [\n 'M3 8a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-8',\n 'M8 12h8',\n ],\n formCheckbox: [\n 'M3 5a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-14',\n 'M9 12l2 2l4 -4',\n ],\n // The form designer: a form's list of fields.\n formDesign: [\n 'M9 5h-2a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-12a2 2 0 0 0 -2 -2h-2',\n 'M9 5a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2a2 2 0 0 1 -2 2h-2a2 2 0 0 1 -2 -2',\n 'M9 12l.01 0',\n 'M13 12l2 0',\n 'M9 16l.01 0',\n 'M13 16l2 0',\n ],\n formListbox: [\n 'M3 5a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-14',\n 'M11 8h6',\n 'M11 12h6',\n 'M11 16h6',\n 'M7 8l0 .01',\n 'M7 12l0 .01',\n 'M7 16l0 .01',\n ],\n formRadio: [\n { d: 'M9 12a2 2 0 1 0 6 0a2 2 0 1 0 -6 0', fill: true },\n 'M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0',\n ],\n formSelect: [\n 'M3 5a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-14',\n 'M9 11l3 3l3 -3',\n ],\n formTextfield: [\n 'M12 3a3 3 0 0 0 -3 3v12a3 3 0 0 0 3 3',\n 'M6 3a3 3 0 0 1 3 3v12a3 3 0 0 1 -3 3',\n 'M13 7h7a1 1 0 0 1 1 1v8a1 1 0 0 1 -1 1h-7',\n 'M5 7h-1a1 1 0 0 0 -1 1v8a1 1 0 0 0 1 1h1',\n 'M17 12h.01',\n 'M13 12h.01',\n ],\n freeText: [\n { d: 'M4 7v-2h12v2', stroke: 'primary' },\n { d: 'M10 5v14', stroke: 'primary' },\n { d: 'M12 19h-4', stroke: 'primary' },\n { d: 'M15 13v-1h6v1', stroke: 'primary' },\n { d: 'M18 12v7', stroke: 'primary' },\n { d: 'M17 19h2', stroke: 'primary' },\n ],\n fullscreen: [\n 'M4 8v-2a2 2 0 0 1 2 -2h2',\n 'M4 16v2a2 2 0 0 0 2 2h2',\n 'M16 4h2a2 2 0 0 1 2 2v2',\n 'M16 20h2a2 2 0 0 0 2 -2v-2',\n ],\n fullscreenExit: [\n 'M4 8v-2c0 -.551 .223 -1.05 .584 -1.412',\n 'M4 16v2a2 2 0 0 0 2 2h2',\n 'M16 4h2a2 2 0 0 1 2 2v2',\n 'M16 20h2c.545 0 1.04 -.218 1.4 -.572',\n 'M3 3l18 18',\n ],\n group: [\n 'M3 5a2 2 0 1 0 4 0a2 2 0 1 0 -4 0',\n 'M17 5a2 2 0 1 0 4 0a2 2 0 1 0 -4 0',\n 'M3 19a2 2 0 1 0 4 0a2 2 0 1 0 -4 0',\n 'M17 19a2 2 0 1 0 4 0a2 2 0 1 0 -4 0',\n 'M5 7v10',\n 'M19 7v10',\n 'M7 5h10',\n 'M7 19h10',\n 'M8 8H12.8V11.2H16V16H11.2V12.8H8V8Z',\n ],\n hand: [\n 'M8 13v-7.5a1.5 1.5 0 0 1 3 0v6.5',\n 'M11 5.5v-2a1.5 1.5 0 1 1 3 0v8.5',\n 'M14 5.5a1.5 1.5 0 0 1 3 0v6.5',\n 'M17 7.5a1.5 1.5 0 0 1 3 0v8.5a6 6 0 0 1 -6 6h-2h.208a6 6 0 0 1 -5.012 -2.7a69.74 69.74 0 0 1 -.196 -.3c-.312 -.479 -1.407 -2.388 -3.286 -5.728a1.5 1.5 0 0 1 .536 -2.022a1.867 1.867 0 0 1 2.28 .28l1.47 1.47',\n ],\n highlight: [\n // the marker block behind the \"A\" — visible only when accented\n {\n d: 'M4 6h16a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2H4a2 2 0 0 1 -2 -2V8a2 2 0 0 1 2 -2z',\n fill: 'primary',\n },\n 'M8 16v-8a4 4 0 1 1 8 0v8',\n 'M8 10h8',\n ],\n horizontal: ['M7 8l-4 4l4 4', 'M17 8l4 4l-4 4', 'M3 12l18 0'],\n inkHighlighter: [\n 'M3 19h4l10.5 -10.5a2.828 2.828 0 1 0 -4 -4l-10.5 10.5v4',\n 'M12.5 5.5l4 4',\n 'M4.5 13.5l4 4',\n { d: 'M21 15v4h-8l4 -4l4 0', stroke: 'primary', fill: 'primary' },\n ],\n insertText: [\n { d: 'M3 7v-2h12v2', stroke: 'primary' },\n { d: 'M9 5v14', stroke: 'primary' },\n { d: 'M7 19h4', stroke: 'primary' },\n { d: 'M18 15l2 2h-5', stroke: 'primary' },\n { d: 'M18 19l2 -2', stroke: 'primary' },\n ],\n italic: ['M11 5l6 0', 'M7 19l6 0', 'M14 5l-4 14'],\n line: [{ d: 'M20 4l-16 16', stroke: 'primary' }],\n // Both strokes tag the `primary` accent slot so the arrow glyph previews the\n // tool's stroke colour (like the plain `line` icon); with no accent they render\n // as currentColor — identical to the untagged glyph.\n lineArrow: [\n { d: 'M20 4l-16 16', stroke: 'primary' },\n { d: 'M16 3h5v5', stroke: 'primary' },\n ],\n link: [\n 'M9 15l6 -6',\n 'M11 6l.463 -.536a5 5 0 0 1 7.071 7.072l-.534 .464',\n 'M13 18l-.397 .534a5.068 5.068 0 0 1 -7.127 0a4.972 4.972 0 0 1 0 -7.071l.524 -.463',\n ],\n linkOff: [\n 'M9 15l3 -3m2 -2l1 -1',\n 'M11 6l.463 -.536a5 5 0 0 1 7.072 7.071l-.534 .464',\n 'M13 18l-.397 .534a5.068 5.068 0 0 1 -7.127 0a4.972 4.972 0 0 1 0 -7.071l.524 -.463',\n 'M3 3l18 18',\n ],\n listTree: ['M9 6h11', 'M12 12h8', 'M15 18h5', 'M5 6v.01', 'M8 12v.01', 'M11 18v.01'],\n lock: [\n 'M5 11h14a2 2 0 0 1 2 2v7a2 2 0 0 1 -2 2H5a2 2 0 0 1 -2 -2v-7a2 2 0 0 1 2 -2z',\n 'M7 11V7a5 5 0 0 1 10 0v4',\n ],\n marqueeSelect: [\n 'M17 20h6',\n 'M20 17v6',\n 'M4 13v-2',\n 'M4 6v-1a1 1 0 0 1 1 -1h1',\n 'M6 20h-1a1 1 0 0 1 -1 -1v-1',\n 'M11 4h2',\n 'M11 20h2',\n 'M18 4h1a1 1 0 0 1 1 1v1',\n 'M20 11v2',\n ],\n menu: ['M4 8l16 0', 'M4 16l16 0'],\n message: [\n 'M8 9h8',\n 'M8 13h6',\n 'M18 4a3 3 0 0 1 3 3v8a3 3 0 0 1 -3 3h-5l-5 3v-3h-2a3 3 0 0 1 -3 -3v-8a3 3 0 0 1 3 -3h12',\n ],\n palette: [\n 'M12 21a9 9 0 0 1 0 -18c4.97 0 9 3.582 9 8c0 1.06 -.474 2.078 -1.318 2.828c-.844 .75 -1.989 1.172 -3.182 1.172h-2.5a2 2 0 0 0 -1 3.75a1.3 1.3 0 0 1 -1 2.25',\n 'M8.5 10.5m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0',\n 'M12.5 7.5m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0',\n 'M16.5 10.5m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0',\n ],\n paperclip: [\n 'M15 7l-6.5 6.5a1.5 1.5 0 0 0 3 3l6.5 -6.5a3 3 0 0 0 -6 -6l-6.5 6.5a4.5 4.5 0 0 0 9 9l6.5 -6.5',\n ],\n pencilMarker: [\n 'm9.109 16.275 8.856-8.097c.812-.743.87-2.014.127-2.826s-2.014-.869-2.826-.127L6.41 13.322l-.127 2.826zM13.79 6.575l2.7 2.952',\n {\n d: 'M19.375 20.125c.569.063-4.05-.562-6.412-.437s-4.759 1.229-6.857 1.625c-1.764.687-3.404-.938-1.981-2.5',\n stroke: 'primary',\n },\n ],\n photo: [\n 'M15 8h.01',\n 'M3 6a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v12a3 3 0 0 1 -3 3h-12a3 3 0 0 1 -3 -3v-12z',\n 'M3 16l5 -5c.928 -.893 2.072 -.893 3 0l5 5',\n 'M14 14l1 -1c.928 -.893 2.072 -.893 3 0l3 3',\n ],\n plus: ['M12 5l0 14', 'M5 12l14 0'],\n pointer: [\n 'M7.904 17.563a1.2 1.2 0 0 0 2.228 .308l2.09 -3.093l4.907 4.907a1.067 1.067 0 0 0 1.509 0l1.047 -1.047a1.067 1.067 0 0 0 0 -1.509l-4.907 -4.907l3.113 -2.09a1.2 1.2 0 0 0 -.309 -2.228l-13.582 -3.904l3.904 13.563z',\n ],\n polygon: [\n {\n d: 'M13.163 2.168l8.021 5.828c.694 .504 .984 1.397 .719 2.212l-3.064 9.43a1.978 1.978 0 0 1 -1.881 1.367h-9.916a1.978 1.978 0 0 1 -1.881 -1.367l-3.064 -9.43a1.978 1.978 0 0 1 .719 -2.212l8.021 -5.828a1.978 1.978 0 0 1 2.326 0z',\n stroke: 'primary',\n fill: 'secondary',\n },\n ],\n print: [\n 'M17 17h2a2 2 0 0 0 2 -2v-4a2 2 0 0 0 -2 -2h-14a2 2 0 0 0 -2 2v4a2 2 0 0 0 2 2h2',\n 'M17 9v-4a2 2 0 0 0 -2 -2h-6a2 2 0 0 0 -2 2v4',\n 'M7 13m0 2a2 2 0 0 1 2 -2h6a2 2 0 0 1 2 2v4a2 2 0 0 1 -2 2h-6a2 2 0 0 1 -2 -2z',\n ],\n redact: [\n 'M7 4h10',\n 'M12 4v8',\n 'M-7 24l12 -12',\n 'M-3 24l12 -12',\n 'M1 24l12 -12',\n 'M5 24l12 -12',\n 'M9 24l12 -12',\n 'M13 24l12 -12',\n 'M17 24l12 -12',\n 'M21 24l12 -12',\n 'M25 24l12 -12',\n ],\n // A dashed frame + a small rounded hatched box. This icon system is plain\n // paths (no <clipPath>), so the hatch segments are pre-clipped to the\n // 10..22 box analytically.\n redactArea: [\n 'M6 20h-1a2 2 0 0 1 -2 -2v-1',\n 'M3 13v-3',\n 'M3 6v-1a2 2 0 0 1 2 -2h1',\n 'M10 3h3',\n 'M17 3h1a2 2 0 0 1 2 2v1',\n 'M12 10h8a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2v-8a2 2 0 0 1 2 -2z',\n 'M10 12l2 -2',\n 'M10 16l6 -6',\n 'M10 20l10 -10',\n 'M12 22l10 -10',\n 'M16 22l6 -6',\n 'M20 22l2 -2',\n ],\n redactCombined: [\n 'M6 20h-1a2 2 0 0 1 -2 -2v-1',\n 'M3 13v-3',\n 'M20 13v-3',\n 'M3 6v-1a2 2 0 0 1 2 -2h1',\n 'M10 3h3',\n 'M17 3h1a2 2 0 0 1 2 2v1',\n 'M8 8h8',\n 'M12 8v7',\n 'M6 19l12 -12',\n 'M6 23l12 -12',\n 'M10 23l12 -12',\n 'M14 27l12 -12',\n 'M14 23l12 -12',\n ],\n redactionSidebar: [\n 'M4 6a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z',\n 'M15 4v16',\n 'M7 8h5',\n 'M7 11h5',\n 'M7 14h4',\n ],\n replaceText: [\n { d: 'M3 7v-2h12v2', stroke: 'primary' },\n { d: 'M9 5v14', stroke: 'primary' },\n { d: 'M7 19h4', stroke: 'primary' },\n { d: 'M20 14l2 2h-3', stroke: 'primary' },\n { d: 'M20 18l2 -2', stroke: 'primary' },\n { d: 'M19 16a3 3 0 1 0 2 5.236', stroke: 'primary' },\n ],\n rotateClockwise: ['M4.05 11a8 8 0 1 1 .5 4m-.5 5v-5h5'],\n rotateCounterClockwise: ['M19.95 11a8 8 0 1 0 -.5 4m.5 5v-5h-5'],\n rubberStamp: [\n 'M21 17.85h-18c0 -4.05 1.421 -4.05 3.79 -4.05c5.21 0 1.21 -4.59 1.21 -6.8a4 4 0 1 1 8 0c0 2.21 -4 6.8 1.21 6.8c2.369 0 3.79 0 3.79 4.05',\n 'M5 21h14',\n ],\n rubberStampPlus: [\n 'M21 17.85h-18c0 -4.05 1.421 -4.05 3.79 -4.05c5.21 0 1.21 -4.59 1.21 -6.8a4 4 0 0 1 4.9 -4.1',\n 'M16 10c0 1.2 -4 3.8 1.21 3.8c2.369 0 3.79 0 3.79 4.05',\n 'M5 21h14',\n 'M16 5h6',\n 'M19 2v6',\n ],\n save: [\n 'M6 4h10l4 4v10a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2',\n 'M12 14m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0',\n 'M14 4l0 4l-6 0l0 -4',\n ],\n screenshot: [\n 'M7 19a2 2 0 0 1 -2 -2',\n 'M5 13v-2',\n 'M5 7a2 2 0 0 1 2 -2',\n 'M11 5h2',\n 'M17 5a2 2 0 0 1 2 2',\n 'M19 11v2',\n 'M19 17v4',\n 'M21 19h-4',\n 'M13 19h-2',\n ],\n search: ['M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0', 'M21 21l-6 -6'],\n settings: [\n 'M10.325 4.317c.426 -1.756 2.924 -1.756 3.35 0a1.724 1.724 0 0 0 2.573 1.066c1.543 -.94 3.31 .826 2.37 2.37a1.724 1.724 0 0 0 1.065 2.572c1.756 .426 1.756 2.924 0 3.35a1.724 1.724 0 0 0 -1.066 2.573c.94 1.543 -.826 3.31 -2.37 2.37a1.724 1.724 0 0 0 -2.572 1.065c-.426 1.756 -2.924 1.756 -3.35 0a1.724 1.724 0 0 0 -2.573 -1.066c-1.543 .94 -3.31 -.826 -2.37 -2.37a1.724 1.724 0 0 0 -1.065 -2.572c-1.756 -.426 -1.756 -2.924 0 -3.35a1.724 1.724 0 0 0 1.066 -2.573c-.94 -1.543 .826 -3.31 2.37 -2.37c1 .608 2.296 .07 2.572 -1.065z',\n 'M9 12a3 3 0 1 0 6 0a3 3 0 0 0 -6 0',\n ],\n sidebar: [\n 'M4 18v-12a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2z',\n 'M10 18v-12a2 2 0 0 1 2 -2h6a2 2 0 0 1 2 2v12a2 2 0 0 1 -2 2h-6a2 2 0 0 1 -2 -2z',\n ],\n signature: [\n 'M3 17c3.333 -3.333 5 -6 5 -8c0 -3 -1 -3 -2 -3s-2.032 1.085 -2 3c.034 2.048 1.658 4.877 2.5 6c1.5 2 2.5 2.5 3.5 1l2 -3c.333 2.667 1.333 4 3 4c.53 0 2.639 -2 3 -2c.517 0 1.517 .667 3 2',\n ],\n singlePage: ['M5 3m0 1a1 1 0 0 1 1 -1h12a1 1 0 0 1 1 1v16a1 1 0 0 1 -1 1h-12a1 1 0 0 1 -1 -1z'],\n square: [\n {\n d: 'M3 3m0 2a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2z',\n stroke: 'primary',\n fill: 'secondary',\n },\n ],\n squares: [\n 'M8 10a2 2 0 0 1 2 -2h9a2 2 0 0 1 2 2v9a2 2 0 0 1 -2 2h-9a2 2 0 0 1 -2 -2z',\n 'M16 8v-3a2 2 0 0 0 -2 -2h-9a2 2 0 0 0 -2 2v9a2 2 0 0 0 2 2h3',\n ],\n squiggly: [\n 'M8 16v-8a4 4 0 1 1 8 0v8',\n 'M8 10h8',\n { d: 'M4 20c1.5 -1.5 3.5 -1.5 5 0s3.5 1.5 5 0 3.5 -1.5 5 0', stroke: 'primary' },\n ],\n strikethrough: ['M8 16v-8a4 4 0 1 1 8 0v8', { d: 'M4 10h16', stroke: 'primary' }],\n text: [\n 'M6.5 15.5m-3.5 0a3.5 3.5 0 1 0 7 0a3.5 3.5 0 1 0 -7 0',\n 'M14 19v-10.5a3.5 3.5 0 0 1 7 0v10.5',\n 'M14 13h7',\n 'M10 12v7',\n ],\n trash: [\n 'M4 7l16 0',\n 'M10 11l0 6',\n 'M14 11l0 6',\n 'M5 7l1 12a2 2 0 0 0 2 2h8a2 2 0 0 0 2 -2l1 -12',\n 'M9 7v-3a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v3',\n ],\n underline: [{ d: 'M4 20h16', stroke: 'primary' }, 'M8 16v-8a4 4 0 1 1 8 0v8', 'M8 10h8'],\n // the ungroup glyph: two separated rounded rects\n ungroup: [\n 'M4 5a1 1 0 0 1 1 -1h5a1 1 0 0 1 1 1v5a1 1 0 0 1 -1 1h-5a1 1 0 0 1 -1 -1z',\n 'M13 14a1 1 0 0 1 1 -1h5a1 1 0 0 1 1 1v5a1 1 0 0 1 -1 1h-5a1 1 0 0 1 -1 -1z',\n ],\n unlock: ['M7 11V7a5 5 0 0 1 9.9-1'],\n updateScale: [\n 'M3.5 13.5L18.5 7.5L21.25 14.5L6.25 20.5L3.5 13.5Z',\n 'M8 12.8L9 15.2M11.5 11.4L12.2 13.2M15 10L16 12.4',\n 'M4 9.39849C4.10585 8.34804 4.487 7.34411 5.10497 6.48809C5.72294 5.63207 6.55584 4.95427 7.51957 4.52312C8.4833 4.09198 9.54373 3.92277 10.5938 4.03257C11.6438 4.14237 12.6463 4.5273 13.5 5.14849M11.5 6.00003L13.5 5.14849L12.7807 2.96999',\n ],\n vertical: ['M8 7l4 -4l4 4', 'M8 17l4 4l4 -4', 'M12 3l0 18'],\n viewSettings: [\n 'M12 14m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0',\n 'M12 10.5v1.5',\n 'M12 16v1.5',\n 'M15.031 12.25l-1.299 .75',\n 'M10.268 15l-1.3 .75',\n 'M15 15.803l-1.285 -.773',\n 'M10.285 12.97l-1.285 -.773',\n 'M14 3v4a1 1 0 0 0 1 1h4',\n 'M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z',\n ],\n widgetEdit: [\n 'M7 7h-1a2 2 0 0 0 -2 2v9a2 2 0 0 0 2 2h9a2 2 0 0 0 2 -2v-1',\n 'M20.385 6.585a2.1 2.1 0 0 0 -2.97 -2.97l-8.415 8.385v3h3l8.385 -8.415',\n 'M16 5l3 3',\n ],\n x: ['M18 6l-12 12', 'M6 6l12 12'],\n zigzag: [{ d: 'M12 2.4L21.36 11.76L2.64 12.24L12 21.6', stroke: 'primary' }],\n zoomIn: ['M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0', 'M9 12h6', 'M12 9v6'],\n zoomInArea: [\n 'M15 13v4',\n 'M13 15h4',\n 'M15 15m-5 0a5 5 0 1 0 10 0a5 5 0 1 0 -10 0',\n 'M22 22l-3 -3',\n 'M6 18h-1a2 2 0 0 1 -2 -2v-1',\n 'M3 11v-1',\n 'M3 6v-1a2 2 0 0 1 2 -2h1',\n 'M10 3h1',\n 'M15 3h1a2 2 0 0 1 2 2v1',\n ],\n zoomOut: ['M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0', 'M9 12l6 0'],\n} satisfies Record<string, readonly PathSpec[]>;\n\n/** The name of one of the viewer's own icons. */\nexport type IconName = keyof typeof ICON_PATHS;\n\nconst BUILT_IN_ICONS: Readonly<Record<string, readonly PathSpec[]>> = ICON_PATHS;\n\n/** Whether the viewer has an icon by this name of its own. */\nexport const hasIcon = (name: string): name is IconName =>\n Object.prototype.hasOwnProperty.call(BUILT_IN_ICONS, name);\n\n/** The paths an icon name draws: yours, else the viewer's own; `null` for neither. */\nexport function iconPathsOf(\n name: string,\n custom: Readonly<Record<string, IconDef>>,\n): readonly PathSpec[] | null {\n const own = Object.prototype.hasOwnProperty.call(custom, name) ? custom[name] : undefined;\n if (own !== undefined) return pathsOfIcon(own);\n return hasIcon(name) ? BUILT_IN_ICONS[name]! : null;\n}\n\nexport interface IconProps {\n name: string;\n size?: number;\n strokeWidth?: number;\n className?: string;\n title?: string;\n /** Paints the glyph's slot-tagged sub-paths (a tool previewing its\n * drawing defaults). Absent → the plain, untinted glyph. */\n accent?: IconAccent;\n}\n\n/** One SVG renderer for every icon. Unknown names render nothing (caller shows\n * a text fallback), so a missing glyph never throws. */\nexport function Icon({ name, size = 20, strokeWidth = 2, className, title, accent }: IconProps) {\n // Registry semantics: user icons are additive and a colliding name wins —\n // re-skinning a built-in glyph is a supported move, not an accident.\n const paths = iconPathsOf(name, useCustomIcons());\n if (!paths) return null;\n return (\n <svg\n width={size}\n height={size}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={className}\n role=\"img\"\n aria-hidden={title ? undefined : true}\n aria-label={title}\n >\n {paths.map((path, i) => {\n if (typeof path === 'string') return <path key={i} d={path} />;\n const fill =\n path.fill === true ? 'currentColor' : path.fill ? accent?.[path.fill] : undefined;\n // a stroke slot paints from the accent, inheriting currentColor\n // without one; a fill-only path never gets an outline\n const stroke = path.stroke ? accent?.[path.stroke] : path.fill ? 'none' : undefined;\n return (\n <path\n key={i}\n d={path.d}\n fill={fill ?? 'none'}\n stroke={stroke}\n strokeWidth={path.strokeWidth}\n strokeDasharray={path.strokeDasharray}\n strokeOpacity={path.strokeOpacity}\n fillOpacity={path.fillOpacity}\n />\n );\n })}\n </svg>\n );\n}\n"],"mappings":"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CA;EACA;CACF;CACA,SAAS;EACP;EACA;EACA;EACA;CACF;CACA,UAAU;EAAC;EAAW;EAAY;EAAY;EAAY;EAAa;CAAY;CACnF,MAAM,CACJ,gFACA,0BACF;CACA,eAAe;EACb;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,MAAM,CAAC,aAAa,YAAY;CAChC,SAAS;EACP;EACA;EACA;CACF;CACA,SAAS;EACP;EACA;EACA;EACA;CACF;CACA,WAAW,CACT,+FACF;CACA,cAAc,CACZ,gIACA;EACE,GAAG;EACH,QAAQ;CACV,CACF;CACA,OAAO;EACL;EACA;EACA;EACA;CACF;CACA,MAAM,CAAC,cAAc,YAAY;CACjC,SAAS,CACP,oNACF;CACA,SAAS,CACP;EACE,GAAG;EACH,QAAQ;EACR,MAAM;CACR,CACF;CACA,OAAO;EACL;EACA;EACA;CACF;CACA,QAAQ;EACN;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CAIA,YAAY;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,gBAAgB;EACd;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,kBAAkB;EAChB;EACA;EACA;EACA;EACA;CACF;CACA,aAAa;EACX;GAAE,GAAG;GAAgB,QAAQ;EAAU;EACvC;GAAE,GAAG;GAAW,QAAQ;EAAU;EAClC;GAAE,GAAG;GAAW,QAAQ;EAAU;EAClC;GAAE,GAAG;GAAiB,QAAQ;EAAU;EACxC;GAAE,GAAG;GAAe,QAAQ;EAAU;EACtC;GAAE,GAAG;GAA4B,QAAQ;EAAU;CACrD;CACA,iBAAiB,CAAC,oCAAoC;CACtD,wBAAwB,CAAC,sCAAsC;CAC/D,aAAa,CACX,0IACA,UACF;CACA,iBAAiB;EACf;EACA;EACA;EACA;EACA;CACF;CACA,MAAM;EACJ;EACA;EACA;CACF;CACA,YAAY;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,QAAQ,CAAC,8CAA8C,cAAc;CACrE,UAAU,CACR,+gBACA,oCACF;CACA,SAAS,CACP,oFACA,iFACF;CACA,WAAW,CACT,wLACF;CACA,YAAY,CAAC,iFAAiF;CAC9F,QAAQ,CACN;EACE,GAAG;EACH,QAAQ;EACR,MAAM;CACR,CACF;CACA,SAAS,CACP,6EACA,8DACF;CACA,UAAU;EACR;EACA;EACA;GAAE,GAAG;GAAwD,QAAQ;EAAU;CACjF;CACA,eAAe,CAAC,4BAA4B;EAAE,GAAG;EAAY,QAAQ;CAAU,CAAC;CAChF,MAAM;EACJ;EACA;EACA;EACA;CACF;CACA,OAAO;EACL;EACA;EACA;EACA;EACA;CACF;CACA,WAAW;EAAC;GAAE,GAAG;GAAY,QAAQ;EAAU;EAAG;EAA4B;CAAS;CAEvF,SAAS,CACP,4EACA,4EACF;CACA,QAAQ,CAAC,yBAAyB;CAClC,aAAa;EACX;EACA;EACA;CACF;CACA,UAAU;EAAC;EAAiB;EAAkB;CAAY;CAC1D,cAAc;EACZ;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,YAAY;EACV;EACA;EACA;CACF;CACA,GAAG,CAAC,gBAAgB,YAAY;CAChC,QAAQ,CAAC;EAAE,GAAG;EAA0C,QAAQ;CAAU,CAAC;CAC3E,QAAQ;EAAC;EAAwC;EAAW;CAAS;CACrE,YAAY;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,SAAS,CAAC,8CAA8C,WAAW;AACrE;AAKA,MAAM,iBAAgE;;AAGtE,MAAa,WAAW,SACtB,OAAO,UAAU,eAAe,KAAK,gBAAgB,IAAI;;AAG3D,SAAgB,YACd,MACA,QAC4B;CAC5B,MAAM,MAAM,OAAO,UAAU,eAAe,KAAK,QAAQ,IAAI,IAAI,OAAO,QAAQ,KAAA;CAChF,IAAI,QAAQ,KAAA,GAAW,OAAO,YAAY,GAAG;CAC7C,OAAO,QAAQ,IAAI,IAAI,eAAe,QAAS;AACjD;;;AAeA,SAAgB,KAAK,EAAE,MAAM,OAAO,IAAI,cAAc,GAAG,WAAW,OAAO,UAAqB;CAG9F,MAAM,QAAQ,YAAY,MAAM,eAAe,CAAC;CAChD,IAAI,CAAC,OAAO,OAAO;CACnB,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;EACE,OAAO;EACP,QAAQ;EACR,SAAQ;EACR,MAAK;EACL,QAAO;EACM;EACb,eAAc;EACd,gBAAe;EACJ;EACX,MAAK;EACL,eAAa,QAAQ,KAAA,IAAY;EACjC,cAAY;EAEX,UAAA,MAAM,KAAK,MAAM,MAAM;GACtB,IAAI,OAAO,SAAS,UAAU,OAAO,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD,EAAc,GAAG,KAAO,GAAb,CAAa;GAC7D,MAAM,OACJ,KAAK,SAAS,OAAO,iBAAiB,KAAK,OAAO,SAAS,KAAK,QAAQ,KAAA;GAG1E,MAAM,SAAS,KAAK,SAAS,SAAS,KAAK,UAAU,KAAK,OAAO,SAAS,KAAA;GAC1E,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;IAEE,GAAG,KAAK;IACR,MAAM,QAAQ;IACN;IACR,aAAa,KAAK;IAClB,iBAAiB,KAAK;IACtB,eAAe,KAAK;IACpB,aAAa,KAAK;GACnB,GARM,CAQN;EAEL,CAAC;CACE,CAAA;AAET"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"it-BuP4o0xQ.cjs","names":[],"sources":["../src/locales/it.ts"],"sourcesContent":["import type { Locale } from '@embedpdf/react/i18n';\n\n/**\n * Italian pack, in the words Adobe Acrobat's Italian edition uses. Machine-translated from the\n * English pack (`./en.ts`) and not yet reviewed by a native speaker.\n */\nexport const it: Locale = {\n code: 'it',\n name: 'Italiano',\n translations: {\n measurement: {\n title: 'Misurazioni',\n distance: 'Distanza',\n perimeter: 'Perimetro',\n area: 'Area',\n areaUnit: 'Unità di area',\n resetLabel: 'Ripristina posizione dell’etichetta',\n calibrate: 'Calibra scala',\n scale: 'Scala',\n custom: 'Personalizzata',\n unavailable: 'Non disponibile',\n instructions:\n 'Trascina per misurare una distanza, quindi fai clic per posizionare la linea di quota. Fai clic sui vertici per un perimetro o un’area e fai doppio clic per terminare. I bordi di un’area non devono incrociarsi; un’anteprima non disponibile non può essere completata. Premi Escape per annullare. Trascina l’etichetta stessa per spostarla.',\n sessionOnly: 'Questo motore conserva la calibrazione delle pagine solo per questa sessione.',\n allPages: 'Applica a tutte le pagine',\n recalculate: 'Ricalcola le misurazioni esistenti',\n preset: 'Scala predefinita',\n choosePreset: 'Scegli una scala',\n unit: 'Unità',\n precision: 'Precisione',\n selection: 'Misurazioni selezionate',\n report: '{updated} aggiornate · {skipped} ignorate · {failed} non riuscite',\n knownLength: 'Immetti la lunghezza reale rappresentata dalla linea appena tracciata.',\n length: 'Lunghezza nota',\n apply: 'Applica scala',\n applying: 'Applicazione…',\n },\n commands: {\n zoom: {\n in: 'Ingrandisci',\n out: 'Riduci',\n fitPage: 'Adatta pagina',\n fitWidth: 'Adatta larghezza',\n automatic: 'Automatico',\n menu: 'Zoom',\n level: 'Livello di zoom',\n p50: '50%',\n p100: '100%',\n p150: '150%',\n p200: '200%',\n p400: '400%',\n },\n pan: 'Sposta',\n pointer: 'Seleziona',\n comment: 'Commento',\n style: 'Stile',\n menu: 'Menu',\n viewControls: 'Controlli vista',\n open: 'Apri',\n download: 'Scarica',\n print: 'Stampa',\n fullscreen: 'Schermo intero',\n spread: {\n group: 'Layout pagina',\n none: 'Pagina singola',\n odd: 'Due pagine',\n even: 'Copertina',\n },\n scroll: {\n group: 'Scorrimento',\n vertical: 'Verticale',\n horizontal: 'Orizzontale',\n },\n rotate: {\n group: 'Ruota',\n clockwise: 'Ruota in senso orario',\n counterclockwise: 'Ruota in senso antiorario',\n },\n mode: {\n measure: 'Misura',\n group: 'Modalità',\n view: 'Visualizza',\n annotate: 'Annota',\n shapes: 'Forme',\n insert: 'Inserisci',\n form: 'Modulo',\n redact: 'Oscura',\n },\n annotate: {\n cancelCreation: 'Annulla disegno',\n highlight: 'Evidenzia',\n strikeout: 'Barra testo',\n underline: 'Sottolinea',\n squiggly: 'Ondulato',\n ink: 'Disegna',\n inkHighlight: 'Evidenziatore',\n text: 'Testo',\n insertText: 'Inserisci testo',\n replaceText: 'Sostituisci testo',\n callout: 'Richiamo',\n note: 'Commento',\n link: 'Collegamento',\n gotoLink: 'Vai al collegamento',\n removeLink: 'Rimuovi collegamento',\n delete: 'Elimina',\n group: 'Raggruppa',\n ungroup: 'Separa',\n stampFromSelection: 'Crea timbro',\n strip: 'Azioni annotazione',\n },\n selection: {\n copy: 'Copia',\n strip: 'Azioni selezione testo',\n },\n shapes: {\n rectangle: 'Rettangolo',\n circle: 'Ovale',\n line: 'Linea',\n arrow: 'Freccia',\n polygon: 'Poligono',\n polyline: 'Polilinea',\n },\n insert: {\n stamp: 'Timbro',\n attachment: 'Allega file',\n signature: 'Firma',\n image: 'Immagine',\n },\n form: {\n textfield: 'Campo di testo',\n checkbox: 'Casella di controllo',\n radio: 'Pulsante di scelta',\n select: 'Elenco a discesa',\n listbox: 'Casella di riepilogo',\n button: 'Pulsante',\n signature: 'Campo firma',\n // The Form mode's design switch, which opens the form designer's sidebar.\n design: 'Progettazione modulo',\n },\n redact: {\n mark: 'Contrassegna per oscuramento',\n applyAll: 'Applica oscuramenti',\n clearAll: 'Cancella contrassegni',\n },\n undo: 'Annulla',\n redo: 'Ripeti',\n page: {\n next: 'Pagina successiva',\n previous: 'Pagina precedente',\n first: 'Prima pagina',\n last: 'Ultima pagina',\n goTo: 'Vai alla pagina',\n },\n find: 'Trova',\n shortcuts: 'Scorciatoie da tastiera',\n notAllowed: {\n default: '{label}: azione non consentita',\n 'annotations-create': 'L’aggiunta di annotazioni non è consentita',\n 'doc-annotate-modify': 'La modifica delle annotazioni non è consentita',\n 'doc-annotate-read': 'La visualizzazione delle annotazioni non è consentita',\n 'doc-download': 'Il download non è consentito',\n 'doc-forms-modify': 'La modifica dei campi modulo non è consentita',\n 'doc-print': 'La stampa non è consentita',\n 'doc-text-copy': 'La copia non è consentita',\n 'doc-text-search': 'La ricerca non è consentita',\n },\n turnedOff: '{label} non è disponibile',\n },\n passwordPrompt: {\n title: 'Password richiesta',\n required: 'Questo documento è protetto da password. Immetti la password per aprirlo.',\n incorrect: 'La password non è corretta. Riprova.',\n incorrectWarning: 'Password non corretta',\n label: 'Password',\n placeholder: 'Immetti la password',\n cancel: 'Annulla',\n open: 'Apri',\n opening: 'Apertura…',\n },\n dropToOpen: {\n label: 'Rilascia un PDF per aprirlo',\n },\n documentError: {\n title: 'Impossibile aprire il documento',\n unknown: 'Non è stato possibile aprire il documento.',\n notFound: 'File non trovato.',\n notAllowed: 'Non hai accesso a questo documento.',\n damaged: 'Questo file non è un PDF o è danneggiato.',\n unsupported: 'Questo visualizzatore non può aprire questo tipo di documento.',\n retry: 'Riprova',\n close: 'Chiudi documento',\n },\n tabs: {\n close: 'Chiudi {name}',\n loading: 'Caricamento',\n untitled: 'Documento {id}',\n },\n closeUnsaved: {\n title: 'Chiudere senza salvare?',\n body: '«{name}» contiene modifiche non scaricate. Andranno perse.',\n cancel: 'Annulla',\n close: 'Chiudi senza salvare',\n },\n viewOnly: {\n label: 'Sola lettura',\n turnedOff: 'Gli strumenti che modificano questo documento sono disattivati',\n notAllowed: 'Puoi leggere questo documento, ma non modificarlo',\n },\n panel: {\n close: 'Chiudi',\n resize: 'Ridimensiona {title}',\n },\n menu: {\n back: 'Indietro',\n },\n shortcuts: {\n document: 'Documento',\n viewing: 'Visualizzazione',\n editing: 'Modifica',\n other: 'Altro',\n },\n goToPage: {\n go: 'Vai',\n },\n panels: {\n thumbnails: 'Miniature',\n outline: 'Segnalibri',\n attachments: 'Allegati',\n search: 'Cerca',\n comments: 'Commenti',\n style: 'Stile',\n stamps: 'Timbri',\n signatures: 'Firme',\n redaction: 'Oscuramenti',\n measurement: 'Misurazioni',\n formDesign: 'Progettazione modulo',\n switch: 'Cambia pannello',\n },\n annotation: {\n comment: 'Commento',\n highlight: 'Evidenziazione',\n underline: 'Sottolineatura',\n squiggly: 'Sottolineatura ondulata',\n strikeout: 'Testo barrato',\n square: 'Rettangolo',\n circle: 'Ovale',\n line: 'Linea',\n polygon: 'Poligono',\n polyline: 'Polilinea',\n ink: 'Disegno',\n freeText: 'Testo',\n stamp: 'Timbro',\n caret: 'Inserimento',\n redact: 'Oscuramento',\n fileAttachment: 'Allegato',\n // The style panel's labels, as the annotation kinds name them (`labelKey`), by wording:\n // one field is called different things by different kinds.\n style: {\n opacity: 'Opacità',\n stroke: 'Traccia',\n fill: 'Riempimento',\n color: 'Colore',\n strokeWidth: 'Spessore traccia',\n border: 'Bordo',\n borderStyle: 'Stile bordo',\n borderColor: 'Colore bordo',\n borderWidth: 'Spessore bordo',\n background: 'Sfondo',\n outline: 'Contorno',\n lineEndings: 'Estremità linea',\n blendMode: 'Metodo di fusione',\n font: 'Font',\n fontSize: 'Dimensione font',\n textColor: 'Colore testo',\n bold: 'Grassetto',\n italic: 'Corsivo',\n underline: 'Sottolineato',\n align: 'Allineamento',\n alignment: 'Allineamento',\n label: 'Etichetta',\n labelFont: 'Font etichetta',\n labelSize: 'Dimensione etichetta',\n labelColor: 'Colore etichetta',\n icon: 'Icona',\n link: 'Collegamento',\n },\n // The annotation flags (`/F`).\n flags: {\n print: 'Stampa',\n hidden: 'Nascosta',\n noView: 'Non visualizzata',\n toggleNoView: 'Alterna non visualizzata',\n readOnly: 'Sola lettura',\n locked: 'Bloccata',\n lockedContents: 'Contenuto bloccato',\n noZoom: 'Senza zoom',\n noRotate: 'Senza rotazione',\n invisible: 'Invisibile',\n },\n borderStyles: { solid: 'Continuo', dashed: 'Tratteggiato', cloudy: 'Nuvola' },\n lineEndings: {\n none: 'Nessuna',\n square: 'Quadrato',\n circle: 'Cerchio',\n diamond: 'Rombo',\n openArrow: 'Freccia aperta',\n closedArrow: 'Freccia chiusa',\n butt: 'Barra trasversale',\n reverseOpenArrow: 'Freccia aperta inversa',\n reverseClosedArrow: 'Freccia chiusa inversa',\n slash: 'Barra obliqua',\n },\n blendModes: {\n normal: 'Normale',\n multiply: 'Moltiplica',\n screen: 'Scolora',\n overlay: 'Sovrapponi',\n darken: 'Scurisci',\n lighten: 'Schiarisci',\n colorDodge: 'Scherma colore',\n colorBurn: 'Brucia colore',\n hardLight: 'Luce intensa',\n softLight: 'Luce soffusa',\n difference: 'Differenza',\n exclusion: 'Esclusione',\n hue: 'Tonalità',\n saturation: 'Saturazione',\n color: 'Colore',\n luminosity: 'Luminosità',\n },\n // The standard PDF fonts, by their names: a language may keep them as they are.\n fonts: {\n courier: 'Courier',\n courierBold: 'Courier Bold',\n courierBoldOblique: 'Courier Bold Oblique',\n courierOblique: 'Courier Oblique',\n helvetica: 'Helvetica',\n helveticaBold: 'Helvetica Bold',\n helveticaBoldOblique: 'Helvetica Bold Oblique',\n helveticaOblique: 'Helvetica Oblique',\n timesRoman: 'Times Roman',\n timesBold: 'Times Bold',\n timesBoldItalic: 'Times Bold Italic',\n timesItalic: 'Times Italic',\n symbol: 'Symbol',\n zapfDingbats: 'Zapf Dingbats',\n },\n alignments: { left: 'Sinistra', center: 'Centro', right: 'Destra' },\n noteIcons: {\n comment: 'Commento',\n key: 'Chiave',\n note: 'Nota',\n help: 'Guida',\n newParagraph: 'Nuovo paragrafo',\n paragraph: 'Paragrafo',\n insert: 'Inserisci',\n },\n attachmentIcons: {\n pushPin: 'Puntina',\n paperclip: 'Graffetta',\n graph: 'Grafico',\n tag: 'Etichetta',\n },\n },\n // A form field's settings, as the form plugin names them (`labelKey`).\n form: {\n settings: {\n name: 'Nome',\n tooltip: 'Descrizione comando',\n required: 'Obbligatorio',\n readOnly: 'Sola lettura',\n noExport: 'Non esportare',\n defaultValue: 'Valore predefinito',\n maxLength: 'Lunghezza massima',\n multiline: 'Multiriga',\n password: 'Password',\n comb: 'Un carattere per casella',\n radiosInUnison: 'I pulsanti con lo stesso valore si attivano insieme',\n keepOneOn: 'Mantieni uno attivo',\n options: 'Opzioni',\n allowTyping: 'Consenti digitazione',\n multiSelect: 'Selezione multipla',\n },\n },\n // A thumbnail's tooltip.\n thumbnails: { page: 'Pagina {page}' },\n // The form designer's sidebar: the fields by page, and the selected one's buttons.\n formDesign: {\n empty: 'Ancora nessun campo. Scegli uno strumento di campo per aggiungerne uno.',\n page: 'Pagina {page}',\n allFields: 'Tutti i campi',\n buttons: 'Pulsanti',\n boxes: 'Caselle',\n box: 'Casella {number}',\n addButton: 'Aggiungi pulsante',\n addBox: 'Aggiungi casella',\n },\n // The style panel's own words around the properties.\n stylePanel: {\n mixed: '(misto)',\n // A color swatch that takes the color away.\n transparent: 'Trasparente',\n lineStart: 'Inizio',\n lineEnd: 'Fine',\n empty: 'Scegli uno strumento di disegno o seleziona un’annotazione per modificarne lo stile.',\n selected: 'Selezionate: {count}',\n toolDefaults: 'Valori predefiniti: {tool}',\n defaults: 'Valori predefiniti',\n },\n // The flags section of the style panel: its title, and what each flag does.\n annotationFlags: {\n title: 'Indicatori (/F)',\n print: 'Includi quando la pagina viene stampata',\n hidden: 'Nascosta ovunque: schermo, clic, stampa',\n noView: 'Nascosta a schermo, può comunque essere stampata',\n toggleNoView: 'Mostra un’annotazione non visualizzata quando è selezionata',\n readOnly: 'Visibile ma non cliccabile',\n locked: 'Impossibile spostare / ridimensionare / eliminare / cambiare stile',\n lockedContents: 'Il testo non può cambiare; la geometria sì',\n noZoom: 'Dimensione fissa a schermo (ancorata in alto a sinistra)',\n noRotate: 'Resta dritta quando la pagina ruota',\n invisible: 'Obsoleto: nascondi i sottotipi sconosciuti',\n },\n // The link editor over a selected annotation.\n linkEditor: {\n toUrl: 'Collegamento a un URL',\n url: 'URL',\n toPage: 'Collegamento a una pagina',\n page: 'Pagina',\n urlPlaceholder: 'https://…',\n pagePlaceholder: 'Numero di pagina',\n add: 'Aggiungi collegamento',\n update: 'Aggiorna collegamento',\n },\n demo: {\n starting: 'Avvio del visualizzatore…',\n opening: 'Apertura del documento…',\n more: 'Altro',\n searchPlaceholder: 'Cerca nel documento…',\n searchCaseSensitive: 'Maiuscole/minuscole',\n searchWholeWord: 'Parola intera',\n searchRegex: 'Espressione regolare',\n searchSearching: 'Ricerca in corso…',\n searchResults: 'Risultati trovati: {count}',\n searchNoResults: 'Nessun risultato',\n searchPrevious: 'Risultato precedente',\n searchNext: 'Risultato successivo',\n searchPage: 'Pagina {page}',\n commentsForbidden: 'Non hai accesso ai commenti di questo documento.',\n commentsLoading: 'Caricamento dei commenti…',\n commentsError: 'Impossibile caricare i commenti.',\n commentsRetry: 'Riprova',\n commentsEmpty: 'Ancora nessun commento. Usa lo strumento Nota per avviare una discussione.',\n commentsEmptyReadOnly: 'Nessun commento in questo documento.',\n commentsAnonymous: 'Sconosciuto',\n commentsPage: 'Pagina {page}',\n commentCount: '{count} commento',\n commentCountPlural: '{count} commenti',\n commentsReply: 'Rispondi',\n commentsReplyPlaceholder: 'Rispondi…',\n commentsAddPlaceholder: 'Aggiungi un commento…',\n commentsDelete: 'Elimina commento',\n commentsDeleteThread: 'Elimina discussione',\n commentsEdit: 'Modifica commento',\n commentsStatus: 'Stato',\n commentsStatusNone: 'Nessuno stato',\n commentsStatusAccepted: 'Accettato',\n commentsStatusRejected: 'Rifiutato',\n commentsStatusCancelled: 'Annullato',\n commentsStatusCompleted: 'Completato',\n empty: 'Ancora niente in questo pannello demo.',\n page: 'Pagina {current} di {total}',\n goToPage: 'Vai alla pagina',\n cancel: 'Annulla',\n pageBadge: 'pag. {page}',\n redactionEmpty:\n 'Nessun oscuramento in sospeso. Usa lo strumento Oscura per contrassegnare testo o aree.',\n redactionArea: 'Contrassegno area',\n redactionText: 'Contrassegno testo',\n redactionRemove: 'Rimuovi contrassegno',\n redactConfirmTitle: 'Applicare gli oscuramenti?',\n redactConfirmBody:\n 'Rimuovere definitivamente il contenuto sotto i contrassegni di oscuramento ({count}). L’operazione non può essere annullata.',\n redactConfirmCollateral: 'Verranno rimosse anche altre annotazioni: {count}.',\n redactApply: 'Applica',\n redactApplying: 'Applicazione…',\n formatLabel: 'Formato',\n fieldSettingsTitle: 'Campo',\n fieldOptionLabel: 'Etichetta',\n fieldOptionValue: 'Valore',\n fieldOptionAdd: 'Aggiungi opzione',\n fieldOptionRemove: 'Rimuovi opzione',\n fieldNone: 'Nessuno',\n redactLabelTitle: 'Testo sovrapposto',\n redactLabelPlaceholder: 'es. OSCURATO',\n redactLabelRepeat: 'Ripeti il testo nell’intera area',\n stampsAll: 'Tutti i timbri',\n stampsLoading: 'Caricamento dei timbri…',\n stampsEmpty:\n 'Ancora nessun timbro. Importa un PDF per trasformare ciascuna delle sue pagine in un timbro.',\n stampsRemoveStamp: 'Rimuovi timbro',\n stampsArmedHint: 'Fai clic su una pagina per posizionare il timbro.',\n stampsImport: 'Importa PDF…',\n stampsImporting: 'Importazione…',\n stampsImportHint: 'Importa un PDF come libreria di timbri — ogni pagina diventa un timbro.',\n stampsRemoveLibrary: 'Rimuovi libreria',\n stampsExportLibrary: 'Esporta libreria come PDF',\n stampsCustomLibrary: 'I miei timbri',\n stampsCustomLabel: 'Timbro personalizzato',\n stampsError: 'Impossibile caricare i timbri predefiniti.',\n stampsArmError: 'Impossibile attivare questo timbro.',\n stampsImportError: 'Impossibile importare questo PDF come libreria di timbri.',\n quickStampsLabel: 'Timbri rapidi',\n signaturesEmpty: 'Ancora nessuna firma. Creane una per firmare.',\n signaturesNew: 'Nuova firma…',\n signaturesArmedHint:\n 'Fai clic su un campo firma per firmarlo, oppure in un punto qualsiasi di una pagina per posizionare il segno.',\n signaturesTargetHint: 'Scegli un segno per il campo selezionato.',\n signaturesInDocument: 'In questo documento',\n signaturesNone: 'Questo documento non contiene campi firma.',\n signaturesValidate: 'Convalida',\n signaturesValidating: 'Convalida in corso…',\n signaturesSigned: 'Firmato',\n signaturesUnsigned: 'Non firmato',\n signaturesRename: 'Rinomina',\n signaturesRemove: 'Rimuovi',\n signaturesExport: 'Esporta come PDF',\n signaturesAddInitials: 'Aggiungi iniziali',\n signatureLabel: 'Firma',\n initialsLabel: 'Iniziali',\n makerTitle: 'Nuova firma',\n makerName: 'Nome',\n makerNamePlaceholder: 'Il tuo nome',\n makerDraw: 'Traccia',\n makerType: 'Digita',\n makerUpload: 'Carica',\n makerTypePlaceholder: 'Digita il tuo nome',\n makerFont: 'Font',\n makerUploadHint: 'Scegli un PNG, un JPEG o un PDF di una pagina',\n makerClear: 'Cancella',\n makerOptional: '(facoltativo)',\n makerSave: 'Salva',\n makerSaving: 'Salvataggio…',\n makerError: 'Impossibile salvare la firma.',\n signTitle: 'Firma questo campo',\n signReason: 'Motivo',\n signLocation: 'Luogo',\n signKind: 'Cosa si potrà modificare in seguito',\n signKindApproval:\n 'Firma di approvazione — resta valida dopo la compilazione di moduli e altre firme',\n signKindCertifyAnnotate: 'Certifica — consenti commenti, compilazione di moduli e firme',\n signKindCertifyFill: 'Certifica — consenti solo compilazione di moduli e firme',\n signKindCertifyLocked: 'Certifica — non consentire modifiche',\n signButton: 'Firma',\n signSigning: 'Firma in corso…',\n signFill: 'Posiziona senza firmare',\n signError: 'Impossibile firmare il campo.',\n inspectTitle: 'Firma',\n inspectSigner: 'Firmato da',\n inspectReason: 'Motivo',\n inspectLocation: 'Luogo',\n inspectTime: 'Data',\n inspectIntegrity: 'Documento',\n inspectCryptography: 'Firma',\n inspectTrust: 'Firmatario',\n inspectChanges: 'Modifiche successive',\n inspectDownload: 'Scarica la versione firmata',\n verdictValid: 'Valida',\n verdictValidUntrusted: 'Valida, firmatario non attendibile',\n verdictInvalid: 'Non valida — modificato dopo la firma',\n verdictWillInvalidate: 'Valida, non più valida al salvataggio',\n signaturesInvalidating:\n 'Questa modifica invaliderà {field} al salvataggio del documento. Annullala per mantenere la firma.',\n verdictIndeterminate: 'Impossibile verificare',\n verdictUnchanged: 'Nessuna',\n verdictRestored: 'Modificato, poi ripristinato',\n inspectLaterRevisions: 'Revisioni dopo la firma',\n verdictPermitted: 'Consentite',\n verdictForbidden: 'Non consentite',\n },\n },\n};\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"it-Us-VmvIu.js","names":[],"sources":["../src/locales/it.ts"],"sourcesContent":["import type { Locale } from '@embedpdf/react/i18n';\n\n/**\n * Italian pack, in the words Adobe Acrobat's Italian edition uses. Machine-translated from the\n * English pack (`./en.ts`) and not yet reviewed by a native speaker.\n */\nexport const it: Locale = {\n code: 'it',\n name: 'Italiano',\n translations: {\n measurement: {\n title: 'Misurazioni',\n distance: 'Distanza',\n perimeter: 'Perimetro',\n area: 'Area',\n areaUnit: 'Unità di area',\n resetLabel: 'Ripristina posizione dell’etichetta',\n calibrate: 'Calibra scala',\n scale: 'Scala',\n custom: 'Personalizzata',\n unavailable: 'Non disponibile',\n instructions:\n 'Trascina per misurare una distanza, quindi fai clic per posizionare la linea di quota. Fai clic sui vertici per un perimetro o un’area e fai doppio clic per terminare. I bordi di un’area non devono incrociarsi; un’anteprima non disponibile non può essere completata. Premi Escape per annullare. Trascina l’etichetta stessa per spostarla.',\n sessionOnly: 'Questo motore conserva la calibrazione delle pagine solo per questa sessione.',\n allPages: 'Applica a tutte le pagine',\n recalculate: 'Ricalcola le misurazioni esistenti',\n preset: 'Scala predefinita',\n choosePreset: 'Scegli una scala',\n unit: 'Unità',\n precision: 'Precisione',\n selection: 'Misurazioni selezionate',\n report: '{updated} aggiornate · {skipped} ignorate · {failed} non riuscite',\n knownLength: 'Immetti la lunghezza reale rappresentata dalla linea appena tracciata.',\n length: 'Lunghezza nota',\n apply: 'Applica scala',\n applying: 'Applicazione…',\n },\n commands: {\n zoom: {\n in: 'Ingrandisci',\n out: 'Riduci',\n fitPage: 'Adatta pagina',\n fitWidth: 'Adatta larghezza',\n automatic: 'Automatico',\n menu: 'Zoom',\n level: 'Livello di zoom',\n p50: '50%',\n p100: '100%',\n p150: '150%',\n p200: '200%',\n p400: '400%',\n },\n pan: 'Sposta',\n pointer: 'Seleziona',\n comment: 'Commento',\n style: 'Stile',\n menu: 'Menu',\n viewControls: 'Controlli vista',\n open: 'Apri',\n download: 'Scarica',\n print: 'Stampa',\n fullscreen: 'Schermo intero',\n spread: {\n group: 'Layout pagina',\n none: 'Pagina singola',\n odd: 'Due pagine',\n even: 'Copertina',\n },\n scroll: {\n group: 'Scorrimento',\n vertical: 'Verticale',\n horizontal: 'Orizzontale',\n },\n rotate: {\n group: 'Ruota',\n clockwise: 'Ruota in senso orario',\n counterclockwise: 'Ruota in senso antiorario',\n },\n mode: {\n measure: 'Misura',\n group: 'Modalità',\n view: 'Visualizza',\n annotate: 'Annota',\n shapes: 'Forme',\n insert: 'Inserisci',\n form: 'Modulo',\n redact: 'Oscura',\n },\n annotate: {\n cancelCreation: 'Annulla disegno',\n highlight: 'Evidenzia',\n strikeout: 'Barra testo',\n underline: 'Sottolinea',\n squiggly: 'Ondulato',\n ink: 'Disegna',\n inkHighlight: 'Evidenziatore',\n text: 'Testo',\n insertText: 'Inserisci testo',\n replaceText: 'Sostituisci testo',\n callout: 'Richiamo',\n note: 'Commento',\n link: 'Collegamento',\n gotoLink: 'Vai al collegamento',\n removeLink: 'Rimuovi collegamento',\n delete: 'Elimina',\n group: 'Raggruppa',\n ungroup: 'Separa',\n stampFromSelection: 'Crea timbro',\n strip: 'Azioni annotazione',\n },\n selection: {\n copy: 'Copia',\n strip: 'Azioni selezione testo',\n },\n shapes: {\n rectangle: 'Rettangolo',\n circle: 'Ovale',\n line: 'Linea',\n arrow: 'Freccia',\n polygon: 'Poligono',\n polyline: 'Polilinea',\n },\n insert: {\n stamp: 'Timbro',\n attachment: 'Allega file',\n signature: 'Firma',\n image: 'Immagine',\n },\n form: {\n textfield: 'Campo di testo',\n checkbox: 'Casella di controllo',\n radio: 'Pulsante di scelta',\n select: 'Elenco a discesa',\n listbox: 'Casella di riepilogo',\n button: 'Pulsante',\n signature: 'Campo firma',\n // The Form mode's design switch, which opens the form designer's sidebar.\n design: 'Progettazione modulo',\n },\n redact: {\n mark: 'Contrassegna per oscuramento',\n applyAll: 'Applica oscuramenti',\n clearAll: 'Cancella contrassegni',\n },\n undo: 'Annulla',\n redo: 'Ripeti',\n page: {\n next: 'Pagina successiva',\n previous: 'Pagina precedente',\n first: 'Prima pagina',\n last: 'Ultima pagina',\n goTo: 'Vai alla pagina',\n },\n find: 'Trova',\n shortcuts: 'Scorciatoie da tastiera',\n notAllowed: {\n default: '{label}: azione non consentita',\n 'annotations-create': 'L’aggiunta di annotazioni non è consentita',\n 'doc-annotate-modify': 'La modifica delle annotazioni non è consentita',\n 'doc-annotate-read': 'La visualizzazione delle annotazioni non è consentita',\n 'doc-download': 'Il download non è consentito',\n 'doc-forms-modify': 'La modifica dei campi modulo non è consentita',\n 'doc-print': 'La stampa non è consentita',\n 'doc-text-copy': 'La copia non è consentita',\n 'doc-text-search': 'La ricerca non è consentita',\n },\n turnedOff: '{label} non è disponibile',\n },\n passwordPrompt: {\n title: 'Password richiesta',\n required: 'Questo documento è protetto da password. Immetti la password per aprirlo.',\n incorrect: 'La password non è corretta. Riprova.',\n incorrectWarning: 'Password non corretta',\n label: 'Password',\n placeholder: 'Immetti la password',\n cancel: 'Annulla',\n open: 'Apri',\n opening: 'Apertura…',\n },\n dropToOpen: {\n label: 'Rilascia un PDF per aprirlo',\n },\n documentError: {\n title: 'Impossibile aprire il documento',\n unknown: 'Non è stato possibile aprire il documento.',\n notFound: 'File non trovato.',\n notAllowed: 'Non hai accesso a questo documento.',\n damaged: 'Questo file non è un PDF o è danneggiato.',\n unsupported: 'Questo visualizzatore non può aprire questo tipo di documento.',\n retry: 'Riprova',\n close: 'Chiudi documento',\n },\n tabs: {\n close: 'Chiudi {name}',\n loading: 'Caricamento',\n untitled: 'Documento {id}',\n },\n closeUnsaved: {\n title: 'Chiudere senza salvare?',\n body: '«{name}» contiene modifiche non scaricate. Andranno perse.',\n cancel: 'Annulla',\n close: 'Chiudi senza salvare',\n },\n viewOnly: {\n label: 'Sola lettura',\n turnedOff: 'Gli strumenti che modificano questo documento sono disattivati',\n notAllowed: 'Puoi leggere questo documento, ma non modificarlo',\n },\n panel: {\n close: 'Chiudi',\n resize: 'Ridimensiona {title}',\n },\n menu: {\n back: 'Indietro',\n },\n shortcuts: {\n document: 'Documento',\n viewing: 'Visualizzazione',\n editing: 'Modifica',\n other: 'Altro',\n },\n goToPage: {\n go: 'Vai',\n },\n panels: {\n thumbnails: 'Miniature',\n outline: 'Segnalibri',\n attachments: 'Allegati',\n search: 'Cerca',\n comments: 'Commenti',\n style: 'Stile',\n stamps: 'Timbri',\n signatures: 'Firme',\n redaction: 'Oscuramenti',\n measurement: 'Misurazioni',\n formDesign: 'Progettazione modulo',\n switch: 'Cambia pannello',\n },\n annotation: {\n comment: 'Commento',\n highlight: 'Evidenziazione',\n underline: 'Sottolineatura',\n squiggly: 'Sottolineatura ondulata',\n strikeout: 'Testo barrato',\n square: 'Rettangolo',\n circle: 'Ovale',\n line: 'Linea',\n polygon: 'Poligono',\n polyline: 'Polilinea',\n ink: 'Disegno',\n freeText: 'Testo',\n stamp: 'Timbro',\n caret: 'Inserimento',\n redact: 'Oscuramento',\n fileAttachment: 'Allegato',\n // The style panel's labels, as the annotation kinds name them (`labelKey`), by wording:\n // one field is called different things by different kinds.\n style: {\n opacity: 'Opacità',\n stroke: 'Traccia',\n fill: 'Riempimento',\n color: 'Colore',\n strokeWidth: 'Spessore traccia',\n border: 'Bordo',\n borderStyle: 'Stile bordo',\n borderColor: 'Colore bordo',\n borderWidth: 'Spessore bordo',\n background: 'Sfondo',\n outline: 'Contorno',\n lineEndings: 'Estremità linea',\n blendMode: 'Metodo di fusione',\n font: 'Font',\n fontSize: 'Dimensione font',\n textColor: 'Colore testo',\n bold: 'Grassetto',\n italic: 'Corsivo',\n underline: 'Sottolineato',\n align: 'Allineamento',\n alignment: 'Allineamento',\n label: 'Etichetta',\n labelFont: 'Font etichetta',\n labelSize: 'Dimensione etichetta',\n labelColor: 'Colore etichetta',\n icon: 'Icona',\n link: 'Collegamento',\n },\n // The annotation flags (`/F`).\n flags: {\n print: 'Stampa',\n hidden: 'Nascosta',\n noView: 'Non visualizzata',\n toggleNoView: 'Alterna non visualizzata',\n readOnly: 'Sola lettura',\n locked: 'Bloccata',\n lockedContents: 'Contenuto bloccato',\n noZoom: 'Senza zoom',\n noRotate: 'Senza rotazione',\n invisible: 'Invisibile',\n },\n borderStyles: { solid: 'Continuo', dashed: 'Tratteggiato', cloudy: 'Nuvola' },\n lineEndings: {\n none: 'Nessuna',\n square: 'Quadrato',\n circle: 'Cerchio',\n diamond: 'Rombo',\n openArrow: 'Freccia aperta',\n closedArrow: 'Freccia chiusa',\n butt: 'Barra trasversale',\n reverseOpenArrow: 'Freccia aperta inversa',\n reverseClosedArrow: 'Freccia chiusa inversa',\n slash: 'Barra obliqua',\n },\n blendModes: {\n normal: 'Normale',\n multiply: 'Moltiplica',\n screen: 'Scolora',\n overlay: 'Sovrapponi',\n darken: 'Scurisci',\n lighten: 'Schiarisci',\n colorDodge: 'Scherma colore',\n colorBurn: 'Brucia colore',\n hardLight: 'Luce intensa',\n softLight: 'Luce soffusa',\n difference: 'Differenza',\n exclusion: 'Esclusione',\n hue: 'Tonalità',\n saturation: 'Saturazione',\n color: 'Colore',\n luminosity: 'Luminosità',\n },\n // The standard PDF fonts, by their names: a language may keep them as they are.\n fonts: {\n courier: 'Courier',\n courierBold: 'Courier Bold',\n courierBoldOblique: 'Courier Bold Oblique',\n courierOblique: 'Courier Oblique',\n helvetica: 'Helvetica',\n helveticaBold: 'Helvetica Bold',\n helveticaBoldOblique: 'Helvetica Bold Oblique',\n helveticaOblique: 'Helvetica Oblique',\n timesRoman: 'Times Roman',\n timesBold: 'Times Bold',\n timesBoldItalic: 'Times Bold Italic',\n timesItalic: 'Times Italic',\n symbol: 'Symbol',\n zapfDingbats: 'Zapf Dingbats',\n },\n alignments: { left: 'Sinistra', center: 'Centro', right: 'Destra' },\n noteIcons: {\n comment: 'Commento',\n key: 'Chiave',\n note: 'Nota',\n help: 'Guida',\n newParagraph: 'Nuovo paragrafo',\n paragraph: 'Paragrafo',\n insert: 'Inserisci',\n },\n attachmentIcons: {\n pushPin: 'Puntina',\n paperclip: 'Graffetta',\n graph: 'Grafico',\n tag: 'Etichetta',\n },\n },\n // A form field's settings, as the form plugin names them (`labelKey`).\n form: {\n settings: {\n name: 'Nome',\n tooltip: 'Descrizione comando',\n required: 'Obbligatorio',\n readOnly: 'Sola lettura',\n noExport: 'Non esportare',\n defaultValue: 'Valore predefinito',\n maxLength: 'Lunghezza massima',\n multiline: 'Multiriga',\n password: 'Password',\n comb: 'Un carattere per casella',\n radiosInUnison: 'I pulsanti con lo stesso valore si attivano insieme',\n keepOneOn: 'Mantieni uno attivo',\n options: 'Opzioni',\n allowTyping: 'Consenti digitazione',\n multiSelect: 'Selezione multipla',\n },\n },\n // A thumbnail's tooltip.\n thumbnails: { page: 'Pagina {page}' },\n // The form designer's sidebar: the fields by page, and the selected one's buttons.\n formDesign: {\n empty: 'Ancora nessun campo. Scegli uno strumento di campo per aggiungerne uno.',\n page: 'Pagina {page}',\n allFields: 'Tutti i campi',\n buttons: 'Pulsanti',\n boxes: 'Caselle',\n box: 'Casella {number}',\n addButton: 'Aggiungi pulsante',\n addBox: 'Aggiungi casella',\n },\n // The style panel's own words around the properties.\n stylePanel: {\n mixed: '(misto)',\n // A color swatch that takes the color away.\n transparent: 'Trasparente',\n lineStart: 'Inizio',\n lineEnd: 'Fine',\n empty: 'Scegli uno strumento di disegno o seleziona un’annotazione per modificarne lo stile.',\n selected: 'Selezionate: {count}',\n toolDefaults: 'Valori predefiniti: {tool}',\n defaults: 'Valori predefiniti',\n },\n // The flags section of the style panel: its title, and what each flag does.\n annotationFlags: {\n title: 'Indicatori (/F)',\n print: 'Includi quando la pagina viene stampata',\n hidden: 'Nascosta ovunque: schermo, clic, stampa',\n noView: 'Nascosta a schermo, può comunque essere stampata',\n toggleNoView: 'Mostra un’annotazione non visualizzata quando è selezionata',\n readOnly: 'Visibile ma non cliccabile',\n locked: 'Impossibile spostare / ridimensionare / eliminare / cambiare stile',\n lockedContents: 'Il testo non può cambiare; la geometria sì',\n noZoom: 'Dimensione fissa a schermo (ancorata in alto a sinistra)',\n noRotate: 'Resta dritta quando la pagina ruota',\n invisible: 'Obsoleto: nascondi i sottotipi sconosciuti',\n },\n // The link editor over a selected annotation.\n linkEditor: {\n toUrl: 'Collegamento a un URL',\n url: 'URL',\n toPage: 'Collegamento a una pagina',\n page: 'Pagina',\n urlPlaceholder: 'https://…',\n pagePlaceholder: 'Numero di pagina',\n add: 'Aggiungi collegamento',\n update: 'Aggiorna collegamento',\n },\n demo: {\n starting: 'Avvio del visualizzatore…',\n opening: 'Apertura del documento…',\n more: 'Altro',\n searchPlaceholder: 'Cerca nel documento…',\n searchCaseSensitive: 'Maiuscole/minuscole',\n searchWholeWord: 'Parola intera',\n searchRegex: 'Espressione regolare',\n searchSearching: 'Ricerca in corso…',\n searchResults: 'Risultati trovati: {count}',\n searchNoResults: 'Nessun risultato',\n searchPrevious: 'Risultato precedente',\n searchNext: 'Risultato successivo',\n searchPage: 'Pagina {page}',\n commentsForbidden: 'Non hai accesso ai commenti di questo documento.',\n commentsLoading: 'Caricamento dei commenti…',\n commentsError: 'Impossibile caricare i commenti.',\n commentsRetry: 'Riprova',\n commentsEmpty: 'Ancora nessun commento. Usa lo strumento Nota per avviare una discussione.',\n commentsEmptyReadOnly: 'Nessun commento in questo documento.',\n commentsAnonymous: 'Sconosciuto',\n commentsPage: 'Pagina {page}',\n commentCount: '{count} commento',\n commentCountPlural: '{count} commenti',\n commentsReply: 'Rispondi',\n commentsReplyPlaceholder: 'Rispondi…',\n commentsAddPlaceholder: 'Aggiungi un commento…',\n commentsDelete: 'Elimina commento',\n commentsDeleteThread: 'Elimina discussione',\n commentsEdit: 'Modifica commento',\n commentsStatus: 'Stato',\n commentsStatusNone: 'Nessuno stato',\n commentsStatusAccepted: 'Accettato',\n commentsStatusRejected: 'Rifiutato',\n commentsStatusCancelled: 'Annullato',\n commentsStatusCompleted: 'Completato',\n empty: 'Ancora niente in questo pannello demo.',\n page: 'Pagina {current} di {total}',\n goToPage: 'Vai alla pagina',\n cancel: 'Annulla',\n pageBadge: 'pag. {page}',\n redactionEmpty:\n 'Nessun oscuramento in sospeso. Usa lo strumento Oscura per contrassegnare testo o aree.',\n redactionArea: 'Contrassegno area',\n redactionText: 'Contrassegno testo',\n redactionRemove: 'Rimuovi contrassegno',\n redactConfirmTitle: 'Applicare gli oscuramenti?',\n redactConfirmBody:\n 'Rimuovere definitivamente il contenuto sotto i contrassegni di oscuramento ({count}). L’operazione non può essere annullata.',\n redactConfirmCollateral: 'Verranno rimosse anche altre annotazioni: {count}.',\n redactApply: 'Applica',\n redactApplying: 'Applicazione…',\n formatLabel: 'Formato',\n fieldSettingsTitle: 'Campo',\n fieldOptionLabel: 'Etichetta',\n fieldOptionValue: 'Valore',\n fieldOptionAdd: 'Aggiungi opzione',\n fieldOptionRemove: 'Rimuovi opzione',\n fieldNone: 'Nessuno',\n redactLabelTitle: 'Testo sovrapposto',\n redactLabelPlaceholder: 'es. OSCURATO',\n redactLabelRepeat: 'Ripeti il testo nell’intera area',\n stampsAll: 'Tutti i timbri',\n stampsLoading: 'Caricamento dei timbri…',\n stampsEmpty:\n 'Ancora nessun timbro. Importa un PDF per trasformare ciascuna delle sue pagine in un timbro.',\n stampsRemoveStamp: 'Rimuovi timbro',\n stampsArmedHint: 'Fai clic su una pagina per posizionare il timbro.',\n stampsImport: 'Importa PDF…',\n stampsImporting: 'Importazione…',\n stampsImportHint: 'Importa un PDF come libreria di timbri — ogni pagina diventa un timbro.',\n stampsRemoveLibrary: 'Rimuovi libreria',\n stampsExportLibrary: 'Esporta libreria come PDF',\n stampsCustomLibrary: 'I miei timbri',\n stampsCustomLabel: 'Timbro personalizzato',\n stampsError: 'Impossibile caricare i timbri predefiniti.',\n stampsArmError: 'Impossibile attivare questo timbro.',\n stampsImportError: 'Impossibile importare questo PDF come libreria di timbri.',\n quickStampsLabel: 'Timbri rapidi',\n signaturesEmpty: 'Ancora nessuna firma. Creane una per firmare.',\n signaturesNew: 'Nuova firma…',\n signaturesArmedHint:\n 'Fai clic su un campo firma per firmarlo, oppure in un punto qualsiasi di una pagina per posizionare il segno.',\n signaturesTargetHint: 'Scegli un segno per il campo selezionato.',\n signaturesInDocument: 'In questo documento',\n signaturesNone: 'Questo documento non contiene campi firma.',\n signaturesValidate: 'Convalida',\n signaturesValidating: 'Convalida in corso…',\n signaturesSigned: 'Firmato',\n signaturesUnsigned: 'Non firmato',\n signaturesRename: 'Rinomina',\n signaturesRemove: 'Rimuovi',\n signaturesExport: 'Esporta come PDF',\n signaturesAddInitials: 'Aggiungi iniziali',\n signatureLabel: 'Firma',\n initialsLabel: 'Iniziali',\n makerTitle: 'Nuova firma',\n makerName: 'Nome',\n makerNamePlaceholder: 'Il tuo nome',\n makerDraw: 'Traccia',\n makerType: 'Digita',\n makerUpload: 'Carica',\n makerTypePlaceholder: 'Digita il tuo nome',\n makerFont: 'Font',\n makerUploadHint: 'Scegli un PNG, un JPEG o un PDF di una pagina',\n makerClear: 'Cancella',\n makerOptional: '(facoltativo)',\n makerSave: 'Salva',\n makerSaving: 'Salvataggio…',\n makerError: 'Impossibile salvare la firma.',\n signTitle: 'Firma questo campo',\n signReason: 'Motivo',\n signLocation: 'Luogo',\n signKind: 'Cosa si potrà modificare in seguito',\n signKindApproval:\n 'Firma di approvazione — resta valida dopo la compilazione di moduli e altre firme',\n signKindCertifyAnnotate: 'Certifica — consenti commenti, compilazione di moduli e firme',\n signKindCertifyFill: 'Certifica — consenti solo compilazione di moduli e firme',\n signKindCertifyLocked: 'Certifica — non consentire modifiche',\n signButton: 'Firma',\n signSigning: 'Firma in corso…',\n signFill: 'Posiziona senza firmare',\n signError: 'Impossibile firmare il campo.',\n inspectTitle: 'Firma',\n inspectSigner: 'Firmato da',\n inspectReason: 'Motivo',\n inspectLocation: 'Luogo',\n inspectTime: 'Data',\n inspectIntegrity: 'Documento',\n inspectCryptography: 'Firma',\n inspectTrust: 'Firmatario',\n inspectChanges: 'Modifiche successive',\n inspectDownload: 'Scarica la versione firmata',\n verdictValid: 'Valida',\n verdictValidUntrusted: 'Valida, firmatario non attendibile',\n verdictInvalid: 'Non valida — modificato dopo la firma',\n verdictWillInvalidate: 'Valida, non più valida al salvataggio',\n signaturesInvalidating:\n 'Questa modifica invaliderà {field} al salvataggio del documento. Annullala per mantenere la firma.',\n verdictIndeterminate: 'Impossibile verificare',\n verdictUnchanged: 'Nessuna',\n verdictRestored: 'Modificato, poi ripristinato',\n inspectLaterRevisions: 'Revisioni dopo la firma',\n verdictPermitted: 'Consentite',\n verdictForbidden: 'Non consentite',\n },\n },\n};\n"],"mappings":";;;;;AAMA,MAAa,KAAa;CACxB,MAAM;CACN,MAAM;CACN,cAAc;EACZ,aAAa;GACX,OAAO;GACP,UAAU;GACV,WAAW;GACX,MAAM;GACN,UAAU;GACV,YAAY;GACZ,WAAW;GACX,OAAO;GACP,QAAQ;GACR,aAAa;GACb,cACE;GACF,aAAa;GACb,UAAU;GACV,aAAa;GACb,QAAQ;GACR,cAAc;GACd,MAAM;GACN,WAAW;GACX,WAAW;GACX,QAAQ;GACR,aAAa;GACb,QAAQ;GACR,OAAO;GACP,UAAU;EACZ;EACA,UAAU;GACR,MAAM;IACJ,IAAI;IACJ,KAAK;IACL,SAAS;IACT,UAAU;IACV,WAAW;IACX,MAAM;IACN,OAAO;IACP,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;GACR;GACA,KAAK;GACL,SAAS;GACT,SAAS;GACT,OAAO;GACP,MAAM;GACN,cAAc;GACd,MAAM;GACN,UAAU;GACV,OAAO;GACP,YAAY;GACZ,QAAQ;IACN,OAAO;IACP,MAAM;IACN,KAAK;IACL,MAAM;GACR;GACA,QAAQ;IACN,OAAO;IACP,UAAU;IACV,YAAY;GACd;GACA,QAAQ;IACN,OAAO;IACP,WAAW;IACX,kBAAkB;GACpB;GACA,MAAM;IACJ,SAAS;IACT,OAAO;IACP,MAAM;IACN,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,QAAQ;GACV;GACA,UAAU;IACR,gBAAgB;IAChB,WAAW;IACX,WAAW;IACX,WAAW;IACX,UAAU;IACV,KAAK;IACL,cAAc;IACd,MAAM;IACN,YAAY;IACZ,aAAa;IACb,SAAS;IACT,MAAM;IACN,MAAM;IACN,UAAU;IACV,YAAY;IACZ,QAAQ;IACR,OAAO;IACP,SAAS;IACT,oBAAoB;IACpB,OAAO;GACT;GACA,WAAW;IACT,MAAM;IACN,OAAO;GACT;GACA,QAAQ;IACN,WAAW;IACX,QAAQ;IACR,MAAM;IACN,OAAO;IACP,SAAS;IACT,UAAU;GACZ;GACA,QAAQ;IACN,OAAO;IACP,YAAY;IACZ,WAAW;IACX,OAAO;GACT;GACA,MAAM;IACJ,WAAW;IACX,UAAU;IACV,OAAO;IACP,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,WAAW;IAEX,QAAQ;GACV;GACA,QAAQ;IACN,MAAM;IACN,UAAU;IACV,UAAU;GACZ;GACA,MAAM;GACN,MAAM;GACN,MAAM;IACJ,MAAM;IACN,UAAU;IACV,OAAO;IACP,MAAM;IACN,MAAM;GACR;GACA,MAAM;GACN,WAAW;GACX,YAAY;IACV,SAAS;IACT,sBAAsB;IACtB,uBAAuB;IACvB,qBAAqB;IACrB,gBAAgB;IAChB,oBAAoB;IACpB,aAAa;IACb,iBAAiB;IACjB,mBAAmB;GACrB;GACA,WAAW;EACb;EACA,gBAAgB;GACd,OAAO;GACP,UAAU;GACV,WAAW;GACX,kBAAkB;GAClB,OAAO;GACP,aAAa;GACb,QAAQ;GACR,MAAM;GACN,SAAS;EACX;EACA,YAAY,EACV,OAAO,8BACT;EACA,eAAe;GACb,OAAO;GACP,SAAS;GACT,UAAU;GACV,YAAY;GACZ,SAAS;GACT,aAAa;GACb,OAAO;GACP,OAAO;EACT;EACA,MAAM;GACJ,OAAO;GACP,SAAS;GACT,UAAU;EACZ;EACA,cAAc;GACZ,OAAO;GACP,MAAM;GACN,QAAQ;GACR,OAAO;EACT;EACA,UAAU;GACR,OAAO;GACP,WAAW;GACX,YAAY;EACd;EACA,OAAO;GACL,OAAO;GACP,QAAQ;EACV;EACA,MAAM,EACJ,MAAM,WACR;EACA,WAAW;GACT,UAAU;GACV,SAAS;GACT,SAAS;GACT,OAAO;EACT;EACA,UAAU,EACR,IAAI,MACN;EACA,QAAQ;GACN,YAAY;GACZ,SAAS;GACT,aAAa;GACb,QAAQ;GACR,UAAU;GACV,OAAO;GACP,QAAQ;GACR,YAAY;GACZ,WAAW;GACX,aAAa;GACb,YAAY;GACZ,QAAQ;EACV;EACA,YAAY;GACV,SAAS;GACT,WAAW;GACX,WAAW;GACX,UAAU;GACV,WAAW;GACX,QAAQ;GACR,QAAQ;GACR,MAAM;GACN,SAAS;GACT,UAAU;GACV,KAAK;GACL,UAAU;GACV,OAAO;GACP,OAAO;GACP,QAAQ;GACR,gBAAgB;GAGhB,OAAO;IACL,SAAS;IACT,QAAQ;IACR,MAAM;IACN,OAAO;IACP,aAAa;IACb,QAAQ;IACR,aAAa;IACb,aAAa;IACb,aAAa;IACb,YAAY;IACZ,SAAS;IACT,aAAa;IACb,WAAW;IACX,MAAM;IACN,UAAU;IACV,WAAW;IACX,MAAM;IACN,QAAQ;IACR,WAAW;IACX,OAAO;IACP,WAAW;IACX,OAAO;IACP,WAAW;IACX,WAAW;IACX,YAAY;IACZ,MAAM;IACN,MAAM;GACR;GAEA,OAAO;IACL,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,cAAc;IACd,UAAU;IACV,QAAQ;IACR,gBAAgB;IAChB,QAAQ;IACR,UAAU;IACV,WAAW;GACb;GACA,cAAc;IAAE,OAAO;IAAY,QAAQ;IAAgB,QAAQ;GAAS;GAC5E,aAAa;IACX,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,WAAW;IACX,aAAa;IACb,MAAM;IACN,kBAAkB;IAClB,oBAAoB;IACpB,OAAO;GACT;GACA,YAAY;IACV,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,SAAS;IACT,YAAY;IACZ,WAAW;IACX,WAAW;IACX,WAAW;IACX,YAAY;IACZ,WAAW;IACX,KAAK;IACL,YAAY;IACZ,OAAO;IACP,YAAY;GACd;GAEA,OAAO;IACL,SAAS;IACT,aAAa;IACb,oBAAoB;IACpB,gBAAgB;IAChB,WAAW;IACX,eAAe;IACf,sBAAsB;IACtB,kBAAkB;IAClB,YAAY;IACZ,WAAW;IACX,iBAAiB;IACjB,aAAa;IACb,QAAQ;IACR,cAAc;GAChB;GACA,YAAY;IAAE,MAAM;IAAY,QAAQ;IAAU,OAAO;GAAS;GAClE,WAAW;IACT,SAAS;IACT,KAAK;IACL,MAAM;IACN,MAAM;IACN,cAAc;IACd,WAAW;IACX,QAAQ;GACV;GACA,iBAAiB;IACf,SAAS;IACT,WAAW;IACX,OAAO;IACP,KAAK;GACP;EACF;EAEA,MAAM,EACJ,UAAU;GACR,MAAM;GACN,SAAS;GACT,UAAU;GACV,UAAU;GACV,UAAU;GACV,cAAc;GACd,WAAW;GACX,WAAW;GACX,UAAU;GACV,MAAM;GACN,gBAAgB;GAChB,WAAW;GACX,SAAS;GACT,aAAa;GACb,aAAa;EACf,EACF;EAEA,YAAY,EAAE,MAAM,gBAAgB;EAEpC,YAAY;GACV,OAAO;GACP,MAAM;GACN,WAAW;GACX,SAAS;GACT,OAAO;GACP,KAAK;GACL,WAAW;GACX,QAAQ;EACV;EAEA,YAAY;GACV,OAAO;GAEP,aAAa;GACb,WAAW;GACX,SAAS;GACT,OAAO;GACP,UAAU;GACV,cAAc;GACd,UAAU;EACZ;EAEA,iBAAiB;GACf,OAAO;GACP,OAAO;GACP,QAAQ;GACR,QAAQ;GACR,cAAc;GACd,UAAU;GACV,QAAQ;GACR,gBAAgB;GAChB,QAAQ;GACR,UAAU;GACV,WAAW;EACb;EAEA,YAAY;GACV,OAAO;GACP,KAAK;GACL,QAAQ;GACR,MAAM;GACN,gBAAgB;GAChB,iBAAiB;GACjB,KAAK;GACL,QAAQ;EACV;EACA,MAAM;GACJ,UAAU;GACV,SAAS;GACT,MAAM;GACN,mBAAmB;GACnB,qBAAqB;GACrB,iBAAiB;GACjB,aAAa;GACb,iBAAiB;GACjB,eAAe;GACf,iBAAiB;GACjB,gBAAgB;GAChB,YAAY;GACZ,YAAY;GACZ,mBAAmB;GACnB,iBAAiB;GACjB,eAAe;GACf,eAAe;GACf,eAAe;GACf,uBAAuB;GACvB,mBAAmB;GACnB,cAAc;GACd,cAAc;GACd,oBAAoB;GACpB,eAAe;GACf,0BAA0B;GAC1B,wBAAwB;GACxB,gBAAgB;GAChB,sBAAsB;GACtB,cAAc;GACd,gBAAgB;GAChB,oBAAoB;GACpB,wBAAwB;GACxB,wBAAwB;GACxB,yBAAyB;GACzB,yBAAyB;GACzB,OAAO;GACP,MAAM;GACN,UAAU;GACV,QAAQ;GACR,WAAW;GACX,gBACE;GACF,eAAe;GACf,eAAe;GACf,iBAAiB;GACjB,oBAAoB;GACpB,mBACE;GACF,yBAAyB;GACzB,aAAa;GACb,gBAAgB;GAChB,aAAa;GACb,oBAAoB;GACpB,kBAAkB;GAClB,kBAAkB;GAClB,gBAAgB;GAChB,mBAAmB;GACnB,WAAW;GACX,kBAAkB;GAClB,wBAAwB;GACxB,mBAAmB;GACnB,WAAW;GACX,eAAe;GACf,aACE;GACF,mBAAmB;GACnB,iBAAiB;GACjB,cAAc;GACd,iBAAiB;GACjB,kBAAkB;GAClB,qBAAqB;GACrB,qBAAqB;GACrB,qBAAqB;GACrB,mBAAmB;GACnB,aAAa;GACb,gBAAgB;GAChB,mBAAmB;GACnB,kBAAkB;GAClB,iBAAiB;GACjB,eAAe;GACf,qBACE;GACF,sBAAsB;GACtB,sBAAsB;GACtB,gBAAgB;GAChB,oBAAoB;GACpB,sBAAsB;GACtB,kBAAkB;GAClB,oBAAoB;GACpB,kBAAkB;GAClB,kBAAkB;GAClB,kBAAkB;GAClB,uBAAuB;GACvB,gBAAgB;GAChB,eAAe;GACf,YAAY;GACZ,WAAW;GACX,sBAAsB;GACtB,WAAW;GACX,WAAW;GACX,aAAa;GACb,sBAAsB;GACtB,WAAW;GACX,iBAAiB;GACjB,YAAY;GACZ,eAAe;GACf,WAAW;GACX,aAAa;GACb,YAAY;GACZ,WAAW;GACX,YAAY;GACZ,cAAc;GACd,UAAU;GACV,kBACE;GACF,yBAAyB;GACzB,qBAAqB;GACrB,uBAAuB;GACvB,YAAY;GACZ,aAAa;GACb,UAAU;GACV,WAAW;GACX,cAAc;GACd,eAAe;GACf,eAAe;GACf,iBAAiB;GACjB,aAAa;GACb,kBAAkB;GAClB,qBAAqB;GACrB,cAAc;GACd,gBAAgB;GAChB,iBAAiB;GACjB,cAAc;GACd,uBAAuB;GACvB,gBAAgB;GAChB,uBAAuB;GACvB,wBACE;GACF,sBAAsB;GACtB,kBAAkB;GAClB,iBAAiB;GACjB,uBAAuB;GACvB,kBAAkB;GAClB,kBAAkB;EACpB;CACF;AACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ja-Cizj0-5O.js","names":[],"sources":["../src/locales/ja.ts"],"sourcesContent":["import type { Locale } from '@embedpdf/react/i18n';\n\n/**\n * Japanese pack, in the words Adobe Acrobat's Japanese edition uses. Machine-translated from the\n * English pack (`./en.ts`) and not yet reviewed by a native speaker.\n */\nexport const ja: Locale = {\n code: 'ja',\n name: '日本語',\n translations: {\n measurement: {\n title: '測定',\n distance: '距離',\n perimeter: '周囲長',\n area: '面積',\n areaUnit: '面積の単位',\n resetLabel: 'ラベルの位置をリセット',\n calibrate: '縮尺を校正',\n scale: '縮尺',\n custom: 'カスタム',\n unavailable: '使用不可',\n instructions:\n 'ドラッグして距離を測定し、クリックして寸法線を配置します。周囲長や面積は頂点をクリックし、ダブルクリックで終了します。面積の境界線は交差できません。使用できないプレビューは確定できません。キャンセルするには Escape キーを押します。ラベル自体をドラッグすると移動できます。',\n sessionOnly: 'このエンジンでは、ページの校正はこのセッション中のみ保持されます。',\n allPages: 'すべてのページに適用',\n recalculate: '既存の測定値を再計算',\n preset: '縮尺のプリセット',\n choosePreset: 'プリセットを選択',\n unit: '単位',\n precision: '精度',\n selection: '選択した測定',\n report: '更新 {updated} 件 · スキップ {skipped} 件 · 失敗 {failed} 件',\n knownLength: '描画した線が表す実際の長さを入力してください。',\n length: '既知の長さ',\n apply: '縮尺を適用',\n applying: '適用中…',\n },\n commands: {\n zoom: {\n in: '拡大',\n out: '縮小',\n fitPage: 'ページ全体を表示',\n fitWidth: '幅に合わせる',\n automatic: '自動',\n menu: 'ズーム',\n level: 'ズームレベル',\n p50: '50%',\n p100: '100%',\n p150: '150%',\n p200: '200%',\n p400: '400%',\n },\n pan: 'パン',\n pointer: '選択',\n comment: 'コメント',\n style: 'スタイル',\n menu: 'メニュー',\n viewControls: '表示コントロール',\n open: '開く',\n download: 'ダウンロード',\n print: '印刷',\n fullscreen: 'フルスクリーン',\n spread: {\n group: 'ページレイアウト',\n none: '単一ページ',\n odd: '見開き',\n even: '見開き(表紙)',\n },\n scroll: {\n group: 'スクロール',\n vertical: '縦方向',\n horizontal: '横方向',\n },\n rotate: {\n group: '回転',\n clockwise: '右に回転',\n counterclockwise: '左に回転',\n },\n mode: {\n measure: '測定',\n group: 'モード',\n view: '表示',\n annotate: '注釈',\n shapes: '図形',\n insert: '挿入',\n form: 'フォーム',\n redact: '墨消し',\n },\n annotate: {\n cancelCreation: '描画をキャンセル',\n highlight: 'ハイライト',\n strikeout: '取り消し線',\n underline: '下線',\n squiggly: '波線',\n ink: '描画',\n inkHighlight: '蛍光ペン',\n text: 'テキストボックス',\n insertText: 'テキストを挿入',\n replaceText: 'テキストを置換',\n callout: '引き出し線',\n note: 'コメント',\n link: 'リンク',\n gotoLink: 'リンク先へ移動',\n removeLink: 'リンクを削除',\n delete: '削除',\n group: 'グループ化',\n ungroup: 'グループ解除',\n stampFromSelection: 'スタンプを作成',\n strip: '注釈の操作',\n },\n selection: {\n copy: 'コピー',\n strip: 'テキスト選択の操作',\n },\n shapes: {\n rectangle: '長方形',\n circle: '楕円',\n line: '線',\n arrow: '矢印',\n polygon: '多角形',\n polyline: '折れ線',\n },\n insert: {\n stamp: 'スタンプ',\n attachment: 'ファイルを添付',\n signature: '署名',\n image: '画像',\n },\n form: {\n textfield: 'テキストフィールド',\n checkbox: 'チェックボックス',\n radio: 'ラジオボタン',\n select: 'ドロップダウン',\n listbox: 'リストボックス',\n button: 'ボタン',\n signature: '署名フィールド',\n // The Form mode's design switch, which opens the form designer's sidebar.\n design: 'フォームデザイン',\n },\n redact: {\n mark: '墨消し用にマーク',\n applyAll: '墨消しを適用',\n clearAll: 'マークを消去',\n },\n undo: '元に戻す',\n redo: 'やり直し',\n page: {\n next: '次のページ',\n previous: '前のページ',\n first: '最初のページ',\n last: '最後のページ',\n goTo: 'ページへ移動',\n },\n find: '検索',\n shortcuts: 'キーボードショートカット',\n notAllowed: {\n default: '{label}は許可されていません',\n 'annotations-create': '注釈の追加は許可されていません',\n 'doc-annotate-modify': '注釈の変更は許可されていません',\n 'doc-annotate-read': '注釈の表示は許可されていません',\n 'doc-download': 'ダウンロードは許可されていません',\n 'doc-forms-modify': 'フォームフィールドの編集は許可されていません',\n 'doc-print': '印刷は許可されていません',\n 'doc-text-copy': 'コピーは許可されていません',\n 'doc-text-search': '検索は許可されていません',\n },\n turnedOff: '{label}は使用できません',\n },\n passwordPrompt: {\n title: 'パスワードが必要です',\n required: 'この文書はパスワードで保護されています。開くにはパスワードを入力してください。',\n incorrect: 'パスワードが正しくありません。もう一度お試しください。',\n incorrectWarning: 'パスワードが正しくありません',\n label: 'パスワード',\n placeholder: 'パスワードを入力',\n cancel: 'キャンセル',\n open: '開く',\n opening: '開いています…',\n },\n dropToOpen: {\n label: 'PDF をドロップして開く',\n },\n documentError: {\n title: '文書を開けませんでした',\n unknown: '文書を開くことができませんでした。',\n notFound: 'ファイルが見つかりません。',\n notAllowed: 'この文書にアクセスする権限がありません。',\n damaged: 'このファイルは PDF ではないか、破損しています。',\n unsupported: 'このビューアーではこの種類の文書を開けません。',\n retry: '再試行',\n close: '文書を閉じる',\n },\n tabs: {\n close: '{name} を閉じる',\n loading: '読み込み中',\n untitled: '文書 {id}',\n },\n closeUnsaved: {\n title: '保存せずに閉じますか?',\n body: '「{name}」にはダウンロードされていない変更があります。変更は失われます。',\n cancel: 'キャンセル',\n close: '保存せずに閉じる',\n },\n viewOnly: {\n label: '表示のみ',\n turnedOff: 'この文書を変更するツールはオフになっています',\n notAllowed: 'この文書は閲覧できますが、変更はできません',\n },\n panel: {\n close: '閉じる',\n resize: '{title}のサイズを変更',\n },\n menu: {\n back: '戻る',\n },\n shortcuts: {\n document: '文書',\n viewing: '表示',\n editing: '編集',\n other: 'その他',\n },\n goToPage: {\n go: '移動',\n },\n panels: {\n thumbnails: 'サムネール',\n outline: 'しおり',\n attachments: '添付ファイル',\n search: '検索',\n comments: 'コメント',\n style: 'スタイル',\n stamps: 'スタンプ',\n signatures: '署名',\n redaction: '墨消し',\n measurement: '測定',\n formDesign: 'フォームデザイン',\n switch: 'パネルを切り替え',\n },\n annotation: {\n comment: 'コメント',\n highlight: 'ハイライト',\n underline: '下線',\n squiggly: '波線',\n strikeout: '取り消し線',\n square: '長方形',\n circle: '楕円',\n line: '線',\n polygon: '多角形',\n polyline: '折れ線',\n ink: 'フリーハンド',\n freeText: 'テキストボックス',\n stamp: 'スタンプ',\n caret: 'キャレット',\n redact: '墨消し',\n fileAttachment: '添付ファイル',\n // The style panel's labels, as the annotation kinds name them (`labelKey`), by wording:\n // one field is called different things by different kinds.\n style: {\n opacity: '不透明度',\n stroke: '線',\n fill: '塗り',\n color: 'カラー',\n strokeWidth: '線の太さ',\n border: '境界線',\n borderStyle: '境界線のスタイル',\n borderColor: '境界線のカラー',\n borderWidth: '境界線の太さ',\n background: '背景',\n outline: '輪郭',\n lineEndings: '線の端',\n blendMode: '描画モード',\n font: 'フォント',\n fontSize: 'フォントサイズ',\n textColor: 'テキストのカラー',\n bold: '太字',\n italic: '斜体',\n underline: '下線',\n align: '揃え',\n alignment: '配置',\n label: 'ラベル',\n labelFont: 'ラベルのフォント',\n labelSize: 'ラベルのサイズ',\n labelColor: 'ラベルのカラー',\n icon: 'アイコン',\n link: 'リンク',\n },\n // The annotation flags (`/F`).\n flags: {\n print: '印刷',\n hidden: '非表示',\n noView: '表示しない',\n toggleNoView: '「表示しない」を切り替え',\n readOnly: '読み取り専用',\n locked: 'ロック',\n lockedContents: '内容をロック',\n noZoom: 'ズームしない',\n noRotate: '回転しない',\n invisible: '不可視',\n },\n borderStyles: { solid: '実線', dashed: '破線', cloudy: '雲形' },\n lineEndings: {\n none: 'なし',\n square: '正方形',\n circle: '円',\n diamond: 'ひし形',\n openArrow: '開いた矢印',\n closedArrow: '閉じた矢印',\n butt: '垂直線',\n reverseOpenArrow: '逆向きの開いた矢印',\n reverseClosedArrow: '逆向きの閉じた矢印',\n slash: 'スラッシュ',\n },\n blendModes: {\n normal: '通常',\n multiply: '乗算',\n screen: 'スクリーン',\n overlay: 'オーバーレイ',\n darken: '比較(暗)',\n lighten: '比較(明)',\n colorDodge: '覆い焼きカラー',\n colorBurn: '焼き込みカラー',\n hardLight: 'ハードライト',\n softLight: 'ソフトライト',\n difference: '差の絶対値',\n exclusion: '除外',\n hue: '色相',\n saturation: '彩度',\n color: 'カラー',\n luminosity: '輝度',\n },\n // The standard PDF fonts, by their names: a language may keep them as they are.\n fonts: {\n courier: 'Courier',\n courierBold: 'Courier Bold',\n courierBoldOblique: 'Courier Bold Oblique',\n courierOblique: 'Courier Oblique',\n helvetica: 'Helvetica',\n helveticaBold: 'Helvetica Bold',\n helveticaBoldOblique: 'Helvetica Bold Oblique',\n helveticaOblique: 'Helvetica Oblique',\n timesRoman: 'Times Roman',\n timesBold: 'Times Bold',\n timesBoldItalic: 'Times Bold Italic',\n timesItalic: 'Times Italic',\n symbol: 'Symbol',\n zapfDingbats: 'Zapf Dingbats',\n },\n alignments: { left: '左揃え', center: '中央揃え', right: '右揃え' },\n noteIcons: {\n comment: 'コメント',\n key: 'キー',\n note: 'ノート',\n help: 'ヘルプ',\n newParagraph: '新しい段落',\n paragraph: '段落',\n insert: '挿入',\n },\n attachmentIcons: {\n pushPin: 'プッシュピン',\n paperclip: 'クリップ',\n graph: 'グラフ',\n tag: 'タグ',\n },\n },\n // A form field's settings, as the form plugin names them (`labelKey`).\n form: {\n settings: {\n name: '名前',\n tooltip: 'ツールヒント',\n required: '必須',\n readOnly: '読み取り専用',\n noExport: '書き出さない',\n defaultValue: 'デフォルト値',\n maxLength: '最大文字数',\n multiline: '複数行',\n password: 'パスワード',\n comb: '1 枠に 1 文字',\n radiosInUnison: '同じ値のボタンを連動してオンにする',\n keepOneOn: '常に 1 つをオンにする',\n options: 'オプション',\n allowTyping: '入力を許可',\n multiSelect: '複数選択',\n },\n },\n // A thumbnail's tooltip.\n thumbnails: { page: '{page} ページ' },\n // The form designer's sidebar: the fields by page, and the selected one's buttons.\n formDesign: {\n empty: 'フィールドはまだありません。フィールドツールを選んで追加してください。',\n page: '{page} ページ',\n allFields: 'すべてのフィールド',\n buttons: 'ボタン',\n boxes: 'ボックス',\n box: 'ボックス {number}',\n addButton: 'ボタンを追加',\n addBox: 'ボックスを追加',\n },\n // The style panel's own words around the properties.\n stylePanel: {\n mixed: '(混在)',\n // A color swatch that takes the color away.\n transparent: '透明',\n lineStart: '始点',\n lineEnd: '終点',\n empty: 'スタイルを編集するには、描画ツールを選ぶか注釈を選択してください。',\n selected: '{count} 件を選択中',\n toolDefaults: '{tool}のデフォルト',\n defaults: 'デフォルト',\n },\n // The flags section of the style panel: its title, and what each flag does.\n annotationFlags: {\n title: 'フラグ (/F)',\n print: 'ページの印刷時に含める',\n hidden: 'どこにも現れない:画面、クリック、印刷',\n noView: '画面では非表示、印刷はされる場合あり',\n toggleNoView: '「表示しない」注釈を選択中だけ表示',\n readOnly: '表示されるがクリックできない',\n locked: '移動・サイズ変更・削除・スタイル変更ができない',\n lockedContents: 'テキストは変更不可、形状は変更可',\n noZoom: '画面上のサイズが一定(左上を基準に固定)',\n noRotate: 'ページを回転しても正立したまま',\n invisible: '旧仕様:不明なサブタイプを非表示',\n },\n // The link editor over a selected annotation.\n linkEditor: {\n toUrl: 'URL へのリンク',\n url: 'URL',\n toPage: 'ページへのリンク',\n page: 'ページ',\n urlPlaceholder: 'https://…',\n pagePlaceholder: 'ページ番号',\n add: 'リンクを追加',\n update: 'リンクを更新',\n },\n demo: {\n starting: 'ビューアーを起動しています…',\n opening: '文書を開いています…',\n more: 'その他',\n searchPlaceholder: '文書を検索…',\n searchCaseSensitive: '大文字と小文字を区別',\n searchWholeWord: '単語単位',\n searchRegex: '正規表現',\n searchSearching: '検索中…',\n searchResults: '{count} 件の結果が見つかりました',\n searchNoResults: '結果なし',\n searchPrevious: '前の結果',\n searchNext: '次の結果',\n searchPage: '{page} ページ',\n commentsForbidden: 'この文書のコメントにはアクセスできません。',\n commentsLoading: 'コメントを読み込んでいます…',\n commentsError: 'コメントを読み込めませんでした。',\n commentsRetry: '再試行',\n commentsEmpty: 'コメントはまだありません。コメントツールでスレッドを開始できます。',\n commentsEmptyReadOnly: 'この文書にはコメントがありません。',\n commentsAnonymous: '不明',\n commentsPage: '{page} ページ',\n commentCount: 'コメント {count} 件',\n commentCountPlural: 'コメント {count} 件',\n commentsReply: '返信',\n commentsReplyPlaceholder: '返信…',\n commentsAddPlaceholder: 'コメントを追加…',\n commentsDelete: 'コメントを削除',\n commentsDeleteThread: 'スレッドを削除',\n commentsEdit: 'コメントを編集',\n commentsStatus: 'ステータス',\n commentsStatusNone: 'ステータスなし',\n commentsStatusAccepted: '承認',\n commentsStatusRejected: '却下',\n commentsStatusCancelled: 'キャンセル',\n commentsStatusCompleted: '完了',\n empty: 'このデモパネルにはまだ何もありません。',\n page: '{current} / {total} ページ',\n goToPage: 'ページへ移動',\n cancel: 'キャンセル',\n pageBadge: 'p.{page}',\n redactionEmpty:\n '保留中の墨消しはありません。墨消しツールでテキストや領域をマークしてください。',\n redactionArea: '領域のマーク',\n redactionText: 'テキストのマーク',\n redactionRemove: 'マークを削除',\n redactConfirmTitle: '墨消しを適用しますか?',\n redactConfirmBody:\n '{count} 個の墨消しマークの下にあるコンテンツを完全に削除します。この操作は取り消せません。',\n redactConfirmCollateral: 'ほかに {count} 個の注釈も削除されます。',\n redactApply: '適用',\n redactApplying: '適用中…',\n formatLabel: '書式',\n fieldSettingsTitle: 'フィールド',\n fieldOptionLabel: 'ラベル',\n fieldOptionValue: '値',\n fieldOptionAdd: 'オプションを追加',\n fieldOptionRemove: 'オプションを削除',\n fieldNone: 'なし',\n redactLabelTitle: '墨消しラベル',\n redactLabelPlaceholder: '例:墨消し済み',\n redactLabelRepeat: '領域全体にラベルを繰り返す',\n stampsAll: 'すべてのスタンプ',\n stampsLoading: 'スタンプを読み込んでいます…',\n stampsEmpty: 'スタンプはまだありません。PDF を読み込むと、各ページがスタンプになります。',\n stampsRemoveStamp: 'スタンプを削除',\n stampsArmedHint: 'ページをクリックしてスタンプを配置します。',\n stampsImport: 'PDF を読み込み…',\n stampsImporting: '読み込み中…',\n stampsImportHint:\n 'PDF をスタンプライブラリとして読み込みます。各ページが 1 つのスタンプになります。',\n stampsRemoveLibrary: 'ライブラリを削除',\n stampsExportLibrary: 'ライブラリを PDF として書き出し',\n stampsCustomLibrary: 'マイスタンプ',\n stampsCustomLabel: 'カスタムスタンプ',\n stampsError: '組み込みスタンプを読み込めませんでした。',\n stampsArmError: 'このスタンプを選択できませんでした。',\n stampsImportError: 'この PDF をスタンプライブラリとして読み込めませんでした。',\n quickStampsLabel: 'クイックスタンプ',\n signaturesEmpty: '署名はまだありません。署名に使う署名を作成してください。',\n signaturesNew: '新しい署名…',\n signaturesArmedHint:\n '署名フィールドをクリックして署名するか、ページ上の任意の場所をクリックしてマークを配置します。',\n signaturesTargetHint: '選択したフィールドに使うマークを選んでください。',\n signaturesInDocument: 'この文書内',\n signaturesNone: 'この文書には署名フィールドがありません。',\n signaturesValidate: '検証',\n signaturesValidating: '検証中…',\n signaturesSigned: '署名済み',\n signaturesUnsigned: '未署名',\n signaturesRename: '名前を変更',\n signaturesRemove: '削除',\n signaturesExport: 'PDF として書き出し',\n signaturesAddInitials: 'イニシャルを追加',\n signatureLabel: '署名',\n initialsLabel: 'イニシャル',\n makerTitle: '新しい署名',\n makerName: '名前',\n makerNamePlaceholder: 'お名前',\n makerDraw: '手書き',\n makerType: '入力',\n makerUpload: 'アップロード',\n makerTypePlaceholder: '名前を入力',\n makerFont: 'フォント',\n makerUploadHint: 'PNG、JPEG、または 1 ページの PDF を選択してください',\n makerClear: 'クリア',\n makerOptional: '(任意)',\n makerSave: '保存',\n makerSaving: '保存中…',\n makerError: '署名を保存できませんでした。',\n signTitle: 'このフィールドに署名',\n signReason: '理由',\n signLocation: '場所',\n signKind: '署名後に許可する変更',\n signKindApproval: '承認署名 — フォーム入力や追加の署名を行っても有効なまま',\n signKindCertifyAnnotate: '認証 — 注釈、フォーム入力、署名を許可',\n signKindCertifyFill: '認証 — フォーム入力と署名のみ許可',\n signKindCertifyLocked: '認証 — 変更を許可しない',\n signButton: '署名',\n signSigning: '署名中…',\n signFill: '署名せずに配置',\n signError: 'フィールドに署名できませんでした。',\n inspectTitle: '署名',\n inspectSigner: '署名者',\n inspectReason: '理由',\n inspectLocation: '場所',\n inspectTime: '日時',\n inspectIntegrity: '文書',\n inspectCryptography: '署名',\n inspectTrust: '署名者',\n inspectChanges: '署名後の変更',\n inspectDownload: '署名済みバージョンをダウンロード',\n verdictValid: '有効',\n verdictValidUntrusted: '有効(署名者は信頼されていません)',\n verdictInvalid: '無効 — 署名後に変更されています',\n verdictWillInvalidate: '有効(保存すると無効)',\n signaturesInvalidating:\n 'この変更により、文書を保存すると {field} が無効になります。署名を維持するには、変更を元に戻してください。',\n verdictIndeterminate: '検証できませんでした',\n verdictUnchanged: 'なし',\n verdictRestored: '変更後に復元',\n inspectLaterRevisions: '署名後の改訂',\n verdictPermitted: '許可',\n verdictForbidden: '不許可',\n },\n },\n};\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ja-DovEd6ts.cjs","names":[],"sources":["../src/locales/ja.ts"],"sourcesContent":["import type { Locale } from '@embedpdf/react/i18n';\n\n/**\n * Japanese pack, in the words Adobe Acrobat's Japanese edition uses. Machine-translated from the\n * English pack (`./en.ts`) and not yet reviewed by a native speaker.\n */\nexport const ja: Locale = {\n code: 'ja',\n name: '日本語',\n translations: {\n measurement: {\n title: '測定',\n distance: '距離',\n perimeter: '周囲長',\n area: '面積',\n areaUnit: '面積の単位',\n resetLabel: 'ラベルの位置をリセット',\n calibrate: '縮尺を校正',\n scale: '縮尺',\n custom: 'カスタム',\n unavailable: '使用不可',\n instructions:\n 'ドラッグして距離を測定し、クリックして寸法線を配置します。周囲長や面積は頂点をクリックし、ダブルクリックで終了します。面積の境界線は交差できません。使用できないプレビューは確定できません。キャンセルするには Escape キーを押します。ラベル自体をドラッグすると移動できます。',\n sessionOnly: 'このエンジンでは、ページの校正はこのセッション中のみ保持されます。',\n allPages: 'すべてのページに適用',\n recalculate: '既存の測定値を再計算',\n preset: '縮尺のプリセット',\n choosePreset: 'プリセットを選択',\n unit: '単位',\n precision: '精度',\n selection: '選択した測定',\n report: '更新 {updated} 件 · スキップ {skipped} 件 · 失敗 {failed} 件',\n knownLength: '描画した線が表す実際の長さを入力してください。',\n length: '既知の長さ',\n apply: '縮尺を適用',\n applying: '適用中…',\n },\n commands: {\n zoom: {\n in: '拡大',\n out: '縮小',\n fitPage: 'ページ全体を表示',\n fitWidth: '幅に合わせる',\n automatic: '自動',\n menu: 'ズーム',\n level: 'ズームレベル',\n p50: '50%',\n p100: '100%',\n p150: '150%',\n p200: '200%',\n p400: '400%',\n },\n pan: 'パン',\n pointer: '選択',\n comment: 'コメント',\n style: 'スタイル',\n menu: 'メニュー',\n viewControls: '表示コントロール',\n open: '開く',\n download: 'ダウンロード',\n print: '印刷',\n fullscreen: 'フルスクリーン',\n spread: {\n group: 'ページレイアウト',\n none: '単一ページ',\n odd: '見開き',\n even: '見開き(表紙)',\n },\n scroll: {\n group: 'スクロール',\n vertical: '縦方向',\n horizontal: '横方向',\n },\n rotate: {\n group: '回転',\n clockwise: '右に回転',\n counterclockwise: '左に回転',\n },\n mode: {\n measure: '測定',\n group: 'モード',\n view: '表示',\n annotate: '注釈',\n shapes: '図形',\n insert: '挿入',\n form: 'フォーム',\n redact: '墨消し',\n },\n annotate: {\n cancelCreation: '描画をキャンセル',\n highlight: 'ハイライト',\n strikeout: '取り消し線',\n underline: '下線',\n squiggly: '波線',\n ink: '描画',\n inkHighlight: '蛍光ペン',\n text: 'テキストボックス',\n insertText: 'テキストを挿入',\n replaceText: 'テキストを置換',\n callout: '引き出し線',\n note: 'コメント',\n link: 'リンク',\n gotoLink: 'リンク先へ移動',\n removeLink: 'リンクを削除',\n delete: '削除',\n group: 'グループ化',\n ungroup: 'グループ解除',\n stampFromSelection: 'スタンプを作成',\n strip: '注釈の操作',\n },\n selection: {\n copy: 'コピー',\n strip: 'テキスト選択の操作',\n },\n shapes: {\n rectangle: '長方形',\n circle: '楕円',\n line: '線',\n arrow: '矢印',\n polygon: '多角形',\n polyline: '折れ線',\n },\n insert: {\n stamp: 'スタンプ',\n attachment: 'ファイルを添付',\n signature: '署名',\n image: '画像',\n },\n form: {\n textfield: 'テキストフィールド',\n checkbox: 'チェックボックス',\n radio: 'ラジオボタン',\n select: 'ドロップダウン',\n listbox: 'リストボックス',\n button: 'ボタン',\n signature: '署名フィールド',\n // The Form mode's design switch, which opens the form designer's sidebar.\n design: 'フォームデザイン',\n },\n redact: {\n mark: '墨消し用にマーク',\n applyAll: '墨消しを適用',\n clearAll: 'マークを消去',\n },\n undo: '元に戻す',\n redo: 'やり直し',\n page: {\n next: '次のページ',\n previous: '前のページ',\n first: '最初のページ',\n last: '最後のページ',\n goTo: 'ページへ移動',\n },\n find: '検索',\n shortcuts: 'キーボードショートカット',\n notAllowed: {\n default: '{label}は許可されていません',\n 'annotations-create': '注釈の追加は許可されていません',\n 'doc-annotate-modify': '注釈の変更は許可されていません',\n 'doc-annotate-read': '注釈の表示は許可されていません',\n 'doc-download': 'ダウンロードは許可されていません',\n 'doc-forms-modify': 'フォームフィールドの編集は許可されていません',\n 'doc-print': '印刷は許可されていません',\n 'doc-text-copy': 'コピーは許可されていません',\n 'doc-text-search': '検索は許可されていません',\n },\n turnedOff: '{label}は使用できません',\n },\n passwordPrompt: {\n title: 'パスワードが必要です',\n required: 'この文書はパスワードで保護されています。開くにはパスワードを入力してください。',\n incorrect: 'パスワードが正しくありません。もう一度お試しください。',\n incorrectWarning: 'パスワードが正しくありません',\n label: 'パスワード',\n placeholder: 'パスワードを入力',\n cancel: 'キャンセル',\n open: '開く',\n opening: '開いています…',\n },\n dropToOpen: {\n label: 'PDF をドロップして開く',\n },\n documentError: {\n title: '文書を開けませんでした',\n unknown: '文書を開くことができませんでした。',\n notFound: 'ファイルが見つかりません。',\n notAllowed: 'この文書にアクセスする権限がありません。',\n damaged: 'このファイルは PDF ではないか、破損しています。',\n unsupported: 'このビューアーではこの種類の文書を開けません。',\n retry: '再試行',\n close: '文書を閉じる',\n },\n tabs: {\n close: '{name} を閉じる',\n loading: '読み込み中',\n untitled: '文書 {id}',\n },\n closeUnsaved: {\n title: '保存せずに閉じますか?',\n body: '「{name}」にはダウンロードされていない変更があります。変更は失われます。',\n cancel: 'キャンセル',\n close: '保存せずに閉じる',\n },\n viewOnly: {\n label: '表示のみ',\n turnedOff: 'この文書を変更するツールはオフになっています',\n notAllowed: 'この文書は閲覧できますが、変更はできません',\n },\n panel: {\n close: '閉じる',\n resize: '{title}のサイズを変更',\n },\n menu: {\n back: '戻る',\n },\n shortcuts: {\n document: '文書',\n viewing: '表示',\n editing: '編集',\n other: 'その他',\n },\n goToPage: {\n go: '移動',\n },\n panels: {\n thumbnails: 'サムネール',\n outline: 'しおり',\n attachments: '添付ファイル',\n search: '検索',\n comments: 'コメント',\n style: 'スタイル',\n stamps: 'スタンプ',\n signatures: '署名',\n redaction: '墨消し',\n measurement: '測定',\n formDesign: 'フォームデザイン',\n switch: 'パネルを切り替え',\n },\n annotation: {\n comment: 'コメント',\n highlight: 'ハイライト',\n underline: '下線',\n squiggly: '波線',\n strikeout: '取り消し線',\n square: '長方形',\n circle: '楕円',\n line: '線',\n polygon: '多角形',\n polyline: '折れ線',\n ink: 'フリーハンド',\n freeText: 'テキストボックス',\n stamp: 'スタンプ',\n caret: 'キャレット',\n redact: '墨消し',\n fileAttachment: '添付ファイル',\n // The style panel's labels, as the annotation kinds name them (`labelKey`), by wording:\n // one field is called different things by different kinds.\n style: {\n opacity: '不透明度',\n stroke: '線',\n fill: '塗り',\n color: 'カラー',\n strokeWidth: '線の太さ',\n border: '境界線',\n borderStyle: '境界線のスタイル',\n borderColor: '境界線のカラー',\n borderWidth: '境界線の太さ',\n background: '背景',\n outline: '輪郭',\n lineEndings: '線の端',\n blendMode: '描画モード',\n font: 'フォント',\n fontSize: 'フォントサイズ',\n textColor: 'テキストのカラー',\n bold: '太字',\n italic: '斜体',\n underline: '下線',\n align: '揃え',\n alignment: '配置',\n label: 'ラベル',\n labelFont: 'ラベルのフォント',\n labelSize: 'ラベルのサイズ',\n labelColor: 'ラベルのカラー',\n icon: 'アイコン',\n link: 'リンク',\n },\n // The annotation flags (`/F`).\n flags: {\n print: '印刷',\n hidden: '非表示',\n noView: '表示しない',\n toggleNoView: '「表示しない」を切り替え',\n readOnly: '読み取り専用',\n locked: 'ロック',\n lockedContents: '内容をロック',\n noZoom: 'ズームしない',\n noRotate: '回転しない',\n invisible: '不可視',\n },\n borderStyles: { solid: '実線', dashed: '破線', cloudy: '雲形' },\n lineEndings: {\n none: 'なし',\n square: '正方形',\n circle: '円',\n diamond: 'ひし形',\n openArrow: '開いた矢印',\n closedArrow: '閉じた矢印',\n butt: '垂直線',\n reverseOpenArrow: '逆向きの開いた矢印',\n reverseClosedArrow: '逆向きの閉じた矢印',\n slash: 'スラッシュ',\n },\n blendModes: {\n normal: '通常',\n multiply: '乗算',\n screen: 'スクリーン',\n overlay: 'オーバーレイ',\n darken: '比較(暗)',\n lighten: '比較(明)',\n colorDodge: '覆い焼きカラー',\n colorBurn: '焼き込みカラー',\n hardLight: 'ハードライト',\n softLight: 'ソフトライト',\n difference: '差の絶対値',\n exclusion: '除外',\n hue: '色相',\n saturation: '彩度',\n color: 'カラー',\n luminosity: '輝度',\n },\n // The standard PDF fonts, by their names: a language may keep them as they are.\n fonts: {\n courier: 'Courier',\n courierBold: 'Courier Bold',\n courierBoldOblique: 'Courier Bold Oblique',\n courierOblique: 'Courier Oblique',\n helvetica: 'Helvetica',\n helveticaBold: 'Helvetica Bold',\n helveticaBoldOblique: 'Helvetica Bold Oblique',\n helveticaOblique: 'Helvetica Oblique',\n timesRoman: 'Times Roman',\n timesBold: 'Times Bold',\n timesBoldItalic: 'Times Bold Italic',\n timesItalic: 'Times Italic',\n symbol: 'Symbol',\n zapfDingbats: 'Zapf Dingbats',\n },\n alignments: { left: '左揃え', center: '中央揃え', right: '右揃え' },\n noteIcons: {\n comment: 'コメント',\n key: 'キー',\n note: 'ノート',\n help: 'ヘルプ',\n newParagraph: '新しい段落',\n paragraph: '段落',\n insert: '挿入',\n },\n attachmentIcons: {\n pushPin: 'プッシュピン',\n paperclip: 'クリップ',\n graph: 'グラフ',\n tag: 'タグ',\n },\n },\n // A form field's settings, as the form plugin names them (`labelKey`).\n form: {\n settings: {\n name: '名前',\n tooltip: 'ツールヒント',\n required: '必須',\n readOnly: '読み取り専用',\n noExport: '書き出さない',\n defaultValue: 'デフォルト値',\n maxLength: '最大文字数',\n multiline: '複数行',\n password: 'パスワード',\n comb: '1 枠に 1 文字',\n radiosInUnison: '同じ値のボタンを連動してオンにする',\n keepOneOn: '常に 1 つをオンにする',\n options: 'オプション',\n allowTyping: '入力を許可',\n multiSelect: '複数選択',\n },\n },\n // A thumbnail's tooltip.\n thumbnails: { page: '{page} ページ' },\n // The form designer's sidebar: the fields by page, and the selected one's buttons.\n formDesign: {\n empty: 'フィールドはまだありません。フィールドツールを選んで追加してください。',\n page: '{page} ページ',\n allFields: 'すべてのフィールド',\n buttons: 'ボタン',\n boxes: 'ボックス',\n box: 'ボックス {number}',\n addButton: 'ボタンを追加',\n addBox: 'ボックスを追加',\n },\n // The style panel's own words around the properties.\n stylePanel: {\n mixed: '(混在)',\n // A color swatch that takes the color away.\n transparent: '透明',\n lineStart: '始点',\n lineEnd: '終点',\n empty: 'スタイルを編集するには、描画ツールを選ぶか注釈を選択してください。',\n selected: '{count} 件を選択中',\n toolDefaults: '{tool}のデフォルト',\n defaults: 'デフォルト',\n },\n // The flags section of the style panel: its title, and what each flag does.\n annotationFlags: {\n title: 'フラグ (/F)',\n print: 'ページの印刷時に含める',\n hidden: 'どこにも現れない:画面、クリック、印刷',\n noView: '画面では非表示、印刷はされる場合あり',\n toggleNoView: '「表示しない」注釈を選択中だけ表示',\n readOnly: '表示されるがクリックできない',\n locked: '移動・サイズ変更・削除・スタイル変更ができない',\n lockedContents: 'テキストは変更不可、形状は変更可',\n noZoom: '画面上のサイズが一定(左上を基準に固定)',\n noRotate: 'ページを回転しても正立したまま',\n invisible: '旧仕様:不明なサブタイプを非表示',\n },\n // The link editor over a selected annotation.\n linkEditor: {\n toUrl: 'URL へのリンク',\n url: 'URL',\n toPage: 'ページへのリンク',\n page: 'ページ',\n urlPlaceholder: 'https://…',\n pagePlaceholder: 'ページ番号',\n add: 'リンクを追加',\n update: 'リンクを更新',\n },\n demo: {\n starting: 'ビューアーを起動しています…',\n opening: '文書を開いています…',\n more: 'その他',\n searchPlaceholder: '文書を検索…',\n searchCaseSensitive: '大文字と小文字を区別',\n searchWholeWord: '単語単位',\n searchRegex: '正規表現',\n searchSearching: '検索中…',\n searchResults: '{count} 件の結果が見つかりました',\n searchNoResults: '結果なし',\n searchPrevious: '前の結果',\n searchNext: '次の結果',\n searchPage: '{page} ページ',\n commentsForbidden: 'この文書のコメントにはアクセスできません。',\n commentsLoading: 'コメントを読み込んでいます…',\n commentsError: 'コメントを読み込めませんでした。',\n commentsRetry: '再試行',\n commentsEmpty: 'コメントはまだありません。コメントツールでスレッドを開始できます。',\n commentsEmptyReadOnly: 'この文書にはコメントがありません。',\n commentsAnonymous: '不明',\n commentsPage: '{page} ページ',\n commentCount: 'コメント {count} 件',\n commentCountPlural: 'コメント {count} 件',\n commentsReply: '返信',\n commentsReplyPlaceholder: '返信…',\n commentsAddPlaceholder: 'コメントを追加…',\n commentsDelete: 'コメントを削除',\n commentsDeleteThread: 'スレッドを削除',\n commentsEdit: 'コメントを編集',\n commentsStatus: 'ステータス',\n commentsStatusNone: 'ステータスなし',\n commentsStatusAccepted: '承認',\n commentsStatusRejected: '却下',\n commentsStatusCancelled: 'キャンセル',\n commentsStatusCompleted: '完了',\n empty: 'このデモパネルにはまだ何もありません。',\n page: '{current} / {total} ページ',\n goToPage: 'ページへ移動',\n cancel: 'キャンセル',\n pageBadge: 'p.{page}',\n redactionEmpty:\n '保留中の墨消しはありません。墨消しツールでテキストや領域をマークしてください。',\n redactionArea: '領域のマーク',\n redactionText: 'テキストのマーク',\n redactionRemove: 'マークを削除',\n redactConfirmTitle: '墨消しを適用しますか?',\n redactConfirmBody:\n '{count} 個の墨消しマークの下にあるコンテンツを完全に削除します。この操作は取り消せません。',\n redactConfirmCollateral: 'ほかに {count} 個の注釈も削除されます。',\n redactApply: '適用',\n redactApplying: '適用中…',\n formatLabel: '書式',\n fieldSettingsTitle: 'フィールド',\n fieldOptionLabel: 'ラベル',\n fieldOptionValue: '値',\n fieldOptionAdd: 'オプションを追加',\n fieldOptionRemove: 'オプションを削除',\n fieldNone: 'なし',\n redactLabelTitle: '墨消しラベル',\n redactLabelPlaceholder: '例:墨消し済み',\n redactLabelRepeat: '領域全体にラベルを繰り返す',\n stampsAll: 'すべてのスタンプ',\n stampsLoading: 'スタンプを読み込んでいます…',\n stampsEmpty: 'スタンプはまだありません。PDF を読み込むと、各ページがスタンプになります。',\n stampsRemoveStamp: 'スタンプを削除',\n stampsArmedHint: 'ページをクリックしてスタンプを配置します。',\n stampsImport: 'PDF を読み込み…',\n stampsImporting: '読み込み中…',\n stampsImportHint:\n 'PDF をスタンプライブラリとして読み込みます。各ページが 1 つのスタンプになります。',\n stampsRemoveLibrary: 'ライブラリを削除',\n stampsExportLibrary: 'ライブラリを PDF として書き出し',\n stampsCustomLibrary: 'マイスタンプ',\n stampsCustomLabel: 'カスタムスタンプ',\n stampsError: '組み込みスタンプを読み込めませんでした。',\n stampsArmError: 'このスタンプを選択できませんでした。',\n stampsImportError: 'この PDF をスタンプライブラリとして読み込めませんでした。',\n quickStampsLabel: 'クイックスタンプ',\n signaturesEmpty: '署名はまだありません。署名に使う署名を作成してください。',\n signaturesNew: '新しい署名…',\n signaturesArmedHint:\n '署名フィールドをクリックして署名するか、ページ上の任意の場所をクリックしてマークを配置します。',\n signaturesTargetHint: '選択したフィールドに使うマークを選んでください。',\n signaturesInDocument: 'この文書内',\n signaturesNone: 'この文書には署名フィールドがありません。',\n signaturesValidate: '検証',\n signaturesValidating: '検証中…',\n signaturesSigned: '署名済み',\n signaturesUnsigned: '未署名',\n signaturesRename: '名前を変更',\n signaturesRemove: '削除',\n signaturesExport: 'PDF として書き出し',\n signaturesAddInitials: 'イニシャルを追加',\n signatureLabel: '署名',\n initialsLabel: 'イニシャル',\n makerTitle: '新しい署名',\n makerName: '名前',\n makerNamePlaceholder: 'お名前',\n makerDraw: '手書き',\n makerType: '入力',\n makerUpload: 'アップロード',\n makerTypePlaceholder: '名前を入力',\n makerFont: 'フォント',\n makerUploadHint: 'PNG、JPEG、または 1 ページの PDF を選択してください',\n makerClear: 'クリア',\n makerOptional: '(任意)',\n makerSave: '保存',\n makerSaving: '保存中…',\n makerError: '署名を保存できませんでした。',\n signTitle: 'このフィールドに署名',\n signReason: '理由',\n signLocation: '場所',\n signKind: '署名後に許可する変更',\n signKindApproval: '承認署名 — フォーム入力や追加の署名を行っても有効なまま',\n signKindCertifyAnnotate: '認証 — 注釈、フォーム入力、署名を許可',\n signKindCertifyFill: '認証 — フォーム入力と署名のみ許可',\n signKindCertifyLocked: '認証 — 変更を許可しない',\n signButton: '署名',\n signSigning: '署名中…',\n signFill: '署名せずに配置',\n signError: 'フィールドに署名できませんでした。',\n inspectTitle: '署名',\n inspectSigner: '署名者',\n inspectReason: '理由',\n inspectLocation: '場所',\n inspectTime: '日時',\n inspectIntegrity: '文書',\n inspectCryptography: '署名',\n inspectTrust: '署名者',\n inspectChanges: '署名後の変更',\n inspectDownload: '署名済みバージョンをダウンロード',\n verdictValid: '有効',\n verdictValidUntrusted: '有効(署名者は信頼されていません)',\n verdictInvalid: '無効 — 署名後に変更されています',\n verdictWillInvalidate: '有効(保存すると無効)',\n signaturesInvalidating:\n 'この変更により、文書を保存すると {field} が無効になります。署名を維持するには、変更を元に戻してください。',\n verdictIndeterminate: '検証できませんでした',\n verdictUnchanged: 'なし',\n verdictRestored: '変更後に復元',\n inspectLaterRevisions: '署名後の改訂',\n verdictPermitted: '許可',\n verdictForbidden: '不許可',\n },\n },\n};\n"],"mappings":"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"}