sales-frontend-bridge 0.0.39 → 0.0.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +87 -56
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +94 -23
- package/dist/index.d.ts +94 -23
- package/dist/index.js +84 -57
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.cjs
CHANGED
|
@@ -2219,7 +2219,7 @@ var commonOzParam = [
|
|
|
2219
2219
|
`information.debug = true`,
|
|
2220
2220
|
`global.inheritparameter=true`,
|
|
2221
2221
|
`global.concatpage=true`,
|
|
2222
|
-
`global.eachpagenumberatconcatpage=true`,
|
|
2222
|
+
// `global.eachpagenumberatconcatpage=true`,
|
|
2223
2223
|
`eform.signpad_type=embedded`,
|
|
2224
2224
|
// `eform.signpad_type=keypad`,
|
|
2225
2225
|
`eform.show_prev_next_input=true`,
|
|
@@ -2228,10 +2228,10 @@ var commonOzParam = [
|
|
|
2228
2228
|
`eform.inputcomponent_toolbar_button_json=${JSON.stringify({
|
|
2229
2229
|
// 서명패드 버튼 배열 수정
|
|
2230
2230
|
"all": {
|
|
2231
|
-
// 왼쪽에 이전,
|
|
2232
|
-
"left_align": "prev,
|
|
2233
|
-
// 오른쪽에
|
|
2234
|
-
"right_align": "
|
|
2231
|
+
// 왼쪽에 [이전, 창닫기]
|
|
2232
|
+
"left_align": "prev,ok",
|
|
2233
|
+
// 오른쪽에 [다시쓰기, 성명,서명 불러오기, 다음]
|
|
2234
|
+
"right_align": "clear,reusablesign,next"
|
|
2235
2235
|
}
|
|
2236
2236
|
})}`,
|
|
2237
2237
|
`eform.signpad_show_draw_erase_button=false`,
|
|
@@ -2241,7 +2241,8 @@ var commonOzParam = [
|
|
|
2241
2241
|
`eform.prev_next_required_rule=required_only`,
|
|
2242
2242
|
`eform.prev_next_navigation_rule=required_only`,
|
|
2243
2243
|
`eform.prev_next_constraint_rule=empty_only`,
|
|
2244
|
-
//
|
|
2244
|
+
// 서명 입력 중간중간에 onValueChanged가 호출 / 디폴트는 입력끝나고 창이 닫힐때 호출
|
|
2245
|
+
`eform.onvaluechanged_callrule_json=${JSON.stringify({ signpad: "changed" })}`,
|
|
2245
2246
|
`viewer.pagenavigate_by_prev_next=true`,
|
|
2246
2247
|
`eform.imagepicker_id_info=${JSON.stringify({
|
|
2247
2248
|
ids: [
|
|
@@ -2313,7 +2314,8 @@ var commonOzParam = [
|
|
|
2313
2314
|
`viewer.exportcommand=true`,
|
|
2314
2315
|
`viewer.errorcommand=true`,
|
|
2315
2316
|
`viewer.reportchangecommand=true`,
|
|
2316
|
-
`viewer.pagebindcommandinterval=500
|
|
2317
|
+
`viewer.pagebindcommandinterval=500`,
|
|
2318
|
+
`ozd.allowreplaceformparam=true`
|
|
2317
2319
|
];
|
|
2318
2320
|
|
|
2319
2321
|
// src/oz/constant/pdf-param.ts
|
|
@@ -2334,19 +2336,20 @@ var commonPdfExportParam = [
|
|
|
2334
2336
|
var wrapperStyle = { display: "flex", flexFlow: "column", gap: "10px" };
|
|
2335
2337
|
var btnStyle = { border: "1px solid red", minHeight: "40px" };
|
|
2336
2338
|
var DownloadDocumentList = [
|
|
2337
|
-
{ name: "[A0010]\uCCAD\uC57D\uC11C",
|
|
2338
|
-
{ name:
|
|
2339
|
-
// { name: '[A0900]상품설명서',
|
|
2340
|
-
{ name:
|
|
2341
|
-
{ name:
|
|
2342
|
-
{ name:
|
|
2343
|
-
{ name:
|
|
2344
|
-
{ name:
|
|
2345
|
-
{ name:
|
|
2346
|
-
{ name:
|
|
2347
|
-
{ name:
|
|
2348
|
-
{ name:
|
|
2349
|
-
{ name:
|
|
2339
|
+
{ name: "[A0010]\uCCAD\uC57D\uC11C", doc: [{ docCode: "A0010", fileID: "Fgn33vCNaUbAHKkAA", imageFormatCode: "RT003001", imageDocumentTypeCode: "IT00", filePath: "", startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false }
|
|
2340
|
+
// { name: '[A0100]비교안내확인서', doc: [{ docCode: 'A0100', fileID: '0IxCQWCNZNl-SKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
|
|
2341
|
+
// { name: '[A0900]상품설명서', doc: [{ docCode: 'A0900', fileID: 'IRnk0TCNZNzt7KkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
|
|
2342
|
+
// { name: '[A1500]청약부속정보확인서', doc: [{ docCode: 'A1500', fileID: 'uw0KChCNZP1eFKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
|
|
2343
|
+
// { name: '[A2215]보험계약대출이행관리동의서', doc: [{ docCode: 'A2215', fileID: 'QIpmmaCNZRWRuKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
|
|
2344
|
+
// { name: '[A2800]계약전알릴의무', doc: [{ docCode: 'A2800', fileID: 'ZirCIiCNZRbLFKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
|
|
2345
|
+
// { name: '[A3503]청약서별지(변액용)', doc: [{ docCode: 'A3503', fileID: '7Cm2jqCNZRimXKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
|
|
2346
|
+
// { name: '[B0101]보험계약체결동의서', doc: [{ docCode: 'B0101', fileID: 'g1oZeaCNZRrGhKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
|
|
2347
|
+
// { name: '[C0400]계약체결이행동의서', doc: [{ docCode: 'C0400', fileID: 'eyBV4QCNalUwWKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
|
|
2348
|
+
// { name: '[C0401]상품소개상세동의서', doc: [{ docCode: 'C0401', fileID: 'OqBHIjCNZS1BTKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
|
|
2349
|
+
// { name: '[C1000]보험상품판매체크리스트', doc: [{ docCode: 'C1000', fileID: 'aSAXJOCNa8UgjKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
|
|
2350
|
+
// { name: '[C1300]계약체결고지의무확인서', doc: [{ docCode: 'C1300', fileID: 'uz9gVwCNZTYsUKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
|
|
2351
|
+
// { name: '[C1400]보험상품비교설명확인서', doc: [{ docCode: 'C1400', fileID: 'KFZ4kKCNZTb5CKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
|
|
2352
|
+
// { name: '[A0010]청약서', doc: [{ docCode: 'A0010', fileID: 'Fgn33vCNaUbAHKkAA', imageFormatCode: 'RT003001', imageDocumentTypeCode: 'IT00', filePath: '', startPage: 0, endPage: 0 }], complete: false, startPage: 0, endPage: 0, focus: false },
|
|
2350
2353
|
];
|
|
2351
2354
|
var ExtraData = {
|
|
2352
2355
|
// 문서코드
|
|
@@ -2359,28 +2362,30 @@ var ExtraData = {
|
|
|
2359
2362
|
A0010_mysg_sign: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAIAAAD/gAIDAAABDElEQVR4nOzSsQkCYRgEUZXDVgTtxdDIYgR7sFkTG/iTiT4P3qtgGXa7vp+H//M5PqYnLJymB+yJWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgVjBdj9fpjcsvG7f6QkLnhWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBWIFYgViBX8AgAA//9+7gTkg4AcBQAAAABJRU5ErkJggg=="
|
|
2360
2363
|
},
|
|
2361
2364
|
// 기타 공통으로 사용하지 않을 파라미터
|
|
2362
|
-
extraParam: [
|
|
2363
|
-
|
|
2365
|
+
extraParam: [],
|
|
2366
|
+
// aaa=bbb
|
|
2367
|
+
args: []
|
|
2364
2368
|
},
|
|
2365
2369
|
A0900: {
|
|
2366
|
-
args: [
|
|
2370
|
+
args: []
|
|
2367
2371
|
}
|
|
2368
2372
|
};
|
|
2369
2373
|
var policyNumber = "300034894";
|
|
2370
2374
|
var fpInfo = { uniqNo: "2210000" };
|
|
2375
|
+
var roleCode = [`11`, `21`];
|
|
2371
2376
|
|
|
2372
2377
|
// src/oz/hooks/use-document-info.tsx
|
|
2373
2378
|
var import_react = __toESM(require_react());
|
|
2374
2379
|
function useDocumentInfo(initialValue) {
|
|
2375
2380
|
const [documentInfo, setDocumentInfo] = (0, import_react.useState)([...initialValue]);
|
|
2376
|
-
const documentList = (0, import_react.useMemo)(() => documentInfo.map((i) => i.
|
|
2381
|
+
const documentList = (0, import_react.useMemo)(() => documentInfo.map((i) => i.doc).flat(1), [documentInfo]);
|
|
2377
2382
|
const documentIndexMap = documentList.reduce((acc, cur, index) => {
|
|
2378
|
-
acc[cur] = index;
|
|
2383
|
+
acc[cur.docCode] = index;
|
|
2379
2384
|
return acc;
|
|
2380
2385
|
}, {});
|
|
2381
|
-
const documentTemplateMap = (0, import_react.useMemo)(() => documentInfo.reduce((map,
|
|
2382
|
-
doc.
|
|
2383
|
-
map[
|
|
2386
|
+
const documentTemplateMap = (0, import_react.useMemo)(() => documentInfo.reduce((map, template) => {
|
|
2387
|
+
template.doc.forEach((ozdFile) => {
|
|
2388
|
+
map[ozdFile.docCode] = { ...template };
|
|
2384
2389
|
});
|
|
2385
2390
|
return map;
|
|
2386
2391
|
}, {}), [documentInfo]);
|
|
@@ -2389,13 +2394,13 @@ function useDocumentInfo(initialValue) {
|
|
|
2389
2394
|
return acc;
|
|
2390
2395
|
}, {});
|
|
2391
2396
|
const groupIndexes = (0, import_react.useMemo)(() => documentInfo.reduce((acc, item) => {
|
|
2392
|
-
item.
|
|
2393
|
-
const currentIndex = documentIndexMap[
|
|
2397
|
+
item.doc.forEach((ozdFile) => {
|
|
2398
|
+
const currentIndex = documentIndexMap[ozdFile.docCode];
|
|
2394
2399
|
if (!acc[currentIndex]) {
|
|
2395
2400
|
acc[currentIndex] = [];
|
|
2396
2401
|
}
|
|
2397
|
-
item.
|
|
2398
|
-
acc[currentIndex].push(documentIndexMap[
|
|
2402
|
+
item.doc.forEach((ozdFile2) => {
|
|
2403
|
+
acc[currentIndex].push(documentIndexMap[ozdFile2.docCode]);
|
|
2399
2404
|
});
|
|
2400
2405
|
});
|
|
2401
2406
|
return acc;
|
|
@@ -2445,27 +2450,25 @@ var OZViewerEvent = /* @__PURE__ */ ((OZViewerEvent2) => {
|
|
|
2445
2450
|
OZViewerEvent2["OZReportCreated"] = "OZReportCreated";
|
|
2446
2451
|
return OZViewerEvent2;
|
|
2447
2452
|
})(OZViewerEvent || {});
|
|
2453
|
+
var OZTriggerExternalEvent = /* @__PURE__ */ ((OZTriggerExternalEvent2) => {
|
|
2454
|
+
OZTriggerExternalEvent2["GetDraftData"] = "getDraftData";
|
|
2455
|
+
return OZTriggerExternalEvent2;
|
|
2456
|
+
})(OZTriggerExternalEvent || {});
|
|
2448
2457
|
|
|
2449
2458
|
// src/oz/utils/common-util.ts
|
|
2450
2459
|
function categorizeByPageRange(data, pageCounts) {
|
|
2451
|
-
let
|
|
2452
|
-
const result = [];
|
|
2460
|
+
let currentPage = 1;
|
|
2453
2461
|
let pageIndex = 0;
|
|
2454
|
-
data
|
|
2455
|
-
|
|
2456
|
-
|
|
2457
|
-
|
|
2458
|
-
const pageCount = pageCounts[pageIndex];
|
|
2459
|
-
|
|
2460
|
-
|
|
2461
|
-
|
|
2462
|
-
endPage = pageEnd;
|
|
2463
|
-
});
|
|
2464
|
-
result.push({
|
|
2465
|
-
...item,
|
|
2466
|
-
startPage,
|
|
2467
|
-
endPage
|
|
2462
|
+
const result = DeepCopy(data);
|
|
2463
|
+
result.forEach((group) => {
|
|
2464
|
+
group.startPage = currentPage;
|
|
2465
|
+
group.doc.forEach((doc) => {
|
|
2466
|
+
const pageCount = pageCounts[pageIndex++];
|
|
2467
|
+
doc.startPage = currentPage;
|
|
2468
|
+
doc.endPage = currentPage + pageCount - 1;
|
|
2469
|
+
currentPage += pageCount;
|
|
2468
2470
|
});
|
|
2471
|
+
group.endPage = group.doc[group.doc.length - 1].endPage;
|
|
2469
2472
|
});
|
|
2470
2473
|
return result;
|
|
2471
2474
|
}
|
|
@@ -2481,10 +2484,10 @@ function extractFileName(filePath) {
|
|
|
2481
2484
|
}
|
|
2482
2485
|
function getFileListByGlobalIndex(index, data) {
|
|
2483
2486
|
let currentIndex = 0;
|
|
2484
|
-
for (const
|
|
2485
|
-
const fileCount =
|
|
2487
|
+
for (const template of data) {
|
|
2488
|
+
const fileCount = template.doc.length;
|
|
2486
2489
|
if (index >= currentIndex && index < currentIndex + fileCount) {
|
|
2487
|
-
return
|
|
2490
|
+
return template;
|
|
2488
2491
|
}
|
|
2489
2492
|
currentIndex += fileCount;
|
|
2490
2493
|
}
|
|
@@ -2815,8 +2818,8 @@ async function SaveTotalPdf() {
|
|
|
2815
2818
|
|
|
2816
2819
|
// src/oz/utils/bridge-util/fetch-util.ts
|
|
2817
2820
|
async function fetchDocument(options) {
|
|
2818
|
-
const { data } = await Bridge.native.downloadDocument({ data: options });
|
|
2819
|
-
return data.map((i) => ({ ...i, startPage: 0, endPage: 0 }));
|
|
2821
|
+
const { data: result } = await Bridge.native.downloadDocument({ data: options, policyNumber, fpInfo });
|
|
2822
|
+
return result.data.map((i) => ({ ...i, startPage: 0, endPage: 0 }));
|
|
2820
2823
|
}
|
|
2821
2824
|
async function fetchFont() {
|
|
2822
2825
|
const { data: fontMap } = await Bridge.native.getOzFontParam();
|
|
@@ -2831,12 +2834,12 @@ async function CreateOzParam(documentList, extraData = {}) {
|
|
|
2831
2834
|
}
|
|
2832
2835
|
const fontParms = await fetchFont();
|
|
2833
2836
|
const connectionParams = documentList.map(
|
|
2834
|
-
(
|
|
2837
|
+
({ filePath }, idx) => idx === 0 ? `connection.openfile=${filePath}` : `child${idx}.connection.openfile=${filePath}`
|
|
2835
2838
|
);
|
|
2836
2839
|
const childCount = documentList.length - 1;
|
|
2837
|
-
const extraParams = documentList.map((
|
|
2840
|
+
const extraParams = documentList.map((ozdFile, idx) => {
|
|
2838
2841
|
const result = [];
|
|
2839
|
-
const docCode =
|
|
2842
|
+
const docCode = ozdFile.docCode.replace(/^.*[\\/]|(\.[^/.]+)$/g, "");
|
|
2840
2843
|
const prefix = idx === 0 ? "" : `child${idx}.`;
|
|
2841
2844
|
const data = extraData[docCode] || {};
|
|
2842
2845
|
if (data.inputJson) {
|
|
@@ -2845,6 +2848,7 @@ async function CreateOzParam(documentList, extraData = {}) {
|
|
|
2845
2848
|
const args = [
|
|
2846
2849
|
// 모든서식에 공통으로 필요한 docCd param 추가
|
|
2847
2850
|
`docCd=${docCode}`,
|
|
2851
|
+
`roleCd=11,28`,
|
|
2848
2852
|
...ensureArray(data.args)
|
|
2849
2853
|
];
|
|
2850
2854
|
args.forEach((arg, idx2) => result.push(`${prefix}connection.args${idx2 + 1}=${arg}`));
|
|
@@ -2898,6 +2902,29 @@ async function getTotalPageOnAllDocuments(reportCount) {
|
|
|
2898
2902
|
}
|
|
2899
2903
|
return totalPages;
|
|
2900
2904
|
}
|
|
2905
|
+
|
|
2906
|
+
// src/oz/utils/bridge-util/get-draft-data-util.ts
|
|
2907
|
+
async function getDraftDataHandler(rawOzRequest, documentIndexMap) {
|
|
2908
|
+
const parsedRequest = JSON.parse(rawOzRequest);
|
|
2909
|
+
const { docCd, ...signKeyMap } = parsedRequest;
|
|
2910
|
+
const documentIndex = documentIndexMap[docCd];
|
|
2911
|
+
if (documentIndex === void 0) {
|
|
2912
|
+
throw new Error(`Invalid document code: ${docCd}`);
|
|
2913
|
+
}
|
|
2914
|
+
const { data } = await Bridge.nativeOz.getInformation({ command: `INPUT_JSON_AT=${documentIndex}` });
|
|
2915
|
+
const documentJson = JSON.parse(data);
|
|
2916
|
+
const signDataMap = Object.keys(signKeyMap).reduce((acc, key) => {
|
|
2917
|
+
acc[key] = documentJson[key];
|
|
2918
|
+
return acc;
|
|
2919
|
+
}, {});
|
|
2920
|
+
return signDataMap;
|
|
2921
|
+
}
|
|
2922
|
+
async function triggerDraftDataByIndexList(indexList) {
|
|
2923
|
+
for (let i = 0; i < indexList.length; i++) {
|
|
2924
|
+
await sleep();
|
|
2925
|
+
await Bridge.nativeOz.triggerExternalEventByDocIndex({ param1: "getDraftData" /* GetDraftData */, docIndex: indexList[i] });
|
|
2926
|
+
}
|
|
2927
|
+
}
|
|
2901
2928
|
/*! Bundled license information:
|
|
2902
2929
|
|
|
2903
2930
|
react/cjs/react.production.js:
|
|
@@ -2931,6 +2958,7 @@ exports.CreateOzViewer = CreateOzViewer;
|
|
|
2931
2958
|
exports.DownloadDocumentList = DownloadDocumentList;
|
|
2932
2959
|
exports.ExtraData = ExtraData;
|
|
2933
2960
|
exports.MovePage = MovePage;
|
|
2961
|
+
exports.OZTriggerExternalEvent = OZTriggerExternalEvent;
|
|
2934
2962
|
exports.OZViewerEvent = OZViewerEvent;
|
|
2935
2963
|
exports.PdfHandler = PdfHandler;
|
|
2936
2964
|
exports.PromiseWithResolvers = PromiseWithResolvers;
|
|
@@ -2955,18 +2983,21 @@ exports.fetchDocument = fetchDocument;
|
|
|
2955
2983
|
exports.fetchFont = fetchFont;
|
|
2956
2984
|
exports.fpInfo = fpInfo;
|
|
2957
2985
|
exports.getCurrentPage = getCurrentPage;
|
|
2986
|
+
exports.getDraftDataHandler = getDraftDataHandler;
|
|
2958
2987
|
exports.getFileListByGlobalIndex = getFileListByGlobalIndex;
|
|
2959
2988
|
exports.getReportCountMemo = getReportCountMemo;
|
|
2960
2989
|
exports.getTotalPageMemo = getTotalPageMemo;
|
|
2961
2990
|
exports.getTotalPageOnAllDocuments = getTotalPageOnAllDocuments;
|
|
2962
2991
|
exports.isCommentMode = isCommentMode;
|
|
2963
2992
|
exports.policyNumber = policyNumber;
|
|
2993
|
+
exports.roleCode = roleCode;
|
|
2964
2994
|
exports.setCheckEform = setCheckEform;
|
|
2965
2995
|
exports.setDisableCommentMode = setDisableCommentMode;
|
|
2966
2996
|
exports.setEnableCommentMode = setEnableCommentMode;
|
|
2967
2997
|
exports.sleep = sleep;
|
|
2968
2998
|
exports.triggerClickOnAllDocuments = triggerClickOnAllDocuments;
|
|
2969
2999
|
exports.triggerCropImageOnAllDocuments = triggerCropImageOnAllDocuments;
|
|
3000
|
+
exports.triggerDraftDataByIndexList = triggerDraftDataByIndexList;
|
|
2970
3001
|
exports.useDocumentInfo = useDocumentInfo;
|
|
2971
3002
|
exports.useOzEventListener = useOzEventListener;
|
|
2972
3003
|
exports.validateAllPages = validateAllPages;
|