sales-frontend-components 0.0.95 → 0.0.97

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.js CHANGED
@@ -11,14 +11,16 @@ var styles$1 = require('./step-indicator/step-indicator.module.scss');
11
11
  var styles$2 = require('./camera/camera.module.scss');
12
12
  var styles$3 = require('./modal/standard/address-search/select-address.module.scss');
13
13
  var styles$4 = require('./modal/standard/bank-stock-search/bank-stock-search-modal.module.scss');
14
- var styles$5 = require('./modal/pre-standard/organization-search-modal/organization-search-modal.module.scss');
15
- var styles$6 = require('./modal/pre-standard/employee-search-modal/employee-search-modal.module.scss');
16
- var styles$7 = require('./modal/pre-standard/job-vehicle-search-modal/job-vehicle-search-modal.module.scss');
17
- var styles$8 = require('./modal/pre-standard/vehicle-search-modal/vehicle-search-modal.module.scss');
18
- var reactQuery = require('@tanstack/react-query');
19
- var styles$9 = require('./modal/pre-standard/dea-customer-search-modal/dea-customer-search-modal.module.scss');
20
- var styles$a = require('./modal/standard/customer-search/customer-search.module.scss');
14
+ var styles$5 = require('./modal/standard/customer-search/customer-search.module.scss');
15
+ var styles$6 = require('./modal/standard/nationality-search/select-nationality.module.scss');
21
16
  var salesFrontendUtils = require('sales-frontend-utils');
17
+ var styles$7 = require('./modal/standard/visa-search/select-visa.module.scss');
18
+ var reactQuery = require('@tanstack/react-query');
19
+ var styles$8 = require('./modal/pre-standard/dea-customer-search-modal/dea-customer-search-modal.module.scss');
20
+ var styles$9 = require('./modal/pre-standard/employee-search-modal/employee-search-modal.module.scss');
21
+ var styles$a = require('./modal/pre-standard/job-vehicle-search-modal/job-vehicle-search-modal.module.scss');
22
+ var styles$b = require('./modal/pre-standard/vehicle-search-modal/vehicle-search-modal.module.scss');
23
+ var styles$c = require('./modal/pre-standard/organization-search-modal/organization-search-modal.module.scss');
22
24
 
23
25
  const FormCheckboxButton = ({
24
26
  name,
@@ -306,15 +308,15 @@ function JobSearchDetail({ occupationTypeCode, occupationIndustryCode }) {
306
308
  ] }) }) });
307
309
  }
308
310
 
309
- const cx$g = classNames.bind(styles);
311
+ const cx$j = classNames.bind(styles);
310
312
  function JobSearchCategory({ filteredJobs, onJobSelect, searchTerm }) {
311
- return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$g("category-section"), children: [
312
- /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cx$g("result-title"), children: [
313
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$j("category-section"), children: [
314
+ /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cx$j("result-title"), children: [
313
315
  "\uCD1D ",
314
316
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-primary", children: filteredJobs.length }),
315
317
  "\uAC74\uC758 \uAC80\uC0C9\uACB0\uACFC"
316
318
  ] }),
317
- /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Accordion.Root, { children: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Radio.Root, { name: "job-selection", size: "small", className: cx$g("job-radio-root"), onToggle: () => {
319
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Accordion.Root, { children: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Radio.Root, { name: "job-selection", size: "small", className: cx$j("job-radio-root"), onToggle: () => {
318
320
  }, children: filteredJobs.map((job, index) => /* @__PURE__ */ jsxRuntime.jsxs(
319
321
  salesFrontendDesignSystem.Accordion.Item,
320
322
  {
@@ -345,23 +347,23 @@ function JobSearchCategory({ filteredJobs, onJobSelect, searchTerm }) {
345
347
  ] }) });
346
348
  }
347
349
 
348
- const cx$f = classNames.bind(styles);
350
+ const cx$i = classNames.bind(styles);
349
351
  function JobSearchFavorite({ filteredJobs, onJobSelect }) {
350
- return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$f("popular-jobs"), children: [
352
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$i("popular-jobs"), children: [
351
353
  /* @__PURE__ */ jsxRuntime.jsx("p", { children: "\uB9CE\uC774 \uCC3E\uB294 \uC9C1\uC885" }),
352
- /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Accordion.Root, { children: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Radio.Root, { name: "job-selection", size: "small", className: cx$f("job-radio-root"), children: filteredJobs.map((job, index) => /* @__PURE__ */ jsxRuntime.jsxs(
354
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Accordion.Root, { children: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Radio.Root, { name: "job-selection", size: "small", className: cx$i("job-radio-root"), children: filteredJobs.map((job, index) => /* @__PURE__ */ jsxRuntime.jsxs(
353
355
  salesFrontendDesignSystem.Accordion.Item,
354
356
  {
355
357
  id: `item-${job.occupationIndustryCode}-${index}`,
356
- className: cx$f("accordion-item"),
358
+ className: cx$i("accordion-item"),
357
359
  children: [
358
- /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Accordion.HeaderDiv, { className: cx$f("accordion-header-item"), children: /* @__PURE__ */ jsxRuntime.jsxs(
360
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Accordion.HeaderDiv, { className: cx$i("accordion-header-item"), children: /* @__PURE__ */ jsxRuntime.jsxs(
359
361
  salesFrontendDesignSystem.Radio.Item,
360
362
  {
361
363
  size: "small",
362
364
  value: job.occupationIndustryCode,
363
365
  onChange: () => onJobSelect(job),
364
- className: cx$f("radio-item"),
366
+ className: cx$i("radio-item"),
365
367
  children: [
366
368
  job.occupationIndustryName,
367
369
  "(",
@@ -384,15 +386,15 @@ function JobSearchFavorite({ filteredJobs, onJobSelect }) {
384
386
  ] }) });
385
387
  }
386
388
 
387
- const cx$e = classNames.bind(styles);
389
+ const cx$h = classNames.bind(styles);
388
390
  function JobSearchResult({ filteredJobs, onJobSelect, searchTerm }) {
389
- return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$e("popular-jobs"), children: [
390
- /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cx$e("result-title"), children: [
391
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$h("popular-jobs"), children: [
392
+ /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cx$h("result-title"), children: [
391
393
  "\uCD1D ",
392
394
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-primary", children: filteredJobs.length }),
393
395
  "\uAC74\uC758 \uAC80\uC0C9\uACB0\uACFC"
394
396
  ] }),
395
- /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Accordion.Root, { children: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Radio.Root, { name: "job-selection", size: "small", className: cx$e("job-radio-root"), children: filteredJobs.map((job) => /* @__PURE__ */ jsxRuntime.jsxs(
397
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Accordion.Root, { children: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Radio.Root, { name: "job-selection", size: "small", className: cx$h("job-radio-root"), children: filteredJobs.map((job) => /* @__PURE__ */ jsxRuntime.jsxs(
396
398
  salesFrontendDesignSystem.Accordion.Item,
397
399
  {
398
400
  id: `item-${job.occupationIndustryCode}`,
@@ -429,7 +431,7 @@ function JobSearchResult({ filteredJobs, onJobSelect, searchTerm }) {
429
431
  }
430
432
 
431
433
  const { TextField: TextField$3 } = salesFrontendDesignSystem.FormField;
432
- const cx$d = classNames.bind(styles);
434
+ const cx$g = classNames.bind(styles);
433
435
  const { Option } = salesFrontendDesignSystem.Select;
434
436
  function JobSearch({
435
437
  activeTab,
@@ -467,7 +469,7 @@ function JobSearch({
467
469
  }
468
470
  ),
469
471
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
470
- activeTab === "jobName" && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$d("favorite-jobs-section"), children: [
472
+ activeTab === "jobName" && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$g("favorite-jobs-section"), children: [
471
473
  /* @__PURE__ */ jsxRuntime.jsx(
472
474
  TextField$3,
473
475
  {
@@ -489,8 +491,8 @@ function JobSearch({
489
491
  !searchTerm && /* @__PURE__ */ jsxRuntime.jsx(JobSearchFavorite, { filteredJobs, onJobSelect }),
490
492
  searchTerm && !isLoading && /* @__PURE__ */ jsxRuntime.jsx(JobSearchResult, { filteredJobs, onJobSelect, searchTerm })
491
493
  ] }),
492
- activeTab === "jobCode" && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$d("select-jobs-section"), children: [
493
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$d("category-section"), children: [
494
+ activeTab === "jobCode" && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$g("select-jobs-section"), children: [
495
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$g("category-section"), children: [
494
496
  /* @__PURE__ */ jsxRuntime.jsx(
495
497
  salesFrontendDesignSystem.Select,
496
498
  {
@@ -922,7 +924,7 @@ const FormTextField = ({
922
924
  );
923
925
  };
924
926
 
925
- const cx$c = classNames.bind(styles$1);
927
+ const cx$f = classNames.bind(styles$1);
926
928
  const StepIndicator = ({
927
929
  items,
928
930
  onClickItem,
@@ -957,26 +959,26 @@ const StepIndicator = ({
957
959
  salesFrontendDesignSystem.ModalUtils.alert("\uC774\uC804 \uB2E8\uACC4\uB97C \uBAA8\uB450 \uC644\uB8CC\uD574\uC57C \uC120\uD0DD\uD55C \uB2E8\uACC4\uB85C\n\uC774\uB3D9\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.", "\uC774\uC804 \uB2E8\uACC4\uB97C \uBA3C\uC800 \uC9C4\uD589\uD574\uC8FC\uC138\uC694");
958
960
  }
959
961
  };
960
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$c("stepper-layout", { loading: isLoading }), children: [
961
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$c("stepper"), children: steps.map((item, idx) => /* @__PURE__ */ jsxRuntime.jsxs(React.Fragment, { children: [
962
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$f("stepper-layout", { loading: isLoading }), children: [
963
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$f("stepper"), children: steps.map((item, idx) => /* @__PURE__ */ jsxRuntime.jsxs(React.Fragment, { children: [
962
964
  /* @__PURE__ */ jsxRuntime.jsx(
963
965
  "div",
964
966
  {
965
- className: cx$c(
967
+ className: cx$f(
966
968
  "circle",
967
969
  { completed: item.isCompleted ?? false },
968
970
  { active: defaultValue === item.value || current === idx }
969
971
  ),
970
972
  onClick: () => handleClickStep?.(item),
971
- children: item.isCompleted ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx$c("completed-icon") }) : idx + 1
973
+ children: item.isCompleted ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx$f("completed-icon") }) : idx + 1
972
974
  }
973
975
  ),
974
- idx < steps.length - 1 && Array.from({ length: dotCount }).map((_, dotIdx) => /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx$c("dot") }, `dot-${idx}-${dotIdx}`))
976
+ idx < steps.length - 1 && Array.from({ length: dotCount }).map((_, dotIdx) => /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx$f("dot") }, `dot-${idx}-${dotIdx}`))
975
977
  ] }, `num-${idx}`)) }),
976
- /* @__PURE__ */ jsxRuntime.jsx("ul", { className: cx$c("step-labels"), children: steps.map((item, idx) => /* @__PURE__ */ jsxRuntime.jsx(
978
+ /* @__PURE__ */ jsxRuntime.jsx("ul", { className: cx$f("step-labels"), children: steps.map((item, idx) => /* @__PURE__ */ jsxRuntime.jsx(
977
979
  "li",
978
980
  {
979
- className: cx$c(
981
+ className: cx$f(
980
982
  { completed: steps[idx < 1 ? idx : idx - 1]?.isCompleted ?? false },
981
983
  { active: defaultValue === item.value || current === idx }
982
984
  ),
@@ -988,7 +990,7 @@ const StepIndicator = ({
988
990
  ] });
989
991
  };
990
992
 
991
- const cx$b = classNames.bind(styles$2);
993
+ const cx$e = classNames.bind(styles$2);
992
994
  function Attachment({
993
995
  photos,
994
996
  onAddPhoto,
@@ -1005,14 +1007,14 @@ function Attachment({
1005
1007
  };
1006
1008
  const renderPhotoSingle = () => {
1007
1009
  if (photos.length === 0) {
1008
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$b("single-photo-item", "add-photo-item"), children: /* @__PURE__ */ jsxRuntime.jsxs("button", { className: cx$b("add-photo-button-single"), onClick: handleAddPhoto, children: [
1010
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$e("single-photo-item", "add-photo-item"), children: /* @__PURE__ */ jsxRuntime.jsxs("button", { className: cx$e("add-photo-button-single"), onClick: handleAddPhoto, children: [
1009
1011
  /* @__PURE__ */ jsxRuntime.jsx(salesFrontendAssets.IconIllustCamera, {}),
1010
1012
  /* @__PURE__ */ jsxRuntime.jsx("span", { children: buttonText || "\uC0AC\uC9C4 \uCCA8\uBD80\uD558\uAE30" })
1011
1013
  ] }) });
1012
1014
  }
1013
- return photos.map((photo) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$b("single-photo-item"), children: [
1014
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$b("photo-placeholder"), children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: photo.src, alt: photo.name, className: cx$b("photo-image") }) }),
1015
- /* @__PURE__ */ jsxRuntime.jsx("button", { className: cx$b("remove-button"), onClick: () => handleRemovePhoto(photo.id), "aria-label": "\uC0AC\uC9C4 \uC0AD\uC81C", children: "\xD7" })
1015
+ return photos.map((photo) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$e("single-photo-item"), children: [
1016
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$e("photo-placeholder"), children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: photo.src, alt: photo.name, className: cx$e("photo-image") }) }),
1017
+ /* @__PURE__ */ jsxRuntime.jsx("button", { className: cx$e("remove-button"), onClick: () => handleRemovePhoto(photo.id), "aria-label": "\uC0AC\uC9C4 \uC0AD\uC81C", children: "\xD7" })
1016
1018
  ] }, photo.id));
1017
1019
  };
1018
1020
  const renderPhotoGrid = () => {
@@ -1020,12 +1022,12 @@ function Attachment({
1020
1022
  const gridItems = [];
1021
1023
  if (photos.length < maxPhotos) {
1022
1024
  gridItems.push(
1023
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$b("photo-item", "add-photo-item"), children: /* @__PURE__ */ jsxRuntime.jsxs("button", { className: cx$b("add-photo-button"), onClick: handleAddPhoto, children: [
1025
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$e("photo-item", "add-photo-item"), children: /* @__PURE__ */ jsxRuntime.jsxs("button", { className: cx$e("add-photo-button"), onClick: handleAddPhoto, children: [
1024
1026
  /* @__PURE__ */ jsxRuntime.jsx(salesFrontendAssets.IconIllustCamera, {}),
1025
1027
  /* @__PURE__ */ jsxRuntime.jsx("span", { children: buttonText || "\uCCA8\uBD80\uD558\uAE30" }),
1026
- /* @__PURE__ */ jsxRuntime.jsxs("span", { className: cx$b("photo-count"), children: [
1028
+ /* @__PURE__ */ jsxRuntime.jsxs("span", { className: cx$e("photo-count"), children: [
1027
1029
  "(",
1028
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx$b("photo-count-number"), children: photos.length }),
1030
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx$e("photo-count-number"), children: photos.length }),
1029
1031
  "/",
1030
1032
  maxPhotos,
1031
1033
  ")"
@@ -1035,9 +1037,9 @@ function Attachment({
1035
1037
  }
1036
1038
  photos.forEach((photo) => {
1037
1039
  gridItems.push(
1038
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$b("photo-item"), children: [
1039
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$b("photo-placeholder"), children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: photo.src, alt: photo.name, className: cx$b("photo-image") }) }),
1040
- /* @__PURE__ */ jsxRuntime.jsx("button", { className: cx$b("remove-button"), onClick: () => handleRemovePhoto(photo.id), "aria-label": "\uC0AC\uC9C4 \uC0AD\uC81C", children: "\xD7" })
1040
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$e("photo-item"), children: [
1041
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$e("photo-placeholder"), children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: photo.src, alt: photo.name, className: cx$e("photo-image") }) }),
1042
+ /* @__PURE__ */ jsxRuntime.jsx("button", { className: cx$e("remove-button"), onClick: () => handleRemovePhoto(photo.id), "aria-label": "\uC0AC\uC9C4 \uC0AD\uC81C", children: "\xD7" })
1041
1043
  ] }, photo.id)
1042
1044
  );
1043
1045
  });
@@ -1048,9 +1050,9 @@ function Attachment({
1048
1050
  return null;
1049
1051
  }
1050
1052
  if (type === "single") {
1051
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$b("photo-single"), children: renderPhotoSingle() });
1053
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$e("photo-single"), children: renderPhotoSingle() });
1052
1054
  }
1053
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$b("photo-grid", { linear: type === "linear" }), children: renderPhotoGrid() });
1055
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$e("photo-grid", { linear: type === "linear" }), children: renderPhotoGrid() });
1054
1056
  }
1055
1057
 
1056
1058
  const maxImageSize = 3 * 1024 * 1024;
@@ -1497,12 +1499,12 @@ function useCanvasPaint(paintProps = {}) {
1497
1499
 
1498
1500
  const testSignatureBase64Data = "data:image/png;base64,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";
1499
1501
 
1500
- const cx$a = classNames.bind(styles$3);
1501
- const { InputBox: InputBox$1, Input: Input$1 } = salesFrontendDesignSystem.FormCore;
1502
+ const cx$d = classNames.bind(styles$3);
1503
+ const { InputBox: InputBox$3, Input: Input$3 } = salesFrontendDesignSystem.FormCore;
1502
1504
  const AddressSearchInitialText = () => {
1503
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$a("search-result-list"), children: [
1504
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: cx$a("guide-title"), children: "\uC774\uB807\uAC8C \uAC80\uC0C9\uD574 \uBCF4\uC138\uC694." }),
1505
- /* @__PURE__ */ jsxRuntime.jsxs("ul", { className: cx$a("guide"), children: [
1505
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$d("search-result-list"), children: [
1506
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: cx$d("guide-title"), children: "\uC774\uB807\uAC8C \uAC80\uC0C9\uD574 \uBCF4\uC138\uC694." }),
1507
+ /* @__PURE__ */ jsxRuntime.jsxs("ul", { className: cx$d("guide"), children: [
1506
1508
  /* @__PURE__ */ jsxRuntime.jsx("li", { children: "\uB3C4\uB85C\uBA85/\uC9C0\uBA85\uACFC \uAC74\uBB3C\uBC88\uD638\uB97C \uD568\uAED8 \uC785\uB825\uD574\uC8FC\uC138\uC694" }),
1507
1509
  /* @__PURE__ */ jsxRuntime.jsx("li", { children: "\uC608) 63\uB85C 50, \uC5EC\uC758\uB3C4\uB3D9 60" }),
1508
1510
  /* @__PURE__ */ jsxRuntime.jsx("li", { children: "\uC9C0\uBA85\uC740 \uB3D9/\uC74D/\uBA74/\uB9AC\uB85C \uC785\uB825\uD574\uC8FC\uC138\uC694" }),
@@ -1518,8 +1520,8 @@ const AddressSearchResult = ({
1518
1520
  searchKeyword,
1519
1521
  selectedAddress
1520
1522
  }) => {
1521
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$a("search-result-list"), children: [
1522
- /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cx$a("guide-title"), children: [
1523
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$d("search-result-list"), children: [
1524
+ /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cx$d("guide-title"), children: [
1523
1525
  "\uCD1D ",
1524
1526
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-primary", children: addressSearchList.length }),
1525
1527
  "\uAC74\uC758 \uAC80\uC0C9\uACB0\uACFC"
@@ -1531,15 +1533,15 @@ const AddressSearchResult = ({
1531
1533
  return {
1532
1534
  value: JSON.stringify(item),
1533
1535
  select: item.roadNameBaseAddress === selectedAddress?.roadNameBaseAddress && item.roadNameDetailAddress === selectedAddress?.roadNameDetailAddress && item.mainBuildingName === selectedAddress?.mainBuildingName,
1534
- label: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$a("search-result"), children: [
1535
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$a("zipcode"), children: highlightOnSearchKeyword$1(`${item.firstPostalCode}${item.secondPostalCode}`, searchKeyword) }),
1536
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$a("divider") }),
1537
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$a("address-info"), children: [
1538
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx$a("address"), children: highlightOnSearchKeyword$1(
1536
+ label: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$d("search-result"), children: [
1537
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$d("zipcode"), children: highlightOnSearchKeyword$1(`${item.firstPostalCode}${item.secondPostalCode}`, searchKeyword) }),
1538
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$d("divider") }),
1539
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$d("address-info"), children: [
1540
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx$d("address"), children: highlightOnSearchKeyword$1(
1539
1541
  `${item.roadNameBaseAddress} ${item.roadNameDetailAddress} ${item.mainBuildingName}`,
1540
1542
  searchKeyword
1541
1543
  ) }),
1542
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx$a("old-address"), children: highlightOnSearchKeyword$1(
1544
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx$d("old-address"), children: highlightOnSearchKeyword$1(
1543
1545
  `${item.landNumberBaseAddress} ${item.landNumberDetailAddress}`,
1544
1546
  searchKeyword
1545
1547
  ) })
@@ -1548,7 +1550,7 @@ const AddressSearchResult = ({
1548
1550
  id: JSON.stringify(item)
1549
1551
  };
1550
1552
  }),
1551
- className: cx$a("radio-group"),
1553
+ className: cx$d("radio-group"),
1552
1554
  name: "address-search",
1553
1555
  size: "medium",
1554
1556
  defaultValue: "",
@@ -1570,7 +1572,7 @@ const AddressSearchDetailInput = ({
1570
1572
  detailAddressInput
1571
1573
  }) => {
1572
1574
  const { land, road } = selectedStandardizationAddress;
1573
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$a("search-result-list"), children: [
1575
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$d("search-result-list"), children: [
1574
1576
  /* @__PURE__ */ jsxRuntime.jsx(
1575
1577
  salesFrontendDesignSystem.Radio.Root,
1576
1578
  {
@@ -1580,21 +1582,21 @@ const AddressSearchDetailInput = ({
1580
1582
  children: /* @__PURE__ */ jsxRuntime.jsx(
1581
1583
  salesFrontendDesignSystem.Radio.Item,
1582
1584
  {
1583
- className: cx$a("radio-group"),
1585
+ className: cx$d("radio-group"),
1584
1586
  value: JSON.stringify(selectedStandardizationAddress),
1585
1587
  onChange: onStandardizationChange,
1586
- children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$a("search-result"), children: [
1588
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$d("search-result"), children: [
1587
1589
  /* @__PURE__ */ jsxRuntime.jsx(
1588
1590
  "div",
1589
1591
  {
1590
- className: cx$a("zipcode"),
1592
+ className: cx$d("zipcode"),
1591
1593
  children: `${selectedStandardizationAddress.land?.firstPostalCode}${land?.secondPostalCode}`
1592
1594
  }
1593
1595
  ),
1594
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$a("divider") }),
1595
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$a("address-info"), children: [
1596
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx$a("address"), children: `${road?.baseAddress} ${road?.detailAddress}` }),
1597
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx$a("old-address"), children: `${land?.baseAddress} ${land?.detailAddress}` })
1596
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$d("divider") }),
1597
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$d("address-info"), children: [
1598
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx$d("address"), children: `${road?.baseAddress} ${road?.detailAddress}` }),
1599
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx$d("old-address"), children: `${land?.baseAddress} ${land?.detailAddress}` })
1598
1600
  ] })
1599
1601
  ] })
1600
1602
  }
@@ -1651,8 +1653,8 @@ function AddressComponent({ isOpen, onClose, setValue }) {
1651
1653
  /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Modal.Content, { children: [
1652
1654
  /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Header, { headerTitle: "\uC8FC\uC18C \uAC80\uC0C9", showCloseButton: true }),
1653
1655
  /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Modal.Body, { children: [
1654
- /* @__PURE__ */ jsxRuntime.jsx(InputBox$1, { clearable: true, endElement: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendAssets.IconMainUiSearch, { onClick: search }), onClear: onAddressSearchClear, children: /* @__PURE__ */ jsxRuntime.jsx(
1655
- Input$1,
1656
+ /* @__PURE__ */ jsxRuntime.jsx(InputBox$3, { clearable: true, endElement: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendAssets.IconMainUiSearch, { onClick: search }), onClear: onAddressSearchClear, children: /* @__PURE__ */ jsxRuntime.jsx(
1657
+ Input$3,
1656
1658
  {
1657
1659
  ...addressSearchStep !== "detail-input" && { autoFocus: true },
1658
1660
  onChange: onSearch,
@@ -2254,143 +2256,898 @@ function BankStockSearchModal({ open, onClose, onSelect }) {
2254
2256
  ] });
2255
2257
  }
2256
2258
 
2257
- const cx$9 = classNames.bind(styles$5);
2258
- function OrganizationSearchResult({
2259
- filteredOrganizations,
2260
- onOrganizationSelect
2261
- }) {
2262
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$9("result-section"), children: [
2263
- /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cx$9("result-title"), children: [
2259
+ const useCustomerSearch = (onSelect) => {
2260
+ const { triggerRef, isOpen, setIsOpen, DropDown } = salesFrontendDesignSystem.useDropDown();
2261
+ const [searchKeyword, setSearchKeyword] = React.useState("");
2262
+ const [searchInput, setSearchInput] = React.useState("");
2263
+ const [customerList, setCustomerList] = React.useState([]);
2264
+ const [selectedCustomer, setSelectedCustomer] = React.useState(null);
2265
+ const { data } = method.useSearchCustomerListQuery({ customerName: searchKeyword });
2266
+ const search = () => {
2267
+ if (searchInput.length >= 2) {
2268
+ setSearchKeyword(searchInput);
2269
+ const filtered = data?.data?.custList?.filter(
2270
+ (c) => c.customerName?.toLowerCase().includes(searchInput.toLowerCase())
2271
+ );
2272
+ setCustomerList(filtered || []);
2273
+ setIsOpen(true);
2274
+ } else {
2275
+ setCustomerList([]);
2276
+ setSearchKeyword("");
2277
+ setIsOpen(false);
2278
+ }
2279
+ };
2280
+ const onKeyUp = (e) => {
2281
+ if (e.key === "Enter") {
2282
+ search();
2283
+ }
2284
+ };
2285
+ const onSearchInputChange = (e) => {
2286
+ setSearchInput(e.target.value);
2287
+ if (e.target.value.length < 2) {
2288
+ setCustomerList([]);
2289
+ setSearchKeyword("");
2290
+ setIsOpen(false);
2291
+ }
2292
+ };
2293
+ const onClear = () => {
2294
+ setSearchInput("");
2295
+ setSearchKeyword("");
2296
+ setCustomerList([]);
2297
+ setSelectedCustomer(null);
2298
+ setIsOpen(false);
2299
+ };
2300
+ const handleSelectItem = (customer) => {
2301
+ setSelectedCustomer(customer);
2302
+ setSearchInput(customer.customerName || "");
2303
+ setCustomerList([]);
2304
+ setIsOpen(false);
2305
+ if (onSelect) {
2306
+ onSelect(customer);
2307
+ }
2308
+ };
2309
+ return {
2310
+ triggerRef,
2311
+ isOpen,
2312
+ DropDown,
2313
+ searchInput,
2314
+ customerList,
2315
+ searchKeyword,
2316
+ onSearchInputChange,
2317
+ onKeyUp,
2318
+ search,
2319
+ onClear,
2320
+ handleSelectItem,
2321
+ selectedCustomer,
2322
+ setSearchInput,
2323
+ setCustomerList,
2324
+ setSearchKeyword,
2325
+ setIsOpen
2326
+ };
2327
+ };
2328
+
2329
+ const cx$c = classNames.bind(styles$5);
2330
+ const highlightOnSearchKeyword = (originalText, targetString) => {
2331
+ if (!targetString || !originalText?.includes(targetString)) {
2332
+ return originalText;
2333
+ }
2334
+ const replacedText = [];
2335
+ const splitText = originalText.split(targetString);
2336
+ for (let i = 0; i < splitText.length; i++) {
2337
+ replacedText.push(splitText[i] || "");
2338
+ if (i < splitText.length - 1) {
2339
+ replacedText.push(
2340
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-primary", children: targetString }, i)
2341
+ );
2342
+ }
2343
+ }
2344
+ return replacedText;
2345
+ };
2346
+ const { InputBox: InputBox$2, Input: Input$2 } = salesFrontendDesignSystem.FormCore;
2347
+ const CustomerSearch = ({ onSelect }) => {
2348
+ const {
2349
+ triggerRef,
2350
+ isOpen,
2351
+ DropDown,
2352
+ searchInput,
2353
+ customerList,
2354
+ searchKeyword,
2355
+ onSearchInputChange,
2356
+ onKeyUp,
2357
+ search,
2358
+ onClear,
2359
+ handleSelectItem
2360
+ } = useCustomerSearch(onSelect);
2361
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$c("container"), children: [
2362
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$c("search-bar"), children: /* @__PURE__ */ jsxRuntime.jsx(InputBox$2, { endElement: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendAssets.IconMainUiSearch, { onClick: search }), onClear, clearable: true, children: /* @__PURE__ */ jsxRuntime.jsx(
2363
+ Input$2,
2364
+ {
2365
+ onChange: onSearchInputChange,
2366
+ onKeyUp,
2367
+ value: searchInput,
2368
+ placeholder: "\uACE0\uAC1D\uBA85\uC744 \uB450 \uAE00\uC790 \uC774\uC0C1 \uC785\uB825\uD574\uC8FC\uC138\uC694.",
2369
+ size: "large",
2370
+ ref: triggerRef
2371
+ }
2372
+ ) }) }),
2373
+ isOpen && customerList.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(DropDown, { children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$c("result-container"), children: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.List, { children: customerList.map((customer) => /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.ListItem, { onClick: () => handleSelectItem(customer), selectable: true, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$c("customer-item"), children: [
2374
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$c("name"), children: highlightOnSearchKeyword(customer.customerName || "", searchKeyword) }),
2375
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$c("details"), children: [
2376
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: customer.birthDate }),
2377
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx$c("separator"), children: "|" }),
2378
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: customer.genderCode }),
2379
+ customer.baseAddress && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2380
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx$c("separator"), children: "|" }),
2381
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: customer.baseAddress })
2382
+ ] })
2383
+ ] })
2384
+ ] }) }, customer.customerId)) }) }) })
2385
+ ] });
2386
+ };
2387
+
2388
+ const cx$b = classNames.bind(styles$6);
2389
+ const { InputBox: InputBox$1, Input: Input$1 } = salesFrontendDesignSystem.FormCore;
2390
+ const favoriteList = [
2391
+ {
2392
+ nationalityCode: "KR",
2393
+ nationalityCodeName: "\uB300\uD55C\uBBFC\uAD6D",
2394
+ isoNumberNationalityCode: "410",
2395
+ nationalityEnglishAbbreviationName: "KOR"
2396
+ },
2397
+ {
2398
+ nationalityCode: "CN",
2399
+ nationalityCodeName: "\uC911\uAD6D",
2400
+ isoNumberNationalityCode: "156",
2401
+ nationalityEnglishAbbreviationName: "CHN"
2402
+ },
2403
+ {
2404
+ nationalityCode: "VN",
2405
+ nationalityCodeName: "\uBCA0\uD2B8\uB0A8",
2406
+ isoNumberNationalityCode: "704",
2407
+ nationalityEnglishAbbreviationName: "VNM"
2408
+ },
2409
+ {
2410
+ nationalityCode: "US",
2411
+ nationalityCodeName: "\uBBF8\uAD6D",
2412
+ isoNumberNationalityCode: "840",
2413
+ nationalityEnglishAbbreviationName: "USA"
2414
+ },
2415
+ {
2416
+ nationalityCode: "RU",
2417
+ nationalityCodeName: "\uB7EC\uC2DC\uC544",
2418
+ isoNumberNationalityCode: "643",
2419
+ nationalityEnglishAbbreviationName: "RUS"
2420
+ }
2421
+ ];
2422
+ const NationalitySearchInitialText = ({
2423
+ setSearchInput,
2424
+ setSearchKeyword
2425
+ }) => {
2426
+ const set = (keyword) => {
2427
+ setSearchInput(keyword);
2428
+ setSearchKeyword(keyword);
2429
+ };
2430
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$b("favorite-container"), children: [
2431
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: cx$b("favorite-title"), children: "\uB9CE\uC774 \uCC3E\uB294 \uAD6D\uC801" }),
2432
+ /* @__PURE__ */ jsxRuntime.jsx("ul", { className: cx$b("favorite"), children: favoriteList.map((item) => /* @__PURE__ */ jsxRuntime.jsx("li", { onClick: () => set(item.nationalityCodeName), children: /* @__PURE__ */ jsxRuntime.jsx("button", { children: item.nationalityCodeName }) }, item.nationalityCode)) })
2433
+ ] });
2434
+ };
2435
+ const NationalitySearchResult = ({ nationalityList, searchKeyWord, onSelect }) => {
2436
+ const [filterList, setFilterList] = React.useState([]);
2437
+ React.useEffect(() => {
2438
+ const filterList2 = nationalityList.filter((item) => item.nationalityCodeName.includes(searchKeyWord)) || [];
2439
+ setFilterList(filterList2);
2440
+ }, [nationalityList, searchKeyWord]);
2441
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-4", children: [
2442
+ /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cx$b("favorite-title"), children: [
2264
2443
  "\uCD1D ",
2265
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-primary", children: filteredOrganizations.length }),
2444
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-primary", children: filterList.length }),
2266
2445
  "\uAC74\uC758 \uAC80\uC0C9\uACB0\uACFC"
2267
2446
  ] }),
2268
- filteredOrganizations.length > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Table, { variant: "horizontal", children: [
2269
- /* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
2270
- /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$9("th-padding"), children: "\uC120\uD0DD" }),
2271
- /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$9("th-padding"), children: "\uAE30\uAD00\uCF54\uB4DC" }),
2272
- /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$9("th-padding"), children: "\uAE30\uAD00\uBA85" })
2273
- ] }) }),
2274
- /* @__PURE__ */ jsxRuntime.jsx("tbody", { children: filteredOrganizations.map((organization) => {
2275
- return /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
2276
- /* @__PURE__ */ jsxRuntime.jsx("td", { children: /* @__PURE__ */ jsxRuntime.jsx(
2277
- "input",
2278
- {
2279
- type: "radio",
2280
- name: "organization",
2281
- value: organization.organizationCode || "",
2282
- onChange: () => onOrganizationSelect(organization)
2283
- }
2284
- ) }),
2285
- /* @__PURE__ */ jsxRuntime.jsx("td", { children: organization.organizationCode }),
2286
- /* @__PURE__ */ jsxRuntime.jsx("td", { children: organization.organizationName })
2287
- ] }, organization.organizationCode);
2288
- }) })
2289
- ] }) : /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Table, { variant: "horizontal", children: [
2290
- /* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
2291
- /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$9("th-padding"), children: "\uC120\uD0DD" }),
2292
- /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$9("th-padding"), children: "\uAE30\uAD00\uCF54\uB4DC" }),
2293
- /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$9("th-padding"), children: "\uAE30\uAD00\uBA85" })
2294
- ] }) }),
2295
- /* @__PURE__ */ jsxRuntime.jsx("tbody", { children: /* @__PURE__ */ jsxRuntime.jsx("tr", { children: /* @__PURE__ */ jsxRuntime.jsx("td", { colSpan: 3, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$9("no-result"), children: [
2296
- /* @__PURE__ */ jsxRuntime.jsx(salesFrontendAssets.IconGraphicsFeedbackEmpty, {}),
2297
- /* @__PURE__ */ jsxRuntime.jsx("p", { children: "\uC870\uD68C \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4." }),
2298
- /* @__PURE__ */ jsxRuntime.jsx("p", { children: "\uC785\uB825\uD55C \uC815\uBCF4\uB97C \uB2E4\uC2DC \uD655\uC778\uD574\uC8FC\uC138\uC694." })
2299
- ] }) }) }) })
2447
+ /* @__PURE__ */ jsxRuntime.jsx("ul", { className: cx$b("favorite"), children: filterList.length > 0 && filterList.map((item, index) => {
2448
+ return /* @__PURE__ */ jsxRuntime.jsx("li", { onClick: () => onSelect(item.nationalityCodeName), children: /* @__PURE__ */ jsxRuntime.jsx("button", { children: highlightOnSearchKeyword$1(item.nationalityCodeName, searchKeyWord) }) }, `${index}-${item.nationalityCode}`);
2449
+ }) }),
2450
+ filterList.length === 0 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$b("search-result"), children: [
2451
+ "`",
2452
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-primary", children: searchKeyWord }),
2453
+ "`\uC5D0 \uB300\uD55C \uAC80\uC0C9\uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."
2300
2454
  ] })
2301
2455
  ] });
2302
- }
2303
-
2304
- const { TextField: TextField$2 } = salesFrontendDesignSystem.FormField;
2305
- const cx$8 = classNames.bind(styles$5);
2306
- function OrganizationSearch({
2307
- searchTerm,
2308
- setSearchTerm,
2309
- searchInput,
2310
- setSearchInput,
2311
- organizationList,
2312
- onOrganizationSelect
2313
- }) {
2314
- const handleSearch = () => {
2315
- setSearchTerm(searchInput);
2316
- };
2317
- const handleReset = () => {
2318
- setSearchTerm("");
2319
- setSearchInput("");
2320
- };
2321
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2322
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$8("search-section"), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$8("search-filters"), children: [
2323
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$8("search-filter-section"), children: [
2324
- /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.FormField.Label, { className: "subtitle3 text-body-1", children: "\uAE30\uAD00\uBA85/\uCF54\uB4DC" }),
2456
+ };
2457
+ function NationalityComponent({ isOpen, onClose, setValue }) {
2458
+ const {
2459
+ search,
2460
+ onClear,
2461
+ searchKeyWord,
2462
+ onKeyUp,
2463
+ onSearch,
2464
+ searchList,
2465
+ searchInput,
2466
+ onSelect,
2467
+ setSearchInput,
2468
+ setSearchKeyword
2469
+ } = useSearchNationality({
2470
+ setValue,
2471
+ onClose,
2472
+ isOpen
2473
+ });
2474
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Modal.Root, { isOpen, onClose, modalSize: "full-screen", children: [
2475
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Overlay, {}),
2476
+ /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Modal.Content, { children: [
2477
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Header, { headerTitle: "\uAD6D\uC801 \uAC80\uC0C9", showCloseButton: true }),
2478
+ /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Modal.Body, { children: [
2325
2479
  /* @__PURE__ */ jsxRuntime.jsx(
2326
- TextField$2,
2480
+ InputBox$1,
2327
2481
  {
2328
- value: searchInput,
2329
- onChange: (e) => setSearchInput(e.target.value),
2330
- size: "medium",
2331
- onKeyUp: (e) => e.key === "Enter" && handleSearch(),
2332
- rootProps: {
2333
- className: cx$8("search-input"),
2334
- clearable: true,
2335
- onClear: handleReset
2336
- }
2482
+ clearable: true,
2483
+ endElement: /* @__PURE__ */ jsxRuntime.jsx("button", { children: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendAssets.IconMainUiSearch, { onClick: search }) }),
2484
+ onClear,
2485
+ className: cx$b("search-input"),
2486
+ children: /* @__PURE__ */ jsxRuntime.jsx(
2487
+ Input$1,
2488
+ {
2489
+ onChange: onSearch,
2490
+ onKeyUp,
2491
+ placeholder: "\uC9C0\uBC88, \uB3C4\uB85C\uBA85, \uAC74\uBB3C\uBA85, \uC6B0\uD3B8\uBC88\uD638 \uC785\uB825",
2492
+ size: "large",
2493
+ value: searchInput
2494
+ }
2495
+ )
2337
2496
  }
2338
- )
2339
- ] }),
2340
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$8("search-buttons"), children: [
2341
- /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Button, { appearance: "outline", size: "medium", variant: "secondary", onClick: handleReset, children: "\uCD08\uAE30\uD654" }),
2342
- /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Button, { appearance: "filled", size: "medium", variant: "primary", onClick: handleSearch, children: "\uC870\uD68C" })
2497
+ ),
2498
+ !searchKeyWord && /* @__PURE__ */ jsxRuntime.jsx(NationalitySearchInitialText, { setSearchInput, setSearchKeyword }),
2499
+ searchKeyWord && /* @__PURE__ */ jsxRuntime.jsx(NationalitySearchResult, { nationalityList: searchList, searchKeyWord, onSelect })
2343
2500
  ] })
2344
- ] }) }),
2345
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$8("divider") }),
2346
- searchTerm && /* @__PURE__ */ jsxRuntime.jsx(
2347
- OrganizationSearchResult,
2348
- {
2349
- filteredOrganizations: organizationList,
2350
- onOrganizationSelect,
2351
- searchTerm
2352
- }
2353
- )
2354
- ] });
2501
+ ] })
2502
+ ] }) });
2355
2503
  }
2356
2504
 
2357
- const OrganizationSearchModal = ({ isOpen, onClose, onSelect }) => {
2358
- const [selectedOrganization, setSelectedOrganization] = React.useState(null);
2359
- const [searchTerm, setSearchTerm] = React.useState("");
2505
+ function useSearchNationality({ setValue, onClose, isOpen }) {
2506
+ const [searchKeyWord, setSearchKeyword] = React.useState("");
2507
+ const [selectedNationality, setSelectedNationality] = React.useState();
2360
2508
  const [searchInput, setSearchInput] = React.useState("");
2361
- const { data } = method.useSearchOrganizationQuery({
2362
- searchWord: searchTerm
2363
- });
2364
- const [organizationList, setOrganizationList] = React.useState([]);
2365
- React.useEffect(() => {
2366
- if (data?.data) {
2367
- setOrganizationList(data.data);
2509
+ const { data } = method.useSearchNationalityQuery({ searchKeyWord });
2510
+ const searchList = data?.data.nationalityList || [];
2511
+ const onSearch = (e) => {
2512
+ const typeStr = e.target.value;
2513
+ setSearchInput(typeStr);
2514
+ };
2515
+ const search = () => {
2516
+ if (searchInput === "") {
2517
+ onClear();
2518
+ return;
2519
+ }
2520
+ if (searchInput && searchInput.length > 0) {
2521
+ setSearchKeyword(searchInput);
2522
+ setSelectedNationality("");
2523
+ }
2524
+ };
2525
+ const onKeyUp = (e) => {
2526
+ const currentValue = e.target.value;
2527
+ if (currentValue.length === 0 || currentValue.slice(-1).normalize("NFD").length > 1) {
2528
+ search();
2529
+ }
2530
+ };
2531
+ const onClear = React.useCallback(() => {
2532
+ setSearchKeyword("");
2533
+ setSearchInput("");
2534
+ setSelectedNationality("");
2535
+ }, []);
2536
+ const onSelect = (nationality) => {
2537
+ setSelectedNationality(nationality);
2538
+ const value = searchList.find((item) => item.nationalityCodeName === nationality);
2539
+ value && setValue(value);
2540
+ onClose();
2541
+ };
2542
+ React.useEffect(() => {
2543
+ if (isOpen) {
2544
+ setSelectedNationality("");
2545
+ setSearchKeyword("");
2546
+ }
2547
+ }, [isOpen]);
2548
+ return {
2549
+ onClear,
2550
+ searchKeyWord,
2551
+ searchList,
2552
+ selectedNationality,
2553
+ onSearch,
2554
+ onKeyUp,
2555
+ search,
2556
+ searchInput,
2557
+ onSelect,
2558
+ setSearchKeyword,
2559
+ setSearchInput
2560
+ };
2561
+ }
2562
+ const useNationalityComponent = () => {
2563
+ const [nationality, setNationality] = React.useState();
2564
+ const { isOpen, closeModal, openModal } = salesFrontendDesignSystem.useModalState();
2565
+ const NationalitySearchComponent = () => /* @__PURE__ */ jsxRuntime.jsx(NationalityComponent, { isOpen, onClose: closeModal, setValue: setNationality });
2566
+ return {
2567
+ nationality,
2568
+ openModal,
2569
+ NationalitySearchComponent
2570
+ };
2571
+ };
2572
+
2573
+ const url = (() => {
2574
+ const type = salesFrontendUtils.isClient() ? window.location.hostname : "";
2575
+ if (type.includes("localhost") || type.includes("local.hanwhalife.com")) {
2576
+ return "https://nxl-nlc-stg.hanwhalife.com";
2577
+ }
2578
+ if (type.includes("dev")) {
2579
+ return "https://nxl-nlc-dev.hanwhalife.com";
2580
+ } else if (type.includes("stg")) {
2581
+ return "https://nxl-nlc-stg.hanwhalife.com";
2582
+ } else {
2583
+ return "https://nxl-nlc.hanwhalife.com";
2584
+ }
2585
+ })();
2586
+ function useNxlOne({ bizCode, tmplCode, ncsrInfoUuid, nlcCtfnId, t }) {
2587
+ const buildUrl = React.useCallback(() => {
2588
+ const targetUrl = new URL("/auth/v1", url);
2589
+ targetUrl.searchParams.set("bizCode", bizCode);
2590
+ targetUrl.searchParams.set("tmplCode", tmplCode);
2591
+ if (nlcCtfnId) {
2592
+ targetUrl.searchParams.set("nlcCtfnId", nlcCtfnId);
2593
+ }
2594
+ if (t) {
2595
+ targetUrl.searchParams.set("t", t);
2596
+ }
2597
+ if (ncsrInfoUuid) {
2598
+ targetUrl.searchParams.set("ncsrInfoUuid", ncsrInfoUuid);
2599
+ }
2600
+ return targetUrl.toString();
2601
+ }, [bizCode, tmplCode, ncsrInfoUuid, nlcCtfnId, t]);
2602
+ const redirect = () => {
2603
+ const targetUrl = buildUrl();
2604
+ location.href = targetUrl;
2605
+ };
2606
+ const open = async (options) => {
2607
+ return new Promise((resolve, reject) => {
2608
+ const targetUrl = buildUrl();
2609
+ console.log("targetUrl", targetUrl);
2610
+ const width = options && options.popupWidth || 720;
2611
+ const height = options && options.popupHeight || 720;
2612
+ const left = options && options.popupLeft || (window.screen.width - width) / 2;
2613
+ const top = options && options.popupTop || (window.screen.height - height) / 2;
2614
+ const popupFeatures = `width=${width},height=${height},left=${left},top=${top}`;
2615
+ const popup = window.open(targetUrl, options && options.windowName || "_self_cert", popupFeatures);
2616
+ if (!popup) {
2617
+ reject(new Error("\uCC28\uB2E8\uB418\uAC70\uB098 \uC5F4\uB9AC\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4."));
2618
+ return;
2619
+ }
2620
+ const handleMessage = (event) => {
2621
+ if (event.origin !== new URL(targetUrl).origin) {
2622
+ return;
2623
+ }
2624
+ if (event.data) {
2625
+ resolve(event.data);
2626
+ } else {
2627
+ reject(new Error("\uC778\uC99D\uC774 \uCDE8\uC18C\uB418\uAC70\uB098 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4."));
2628
+ }
2629
+ popup.close();
2630
+ window.removeEventListener("message", handleMessage);
2631
+ };
2632
+ window.addEventListener("message", handleMessage);
2633
+ });
2634
+ };
2635
+ const Iframe = function({
2636
+ height = 720,
2637
+ className,
2638
+ style,
2639
+ allow,
2640
+ sandbox = "allow-scripts allow-forms allow-same-origin",
2641
+ onSuccess,
2642
+ onError,
2643
+ onClose,
2644
+ strictOrigin = true
2645
+ }) {
2646
+ const targetUrl = buildUrl();
2647
+ React.useEffect(() => {
2648
+ if (!onSuccess && !onError) {
2649
+ return;
2650
+ }
2651
+ const handler = (e) => {
2652
+ console.log("message event", e);
2653
+ const d = e.data;
2654
+ if (d) {
2655
+ if (d.action === "close") {
2656
+ onClose?.(d);
2657
+ } else if (d.action === "error") {
2658
+ onError?.(d);
2659
+ } else if (d.action === "complete") {
2660
+ onSuccess?.(d);
2661
+ }
2662
+ } else {
2663
+ onError?.({
2664
+ action: "error",
2665
+ nlcCtfnId: "",
2666
+ redirectUrl: ""
2667
+ });
2668
+ }
2669
+ };
2670
+ window.addEventListener("message", handler);
2671
+ return () => window.removeEventListener("message", handler);
2672
+ }, [onClose, onError, onSuccess, strictOrigin]);
2673
+ return /* @__PURE__ */ jsxRuntime.jsx(
2674
+ "iframe",
2675
+ {
2676
+ src: targetUrl,
2677
+ width: "100%",
2678
+ height: typeof height === "number" ? `${height}px` : height,
2679
+ style: { border: 0, ...style },
2680
+ className,
2681
+ sandbox,
2682
+ ...allow ? { allow } : {}
2683
+ }
2684
+ );
2685
+ };
2686
+ return { open, redirect, Iframe };
2687
+ }
2688
+
2689
+ const CODES = {
2690
+ appInit: {
2691
+ dev: {
2692
+ tmplCode: "HST",
2693
+ bizCode: "DPS"
2694
+ },
2695
+ stg: {
2696
+ tmplCode: "R7Y",
2697
+ bizCode: "DPS"
2698
+ }
2699
+ },
2700
+ tabletEformInit: {
2701
+ dev: {
2702
+ tmplCode: "4X2",
2703
+ bizCode: "DET"
2704
+ },
2705
+ stg: {
2706
+ tmplCode: "NO7",
2707
+ bizCode: "DET"
2708
+ }
2709
+ },
2710
+ tabletEformRe: {
2711
+ dev: {
2712
+ tmplCode: "WJ1",
2713
+ bizCode: "DET"
2714
+ },
2715
+ stg: {
2716
+ tmplCode: "WQF",
2717
+ bizCode: "DET"
2718
+ }
2719
+ },
2720
+ tabletEformSubInfo: {
2721
+ dev: {
2722
+ tmplCode: "GJB",
2723
+ bizCode: "DET"
2724
+ },
2725
+ stg: {
2726
+ tmplCode: "C1D",
2727
+ bizCode: "DET"
2728
+ }
2729
+ },
2730
+ smartphoneEformSubInfo: {
2731
+ dev: {
2732
+ tmplCode: "YOQ",
2733
+ bizCode: "DES"
2734
+ },
2735
+ stg: {
2736
+ tmplCode: "FLL",
2737
+ bizCode: "DES"
2738
+ }
2739
+ },
2740
+ smartphoneEformAlimtalkInit: {
2741
+ dev: {
2742
+ tmplCode: "8YA",
2743
+ bizCode: "DES"
2744
+ },
2745
+ stg: {
2746
+ tmplCode: "T9L",
2747
+ bizCode: "DES"
2748
+ }
2749
+ },
2750
+ smartphoneEformAlimtalkRe: {
2751
+ dev: {
2752
+ tmplCode: "NPK",
2753
+ bizCode: "DES"
2754
+ },
2755
+ stg: {
2756
+ tmplCode: "YMV",
2757
+ bizCode: "DES"
2758
+ }
2759
+ },
2760
+ tabletNewCustomer: {
2761
+ dev: {
2762
+ tmplCode: "948",
2763
+ bizCode: "DIS"
2764
+ },
2765
+ stg: {
2766
+ tmplCode: "YQM",
2767
+ bizCode: "DIS"
2768
+ }
2769
+ },
2770
+ tabletNewCustomerLegalRep: {
2771
+ dev: {
2772
+ tmplCode: "SBI",
2773
+ bizCode: "DIS"
2774
+ },
2775
+ stg: {
2776
+ tmplCode: "FB3",
2777
+ bizCode: "DIS"
2778
+ }
2779
+ },
2780
+ tabletCustomerInfoPlanAgreement: {
2781
+ dev: {
2782
+ tmplCode: "QCA",
2783
+ bizCode: "DIS"
2784
+ },
2785
+ stg: {
2786
+ tmplCode: "AST",
2787
+ bizCode: "DIS"
2788
+ }
2789
+ },
2790
+ tabletCustomerInfoProductAgreement: {
2791
+ dev: {
2792
+ tmplCode: "I7K",
2793
+ bizCode: "DIS"
2794
+ },
2795
+ stg: {
2796
+ tmplCode: "XG6",
2797
+ bizCode: "DIS"
2798
+ }
2799
+ }
2800
+ };
2801
+ function useNxlOneModal({
2802
+ onSuccess = (result) => {
2803
+ console.log("on success", JSON.stringify(result));
2804
+ },
2805
+ onError = (result) => {
2806
+ console.log("on error", JSON.stringify(result));
2807
+ },
2808
+ onClose = (result) => {
2809
+ console.log("on close", JSON.stringify(result));
2810
+ },
2811
+ modalSize = "medium",
2812
+ step = "appInit",
2813
+ env = "stg"
2814
+ }) {
2815
+ const { isOpen, openModal, closeModal } = salesFrontendDesignSystem.useModalState();
2816
+ const { bizCode, tmplCode } = CODES[step][env];
2817
+ const { Iframe } = useNxlOne({
2818
+ bizCode,
2819
+ tmplCode
2820
+ });
2821
+ return {
2822
+ openNxlOneModal: openModal,
2823
+ closeNxlOneModal: closeModal,
2824
+ isNxlOneModalOpen: isOpen,
2825
+ NxlModalComponent: /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Modal.Root, { isOpen, onClose: closeModal, modalSize, children: [
2826
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Overlay, {}),
2827
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Content, { children: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Body, { raw: true, children: /* @__PURE__ */ jsxRuntime.jsx(
2828
+ Iframe,
2829
+ {
2830
+ onSuccess,
2831
+ onError,
2832
+ onClose: (result) => {
2833
+ onClose(result);
2834
+ closeModal();
2835
+ }
2836
+ }
2837
+ ) }) })
2838
+ ] })
2839
+ };
2840
+ }
2841
+
2842
+ const cx$a = classNames.bind(styles$7);
2843
+ const { InputBox, Input } = salesFrontendDesignSystem.FormCore;
2844
+ const VisaSearchInitialText = ({ visaList, onSelect }) => {
2845
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$a("favorite-container"), children: /* @__PURE__ */ jsxRuntime.jsx("ul", { className: cx$a("favorite"), children: visaList.map((item, index) => {
2846
+ return /* @__PURE__ */ jsxRuntime.jsx("li", { onClick: () => onSelect(item), children: /* @__PURE__ */ jsxRuntime.jsx("button", { children: item.integrationCodeValueName }) }, `${index}-${item.integrationCodeValueName}`);
2847
+ }) }) });
2848
+ };
2849
+ const VisaSearchResult = ({ visaList, searchKeyword, onSelect }) => {
2850
+ const [filterList, setFilterList] = React.useState([]);
2851
+ React.useEffect(() => {
2852
+ const filterList2 = visaList.filter((item) => item.integrationCodeValueName?.includes(searchKeyword)) || [];
2853
+ setFilterList(filterList2);
2854
+ }, [visaList, searchKeyword]);
2855
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-4", children: [
2856
+ /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cx$a("favorite-title"), children: [
2857
+ "\uCD1D ",
2858
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-primary", children: filterList.length }),
2859
+ "\uAC74\uC758 \uAC80\uC0C9\uACB0\uACFC"
2860
+ ] }),
2861
+ /* @__PURE__ */ jsxRuntime.jsx("ul", { className: cx$a("favorite"), children: filterList.length > 0 && filterList.map((item, index) => {
2862
+ return /* @__PURE__ */ jsxRuntime.jsx("li", { onClick: () => onSelect(item), children: /* @__PURE__ */ jsxRuntime.jsx("button", { children: highlightOnSearchKeyword$1(`${item.integrationCodeValueName}`, searchKeyword) }) }, `${index}-${item.integrationCodeValueName}`);
2863
+ }) }),
2864
+ filterList.length === 0 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$a("search-result"), children: [
2865
+ "`",
2866
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-primary", children: searchKeyword }),
2867
+ "`\uC5D0 \uB300\uD55C \uAC80\uC0C9\uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."
2868
+ ] })
2869
+ ] });
2870
+ };
2871
+ function VisaComponent({ isOpen, onClose, setValue }) {
2872
+ const { search, onClear, searchKeyword, onKeyUp, onSearch, searchList, searchInput, onSelect } = useSearchVisa({
2873
+ setValue,
2874
+ onClose,
2875
+ isOpen
2876
+ });
2877
+ return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Modal.Root, { isOpen, onClose, modalSize: "full-screen", children: [
2878
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Overlay, {}),
2879
+ /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Modal.Content, { children: [
2880
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Header, { headerTitle: "\uCCB4\uB958\uC790\uACA9 \uAC80\uC0C9", showCloseButton: true }),
2881
+ /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Modal.Body, { children: [
2882
+ /* @__PURE__ */ jsxRuntime.jsx(
2883
+ InputBox,
2884
+ {
2885
+ clearable: true,
2886
+ endElement: /* @__PURE__ */ jsxRuntime.jsx("button", { children: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendAssets.IconMainUiSearch, { onClick: search }) }),
2887
+ onClear,
2888
+ className: cx$a("search-input"),
2889
+ children: /* @__PURE__ */ jsxRuntime.jsx(
2890
+ Input,
2891
+ {
2892
+ onChange: onSearch,
2893
+ onKeyUp,
2894
+ placeholder: "\uCF54\uB4DC, \uC790\uACA9\uBA85 \uC785\uB825",
2895
+ size: "large",
2896
+ value: searchInput
2897
+ }
2898
+ )
2899
+ }
2900
+ ),
2901
+ !searchKeyword && /* @__PURE__ */ jsxRuntime.jsx(VisaSearchInitialText, { visaList: searchList, onSelect }),
2902
+ searchKeyword && /* @__PURE__ */ jsxRuntime.jsx(VisaSearchResult, { visaList: searchList, searchKeyword, onSelect })
2903
+ ] })
2904
+ ] })
2905
+ ] }) });
2906
+ }
2907
+
2908
+ function useSearchVisa({ setValue, onClose, isOpen }) {
2909
+ const [searchKeyword, setSearchKeyword] = React.useState("");
2910
+ const [selectedVisa, setSelectedVisa] = React.useState();
2911
+ const [searchInput, setSearchInput] = React.useState("");
2912
+ const { data: visaList } = method.useSearchVisaQuery();
2913
+ const searchList = visaList?.data?.visaStatusList || [];
2914
+ const onSearch = (e) => {
2915
+ const typeStr = e.target.value;
2916
+ setSearchInput(typeStr);
2917
+ };
2918
+ const search = () => {
2919
+ if (searchInput === "") {
2920
+ onClear();
2921
+ return;
2922
+ }
2923
+ if (searchInput && searchInput.length > 0) {
2924
+ setSearchKeyword(searchInput);
2925
+ setSelectedVisa(void 0);
2926
+ }
2927
+ };
2928
+ const onKeyUp = (e) => {
2929
+ if (e.key === "Enter") {
2930
+ search();
2931
+ }
2932
+ };
2933
+ const onClear = React.useCallback(() => {
2934
+ setSearchKeyword("");
2935
+ setSearchInput("");
2936
+ setSelectedVisa(void 0);
2937
+ }, []);
2938
+ const onSelect = (visa) => {
2939
+ setSelectedVisa(visa);
2940
+ setValue(visa);
2941
+ onClose();
2942
+ };
2943
+ React.useEffect(() => {
2944
+ if (isOpen) {
2945
+ setSelectedVisa(void 0);
2946
+ setSearchKeyword("");
2947
+ }
2948
+ }, [isOpen]);
2949
+ return {
2950
+ onClear,
2951
+ searchKeyword,
2952
+ searchList,
2953
+ selectedVisa,
2954
+ onSearch,
2955
+ onKeyUp,
2956
+ search,
2957
+ searchInput,
2958
+ onSelect,
2959
+ setSearchKeyword,
2960
+ setSearchInput
2961
+ };
2962
+ }
2963
+ const useVisaComponent = () => {
2964
+ const [visa, setVisa] = React.useState();
2965
+ const { isOpen, closeModal, openModal } = salesFrontendDesignSystem.useModalState();
2966
+ const VisaSearchComponent = () => /* @__PURE__ */ jsxRuntime.jsx(VisaComponent, { isOpen, onClose: closeModal, setValue: setVisa });
2967
+ return {
2968
+ visa,
2969
+ openModal,
2970
+ VisaSearchComponent
2971
+ };
2972
+ };
2973
+
2974
+ const cx$9 = classNames.bind(styles$8);
2975
+ function DeaCustomerSearchResult({
2976
+ customerList,
2977
+ onCustomerSelect,
2978
+ selectedCustomer
2979
+ }) {
2980
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$9("result-section"), children: [
2981
+ /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cx$9("result-title"), children: [
2982
+ "\uCD1D ",
2983
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-primary", children: customerList.length }),
2984
+ "\uAC74\uC758 \uAC80\uC0C9\uACB0\uACFC"
2985
+ ] }),
2986
+ /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Table, { variant: "horizontal", children: [
2987
+ /* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
2988
+ /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$9("th-padding"), children: "\uC120\uD0DD" }),
2989
+ /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$9("th-padding"), children: "\uACE0\uAC1DID" }),
2990
+ /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$9("th-padding"), children: "\uACE0\uAC1D\uBA85" }),
2991
+ /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$9("th-padding"), children: "\uC8FC\uBBFC\uB4F1\uB85D\uBC88\uD638" }),
2992
+ /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$9("th-padding"), children: "\uC9C1\uC885\uC5C5\uC885\uBA85" }),
2993
+ /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$9("th-padding"), children: "\uC804\uD654\uBC88\uD638" }),
2994
+ /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$9("th-padding"), children: "\uC8FC\uC18C" })
2995
+ ] }) }),
2996
+ /* @__PURE__ */ jsxRuntime.jsx("tbody", { children: customerList.length > 0 ? customerList.map((customer) => /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
2997
+ /* @__PURE__ */ jsxRuntime.jsx("td", { children: /* @__PURE__ */ jsxRuntime.jsx(
2998
+ "input",
2999
+ {
3000
+ type: "radio",
3001
+ name: "customer",
3002
+ value: customer.customerId || "",
3003
+ checked: selectedCustomer?.customerId === customer.customerId,
3004
+ onChange: () => onCustomerSelect(customer)
3005
+ }
3006
+ ) }),
3007
+ /* @__PURE__ */ jsxRuntime.jsx("td", { children: customer.customerId }),
3008
+ /* @__PURE__ */ jsxRuntime.jsx("td", { children: customer.customerName }),
3009
+ /* @__PURE__ */ jsxRuntime.jsx("td", { children: customer.residentNumber }),
3010
+ /* @__PURE__ */ jsxRuntime.jsx("td", { children: customer.occupationKindName }),
3011
+ /* @__PURE__ */ jsxRuntime.jsx("td", { children: customer.mobilePhoneNumber }),
3012
+ /* @__PURE__ */ jsxRuntime.jsx("td", { children: customer.address })
3013
+ ] }, customer.customerId)) : /* @__PURE__ */ jsxRuntime.jsx("tr", { children: /* @__PURE__ */ jsxRuntime.jsx("td", { colSpan: 7, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$9("no-result"), children: [
3014
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendAssets.IconGraphicsFeedbackEmpty, {}),
3015
+ /* @__PURE__ */ jsxRuntime.jsx("p", { children: "\uC870\uD68C \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4." }),
3016
+ /* @__PURE__ */ jsxRuntime.jsx("p", { children: "\uC785\uB825\uD55C \uC815\uBCF4\uB97C \uB2E4\uC2DC \uD655\uC778\uD574\uC8FC\uC138\uC694." })
3017
+ ] }) }) }) })
3018
+ ] })
3019
+ ] });
3020
+ }
3021
+
3022
+ const { TextField: TextField$2 } = salesFrontendDesignSystem.FormField;
3023
+ const cx$8 = classNames.bind(styles$8);
3024
+ function DeaCustomerSearch({
3025
+ setSearchParams,
3026
+ customerList,
3027
+ onCustomerSelect,
3028
+ selectedCustomer
3029
+ }) {
3030
+ const [residentNumber1, setResidentNumber1] = React.useState("");
3031
+ const [residentNumber2, setResidentNumber2] = React.useState("");
3032
+ const handleSearch = () => {
3033
+ setSearchParams({ residentNumber: `${residentNumber1}${residentNumber2}` });
3034
+ };
3035
+ const handleReset = () => {
3036
+ setResidentNumber1("");
3037
+ setResidentNumber2("");
3038
+ setSearchParams({});
3039
+ };
3040
+ const onKeyUp = (e) => {
3041
+ e.key === "Enter" && handleSearch();
3042
+ };
3043
+ const onKeyDown = (e) => {
3044
+ if (!(e.key === "Backspace" || !isNaN(parseInt(e.key)))) {
3045
+ e.preventDefault();
3046
+ }
3047
+ };
3048
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
3049
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$8("search-section"), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$8("search-filters"), children: [
3050
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$8("search-filter-section"), children: [
3051
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.FormField.Label, { className: "subtitle3 text-body-1", children: "\uACE0\uAC1D \uAD6C\uBD84" }),
3052
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Select, { value: "personal", placeholder: "\uAC1C\uC778", disabled: true, style: { width: "100px" }, children: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Select.Option, { value: "personal", children: "\uAC1C\uC778" }) }),
3053
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.FormField.Label, { className: "subtitle3 text-body-1", children: "\uC8FC\uBBFC\uB4F1\uB85D\uBC88\uD638" }),
3054
+ /* @__PURE__ */ jsxRuntime.jsx(
3055
+ TextField$2,
3056
+ {
3057
+ value: residentNumber1,
3058
+ maxLength: 6,
3059
+ placeholder: "\uC55E 6\uC790\uB9AC \uC785\uB825",
3060
+ onChange: (e) => setResidentNumber1(e.target.value),
3061
+ size: "medium",
3062
+ onKeyUp,
3063
+ onKeyDown,
3064
+ rootProps: {
3065
+ className: cx$8("search-input"),
3066
+ onClear: () => {
3067
+ setResidentNumber1("");
3068
+ }
3069
+ }
3070
+ }
3071
+ ),
3072
+ "-",
3073
+ /* @__PURE__ */ jsxRuntime.jsx(
3074
+ TextField$2,
3075
+ {
3076
+ value: residentNumber2,
3077
+ maxLength: 7,
3078
+ placeholder: "\uB4A4 7\uC790\uB9AC \uC785\uB825",
3079
+ onChange: (e) => setResidentNumber2(e.target.value),
3080
+ size: "medium",
3081
+ onKeyDown,
3082
+ onKeyUp,
3083
+ rootProps: {
3084
+ className: cx$8("search-input"),
3085
+ onClear: () => {
3086
+ setResidentNumber2("");
3087
+ }
3088
+ }
3089
+ }
3090
+ )
3091
+ ] }),
3092
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$8("search-buttons"), children: [
3093
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Button, { appearance: "outline", size: "medium", variant: "secondary", onClick: handleReset, children: "\uCD08\uAE30\uD654" }),
3094
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Button, { appearance: "filled", size: "medium", variant: "primary", onClick: handleSearch, children: "\uC870\uD68C" })
3095
+ ] })
3096
+ ] }) }),
3097
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$8("divider") }),
3098
+ /* @__PURE__ */ jsxRuntime.jsx(
3099
+ DeaCustomerSearchResult,
3100
+ {
3101
+ customerList,
3102
+ onCustomerSelect,
3103
+ selectedCustomer
3104
+ }
3105
+ )
3106
+ ] });
3107
+ }
3108
+
3109
+ const DeaCustomerSearchModal = ({ isOpen, onClose, onSave }) => {
3110
+ const [selectedCustomer, setSelectedCustomer] = React.useState(null);
3111
+ const [searchParams, setSearchParams] = React.useState({});
3112
+ const canSearch = React.useMemo(() => !!(searchParams.customerName || searchParams.residentNumber), [searchParams]);
3113
+ const { data, isFetching } = reactQuery.useQuery({
3114
+ queryKey: ["deaCustomerSearch", searchParams],
3115
+ queryFn: () => method.getDspCustomerListMethod(searchParams),
3116
+ enabled: canSearch,
3117
+ retry: false
3118
+ });
3119
+ const [customerList, setCustomerList] = React.useState([]);
3120
+ React.useEffect(() => {
3121
+ if (data?.data) {
3122
+ setCustomerList(data.data);
2368
3123
  } else {
2369
- setOrganizationList([]);
3124
+ setCustomerList([]);
2370
3125
  }
2371
3126
  }, [data]);
2372
- const handleOrganizationSelect = (organization) => {
2373
- setSelectedOrganization(organization);
3127
+ React.useEffect(() => {
3128
+ setSelectedCustomer(null);
3129
+ }, [customerList]);
3130
+ const handleCustomerSelect = (customer) => {
3131
+ setSelectedCustomer(customer);
2374
3132
  };
2375
- const handleSelect = () => {
2376
- if (selectedOrganization) {
2377
- onSelect(selectedOrganization);
3133
+ const handleSave = () => {
3134
+ if (selectedCustomer) {
3135
+ onSave(selectedCustomer);
2378
3136
  onClose();
2379
3137
  }
2380
3138
  };
2381
3139
  return /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Modal.Root, { isOpen, onClose, modalSize: "xlarge", children: [
2382
3140
  /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Overlay, {}),
2383
3141
  /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Modal.Content, { style: { height: "697px" }, children: [
2384
- /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Header, { headerTitle: "\uAE30\uAD00 \uAC80\uC0C9", showCloseButton: true }),
3142
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Header, { headerTitle: "\uACE0\uAC1D \uAC80\uC0C9", showCloseButton: true }),
2385
3143
  /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Body, { children: /* @__PURE__ */ jsxRuntime.jsx(
2386
- OrganizationSearch,
3144
+ DeaCustomerSearch,
2387
3145
  {
2388
- searchTerm,
2389
- setSearchTerm,
2390
- searchInput,
2391
- setSearchInput,
2392
- organizationList,
2393
- onOrganizationSelect: handleOrganizationSelect
3146
+ setSearchParams,
3147
+ customerList,
3148
+ onCustomerSelect: handleCustomerSelect,
3149
+ selectedCustomer,
3150
+ isLoading: isFetching
2394
3151
  }
2395
3152
  ) }),
2396
3153
  /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Footer, { children: /* @__PURE__ */ jsxRuntime.jsx(
@@ -2400,8 +3157,8 @@ const OrganizationSearchModal = ({ isOpen, onClose, onSelect }) => {
2400
3157
  size: "medium",
2401
3158
  appearance: "filled",
2402
3159
  width: "full",
2403
- onClick: handleSelect,
2404
- disabled: !selectedOrganization,
3160
+ onClick: handleSave,
3161
+ disabled: !selectedCustomer,
2405
3162
  children: "\uC800\uC7A5\uD558\uAE30"
2406
3163
  }
2407
3164
  ) })
@@ -2415,7 +3172,7 @@ const EMPLOYEE_SEARCH_TABS = [
2415
3172
  { value: "WKIS", label: "\uB0B4\uADFC" }
2416
3173
  ];
2417
3174
 
2418
- const cx$7 = classNames.bind(styles$6);
3175
+ const cx$7 = classNames.bind(styles$9);
2419
3176
  function EmployeeSearchResult({ filteredEmployees, onEmployeeSelect }) {
2420
3177
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$7("result-section"), children: [
2421
3178
  /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cx$7("result-title"), children: [
@@ -2468,7 +3225,7 @@ function EmployeeSearchResult({ filteredEmployees, onEmployeeSelect }) {
2468
3225
  }
2469
3226
 
2470
3227
  const { TextField: TextField$1 } = salesFrontendDesignSystem.FormField;
2471
- const cx$6 = classNames.bind(styles$6);
3228
+ const cx$6 = classNames.bind(styles$9);
2472
3229
  function EmployeeSearch({
2473
3230
  activeTab,
2474
3231
  onTabChange,
@@ -2495,7 +3252,7 @@ function EmployeeSearch({
2495
3252
  {
2496
3253
  value: searchInput,
2497
3254
  onChange: (e) => setSearchInput(e.target.value),
2498
- className: styles$6.searchInput,
3255
+ className: styles$9.searchInput,
2499
3256
  size: "medium",
2500
3257
  onKeyUp: (e) => e.key === "Enter" && handleSearch(),
2501
3258
  rootProps: {
@@ -2512,7 +3269,7 @@ function EmployeeSearch({
2512
3269
  {
2513
3270
  value: activeTab,
2514
3271
  onChange: (value) => onTabChange(value),
2515
- className: styles$6.select,
3272
+ className: styles$9.select,
2516
3273
  size: "medium",
2517
3274
  children: EMPLOYEE_SEARCH_TABS.map((option) => /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Select.Option, { value: option.value, children: option.label }, option.value))
2518
3275
  }
@@ -2599,7 +3356,7 @@ const EmployeeSearchModal = ({ isOpen, onClose, onSelect }) => {
2599
3356
  ] });
2600
3357
  };
2601
3358
 
2602
- const cx$5 = classNames.bind(styles$7);
3359
+ const cx$5 = classNames.bind(styles$a);
2603
3360
  const JobVehicleSearchGrade = ({ riskGrade, hospitalizationGrade }) => {
2604
3361
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$5("grade-section"), children: [
2605
3362
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$5("icon-title"), children: [
@@ -2620,7 +3377,7 @@ const JobVehicleSearchGrade = ({ riskGrade, hospitalizationGrade }) => {
2620
3377
  ] });
2621
3378
  };
2622
3379
 
2623
- const cx$4 = classNames.bind(styles$8);
3380
+ const cx$4 = classNames.bind(styles$b);
2624
3381
  function VehicleSearch({ vehicles, onVehicleSelect, selectedVehicle }) {
2625
3382
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$4("vehicle-search-section"), children: [
2626
3383
  /* @__PURE__ */ jsxRuntime.jsx("p", { children: "\uC6B4\uC804 \uCC28\uC885" }),
@@ -2721,7 +3478,7 @@ const useJobVehicleSearch = () => {
2721
3478
  };
2722
3479
  };
2723
3480
 
2724
- const cx$3 = classNames.bind(styles$7);
3481
+ const cx$3 = classNames.bind(styles$a);
2725
3482
  function useJobVehicleSearchModal() {
2726
3483
  const {
2727
3484
  selectedVehicle,
@@ -2819,46 +3576,45 @@ function useJobVehicleSearchModal() {
2819
3576
  };
2820
3577
  }
2821
3578
 
2822
- const cx$2 = classNames.bind(styles$9);
2823
- function DeaCustomerSearchResult({
2824
- customerList,
2825
- onCustomerSelect,
2826
- selectedCustomer
3579
+ const cx$2 = classNames.bind(styles$c);
3580
+ function OrganizationSearchResult({
3581
+ filteredOrganizations,
3582
+ onOrganizationSelect
2827
3583
  }) {
2828
3584
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$2("result-section"), children: [
2829
3585
  /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cx$2("result-title"), children: [
2830
3586
  "\uCD1D ",
2831
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-primary", children: customerList.length }),
3587
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-primary", children: filteredOrganizations.length }),
2832
3588
  "\uAC74\uC758 \uAC80\uC0C9\uACB0\uACFC"
2833
3589
  ] }),
2834
- /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Table, { variant: "horizontal", children: [
3590
+ filteredOrganizations.length > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Table, { variant: "horizontal", children: [
2835
3591
  /* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
2836
3592
  /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$2("th-padding"), children: "\uC120\uD0DD" }),
2837
- /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$2("th-padding"), children: "\uACE0\uAC1DID" }),
2838
- /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$2("th-padding"), children: "\uACE0\uAC1D\uBA85" }),
2839
- /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$2("th-padding"), children: "\uC8FC\uBBFC\uB4F1\uB85D\uBC88\uD638" }),
2840
- /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$2("th-padding"), children: "\uC9C1\uC885\uC5C5\uC885\uBA85" }),
2841
- /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$2("th-padding"), children: "\uC804\uD654\uBC88\uD638" }),
2842
- /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$2("th-padding"), children: "\uC8FC\uC18C" })
3593
+ /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$2("th-padding"), children: "\uAE30\uAD00\uCF54\uB4DC" }),
3594
+ /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$2("th-padding"), children: "\uAE30\uAD00\uBA85" })
2843
3595
  ] }) }),
2844
- /* @__PURE__ */ jsxRuntime.jsx("tbody", { children: customerList.length > 0 ? customerList.map((customer) => /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
2845
- /* @__PURE__ */ jsxRuntime.jsx("td", { children: /* @__PURE__ */ jsxRuntime.jsx(
2846
- "input",
2847
- {
2848
- type: "radio",
2849
- name: "customer",
2850
- value: customer.customerId || "",
2851
- checked: selectedCustomer?.customerId === customer.customerId,
2852
- onChange: () => onCustomerSelect(customer)
2853
- }
2854
- ) }),
2855
- /* @__PURE__ */ jsxRuntime.jsx("td", { children: customer.customerId }),
2856
- /* @__PURE__ */ jsxRuntime.jsx("td", { children: customer.customerName }),
2857
- /* @__PURE__ */ jsxRuntime.jsx("td", { children: customer.residentNumber }),
2858
- /* @__PURE__ */ jsxRuntime.jsx("td", { children: customer.occupationKindName }),
2859
- /* @__PURE__ */ jsxRuntime.jsx("td", { children: customer.mobilePhoneNumber }),
2860
- /* @__PURE__ */ jsxRuntime.jsx("td", { children: customer.address })
2861
- ] }, customer.customerId)) : /* @__PURE__ */ jsxRuntime.jsx("tr", { children: /* @__PURE__ */ jsxRuntime.jsx("td", { colSpan: 7, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$2("no-result"), children: [
3596
+ /* @__PURE__ */ jsxRuntime.jsx("tbody", { children: filteredOrganizations.map((organization) => {
3597
+ return /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
3598
+ /* @__PURE__ */ jsxRuntime.jsx("td", { children: /* @__PURE__ */ jsxRuntime.jsx(
3599
+ "input",
3600
+ {
3601
+ type: "radio",
3602
+ name: "organization",
3603
+ value: organization.organizationCode || "",
3604
+ onChange: () => onOrganizationSelect(organization)
3605
+ }
3606
+ ) }),
3607
+ /* @__PURE__ */ jsxRuntime.jsx("td", { children: organization.organizationCode }),
3608
+ /* @__PURE__ */ jsxRuntime.jsx("td", { children: organization.organizationName })
3609
+ ] }, organization.organizationCode);
3610
+ }) })
3611
+ ] }) : /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Table, { variant: "horizontal", children: [
3612
+ /* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
3613
+ /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$2("th-padding"), children: "\uC120\uD0DD" }),
3614
+ /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$2("th-padding"), children: "\uAE30\uAD00\uCF54\uB4DC" }),
3615
+ /* @__PURE__ */ jsxRuntime.jsx("th", { className: cx$2("th-padding"), children: "\uAE30\uAD00\uBA85" })
3616
+ ] }) }),
3617
+ /* @__PURE__ */ jsxRuntime.jsx("tbody", { children: /* @__PURE__ */ jsxRuntime.jsx("tr", { children: /* @__PURE__ */ jsxRuntime.jsx("td", { colSpan: 3, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$2("no-result"), children: [
2862
3618
  /* @__PURE__ */ jsxRuntime.jsx(salesFrontendAssets.IconGraphicsFeedbackEmpty, {}),
2863
3619
  /* @__PURE__ */ jsxRuntime.jsx("p", { children: "\uC870\uD68C \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4." }),
2864
3620
  /* @__PURE__ */ jsxRuntime.jsx("p", { children: "\uC785\uB825\uD55C \uC815\uBCF4\uB97C \uB2E4\uC2DC \uD655\uC778\uD574\uC8FC\uC138\uC694." })
@@ -2868,71 +3624,37 @@ function DeaCustomerSearchResult({
2868
3624
  }
2869
3625
 
2870
3626
  const { TextField } = salesFrontendDesignSystem.FormField;
2871
- const cx$1 = classNames.bind(styles$9);
2872
- function DeaCustomerSearch({
2873
- setSearchParams,
2874
- customerList,
2875
- onCustomerSelect,
2876
- selectedCustomer
3627
+ const cx$1 = classNames.bind(styles$c);
3628
+ function OrganizationSearch({
3629
+ searchTerm,
3630
+ setSearchTerm,
3631
+ searchInput,
3632
+ setSearchInput,
3633
+ organizationList,
3634
+ onOrganizationSelect
2877
3635
  }) {
2878
- const [residentNumber1, setResidentNumber1] = React.useState("");
2879
- const [residentNumber2, setResidentNumber2] = React.useState("");
2880
3636
  const handleSearch = () => {
2881
- setSearchParams({ residentNumber: `${residentNumber1}${residentNumber2}` });
3637
+ setSearchTerm(searchInput);
2882
3638
  };
2883
3639
  const handleReset = () => {
2884
- setResidentNumber1("");
2885
- setResidentNumber2("");
2886
- setSearchParams({});
2887
- };
2888
- const onKeyUp = (e) => {
2889
- e.key === "Enter" && handleSearch();
2890
- };
2891
- const onKeyDown = (e) => {
2892
- if (!(e.key === "Backspace" || !isNaN(parseInt(e.key)))) {
2893
- e.preventDefault();
2894
- }
3640
+ setSearchTerm("");
3641
+ setSearchInput("");
2895
3642
  };
2896
3643
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2897
3644
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$1("search-section"), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$1("search-filters"), children: [
2898
3645
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx$1("search-filter-section"), children: [
2899
- /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.FormField.Label, { className: "subtitle3 text-body-1", children: "\uACE0\uAC1D \uAD6C\uBD84" }),
2900
- /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Select, { value: "personal", placeholder: "\uAC1C\uC778", disabled: true, style: { width: "100px" }, children: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Select.Option, { value: "personal", children: "\uAC1C\uC778" }) }),
2901
- /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.FormField.Label, { className: "subtitle3 text-body-1", children: "\uC8FC\uBBFC\uB4F1\uB85D\uBC88\uD638" }),
2902
- /* @__PURE__ */ jsxRuntime.jsx(
2903
- TextField,
2904
- {
2905
- value: residentNumber1,
2906
- maxLength: 6,
2907
- placeholder: "\uC55E 6\uC790\uB9AC \uC785\uB825",
2908
- onChange: (e) => setResidentNumber1(e.target.value),
2909
- size: "medium",
2910
- onKeyUp,
2911
- onKeyDown,
2912
- rootProps: {
2913
- className: cx$1("search-input"),
2914
- onClear: () => {
2915
- setResidentNumber1("");
2916
- }
2917
- }
2918
- }
2919
- ),
2920
- "-",
3646
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.FormField.Label, { className: "subtitle3 text-body-1", children: "\uAE30\uAD00\uBA85/\uCF54\uB4DC" }),
2921
3647
  /* @__PURE__ */ jsxRuntime.jsx(
2922
3648
  TextField,
2923
3649
  {
2924
- value: residentNumber2,
2925
- maxLength: 7,
2926
- placeholder: "\uB4A4 7\uC790\uB9AC \uC785\uB825",
2927
- onChange: (e) => setResidentNumber2(e.target.value),
3650
+ value: searchInput,
3651
+ onChange: (e) => setSearchInput(e.target.value),
2928
3652
  size: "medium",
2929
- onKeyDown,
2930
- onKeyUp,
3653
+ onKeyUp: (e) => e.key === "Enter" && handleSearch(),
2931
3654
  rootProps: {
2932
3655
  className: cx$1("search-input"),
2933
- onClear: () => {
2934
- setResidentNumber2("");
2935
- }
3656
+ clearable: true,
3657
+ onClear: handleReset
2936
3658
  }
2937
3659
  }
2938
3660
  )
@@ -2943,59 +3665,54 @@ function DeaCustomerSearch({
2943
3665
  ] })
2944
3666
  ] }) }),
2945
3667
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx$1("divider") }),
2946
- /* @__PURE__ */ jsxRuntime.jsx(
2947
- DeaCustomerSearchResult,
3668
+ searchTerm && /* @__PURE__ */ jsxRuntime.jsx(
3669
+ OrganizationSearchResult,
2948
3670
  {
2949
- customerList,
2950
- onCustomerSelect,
2951
- selectedCustomer
3671
+ filteredOrganizations: organizationList,
3672
+ onOrganizationSelect,
3673
+ searchTerm
2952
3674
  }
2953
3675
  )
2954
3676
  ] });
2955
3677
  }
2956
3678
 
2957
- const DeaCustomerSearchModal = ({ isOpen, onClose, onSave }) => {
2958
- const [selectedCustomer, setSelectedCustomer] = React.useState(null);
2959
- const [searchParams, setSearchParams] = React.useState({});
2960
- const canSearch = React.useMemo(() => !!(searchParams.customerName || searchParams.residentNumber), [searchParams]);
2961
- const { data, isFetching } = reactQuery.useQuery({
2962
- queryKey: ["deaCustomerSearch", searchParams],
2963
- queryFn: () => method.getDspCustomerListMethod(searchParams),
2964
- enabled: canSearch,
2965
- retry: false
3679
+ const OrganizationSearchModal = ({ isOpen, onClose, onSelect }) => {
3680
+ const [selectedOrganization, setSelectedOrganization] = React.useState(null);
3681
+ const [searchTerm, setSearchTerm] = React.useState("");
3682
+ const [searchInput, setSearchInput] = React.useState("");
3683
+ const { data } = method.useSearchOrganizationQuery({
3684
+ searchWord: searchTerm
2966
3685
  });
2967
- const [customerList, setCustomerList] = React.useState([]);
3686
+ const [organizationList, setOrganizationList] = React.useState([]);
2968
3687
  React.useEffect(() => {
2969
3688
  if (data?.data) {
2970
- setCustomerList(data.data);
3689
+ setOrganizationList(data.data);
2971
3690
  } else {
2972
- setCustomerList([]);
3691
+ setOrganizationList([]);
2973
3692
  }
2974
3693
  }, [data]);
2975
- React.useEffect(() => {
2976
- setSelectedCustomer(null);
2977
- }, [customerList]);
2978
- const handleCustomerSelect = (customer) => {
2979
- setSelectedCustomer(customer);
3694
+ const handleOrganizationSelect = (organization) => {
3695
+ setSelectedOrganization(organization);
2980
3696
  };
2981
- const handleSave = () => {
2982
- if (selectedCustomer) {
2983
- onSave(selectedCustomer);
3697
+ const handleSelect = () => {
3698
+ if (selectedOrganization) {
3699
+ onSelect(selectedOrganization);
2984
3700
  onClose();
2985
3701
  }
2986
3702
  };
2987
3703
  return /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Modal.Root, { isOpen, onClose, modalSize: "xlarge", children: [
2988
3704
  /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Overlay, {}),
2989
3705
  /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Modal.Content, { style: { height: "697px" }, children: [
2990
- /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Header, { headerTitle: "\uACE0\uAC1D \uAC80\uC0C9", showCloseButton: true }),
3706
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Header, { headerTitle: "\uAE30\uAD00 \uAC80\uC0C9", showCloseButton: true }),
2991
3707
  /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Body, { children: /* @__PURE__ */ jsxRuntime.jsx(
2992
- DeaCustomerSearch,
3708
+ OrganizationSearch,
2993
3709
  {
2994
- setSearchParams,
2995
- customerList,
2996
- onCustomerSelect: handleCustomerSelect,
2997
- selectedCustomer,
2998
- isLoading: isFetching
3710
+ searchTerm,
3711
+ setSearchTerm,
3712
+ searchInput,
3713
+ setSearchInput,
3714
+ organizationList,
3715
+ onOrganizationSelect: handleOrganizationSelect
2999
3716
  }
3000
3717
  ) }),
3001
3718
  /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Footer, { children: /* @__PURE__ */ jsxRuntime.jsx(
@@ -3005,8 +3722,8 @@ const DeaCustomerSearchModal = ({ isOpen, onClose, onSave }) => {
3005
3722
  size: "medium",
3006
3723
  appearance: "filled",
3007
3724
  width: "full",
3008
- onClick: handleSave,
3009
- disabled: !selectedCustomer,
3725
+ onClick: handleSelect,
3726
+ disabled: !selectedOrganization,
3010
3727
  children: "\uC800\uC7A5\uD558\uAE30"
3011
3728
  }
3012
3729
  ) })
@@ -3014,134 +3731,23 @@ const DeaCustomerSearchModal = ({ isOpen, onClose, onSave }) => {
3014
3731
  ] });
3015
3732
  };
3016
3733
 
3017
- const useCustomerSearch = (onSelect) => {
3018
- const { triggerRef, isOpen, setIsOpen, DropDown } = salesFrontendDesignSystem.useDropDown();
3019
- const [searchKeyword, setSearchKeyword] = React.useState("");
3020
- const [searchInput, setSearchInput] = React.useState("");
3021
- const [customerList, setCustomerList] = React.useState([]);
3022
- const [selectedCustomer, setSelectedCustomer] = React.useState(null);
3023
- const { data } = method.useSearchCustomerListQuery({ customerName: searchKeyword });
3024
- const search = () => {
3025
- if (searchInput.length >= 2) {
3026
- setSearchKeyword(searchInput);
3027
- const filtered = data?.data?.custList?.filter(
3028
- (c) => c.customerName?.toLowerCase().includes(searchInput.toLowerCase())
3029
- );
3030
- setCustomerList(filtered || []);
3031
- setIsOpen(true);
3032
- } else {
3033
- setCustomerList([]);
3034
- setSearchKeyword("");
3035
- setIsOpen(false);
3036
- }
3037
- };
3038
- const onKeyUp = (e) => {
3039
- if (e.key === "Enter") {
3040
- search();
3041
- }
3042
- };
3043
- const onSearchInputChange = (e) => {
3044
- setSearchInput(e.target.value);
3045
- if (e.target.value.length < 2) {
3046
- setCustomerList([]);
3047
- setSearchKeyword("");
3048
- setIsOpen(false);
3049
- }
3050
- };
3051
- const onClear = () => {
3052
- setSearchInput("");
3053
- setSearchKeyword("");
3054
- setCustomerList([]);
3055
- setSelectedCustomer(null);
3056
- setIsOpen(false);
3057
- };
3058
- const handleSelectItem = (customer) => {
3059
- setSelectedCustomer(customer);
3060
- setSearchInput(customer.customerName || "");
3061
- setCustomerList([]);
3062
- setIsOpen(false);
3063
- if (onSelect) {
3064
- onSelect(customer);
3065
- }
3066
- };
3067
- return {
3068
- triggerRef,
3069
- isOpen,
3070
- DropDown,
3071
- searchInput,
3072
- customerList,
3073
- searchKeyword,
3074
- onSearchInputChange,
3075
- onKeyUp,
3076
- search,
3077
- onClear,
3078
- handleSelectItem,
3079
- selectedCustomer,
3080
- setSearchInput,
3081
- setCustomerList,
3082
- setSearchKeyword,
3083
- setIsOpen
3084
- };
3085
- };
3086
-
3087
- const cx = classNames.bind(styles$a);
3088
- const highlightOnSearchKeyword = (originalText, targetString) => {
3089
- if (!targetString || !originalText?.includes(targetString)) {
3090
- return originalText;
3091
- }
3092
- const replacedText = [];
3093
- const splitText = originalText.split(targetString);
3094
- for (let i = 0; i < splitText.length; i++) {
3095
- replacedText.push(splitText[i] || "");
3096
- if (i < splitText.length - 1) {
3097
- replacedText.push(
3098
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-primary", children: targetString }, i)
3099
- );
3100
- }
3101
- }
3102
- return replacedText;
3103
- };
3104
- const { InputBox, Input } = salesFrontendDesignSystem.FormCore;
3105
- const CustomerSearch = ({ onSelect }) => {
3106
- const {
3107
- triggerRef,
3108
- isOpen,
3109
- DropDown,
3110
- searchInput,
3111
- customerList,
3112
- searchKeyword,
3113
- onSearchInputChange,
3114
- onKeyUp,
3115
- search,
3116
- onClear,
3117
- handleSelectItem
3118
- } = useCustomerSearch(onSelect);
3119
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx("container"), children: [
3120
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx("search-bar"), children: /* @__PURE__ */ jsxRuntime.jsx(InputBox, { endElement: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendAssets.IconMainUiSearch, { onClick: search }), onClear, clearable: true, children: /* @__PURE__ */ jsxRuntime.jsx(
3121
- Input,
3122
- {
3123
- onChange: onSearchInputChange,
3124
- onKeyUp,
3125
- value: searchInput,
3126
- placeholder: "\uACE0\uAC1D\uBA85\uC744 \uB450 \uAE00\uC790 \uC774\uC0C1 \uC785\uB825\uD574\uC8FC\uC138\uC694.",
3127
- size: "large",
3128
- ref: triggerRef
3129
- }
3130
- ) }) }),
3131
- isOpen && customerList.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(DropDown, { children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx("result-container"), children: /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.List, { children: customerList.map((customer) => /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.ListItem, { onClick: () => handleSelectItem(customer), selectable: true, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx("customer-item"), children: [
3132
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cx("name"), children: highlightOnSearchKeyword(customer.customerName || "", searchKeyword) }),
3133
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cx("details"), children: [
3134
- /* @__PURE__ */ jsxRuntime.jsx("span", { children: customer.birthDate }),
3135
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx("separator"), children: "|" }),
3136
- /* @__PURE__ */ jsxRuntime.jsx("span", { children: customer.genderCode }),
3137
- customer.baseAddress && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
3138
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: cx("separator"), children: "|" }),
3139
- /* @__PURE__ */ jsxRuntime.jsx("span", { children: customer.baseAddress })
3140
- ] })
3141
- ] })
3142
- ] }) }, customer.customerId)) }) }) })
3734
+ const cx = classNames.bind(styles$b);
3735
+ function JobVehicleSearchModal({ onClose }) {
3736
+ const { selectedVehicle, VehicleSearchComponent } = useVehicleSearch();
3737
+ return /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Modal.Root, { isOpen: true, onClose, modalSize: "xlarge", children: [
3738
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Overlay, {}),
3739
+ /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Modal.Content, { style: { height: "697px" }, children: [
3740
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Header, { headerTitle: "\uC6B4\uC804\uCC28\uC885 \uAC80\uC0C9", showCloseButton: true }),
3741
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Body, { className: cx("job-vehicle-search-modal"), raw: true, children: VehicleSearchComponent }),
3742
+ /* @__PURE__ */ jsxRuntime.jsx(salesFrontendDesignSystem.Modal.Footer, { style: { marginTop: 0 }, children: /* @__PURE__ */ jsxRuntime.jsxs(salesFrontendDesignSystem.Button, { variant: "primary", size: "medium", appearance: "filled", width: "full", onClick: onClose, children: [
3743
+ "\uD655\uC778(",
3744
+ selectedVehicle?.integrationCodeValueName || "\uBBF8\uC120\uD0DD",
3745
+ ")-",
3746
+ selectedVehicle?.integrationCodeValue
3747
+ ] }) })
3748
+ ] })
3143
3749
  ] });
3144
- };
3750
+ }
3145
3751
 
3146
3752
  const VERIFICATION_CODES = {
3147
3753
  SUCCESS: "0000",
@@ -3362,6 +3968,7 @@ const useRemoteIdentityVerificationPopup = (config) => {
3362
3968
 
3363
3969
  exports.Attachment = Attachment;
3364
3970
  exports.BankStockSearchModal = BankStockSearchModal;
3971
+ exports.CODES = CODES;
3365
3972
  exports.CustomerSearch = CustomerSearch;
3366
3973
  exports.DeaCustomerSearchModal = DeaCustomerSearchModal;
3367
3974
  exports.EmployeeSearchModal = EmployeeSearchModal;
@@ -3373,6 +3980,7 @@ exports.FormSearchJobField = FormSearchJobField;
3373
3980
  exports.FormSegmentGroup = FormSegmentGroup;
3374
3981
  exports.FormSelect = FormSelect;
3375
3982
  exports.FormTextField = FormTextField;
3983
+ exports.JobVehicleSearchModal = JobVehicleSearchModal;
3376
3984
  exports.OrganizationSearchModal = OrganizationSearchModal;
3377
3985
  exports.StepIndicator = StepIndicator;
3378
3986
  exports.resize = resize;
@@ -3383,8 +3991,13 @@ exports.useCamera = useCamera;
3383
3991
  exports.useCanvasPaint = useCanvasPaint;
3384
3992
  exports.useJobSearchModal = useJobSearchModal;
3385
3993
  exports.useJobVehicleSearchModal = useJobVehicleSearchModal;
3994
+ exports.useNationalityComponent = useNationalityComponent;
3995
+ exports.useNxlOneModal = useNxlOneModal;
3386
3996
  exports.useRemoteIdentityVerification = useRemoteIdentityVerification;
3387
3997
  exports.useRemoteIdentityVerificationIframe = useRemoteIdentityVerificationIframe;
3388
3998
  exports.useRemoteIdentityVerificationPopup = useRemoteIdentityVerificationPopup;
3389
3999
  exports.useSearchAddress = useSearchAddress;
4000
+ exports.useSearchNationality = useSearchNationality;
4001
+ exports.useSearchVisa = useSearchVisa;
4002
+ exports.useVisaComponent = useVisaComponent;
3390
4003
  //# sourceMappingURL=index.cjs.js.map