@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.
41 lines • 2.44 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CPDFWidgetFactory = void 0;
/**
* 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.
*/
const CPDFOptions_1 = require("../../configuration/CPDFOptions");
const CPDFCheckboxWidget_1 = require("./CPDFCheckboxWidget");
const CPDFComboboxWidget_1 = require("./CPDFComboboxWidget");
const CPDFListboxWidget_1 = require("./CPDFListboxWidget");
const CPDFPushbuttonWidget_1 = require("./CPDFPushbuttonWidget");
const CPDFRadiobuttonWidget_1 = require("./CPDFRadiobuttonWidget");
const CPDFSignatureWidget_1 = require("./CPDFSignatureWidget");
const CPDFTextWidget_1 = require("./CPDFTextWidget");
const CPDFWidget_1 = require("./CPDFWidget");
class CPDFWidgetFactory {
static widgetMap = new Map([
[CPDFOptions_1.CPDFWidgetType.TEXT_FIELD, (json) => CPDFTextWidget_1.CPDFTextWidget.fromJson(json)],
[CPDFOptions_1.CPDFWidgetType.SIGNATURES_FIELDS, (json) => CPDFSignatureWidget_1.CPDFSignatureWidget.fromJson(json)],
[CPDFOptions_1.CPDFWidgetType.RADIO_BUTTON, (json) => CPDFRadiobuttonWidget_1.CPDFRadiobuttonWidget.fromJson(json)],
[CPDFOptions_1.CPDFWidgetType.PUSH_BUTTON, (json) => CPDFPushbuttonWidget_1.CPDFPushbuttonWidget.fromJson(json)],
[CPDFOptions_1.CPDFWidgetType.LISTBOX, (json) => CPDFListboxWidget_1.CPDFListboxWidget.fromJson(json)],
[CPDFOptions_1.CPDFWidgetType.COMBOBOX, (json) => CPDFComboboxWidget_1.CPDFComboboxWidget.fromJson(json)],
[CPDFOptions_1.CPDFWidgetType.CHECKBOX, (json) => CPDFCheckboxWidget_1.CPDFCheckboxWidget.fromJson(json)]
]);
static create(json) {
const type = CPDFWidget_1.CPDFWidget.parseType(json.type);
const widgetCreator = CPDFWidgetFactory.widgetMap.get(type);
return widgetCreator ? widgetCreator(json) : CPDFWidget_1.CPDFWidget.fromJson(json);
}
static createFromArray(jsonArray) {
return jsonArray.map(item => CPDFWidgetFactory.create(item));
}
}
exports.CPDFWidgetFactory = CPDFWidgetFactory;
//# sourceMappingURL=CPDFWidgetFactory.js.map