sales-frontend-debug 0.0.30 → 0.0.32

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 CHANGED
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var React4 = require('react');
3
+ var React2 = require('react');
4
4
  var salesFrontendUtils = require('sales-frontend-utils');
5
5
  var salesFrontendStores = require('sales-frontend-stores');
6
6
 
7
7
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
8
8
 
9
- var React4__default = /*#__PURE__*/_interopDefault(React4);
9
+ var React2__default = /*#__PURE__*/_interopDefault(React2);
10
10
 
11
11
  // src/debug-tool.tsx
12
12
 
@@ -229,11 +229,87 @@ var textareaStyle = {
229
229
 
230
230
  // src/components/floating-button.tsx
231
231
  var FloatingButton = ({ onClick }) => {
232
- const [position, setPosition] = React4.useState({ x: 0, y: 0 });
233
- const [isDragging, setIsDragging] = React4.useState(false);
234
- const dragHappened = React4.useRef(false);
235
- const dragStartPos = React4.useRef({ x: 0, y: 0 });
236
- const elementStartPos = React4.useRef({ x: 0, y: 0 });
232
+ const [position, setPosition] = React2.useState({ x: 0, y: 0 });
233
+ const [isDragging, setIsDragging] = React2.useState(false);
234
+ const [isVisible, setIsVisible] = React2.useState(false);
235
+ const gestureStep = React2.useRef(0);
236
+ const gestureTimeout = React2.useRef(null);
237
+ const globalDragStart = React2.useRef(null);
238
+ const dragHappened = React2.useRef(false);
239
+ const dragStartPos = React2.useRef({ x: 0, y: 0 });
240
+ const elementStartPos = React2.useRef({ x: 0, y: 0 });
241
+ const clickCount = React2.useRef(0);
242
+ const clickTimeout = React2.useRef(null);
243
+ React2.useEffect(() => {
244
+ const handleGlobalMouseDown = (e) => {
245
+ globalDragStart.current = { x: e.clientX, y: e.clientY };
246
+ };
247
+ const handleGlobalMouseUp = (e) => {
248
+ if (!globalDragStart.current) {
249
+ return;
250
+ }
251
+ const dx = e.clientX - globalDragStart.current.x;
252
+ const dy = e.clientY - globalDragStart.current.y;
253
+ const absDx = Math.abs(dx);
254
+ const absDy = Math.abs(dy);
255
+ const THRESHOLD = 200;
256
+ if (dy > THRESHOLD && absDy > absDx) {
257
+ if (gestureStep.current === 0) {
258
+ gestureStep.current = 1;
259
+ if (gestureTimeout.current) {
260
+ clearTimeout(gestureTimeout.current);
261
+ }
262
+ gestureTimeout.current = setTimeout(() => {
263
+ gestureStep.current = 0;
264
+ }, 2e3);
265
+ }
266
+ } else if (dx > THRESHOLD && absDx > absDy) {
267
+ if (gestureStep.current === 1) {
268
+ setIsVisible((prev) => !prev);
269
+ gestureStep.current = 0;
270
+ if (gestureTimeout.current) {
271
+ clearTimeout(gestureTimeout.current);
272
+ }
273
+ } else {
274
+ gestureStep.current = 0;
275
+ }
276
+ } else ;
277
+ globalDragStart.current = null;
278
+ };
279
+ window.addEventListener("mousedown", handleGlobalMouseDown);
280
+ window.addEventListener("mouseup", handleGlobalMouseUp);
281
+ return () => {
282
+ window.removeEventListener("mousedown", handleGlobalMouseDown);
283
+ window.removeEventListener("mouseup", handleGlobalMouseUp);
284
+ if (gestureTimeout.current) {
285
+ clearTimeout(gestureTimeout.current);
286
+ }
287
+ };
288
+ }, []);
289
+ React2.useEffect(() => {
290
+ const handleGlobalClick = () => {
291
+ clickCount.current += 1;
292
+ if (clickCount.current === 1) {
293
+ clickTimeout.current = setTimeout(() => {
294
+ clickCount.current = 0;
295
+ }, 3e3);
296
+ }
297
+ if (clickCount.current >= 10) {
298
+ setIsVisible((prev) => !prev);
299
+ clickCount.current = 0;
300
+ if (clickTimeout.current) {
301
+ clearTimeout(clickTimeout.current);
302
+ }
303
+ }
304
+ };
305
+ window.addEventListener("click", handleGlobalClick);
306
+ return () => {
307
+ window.removeEventListener("click", handleGlobalClick);
308
+ if (clickTimeout.current) {
309
+ clearTimeout(clickTimeout.current);
310
+ }
311
+ };
312
+ }, []);
237
313
  const handleMouseDown = (e) => {
238
314
  if (e.button !== 0) {
239
315
  return;
@@ -272,17 +348,11 @@ var FloatingButton = ({ onClick }) => {
272
348
  const buttonStyle = {
273
349
  ...debugFloatingButtonStyle,
274
350
  transform: `translate(${position.x}px, ${position.y}px)`,
275
- cursor: isDragging ? "grabbing" : "grab"
351
+ cursor: isDragging ? "grabbing" : "grab",
352
+ display: isVisible ? "flex" : "none"
353
+ // Hide until activated
276
354
  };
277
- return /* @__PURE__ */ React4__default.default.createElement(
278
- "button",
279
- {
280
- style: buttonStyle,
281
- onMouseDown: handleMouseDown,
282
- onClick: handleClick
283
- },
284
- "DEBUG"
285
- );
355
+ return /* @__PURE__ */ React2__default.default.createElement("button", { style: buttonStyle, onMouseDown: handleMouseDown, onClick: handleClick }, "DEBUG");
286
356
  };
287
357
  var floating_button_default = FloatingButton;
288
358
  var cookieClient = {
@@ -322,8 +392,8 @@ var cookieClient = {
322
392
  }
323
393
  };
324
394
  var useStorage = (storageType) => {
325
- const [items, setItems] = React4.useState([]);
326
- const loadItems = React4.useCallback(() => {
395
+ const [items, setItems] = React2.useState([]);
396
+ const loadItems = React2.useCallback(() => {
327
397
  const newItems = [];
328
398
  if (storageType === "localStorage") {
329
399
  for (let i = 0; i < localStorage.length; i++) {
@@ -344,10 +414,10 @@ var useStorage = (storageType) => {
344
414
  }
345
415
  setItems(newItems);
346
416
  }, [storageType]);
347
- React4.useEffect(() => {
417
+ React2.useEffect(() => {
348
418
  loadItems();
349
419
  }, [loadItems]);
350
- const setItem = React4.useCallback(
420
+ const setItem = React2.useCallback(
351
421
  (key, value) => {
352
422
  if (storageType === "localStorage") {
353
423
  localStorage.setItem(key, value);
@@ -358,7 +428,7 @@ var useStorage = (storageType) => {
358
428
  },
359
429
  [storageType, loadItems]
360
430
  );
361
- const removeItem = React4.useCallback(
431
+ const removeItem = React2.useCallback(
362
432
  (key) => {
363
433
  if (storageType === "localStorage") {
364
434
  localStorage.removeItem(key);
@@ -399,6 +469,13 @@ var MenuPanel = ({ menuItems: menuItems2, onMenuItemClick, onClose, serviceCode
399
469
  "x-channel-business-work-division-code": cookieClient.getCookie("x-channel-business-work-division-code")
400
470
  });
401
471
  };
472
+ const handleDeleteHostCookie = () => {
473
+ cookieClient.deleteCookie("dsp-debug-mode-env");
474
+ alert("\uD638\uC2A4\uD2B8\uAC00 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.");
475
+ console.log("\uD638\uC2A4\uD2B8\uAC00 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.", {
476
+ "dsp-debug-mode-env": cookieClient.getCookie("dsp-debug-mode-env")
477
+ });
478
+ };
402
479
  const handleDeleteTokenCookie = () => {
403
480
  cookieClient.deleteCookie("accessToken");
404
481
  alert("\uD1A0\uD070\uCFE0\uD0A4\uAC00 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.");
@@ -413,7 +490,14 @@ var MenuPanel = ({ menuItems: menuItems2, onMenuItemClick, onClose, serviceCode
413
490
  "x-channel-formfactor": cookieClient.getCookie("x-channel-formfactor")
414
491
  });
415
492
  };
416
- return /* @__PURE__ */ React4__default.default.createElement(React4__default.default.Fragment, null, /* @__PURE__ */ React4__default.default.createElement("div", { style: modalOverlayStyle, onClick: onClose }), /* @__PURE__ */ React4__default.default.createElement("div", { style: debugMenuPanelStyle }, /* @__PURE__ */ React4__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React4__default.default.createElement("h2", { style: h2Style }, "Debug Menu"), /* @__PURE__ */ React4__default.default.createElement("button", { onClick: onClose }, "X")), /* @__PURE__ */ React4__default.default.createElement("ul", null, menuItems2.map((item) => /* @__PURE__ */ React4__default.default.createElement("li", { key: item.id, onClick: () => onMenuItemClick(item.component), style: menuItemStyle }, item.label))), serviceCode === "dsp" && /* @__PURE__ */ React4__default.default.createElement(React4__default.default.Fragment, null, /* @__PURE__ */ React4__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React4__default.default.createElement("h2", { style: h2Style }, "\uD3FC\uD329\uD130")), /* @__PURE__ */ React4__default.default.createElement("ul", null, /* @__PURE__ */ React4__default.default.createElement("li", { style: menuItemStyle, onClick: () => handleFormFactor("tablet") }, "Tablet"), /* @__PURE__ */ React4__default.default.createElement("li", { style: menuItemStyle, onClick: () => handleFormFactor("phone") }, "Phone"), /* @__PURE__ */ React4__default.default.createElement("li", { style: menuItemStyle, onClick: () => handleFormFactor("pc") }, "PC")), /* @__PURE__ */ React4__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React4__default.default.createElement("h2", { style: h2Style }, "\uCD08\uAE30\uD654")), /* @__PURE__ */ React4__default.default.createElement("ul", null, /* @__PURE__ */ React4__default.default.createElement("li", { style: menuItemStyle }, /* @__PURE__ */ React4__default.default.createElement("button", { onClick: handleDeleteCustomCookie }, "\uCEE4\uC2A4\uD140(x-channel-) \uC0AD\uC81C")), /* @__PURE__ */ React4__default.default.createElement("li", { style: menuItemStyle }, /* @__PURE__ */ React4__default.default.createElement("button", { onClick: handleDeleteTokenCookie }, "\uD1A0\uD070 \uC0AD\uC81C"))))));
493
+ const handleHost = (host) => {
494
+ cookieClient.setCookie("dsp-debug-mode-env", host);
495
+ alert(`\uD638\uC2A4\uD2B8\uAC00 \uBCC0\uACBD\uB418\uC5C8\uC2B5\uB2C8\uB2E4.:${host}`);
496
+ console.log("\uD638\uC2A4\uD2B8\uAC00 \uBCC0\uACBD\uB418\uC5C8\uC2B5\uB2C8\uB2E4.", {
497
+ "dsp-debug-mode-env": cookieClient.getCookie("dsp-debug-mode-env")
498
+ });
499
+ };
500
+ return /* @__PURE__ */ React2__default.default.createElement(React2__default.default.Fragment, null, /* @__PURE__ */ React2__default.default.createElement("div", { style: modalOverlayStyle, onClick: onClose }), /* @__PURE__ */ React2__default.default.createElement("div", { style: debugMenuPanelStyle }, /* @__PURE__ */ React2__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React2__default.default.createElement("h2", { style: h2Style }, "Debug Menu"), /* @__PURE__ */ React2__default.default.createElement("button", { onClick: onClose }, "X")), /* @__PURE__ */ React2__default.default.createElement("ul", null, menuItems2.map((item) => /* @__PURE__ */ React2__default.default.createElement("li", { key: item.id, onClick: () => onMenuItemClick(item.component), style: menuItemStyle }, item.label))), serviceCode === "dsp" && /* @__PURE__ */ React2__default.default.createElement(React2__default.default.Fragment, null, /* @__PURE__ */ React2__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React2__default.default.createElement("h2", { style: h2Style }, "\uD3FC\uD329\uD130")), /* @__PURE__ */ React2__default.default.createElement("ul", null, /* @__PURE__ */ React2__default.default.createElement("li", { style: menuItemStyle, onClick: () => handleFormFactor("tablet") }, "Tablet"), /* @__PURE__ */ React2__default.default.createElement("li", { style: menuItemStyle, onClick: () => handleFormFactor("phone") }, "Phone"), /* @__PURE__ */ React2__default.default.createElement("li", { style: menuItemStyle, onClick: () => handleFormFactor("pc") }, "PC")), /* @__PURE__ */ React2__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React2__default.default.createElement("h2", { style: h2Style }, "API\uD638\uC2A4\uD2B8")), /* @__PURE__ */ React2__default.default.createElement("ul", null, /* @__PURE__ */ React2__default.default.createElement("li", { style: menuItemStyle, onClick: () => handleHost("local") }, "local"), /* @__PURE__ */ React2__default.default.createElement("li", { style: menuItemStyle, onClick: () => handleHost("dev") }, "dev"), /* @__PURE__ */ React2__default.default.createElement("li", { style: menuItemStyle, onClick: () => handleHost("stg") }, "stg")), /* @__PURE__ */ React2__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React2__default.default.createElement("h2", { style: h2Style }, "\uCD08\uAE30\uD654")), /* @__PURE__ */ React2__default.default.createElement("ul", null, /* @__PURE__ */ React2__default.default.createElement("li", { style: menuItemStyle }, /* @__PURE__ */ React2__default.default.createElement("button", { onClick: handleDeleteHostCookie }, "Host \uC0AD\uC81C")), /* @__PURE__ */ React2__default.default.createElement("li", { style: menuItemStyle }, /* @__PURE__ */ React2__default.default.createElement("button", { onClick: handleDeleteCustomCookie }, "\uCEE4\uC2A4\uD140(x-channel-) \uC0AD\uC81C")), /* @__PURE__ */ React2__default.default.createElement("li", { style: menuItemStyle }, /* @__PURE__ */ React2__default.default.createElement("button", { onClick: handleDeleteTokenCookie }, "\uD1A0\uD070 \uC0AD\uC81C"))))));
417
501
  };
418
502
  var menu_panel_default = MenuPanel;
419
503
  var globalLogs = [];
@@ -459,14 +543,14 @@ var restoreConsoleLog = () => {
459
543
  isConsoleOverridden = false;
460
544
  };
461
545
  var useConsoleLog = () => {
462
- const [logs, setLogs] = React4.useState(globalLogs);
463
- React4.useEffect(() => {
546
+ const [logs, setLogs] = React2.useState(globalLogs);
547
+ React2.useEffect(() => {
464
548
  listeners.push(setLogs);
465
549
  return () => {
466
550
  listeners = listeners.filter((l) => l !== setLogs);
467
551
  };
468
552
  }, []);
469
- const clearLogs = React4.useCallback(() => {
553
+ const clearLogs = React2.useCallback(() => {
470
554
  globalLogs = [];
471
555
  listeners.forEach((listener) => listener([]));
472
556
  }, []);
@@ -489,35 +573,35 @@ var LogMessage = ({ entry }) => {
489
573
  return String(part);
490
574
  });
491
575
  const style = { ...logMessageStyle, ...logTypeStyles[entry.type] };
492
- return /* @__PURE__ */ React4__default.default.createElement("pre", { style }, messageParts.join(" "));
576
+ return /* @__PURE__ */ React2__default.default.createElement("pre", { style }, messageParts.join(" "));
493
577
  };
494
578
  var ConsoleLogPanel = ({ onClose }) => {
495
579
  const { logs, clearLogs } = useConsoleLog();
496
- const [filter, setFilter] = React4.useState("all");
497
- const logContainerRef = React4.useRef(null);
498
- const filteredLogs = React4.useMemo(() => {
580
+ const [filter, setFilter] = React2.useState("all");
581
+ const logContainerRef = React2.useRef(null);
582
+ const filteredLogs = React2.useMemo(() => {
499
583
  if (filter === "all") {
500
584
  return logs;
501
585
  }
502
586
  return logs.filter((log) => log.type === filter);
503
587
  }, [logs, filter]);
504
- React4.useEffect(() => {
588
+ React2.useEffect(() => {
505
589
  if (logContainerRef.current) {
506
590
  logContainerRef.current.scrollTop = logContainerRef.current.scrollHeight;
507
591
  }
508
592
  }, [filteredLogs]);
509
593
  const segmentOptions = ["all", "log", "warn", "error"];
510
- return /* @__PURE__ */ React4__default.default.createElement(React4__default.default.Fragment, null, /* @__PURE__ */ React4__default.default.createElement("div", { style: modalOverlayStyle, onClick: onClose }), /* @__PURE__ */ React4__default.default.createElement("div", { style: debugFeaturePanelStyle }, /* @__PURE__ */ React4__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React4__default.default.createElement("h2", { style: h2Style }, "Console Logs"), /* @__PURE__ */ React4__default.default.createElement("button", { onClick: onClose }, "X")), /* @__PURE__ */ React4__default.default.createElement("div", { style: panelToolbarStyle }, /* @__PURE__ */ React4__default.default.createElement("div", null, segmentOptions.map((option) => /* @__PURE__ */ React4__default.default.createElement("button", { key: option, onClick: () => setFilter(option), disabled: filter === option }, option.charAt(0).toUpperCase() + option.slice(1)))), /* @__PURE__ */ React4__default.default.createElement("button", { onClick: clearLogs, style: clearButtonStyle }, "Clear")), /* @__PURE__ */ React4__default.default.createElement("div", { style: logListContainerStyle, ref: logContainerRef }, filteredLogs.map((log) => /* @__PURE__ */ React4__default.default.createElement("div", { key: log.id, style: logItemStyle }, /* @__PURE__ */ React4__default.default.createElement("span", { style: logTimestampStyle }, log.timestamp), /* @__PURE__ */ React4__default.default.createElement(LogMessage, { entry: log }))))));
594
+ return /* @__PURE__ */ React2__default.default.createElement(React2__default.default.Fragment, null, /* @__PURE__ */ React2__default.default.createElement("div", { style: modalOverlayStyle, onClick: onClose }), /* @__PURE__ */ React2__default.default.createElement("div", { style: debugFeaturePanelStyle }, /* @__PURE__ */ React2__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React2__default.default.createElement("h2", { style: h2Style }, "Console Logs"), /* @__PURE__ */ React2__default.default.createElement("button", { onClick: onClose }, "X")), /* @__PURE__ */ React2__default.default.createElement("div", { style: panelToolbarStyle }, /* @__PURE__ */ React2__default.default.createElement("div", null, segmentOptions.map((option) => /* @__PURE__ */ React2__default.default.createElement("button", { key: option, onClick: () => setFilter(option), disabled: filter === option }, option.charAt(0).toUpperCase() + option.slice(1)))), /* @__PURE__ */ React2__default.default.createElement("button", { onClick: clearLogs, style: clearButtonStyle }, "Clear")), /* @__PURE__ */ React2__default.default.createElement("div", { style: logListContainerStyle, ref: logContainerRef }, filteredLogs.map((log) => /* @__PURE__ */ React2__default.default.createElement("div", { key: log.id, style: logItemStyle }, /* @__PURE__ */ React2__default.default.createElement("span", { style: logTimestampStyle }, log.timestamp), /* @__PURE__ */ React2__default.default.createElement(LogMessage, { entry: log }))))));
511
595
  };
512
596
  var console_log_panel_default = ConsoleLogPanel;
513
597
  var LoginPanel = ({ onClose, onLogin }) => {
514
- const [selectedTypeId, setSelectedTypeId] = React4.useState(loginTypes[0]?.id || "");
515
- const [formData, setFormData] = React4.useState({});
516
- const [mode, setMode] = React4.useState(cookieClient.getCookie("dsp-debug-mode") === "on");
517
- const [stepValidationOff, SetStepValidationOff] = React4.useState(
598
+ const [selectedTypeId, setSelectedTypeId] = React2.useState(loginTypes[0]?.id || "");
599
+ const [formData, setFormData] = React2.useState({});
600
+ const [mode, setMode] = React2.useState(cookieClient.getCookie("dsp-debug-mode") === "on");
601
+ const [stepValidationOff, SetStepValidationOff] = React2.useState(
518
602
  cookieClient.getCookie("Debug-Step-Validation-Off") === "true"
519
603
  );
520
- const selectedType = React4.useMemo(() => loginTypes.find((t) => t.id === selectedTypeId), [selectedTypeId]);
604
+ const selectedType = React2.useMemo(() => loginTypes.find((t) => t.id === selectedTypeId), [selectedTypeId]);
521
605
  const handleInputChange = (e) => {
522
606
  const { name, value } = e.target;
523
607
  setFormData((prev) => ({ ...prev, [name]: value }));
@@ -549,10 +633,10 @@ var LoginPanel = ({ onClose, onLogin }) => {
549
633
  SetStepValidationOff(false);
550
634
  }
551
635
  };
552
- React4.useEffect(() => {
636
+ React2.useEffect(() => {
553
637
  setFormData({});
554
638
  }, [selectedType]);
555
- return /* @__PURE__ */ React4__default.default.createElement(React4__default.default.Fragment, null, /* @__PURE__ */ React4__default.default.createElement("div", { style: modalOverlayStyle, onClick: onClose }), /* @__PURE__ */ React4__default.default.createElement("div", { style: debugFeaturePanelStyle }, /* @__PURE__ */ React4__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React4__default.default.createElement("h2", { style: h2Style }, "\uAC04\uD3B8 \uB85C\uADF8\uC778"), /* @__PURE__ */ React4__default.default.createElement("button", { onClick: onClose }, "X")), /* @__PURE__ */ React4__default.default.createElement("form", { style: loginFormContainerStyle, onSubmit: handleSubmit }, /* @__PURE__ */ React4__default.default.createElement("div", null, /* @__PURE__ */ React4__default.default.createElement("ul", { style: { listStyleType: "circle" } }, /* @__PURE__ */ React4__default.default.createElement("li", null, /* @__PURE__ */ React4__default.default.createElement("label", { htmlFor: "debug-on" }, "Debug On"), /* @__PURE__ */ React4__default.default.createElement("input", { type: "checkbox", id: "debug-on", onChange: handleDebugOn, checked: mode }), /* @__PURE__ */ React4__default.default.createElement("ul", { style: { listStyleType: "square", paddingLeft: "20px" } }, /* @__PURE__ */ React4__default.default.createElement("li", null, "(\uCFE0\uD0A4\uC5D0 \uC14B\uD305\uB41C \uD1A0\uD070\uAC12\uC73C\uB85C \uD5E4\uB354\uB97C \uC0DD\uC131\uD569\uB2C8\uB2E4. \uAC04\uD3B8\uB85C\uADF8\uC778 \uC0AC\uC6A9\uC2DC \uD544\uC218\uCCB4\uD06C)"))), /* @__PURE__ */ React4__default.default.createElement("li", null, /* @__PURE__ */ React4__default.default.createElement("label", { htmlFor: "step-validation-off" }, "\uC11C\uC2DD Validation Off"), /* @__PURE__ */ React4__default.default.createElement(
639
+ return /* @__PURE__ */ React2__default.default.createElement(React2__default.default.Fragment, null, /* @__PURE__ */ React2__default.default.createElement("div", { style: modalOverlayStyle, onClick: onClose }), /* @__PURE__ */ React2__default.default.createElement("div", { style: debugFeaturePanelStyle }, /* @__PURE__ */ React2__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React2__default.default.createElement("h2", { style: h2Style }, "\uAC04\uD3B8 \uB85C\uADF8\uC778"), /* @__PURE__ */ React2__default.default.createElement("button", { onClick: onClose }, "X")), /* @__PURE__ */ React2__default.default.createElement("form", { style: loginFormContainerStyle, onSubmit: handleSubmit }, /* @__PURE__ */ React2__default.default.createElement("div", null, /* @__PURE__ */ React2__default.default.createElement("ul", { style: { listStyleType: "circle" } }, /* @__PURE__ */ React2__default.default.createElement("li", null, /* @__PURE__ */ React2__default.default.createElement("label", { htmlFor: "debug-on" }, "Debug On"), /* @__PURE__ */ React2__default.default.createElement("input", { type: "checkbox", id: "debug-on", onChange: handleDebugOn, checked: mode }), /* @__PURE__ */ React2__default.default.createElement("ul", { style: { listStyleType: "square", paddingLeft: "20px" } }, /* @__PURE__ */ React2__default.default.createElement("li", null, "(\uCFE0\uD0A4\uC5D0 \uC14B\uD305\uB41C \uD1A0\uD070\uAC12\uC73C\uB85C \uD5E4\uB354\uB97C \uC0DD\uC131\uD569\uB2C8\uB2E4. \uAC04\uD3B8\uB85C\uADF8\uC778 \uC0AC\uC6A9\uC2DC \uD544\uC218\uCCB4\uD06C)"))), /* @__PURE__ */ React2__default.default.createElement("li", null, /* @__PURE__ */ React2__default.default.createElement("label", { htmlFor: "step-validation-off" }, "\uC11C\uC2DD Validation Off"), /* @__PURE__ */ React2__default.default.createElement(
556
640
  "input",
557
641
  {
558
642
  type: "checkbox",
@@ -560,7 +644,7 @@ var LoginPanel = ({ onClose, onLogin }) => {
560
644
  onChange: handleStepValidationOff,
561
645
  checked: stepValidationOff
562
646
  }
563
- ), /* @__PURE__ */ React4__default.default.createElement("ul", { style: { listStyleType: "square", paddingLeft: "20px" } }, /* @__PURE__ */ React4__default.default.createElement("li", null, "(\uC11C\uC2DD \uB2E8\uACC4 \uC774\uB3D9\uC2DC, validation\uC744 \uB044\uACE0 \uBBF8\uC791\uC131 \uB2E8\uACC4\uB3C4 \uC774\uB3D9\uAC00\uB2A5\uD558\uB3C4\uB85D \uD569\uB2C8\uB2E4.)")))), /* @__PURE__ */ React4__default.default.createElement("br", null), " ", /* @__PURE__ */ React4__default.default.createElement("br", null), /* @__PURE__ */ React4__default.default.createElement("label", { htmlFor: "login-type-select" }, "\uB85C\uADF8\uC778 \uC720\uD615"), /* @__PURE__ */ React4__default.default.createElement("select", { id: "login-type-select", value: selectedTypeId, onChange: (e) => setSelectedTypeId(e.target.value) }, loginTypes.map((type) => /* @__PURE__ */ React4__default.default.createElement("option", { key: type.id, value: type.id }, type.label)))), selectedType?.fields.map((field) => /* @__PURE__ */ React4__default.default.createElement("div", { key: field.name }, /* @__PURE__ */ React4__default.default.createElement("label", { htmlFor: field.name }, field.label), /* @__PURE__ */ React4__default.default.createElement(
647
+ ), /* @__PURE__ */ React2__default.default.createElement("ul", { style: { listStyleType: "square", paddingLeft: "20px" } }, /* @__PURE__ */ React2__default.default.createElement("li", null, "(\uC11C\uC2DD \uB2E8\uACC4 \uC774\uB3D9\uC2DC, validation\uC744 \uB044\uACE0 \uBBF8\uC791\uC131 \uB2E8\uACC4\uB3C4 \uC774\uB3D9\uAC00\uB2A5\uD558\uB3C4\uB85D \uD569\uB2C8\uB2E4.)")))), /* @__PURE__ */ React2__default.default.createElement("br", null), " ", /* @__PURE__ */ React2__default.default.createElement("br", null), /* @__PURE__ */ React2__default.default.createElement("label", { htmlFor: "login-type-select" }, "\uB85C\uADF8\uC778 \uC720\uD615"), /* @__PURE__ */ React2__default.default.createElement("select", { id: "login-type-select", value: selectedTypeId, onChange: (e) => setSelectedTypeId(e.target.value) }, loginTypes.map((type) => /* @__PURE__ */ React2__default.default.createElement("option", { key: type.id, value: type.id }, type.label)))), selectedType?.fields.map((field) => /* @__PURE__ */ React2__default.default.createElement("div", { key: field.name }, /* @__PURE__ */ React2__default.default.createElement("label", { htmlFor: field.name }, field.label), /* @__PURE__ */ React2__default.default.createElement(
564
648
  "input",
565
649
  {
566
650
  type: field.type,
@@ -571,7 +655,7 @@ var LoginPanel = ({ onClose, onLogin }) => {
571
655
  onChange: handleInputChange,
572
656
  required: true
573
657
  }
574
- ))), /* @__PURE__ */ React4__default.default.createElement("div", { style: formActionsStyle }, /* @__PURE__ */ React4__default.default.createElement("button", { type: "submit" }, "\uB85C\uADF8\uC778")))));
658
+ ))), /* @__PURE__ */ React2__default.default.createElement("div", { style: formActionsStyle }, /* @__PURE__ */ React2__default.default.createElement("button", { type: "submit" }, "\uB85C\uADF8\uC778")))));
575
659
  };
576
660
  var login_panel_default = LoginPanel;
577
661
  var SEARCH_SECTIONS = [
@@ -611,9 +695,9 @@ var NetworkLog = ({ onClose }) => {
611
695
  playAllRequests,
612
696
  playAllResponses
613
697
  } = salesFrontendStores.useDebugStore();
614
- const [searchTerm, setSearchTerm] = React4.useState("");
615
- const [searchSection, setSearchSection] = React4.useState(SEARCH_SECTIONS[0]?.value);
616
- const allLogs = React4.useMemo(() => {
698
+ const [searchTerm, setSearchTerm] = React2.useState("");
699
+ const [searchSection, setSearchSection] = React2.useState(SEARCH_SECTIONS[0]?.value);
700
+ const allLogs = React2.useMemo(() => {
617
701
  const logs = [];
618
702
  requests.forEach((req) => logs.push({ ...req, type: "request" }));
619
703
  responses.forEach((res) => logs.push({ ...res, type: "response" }));
@@ -630,7 +714,7 @@ var NetworkLog = ({ onClose }) => {
630
714
  });
631
715
  return logs;
632
716
  }, [requests, responses, errors, heldRequests, heldResponses, heldErrors]);
633
- const filteredLogs = React4.useMemo(() => {
717
+ const filteredLogs = React2.useMemo(() => {
634
718
  if (!searchTerm) {
635
719
  return allLogs;
636
720
  }
@@ -672,9 +756,9 @@ var NetworkLog = ({ onClose }) => {
672
756
  };
673
757
  const renderLogContent = (log) => {
674
758
  const logInfo = getLogInfo(log);
675
- return /* @__PURE__ */ React4__default.default.createElement("pre", null, JSON.stringify(logInfo, null, 2));
759
+ return /* @__PURE__ */ React2__default.default.createElement("pre", null, JSON.stringify(logInfo, null, 2));
676
760
  };
677
- return /* @__PURE__ */ React4__default.default.createElement(React4__default.default.Fragment, null, /* @__PURE__ */ React4__default.default.createElement("div", { style: modalOverlayStyle, onClick: onClose }), /* @__PURE__ */ React4__default.default.createElement("div", { style: debugFeaturePanelStyle }, /* @__PURE__ */ React4__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React4__default.default.createElement("h2", { style: h2Style }, "\uB124\uD2B8\uC6CC\uD06C \uB85C\uADF8"), /* @__PURE__ */ React4__default.default.createElement("button", { onClick: onClose }, "X")), /* @__PURE__ */ React4__default.default.createElement("div", { style: networkLogContainerStyle }, /* @__PURE__ */ React4__default.default.createElement("div", { style: searchContainerStyle }, /* @__PURE__ */ React4__default.default.createElement("select", { value: searchSection, onChange: (e) => setSearchSection(e.target.value) }, SEARCH_SECTIONS.map((option) => /* @__PURE__ */ React4__default.default.createElement("option", { key: option.value, value: option.value }, option.label))), /* @__PURE__ */ React4__default.default.createElement(
761
+ return /* @__PURE__ */ React2__default.default.createElement(React2__default.default.Fragment, null, /* @__PURE__ */ React2__default.default.createElement("div", { style: modalOverlayStyle, onClick: onClose }), /* @__PURE__ */ React2__default.default.createElement("div", { style: debugFeaturePanelStyle }, /* @__PURE__ */ React2__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React2__default.default.createElement("h2", { style: h2Style }, "\uB124\uD2B8\uC6CC\uD06C \uB85C\uADF8"), /* @__PURE__ */ React2__default.default.createElement("button", { onClick: onClose }, "X")), /* @__PURE__ */ React2__default.default.createElement("div", { style: networkLogContainerStyle }, /* @__PURE__ */ React2__default.default.createElement("div", { style: searchContainerStyle }, /* @__PURE__ */ React2__default.default.createElement("select", { value: searchSection, onChange: (e) => setSearchSection(e.target.value) }, SEARCH_SECTIONS.map((option) => /* @__PURE__ */ React2__default.default.createElement("option", { key: option.value, value: option.value }, option.label))), /* @__PURE__ */ React2__default.default.createElement(
678
762
  "input",
679
763
  {
680
764
  type: "text",
@@ -683,7 +767,7 @@ var NetworkLog = ({ onClose }) => {
683
767
  onChange: (e) => setSearchTerm(e.target.value),
684
768
  style: flex1Style
685
769
  }
686
- ), /* @__PURE__ */ React4__default.default.createElement("label", null, /* @__PURE__ */ React4__default.default.createElement("input", { type: "checkbox", id: "hold-checkbox", checked: isHold, onChange: toggleHold }), "Hold"), /* @__PURE__ */ React4__default.default.createElement("button", { onClick: clear }, "clear")), isHold && /* @__PURE__ */ React4__default.default.createElement("div", { style: holdButtonsContainerStyle }, /* @__PURE__ */ React4__default.default.createElement("button", { onClick: () => playAllRequests() }, "REQ Resolve"), /* @__PURE__ */ React4__default.default.createElement("button", { onClick: () => playAllResponses() }, "RES Resolve")), /* @__PURE__ */ React4__default.default.createElement("div", { style: logListStyle }, filteredLogs.length === 0 ? /* @__PURE__ */ React4__default.default.createElement("p", null, "\uD45C\uC2DC\uD560 \uB85C\uADF8\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.") : /* @__PURE__ */ React4__default.default.createElement("div", null, filteredLogs.map((log, index) => /* @__PURE__ */ React4__default.default.createElement("details", { key: index }, /* @__PURE__ */ React4__default.default.createElement("summary", { style: logSummaryStyle }, renderLogSummary(log)), /* @__PURE__ */ React4__default.default.createElement("div", { style: logContentStyle }, renderLogContent(log)))))))));
770
+ ), /* @__PURE__ */ React2__default.default.createElement("label", null, /* @__PURE__ */ React2__default.default.createElement("input", { type: "checkbox", id: "hold-checkbox", checked: isHold, onChange: toggleHold }), "Hold"), /* @__PURE__ */ React2__default.default.createElement("button", { onClick: clear }, "clear")), isHold && /* @__PURE__ */ React2__default.default.createElement("div", { style: holdButtonsContainerStyle }, /* @__PURE__ */ React2__default.default.createElement("button", { onClick: () => playAllRequests() }, "REQ Resolve"), /* @__PURE__ */ React2__default.default.createElement("button", { onClick: () => playAllResponses() }, "RES Resolve")), /* @__PURE__ */ React2__default.default.createElement("div", { style: logListStyle }, filteredLogs.length === 0 ? /* @__PURE__ */ React2__default.default.createElement("p", null, "\uD45C\uC2DC\uD560 \uB85C\uADF8\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.") : /* @__PURE__ */ React2__default.default.createElement("div", null, filteredLogs.map((log, index) => /* @__PURE__ */ React2__default.default.createElement("details", { key: index }, /* @__PURE__ */ React2__default.default.createElement("summary", { style: logSummaryStyle }, renderLogSummary(log)), /* @__PURE__ */ React2__default.default.createElement("div", { style: logContentStyle }, renderLogContent(log)))))))));
687
771
  };
688
772
  var network_log_default = NetworkLog;
689
773
  var URL_MAP = {
@@ -699,7 +783,7 @@ var URL_MAP = {
699
783
  none: ""
700
784
  };
701
785
  var PageNavigationPanel = ({ onClose }) => {
702
- const [url, setUrl] = React4.useState("");
786
+ const [url, setUrl] = React2.useState("");
703
787
  const handleNavigate = () => {
704
788
  if (url) {
705
789
  self.location.href = url;
@@ -713,7 +797,7 @@ var PageNavigationPanel = ({ onClose }) => {
713
797
  setUrl("");
714
798
  }
715
799
  };
716
- return /* @__PURE__ */ React4__default.default.createElement(React4__default.default.Fragment, null, /* @__PURE__ */ React4__default.default.createElement("div", { style: modalOverlayStyle, onClick: onClose }), /* @__PURE__ */ React4__default.default.createElement("div", { style: debugFeaturePanelStyle }, /* @__PURE__ */ React4__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React4__default.default.createElement("h2", { style: h2Style }, "\uD398\uC774\uC9C0 \uC774\uB3D9"), /* @__PURE__ */ React4__default.default.createElement("button", { onClick: onClose }, "X")), /* @__PURE__ */ React4__default.default.createElement("div", { style: pageNavigationContentStyle }, /* @__PURE__ */ React4__default.default.createElement("select", { onChange: handleUrlTypeChange }, /* @__PURE__ */ React4__default.default.createElement("option", null, "\uC120\uD0DD"), /* @__PURE__ */ React4__default.default.createElement("option", { value: "FP_1" }, "FP-\uC785\uB825\uB2E8\uACC4_\uC2DC\uC791\uD558\uAE30"), /* @__PURE__ */ React4__default.default.createElement("option", { value: "FP_2" }, "FP-\uC785\uB825\uB2E8\uACC4_2"), /* @__PURE__ */ React4__default.default.createElement("option", { value: "FP_3" }, "FP-\uC785\uB825\uB2E8\uACC4_3"), /* @__PURE__ */ React4__default.default.createElement("option", { value: "FP_4" }, "FP-\uC785\uB825\uB2E8\uACC4_4"), /* @__PURE__ */ React4__default.default.createElement("option", { value: "FP_5" }, "FP-\uC785\uB825\uB2E8\uACC4_5"), /* @__PURE__ */ React4__default.default.createElement("option", { value: "CUST_1" }, "\uACE0\uAC1D-\uC785\uB825\uB2E8\uACC4_1"), /* @__PURE__ */ React4__default.default.createElement("option", { value: "CUST_2" }, "\uACE0\uAC1D-\uC785\uB825\uB2E8\uACC4_2"), /* @__PURE__ */ React4__default.default.createElement("option", { value: "CUST_3" }, "\uACE0\uAC1D-\uC785\uB825\uB2E8\uACC4_3"), /* @__PURE__ */ React4__default.default.createElement("option", { value: "CUST_4" }, "\uACE0\uAC1D-\uC785\uB825\uB2E8\uACC4_4"), /* @__PURE__ */ React4__default.default.createElement("option", { value: "none" }, "\uC9C1\uC811\uC785\uB825")), /* @__PURE__ */ React4__default.default.createElement(
800
+ return /* @__PURE__ */ React2__default.default.createElement(React2__default.default.Fragment, null, /* @__PURE__ */ React2__default.default.createElement("div", { style: modalOverlayStyle, onClick: onClose }), /* @__PURE__ */ React2__default.default.createElement("div", { style: debugFeaturePanelStyle }, /* @__PURE__ */ React2__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React2__default.default.createElement("h2", { style: h2Style }, "\uD398\uC774\uC9C0 \uC774\uB3D9"), /* @__PURE__ */ React2__default.default.createElement("button", { onClick: onClose }, "X")), /* @__PURE__ */ React2__default.default.createElement("div", { style: pageNavigationContentStyle }, /* @__PURE__ */ React2__default.default.createElement("select", { onChange: handleUrlTypeChange }, /* @__PURE__ */ React2__default.default.createElement("option", null, "\uC120\uD0DD"), /* @__PURE__ */ React2__default.default.createElement("option", { value: "FP_1" }, "FP-\uC785\uB825\uB2E8\uACC4_\uC2DC\uC791\uD558\uAE30"), /* @__PURE__ */ React2__default.default.createElement("option", { value: "FP_2" }, "FP-\uC785\uB825\uB2E8\uACC4_2"), /* @__PURE__ */ React2__default.default.createElement("option", { value: "FP_3" }, "FP-\uC785\uB825\uB2E8\uACC4_3"), /* @__PURE__ */ React2__default.default.createElement("option", { value: "FP_4" }, "FP-\uC785\uB825\uB2E8\uACC4_4"), /* @__PURE__ */ React2__default.default.createElement("option", { value: "FP_5" }, "FP-\uC785\uB825\uB2E8\uACC4_5"), /* @__PURE__ */ React2__default.default.createElement("option", { value: "CUST_1" }, "\uACE0\uAC1D-\uC785\uB825\uB2E8\uACC4_1"), /* @__PURE__ */ React2__default.default.createElement("option", { value: "CUST_2" }, "\uACE0\uAC1D-\uC785\uB825\uB2E8\uACC4_2"), /* @__PURE__ */ React2__default.default.createElement("option", { value: "CUST_3" }, "\uACE0\uAC1D-\uC785\uB825\uB2E8\uACC4_3"), /* @__PURE__ */ React2__default.default.createElement("option", { value: "CUST_4" }, "\uACE0\uAC1D-\uC785\uB825\uB2E8\uACC4_4"), /* @__PURE__ */ React2__default.default.createElement("option", { value: "none" }, "\uC9C1\uC811\uC785\uB825")), /* @__PURE__ */ React2__default.default.createElement(
717
801
  "input",
718
802
  {
719
803
  type: "text",
@@ -722,7 +806,7 @@ var PageNavigationPanel = ({ onClose }) => {
722
806
  placeholder: "\uC774\uB3D9\uD560 URL\uC744 \uC785\uB825\uD558\uC138\uC694 (\uC608: /main)",
723
807
  style: flex1Style
724
808
  }
725
- ), /* @__PURE__ */ React4__default.default.createElement("button", { onClick: handleNavigate }, "\uC774\uB3D9"))));
809
+ ), /* @__PURE__ */ React2__default.default.createElement("button", { onClick: handleNavigate }, "\uC774\uB3D9"))));
726
810
  };
727
811
  var page_navigation_panel_default = PageNavigationPanel;
728
812
  var logTypeStyles2 = {
@@ -748,11 +832,11 @@ var ResultMessage = ({ log }) => {
748
832
  });
749
833
  const prefix = log.type === "return" ? "\u21A9 " : "";
750
834
  const style = { ...logMessageStyle, ...logTypeStyles2[log.type] };
751
- return /* @__PURE__ */ React4__default.default.createElement("pre", { style }, prefix, messageParts.join(" "));
835
+ return /* @__PURE__ */ React2__default.default.createElement("pre", { style }, prefix, messageParts.join(" "));
752
836
  };
753
837
  var ScriptExecutorPanel = ({ onClose }) => {
754
- const [code, setCode] = React4.useState('// \uC5EC\uAE30\uC5D0 \uC2E4\uD589\uD560 \uCF54\uB4DC\uB97C \uC785\uB825\uD558\uC138\uC694\nconsole.log("Hello, World!");');
755
- const [results, setResults] = React4.useState([]);
838
+ const [code, setCode] = React2.useState('// \uC5EC\uAE30\uC5D0 \uC2E4\uD589\uD560 \uCF54\uB4DC\uB97C \uC785\uB825\uD558\uC138\uC694\nconsole.log("Hello, World!");');
839
+ const [results, setResults] = React2.useState([]);
756
840
  const addResult = (type, ...args) => {
757
841
  setResults((prevResults) => [
758
842
  ...prevResults,
@@ -795,7 +879,7 @@ var ScriptExecutorPanel = ({ onClose }) => {
795
879
  const handleClear = () => {
796
880
  setResults([]);
797
881
  };
798
- return /* @__PURE__ */ React4__default.default.createElement(React4__default.default.Fragment, null, /* @__PURE__ */ React4__default.default.createElement("div", { style: modalOverlayStyle, onClick: onClose }), /* @__PURE__ */ React4__default.default.createElement("div", { style: { ...debugFeaturePanelStyle, ...scriptExecutorContentStyle } }, /* @__PURE__ */ React4__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React4__default.default.createElement("h2", { style: h2Style }, "\uC2A4\uD06C\uB9BD\uD2B8 \uC2E4\uD589"), /* @__PURE__ */ React4__default.default.createElement("button", { onClick: onClose }, "X")), /* @__PURE__ */ React4__default.default.createElement("div", { style: scriptExecutorContentStyle }, /* @__PURE__ */ React4__default.default.createElement("div", { style: scriptInputSectionStyle }, /* @__PURE__ */ React4__default.default.createElement(
882
+ return /* @__PURE__ */ React2__default.default.createElement(React2__default.default.Fragment, null, /* @__PURE__ */ React2__default.default.createElement("div", { style: modalOverlayStyle, onClick: onClose }), /* @__PURE__ */ React2__default.default.createElement("div", { style: { ...debugFeaturePanelStyle, ...scriptExecutorContentStyle } }, /* @__PURE__ */ React2__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React2__default.default.createElement("h2", { style: h2Style }, "\uC2A4\uD06C\uB9BD\uD2B8 \uC2E4\uD589"), /* @__PURE__ */ React2__default.default.createElement("button", { onClick: onClose }, "X")), /* @__PURE__ */ React2__default.default.createElement("div", { style: scriptExecutorContentStyle }, /* @__PURE__ */ React2__default.default.createElement("div", { style: scriptInputSectionStyle }, /* @__PURE__ */ React2__default.default.createElement(
799
883
  "textarea",
800
884
  {
801
885
  style: scriptTextareaStyle,
@@ -803,22 +887,22 @@ var ScriptExecutorPanel = ({ onClose }) => {
803
887
  onChange: (e) => setCode(e.target.value),
804
888
  spellCheck: "false"
805
889
  }
806
- ), /* @__PURE__ */ React4__default.default.createElement("div", { style: scriptActionsStyle }, /* @__PURE__ */ React4__default.default.createElement("button", { onClick: handleExecute }, "\uC2E4\uD589 (\u25B6)"), /* @__PURE__ */ React4__default.default.createElement("button", { onClick: handleClear }, "\uACB0\uACFC \uC9C0\uC6B0\uAE30"))), /* @__PURE__ */ React4__default.default.createElement("div", { style: scriptOutputSectionStyle }, /* @__PURE__ */ React4__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React4__default.default.createElement("h3", { style: h3Style }, "\uACB0\uACFC")), /* @__PURE__ */ React4__default.default.createElement("div", { style: logListContainerStyle }, results.map((log) => /* @__PURE__ */ React4__default.default.createElement("div", { key: log.id, style: logItemStyle }, /* @__PURE__ */ React4__default.default.createElement("span", { style: logTimestampStyle }, log.timestamp), /* @__PURE__ */ React4__default.default.createElement(ResultMessage, { log }))))))));
890
+ ), /* @__PURE__ */ React2__default.default.createElement("div", { style: scriptActionsStyle }, /* @__PURE__ */ React2__default.default.createElement("button", { onClick: handleExecute }, "\uC2E4\uD589 (\u25B6)"), /* @__PURE__ */ React2__default.default.createElement("button", { onClick: handleClear }, "\uACB0\uACFC \uC9C0\uC6B0\uAE30"))), /* @__PURE__ */ React2__default.default.createElement("div", { style: scriptOutputSectionStyle }, /* @__PURE__ */ React2__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React2__default.default.createElement("h3", { style: h3Style }, "\uACB0\uACFC")), /* @__PURE__ */ React2__default.default.createElement("div", { style: logListContainerStyle }, results.map((log) => /* @__PURE__ */ React2__default.default.createElement("div", { key: log.id, style: logItemStyle }, /* @__PURE__ */ React2__default.default.createElement("span", { style: logTimestampStyle }, log.timestamp), /* @__PURE__ */ React2__default.default.createElement(ResultMessage, { log }))))))));
807
891
  };
808
892
  var script_executor_panel_default = ScriptExecutorPanel;
809
893
  var ValueDisplay = ({ value }) => {
810
894
  try {
811
895
  const parsed = JSON.parse(value);
812
896
  if (typeof parsed === "object" && parsed !== null) {
813
- return /* @__PURE__ */ React4__default.default.createElement("pre", { style: logContentStyle }, JSON.stringify(parsed, null, 2));
897
+ return /* @__PURE__ */ React2__default.default.createElement("pre", { style: logContentStyle }, JSON.stringify(parsed, null, 2));
814
898
  }
815
899
  } catch (e) {
816
900
  }
817
- return /* @__PURE__ */ React4__default.default.createElement("div", { style: logContentStyle }, value);
901
+ return /* @__PURE__ */ React2__default.default.createElement("div", { style: logContentStyle }, value);
818
902
  };
819
903
  var EditableRow = ({ item, onSave, onRemove }) => {
820
- const [isEditing, setIsEditing] = React4.useState(false);
821
- const [value, setValue] = React4.useState(item.value);
904
+ const [isEditing, setIsEditing] = React2.useState(false);
905
+ const [value, setValue] = React2.useState(item.value);
822
906
  const handleSave = () => {
823
907
  onSave(item.key, value);
824
908
  setIsEditing(false);
@@ -827,12 +911,12 @@ var EditableRow = ({ item, onSave, onRemove }) => {
827
911
  setValue(item.value);
828
912
  setIsEditing(true);
829
913
  };
830
- return /* @__PURE__ */ React4__default.default.createElement("details", null, /* @__PURE__ */ React4__default.default.createElement("summary", null, item.key), /* @__PURE__ */ React4__default.default.createElement("div", null, isEditing ? /* @__PURE__ */ React4__default.default.createElement("button", { onClick: handleSave }, "Save") : /* @__PURE__ */ React4__default.default.createElement("button", { onClick: handleEdit }, "Edit"), /* @__PURE__ */ React4__default.default.createElement("button", { onClick: () => onRemove(item.key) }, "Remove"), isEditing ? /* @__PURE__ */ React4__default.default.createElement("textarea", { value, onChange: (e) => setValue(e.target.value), style: textareaStyle }) : /* @__PURE__ */ React4__default.default.createElement(ValueDisplay, { value: item.value })));
914
+ return /* @__PURE__ */ React2__default.default.createElement("details", null, /* @__PURE__ */ React2__default.default.createElement("summary", null, item.key), /* @__PURE__ */ React2__default.default.createElement("div", null, isEditing ? /* @__PURE__ */ React2__default.default.createElement("button", { onClick: handleSave }, "Save") : /* @__PURE__ */ React2__default.default.createElement("button", { onClick: handleEdit }, "Edit"), /* @__PURE__ */ React2__default.default.createElement("button", { onClick: () => onRemove(item.key) }, "Remove"), isEditing ? /* @__PURE__ */ React2__default.default.createElement("textarea", { value, onChange: (e) => setValue(e.target.value), style: textareaStyle }) : /* @__PURE__ */ React2__default.default.createElement(ValueDisplay, { value: item.value })));
831
915
  };
832
916
  var StoragePanel = ({ onClose, storageType }) => {
833
917
  const { items, setItem, removeItem } = useStorage(storageType);
834
- const [filter, setFilter] = React4.useState("");
835
- const filteredItems = React4.useMemo(() => {
918
+ const [filter, setFilter] = React2.useState("");
919
+ const filteredItems = React2.useMemo(() => {
836
920
  if (!filter) {
837
921
  return items;
838
922
  }
@@ -840,7 +924,7 @@ var StoragePanel = ({ onClose, storageType }) => {
840
924
  (item) => item.key.toLowerCase().includes(filter.toLowerCase()) || item.value.toLowerCase().includes(filter.toLowerCase())
841
925
  );
842
926
  }, [items, filter]);
843
- return /* @__PURE__ */ React4__default.default.createElement(React4__default.default.Fragment, null, /* @__PURE__ */ React4__default.default.createElement("div", { style: modalOverlayStyle, onClick: onClose }), /* @__PURE__ */ React4__default.default.createElement("div", { style: debugFeaturePanelStyle }, /* @__PURE__ */ React4__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React4__default.default.createElement("h2", { style: h2Style }, storageType === "localStorage" ? "Local Storage" : "Cookies"), /* @__PURE__ */ React4__default.default.createElement("button", { onClick: onClose }, "X")), /* @__PURE__ */ React4__default.default.createElement("div", { style: panelToolbarStyle }, /* @__PURE__ */ React4__default.default.createElement(
927
+ return /* @__PURE__ */ React2__default.default.createElement(React2__default.default.Fragment, null, /* @__PURE__ */ React2__default.default.createElement("div", { style: modalOverlayStyle, onClick: onClose }), /* @__PURE__ */ React2__default.default.createElement("div", { style: debugFeaturePanelStyle }, /* @__PURE__ */ React2__default.default.createElement("div", { style: panelHeaderStyle }, /* @__PURE__ */ React2__default.default.createElement("h2", { style: h2Style }, storageType === "localStorage" ? "Local Storage" : "Cookies"), /* @__PURE__ */ React2__default.default.createElement("button", { onClick: onClose }, "X")), /* @__PURE__ */ React2__default.default.createElement("div", { style: panelToolbarStyle }, /* @__PURE__ */ React2__default.default.createElement(
844
928
  "input",
845
929
  {
846
930
  type: "text",
@@ -849,7 +933,7 @@ var StoragePanel = ({ onClose, storageType }) => {
849
933
  onChange: (e) => setFilter(e.target.value),
850
934
  style: storageSearchInputStyle
851
935
  }
852
- )), /* @__PURE__ */ React4__default.default.createElement("div", { style: storageTableContainerStyle }, filteredItems.map((item) => /* @__PURE__ */ React4__default.default.createElement(EditableRow, { key: item.key, item, onSave: setItem, onRemove: removeItem })))));
936
+ )), /* @__PURE__ */ React2__default.default.createElement("div", { style: storageTableContainerStyle }, filteredItems.map((item) => /* @__PURE__ */ React2__default.default.createElement(EditableRow, { key: item.key, item, onSave: setItem, onRemove: removeItem })))));
853
937
  };
854
938
  var storage_panel_default = StoragePanel;
855
939
 
@@ -889,13 +973,13 @@ var menuItems = [
889
973
  id: "local-storage",
890
974
  label: "\uB85C\uCEEC \uC2A4\uD1A0\uB9AC\uC9C0 \uAD00\uB9AC",
891
975
  // StoragePanel은 재사용 가능한 컴포넌트이므로, props를 통해 어떤 스토리지를 다룰지 지정합니다.
892
- component: (props) => /* @__PURE__ */ React4__default.default.createElement(storage_panel_default, { ...props, storageType: "localStorage" }),
976
+ component: (props) => /* @__PURE__ */ React2__default.default.createElement(storage_panel_default, { ...props, storageType: "localStorage" }),
893
977
  display: true
894
978
  },
895
979
  {
896
980
  id: "cookie-management",
897
981
  label: "\uCFE0\uD0A4 \uAD00\uB9AC",
898
- component: (props) => /* @__PURE__ */ React4__default.default.createElement(storage_panel_default, { ...props, storageType: "cookie" }),
982
+ component: (props) => /* @__PURE__ */ React2__default.default.createElement(storage_panel_default, { ...props, storageType: "cookie" }),
899
983
  display: true
900
984
  },
901
985
  {
@@ -919,10 +1003,10 @@ var menuItems = [
919
1003
  }
920
1004
  ];
921
1005
  var useEnvironment = () => {
922
- const [envInfo, setEnvInfo] = React4.useState({
1006
+ const [envInfo, setEnvInfo] = React2.useState({
923
1007
  env: "prd"
924
1008
  });
925
- React4.useEffect(() => {
1009
+ React2.useEffect(() => {
926
1010
  const { hostname } = window.location;
927
1011
  setEnvInfo({ env: salesFrontendUtils.getEnvironmentFromHostname(hostname) });
928
1012
  }, []);
@@ -936,7 +1020,7 @@ var DebugTool = ({
936
1020
  menuItemsOverride,
937
1021
  serviceCode = "etc"
938
1022
  }) => {
939
- React4.useEffect(() => {
1023
+ React2.useEffect(() => {
940
1024
  initializeConsoleLogOverride();
941
1025
  return () => {
942
1026
  restoreConsoleLog();
@@ -945,8 +1029,8 @@ var DebugTool = ({
945
1029
  const environment = useEnvironment();
946
1030
  const env = envOverride || environment.env;
947
1031
  const menuItems2 = menuItemsOverride || menuItems;
948
- const [isMenuOpen, setMenuOpen] = React4.useState(false);
949
- const [activeFeature, setActiveFeature] = React4.useState(null);
1032
+ const [isMenuOpen, setMenuOpen] = React2.useState(false);
1033
+ const [activeFeature, setActiveFeature] = React2.useState(null);
950
1034
  const isVisible = ["local", "dev", "stg"].includes(env);
951
1035
  const handleMenuClick = (itemComponent) => {
952
1036
  setActiveFeature(() => itemComponent);
@@ -971,9 +1055,9 @@ var DebugTool = ({
971
1055
  );
972
1056
  if (activeFeature) {
973
1057
  const FeatureComponent = activeFeature;
974
- return /* @__PURE__ */ React4__default.default.createElement(FeatureComponent, { onClose: handleCloseFeature, onLogin });
1058
+ return /* @__PURE__ */ React2__default.default.createElement(FeatureComponent, { onClose: handleCloseFeature, onLogin });
975
1059
  }
976
- return /* @__PURE__ */ React4__default.default.createElement(
1060
+ return /* @__PURE__ */ React2__default.default.createElement(
977
1061
  "div",
978
1062
  {
979
1063
  style: {
@@ -983,8 +1067,8 @@ var DebugTool = ({
983
1067
  zIndex: 9999
984
1068
  }
985
1069
  },
986
- /* @__PURE__ */ React4__default.default.createElement(floating_button_default, { onClick: toggleMenu }),
987
- isMenuOpen && /* @__PURE__ */ React4__default.default.createElement(
1070
+ /* @__PURE__ */ React2__default.default.createElement(floating_button_default, { onClick: toggleMenu }),
1071
+ isMenuOpen && /* @__PURE__ */ React2__default.default.createElement(
988
1072
  menu_panel_default,
989
1073
  {
990
1074
  menuItems: availableMenuItems,
@@ -1070,14 +1154,19 @@ function addErrorLog(error) {
1070
1154
 
1071
1155
  // src/debug-utils.ts
1072
1156
  function isDebugStepValidationOff() {
1073
- const DebugStepValidationOff = cookieClient.getCookie("Debug-Step-Validation-Off") === "true";
1074
- return DebugStepValidationOff;
1157
+ const debugStepValidationOff = cookieClient.getCookie("Debug-Step-Validation-Off") === "true";
1158
+ return debugStepValidationOff;
1159
+ }
1160
+ function isDebugMode() {
1161
+ const debugMode = cookieClient.getCookie("dsp-debug-mode") === "on";
1162
+ return debugMode;
1075
1163
  }
1076
1164
 
1077
1165
  exports.DebugTool = DebugTool;
1078
1166
  exports.addErrorLog = addErrorLog;
1079
1167
  exports.addRequestLog = addRequestLog;
1080
1168
  exports.addResponseLog = addResponseLog;
1169
+ exports.isDebugMode = isDebugMode;
1081
1170
  exports.isDebugStepValidationOff = isDebugStepValidationOff;
1082
1171
  //# sourceMappingURL=index.cjs.map
1083
1172
  //# sourceMappingURL=index.cjs.map