UNPKG

@compdfkit_pdf_sdk/react_native

Version:

ComPDFKit for React Native is a comprehensive SDK that allows you to quickly add PDF functionality to Android, iOS, and React Native applications.

489 lines 19.8 kB
"use strict"; /** * Copyright © 2014-2026 PDF Technologies, Inc. All Rights Reserved. * * THIS SOURCE CODE AND ANY ACCOMPANYING DOCUMENTATION ARE PROTECTED BY INTERNATIONAL COPYRIGHT LAW * AND MAY NOT BE RESOLD OR REDISTRIBUTED. USAGE IS BOUND TO THE ComPDFKit LICENSE AGREEMENT. * UNAUTHORIZED REPRODUCTION OR DISTRIBUTION IS SUBJECT TO CIVIL AND CRIMINAL PENALTIES. * This notice may not be removed from this file. */ Object.defineProperty(exports, "__esModule", { value: true }); exports.getDefaultConfig = getDefaultConfig; const react_native_1 = require("react-native"); const CPDFOptions_1 = require("../configuration/CPDFOptions"); const ConfigHelpers_1 = require("./ConfigHelpers"); const DEFAULT_ANDROID_TOOLBAR_LEFT = []; const DEFAULT_ANDROID_TOOLBAR_RIGHT = [ CPDFOptions_1.CPDFToolbarAction.THUMBNAIL, CPDFOptions_1.CPDFToolbarAction.SEARCH, CPDFOptions_1.CPDFToolbarAction.BOTA, CPDFOptions_1.CPDFToolbarAction.MENU, ]; const DEFAULT_IOS_TOOLBAR_LEFT = [ CPDFOptions_1.CPDFToolbarAction.BACK, CPDFOptions_1.CPDFToolbarAction.THUMBNAIL, ]; const DEFAULT_IOS_TOOLBAR_RIGHT = [ CPDFOptions_1.CPDFToolbarAction.SEARCH, CPDFOptions_1.CPDFToolbarAction.BOTA, CPDFOptions_1.CPDFToolbarAction.MENU, ]; const DEFAULT_IOS_UI_STYLE = { selectTextColor: "#00000033", bookmarkIcon: "", icons: { selectTextIcon: "", selectTextLeftIcon: "", selectTextRightIcon: "", rotationAnnotationIcon: "", }, displayPageRect: { fillColor: "#1460F34D", borderColor: "#6499FF", borderWidth: 5, borderDashPattern: [10, 0], }, screenshot: { outsideColor: "#00000000", fillColor: "#00000000", borderColor: "#6499FF", borderWidth: 2, borderDashPattern: [8, 5], }, formPreview: { style: "fill", color: "#1460F34D", strokeWidth: 2, }, defaultBorderStyle: { borderColor: "#888888FF", borderWidth: 1, borderDashPattern: [8, 5], }, focusBorderStyle: { nodeColor: "#6499FF", borderColor: "#6499FF", borderWidth: 1, borderDashPattern: [8, 5], }, cropImageStyle: { borderColor: "#6499FF", borderWidth: 2, borderDashPattern: [8, 5], }, }; const DEFAULT_ANDROID_UI_STYLE = { ...DEFAULT_IOS_UI_STYLE, defaultBorderStyle: { borderColor: "#888888FF", borderWidth: 2, borderDashPattern: [20, 10], }, focusBorderStyle: { nodeColor: "#6499FF", borderColor: "#6499FF", borderWidth: 2, borderDashPattern: [20, 10], }, cropImageStyle: { borderColor: "#6499FF", borderWidth: 2, borderDashPattern: [20, 10], }, }; function getDefaultConfig(overrides = {}) { const isAndroid = react_native_1.Platform.OS === "android"; const defaultConfig = { modeConfig: { initialViewMode: CPDFOptions_1.CPDFViewMode.VIEWER, uiVisibilityMode: "automatic", availableViewModes: [ CPDFOptions_1.CPDFViewMode.VIEWER, CPDFOptions_1.CPDFViewMode.ANNOTATIONS, CPDFOptions_1.CPDFViewMode.CONTENT_EDITOR, CPDFOptions_1.CPDFViewMode.FORMS, CPDFOptions_1.CPDFViewMode.SIGNATURES, ], }, toolbarConfig: { mainToolbarVisible: true, mainToolbarTitleVisible: true, annotationToolbarVisible: true, showInkToggleButton: true, formToolbarVisible: true, toolbarLeftItems: isAndroid ? DEFAULT_ANDROID_TOOLBAR_LEFT : DEFAULT_IOS_TOOLBAR_LEFT, toolbarRightItems: isAndroid ? DEFAULT_ANDROID_TOOLBAR_RIGHT : DEFAULT_IOS_TOOLBAR_RIGHT, availableMenus: [ CPDFOptions_1.CPDFToolbarAction.VIEW_SETTINGS, CPDFOptions_1.CPDFToolbarAction.DOCUMENT_EDITOR, CPDFOptions_1.CPDFToolbarAction.DOCUMENT_INFO, CPDFOptions_1.CPDFToolbarAction.WATERMARK, CPDFOptions_1.CPDFToolbarAction.SECURITY, CPDFOptions_1.CPDFToolbarAction.FLATTENED, CPDFOptions_1.CPDFToolbarAction.SAVE, CPDFOptions_1.CPDFToolbarAction.SHARE, CPDFOptions_1.CPDFToolbarAction.OPEN_DOCUMENT, CPDFOptions_1.CPDFToolbarAction.SNIP, ], }, annotationsConfig: { annotationAuthor: "", autoShowSignPicker: true, autoShowLinkDialog: true, autoShowNoteEditDialog: true, autoShowPicPicker: true, autoShowStampPicker: true, interceptLinkAction: false, interceptNoteAction: false, availableTypes: [ CPDFOptions_1.CPDFAnnotationType.NOTE, CPDFOptions_1.CPDFAnnotationType.HIGHLIGHT, CPDFOptions_1.CPDFAnnotationType.UNDERLINE, CPDFOptions_1.CPDFAnnotationType.SQUIGGLY, CPDFOptions_1.CPDFAnnotationType.STRIKEOUT, CPDFOptions_1.CPDFAnnotationType.INK, CPDFOptions_1.CPDFAnnotationType.INK_ERASER, CPDFOptions_1.CPDFAnnotationType.PENCIL, CPDFOptions_1.CPDFAnnotationType.CIRCLE, CPDFOptions_1.CPDFAnnotationType.SQUARE, CPDFOptions_1.CPDFAnnotationType.ARROW, CPDFOptions_1.CPDFAnnotationType.LINE, CPDFOptions_1.CPDFAnnotationType.FREETEXT, CPDFOptions_1.CPDFAnnotationType.SIGNATURE, CPDFOptions_1.CPDFAnnotationType.STAMP, CPDFOptions_1.CPDFAnnotationType.PICTURES, CPDFOptions_1.CPDFAnnotationType.LINK, CPDFOptions_1.CPDFAnnotationType.SOUND, ], availableTools: [ CPDFOptions_1.CPDFConfigTool.SETTING, CPDFOptions_1.CPDFConfigTool.UNDO, CPDFOptions_1.CPDFConfigTool.REDO, ], initAttribute: { note: { type: "note", color: "#1460F3", alpha: 255, }, highlight: { type: "highlight", color: "#1460F3", alpha: 77, }, underline: { type: "underline", color: "#1460F3", alpha: 77, }, squiggly: { type: "squiggly", color: "#1460F3", alpha: 77, }, strikeout: { type: "strikeout", color: "#1460F3", alpha: 77, }, ink: { type: "ink", color: "#1460F3", alpha: 100, borderWidth: 10, }, square: { type: "square", fillColor: "#1460F3", borderColor: "#000000", colorAlpha: 128, borderWidth: 2, borderStyle: { style: CPDFOptions_1.CPDFBorderStyle.SOLID, dashGap: 0.0, }, }, circle: { type: "circle", fillColor: "#1460F3", borderColor: "#000000", colorAlpha: 128, borderWidth: 2, borderStyle: { style: CPDFOptions_1.CPDFBorderStyle.SOLID, dashGap: 0.0, }, }, line: { type: "line", borderColor: "#1460F3", borderAlpha: 100, borderWidth: 5, borderStyle: { style: CPDFOptions_1.CPDFBorderStyle.SOLID, dashGap: 0.0, }, }, arrow: { type: "arrow", borderColor: "#1460F3", borderAlpha: 100, borderWidth: 5, borderStyle: { style: CPDFOptions_1.CPDFBorderStyle.SOLID, dashGap: 0.0, }, startLineType: CPDFOptions_1.CPDFLineType.NONE, tailLineType: CPDFOptions_1.CPDFLineType.OPEN_ARROW, }, freeText: { type: "freetext", fontColor: "#000000", fontColorAlpha: 255, fontSize: 30, alignment: CPDFOptions_1.CPDFAlignment.LEFT, familyName: "Helvetica", styleName: "Regular", }, }, }, contentEditorConfig: { availableTypes: [ CPDFOptions_1.CPDFContentEditorType.EDITOR_TEXT, CPDFOptions_1.CPDFContentEditorType.EDITOR_IMAGE, ], availableTools: [ CPDFOptions_1.CPDFConfigTool.SETTING, CPDFOptions_1.CPDFConfigTool.UNDO, CPDFOptions_1.CPDFConfigTool.REDO, ], initAttribute: { text: { fontColor: "#000000", fontColorAlpha: 255, fontSize: 30, familyName: "Helvetica", styleName: "Regular", alignment: CPDFOptions_1.CPDFAlignment.LEFT, }, }, }, formsConfig: { showCreateComboBoxOptionsDialog: true, showCreateListBoxOptionsDialog: true, showCreatePushButtonOptionsDialog: true, interceptAllFormWidgetActions: false, interceptFormWidgetActions: [], availableTypes: [ CPDFOptions_1.CPDFWidgetType.TEXT_FIELD, CPDFOptions_1.CPDFWidgetType.CHECKBOX, CPDFOptions_1.CPDFWidgetType.RADIO_BUTTON, CPDFOptions_1.CPDFWidgetType.LISTBOX, CPDFOptions_1.CPDFWidgetType.COMBOBOX, CPDFOptions_1.CPDFWidgetType.SIGNATURES_FIELDS, CPDFOptions_1.CPDFWidgetType.PUSH_BUTTON, ], availableTools: [CPDFOptions_1.CPDFConfigTool.UNDO, CPDFOptions_1.CPDFConfigTool.REDO], initAttribute: { textField: { type: "textField", fillColor: "#DDE9FF", borderColor: "#1460F3", borderWidth: 2, fontColor: "#000000", fontSize: 20, alignment: CPDFOptions_1.CPDFAlignment.LEFT, multiline: true, familyName: "Helvetica", styleName: "Regular", }, checkBox: { type: "checkBox", fillColor: "#DDE9FF", borderColor: "#1460F3", borderWidth: 2, checkedColor: "#43474D", isChecked: false, checkedStyle: CPDFOptions_1.CPDFCheckStyle.CHECK, }, radioButton: { type: "radioButton", fillColor: "#DDE9FF", borderColor: "#1460F3", borderWidth: 2, checkedColor: "#43474D", isChecked: false, checkedStyle: CPDFOptions_1.CPDFCheckStyle.CIRCLE, }, listBox: { type: "listBox", fillColor: "#DDE9FF", borderColor: "#1460F3", borderWidth: 2, fontColor: "#000000", fontSize: 20, familyName: "Helvetica", styleName: "Regular", }, comboBox: { type: "comboBox", fillColor: "#DDE9FF", borderColor: "#1460F3", borderWidth: 2, fontColor: "#000000", fontSize: 20, familyName: "Helvetica", styleName: "Regular", }, pushButton: { type: "pushButton", fillColor: "#DDE9FF", borderColor: "#1460F3", borderWidth: 2, fontColor: "#000000", fontSize: 20, title: "Button", familyName: "Helvetica", styleName: "Regular", }, signaturesFields: { type: "signaturesFields", fillColor: "#DDE9FF", borderColor: "#000000", borderWidth: 2, }, }, }, readerViewConfig: { linkHighlight: true, formFieldHighlight: true, displayMode: CPDFOptions_1.CPDFDisplayMode.SINGLE_PAGE, continueMode: true, verticalMode: true, cropMode: false, themes: CPDFOptions_1.CPDFThemes.LIGHT, enableSliderBar: true, enablePageIndicator: true, pageScale: 1.0, margins: [0, 0, 0, 0], pageSpacing: 10, pageSameWidth: true, annotationsVisible: true, enableCreateEditTextInput: true, enableCreateImagePickerDialog: true, enableDoubleTapZoom: false, uiStyle: isAndroid ? DEFAULT_ANDROID_UI_STYLE : DEFAULT_IOS_UI_STYLE, }, global: { themeMode: CPDFOptions_1.CPDFThemeMode.SYSTEM, fileSaveExtraFontSubset: true, useSaveIncremental: true, watermark: { types: ["text", "image"], saveAsNewFile: true, text: "Watermark", textSize: 40, textColor: "#000000", opacity: 255, rotation: -45, isFront: false, isTilePage: false, }, signatureType: "manual", enableExitSaveTips: false, thumbnail: { editMode: true, }, enableErrorTips: true, bota: { tabs: ["outline", "bookmark", "annotations"], menus: { annotations: { global: (0, ConfigHelpers_1.botaMenus)("importAnnotation", "exportAnnotation", "removeAllAnnotation", "removeAllReply"), item: (0, ConfigHelpers_1.botaMenus)({ id: "reviewStatus", subMenus: [ "accepted", "rejected", "cancelled", "completed", "none", ], }, "markedStatus", { id: "more", subMenus: ["addReply", "viewReply", "delete"] }), }, }, }, search: { normalKeyword: { borderColor: "#00000000", fillColor: "#FFFF0077", }, focusKeyword: { borderColor: "#00000000", fillColor: "#FD7338CC", }, }, pageEditor: { menus: [ "insertPage", "replacePage", "extractPage", "copyPage", "rotatePage", "deletePage", ], }, pencilMenus: ["touch", "discard", "save"], }, contextMenuConfig: { fontSize: 14, padding: [0, 0, 0, 0], iconSize: 36, global: { screenshot: (0, ConfigHelpers_1.menus)("exit", "share"), }, viewMode: { textSelect: (0, ConfigHelpers_1.menus)("copy"), }, annotationMode: { textSelect: (0, ConfigHelpers_1.menus)("copy", "highlight", "underline", "strikeout", "squiggly"), longPressContent: (0, ConfigHelpers_1.menus)("paste", "note", "textBox", "stamp", "image"), markupContent: (0, ConfigHelpers_1.menus)("properties", "note", "reply", "viewReply", "delete"), soundContent: (0, ConfigHelpers_1.menus)("reply", "viewReply", "play", "record", "delete"), inkContent: (0, ConfigHelpers_1.menus)("properties", "note", "reply", "viewReply", "delete"), shapeContent: (0, ConfigHelpers_1.menus)("properties", "note", "reply", "viewReply", "delete"), freeTextContent: (0, ConfigHelpers_1.menus)("properties", "edit", "reply", "viewReply", "delete"), signStampContent: (0, ConfigHelpers_1.menus)("signHere", "delete", "rotate"), stampContent: (0, ConfigHelpers_1.menus)("note", "reply", "viewReply", "delete", "rotate"), linkContent: (0, ConfigHelpers_1.menus)("edit", "delete"), }, contentEditorMode: { editTextAreaContent: (0, ConfigHelpers_1.menus)("properties", "edit", "cut", "copy", "delete"), editSelectTextContent: (0, ConfigHelpers_1.menus)("properties", { key: "opacity", subItems: ["25%", "50%", "75%", "100%"] }, "cut", "copy", "delete"), editTextContent: (0, ConfigHelpers_1.menus)("select", "selectAll", "paste"), imageAreaContent: (0, ConfigHelpers_1.menus)("properties", "rotateLeft", "rotateRight", "replace", "export", { key: "opacity", subItems: ["25%", "50%", "75%", "100%"] }, "flipHorizontal", "flipVertical", "crop", "delete", "copy", "cut"), imageCropMode: (0, ConfigHelpers_1.menus)("done", "cancel"), editPathContent: (0, ConfigHelpers_1.menus)("delete"), longPressWithEditTextMode: (0, ConfigHelpers_1.menus)("addText", "paste", "keepSourceFormatingPaste"), longPressWithEditImageMode: (0, ConfigHelpers_1.menus)("addImages", "paste"), longPressWithAllMode: (0, ConfigHelpers_1.menus)("paste", "keepSourceFormatingPaste"), searchReplace: (0, ConfigHelpers_1.menus)("replace"), }, formMode: { textField: (0, ConfigHelpers_1.menus)("properties", "delete"), checkBox: (0, ConfigHelpers_1.menus)("properties", "delete"), radioButton: (0, ConfigHelpers_1.menus)("properties", "delete"), listBox: (0, ConfigHelpers_1.menus)("options", "properties", "delete"), comboBox: (0, ConfigHelpers_1.menus)("options", "properties", "delete"), signatureField: (0, ConfigHelpers_1.menus)("startToSign", "delete"), pushButton: (0, ConfigHelpers_1.menus)("options", "properties", "delete"), }, }, }; return JSON.stringify((0, ConfigHelpers_1.mergeDeep)(defaultConfig, overrides), null, 2); } //# sourceMappingURL=DefaultConfig.js.map