sales-frontend-bridge 0.0.21 → 0.0.23
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 +200 -101
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +259 -130
- package/dist/index.d.ts +259 -130
- package/dist/index.js +201 -103
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../node_modules/.pnpm/react@19.1.0/node_modules/react/cjs/react.production.js","../../../node_modules/.pnpm/react@19.1.0/node_modules/react/cjs/react.development.js","../../../node_modules/.pnpm/react@19.1.0/node_modules/react/index.js","../src/common/common-bridge.ts","../src/common/common-bridge-core.ts","../src/iframe/core/iframe-bridge-core.ts","../src/iframe/bridge/iframe-bridge.ts","../src/native/core/native-bridge-core.ts","../src/native/bridge/native-bridge.ts","../src/bridge.ts","../src/oz/oz-event.types.ts","../src/oz/constant.ts","../src/oz/use-create-report.ts","../src/oz/util.ts","../src/oz/use-oz-event-listener.tsx"],"names":["MessageEventManager","getDspExecutionEnvironment","isClient","isStorybookEnv","OZViewerEvent","import_react"],"mappings":"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","file":"index.cjs","sourcesContent":["/**\n * @license React\n * react.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nfunction getIteratorFn(maybeIterable) {\n if (null === maybeIterable || \"object\" !== typeof maybeIterable) return null;\n maybeIterable =\n (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||\n maybeIterable[\"@@iterator\"];\n return \"function\" === typeof maybeIterable ? maybeIterable : null;\n}\nvar ReactNoopUpdateQueue = {\n isMounted: function () {\n return !1;\n },\n enqueueForceUpdate: function () {},\n enqueueReplaceState: function () {},\n enqueueSetState: function () {}\n },\n assign = Object.assign,\n emptyObject = {};\nfunction Component(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nComponent.prototype.isReactComponent = {};\nComponent.prototype.setState = function (partialState, callback) {\n if (\n \"object\" !== typeof partialState &&\n \"function\" !== typeof partialState &&\n null != partialState\n )\n throw Error(\n \"takes an object of state variables to update or a function which returns an object of state variables.\"\n );\n this.updater.enqueueSetState(this, partialState, callback, \"setState\");\n};\nComponent.prototype.forceUpdate = function (callback) {\n this.updater.enqueueForceUpdate(this, callback, \"forceUpdate\");\n};\nfunction ComponentDummy() {}\nComponentDummy.prototype = Component.prototype;\nfunction PureComponent(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nvar pureComponentPrototype = (PureComponent.prototype = new ComponentDummy());\npureComponentPrototype.constructor = PureComponent;\nassign(pureComponentPrototype, Component.prototype);\npureComponentPrototype.isPureReactComponent = !0;\nvar isArrayImpl = Array.isArray,\n ReactSharedInternals = { H: null, A: null, T: null, S: null, V: null },\n hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction ReactElement(type, key, self, source, owner, props) {\n self = props.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== self ? self : null,\n props: props\n };\n}\nfunction cloneAndReplaceKey(oldElement, newKey) {\n return ReactElement(\n oldElement.type,\n newKey,\n void 0,\n void 0,\n void 0,\n oldElement.props\n );\n}\nfunction isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n}\nfunction escape(key) {\n var escaperLookup = { \"=\": \"=0\", \":\": \"=2\" };\n return (\n \"$\" +\n key.replace(/[=:]/g, function (match) {\n return escaperLookup[match];\n })\n );\n}\nvar userProvidedKeyEscapeRegex = /\\/+/g;\nfunction getElementKey(element, index) {\n return \"object\" === typeof element && null !== element && null != element.key\n ? escape(\"\" + element.key)\n : index.toString(36);\n}\nfunction noop$1() {}\nfunction resolveThenable(thenable) {\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n default:\n switch (\n (\"string\" === typeof thenable.status\n ? thenable.then(noop$1, noop$1)\n : ((thenable.status = \"pending\"),\n thenable.then(\n function (fulfilledValue) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"fulfilled\"),\n (thenable.value = fulfilledValue));\n },\n function (error) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"rejected\"), (thenable.reason = error));\n }\n )),\n thenable.status)\n ) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n }\n }\n throw thenable;\n}\nfunction mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {\n var type = typeof children;\n if (\"undefined\" === type || \"boolean\" === type) children = null;\n var invokeCallback = !1;\n if (null === children) invokeCallback = !0;\n else\n switch (type) {\n case \"bigint\":\n case \"string\":\n case \"number\":\n invokeCallback = !0;\n break;\n case \"object\":\n switch (children.$$typeof) {\n case REACT_ELEMENT_TYPE:\n case REACT_PORTAL_TYPE:\n invokeCallback = !0;\n break;\n case REACT_LAZY_TYPE:\n return (\n (invokeCallback = children._init),\n mapIntoArray(\n invokeCallback(children._payload),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n )\n );\n }\n }\n if (invokeCallback)\n return (\n (callback = callback(children)),\n (invokeCallback =\n \"\" === nameSoFar ? \".\" + getElementKey(children, 0) : nameSoFar),\n isArrayImpl(callback)\n ? ((escapedPrefix = \"\"),\n null != invokeCallback &&\n (escapedPrefix =\n invokeCallback.replace(userProvidedKeyEscapeRegex, \"$&/\") + \"/\"),\n mapIntoArray(callback, array, escapedPrefix, \"\", function (c) {\n return c;\n }))\n : null != callback &&\n (isValidElement(callback) &&\n (callback = cloneAndReplaceKey(\n callback,\n escapedPrefix +\n (null == callback.key ||\n (children && children.key === callback.key)\n ? \"\"\n : (\"\" + callback.key).replace(\n userProvidedKeyEscapeRegex,\n \"$&/\"\n ) + \"/\") +\n invokeCallback\n )),\n array.push(callback)),\n 1\n );\n invokeCallback = 0;\n var nextNamePrefix = \"\" === nameSoFar ? \".\" : nameSoFar + \":\";\n if (isArrayImpl(children))\n for (var i = 0; i < children.length; i++)\n (nameSoFar = children[i]),\n (type = nextNamePrefix + getElementKey(nameSoFar, i)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (((i = getIteratorFn(children)), \"function\" === typeof i))\n for (\n children = i.call(children), i = 0;\n !(nameSoFar = children.next()).done;\n\n )\n (nameSoFar = nameSoFar.value),\n (type = nextNamePrefix + getElementKey(nameSoFar, i++)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (\"object\" === type) {\n if (\"function\" === typeof children.then)\n return mapIntoArray(\n resolveThenable(children),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n );\n array = String(children);\n throw Error(\n \"Objects are not valid as a React child (found: \" +\n (\"[object Object]\" === array\n ? \"object with keys {\" + Object.keys(children).join(\", \") + \"}\"\n : array) +\n \"). If you meant to render a collection of children, use an array instead.\"\n );\n }\n return invokeCallback;\n}\nfunction mapChildren(children, func, context) {\n if (null == children) return children;\n var result = [],\n count = 0;\n mapIntoArray(children, result, \"\", \"\", function (child) {\n return func.call(context, child, count++);\n });\n return result;\n}\nfunction lazyInitializer(payload) {\n if (-1 === payload._status) {\n var ctor = payload._result;\n ctor = ctor();\n ctor.then(\n function (moduleObject) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 1), (payload._result = moduleObject);\n },\n function (error) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 2), (payload._result = error);\n }\n );\n -1 === payload._status && ((payload._status = 0), (payload._result = ctor));\n }\n if (1 === payload._status) return payload._result.default;\n throw payload._result;\n}\nvar reportGlobalError =\n \"function\" === typeof reportError\n ? reportError\n : function (error) {\n if (\n \"object\" === typeof window &&\n \"function\" === typeof window.ErrorEvent\n ) {\n var event = new window.ErrorEvent(\"error\", {\n bubbles: !0,\n cancelable: !0,\n message:\n \"object\" === typeof error &&\n null !== error &&\n \"string\" === typeof error.message\n ? String(error.message)\n : String(error),\n error: error\n });\n if (!window.dispatchEvent(event)) return;\n } else if (\n \"object\" === typeof process &&\n \"function\" === typeof process.emit\n ) {\n process.emit(\"uncaughtException\", error);\n return;\n }\n console.error(error);\n };\nfunction noop() {}\nexports.Children = {\n map: mapChildren,\n forEach: function (children, forEachFunc, forEachContext) {\n mapChildren(\n children,\n function () {\n forEachFunc.apply(this, arguments);\n },\n forEachContext\n );\n },\n count: function (children) {\n var n = 0;\n mapChildren(children, function () {\n n++;\n });\n return n;\n },\n toArray: function (children) {\n return (\n mapChildren(children, function (child) {\n return child;\n }) || []\n );\n },\n only: function (children) {\n if (!isValidElement(children))\n throw Error(\n \"React.Children.only expected to receive a single React element child.\"\n );\n return children;\n }\n};\nexports.Component = Component;\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.Profiler = REACT_PROFILER_TYPE;\nexports.PureComponent = PureComponent;\nexports.StrictMode = REACT_STRICT_MODE_TYPE;\nexports.Suspense = REACT_SUSPENSE_TYPE;\nexports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =\n ReactSharedInternals;\nexports.__COMPILER_RUNTIME = {\n __proto__: null,\n c: function (size) {\n return ReactSharedInternals.H.useMemoCache(size);\n }\n};\nexports.cache = function (fn) {\n return function () {\n return fn.apply(null, arguments);\n };\n};\nexports.cloneElement = function (element, config, children) {\n if (null === element || void 0 === element)\n throw Error(\n \"The argument must be a React element, but you passed \" + element + \".\"\n );\n var props = assign({}, element.props),\n key = element.key,\n owner = void 0;\n if (null != config)\n for (propName in (void 0 !== config.ref && (owner = void 0),\n void 0 !== config.key && (key = \"\" + config.key),\n config))\n !hasOwnProperty.call(config, propName) ||\n \"key\" === propName ||\n \"__self\" === propName ||\n \"__source\" === propName ||\n (\"ref\" === propName && void 0 === config.ref) ||\n (props[propName] = config[propName]);\n var propName = arguments.length - 2;\n if (1 === propName) props.children = children;\n else if (1 < propName) {\n for (var childArray = Array(propName), i = 0; i < propName; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n return ReactElement(element.type, key, void 0, void 0, owner, props);\n};\nexports.createContext = function (defaultValue) {\n defaultValue = {\n $$typeof: REACT_CONTEXT_TYPE,\n _currentValue: defaultValue,\n _currentValue2: defaultValue,\n _threadCount: 0,\n Provider: null,\n Consumer: null\n };\n defaultValue.Provider = defaultValue;\n defaultValue.Consumer = {\n $$typeof: REACT_CONSUMER_TYPE,\n _context: defaultValue\n };\n return defaultValue;\n};\nexports.createElement = function (type, config, children) {\n var propName,\n props = {},\n key = null;\n if (null != config)\n for (propName in (void 0 !== config.key && (key = \"\" + config.key), config))\n hasOwnProperty.call(config, propName) &&\n \"key\" !== propName &&\n \"__self\" !== propName &&\n \"__source\" !== propName &&\n (props[propName] = config[propName]);\n var childrenLength = arguments.length - 2;\n if (1 === childrenLength) props.children = children;\n else if (1 < childrenLength) {\n for (var childArray = Array(childrenLength), i = 0; i < childrenLength; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n if (type && type.defaultProps)\n for (propName in ((childrenLength = type.defaultProps), childrenLength))\n void 0 === props[propName] &&\n (props[propName] = childrenLength[propName]);\n return ReactElement(type, key, void 0, void 0, null, props);\n};\nexports.createRef = function () {\n return { current: null };\n};\nexports.forwardRef = function (render) {\n return { $$typeof: REACT_FORWARD_REF_TYPE, render: render };\n};\nexports.isValidElement = isValidElement;\nexports.lazy = function (ctor) {\n return {\n $$typeof: REACT_LAZY_TYPE,\n _payload: { _status: -1, _result: ctor },\n _init: lazyInitializer\n };\n};\nexports.memo = function (type, compare) {\n return {\n $$typeof: REACT_MEMO_TYPE,\n type: type,\n compare: void 0 === compare ? null : compare\n };\n};\nexports.startTransition = function (scope) {\n var prevTransition = ReactSharedInternals.T,\n currentTransition = {};\n ReactSharedInternals.T = currentTransition;\n try {\n var returnValue = scope(),\n onStartTransitionFinish = ReactSharedInternals.S;\n null !== onStartTransitionFinish &&\n onStartTransitionFinish(currentTransition, returnValue);\n \"object\" === typeof returnValue &&\n null !== returnValue &&\n \"function\" === typeof returnValue.then &&\n returnValue.then(noop, reportGlobalError);\n } catch (error) {\n reportGlobalError(error);\n } finally {\n ReactSharedInternals.T = prevTransition;\n }\n};\nexports.unstable_useCacheRefresh = function () {\n return ReactSharedInternals.H.useCacheRefresh();\n};\nexports.use = function (usable) {\n return ReactSharedInternals.H.use(usable);\n};\nexports.useActionState = function (action, initialState, permalink) {\n return ReactSharedInternals.H.useActionState(action, initialState, permalink);\n};\nexports.useCallback = function (callback, deps) {\n return ReactSharedInternals.H.useCallback(callback, deps);\n};\nexports.useContext = function (Context) {\n return ReactSharedInternals.H.useContext(Context);\n};\nexports.useDebugValue = function () {};\nexports.useDeferredValue = function (value, initialValue) {\n return ReactSharedInternals.H.useDeferredValue(value, initialValue);\n};\nexports.useEffect = function (create, createDeps, update) {\n var dispatcher = ReactSharedInternals.H;\n if (\"function\" === typeof update)\n throw Error(\n \"useEffect CRUD overload is not enabled in this build of React.\"\n );\n return dispatcher.useEffect(create, createDeps);\n};\nexports.useId = function () {\n return ReactSharedInternals.H.useId();\n};\nexports.useImperativeHandle = function (ref, create, deps) {\n return ReactSharedInternals.H.useImperativeHandle(ref, create, deps);\n};\nexports.useInsertionEffect = function (create, deps) {\n return ReactSharedInternals.H.useInsertionEffect(create, deps);\n};\nexports.useLayoutEffect = function (create, deps) {\n return ReactSharedInternals.H.useLayoutEffect(create, deps);\n};\nexports.useMemo = function (create, deps) {\n return ReactSharedInternals.H.useMemo(create, deps);\n};\nexports.useOptimistic = function (passthrough, reducer) {\n return ReactSharedInternals.H.useOptimistic(passthrough, reducer);\n};\nexports.useReducer = function (reducer, initialArg, init) {\n return ReactSharedInternals.H.useReducer(reducer, initialArg, init);\n};\nexports.useRef = function (initialValue) {\n return ReactSharedInternals.H.useRef(initialValue);\n};\nexports.useState = function (initialState) {\n return ReactSharedInternals.H.useState(initialState);\n};\nexports.useSyncExternalStore = function (\n subscribe,\n getSnapshot,\n getServerSnapshot\n) {\n return ReactSharedInternals.H.useSyncExternalStore(\n subscribe,\n getSnapshot,\n getServerSnapshot\n );\n};\nexports.useTransition = function () {\n return ReactSharedInternals.H.useTransition();\n};\nexports.version = \"19.1.0\";\n","/**\n * @license React\n * react.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function defineDeprecationWarning(methodName, info) {\n Object.defineProperty(Component.prototype, methodName, {\n get: function () {\n console.warn(\n \"%s(...) is deprecated in plain JavaScript React classes. %s\",\n info[0],\n info[1]\n );\n }\n });\n }\n function getIteratorFn(maybeIterable) {\n if (null === maybeIterable || \"object\" !== typeof maybeIterable)\n return null;\n maybeIterable =\n (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||\n maybeIterable[\"@@iterator\"];\n return \"function\" === typeof maybeIterable ? maybeIterable : null;\n }\n function warnNoop(publicInstance, callerName) {\n publicInstance =\n ((publicInstance = publicInstance.constructor) &&\n (publicInstance.displayName || publicInstance.name)) ||\n \"ReactClass\";\n var warningKey = publicInstance + \".\" + callerName;\n didWarnStateUpdateForUnmountedComponent[warningKey] ||\n (console.error(\n \"Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.\",\n callerName,\n publicInstance\n ),\n (didWarnStateUpdateForUnmountedComponent[warningKey] = !0));\n }\n function Component(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n }\n function ComponentDummy() {}\n function PureComponent(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n }\n function testStringCoercion(value) {\n return \"\" + value;\n }\n function checkKeyStringCoercion(value) {\n try {\n testStringCoercion(value);\n var JSCompiler_inline_result = !1;\n } catch (e) {\n JSCompiler_inline_result = !0;\n }\n if (JSCompiler_inline_result) {\n JSCompiler_inline_result = console;\n var JSCompiler_temp_const = JSCompiler_inline_result.error;\n var JSCompiler_inline_result$jscomp$0 =\n (\"function\" === typeof Symbol &&\n Symbol.toStringTag &&\n value[Symbol.toStringTag]) ||\n value.constructor.name ||\n \"Object\";\n JSCompiler_temp_const.call(\n JSCompiler_inline_result,\n \"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",\n JSCompiler_inline_result$jscomp$0\n );\n return testStringCoercion(value);\n }\n }\n function getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n case REACT_ACTIVITY_TYPE:\n return \"Activity\";\n }\n if (\"object\" === typeof type)\n switch (\n (\"number\" === typeof type.tag &&\n console.error(\n \"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"\n ),\n type.$$typeof)\n ) {\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_CONTEXT_TYPE:\n return (type.displayName || \"Context\") + \".Provider\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n }\n function getTaskName(type) {\n if (type === REACT_FRAGMENT_TYPE) return \"<>\";\n if (\n \"object\" === typeof type &&\n null !== type &&\n type.$$typeof === REACT_LAZY_TYPE\n )\n return \"<...>\";\n try {\n var name = getComponentNameFromType(type);\n return name ? \"<\" + name + \">\" : \"<...>\";\n } catch (x) {\n return \"<...>\";\n }\n }\n function getOwner() {\n var dispatcher = ReactSharedInternals.A;\n return null === dispatcher ? null : dispatcher.getOwner();\n }\n function UnknownOwner() {\n return Error(\"react-stack-top-frame\");\n }\n function hasValidKey(config) {\n if (hasOwnProperty.call(config, \"key\")) {\n var getter = Object.getOwnPropertyDescriptor(config, \"key\").get;\n if (getter && getter.isReactWarning) return !1;\n }\n return void 0 !== config.key;\n }\n function defineKeyPropWarningGetter(props, displayName) {\n function warnAboutAccessingKey() {\n specialPropKeyWarningShown ||\n ((specialPropKeyWarningShown = !0),\n console.error(\n \"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",\n displayName\n ));\n }\n warnAboutAccessingKey.isReactWarning = !0;\n Object.defineProperty(props, \"key\", {\n get: warnAboutAccessingKey,\n configurable: !0\n });\n }\n function elementRefGetterWithDeprecationWarning() {\n var componentName = getComponentNameFromType(this.type);\n didWarnAboutElementRef[componentName] ||\n ((didWarnAboutElementRef[componentName] = !0),\n console.error(\n \"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\"\n ));\n componentName = this.props.ref;\n return void 0 !== componentName ? componentName : null;\n }\n function ReactElement(\n type,\n key,\n self,\n source,\n owner,\n props,\n debugStack,\n debugTask\n ) {\n self = props.ref;\n type = {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n props: props,\n _owner: owner\n };\n null !== (void 0 !== self ? self : null)\n ? Object.defineProperty(type, \"ref\", {\n enumerable: !1,\n get: elementRefGetterWithDeprecationWarning\n })\n : Object.defineProperty(type, \"ref\", { enumerable: !1, value: null });\n type._store = {};\n Object.defineProperty(type._store, \"validated\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: 0\n });\n Object.defineProperty(type, \"_debugInfo\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: null\n });\n Object.defineProperty(type, \"_debugStack\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugStack\n });\n Object.defineProperty(type, \"_debugTask\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugTask\n });\n Object.freeze && (Object.freeze(type.props), Object.freeze(type));\n return type;\n }\n function cloneAndReplaceKey(oldElement, newKey) {\n newKey = ReactElement(\n oldElement.type,\n newKey,\n void 0,\n void 0,\n oldElement._owner,\n oldElement.props,\n oldElement._debugStack,\n oldElement._debugTask\n );\n oldElement._store &&\n (newKey._store.validated = oldElement._store.validated);\n return newKey;\n }\n function isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n }\n function escape(key) {\n var escaperLookup = { \"=\": \"=0\", \":\": \"=2\" };\n return (\n \"$\" +\n key.replace(/[=:]/g, function (match) {\n return escaperLookup[match];\n })\n );\n }\n function getElementKey(element, index) {\n return \"object\" === typeof element &&\n null !== element &&\n null != element.key\n ? (checkKeyStringCoercion(element.key), escape(\"\" + element.key))\n : index.toString(36);\n }\n function noop$1() {}\n function resolveThenable(thenable) {\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n default:\n switch (\n (\"string\" === typeof thenable.status\n ? thenable.then(noop$1, noop$1)\n : ((thenable.status = \"pending\"),\n thenable.then(\n function (fulfilledValue) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"fulfilled\"),\n (thenable.value = fulfilledValue));\n },\n function (error) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"rejected\"),\n (thenable.reason = error));\n }\n )),\n thenable.status)\n ) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n }\n }\n throw thenable;\n }\n function mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {\n var type = typeof children;\n if (\"undefined\" === type || \"boolean\" === type) children = null;\n var invokeCallback = !1;\n if (null === children) invokeCallback = !0;\n else\n switch (type) {\n case \"bigint\":\n case \"string\":\n case \"number\":\n invokeCallback = !0;\n break;\n case \"object\":\n switch (children.$$typeof) {\n case REACT_ELEMENT_TYPE:\n case REACT_PORTAL_TYPE:\n invokeCallback = !0;\n break;\n case REACT_LAZY_TYPE:\n return (\n (invokeCallback = children._init),\n mapIntoArray(\n invokeCallback(children._payload),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n )\n );\n }\n }\n if (invokeCallback) {\n invokeCallback = children;\n callback = callback(invokeCallback);\n var childKey =\n \"\" === nameSoFar ? \".\" + getElementKey(invokeCallback, 0) : nameSoFar;\n isArrayImpl(callback)\n ? ((escapedPrefix = \"\"),\n null != childKey &&\n (escapedPrefix =\n childKey.replace(userProvidedKeyEscapeRegex, \"$&/\") + \"/\"),\n mapIntoArray(callback, array, escapedPrefix, \"\", function (c) {\n return c;\n }))\n : null != callback &&\n (isValidElement(callback) &&\n (null != callback.key &&\n ((invokeCallback && invokeCallback.key === callback.key) ||\n checkKeyStringCoercion(callback.key)),\n (escapedPrefix = cloneAndReplaceKey(\n callback,\n escapedPrefix +\n (null == callback.key ||\n (invokeCallback && invokeCallback.key === callback.key)\n ? \"\"\n : (\"\" + callback.key).replace(\n userProvidedKeyEscapeRegex,\n \"$&/\"\n ) + \"/\") +\n childKey\n )),\n \"\" !== nameSoFar &&\n null != invokeCallback &&\n isValidElement(invokeCallback) &&\n null == invokeCallback.key &&\n invokeCallback._store &&\n !invokeCallback._store.validated &&\n (escapedPrefix._store.validated = 2),\n (callback = escapedPrefix)),\n array.push(callback));\n return 1;\n }\n invokeCallback = 0;\n childKey = \"\" === nameSoFar ? \".\" : nameSoFar + \":\";\n if (isArrayImpl(children))\n for (var i = 0; i < children.length; i++)\n (nameSoFar = children[i]),\n (type = childKey + getElementKey(nameSoFar, i)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (((i = getIteratorFn(children)), \"function\" === typeof i))\n for (\n i === children.entries &&\n (didWarnAboutMaps ||\n console.warn(\n \"Using Maps as children is not supported. Use an array of keyed ReactElements instead.\"\n ),\n (didWarnAboutMaps = !0)),\n children = i.call(children),\n i = 0;\n !(nameSoFar = children.next()).done;\n\n )\n (nameSoFar = nameSoFar.value),\n (type = childKey + getElementKey(nameSoFar, i++)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (\"object\" === type) {\n if (\"function\" === typeof children.then)\n return mapIntoArray(\n resolveThenable(children),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n );\n array = String(children);\n throw Error(\n \"Objects are not valid as a React child (found: \" +\n (\"[object Object]\" === array\n ? \"object with keys {\" + Object.keys(children).join(\", \") + \"}\"\n : array) +\n \"). If you meant to render a collection of children, use an array instead.\"\n );\n }\n return invokeCallback;\n }\n function mapChildren(children, func, context) {\n if (null == children) return children;\n var result = [],\n count = 0;\n mapIntoArray(children, result, \"\", \"\", function (child) {\n return func.call(context, child, count++);\n });\n return result;\n }\n function lazyInitializer(payload) {\n if (-1 === payload._status) {\n var ctor = payload._result;\n ctor = ctor();\n ctor.then(\n function (moduleObject) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 1), (payload._result = moduleObject);\n },\n function (error) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 2), (payload._result = error);\n }\n );\n -1 === payload._status &&\n ((payload._status = 0), (payload._result = ctor));\n }\n if (1 === payload._status)\n return (\n (ctor = payload._result),\n void 0 === ctor &&\n console.error(\n \"lazy: Expected the result of a dynamic import() call. Instead received: %s\\n\\nYour code should look like: \\n const MyComponent = lazy(() => import('./MyComponent'))\\n\\nDid you accidentally put curly braces around the import?\",\n ctor\n ),\n \"default\" in ctor ||\n console.error(\n \"lazy: Expected the result of a dynamic import() call. Instead received: %s\\n\\nYour code should look like: \\n const MyComponent = lazy(() => import('./MyComponent'))\",\n ctor\n ),\n ctor.default\n );\n throw payload._result;\n }\n function resolveDispatcher() {\n var dispatcher = ReactSharedInternals.H;\n null === dispatcher &&\n console.error(\n \"Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\\n1. You might have mismatching versions of React and the renderer (such as React DOM)\\n2. You might be breaking the Rules of Hooks\\n3. You might have more than one copy of React in the same app\\nSee https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.\"\n );\n return dispatcher;\n }\n function noop() {}\n function enqueueTask(task) {\n if (null === enqueueTaskImpl)\n try {\n var requireString = (\"require\" + Math.random()).slice(0, 7);\n enqueueTaskImpl = (module && module[requireString]).call(\n module,\n \"timers\"\n ).setImmediate;\n } catch (_err) {\n enqueueTaskImpl = function (callback) {\n !1 === didWarnAboutMessageChannel &&\n ((didWarnAboutMessageChannel = !0),\n \"undefined\" === typeof MessageChannel &&\n console.error(\n \"This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning.\"\n ));\n var channel = new MessageChannel();\n channel.port1.onmessage = callback;\n channel.port2.postMessage(void 0);\n };\n }\n return enqueueTaskImpl(task);\n }\n function aggregateErrors(errors) {\n return 1 < errors.length && \"function\" === typeof AggregateError\n ? new AggregateError(errors)\n : errors[0];\n }\n function popActScope(prevActQueue, prevActScopeDepth) {\n prevActScopeDepth !== actScopeDepth - 1 &&\n console.error(\n \"You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. \"\n );\n actScopeDepth = prevActScopeDepth;\n }\n function recursivelyFlushAsyncActWork(returnValue, resolve, reject) {\n var queue = ReactSharedInternals.actQueue;\n if (null !== queue)\n if (0 !== queue.length)\n try {\n flushActQueue(queue);\n enqueueTask(function () {\n return recursivelyFlushAsyncActWork(returnValue, resolve, reject);\n });\n return;\n } catch (error) {\n ReactSharedInternals.thrownErrors.push(error);\n }\n else ReactSharedInternals.actQueue = null;\n 0 < ReactSharedInternals.thrownErrors.length\n ? ((queue = aggregateErrors(ReactSharedInternals.thrownErrors)),\n (ReactSharedInternals.thrownErrors.length = 0),\n reject(queue))\n : resolve(returnValue);\n }\n function flushActQueue(queue) {\n if (!isFlushing) {\n isFlushing = !0;\n var i = 0;\n try {\n for (; i < queue.length; i++) {\n var callback = queue[i];\n do {\n ReactSharedInternals.didUsePromise = !1;\n var continuation = callback(!1);\n if (null !== continuation) {\n if (ReactSharedInternals.didUsePromise) {\n queue[i] = callback;\n queue.splice(0, i);\n return;\n }\n callback = continuation;\n } else break;\n } while (1);\n }\n queue.length = 0;\n } catch (error) {\n queue.splice(0, i + 1), ReactSharedInternals.thrownErrors.push(error);\n } finally {\n isFlushing = !1;\n }\n }\n }\n \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n \"function\" ===\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart &&\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());\n var REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\");\n Symbol.for(\"react.provider\");\n var REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n MAYBE_ITERATOR_SYMBOL = Symbol.iterator,\n didWarnStateUpdateForUnmountedComponent = {},\n ReactNoopUpdateQueue = {\n isMounted: function () {\n return !1;\n },\n enqueueForceUpdate: function (publicInstance) {\n warnNoop(publicInstance, \"forceUpdate\");\n },\n enqueueReplaceState: function (publicInstance) {\n warnNoop(publicInstance, \"replaceState\");\n },\n enqueueSetState: function (publicInstance) {\n warnNoop(publicInstance, \"setState\");\n }\n },\n assign = Object.assign,\n emptyObject = {};\n Object.freeze(emptyObject);\n Component.prototype.isReactComponent = {};\n Component.prototype.setState = function (partialState, callback) {\n if (\n \"object\" !== typeof partialState &&\n \"function\" !== typeof partialState &&\n null != partialState\n )\n throw Error(\n \"takes an object of state variables to update or a function which returns an object of state variables.\"\n );\n this.updater.enqueueSetState(this, partialState, callback, \"setState\");\n };\n Component.prototype.forceUpdate = function (callback) {\n this.updater.enqueueForceUpdate(this, callback, \"forceUpdate\");\n };\n var deprecatedAPIs = {\n isMounted: [\n \"isMounted\",\n \"Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks.\"\n ],\n replaceState: [\n \"replaceState\",\n \"Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236).\"\n ]\n },\n fnName;\n for (fnName in deprecatedAPIs)\n deprecatedAPIs.hasOwnProperty(fnName) &&\n defineDeprecationWarning(fnName, deprecatedAPIs[fnName]);\n ComponentDummy.prototype = Component.prototype;\n deprecatedAPIs = PureComponent.prototype = new ComponentDummy();\n deprecatedAPIs.constructor = PureComponent;\n assign(deprecatedAPIs, Component.prototype);\n deprecatedAPIs.isPureReactComponent = !0;\n var isArrayImpl = Array.isArray,\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\"),\n ReactSharedInternals = {\n H: null,\n A: null,\n T: null,\n S: null,\n V: null,\n actQueue: null,\n isBatchingLegacy: !1,\n didScheduleLegacyUpdate: !1,\n didUsePromise: !1,\n thrownErrors: [],\n getCurrentStack: null,\n recentlyCreatedOwnerStacks: 0\n },\n hasOwnProperty = Object.prototype.hasOwnProperty,\n createTask = console.createTask\n ? console.createTask\n : function () {\n return null;\n };\n deprecatedAPIs = {\n \"react-stack-bottom-frame\": function (callStackForError) {\n return callStackForError();\n }\n };\n var specialPropKeyWarningShown, didWarnAboutOldJSXRuntime;\n var didWarnAboutElementRef = {};\n var unknownOwnerDebugStack = deprecatedAPIs[\n \"react-stack-bottom-frame\"\n ].bind(deprecatedAPIs, UnknownOwner)();\n var unknownOwnerDebugTask = createTask(getTaskName(UnknownOwner));\n var didWarnAboutMaps = !1,\n userProvidedKeyEscapeRegex = /\\/+/g,\n reportGlobalError =\n \"function\" === typeof reportError\n ? reportError\n : function (error) {\n if (\n \"object\" === typeof window &&\n \"function\" === typeof window.ErrorEvent\n ) {\n var event = new window.ErrorEvent(\"error\", {\n bubbles: !0,\n cancelable: !0,\n message:\n \"object\" === typeof error &&\n null !== error &&\n \"string\" === typeof error.message\n ? String(error.message)\n : String(error),\n error: error\n });\n if (!window.dispatchEvent(event)) return;\n } else if (\n \"object\" === typeof process &&\n \"function\" === typeof process.emit\n ) {\n process.emit(\"uncaughtException\", error);\n return;\n }\n console.error(error);\n },\n didWarnAboutMessageChannel = !1,\n enqueueTaskImpl = null,\n actScopeDepth = 0,\n didWarnNoAwaitAct = !1,\n isFlushing = !1,\n queueSeveralMicrotasks =\n \"function\" === typeof queueMicrotask\n ? function (callback) {\n queueMicrotask(function () {\n return queueMicrotask(callback);\n });\n }\n : enqueueTask;\n deprecatedAPIs = Object.freeze({\n __proto__: null,\n c: function (size) {\n return resolveDispatcher().useMemoCache(size);\n }\n });\n exports.Children = {\n map: mapChildren,\n forEach: function (children, forEachFunc, forEachContext) {\n mapChildren(\n children,\n function () {\n forEachFunc.apply(this, arguments);\n },\n forEachContext\n );\n },\n count: function (children) {\n var n = 0;\n mapChildren(children, function () {\n n++;\n });\n return n;\n },\n toArray: function (children) {\n return (\n mapChildren(children, function (child) {\n return child;\n }) || []\n );\n },\n only: function (children) {\n if (!isValidElement(children))\n throw Error(\n \"React.Children.only expected to receive a single React element child.\"\n );\n return children;\n }\n };\n exports.Component = Component;\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.Profiler = REACT_PROFILER_TYPE;\n exports.PureComponent = PureComponent;\n exports.StrictMode = REACT_STRICT_MODE_TYPE;\n exports.Suspense = REACT_SUSPENSE_TYPE;\n exports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =\n ReactSharedInternals;\n exports.__COMPILER_RUNTIME = deprecatedAPIs;\n exports.act = function (callback) {\n var prevActQueue = ReactSharedInternals.actQueue,\n prevActScopeDepth = actScopeDepth;\n actScopeDepth++;\n var queue = (ReactSharedInternals.actQueue =\n null !== prevActQueue ? prevActQueue : []),\n didAwaitActCall = !1;\n try {\n var result = callback();\n } catch (error) {\n ReactSharedInternals.thrownErrors.push(error);\n }\n if (0 < ReactSharedInternals.thrownErrors.length)\n throw (\n (popActScope(prevActQueue, prevActScopeDepth),\n (callback = aggregateErrors(ReactSharedInternals.thrownErrors)),\n (ReactSharedInternals.thrownErrors.length = 0),\n callback)\n );\n if (\n null !== result &&\n \"object\" === typeof result &&\n \"function\" === typeof result.then\n ) {\n var thenable = result;\n queueSeveralMicrotasks(function () {\n didAwaitActCall ||\n didWarnNoAwaitAct ||\n ((didWarnNoAwaitAct = !0),\n console.error(\n \"You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);\"\n ));\n });\n return {\n then: function (resolve, reject) {\n didAwaitActCall = !0;\n thenable.then(\n function (returnValue) {\n popActScope(prevActQueue, prevActScopeDepth);\n if (0 === prevActScopeDepth) {\n try {\n flushActQueue(queue),\n enqueueTask(function () {\n return recursivelyFlushAsyncActWork(\n returnValue,\n resolve,\n reject\n );\n });\n } catch (error$0) {\n ReactSharedInternals.thrownErrors.push(error$0);\n }\n if (0 < ReactSharedInternals.thrownErrors.length) {\n var _thrownError = aggregateErrors(\n ReactSharedInternals.thrownErrors\n );\n ReactSharedInternals.thrownErrors.length = 0;\n reject(_thrownError);\n }\n } else resolve(returnValue);\n },\n function (error) {\n popActScope(prevActQueue, prevActScopeDepth);\n 0 < ReactSharedInternals.thrownErrors.length\n ? ((error = aggregateErrors(\n ReactSharedInternals.thrownErrors\n )),\n (ReactSharedInternals.thrownErrors.length = 0),\n reject(error))\n : reject(error);\n }\n );\n }\n };\n }\n var returnValue$jscomp$0 = result;\n popActScope(prevActQueue, prevActScopeDepth);\n 0 === prevActScopeDepth &&\n (flushActQueue(queue),\n 0 !== queue.length &&\n queueSeveralMicrotasks(function () {\n didAwaitActCall ||\n didWarnNoAwaitAct ||\n ((didWarnNoAwaitAct = !0),\n console.error(\n \"A component suspended inside an `act` scope, but the `act` call was not awaited. When testing React components that depend on asynchronous data, you must await the result:\\n\\nawait act(() => ...)\"\n ));\n }),\n (ReactSharedInternals.actQueue = null));\n if (0 < ReactSharedInternals.thrownErrors.length)\n throw (\n ((callback = aggregateErrors(ReactSharedInternals.thrownErrors)),\n (ReactSharedInternals.thrownErrors.length = 0),\n callback)\n );\n return {\n then: function (resolve, reject) {\n didAwaitActCall = !0;\n 0 === prevActScopeDepth\n ? ((ReactSharedInternals.actQueue = queue),\n enqueueTask(function () {\n return recursivelyFlushAsyncActWork(\n returnValue$jscomp$0,\n resolve,\n reject\n );\n }))\n : resolve(returnValue$jscomp$0);\n }\n };\n };\n exports.cache = function (fn) {\n return function () {\n return fn.apply(null, arguments);\n };\n };\n exports.captureOwnerStack = function () {\n var getCurrentStack = ReactSharedInternals.getCurrentStack;\n return null === getCurrentStack ? null : getCurrentStack();\n };\n exports.cloneElement = function (element, config, children) {\n if (null === element || void 0 === element)\n throw Error(\n \"The argument must be a React element, but you passed \" +\n element +\n \".\"\n );\n var props = assign({}, element.props),\n key = element.key,\n owner = element._owner;\n if (null != config) {\n var JSCompiler_inline_result;\n a: {\n if (\n hasOwnProperty.call(config, \"ref\") &&\n (JSCompiler_inline_result = Object.getOwnPropertyDescriptor(\n config,\n \"ref\"\n ).get) &&\n JSCompiler_inline_result.isReactWarning\n ) {\n JSCompiler_inline_result = !1;\n break a;\n }\n JSCompiler_inline_result = void 0 !== config.ref;\n }\n JSCompiler_inline_result && (owner = getOwner());\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (key = \"\" + config.key));\n for (propName in config)\n !hasOwnProperty.call(config, propName) ||\n \"key\" === propName ||\n \"__self\" === propName ||\n \"__source\" === propName ||\n (\"ref\" === propName && void 0 === config.ref) ||\n (props[propName] = config[propName]);\n }\n var propName = arguments.length - 2;\n if (1 === propName) props.children = children;\n else if (1 < propName) {\n JSCompiler_inline_result = Array(propName);\n for (var i = 0; i < propName; i++)\n JSCompiler_inline_result[i] = arguments[i + 2];\n props.children = JSCompiler_inline_result;\n }\n props = ReactElement(\n element.type,\n key,\n void 0,\n void 0,\n owner,\n props,\n element._debugStack,\n element._debugTask\n );\n for (key = 2; key < arguments.length; key++)\n (owner = arguments[key]),\n isValidElement(owner) && owner._store && (owner._store.validated = 1);\n return props;\n };\n exports.createContext = function (defaultValue) {\n defaultValue = {\n $$typeof: REACT_CONTEXT_TYPE,\n _currentValue: defaultValue,\n _currentValue2: defaultValue,\n _threadCount: 0,\n Provider: null,\n Consumer: null\n };\n defaultValue.Provider = defaultValue;\n defaultValue.Consumer = {\n $$typeof: REACT_CONSUMER_TYPE,\n _context: defaultValue\n };\n defaultValue._currentRenderer = null;\n defaultValue._currentRenderer2 = null;\n return defaultValue;\n };\n exports.createElement = function (type, config, children) {\n for (var i = 2; i < arguments.length; i++) {\n var node = arguments[i];\n isValidElement(node) && node._store && (node._store.validated = 1);\n }\n i = {};\n node = null;\n if (null != config)\n for (propName in (didWarnAboutOldJSXRuntime ||\n !(\"__self\" in config) ||\n \"key\" in config ||\n ((didWarnAboutOldJSXRuntime = !0),\n console.warn(\n \"Your app (or one of its dependencies) is using an outdated JSX transform. Update to the modern JSX transform for faster performance: https://react.dev/link/new-jsx-transform\"\n )),\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (node = \"\" + config.key)),\n config))\n hasOwnProperty.call(config, propName) &&\n \"key\" !== propName &&\n \"__self\" !== propName &&\n \"__source\" !== propName &&\n (i[propName] = config[propName]);\n var childrenLength = arguments.length - 2;\n if (1 === childrenLength) i.children = children;\n else if (1 < childrenLength) {\n for (\n var childArray = Array(childrenLength), _i = 0;\n _i < childrenLength;\n _i++\n )\n childArray[_i] = arguments[_i + 2];\n Object.freeze && Object.freeze(childArray);\n i.children = childArray;\n }\n if (type && type.defaultProps)\n for (propName in ((childrenLength = type.defaultProps), childrenLength))\n void 0 === i[propName] && (i[propName] = childrenLength[propName]);\n node &&\n defineKeyPropWarningGetter(\n i,\n \"function\" === typeof type\n ? type.displayName || type.name || \"Unknown\"\n : type\n );\n var propName = 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return ReactElement(\n type,\n node,\n void 0,\n void 0,\n getOwner(),\n i,\n propName ? Error(\"react-stack-top-frame\") : unknownOwnerDebugStack,\n propName ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n exports.createRef = function () {\n var refObject = { current: null };\n Object.seal(refObject);\n return refObject;\n };\n exports.forwardRef = function (render) {\n null != render && render.$$typeof === REACT_MEMO_TYPE\n ? console.error(\n \"forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...)).\"\n )\n : \"function\" !== typeof render\n ? console.error(\n \"forwardRef requires a render function but was given %s.\",\n null === render ? \"null\" : typeof render\n )\n : 0 !== render.length &&\n 2 !== render.length &&\n console.error(\n \"forwardRef render functions accept exactly two parameters: props and ref. %s\",\n 1 === render.length\n ? \"Did you forget to use the ref parameter?\"\n : \"Any additional parameter will be undefined.\"\n );\n null != render &&\n null != render.defaultProps &&\n console.error(\n \"forwardRef render functions do not support defaultProps. Did you accidentally pass a React component?\"\n );\n var elementType = { $$typeof: REACT_FORWARD_REF_TYPE, render: render },\n ownName;\n Object.defineProperty(elementType, \"displayName\", {\n enumerable: !1,\n configurable: !0,\n get: function () {\n return ownName;\n },\n set: function (name) {\n ownName = name;\n render.name ||\n render.displayName ||\n (Object.defineProperty(render, \"name\", { value: name }),\n (render.displayName = name));\n }\n });\n return elementType;\n };\n exports.isValidElement = isValidElement;\n exports.lazy = function (ctor) {\n return {\n $$typeof: REACT_LAZY_TYPE,\n _payload: { _status: -1, _result: ctor },\n _init: lazyInitializer\n };\n };\n exports.memo = function (type, compare) {\n null == type &&\n console.error(\n \"memo: The first argument must be a component. Instead received: %s\",\n null === type ? \"null\" : typeof type\n );\n compare = {\n $$typeof: REACT_MEMO_TYPE,\n type: type,\n compare: void 0 === compare ? null : compare\n };\n var ownName;\n Object.defineProperty(compare, \"displayName\", {\n enumerable: !1,\n configurable: !0,\n get: function () {\n return ownName;\n },\n set: function (name) {\n ownName = name;\n type.name ||\n type.displayName ||\n (Object.defineProperty(type, \"name\", { value: name }),\n (type.displayName = name));\n }\n });\n return compare;\n };\n exports.startTransition = function (scope) {\n var prevTransition = ReactSharedInternals.T,\n currentTransition = {};\n ReactSharedInternals.T = currentTransition;\n currentTransition._updatedFibers = new Set();\n try {\n var returnValue = scope(),\n onStartTransitionFinish = ReactSharedInternals.S;\n null !== onStartTransitionFinish &&\n onStartTransitionFinish(currentTransition, returnValue);\n \"object\" === typeof returnValue &&\n null !== returnValue &&\n \"function\" === typeof returnValue.then &&\n returnValue.then(noop, reportGlobalError);\n } catch (error) {\n reportGlobalError(error);\n } finally {\n null === prevTransition &&\n currentTransition._updatedFibers &&\n ((scope = currentTransition._updatedFibers.size),\n currentTransition._updatedFibers.clear(),\n 10 < scope &&\n console.warn(\n \"Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table.\"\n )),\n (ReactSharedInternals.T = prevTransition);\n }\n };\n exports.unstable_useCacheRefresh = function () {\n return resolveDispatcher().useCacheRefresh();\n };\n exports.use = function (usable) {\n return resolveDispatcher().use(usable);\n };\n exports.useActionState = function (action, initialState, permalink) {\n return resolveDispatcher().useActionState(\n action,\n initialState,\n permalink\n );\n };\n exports.useCallback = function (callback, deps) {\n return resolveDispatcher().useCallback(callback, deps);\n };\n exports.useContext = function (Context) {\n var dispatcher = resolveDispatcher();\n Context.$$typeof === REACT_CONSUMER_TYPE &&\n console.error(\n \"Calling useContext(Context.Consumer) is not supported and will cause bugs. Did you mean to call useContext(Context) instead?\"\n );\n return dispatcher.useContext(Context);\n };\n exports.useDebugValue = function (value, formatterFn) {\n return resolveDispatcher().useDebugValue(value, formatterFn);\n };\n exports.useDeferredValue = function (value, initialValue) {\n return resolveDispatcher().useDeferredValue(value, initialValue);\n };\n exports.useEffect = function (create, createDeps, update) {\n null == create &&\n console.warn(\n \"React Hook useEffect requires an effect callback. Did you forget to pass a callback to the hook?\"\n );\n var dispatcher = resolveDispatcher();\n if (\"function\" === typeof update)\n throw Error(\n \"useEffect CRUD overload is not enabled in this build of React.\"\n );\n return dispatcher.useEffect(create, createDeps);\n };\n exports.useId = function () {\n return resolveDispatcher().useId();\n };\n exports.useImperativeHandle = function (ref, create, deps) {\n return resolveDispatcher().useImperativeHandle(ref, create, deps);\n };\n exports.useInsertionEffect = function (create, deps) {\n null == create &&\n console.warn(\n \"React Hook useInsertionEffect requires an effect callback. Did you forget to pass a callback to the hook?\"\n );\n return resolveDispatcher().useInsertionEffect(create, deps);\n };\n exports.useLayoutEffect = function (create, deps) {\n null == create &&\n console.warn(\n \"React Hook useLayoutEffect requires an effect callback. Did you forget to pass a callback to the hook?\"\n );\n return resolveDispatcher().useLayoutEffect(create, deps);\n };\n exports.useMemo = function (create, deps) {\n return resolveDispatcher().useMemo(create, deps);\n };\n exports.useOptimistic = function (passthrough, reducer) {\n return resolveDispatcher().useOptimistic(passthrough, reducer);\n };\n exports.useReducer = function (reducer, initialArg, init) {\n return resolveDispatcher().useReducer(reducer, initialArg, init);\n };\n exports.useRef = function (initialValue) {\n return resolveDispatcher().useRef(initialValue);\n };\n exports.useState = function (initialState) {\n return resolveDispatcher().useState(initialState);\n };\n exports.useSyncExternalStore = function (\n subscribe,\n getSnapshot,\n getServerSnapshot\n ) {\n return resolveDispatcher().useSyncExternalStore(\n subscribe,\n getSnapshot,\n getServerSnapshot\n );\n };\n exports.useTransition = function () {\n return resolveDispatcher().useTransition();\n };\n exports.version = \"19.1.0\";\n \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n \"function\" ===\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","import { ICommonBridge } from './common-bridge.types';\n\n/**\n * Business Layer Bridge\n * 비즈니스를 호출하는(iframe, app)에서 구현해야할 함수 정의\n */\nexport abstract class CommonBridge implements ICommonBridge {\n protected commonHello(): void {\n console.log('commonHello');\n }\n\n abstract hello(): void;\n}\n","/**\n * Core Layer Bridge\n * Core(iframe, app)에서 구현해야할 함수 정의\n */\nexport abstract class CommonBridgeCore {\n /**\n * 코어에서 사용할 프로미스 ID 생성 함수\n * @returns\n */\n protected generatePromiseId(): string {\n const timestamp = Date.now();\n const random = Math.random().toString(36).slice(2, 11);\n\n return `${timestamp}_${random}`;\n }\n\n /**\n * core에서 구현해야할 함수\n * @param action\n * @param options\n */\n abstract callToTarget<T>(action: string, options?: Record<string, unknown>): Promise<T>;\n}\n","import { getDspExecutionEnvironment } from 'sales-frontend-utils';\nimport { MessageEventManager } from 'sales-frontend-utils';\n\nimport { CommonBridgeCore } from '../../common/common-bridge-core';\n\nimport {\n IframeEventName,\n IframeBridgeCommand,\n IframeBridgeOptions,\n IframeBridgePromise,\n IframeBridgeResponseHandler,\n IframeBridgeResponseData\n} from './iframe-bridge-core.types';\n\n/**\n * Iframe Bridge 통신 위한 핵심 클래스\n * 담당: 부모 호출, Promise 관리\n */\nexport class IframeBridgeCore extends CommonBridgeCore {\n private pendingPromises = new Map<string, IframeBridgePromise>();\n private responseHandler?: IframeBridgeResponseHandler;\n\n constructor() {\n super();\n this.initializeIframeBridge();\n }\n\n /**\n * 사용하는 쪽에서 응답핸들러를 사용할 수 있도록 필요시, 응답 처리 핸들러 설정\n */\n setResponseHandler(handler: IframeBridgeResponseHandler): void {\n this.responseHandler = handler;\n }\n\n handleIframeBridgePromise(response: IframeBridgeResponseData): boolean {\n const { promiseId, isSuccess, data } = response;\n\n const promise = this.pendingPromises.get(promiseId);\n if (promise) {\n this.pendingPromises.delete(promiseId);\n\n if (isSuccess) {\n promise.resolve(data);\n } else {\n promise.reject(new Error(data));\n }\n\n return true;\n }\n\n return false;\n }\n\n /**\n * 특정 Promise 존재 여부 확인\n */\n hasPromise(promiseId: string): boolean {\n return this.pendingPromises.has(promiseId);\n }\n\n /**\n * 네이티브 통신을 위해 window.n2bridge 객체 초기화\n */\n private initializeIframeBridge(): void {\n console.log('[IframeBridgeCore] initialized Iframe Bridge');\n\n // MessageEventManager에 핸들러 등록(영업포털-웹간 주고받기)\n MessageEventManager.getInstance().registerHandler('iframe-bridge', this.handleMessageEventResponse.bind(this));\n }\n\n /**\n * 브릿지 메시지 이벤트 핸들러\n * @param event\n */\n private handleMessageEventResponse(event: MessageEvent): void {\n const { promiseId, isSuccess, data } = event.data as IframeBridgeResponseData;\n\n // 등록된 핸들러가 있으면 실행\n if (this.responseHandler) {\n this.responseHandler({ promiseId, isSuccess, data });\n }\n\n // 기본 처리\n if (this.pendingPromises.has(promiseId)) {\n this.handleIframeBridgePromise({ promiseId, isSuccess, data });\n }\n }\n\n /**\n * Iframe 통신\n * @param eventName\n * @param option\n * @returns\n */\n async callToTarget<T = boolean>(eventName: IframeEventName, option?: IframeBridgeOptions): Promise<T> {\n return new Promise<T>((resolve, reject) => {\n const promiseId = `${eventName}_${this.generatePromiseId()}`;\n\n // Promise 등록\n this.pendingPromises.set(promiseId, { resolve, reject });\n\n try {\n const command: IframeBridgeCommand = {\n eventName,\n promiseId,\n option\n };\n\n console.log('[IframeBridgeCore callToIframe] command::', command);\n\n const platform = getDspExecutionEnvironment();\n\n if (platform === 'iframe') {\n window.parent.postMessage(command, '*');\n\n // TODO: 부모에서 event.source.postMessage({ promiseId, isSuccess, data }); 형태로 보내줄 수 있다면 소스 삭제\n const promise = this.pendingPromises.get(promiseId);\n if (promise) {\n this.pendingPromises.delete(promiseId);\n promise.resolve(true as T);\n }\n\n return;\n }\n\n // 지원하지 않는 플랫폼\n console.warn(\n `[IframeBridgeCore callToIframe] 현재 플랫폼(${platform})에서는 지원하지 않는 서비스(${eventName})입니다.`\n );\n\n this.pendingPromises.delete(promiseId);\n reject(new Error(`[IframeBridgeCore callToIframe] Unsupported platform: ${platform}`));\n } catch (error) {\n console.error('[IframeBridgeCore callToIframe] error::', error);\n this.pendingPromises.delete(promiseId);\n reject(error);\n }\n });\n }\n}\n","import { CommonBridge } from '../../common/common-bridge';\nimport { IframeBridgeCore } from '../core/iframe-bridge-core';\nimport { IframeBridgeResponseHandler, IframeBridgeResponseData } from '../core/iframe-bridge-core.types';\n\nimport { OpenMdiOptions } from './iframe-bridge-options.types';\nimport { IIframeBridge } from './iframe-bridge.types';\n\n/**\n * iframe(영업포탈) 전용 Bridge\n */\nexport class IframeBridge extends CommonBridge implements IIframeBridge {\n private core: IframeBridgeCore;\n\n constructor() {\n super();\n this.core = new IframeBridgeCore();\n }\n\n // 응답 핸들러 설정\n setResponseHandler(handler: IframeBridgeResponseHandler): void {\n this.core.setResponseHandler(handler);\n }\n\n // Promise 직접 제어 메서드들 추가\n handleIframeBridgePromise(response: IframeBridgeResponseData): boolean {\n return this.core.handleIframeBridgePromise(response);\n }\n\n // 유틸리티 메서드들도 추가\n hasPromise(promiseId: string): boolean {\n return this.core.hasPromise(promiseId);\n }\n\n /**\n * Iframe, App 공통으로 구현해야할 함수(test)\n */\n hello(): void {\n console.log('[IframeBridge] hello');\n }\n\n /**\n * 영업포탈 tab open\n * @param options\n * @returns\n */\n async openMdi(options: OpenMdiOptions): Promise<boolean> {\n return this.core.callToTarget('openMdi', options);\n }\n\n // TODO: 필요 플러그인들 추가\n}\n","import { getDspExecutionEnvironment, isClient, isStorybookEnv } from 'sales-frontend-utils';\n\nimport { CommonBridgeCore } from '../../common/common-bridge-core';\n\nimport { NativeAction } from './native-bridge-core.types';\nimport { NativeBridgeCommand, NativeBridgeOptions, NativeBridgePromise } from './native-bridge-core.types';\n\n/**\n * Native Bridge 통신 위한 핵심 클래스\n * 담당: 앱 호출, Promise 관리\n */\nexport class NativeBridgeCore extends CommonBridgeCore {\n constructor() {\n super();\n this.initializeWindowBridge();\n }\n\n /**\n * 네이티브 통신을 위해 window.n2bridge 객체 초기화\n */\n private initializeWindowBridge(): void {\n if (!isClient()) {\n return;\n } // SSR 환경에서는 아무것도 하지 않음\n if (!window.n2bridge) {\n window.n2bridge = {\n promises: {},\n resolvePromise: () => {},\n finallyResolvePromise: () => {},\n callFromNative: () => {}\n };\n }\n\n // 항상 최신 함수로 업데이트\n window.n2bridge.resolvePromise = this.createResolvePromiseHandler();\n window.n2bridge.finallyResolvePromise = this.createFinallyResolvePromiseHandler();\n window.n2bridge.callFromNative = this.createCallFromNativeHandler();\n\n if (isStorybookEnv() && window.parent) {\n // 스토리북에서는 현재 스토리가 iframe으로 로드되므로 앱에서 부모 프레임에 브릿지를 리턴해도 자식으로 전달되도록 보정하는 코드\n window.parent.n2bridge = window.n2bridge;\n window.parent.dispatchEvent = (...args) => window.dispatchEvent.apply(null, args);\n }\n }\n\n /**\n * Promise 처리 함수(Native에서 호출)\n * @returns\n */\n private createResolvePromiseHandler() {\n return (promiseId: string, data?: any, error?: any) => {\n console.log('[NativeBridgeCore resolvePromise]::', promiseId, data, error);\n\n const promise: NativeBridgePromise | undefined = window.n2bridge.promises[promiseId];\n if (!promise) {\n console.error('[NativeBridgeCore resolvePromise] Promise not found::', promiseId);\n\n return;\n }\n\n try {\n if (error) {\n promise.reject(error);\n this.cleanupPromise(promiseId);\n\n return;\n }\n\n if (promise.retain) {\n promise.retain(data);\n\n return;\n }\n\n promise.resolve(data);\n this.cleanupPromise(promiseId);\n } catch (err) {\n console.error('[NativeBridgeCore resolvePromise] Error handling promise::', err);\n this.cleanupPromise(promiseId);\n }\n };\n }\n\n /**\n * Promise 최종 처리 함수\n * @returns\n */\n private createFinallyResolvePromiseHandler() {\n return (promiseId: string, data?: any, error?: any) => {\n const promise: NativeBridgePromise | undefined = window.n2bridge.promises[promiseId];\n if (!promise) {\n console.error('[NativeBridgeCore resolvePromise] Promise not found::', promiseId);\n\n return;\n }\n\n try {\n if (error) {\n promise.reject(error);\n this.cleanupPromise(promiseId);\n\n return;\n }\n\n if (promise.retain) {\n promise.retain(data);\n\n return;\n }\n\n promise.resolve(data);\n this.cleanupPromise(promiseId);\n } catch (err) {\n console.error('[NativeBridgeCore resolvePromise] Error handling promise::', err);\n this.cleanupPromise(promiseId);\n }\n };\n }\n\n /**\n * Native 에서 웹으로 호출하는 함수\n * TODO: 필요시 추가 코딩\n * @returns\n */\n private createCallFromNativeHandler() {\n return (jsonStr: string) => {\n try {\n const command = JSON.parse(jsonStr);\n console.log('[NativeBridgeCore callFromNative]::', command);\n } catch (error) {\n console.error('[NativeBridgeCore callFromNative] parse error::', error);\n }\n };\n }\n\n /**\n * 네이티브 통신\n * @param action\n * @param options\n * @returns\n */\n async callToTarget<T>(action: NativeAction, options?: NativeBridgeOptions): Promise<T> {\n const { retainCallback: retain, ...commandOptions } = options || {};\n\n return new Promise<T>((resolve, reject) => {\n const promiseId = `${action}_${this.generatePromiseId()}`;\n console.log('[NativeBridgeCore callToNative] promiseId::', promiseId);\n\n // 바로 window.n2bridge.promises에 저장\n window.n2bridge.promises[promiseId] = {\n resolve: (value: T) => {\n resolve(value);\n },\n reject: (reason?: any) => {\n reject(reason);\n },\n retain\n };\n\n try {\n const command: NativeBridgeCommand = {\n action,\n promiseId,\n option: commandOptions\n };\n\n console.log('[NativeBridgeCore callToNative] command::', command);\n\n const platform = getDspExecutionEnvironment();\n\n if (platform === 'android-webview') {\n window.n2Bridge?.callFromWeb?.(JSON.stringify(command));\n\n return;\n }\n\n if (platform === 'ios-webview') {\n window.webkit?.messageHandlers?.n2Bridge?.postMessage(JSON.stringify(command));\n\n return;\n }\n\n // 지원하지 않는 플랫폼\n console.warn(\n `[NativeBridgeCore callToNative] 현재 플랫폼(${platform})에서는 지원하지 않는 서비스(${action})입니다.`\n );\n this.cleanupPromise(promiseId);\n reject(new Error(`[NativeBridgeCore callToNative] Unsupported platform: ${platform}`));\n } catch (error) {\n console.error('[NativeBridgeCore callToNative] error::', error);\n this.cleanupPromise(promiseId);\n reject(error);\n }\n });\n }\n\n /**\n * promiseId를 초기화 해줍니다.\n * @param promiseId\n */\n private cleanupPromise(promiseId: string): void {\n delete window.n2bridge.promises[promiseId];\n }\n}\n","import { CommonBridge } from '../../common/common-bridge';\nimport { NativeBridgeCore } from '../core/native-bridge-core';\n\nimport { OnAuthenticationResultRequest, OnAuthenticationResultResponse } from './native-bridge-dto.types';\n\nimport type {\n ShowWebPopupOptions,\n CreateReportExOptions,\n GetInformationOptions,\n GetGlobalOptions,\n SetGlobalOptions,\n ScriptExOptions,\n ScriptOptions,\n TriggerExternalEventByDocIndexOptions,\n TriggerExternalEventOptions,\n DownloadOzdOptions,\n SavePdfOptions,\n SaveSignImgOptions,\n CommonOzBridgetResponseType,\n UpdateOzdOptions,\n createOzPdfViewerOptions\n} from './native-bridge-options.types';\nimport type { INativeBridge } from './native-bridge.types';\n\n/**\n * App - Web Bridge\n */\nexport class NativeBridge extends CommonBridge implements INativeBridge {\n private core: NativeBridgeCore;\n\n constructor() {\n super();\n this.core = new NativeBridgeCore();\n }\n\n /**\n * Iframe, App 공통으로 구현해야할 함수\n */\n hello(): void {\n console.log('[NativeBridge] hello');\n }\n\n /**\n * getParameterMap\n * @returns\n */\n async getParameterMap<T = any>(): Promise<T> {\n return this.core.callToTarget<T>('getParameterMap');\n }\n\n async dismissPopup<T = any>(options?: any): Promise<T> {\n return this.core.callToTarget<T>('dismissPopup', options);\n }\n\n /**\n *\n * @param options\n * @returns\n */\n async showWebPopup<T = any>(options: ShowWebPopupOptions): Promise<T> {\n return this.core.callToTarget<T>('showWebPopup', options);\n }\n\n /**\n *\n * @param options\n * @returns\n */\n async jumpSafari<T = any>(options: ShowWebPopupOptions): Promise<T> {\n return this.core.callToTarget<T>('jumpSafari', options);\n }\n\n /**\n * ### Bridge for Oz\n * 설정한 뷰어 파라미터를 기준으로 뷰어에 새로운 보고서를 바인딩합니다.\n * @example\n * ```tsx\n * // 사용 예시\n * Bridge.native.createReportEx({ param: \"connection.openfile=sample.ozd\" });\n * ```\n */\n createReportEx<T = any>(options: CreateReportExOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>(\n 'createReportEx',\n Object.assign({ delimiter: '\\n' }, options)\n );\n }\n\n /**\n * ### Bridge for Oz\n * OZ 뷰어를 닫습니다\n * @example\n * ```tsx\n * // 사용 예시\n * Bridge.native.hideViewer();\n * ```\n */\n hideViewer<T = any>(): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('hideViewer');\n }\n\n /**\n * ### Bridge for Oz\n * 오즈 뷰어의 정보를 가져옵니다\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.getInformation({ command: \"INPUT_JSON\" });\n * ```\n */\n async getInformation<T = any>(options: GetInformationOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('getInformation', options);\n }\n\n /**\n * ### Bridge for Oz\n * 전역 변수 값을 가져옵니다.\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.getGlobal({ key: \"AAA\" })\n * ```\n */\n async getGlobal<T = any>(options: GetGlobalOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('getGlobal', Object.assign({ docIndex: 0 }, options));\n }\n\n /**\n * ### Bridge for Oz\n * 전역 변수 값을 설정합니다.\n * @example\n * ```tsx\n * // 사용 예시\n * Bridge.native.setGlobal({ key: \"AAA\", value: JSON.stringify({ aaa: 111 }) });\n * ```\n */\n setGlobal<T = any>(options: SetGlobalOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('setGlobal', Object.assign({ docIndex: 0 }, options));\n }\n\n /**\n * ### Bridge for Oz\n * 오즈 뷰어의 기능을 제어합니다.\n * @example\n * ```tsx\n * // 사용 예시\n * const command = `movepage=2`;\n * Bridge.native.script({ command });\n * ```\n */\n script<T = any>(options: ScriptOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('script', options);\n }\n /**\n * ### Bridge for Oz\n * 오즈 뷰어의 기능을 제어합니다.\n * - `param`을 통해 오즈 뷰어의 parameter를 변경할수 있습니다\n * @example\n * ```tsx\n * // 사용 예시\n * const command = `movepage=2`;\n * const param1 = `eform.show_prev_next_input=true`;\n * const param2 = `eform.signpad_iconposition=sign_bottom`;\n * // param이 여러개인경우 \\n으로 묶는다\n * const param = `${param1}\\n${param2}`;\n * Bridge.native.scriptEX({ command, param });\n * ```\n */\n scriptEx<T = any>(options: ScriptExOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>(\n 'scriptEx',\n Object.assign({ delimiter: '\\n' }, options)\n );\n }\n\n /**\n * ### Bridge for Oz\n * 현재 보고서의 `OnExternalEvent` 이벤트를 실행하고, `OnExternalEvent` 이벤트에서 전달한 값을 string 형태로 리턴받습니다.\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.triggerExternalEvent({ param1: 'signer' });\n * ```\n */\n async triggerExternalEvent<T = any>(options: TriggerExternalEventOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>(\n 'triggerExternalEvent',\n Object.assign({ param1: '', param2: '', param3: '', param4: '' }, options)\n );\n }\n\n /**\n * ### Bridge for Oz\n * 지정한 보고서의 `OnExternalEvent` 이벤트를 실행하고, `OnExternalEvent` 이벤트에서 전달한 값을 string 형태로 리턴받습니다.\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.triggerExternalEventByDocIndex({ docIndex: 0, param1: 'signer' });\n * ```\n */\n async triggerExternalEventByDocIndex<T = any>(\n options: TriggerExternalEventByDocIndexOptions\n ): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>(\n 'triggerExternalEventByDocIndex',\n Object.assign({ param1: '', param2: '', param3: '', param4: '' }, options)\n );\n }\n\n /**\n * ### Bridge for Oz\n * 오즈 파라미터에서 사용할 폰트 설정들을 조회하는 브릿지입니다\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.getOzFontParam()\n * ```\n */\n async getOzFontParam<T = any>(): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('getOzFontParam');\n }\n\n /**\n * ### Bridge for Oz\n * 오즈 파라미터에서 사용할 OZD를 다운받는 브릿지입니다\n * @example\n * ```tsx\n * const data = [\n * { name: \"문서1\", file: [\"doc1.ozd\"], complete: true },\n * { name: \"문서2\", file: [\"doc2.ozd\", \"doc3.ozd\"], complete: true }\n * ]\n * await Bridge.native.downloadDocument(data)\n * ```\n * returnData는 file 경로가 절대경로로 매핑되어 돌아온다\n * ```json\n * {\n * \"action\":\"downloadDocument\",\n * \"data\":[\n * {\n * \"name\":\"aaa\",\n * \"file\":[\n * \"/data/user/0/com.hanwhalife.ssp.stg/files/A0010.ozd\",\n * \"/data/user/0/com.hanwhalife.ssp.stg/files/C0401.ozd\"\n * ],\n * \"complete\":false\n * },\n * {\n * \"name\":\"bbb\",\n * \"file\":[\n * \"/data/user/0/com.hanwhalife.ssp.stg/files/A1500.ozd\"\n * ],\n * \"complete\":false\n * }\n * ]\n * }\n * ```\n */\n async downloadDocument<T = any>(options: DownloadOzdOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('downloadDocument', options);\n }\n\n /**\n * ### Bridge for Oz\n * 서식의 진행중/완료 상태를 업데이트하는 브릿지\n */\n async updateOzDocumentStatus<T = any>(options: UpdateOzdOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('updateOzDocumentStatus', options);\n }\n\n /**\n * ### Bridge for Oz\n * 오즈뷰어에 출력되고있는 서식을 PDF로 export\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.savePdf({ exportType: \"PDF\", fileName: \"test.pdf\", startPage: 1, endPage: 1 })\n * ```\n */\n async savePdf<T = any>(options: SavePdfOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>(\n 'savePdf',\n Object.assign({ delimiter: '\\n' }, options)\n );\n }\n\n /**\n * ### Bridge for Oz\n * 오즈뷰어에 출력되고있는 서식 중 서명부분을 이미지로 export\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.saveSignImg({ exportType: \"IMG\", fileName: \"sign.png\", signImageKey: \"SIGN_IMG\" })\n * ```\n */\n async saveSignImg<T = string>(options: SaveSignImgOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('saveSignImg', options);\n }\n\n /**\n * ### Bridge for Oz\n * 오즈뷰어에서 생성한 PDF를 보여주는 뷰어를 연다\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.createOzPdfViewer({ filename: \"total.pdf\", filepaths: \"/data/0/app/total.pdf\", password: \"\" })\n * ```\n */\n async createOzPdfViewer<T>(options: createOzPdfViewerOptions): Promise<CommonOzBridgetResponseType<T>> {\n // 비밀번호는 입력안하면 빈값으로 보낸다\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('createOzPdfViewer', options);\n }\n\n /**\n * ### Bridge for Oz\n * PDF뷰어 닫기\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.hideOzPdfViewer()\n * ```\n */\n async hideOzPdfViewer<T>(): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('hideOzPdfViewer');\n }\n\n /**\n * 기능명: 본인인증 결과 정보 넘기기\n * 목적: NXL One 에서 본인인증 결과 값을 네이티브로 넘기기 위함\n * @param options\n * @returns\n */\n async onAuthenticationResult(options: OnAuthenticationResultRequest): Promise<OnAuthenticationResultResponse> {\n return this.core.callToTarget('onAuthenticationResult', options);\n }\n\n // TODO: 필요 플러그인들 추가\n}\n","import { IframeBridge } from './iframe/bridge/iframe-bridge';\nimport { IframeBridgeCore } from './iframe/core/iframe-bridge-core';\nimport { NativeBridge } from './native/bridge/native-bridge';\nimport { NativeBridgeCore } from './native/core/native-bridge-core';\n\nexport const Bridge = {\n native: new NativeBridge(),\n iframe: new IframeBridge(),\n nativeCore: new NativeBridgeCore(),\n iframeCore: new IframeBridgeCore()\n};\n","/**\n * OZ 뷰어에 관련된 이벤트 목록\n */\nexport enum OZViewerEvent {\n /**\n * 보고서 생성 단계별로 발생하는 이벤트\n * - `OZViewerProgressEvent` 이벤트와 매칭된다\n * - `viewer.progresscommand=true` 설정이 필요하다\n * - `OZViewerProgressEvent`와 매칭된다\n */\n OZProgressCommand = 'OZProgressCommand',\n /**\n * 에러 발생 시 발생하는 이벤트\n * - `viewer.errorcommand=true` 설정이 필요하다\n * - `OZViewerErrorEvent`와 매칭된다\n */\n OZErrorCommand = 'OZErrorCommand',\n /**\n * 화면에 표시되는 페이지가 변경된 후 발생하는 이벤트\n * - `viewer.pagechangecommand=true` 설정이 필요하다\n * - `OZViewerChangeEvent`와 매칭된다\n */\n OZPageChangeCommand = 'OZPageChangeCommand',\n /**\n * 화면에 표시되는 보고서가 변경된 후 발생하는 이벤트\n * - `viewer.reportchangecommand=true` 설정이 필요하다\n * - `OZViewerChangeEvent`와 매칭된다\n */\n OZReportChangeCommand = 'OZReportChangeCommand',\n /**\n * `OZUserEvent` _TriggerOCXUserEvent 함수 실행 시 발생하는 이벤트\n * - `OZViewerUserEvent`와 매칭된다\n */\n OZUserEvent = 'OZUserEvent',\n /**\n * `OZPageBindCommand` 페이지가 바인딩된 후 발생하는 이벤트\n * - `viewer.pagebindcommandinterval` 파라미터에서 설정한 주기별로 동작\n * - ex) `viewer.pagebindcommandinterval=500`\n * - `OZViewerPageBindEvent`와 매칭된다\n */\n OZPageBindCommand = 'OZPageBindCommand',\n /**\n * 사용자가 입력 컴포넌트를 클릭하거나 값을 변경하여 이벤트가 실행된 경우 발생되는 이벤트'\n * - 호환되는 이벤트\n * - `OnClick`\n * - `OnFinish`\n * - `OnFocus`\n * - `OnKillFocus`\n * - `OnPause`\n * - `OnPlay`\n * - `OnStop`\n * - `OnValueChanged` \n * - `eform.inputeventcommand=true` 설정이 필요하다\n * - `OZEFormInputEvent`와 매칭된다\n */\n OZEFormInputEventCommand = 'OZEFormInputEventCommand',\n /**\n * 보고서 저장 시 발생하는 이벤트\n * - `OZExportEvent`와 매칭된다\n */\n OZExportCommand = 'OZExportCommand',\n\n /**\n * 오즈뷰어, (오즈전용)PDF 뷰어 내 버튼 클릭시 발생하는 이벤트\n * - `OZBtnTouchEvent`와 매칭된다\n */\n OZBtnTouchEvent = 'btnTouchEvent'\n}\n\n/**\n * `OZViewerEvent.OZProgressCommand` 이벤트의 `e.detail` 타입 정의\n * ```tsx\n * import { OZViewerEvent } from 'sales-frontend-bridge';\n * window.addEventListener(OZViewerEvent.OZProgressCommand, (e) => { console.log(e.detail); });\n * ```\n *\n * `step과` `state`는 step => state 방식으로 진행된다\n *\n * 예시\n * ```bash\n * # step0 뷰어실행\n * [step=0][state=0] # 뷰어 실행 시작\n * [step=0][state=1] # 뷰어 실행 완료\n * # step2 보고서 템플릿 생성\n * [step=1][state=0] # 보고서 템플릿 생성 시작\n * [step=1][state=1] # 보고서 템플릿 생성 완료\n * ```\n */\nexport type OZViewerProgressEvent = {\n /**\n * 보고서 생성 단계\n * - 0 : 뷰어 실행 옵션 설정\n * - 1 : 보고서 파일 다운로드\n * - 2 : 보고서 템플릿 생성\n * - 3 : 데이터 다운로드\n * - 4 : 보고서 바인딩\n */\n step: '0' | '1' | '2' | '3' | '4';\n /**\n * 보고서 생성 상태\n * - 1 : 시작\n * - 2 : 완료\n */\n state: '1' | '2';\n /** 보고서 이름 */\n reportname: string;\n};\n\n/**\n * `OZViewerEvent.OZErrorCommand` 이벤트의 `e.detail` 타입 정의\n * ```tsx\n * import { OZViewerEvent } from 'sales-frontend-bridge';\n * window.addEventListener(OZViewerEvent.OZErrorCommand, (e) => { console.log(e.detail); });\n * ```\n */\nexport type OZViewerErrorEvent = {\n /** 에러 메시지 코드 */\n code: string;\n /** 에러 기본 메시지 */\n message: string;\n /** 에러 상세 메시지 */\n detailmessage: string;\n /** 보고서 이름 */\n reportname: string;\n};\n\n/**\n * 두 이벤트의 공용 타입\n * - `OZViewerEvent.OZPageChangeCommand` 이벤트의 `e.detail` 타입 정의\n * - `OZViewerEvent.OZReportChangeCommand` 이벤트의 `e.detail` 타입 정의\n * ```tsx\n * import { OZViewerEvent } from 'sales-frontend-bridge';\n * window.addEventListener(OZViewerEvent.OZPageChangeCommand, (e) => { console.log(e.detail); });\n * window.addEventListener(OZViewerEvent.OZViewerChangeCommand, (e) => { console.log(e.detail); });\n * ```\n */\nexport type OZViewerChangeEvent = {\n /** 보고서 인덱스(zero-based index) */\n docindex: number;\n};\n\n/**\n * `OZViewerEvent.OZUserEvent` 이벤트의 `e.detail` 타입 정의\n * ```tsx\n * import { OZViewerEvent } from 'sales-frontend-bridge';\n * window.addEventListener(OZViewerEvent.OZUserEvent, (e) => { console.log(e.detail); });\n * ```\n */\nexport type OZViewerUserEvent = {\n /** _TriggerOCXUserEvent 함수에서 전달한 첫 번째 값 */\n param1: string;\n /** _TriggerOCXUserEvent 함수에서 전달한 두 번째 값 */\n param2: string;\n /** _TriggerOCXUserEvent 함수에서 전달한 세 번째 값 */\n param3: string;\n /** 보고서 인덱스(zero-based index) */\n docindex: string;\n};\n\n/**\n * `OZViewerEvent.OZPageBindCommand` 이벤트의 `e.detail` 타입 정의\n * ```tsx\n * import { OZViewerEvent } from 'sales-frontend-bridge';\n * window.addEventListener(OZViewerEvent.OZPageBindCommand, (e) => { console.log(e.detail); });\n * ```\n */\nexport type OZViewerPageBindEvent = {\n /** 보고서 인덱스(zero-based index) */\n docindex: string;\n /** 바인딩된 페이지 번호 */\n pagecount: string;\n};\n\nexport type OZEFormInputEvent = {\n /** 보고서 인덱스(zero-based index) */\n docindex: string;\n /** 이벤트가 발생한 컴포넌트의 FormID. FormID가 설정되지 않은 경우 컴포넌트의 이름이 리턴됨 */\n formid: string;\n eventname: string;\n mainscreen: boolean;\n}\n\nexport type OZExportEvent = {\n /**\n * 저장 성공 여부\n * - `0` 실패\n * - `1` 성공\n */\n code: \"0\" | \"1\"\n /** 파일 경로 */\n path: string;\n /** 파일 이름 */\n filename: string;\n /** 저장된 페이지 수. 여러 페이지의 보고서를 한 페이지로 저장한 경우에는 1이 리턴됨 */\n pagecount: string;\n /**\n * 뷰어가 실제 저장한 모든 파일의 경로와 이름.\n * \n * 파일이 여러 개일 경우 `|`를 구분자로 하여 리턴됨\n */\n filepaths: string;\n}\n\nexport type OZBtnTouchEvent = {\n /** 버튼의 아이디 혹은 텍스트 */\n btnID: string;\n /**\n * 어떤 패널의 버튼을 눌렀는지 구분\n * - `category` 서식 전체목록의 버튼\n */\n type: \"category\"\n}","import { CSSProperties } from 'react';\n\n/**\n * 모든페이지 공용으로 쓰는 OZ 뷰어파라미터\n */\nexport const commonOzParam = [\n `information.debug = true`,\n `global.inheritparameter=true`,\n `global.concatpage=true`,\n `global.eachpagenumberatconcatpage=true`,\n `eform.signpad_type=embedded`,\n // `eform.signpad_type=keypad`,\n `eform.show_prev_next_input=true`,\n `eform.signpad_prev_next_iconposition=sign_top_left`,\n `eform.signpad_show_draw_erase_button=false`,\n `eform.radiobutton_type=ensurevisible_at_prev_next`,\n `eform.checkbox_type=ensurevisible_at_prev_next`,\n `eform.imagepicker_id_info=${JSON.stringify({\n ids: [\n {\n id: '1',\n name: '운전면허증_최신',\n size: '86x54',\n margin: '3',\n mask: [\n { name: '주민번호', area: '0,0,0,0' },\n { name: '운전면허번호', area: '0,0,0,0' },\n { name: '발급번호', area: '0,0,0,0' },\n { name: '발급날짜', area: '0,0,0,0' }\n ]\n },\n {\n id: '2',\n name: '운전면허증_구형',\n size: '86x54',\n margin: '3',\n mask: [\n { name: '주민번호', area: '0,0,0,0' },\n { name: '운전면허번호', area: '0,0,0,0' },\n { name: '발급번호', area: '0,0,0,0' },\n { name: '발급날짜', area: '0,0,0,0' }\n ]\n },\n {\n id: '3',\n name: '주민등록증',\n size: '86x54',\n margin: '3',\n mask: [\n { name: '주민번호', area: '0,0,0,0' },\n { name: '발급날짜', area: '0,0,0,0' }\n ]\n },\n {\n id: '4',\n name: '외국인등록증 앞면',\n size: '86x54',\n margin: '3',\n mask: [\n { name: '외국인등록번호1', area: '0,0,0,0' },\n { name: '외국인등록번호2', area: '0,0,0,0' },\n { name: '성명', area: '0,0,0,0' },\n { name: '성별', area: '0,0,0,0' },\n { name: '국가지역', area: '0,0,0,0' },\n { name: '체류자격', area: '0,0,0,0' },\n { name: '발급일자', area: '0,0,0,0' }\n ]\n },\n { id: '5', name: '외국인등록증 뒷면', size: '86x54', margin: '3', mask: [{ name: '외국인', area: '0,0,0,0' }] }\n ],\n choice: { title: '신분증을 선택하세요.', items: '1,2,3,4,5' }\n })}`,\n `eform.imagepicker_camera_iconposition = camera_top`,\n `eform.inputeventcommand=true`,\n // `viewer.zoombymouse=false`,\n `viewer.pagedisplay=singlepagecontinuous`,\n `viewer.usetoolbar=false`,\n `viewer.usestatusbar=false`,\n `viewer.useprogressbar=false`,\n `viewer.zoom=137`,\n `viewer.viewmode=fittowidth`,\n `viewer.hidehorizontalscroll=false`,\n `viewer.progresscommand=true`,\n `viewer.pagechangecommand=true`,\n `viewer.exportcommand=true`,\n `viewer.errorcommand=true`,\n `viewer.reportchangecommand=true`,\n `viewer.pagebindcommandinterval=500`\n];\n\n/**\n * PDF export시 공통으로 필요한 파라미터\n *\n * 제공하지 않는 파라미터\n * - filename\n * - ex) `pdf.filename=test.pdf`\n * - pages\n * - ex) `export.pages=1-2`\n * - userpassword\n * - ex) `pdf.userpassword=123213`\n */\nexport const commonPdfExportParam = [\n // `pdf.filename=${\"test.pdf\"}`,\n // `export.pages=${i.startPage}-${i.endPage}`,\n // \"pdf.userpassword=$pdfPassword\",G\n 'export.pagerange=range',\n 'export.confirmsave=false',\n 'export.mode=silent',\n // pdf에 폰트를 포함시킨다\n `pdf.fontembedding=true`,\n // 폰트를 포함시킬때 사용하는 글자만 포함시킨다\n `pdf.fontembedding_subset=true`\n];\n\nexport const wrapperStyle: CSSProperties = { display: 'flex', flexFlow: 'column', gap: '10px' };\nexport const btnStyle: CSSProperties = { border: '1px solid red', minHeight: '40px' };\n","import { useCallback, useMemo } from 'react';\n\nimport { Bridge } from '../bridge';\nimport { DocumentInfo } from '../native/bridge/native-bridge-options.types';\n\nimport { commonOzParam } from './constant';\nimport { fetchFont } from \"./util\";\n\n/**\n * 문서코드 : { inputJson, extraParam } 매핑 맵\n */\nexport type ExtraDataType = Record<string, { inputJson?: Record<string, string>; extraParam?: string[] }>;\ntype Props = {\n documentInfo: DocumentInfo[];\n extraData?: ExtraDataType;\n};\nexport function useCreateReport({ documentInfo, extraData = {} }: Props) {\n const documentList = useMemo(() => documentInfo.map((i) => i.file).flat(1), [documentInfo]);\n\n const CreateReport = useCallback(async () => {\n if (documentList.length === 0) {\n throw new Error('문서목록이 비어있습니다');\n }\n const fontParms = await fetchFont();\n const connectionParams = documentList.map((file, idx) =>\n idx === 0 ? `connection.openfile=${file}` : `child${idx}.connection.openfile=${file}`\n );\n const childCount = documentList.length - 1;\n const extraParams = documentList.map((file, idx) => {\n const result: string[] = [];\n\n // 파일 이름에서 경로 및 확장자 제거 (ex: \"A0010.ozd\" → \"A0010\")\n const docCode = file.replace(/^.*[\\\\/]|(\\.[^/.]+)$/g, '');\n\n const prefix = idx === 0 ? '' : `child${idx}.`;\n\n // 문서코드에 바인딩할 데이터가 있는지 확인\n const data = extraData[docCode] || {};\n\n if (data.inputJson) {\n result.push(`${prefix}connection.inputjson=${JSON.stringify(data.inputJson)}`);\n }\n\n if (data.extraParam) {\n result.push(data.extraParam.map((param) => `${prefix}${param}`).join('\\n'));\n }\n\n return result;\n });\n\n // createReport용 ozParam\n const params = [\n ...(childCount > 0 ? [`viewer.childcount=${childCount}`] : []),\n ...connectionParams,\n ...commonOzParam,\n ...fontParms,\n ...extraParams.flat(1)\n ];\n\n Bridge.native.createReportEx({ param: params.join('\\n') });\n }, [documentList, extraData]);\n\n return {\n documentList,\n CreateReport\n };\n}\n","import { Bridge } from '../bridge';\nimport { DocumentInfo } from '../native/bridge/native-bridge-options.types';\n\nexport async function fetchDocument(options: Array<DocumentInfo>) {\n // 브릿지에 다운로드 요청\n const { data } = await Bridge.native.downloadDocument<Array<DocumentInfo>>({ data: options });\n\n // start,end 페이지 매핑\n return data.map((i) => ({ ...i, startPage: 0, endPage: 0 }));\n}\n\nexport async function fetchFont() {\n const { data: fontMap } = await Bridge.native.getOzFontParam<Record<string, string>>();\n\n const fontParms = Object.keys(fontMap).map((i) => `font.${i}=${fontMap[i]}`);\n\n return fontParms;\n}\n\nexport function categorizeByPageRange(data: DocumentInfo[], pageCounts: number[]) {\n let pageStart = 1; // 시작 페이지는 1로 설정\n const result: DocumentInfo[] = [];\n let pageIndex = 0; // pageCounts에서 인덱스를 추적\n\n // 각 항목에 대해 페이지 범위 계산\n data.forEach((item) => {\n const startPage = pageStart; // 첫 파일의 시작 페이지 저장\n let endPage = pageStart;\n item.file.forEach(() => {\n const pageCount = pageCounts[pageIndex] as number;\n const pageEnd = pageStart + pageCount - 1;\n\n // 페이지 시작을 다음 파일의 끝 페이지 + 1로 설정\n pageStart = pageEnd + 1;\n pageIndex++;\n endPage = pageEnd;\n });\n\n // 각 name에 대해 첫 번째 파일의 시작 페이지만 startPage로 설정\n result.push({\n ...item,\n startPage,\n endPage\n });\n });\n\n return result;\n}\n\n/**\n * 주어진 파일 경로에서 파일 이름만 추출합니다.\n * @param filePath 파일 경로 (예: `/a/b/c/file.ext`)\n * @returns 파일 경로에서 추출한 파일 이름 (확장자 제외, 예: `file`)\n * @throws {Error} 유효하지 않은 파일 경로일 경우 예외 처리\n */\nexport function extractFileName(filePath: string): string {\n // 예외 처리: filePath가 null, undefined, 빈 문자열이거나 문자열이 아닌 경우\n if (!filePath || typeof filePath !== 'string') {\n throw new Error('유효한 파일 경로를 입력해주세요.');\n }\n\n // 파일 경로에서 파일 이름만 추출 (경로와 확장자 제거)\n const fileName = filePath.replace(/^.*\\/|(\\.[^/.]+)$/g, '');\n\n // 예외 처리: 파일 이름이 없는 경우\n if (!fileName) {\n throw new Error('파일 경로에서 파일 이름을 추출할 수 없습니다.');\n }\n\n return fileName;\n}\n\nexport function getFileListByGlobalIndex(index: number, data: DocumentInfo[]) {\n let currentIndex = 0;\n\n for (const form of data) {\n const fileCount = form.file.length;\n\n if (index >= currentIndex && index < currentIndex + fileCount) {\n // index가 이 서식의 파일 범위 안에 있음\n return form;\n }\n\n currentIndex += fileCount;\n }\n\n return null;\n}","import { useCallback, useEffect } from 'react';\n\nimport { OZViewerEvent } from \"./oz-event.types\";\n\ntype Props<T, R = void> = {\n event: OZViewerEvent;\n handler: (e: CustomEvent<T>) => Promise<R>;\n};\n/**\n * OZ 뷰어 콜백 이벤트를 구독해주는 Hook\n */\nexport function useOzEventListener<T, R = void>({ event, handler }: Props<T, R>) {\n const handleEvent = useCallback(\n async (e: Event) => {\n const customEvent = e as CustomEvent<T>;\n\n return await handler(customEvent);\n },\n [handler]\n );\n\n useEffect(() => {\n window.addEventListener(event, handleEvent);\n\n return () => {\n window.removeEventListener(event, handleEvent);\n };\n }, [handleEvent, event]);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../node_modules/.pnpm/react@19.1.0/node_modules/react/cjs/react.production.js","../../../node_modules/.pnpm/react@19.1.0/node_modules/react/cjs/react.development.js","../../../node_modules/.pnpm/react@19.1.0/node_modules/react/index.js","../src/common/common-bridge.ts","../src/common/common-bridge-core.ts","../src/iframe/core/iframe-bridge-core.ts","../src/iframe/bridge/iframe-bridge.ts","../src/native/core/native-bridge-core.ts","../src/native/bridge/native-bridge.ts","../src/native/bridge-oz/native-bridge-oz.ts","../src/bridge.ts","../src/oz/oz-event.types.ts","../src/oz/constant.ts","../src/oz/use-create-report.ts","../src/oz/util.ts","../src/oz/use-document-info.tsx","../src/oz/use-oz-event-listener.tsx"],"names":["isClient","MessageEventManager","getDspExecutionEnvironment","isStorybookEnv","OZViewerEvent","import_react"],"mappings":"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","file":"index.cjs","sourcesContent":["/**\n * @license React\n * react.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nfunction getIteratorFn(maybeIterable) {\n if (null === maybeIterable || \"object\" !== typeof maybeIterable) return null;\n maybeIterable =\n (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||\n maybeIterable[\"@@iterator\"];\n return \"function\" === typeof maybeIterable ? maybeIterable : null;\n}\nvar ReactNoopUpdateQueue = {\n isMounted: function () {\n return !1;\n },\n enqueueForceUpdate: function () {},\n enqueueReplaceState: function () {},\n enqueueSetState: function () {}\n },\n assign = Object.assign,\n emptyObject = {};\nfunction Component(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nComponent.prototype.isReactComponent = {};\nComponent.prototype.setState = function (partialState, callback) {\n if (\n \"object\" !== typeof partialState &&\n \"function\" !== typeof partialState &&\n null != partialState\n )\n throw Error(\n \"takes an object of state variables to update or a function which returns an object of state variables.\"\n );\n this.updater.enqueueSetState(this, partialState, callback, \"setState\");\n};\nComponent.prototype.forceUpdate = function (callback) {\n this.updater.enqueueForceUpdate(this, callback, \"forceUpdate\");\n};\nfunction ComponentDummy() {}\nComponentDummy.prototype = Component.prototype;\nfunction PureComponent(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nvar pureComponentPrototype = (PureComponent.prototype = new ComponentDummy());\npureComponentPrototype.constructor = PureComponent;\nassign(pureComponentPrototype, Component.prototype);\npureComponentPrototype.isPureReactComponent = !0;\nvar isArrayImpl = Array.isArray,\n ReactSharedInternals = { H: null, A: null, T: null, S: null, V: null },\n hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction ReactElement(type, key, self, source, owner, props) {\n self = props.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== self ? self : null,\n props: props\n };\n}\nfunction cloneAndReplaceKey(oldElement, newKey) {\n return ReactElement(\n oldElement.type,\n newKey,\n void 0,\n void 0,\n void 0,\n oldElement.props\n );\n}\nfunction isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n}\nfunction escape(key) {\n var escaperLookup = { \"=\": \"=0\", \":\": \"=2\" };\n return (\n \"$\" +\n key.replace(/[=:]/g, function (match) {\n return escaperLookup[match];\n })\n );\n}\nvar userProvidedKeyEscapeRegex = /\\/+/g;\nfunction getElementKey(element, index) {\n return \"object\" === typeof element && null !== element && null != element.key\n ? escape(\"\" + element.key)\n : index.toString(36);\n}\nfunction noop$1() {}\nfunction resolveThenable(thenable) {\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n default:\n switch (\n (\"string\" === typeof thenable.status\n ? thenable.then(noop$1, noop$1)\n : ((thenable.status = \"pending\"),\n thenable.then(\n function (fulfilledValue) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"fulfilled\"),\n (thenable.value = fulfilledValue));\n },\n function (error) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"rejected\"), (thenable.reason = error));\n }\n )),\n thenable.status)\n ) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n }\n }\n throw thenable;\n}\nfunction mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {\n var type = typeof children;\n if (\"undefined\" === type || \"boolean\" === type) children = null;\n var invokeCallback = !1;\n if (null === children) invokeCallback = !0;\n else\n switch (type) {\n case \"bigint\":\n case \"string\":\n case \"number\":\n invokeCallback = !0;\n break;\n case \"object\":\n switch (children.$$typeof) {\n case REACT_ELEMENT_TYPE:\n case REACT_PORTAL_TYPE:\n invokeCallback = !0;\n break;\n case REACT_LAZY_TYPE:\n return (\n (invokeCallback = children._init),\n mapIntoArray(\n invokeCallback(children._payload),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n )\n );\n }\n }\n if (invokeCallback)\n return (\n (callback = callback(children)),\n (invokeCallback =\n \"\" === nameSoFar ? \".\" + getElementKey(children, 0) : nameSoFar),\n isArrayImpl(callback)\n ? ((escapedPrefix = \"\"),\n null != invokeCallback &&\n (escapedPrefix =\n invokeCallback.replace(userProvidedKeyEscapeRegex, \"$&/\") + \"/\"),\n mapIntoArray(callback, array, escapedPrefix, \"\", function (c) {\n return c;\n }))\n : null != callback &&\n (isValidElement(callback) &&\n (callback = cloneAndReplaceKey(\n callback,\n escapedPrefix +\n (null == callback.key ||\n (children && children.key === callback.key)\n ? \"\"\n : (\"\" + callback.key).replace(\n userProvidedKeyEscapeRegex,\n \"$&/\"\n ) + \"/\") +\n invokeCallback\n )),\n array.push(callback)),\n 1\n );\n invokeCallback = 0;\n var nextNamePrefix = \"\" === nameSoFar ? \".\" : nameSoFar + \":\";\n if (isArrayImpl(children))\n for (var i = 0; i < children.length; i++)\n (nameSoFar = children[i]),\n (type = nextNamePrefix + getElementKey(nameSoFar, i)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (((i = getIteratorFn(children)), \"function\" === typeof i))\n for (\n children = i.call(children), i = 0;\n !(nameSoFar = children.next()).done;\n\n )\n (nameSoFar = nameSoFar.value),\n (type = nextNamePrefix + getElementKey(nameSoFar, i++)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (\"object\" === type) {\n if (\"function\" === typeof children.then)\n return mapIntoArray(\n resolveThenable(children),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n );\n array = String(children);\n throw Error(\n \"Objects are not valid as a React child (found: \" +\n (\"[object Object]\" === array\n ? \"object with keys {\" + Object.keys(children).join(\", \") + \"}\"\n : array) +\n \"). If you meant to render a collection of children, use an array instead.\"\n );\n }\n return invokeCallback;\n}\nfunction mapChildren(children, func, context) {\n if (null == children) return children;\n var result = [],\n count = 0;\n mapIntoArray(children, result, \"\", \"\", function (child) {\n return func.call(context, child, count++);\n });\n return result;\n}\nfunction lazyInitializer(payload) {\n if (-1 === payload._status) {\n var ctor = payload._result;\n ctor = ctor();\n ctor.then(\n function (moduleObject) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 1), (payload._result = moduleObject);\n },\n function (error) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 2), (payload._result = error);\n }\n );\n -1 === payload._status && ((payload._status = 0), (payload._result = ctor));\n }\n if (1 === payload._status) return payload._result.default;\n throw payload._result;\n}\nvar reportGlobalError =\n \"function\" === typeof reportError\n ? reportError\n : function (error) {\n if (\n \"object\" === typeof window &&\n \"function\" === typeof window.ErrorEvent\n ) {\n var event = new window.ErrorEvent(\"error\", {\n bubbles: !0,\n cancelable: !0,\n message:\n \"object\" === typeof error &&\n null !== error &&\n \"string\" === typeof error.message\n ? String(error.message)\n : String(error),\n error: error\n });\n if (!window.dispatchEvent(event)) return;\n } else if (\n \"object\" === typeof process &&\n \"function\" === typeof process.emit\n ) {\n process.emit(\"uncaughtException\", error);\n return;\n }\n console.error(error);\n };\nfunction noop() {}\nexports.Children = {\n map: mapChildren,\n forEach: function (children, forEachFunc, forEachContext) {\n mapChildren(\n children,\n function () {\n forEachFunc.apply(this, arguments);\n },\n forEachContext\n );\n },\n count: function (children) {\n var n = 0;\n mapChildren(children, function () {\n n++;\n });\n return n;\n },\n toArray: function (children) {\n return (\n mapChildren(children, function (child) {\n return child;\n }) || []\n );\n },\n only: function (children) {\n if (!isValidElement(children))\n throw Error(\n \"React.Children.only expected to receive a single React element child.\"\n );\n return children;\n }\n};\nexports.Component = Component;\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.Profiler = REACT_PROFILER_TYPE;\nexports.PureComponent = PureComponent;\nexports.StrictMode = REACT_STRICT_MODE_TYPE;\nexports.Suspense = REACT_SUSPENSE_TYPE;\nexports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =\n ReactSharedInternals;\nexports.__COMPILER_RUNTIME = {\n __proto__: null,\n c: function (size) {\n return ReactSharedInternals.H.useMemoCache(size);\n }\n};\nexports.cache = function (fn) {\n return function () {\n return fn.apply(null, arguments);\n };\n};\nexports.cloneElement = function (element, config, children) {\n if (null === element || void 0 === element)\n throw Error(\n \"The argument must be a React element, but you passed \" + element + \".\"\n );\n var props = assign({}, element.props),\n key = element.key,\n owner = void 0;\n if (null != config)\n for (propName in (void 0 !== config.ref && (owner = void 0),\n void 0 !== config.key && (key = \"\" + config.key),\n config))\n !hasOwnProperty.call(config, propName) ||\n \"key\" === propName ||\n \"__self\" === propName ||\n \"__source\" === propName ||\n (\"ref\" === propName && void 0 === config.ref) ||\n (props[propName] = config[propName]);\n var propName = arguments.length - 2;\n if (1 === propName) props.children = children;\n else if (1 < propName) {\n for (var childArray = Array(propName), i = 0; i < propName; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n return ReactElement(element.type, key, void 0, void 0, owner, props);\n};\nexports.createContext = function (defaultValue) {\n defaultValue = {\n $$typeof: REACT_CONTEXT_TYPE,\n _currentValue: defaultValue,\n _currentValue2: defaultValue,\n _threadCount: 0,\n Provider: null,\n Consumer: null\n };\n defaultValue.Provider = defaultValue;\n defaultValue.Consumer = {\n $$typeof: REACT_CONSUMER_TYPE,\n _context: defaultValue\n };\n return defaultValue;\n};\nexports.createElement = function (type, config, children) {\n var propName,\n props = {},\n key = null;\n if (null != config)\n for (propName in (void 0 !== config.key && (key = \"\" + config.key), config))\n hasOwnProperty.call(config, propName) &&\n \"key\" !== propName &&\n \"__self\" !== propName &&\n \"__source\" !== propName &&\n (props[propName] = config[propName]);\n var childrenLength = arguments.length - 2;\n if (1 === childrenLength) props.children = children;\n else if (1 < childrenLength) {\n for (var childArray = Array(childrenLength), i = 0; i < childrenLength; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n if (type && type.defaultProps)\n for (propName in ((childrenLength = type.defaultProps), childrenLength))\n void 0 === props[propName] &&\n (props[propName] = childrenLength[propName]);\n return ReactElement(type, key, void 0, void 0, null, props);\n};\nexports.createRef = function () {\n return { current: null };\n};\nexports.forwardRef = function (render) {\n return { $$typeof: REACT_FORWARD_REF_TYPE, render: render };\n};\nexports.isValidElement = isValidElement;\nexports.lazy = function (ctor) {\n return {\n $$typeof: REACT_LAZY_TYPE,\n _payload: { _status: -1, _result: ctor },\n _init: lazyInitializer\n };\n};\nexports.memo = function (type, compare) {\n return {\n $$typeof: REACT_MEMO_TYPE,\n type: type,\n compare: void 0 === compare ? null : compare\n };\n};\nexports.startTransition = function (scope) {\n var prevTransition = ReactSharedInternals.T,\n currentTransition = {};\n ReactSharedInternals.T = currentTransition;\n try {\n var returnValue = scope(),\n onStartTransitionFinish = ReactSharedInternals.S;\n null !== onStartTransitionFinish &&\n onStartTransitionFinish(currentTransition, returnValue);\n \"object\" === typeof returnValue &&\n null !== returnValue &&\n \"function\" === typeof returnValue.then &&\n returnValue.then(noop, reportGlobalError);\n } catch (error) {\n reportGlobalError(error);\n } finally {\n ReactSharedInternals.T = prevTransition;\n }\n};\nexports.unstable_useCacheRefresh = function () {\n return ReactSharedInternals.H.useCacheRefresh();\n};\nexports.use = function (usable) {\n return ReactSharedInternals.H.use(usable);\n};\nexports.useActionState = function (action, initialState, permalink) {\n return ReactSharedInternals.H.useActionState(action, initialState, permalink);\n};\nexports.useCallback = function (callback, deps) {\n return ReactSharedInternals.H.useCallback(callback, deps);\n};\nexports.useContext = function (Context) {\n return ReactSharedInternals.H.useContext(Context);\n};\nexports.useDebugValue = function () {};\nexports.useDeferredValue = function (value, initialValue) {\n return ReactSharedInternals.H.useDeferredValue(value, initialValue);\n};\nexports.useEffect = function (create, createDeps, update) {\n var dispatcher = ReactSharedInternals.H;\n if (\"function\" === typeof update)\n throw Error(\n \"useEffect CRUD overload is not enabled in this build of React.\"\n );\n return dispatcher.useEffect(create, createDeps);\n};\nexports.useId = function () {\n return ReactSharedInternals.H.useId();\n};\nexports.useImperativeHandle = function (ref, create, deps) {\n return ReactSharedInternals.H.useImperativeHandle(ref, create, deps);\n};\nexports.useInsertionEffect = function (create, deps) {\n return ReactSharedInternals.H.useInsertionEffect(create, deps);\n};\nexports.useLayoutEffect = function (create, deps) {\n return ReactSharedInternals.H.useLayoutEffect(create, deps);\n};\nexports.useMemo = function (create, deps) {\n return ReactSharedInternals.H.useMemo(create, deps);\n};\nexports.useOptimistic = function (passthrough, reducer) {\n return ReactSharedInternals.H.useOptimistic(passthrough, reducer);\n};\nexports.useReducer = function (reducer, initialArg, init) {\n return ReactSharedInternals.H.useReducer(reducer, initialArg, init);\n};\nexports.useRef = function (initialValue) {\n return ReactSharedInternals.H.useRef(initialValue);\n};\nexports.useState = function (initialState) {\n return ReactSharedInternals.H.useState(initialState);\n};\nexports.useSyncExternalStore = function (\n subscribe,\n getSnapshot,\n getServerSnapshot\n) {\n return ReactSharedInternals.H.useSyncExternalStore(\n subscribe,\n getSnapshot,\n getServerSnapshot\n );\n};\nexports.useTransition = function () {\n return ReactSharedInternals.H.useTransition();\n};\nexports.version = \"19.1.0\";\n","/**\n * @license React\n * react.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function defineDeprecationWarning(methodName, info) {\n Object.defineProperty(Component.prototype, methodName, {\n get: function () {\n console.warn(\n \"%s(...) is deprecated in plain JavaScript React classes. %s\",\n info[0],\n info[1]\n );\n }\n });\n }\n function getIteratorFn(maybeIterable) {\n if (null === maybeIterable || \"object\" !== typeof maybeIterable)\n return null;\n maybeIterable =\n (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||\n maybeIterable[\"@@iterator\"];\n return \"function\" === typeof maybeIterable ? maybeIterable : null;\n }\n function warnNoop(publicInstance, callerName) {\n publicInstance =\n ((publicInstance = publicInstance.constructor) &&\n (publicInstance.displayName || publicInstance.name)) ||\n \"ReactClass\";\n var warningKey = publicInstance + \".\" + callerName;\n didWarnStateUpdateForUnmountedComponent[warningKey] ||\n (console.error(\n \"Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.\",\n callerName,\n publicInstance\n ),\n (didWarnStateUpdateForUnmountedComponent[warningKey] = !0));\n }\n function Component(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n }\n function ComponentDummy() {}\n function PureComponent(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n }\n function testStringCoercion(value) {\n return \"\" + value;\n }\n function checkKeyStringCoercion(value) {\n try {\n testStringCoercion(value);\n var JSCompiler_inline_result = !1;\n } catch (e) {\n JSCompiler_inline_result = !0;\n }\n if (JSCompiler_inline_result) {\n JSCompiler_inline_result = console;\n var JSCompiler_temp_const = JSCompiler_inline_result.error;\n var JSCompiler_inline_result$jscomp$0 =\n (\"function\" === typeof Symbol &&\n Symbol.toStringTag &&\n value[Symbol.toStringTag]) ||\n value.constructor.name ||\n \"Object\";\n JSCompiler_temp_const.call(\n JSCompiler_inline_result,\n \"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",\n JSCompiler_inline_result$jscomp$0\n );\n return testStringCoercion(value);\n }\n }\n function getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n case REACT_ACTIVITY_TYPE:\n return \"Activity\";\n }\n if (\"object\" === typeof type)\n switch (\n (\"number\" === typeof type.tag &&\n console.error(\n \"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"\n ),\n type.$$typeof)\n ) {\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_CONTEXT_TYPE:\n return (type.displayName || \"Context\") + \".Provider\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n }\n function getTaskName(type) {\n if (type === REACT_FRAGMENT_TYPE) return \"<>\";\n if (\n \"object\" === typeof type &&\n null !== type &&\n type.$$typeof === REACT_LAZY_TYPE\n )\n return \"<...>\";\n try {\n var name = getComponentNameFromType(type);\n return name ? \"<\" + name + \">\" : \"<...>\";\n } catch (x) {\n return \"<...>\";\n }\n }\n function getOwner() {\n var dispatcher = ReactSharedInternals.A;\n return null === dispatcher ? null : dispatcher.getOwner();\n }\n function UnknownOwner() {\n return Error(\"react-stack-top-frame\");\n }\n function hasValidKey(config) {\n if (hasOwnProperty.call(config, \"key\")) {\n var getter = Object.getOwnPropertyDescriptor(config, \"key\").get;\n if (getter && getter.isReactWarning) return !1;\n }\n return void 0 !== config.key;\n }\n function defineKeyPropWarningGetter(props, displayName) {\n function warnAboutAccessingKey() {\n specialPropKeyWarningShown ||\n ((specialPropKeyWarningShown = !0),\n console.error(\n \"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",\n displayName\n ));\n }\n warnAboutAccessingKey.isReactWarning = !0;\n Object.defineProperty(props, \"key\", {\n get: warnAboutAccessingKey,\n configurable: !0\n });\n }\n function elementRefGetterWithDeprecationWarning() {\n var componentName = getComponentNameFromType(this.type);\n didWarnAboutElementRef[componentName] ||\n ((didWarnAboutElementRef[componentName] = !0),\n console.error(\n \"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\"\n ));\n componentName = this.props.ref;\n return void 0 !== componentName ? componentName : null;\n }\n function ReactElement(\n type,\n key,\n self,\n source,\n owner,\n props,\n debugStack,\n debugTask\n ) {\n self = props.ref;\n type = {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n props: props,\n _owner: owner\n };\n null !== (void 0 !== self ? self : null)\n ? Object.defineProperty(type, \"ref\", {\n enumerable: !1,\n get: elementRefGetterWithDeprecationWarning\n })\n : Object.defineProperty(type, \"ref\", { enumerable: !1, value: null });\n type._store = {};\n Object.defineProperty(type._store, \"validated\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: 0\n });\n Object.defineProperty(type, \"_debugInfo\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: null\n });\n Object.defineProperty(type, \"_debugStack\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugStack\n });\n Object.defineProperty(type, \"_debugTask\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugTask\n });\n Object.freeze && (Object.freeze(type.props), Object.freeze(type));\n return type;\n }\n function cloneAndReplaceKey(oldElement, newKey) {\n newKey = ReactElement(\n oldElement.type,\n newKey,\n void 0,\n void 0,\n oldElement._owner,\n oldElement.props,\n oldElement._debugStack,\n oldElement._debugTask\n );\n oldElement._store &&\n (newKey._store.validated = oldElement._store.validated);\n return newKey;\n }\n function isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n }\n function escape(key) {\n var escaperLookup = { \"=\": \"=0\", \":\": \"=2\" };\n return (\n \"$\" +\n key.replace(/[=:]/g, function (match) {\n return escaperLookup[match];\n })\n );\n }\n function getElementKey(element, index) {\n return \"object\" === typeof element &&\n null !== element &&\n null != element.key\n ? (checkKeyStringCoercion(element.key), escape(\"\" + element.key))\n : index.toString(36);\n }\n function noop$1() {}\n function resolveThenable(thenable) {\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n default:\n switch (\n (\"string\" === typeof thenable.status\n ? thenable.then(noop$1, noop$1)\n : ((thenable.status = \"pending\"),\n thenable.then(\n function (fulfilledValue) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"fulfilled\"),\n (thenable.value = fulfilledValue));\n },\n function (error) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"rejected\"),\n (thenable.reason = error));\n }\n )),\n thenable.status)\n ) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n }\n }\n throw thenable;\n }\n function mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {\n var type = typeof children;\n if (\"undefined\" === type || \"boolean\" === type) children = null;\n var invokeCallback = !1;\n if (null === children) invokeCallback = !0;\n else\n switch (type) {\n case \"bigint\":\n case \"string\":\n case \"number\":\n invokeCallback = !0;\n break;\n case \"object\":\n switch (children.$$typeof) {\n case REACT_ELEMENT_TYPE:\n case REACT_PORTAL_TYPE:\n invokeCallback = !0;\n break;\n case REACT_LAZY_TYPE:\n return (\n (invokeCallback = children._init),\n mapIntoArray(\n invokeCallback(children._payload),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n )\n );\n }\n }\n if (invokeCallback) {\n invokeCallback = children;\n callback = callback(invokeCallback);\n var childKey =\n \"\" === nameSoFar ? \".\" + getElementKey(invokeCallback, 0) : nameSoFar;\n isArrayImpl(callback)\n ? ((escapedPrefix = \"\"),\n null != childKey &&\n (escapedPrefix =\n childKey.replace(userProvidedKeyEscapeRegex, \"$&/\") + \"/\"),\n mapIntoArray(callback, array, escapedPrefix, \"\", function (c) {\n return c;\n }))\n : null != callback &&\n (isValidElement(callback) &&\n (null != callback.key &&\n ((invokeCallback && invokeCallback.key === callback.key) ||\n checkKeyStringCoercion(callback.key)),\n (escapedPrefix = cloneAndReplaceKey(\n callback,\n escapedPrefix +\n (null == callback.key ||\n (invokeCallback && invokeCallback.key === callback.key)\n ? \"\"\n : (\"\" + callback.key).replace(\n userProvidedKeyEscapeRegex,\n \"$&/\"\n ) + \"/\") +\n childKey\n )),\n \"\" !== nameSoFar &&\n null != invokeCallback &&\n isValidElement(invokeCallback) &&\n null == invokeCallback.key &&\n invokeCallback._store &&\n !invokeCallback._store.validated &&\n (escapedPrefix._store.validated = 2),\n (callback = escapedPrefix)),\n array.push(callback));\n return 1;\n }\n invokeCallback = 0;\n childKey = \"\" === nameSoFar ? \".\" : nameSoFar + \":\";\n if (isArrayImpl(children))\n for (var i = 0; i < children.length; i++)\n (nameSoFar = children[i]),\n (type = childKey + getElementKey(nameSoFar, i)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (((i = getIteratorFn(children)), \"function\" === typeof i))\n for (\n i === children.entries &&\n (didWarnAboutMaps ||\n console.warn(\n \"Using Maps as children is not supported. Use an array of keyed ReactElements instead.\"\n ),\n (didWarnAboutMaps = !0)),\n children = i.call(children),\n i = 0;\n !(nameSoFar = children.next()).done;\n\n )\n (nameSoFar = nameSoFar.value),\n (type = childKey + getElementKey(nameSoFar, i++)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (\"object\" === type) {\n if (\"function\" === typeof children.then)\n return mapIntoArray(\n resolveThenable(children),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n );\n array = String(children);\n throw Error(\n \"Objects are not valid as a React child (found: \" +\n (\"[object Object]\" === array\n ? \"object with keys {\" + Object.keys(children).join(\", \") + \"}\"\n : array) +\n \"). If you meant to render a collection of children, use an array instead.\"\n );\n }\n return invokeCallback;\n }\n function mapChildren(children, func, context) {\n if (null == children) return children;\n var result = [],\n count = 0;\n mapIntoArray(children, result, \"\", \"\", function (child) {\n return func.call(context, child, count++);\n });\n return result;\n }\n function lazyInitializer(payload) {\n if (-1 === payload._status) {\n var ctor = payload._result;\n ctor = ctor();\n ctor.then(\n function (moduleObject) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 1), (payload._result = moduleObject);\n },\n function (error) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 2), (payload._result = error);\n }\n );\n -1 === payload._status &&\n ((payload._status = 0), (payload._result = ctor));\n }\n if (1 === payload._status)\n return (\n (ctor = payload._result),\n void 0 === ctor &&\n console.error(\n \"lazy: Expected the result of a dynamic import() call. Instead received: %s\\n\\nYour code should look like: \\n const MyComponent = lazy(() => import('./MyComponent'))\\n\\nDid you accidentally put curly braces around the import?\",\n ctor\n ),\n \"default\" in ctor ||\n console.error(\n \"lazy: Expected the result of a dynamic import() call. Instead received: %s\\n\\nYour code should look like: \\n const MyComponent = lazy(() => import('./MyComponent'))\",\n ctor\n ),\n ctor.default\n );\n throw payload._result;\n }\n function resolveDispatcher() {\n var dispatcher = ReactSharedInternals.H;\n null === dispatcher &&\n console.error(\n \"Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\\n1. You might have mismatching versions of React and the renderer (such as React DOM)\\n2. You might be breaking the Rules of Hooks\\n3. You might have more than one copy of React in the same app\\nSee https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.\"\n );\n return dispatcher;\n }\n function noop() {}\n function enqueueTask(task) {\n if (null === enqueueTaskImpl)\n try {\n var requireString = (\"require\" + Math.random()).slice(0, 7);\n enqueueTaskImpl = (module && module[requireString]).call(\n module,\n \"timers\"\n ).setImmediate;\n } catch (_err) {\n enqueueTaskImpl = function (callback) {\n !1 === didWarnAboutMessageChannel &&\n ((didWarnAboutMessageChannel = !0),\n \"undefined\" === typeof MessageChannel &&\n console.error(\n \"This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning.\"\n ));\n var channel = new MessageChannel();\n channel.port1.onmessage = callback;\n channel.port2.postMessage(void 0);\n };\n }\n return enqueueTaskImpl(task);\n }\n function aggregateErrors(errors) {\n return 1 < errors.length && \"function\" === typeof AggregateError\n ? new AggregateError(errors)\n : errors[0];\n }\n function popActScope(prevActQueue, prevActScopeDepth) {\n prevActScopeDepth !== actScopeDepth - 1 &&\n console.error(\n \"You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. \"\n );\n actScopeDepth = prevActScopeDepth;\n }\n function recursivelyFlushAsyncActWork(returnValue, resolve, reject) {\n var queue = ReactSharedInternals.actQueue;\n if (null !== queue)\n if (0 !== queue.length)\n try {\n flushActQueue(queue);\n enqueueTask(function () {\n return recursivelyFlushAsyncActWork(returnValue, resolve, reject);\n });\n return;\n } catch (error) {\n ReactSharedInternals.thrownErrors.push(error);\n }\n else ReactSharedInternals.actQueue = null;\n 0 < ReactSharedInternals.thrownErrors.length\n ? ((queue = aggregateErrors(ReactSharedInternals.thrownErrors)),\n (ReactSharedInternals.thrownErrors.length = 0),\n reject(queue))\n : resolve(returnValue);\n }\n function flushActQueue(queue) {\n if (!isFlushing) {\n isFlushing = !0;\n var i = 0;\n try {\n for (; i < queue.length; i++) {\n var callback = queue[i];\n do {\n ReactSharedInternals.didUsePromise = !1;\n var continuation = callback(!1);\n if (null !== continuation) {\n if (ReactSharedInternals.didUsePromise) {\n queue[i] = callback;\n queue.splice(0, i);\n return;\n }\n callback = continuation;\n } else break;\n } while (1);\n }\n queue.length = 0;\n } catch (error) {\n queue.splice(0, i + 1), ReactSharedInternals.thrownErrors.push(error);\n } finally {\n isFlushing = !1;\n }\n }\n }\n \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n \"function\" ===\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart &&\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());\n var REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\");\n Symbol.for(\"react.provider\");\n var REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n MAYBE_ITERATOR_SYMBOL = Symbol.iterator,\n didWarnStateUpdateForUnmountedComponent = {},\n ReactNoopUpdateQueue = {\n isMounted: function () {\n return !1;\n },\n enqueueForceUpdate: function (publicInstance) {\n warnNoop(publicInstance, \"forceUpdate\");\n },\n enqueueReplaceState: function (publicInstance) {\n warnNoop(publicInstance, \"replaceState\");\n },\n enqueueSetState: function (publicInstance) {\n warnNoop(publicInstance, \"setState\");\n }\n },\n assign = Object.assign,\n emptyObject = {};\n Object.freeze(emptyObject);\n Component.prototype.isReactComponent = {};\n Component.prototype.setState = function (partialState, callback) {\n if (\n \"object\" !== typeof partialState &&\n \"function\" !== typeof partialState &&\n null != partialState\n )\n throw Error(\n \"takes an object of state variables to update or a function which returns an object of state variables.\"\n );\n this.updater.enqueueSetState(this, partialState, callback, \"setState\");\n };\n Component.prototype.forceUpdate = function (callback) {\n this.updater.enqueueForceUpdate(this, callback, \"forceUpdate\");\n };\n var deprecatedAPIs = {\n isMounted: [\n \"isMounted\",\n \"Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks.\"\n ],\n replaceState: [\n \"replaceState\",\n \"Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236).\"\n ]\n },\n fnName;\n for (fnName in deprecatedAPIs)\n deprecatedAPIs.hasOwnProperty(fnName) &&\n defineDeprecationWarning(fnName, deprecatedAPIs[fnName]);\n ComponentDummy.prototype = Component.prototype;\n deprecatedAPIs = PureComponent.prototype = new ComponentDummy();\n deprecatedAPIs.constructor = PureComponent;\n assign(deprecatedAPIs, Component.prototype);\n deprecatedAPIs.isPureReactComponent = !0;\n var isArrayImpl = Array.isArray,\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\"),\n ReactSharedInternals = {\n H: null,\n A: null,\n T: null,\n S: null,\n V: null,\n actQueue: null,\n isBatchingLegacy: !1,\n didScheduleLegacyUpdate: !1,\n didUsePromise: !1,\n thrownErrors: [],\n getCurrentStack: null,\n recentlyCreatedOwnerStacks: 0\n },\n hasOwnProperty = Object.prototype.hasOwnProperty,\n createTask = console.createTask\n ? console.createTask\n : function () {\n return null;\n };\n deprecatedAPIs = {\n \"react-stack-bottom-frame\": function (callStackForError) {\n return callStackForError();\n }\n };\n var specialPropKeyWarningShown, didWarnAboutOldJSXRuntime;\n var didWarnAboutElementRef = {};\n var unknownOwnerDebugStack = deprecatedAPIs[\n \"react-stack-bottom-frame\"\n ].bind(deprecatedAPIs, UnknownOwner)();\n var unknownOwnerDebugTask = createTask(getTaskName(UnknownOwner));\n var didWarnAboutMaps = !1,\n userProvidedKeyEscapeRegex = /\\/+/g,\n reportGlobalError =\n \"function\" === typeof reportError\n ? reportError\n : function (error) {\n if (\n \"object\" === typeof window &&\n \"function\" === typeof window.ErrorEvent\n ) {\n var event = new window.ErrorEvent(\"error\", {\n bubbles: !0,\n cancelable: !0,\n message:\n \"object\" === typeof error &&\n null !== error &&\n \"string\" === typeof error.message\n ? String(error.message)\n : String(error),\n error: error\n });\n if (!window.dispatchEvent(event)) return;\n } else if (\n \"object\" === typeof process &&\n \"function\" === typeof process.emit\n ) {\n process.emit(\"uncaughtException\", error);\n return;\n }\n console.error(error);\n },\n didWarnAboutMessageChannel = !1,\n enqueueTaskImpl = null,\n actScopeDepth = 0,\n didWarnNoAwaitAct = !1,\n isFlushing = !1,\n queueSeveralMicrotasks =\n \"function\" === typeof queueMicrotask\n ? function (callback) {\n queueMicrotask(function () {\n return queueMicrotask(callback);\n });\n }\n : enqueueTask;\n deprecatedAPIs = Object.freeze({\n __proto__: null,\n c: function (size) {\n return resolveDispatcher().useMemoCache(size);\n }\n });\n exports.Children = {\n map: mapChildren,\n forEach: function (children, forEachFunc, forEachContext) {\n mapChildren(\n children,\n function () {\n forEachFunc.apply(this, arguments);\n },\n forEachContext\n );\n },\n count: function (children) {\n var n = 0;\n mapChildren(children, function () {\n n++;\n });\n return n;\n },\n toArray: function (children) {\n return (\n mapChildren(children, function (child) {\n return child;\n }) || []\n );\n },\n only: function (children) {\n if (!isValidElement(children))\n throw Error(\n \"React.Children.only expected to receive a single React element child.\"\n );\n return children;\n }\n };\n exports.Component = Component;\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.Profiler = REACT_PROFILER_TYPE;\n exports.PureComponent = PureComponent;\n exports.StrictMode = REACT_STRICT_MODE_TYPE;\n exports.Suspense = REACT_SUSPENSE_TYPE;\n exports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =\n ReactSharedInternals;\n exports.__COMPILER_RUNTIME = deprecatedAPIs;\n exports.act = function (callback) {\n var prevActQueue = ReactSharedInternals.actQueue,\n prevActScopeDepth = actScopeDepth;\n actScopeDepth++;\n var queue = (ReactSharedInternals.actQueue =\n null !== prevActQueue ? prevActQueue : []),\n didAwaitActCall = !1;\n try {\n var result = callback();\n } catch (error) {\n ReactSharedInternals.thrownErrors.push(error);\n }\n if (0 < ReactSharedInternals.thrownErrors.length)\n throw (\n (popActScope(prevActQueue, prevActScopeDepth),\n (callback = aggregateErrors(ReactSharedInternals.thrownErrors)),\n (ReactSharedInternals.thrownErrors.length = 0),\n callback)\n );\n if (\n null !== result &&\n \"object\" === typeof result &&\n \"function\" === typeof result.then\n ) {\n var thenable = result;\n queueSeveralMicrotasks(function () {\n didAwaitActCall ||\n didWarnNoAwaitAct ||\n ((didWarnNoAwaitAct = !0),\n console.error(\n \"You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);\"\n ));\n });\n return {\n then: function (resolve, reject) {\n didAwaitActCall = !0;\n thenable.then(\n function (returnValue) {\n popActScope(prevActQueue, prevActScopeDepth);\n if (0 === prevActScopeDepth) {\n try {\n flushActQueue(queue),\n enqueueTask(function () {\n return recursivelyFlushAsyncActWork(\n returnValue,\n resolve,\n reject\n );\n });\n } catch (error$0) {\n ReactSharedInternals.thrownErrors.push(error$0);\n }\n if (0 < ReactSharedInternals.thrownErrors.length) {\n var _thrownError = aggregateErrors(\n ReactSharedInternals.thrownErrors\n );\n ReactSharedInternals.thrownErrors.length = 0;\n reject(_thrownError);\n }\n } else resolve(returnValue);\n },\n function (error) {\n popActScope(prevActQueue, prevActScopeDepth);\n 0 < ReactSharedInternals.thrownErrors.length\n ? ((error = aggregateErrors(\n ReactSharedInternals.thrownErrors\n )),\n (ReactSharedInternals.thrownErrors.length = 0),\n reject(error))\n : reject(error);\n }\n );\n }\n };\n }\n var returnValue$jscomp$0 = result;\n popActScope(prevActQueue, prevActScopeDepth);\n 0 === prevActScopeDepth &&\n (flushActQueue(queue),\n 0 !== queue.length &&\n queueSeveralMicrotasks(function () {\n didAwaitActCall ||\n didWarnNoAwaitAct ||\n ((didWarnNoAwaitAct = !0),\n console.error(\n \"A component suspended inside an `act` scope, but the `act` call was not awaited. When testing React components that depend on asynchronous data, you must await the result:\\n\\nawait act(() => ...)\"\n ));\n }),\n (ReactSharedInternals.actQueue = null));\n if (0 < ReactSharedInternals.thrownErrors.length)\n throw (\n ((callback = aggregateErrors(ReactSharedInternals.thrownErrors)),\n (ReactSharedInternals.thrownErrors.length = 0),\n callback)\n );\n return {\n then: function (resolve, reject) {\n didAwaitActCall = !0;\n 0 === prevActScopeDepth\n ? ((ReactSharedInternals.actQueue = queue),\n enqueueTask(function () {\n return recursivelyFlushAsyncActWork(\n returnValue$jscomp$0,\n resolve,\n reject\n );\n }))\n : resolve(returnValue$jscomp$0);\n }\n };\n };\n exports.cache = function (fn) {\n return function () {\n return fn.apply(null, arguments);\n };\n };\n exports.captureOwnerStack = function () {\n var getCurrentStack = ReactSharedInternals.getCurrentStack;\n return null === getCurrentStack ? null : getCurrentStack();\n };\n exports.cloneElement = function (element, config, children) {\n if (null === element || void 0 === element)\n throw Error(\n \"The argument must be a React element, but you passed \" +\n element +\n \".\"\n );\n var props = assign({}, element.props),\n key = element.key,\n owner = element._owner;\n if (null != config) {\n var JSCompiler_inline_result;\n a: {\n if (\n hasOwnProperty.call(config, \"ref\") &&\n (JSCompiler_inline_result = Object.getOwnPropertyDescriptor(\n config,\n \"ref\"\n ).get) &&\n JSCompiler_inline_result.isReactWarning\n ) {\n JSCompiler_inline_result = !1;\n break a;\n }\n JSCompiler_inline_result = void 0 !== config.ref;\n }\n JSCompiler_inline_result && (owner = getOwner());\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (key = \"\" + config.key));\n for (propName in config)\n !hasOwnProperty.call(config, propName) ||\n \"key\" === propName ||\n \"__self\" === propName ||\n \"__source\" === propName ||\n (\"ref\" === propName && void 0 === config.ref) ||\n (props[propName] = config[propName]);\n }\n var propName = arguments.length - 2;\n if (1 === propName) props.children = children;\n else if (1 < propName) {\n JSCompiler_inline_result = Array(propName);\n for (var i = 0; i < propName; i++)\n JSCompiler_inline_result[i] = arguments[i + 2];\n props.children = JSCompiler_inline_result;\n }\n props = ReactElement(\n element.type,\n key,\n void 0,\n void 0,\n owner,\n props,\n element._debugStack,\n element._debugTask\n );\n for (key = 2; key < arguments.length; key++)\n (owner = arguments[key]),\n isValidElement(owner) && owner._store && (owner._store.validated = 1);\n return props;\n };\n exports.createContext = function (defaultValue) {\n defaultValue = {\n $$typeof: REACT_CONTEXT_TYPE,\n _currentValue: defaultValue,\n _currentValue2: defaultValue,\n _threadCount: 0,\n Provider: null,\n Consumer: null\n };\n defaultValue.Provider = defaultValue;\n defaultValue.Consumer = {\n $$typeof: REACT_CONSUMER_TYPE,\n _context: defaultValue\n };\n defaultValue._currentRenderer = null;\n defaultValue._currentRenderer2 = null;\n return defaultValue;\n };\n exports.createElement = function (type, config, children) {\n for (var i = 2; i < arguments.length; i++) {\n var node = arguments[i];\n isValidElement(node) && node._store && (node._store.validated = 1);\n }\n i = {};\n node = null;\n if (null != config)\n for (propName in (didWarnAboutOldJSXRuntime ||\n !(\"__self\" in config) ||\n \"key\" in config ||\n ((didWarnAboutOldJSXRuntime = !0),\n console.warn(\n \"Your app (or one of its dependencies) is using an outdated JSX transform. Update to the modern JSX transform for faster performance: https://react.dev/link/new-jsx-transform\"\n )),\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (node = \"\" + config.key)),\n config))\n hasOwnProperty.call(config, propName) &&\n \"key\" !== propName &&\n \"__self\" !== propName &&\n \"__source\" !== propName &&\n (i[propName] = config[propName]);\n var childrenLength = arguments.length - 2;\n if (1 === childrenLength) i.children = children;\n else if (1 < childrenLength) {\n for (\n var childArray = Array(childrenLength), _i = 0;\n _i < childrenLength;\n _i++\n )\n childArray[_i] = arguments[_i + 2];\n Object.freeze && Object.freeze(childArray);\n i.children = childArray;\n }\n if (type && type.defaultProps)\n for (propName in ((childrenLength = type.defaultProps), childrenLength))\n void 0 === i[propName] && (i[propName] = childrenLength[propName]);\n node &&\n defineKeyPropWarningGetter(\n i,\n \"function\" === typeof type\n ? type.displayName || type.name || \"Unknown\"\n : type\n );\n var propName = 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return ReactElement(\n type,\n node,\n void 0,\n void 0,\n getOwner(),\n i,\n propName ? Error(\"react-stack-top-frame\") : unknownOwnerDebugStack,\n propName ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n exports.createRef = function () {\n var refObject = { current: null };\n Object.seal(refObject);\n return refObject;\n };\n exports.forwardRef = function (render) {\n null != render && render.$$typeof === REACT_MEMO_TYPE\n ? console.error(\n \"forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...)).\"\n )\n : \"function\" !== typeof render\n ? console.error(\n \"forwardRef requires a render function but was given %s.\",\n null === render ? \"null\" : typeof render\n )\n : 0 !== render.length &&\n 2 !== render.length &&\n console.error(\n \"forwardRef render functions accept exactly two parameters: props and ref. %s\",\n 1 === render.length\n ? \"Did you forget to use the ref parameter?\"\n : \"Any additional parameter will be undefined.\"\n );\n null != render &&\n null != render.defaultProps &&\n console.error(\n \"forwardRef render functions do not support defaultProps. Did you accidentally pass a React component?\"\n );\n var elementType = { $$typeof: REACT_FORWARD_REF_TYPE, render: render },\n ownName;\n Object.defineProperty(elementType, \"displayName\", {\n enumerable: !1,\n configurable: !0,\n get: function () {\n return ownName;\n },\n set: function (name) {\n ownName = name;\n render.name ||\n render.displayName ||\n (Object.defineProperty(render, \"name\", { value: name }),\n (render.displayName = name));\n }\n });\n return elementType;\n };\n exports.isValidElement = isValidElement;\n exports.lazy = function (ctor) {\n return {\n $$typeof: REACT_LAZY_TYPE,\n _payload: { _status: -1, _result: ctor },\n _init: lazyInitializer\n };\n };\n exports.memo = function (type, compare) {\n null == type &&\n console.error(\n \"memo: The first argument must be a component. Instead received: %s\",\n null === type ? \"null\" : typeof type\n );\n compare = {\n $$typeof: REACT_MEMO_TYPE,\n type: type,\n compare: void 0 === compare ? null : compare\n };\n var ownName;\n Object.defineProperty(compare, \"displayName\", {\n enumerable: !1,\n configurable: !0,\n get: function () {\n return ownName;\n },\n set: function (name) {\n ownName = name;\n type.name ||\n type.displayName ||\n (Object.defineProperty(type, \"name\", { value: name }),\n (type.displayName = name));\n }\n });\n return compare;\n };\n exports.startTransition = function (scope) {\n var prevTransition = ReactSharedInternals.T,\n currentTransition = {};\n ReactSharedInternals.T = currentTransition;\n currentTransition._updatedFibers = new Set();\n try {\n var returnValue = scope(),\n onStartTransitionFinish = ReactSharedInternals.S;\n null !== onStartTransitionFinish &&\n onStartTransitionFinish(currentTransition, returnValue);\n \"object\" === typeof returnValue &&\n null !== returnValue &&\n \"function\" === typeof returnValue.then &&\n returnValue.then(noop, reportGlobalError);\n } catch (error) {\n reportGlobalError(error);\n } finally {\n null === prevTransition &&\n currentTransition._updatedFibers &&\n ((scope = currentTransition._updatedFibers.size),\n currentTransition._updatedFibers.clear(),\n 10 < scope &&\n console.warn(\n \"Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table.\"\n )),\n (ReactSharedInternals.T = prevTransition);\n }\n };\n exports.unstable_useCacheRefresh = function () {\n return resolveDispatcher().useCacheRefresh();\n };\n exports.use = function (usable) {\n return resolveDispatcher().use(usable);\n };\n exports.useActionState = function (action, initialState, permalink) {\n return resolveDispatcher().useActionState(\n action,\n initialState,\n permalink\n );\n };\n exports.useCallback = function (callback, deps) {\n return resolveDispatcher().useCallback(callback, deps);\n };\n exports.useContext = function (Context) {\n var dispatcher = resolveDispatcher();\n Context.$$typeof === REACT_CONSUMER_TYPE &&\n console.error(\n \"Calling useContext(Context.Consumer) is not supported and will cause bugs. Did you mean to call useContext(Context) instead?\"\n );\n return dispatcher.useContext(Context);\n };\n exports.useDebugValue = function (value, formatterFn) {\n return resolveDispatcher().useDebugValue(value, formatterFn);\n };\n exports.useDeferredValue = function (value, initialValue) {\n return resolveDispatcher().useDeferredValue(value, initialValue);\n };\n exports.useEffect = function (create, createDeps, update) {\n null == create &&\n console.warn(\n \"React Hook useEffect requires an effect callback. Did you forget to pass a callback to the hook?\"\n );\n var dispatcher = resolveDispatcher();\n if (\"function\" === typeof update)\n throw Error(\n \"useEffect CRUD overload is not enabled in this build of React.\"\n );\n return dispatcher.useEffect(create, createDeps);\n };\n exports.useId = function () {\n return resolveDispatcher().useId();\n };\n exports.useImperativeHandle = function (ref, create, deps) {\n return resolveDispatcher().useImperativeHandle(ref, create, deps);\n };\n exports.useInsertionEffect = function (create, deps) {\n null == create &&\n console.warn(\n \"React Hook useInsertionEffect requires an effect callback. Did you forget to pass a callback to the hook?\"\n );\n return resolveDispatcher().useInsertionEffect(create, deps);\n };\n exports.useLayoutEffect = function (create, deps) {\n null == create &&\n console.warn(\n \"React Hook useLayoutEffect requires an effect callback. Did you forget to pass a callback to the hook?\"\n );\n return resolveDispatcher().useLayoutEffect(create, deps);\n };\n exports.useMemo = function (create, deps) {\n return resolveDispatcher().useMemo(create, deps);\n };\n exports.useOptimistic = function (passthrough, reducer) {\n return resolveDispatcher().useOptimistic(passthrough, reducer);\n };\n exports.useReducer = function (reducer, initialArg, init) {\n return resolveDispatcher().useReducer(reducer, initialArg, init);\n };\n exports.useRef = function (initialValue) {\n return resolveDispatcher().useRef(initialValue);\n };\n exports.useState = function (initialState) {\n return resolveDispatcher().useState(initialState);\n };\n exports.useSyncExternalStore = function (\n subscribe,\n getSnapshot,\n getServerSnapshot\n ) {\n return resolveDispatcher().useSyncExternalStore(\n subscribe,\n getSnapshot,\n getServerSnapshot\n );\n };\n exports.useTransition = function () {\n return resolveDispatcher().useTransition();\n };\n exports.version = \"19.1.0\";\n \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n \"function\" ===\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","import { ICommonBridge } from './common-bridge.types';\n\n/**\n * Business Layer Bridge\n * 비즈니스를 호출하는(iframe, app)에서 구현해야할 함수 정의\n */\nexport abstract class CommonBridge implements ICommonBridge {\n protected commonHello(): void {\n console.log('commonHello');\n }\n\n abstract hello(): void;\n}\n","/**\n * Core Layer Bridge\n * Core(iframe, app)에서 구현해야할 함수 정의\n */\nexport abstract class CommonBridgeCore {\n /**\n * 코어에서 사용할 프로미스 ID 생성 함수\n * @returns\n */\n protected generatePromiseId(): string {\n const timestamp = Date.now();\n const random = Math.random().toString(36).slice(2, 11);\n\n return `${timestamp}_${random}`;\n }\n\n /**\n * core에서 구현해야할 함수\n * @param action\n * @param options\n */\n abstract callToTarget<T>(action: string, options?: Record<string, unknown>): Promise<T>;\n}\n","import { getDspExecutionEnvironment, isClient } from 'sales-frontend-utils';\nimport { MessageEventManager } from 'sales-frontend-utils';\n\nimport { CommonBridgeCore } from '../../common/common-bridge-core';\n\nimport {\n IframeEventName,\n IframeBridgeCommand,\n IframeBridgeOptions,\n IframeBridgePromise,\n IframeBridgeResponseHandler,\n IframeBridgeResponseData\n} from './iframe-bridge-core.types';\n\n/**\n * Iframe Bridge 통신 위한 핵심 클래스\n * 담당: 부모 호출, Promise 관리\n */\nexport class IframeBridgeCore extends CommonBridgeCore {\n private pendingPromises = new Map<string, IframeBridgePromise>();\n private responseHandler?: IframeBridgeResponseHandler;\n\n constructor() {\n super();\n if (!isClient()) {\n return;\n }\n\n this.initializeIframeBridge();\n }\n\n /**\n * 사용하는 쪽에서 응답핸들러를 사용할 수 있도록 필요시, 응답 처리 핸들러 설정\n */\n setResponseHandler(handler: IframeBridgeResponseHandler): void {\n this.responseHandler = handler;\n }\n\n handleIframeBridgePromise(response: IframeBridgeResponseData): boolean {\n const { promiseId, isSuccess, data } = response;\n\n const promise = this.pendingPromises.get(promiseId);\n if (promise) {\n this.pendingPromises.delete(promiseId);\n\n if (isSuccess) {\n promise.resolve(data);\n } else {\n promise.reject(new Error(data));\n }\n\n return true;\n }\n\n return false;\n }\n\n /**\n * 특정 Promise 존재 여부 확인\n */\n hasPromise(promiseId: string): boolean {\n return this.pendingPromises.has(promiseId);\n }\n\n /**\n * 네이티브 통신을 위해 window.n2bridge 객체 초기화\n */\n private initializeIframeBridge(): void {\n console.log('[IframeBridgeCore] initialized Iframe Bridge');\n\n // MessageEventManager에 핸들러 등록(영업포털-웹간 주고받기)\n MessageEventManager.getInstance().registerHandler('iframe-bridge', this.handleMessageEventResponse.bind(this));\n }\n\n /**\n * 브릿지 메시지 이벤트 핸들러\n * @param event\n */\n private handleMessageEventResponse(event: MessageEvent): void {\n const { promiseId, isSuccess, data } = event.data as IframeBridgeResponseData;\n\n // 등록된 핸들러가 있으면 실행\n if (this.responseHandler) {\n this.responseHandler({ promiseId, isSuccess, data });\n }\n\n // 기본 처리\n if (this.pendingPromises.has(promiseId)) {\n this.handleIframeBridgePromise({ promiseId, isSuccess, data });\n }\n }\n\n /**\n * Iframe 통신\n * @param eventName\n * @param option\n * @returns\n */\n async callToTarget<T = boolean>(eventName: IframeEventName, option?: IframeBridgeOptions): Promise<T> {\n return new Promise<T>((resolve, reject) => {\n const promiseId = `${eventName}_${this.generatePromiseId()}`;\n\n // Promise 등록\n this.pendingPromises.set(promiseId, { resolve, reject });\n\n try {\n const command: IframeBridgeCommand = {\n eventName,\n promiseId,\n option\n };\n\n console.log('[IframeBridgeCore callToIframe] command::', command);\n\n const platform = getDspExecutionEnvironment();\n\n if (platform === 'iframe') {\n window.parent.postMessage(command, '*');\n\n // TODO: 부모에서 event.source.postMessage({ promiseId, isSuccess, data }); 형태로 보내줄 수 있다면 소스 삭제\n const promise = this.pendingPromises.get(promiseId);\n if (promise) {\n this.pendingPromises.delete(promiseId);\n promise.resolve(true as T);\n }\n\n return;\n }\n\n // 지원하지 않는 플랫폼\n console.warn(\n `[IframeBridgeCore callToIframe] 현재 플랫폼(${platform})에서는 지원하지 않는 서비스(${eventName})입니다.`\n );\n\n this.pendingPromises.delete(promiseId);\n reject(new Error(`[IframeBridgeCore callToIframe] Unsupported platform: ${platform}`));\n } catch (error) {\n console.error('[IframeBridgeCore callToIframe] error::', error);\n this.pendingPromises.delete(promiseId);\n reject(error);\n }\n });\n }\n}\n","import { CommonBridge } from '../../common/common-bridge';\nimport { IframeBridgeCore } from '../core/iframe-bridge-core';\nimport { IframeBridgeResponseHandler, IframeBridgeResponseData } from '../core/iframe-bridge-core.types';\n\nimport { OpenMdiOptions } from './iframe-bridge-options.types';\nimport { IIframeBridge } from './iframe-bridge.types';\n\n/**\n * iframe(영업포탈) 전용 Bridge\n */\nexport class IframeBridge extends CommonBridge implements IIframeBridge {\n private core: IframeBridgeCore;\n\n constructor() {\n super();\n this.core = new IframeBridgeCore();\n }\n\n // 응답 핸들러 설정\n setResponseHandler(handler: IframeBridgeResponseHandler): void {\n this.core.setResponseHandler(handler);\n }\n\n // Promise 직접 제어 메서드들 추가\n handleIframeBridgePromise(response: IframeBridgeResponseData): boolean {\n return this.core.handleIframeBridgePromise(response);\n }\n\n // 유틸리티 메서드들도 추가\n hasPromise(promiseId: string): boolean {\n return this.core.hasPromise(promiseId);\n }\n\n /**\n * Iframe, App 공통으로 구현해야할 함수(test)\n */\n hello(): void {\n console.log('[IframeBridge] hello');\n }\n\n /**\n * 영업포탈 tab open\n * @param options\n * @returns\n */\n async openMdi(options: OpenMdiOptions): Promise<boolean> {\n return this.core.callToTarget('openMdi', options);\n }\n\n // TODO: 필요 플러그인들 추가\n}\n","import { getDspExecutionEnvironment, isClient, isStorybookEnv } from 'sales-frontend-utils';\n\nimport { CommonBridgeCore } from '../../common/common-bridge-core';\n\nimport type {\n NativeBridgeCommand,\n NativeBridgePromise,\n NativeBridgeOptions,\n PromiseHandleBridge,\n CallBridge\n} from './native-bridge-core.types';\n\n/**\n * Native <-> Web 처리를 위한 핵심 클래스\n * 담당: 앱 호출, Promise 관리\n */\nexport class NativeBridgeCore<TAction extends string> extends CommonBridgeCore {\n private promiseHandleName: string;\n private callBridgeName: string;\n\n constructor(callBridgeName = 'n2Bridge', promiseHandleName = 'n2bridge') {\n super();\n\n this.callBridgeName = callBridgeName;\n this.promiseHandleName = promiseHandleName;\n\n this.initializeWindowOzBridge();\n }\n\n /**\n * Promise 관리용 브릿지 객체 가져오기 (window.n2bridge)\n */\n private getPromiseHandleBridge(): PromiseHandleBridge {\n return (window as any)[this.promiseHandleName] as PromiseHandleBridge;\n }\n\n /**\n * 앱 호출용 브릿지 객체 가져오기 (window.n2Bridge)\n */\n private getCallBridge(): CallBridge {\n return (window as any)[this.callBridgeName] as CallBridge;\n }\n\n /**\n * 네이티브 통신을 위해 window.n2OzBridge 객체 초기화\n */\n private initializeWindowOzBridge(): void {\n if (!isClient()) {\n return;\n } // SSR 환경에서는 아무것도 하지 않음\n if (!(window as any)[this.promiseHandleName]) {\n (window as any)[this.promiseHandleName] = {\n promises: {},\n resolvePromise: () => {},\n finallyResolvePromise: () => {},\n callFromNative: () => {}\n };\n }\n\n const bridge = this.getPromiseHandleBridge();\n\n // 항상 최신 함수로 업데이트\n bridge.resolvePromise = this.createResolvePromiseHandler();\n bridge.finallyResolvePromise = this.createFinallyResolvePromiseHandler();\n\n if (isStorybookEnv() && window.parent) {\n // 스토리북에서는 현재 스토리가 iframe으로 로드되므로 앱에서 부모 프레임에 브릿지를 리턴해도 자식으로 전달되도록 보정하는 코드\n (window.parent as any)[this.promiseHandleName] = bridge;\n window.parent.dispatchEvent = (...args) => window.dispatchEvent.apply(null, args);\n }\n }\n\n /**\n * Promise 처리 함수(Native에서 호출)\n * @returns\n */\n private createResolvePromiseHandler() {\n return (promiseId: string, data?: any, error?: any) => {\n console.log('[NativeBridgeCore resolvePromise]::', promiseId, data, error);\n\n const bridge = this.getPromiseHandleBridge();\n\n const promise: NativeBridgePromise | undefined = bridge.promises[promiseId];\n if (!promise) {\n console.error('[NativeBridgeCore resolvePromise] Promise not found::', promiseId);\n\n return;\n }\n\n try {\n if (error) {\n promise.reject(error);\n this.cleanupPromise(promiseId);\n\n return;\n }\n\n promise.resolve(data);\n this.cleanupPromise(promiseId);\n } catch (err) {\n console.error('[NativeBridgeCore resolvePromise] Error handling promise::', err);\n this.cleanupPromise(promiseId);\n }\n };\n }\n\n /**\n * Promise 최종 처리 함수\n * @returns\n */\n private createFinallyResolvePromiseHandler() {\n return (promiseId: string, data?: any, error?: any) => {\n const bridge = this.getPromiseHandleBridge();\n\n const promise: NativeBridgePromise | undefined = bridge.promises[promiseId];\n if (!promise) {\n console.error('[NativeBridgeCore resolvePromise] Promise not found::', promiseId);\n\n return;\n }\n\n try {\n if (error) {\n promise.reject(error);\n this.cleanupPromise(promiseId);\n\n return;\n }\n\n promise.resolve(data);\n this.cleanupPromise(promiseId);\n } catch (err) {\n console.error('[NativeBridgeCore resolvePromise] Error handling promise::', err);\n this.cleanupPromise(promiseId);\n }\n };\n }\n\n /**\n * 네이티브 통신\n * @param action\n * @param options\n * @returns\n */\n async callToTarget<T>(action: TAction, option?: NativeBridgeOptions): Promise<T> {\n return new Promise<T>((resolve, reject) => {\n const promiseId = `${action}_${this.generatePromiseId()}`;\n console.log('[NativeBridgeCore callToNative] promiseId::', promiseId);\n\n const bridge = this.getPromiseHandleBridge();\n\n // 바로 window.promiseHandler에 promises에 저장\n bridge.promises[promiseId] = {\n resolve: (value: T) => {\n resolve(value);\n },\n reject: (reason?: any) => {\n reject(reason);\n }\n };\n\n try {\n const command: NativeBridgeCommand = {\n action,\n promiseId,\n option\n };\n\n console.log('[NativeBridgeCore callToNative] command::', command);\n\n const platform = getDspExecutionEnvironment();\n\n if (platform === 'android-webview') {\n const callBridge = this.getCallBridge();\n callBridge?.callFromWeb?.(JSON.stringify(command));\n\n return;\n }\n\n if (platform === 'ios-webview') {\n (window.webkit?.messageHandlers as any)?.[this.callBridgeName]?.postMessage(JSON.stringify(command));\n\n return;\n }\n\n // 지원하지 않는 플랫폼\n console.warn(\n `[NativeBridgeCore callToNative] 현재 플랫폼(${platform})에서는 지원하지 않는 서비스(${action})입니다.`\n );\n this.cleanupPromise(promiseId);\n reject(new Error(`[NativeBridgeCore callToNative] Unsupported platform: ${platform}`));\n } catch (error) {\n console.error('[NativeBridgeCore callToNative] error::', error);\n this.cleanupPromise(promiseId);\n reject(error);\n }\n });\n }\n\n /**\n * promiseId를 초기화 해줍니다.\n * @param promiseId\n */\n private cleanupPromise(promiseId: string): void {\n const bridge = this.getPromiseHandleBridge();\n delete bridge.promises[promiseId];\n }\n}\n","import { CommonBridge } from '../../common/common-bridge';\nimport { NativeBridgeCore } from '../core/native-bridge-core';\n\nimport type {\n OnAuthenticationResultRequest,\n OnAuthenticationResultResponse,\n GetAccessTokenResponse\n} from './native-bridge-dto.types';\nimport type {\n ShowWebPopupOptions,\n CreateReportExOptions,\n CommonOzBridgetResponseType,\n DownloadOzdOptions\n} from './native-bridge-options.types';\nimport type { INativeBridge, NativeAction } from './native-bridge.types';\n\n/**\n * App - Web Bridge\n */\nexport class NativeBridge extends CommonBridge implements INativeBridge {\n private core: NativeBridgeCore<NativeAction>;\n\n constructor() {\n super();\n this.core = new NativeBridgeCore<NativeAction>();\n }\n\n /**\n * Iframe, App 공통으로 구현해야할 함수\n */\n hello(): void {\n console.log('[NativeBridge] hello');\n }\n\n /**\n * getParameterMap\n * @returns\n */\n async getParameterMap<T = any>(): Promise<T> {\n return this.core.callToTarget<T>('getParameterMap');\n }\n\n async dismissPopup<T = any>(options?: any): Promise<T> {\n return this.core.callToTarget<T>('dismissPopup', options);\n }\n\n /**\n *\n * @param options\n * @returns\n */\n async showWebPopup<T = any>(options: ShowWebPopupOptions): Promise<T> {\n return this.core.callToTarget<T>('showWebPopup', options);\n }\n\n /**\n *\n * @param options\n * @returns\n */\n async jumpSafari<T = any>(options: ShowWebPopupOptions): Promise<T> {\n return this.core.callToTarget<T>('jumpSafari', options);\n }\n\n /**\n * 기능명: 본인인증 결과 정보 넘기기\n * 목적: NXL One 에서 본인인증 결과 값을 네이티브로 넘기기 위함\n * @param options\n * @returns\n */\n async onAuthenticationResult(options: OnAuthenticationResultRequest): Promise<OnAuthenticationResultResponse> {\n return this.core.callToTarget('onAuthenticationResult', options);\n }\n\n /**\n * Access Token 가져오기\n * @returns\n */\n async getAccessToken(): Promise<GetAccessTokenResponse> {\n return this.core.callToTarget('getAccessToken');\n }\n\n /**\n * ### Bridge for Oz\n * 설정한 뷰어 파라미터를 기준으로 뷰어에 새로운 보고서를 바인딩합니다.\n * @example\n * ```tsx\n * // 사용 예시\n * Bridge.native.createReportEx({ param: \"connection.openfile=sample.ozd\" });\n * ```\n */\n createOZViewer<T = any>(options: CreateReportExOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>(\n 'createOZViewer',\n Object.assign({ delimiter: '\\n' }, options)\n );\n }\n\n /**\n * ### Bridge for Oz\n * OZ 뷰어를 닫습니다\n * @example\n * ```tsx\n * // 사용 예시\n * Bridge.native.hideViewer();\n * ```\n */\n hideOZViewer<T = any>(): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('hideOZViewer');\n }\n\n /**\n * ### Bridge for Oz\n * 오즈 파라미터에서 사용할 OZD를 다운받는 브릿지입니다\n * @example\n * ```tsx\n * const data = [\n * { name: \"문서1\", file: [\"doc1.ozd\"], complete: true },\n * { name: \"문서2\", file: [\"doc2.ozd\", \"doc3.ozd\"], complete: true }\n * ]\n * await Bridge.native.downloadDocument(data)\n * ```\n * returnData는 file 경로가 절대경로로 매핑되어 돌아온다\n * ```json\n * {\n * \"action\":\"downloadDocument\",\n * \"data\":[\n * {\n * \"name\":\"aaa\",\n * \"file\":[\n * \"/data/user/0/com.hanwhalife.ssp.stg/files/A0010.ozd\",\n * \"/data/user/0/com.hanwhalife.ssp.stg/files/C0401.ozd\"\n * ],\n * \"complete\":false\n * },\n * {\n * \"name\":\"bbb\",\n * \"file\":[\n * \"/data/user/0/com.hanwhalife.ssp.stg/files/A1500.ozd\"\n * ],\n * \"complete\":false\n * }\n * ]\n * }\n * ```\n */\n async downloadDocument<T = any>(options: DownloadOzdOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('downloadDocument', options);\n }\n\n // TODO: 필요 플러그인들 추가\n}\n","import { CommonBridge } from '../../common/common-bridge';\nimport { NativeBridgeCore } from '../core/native-bridge-core';\n\nimport type {\n GetInformationOptions,\n GetGlobalOptions,\n SetGlobalOptions,\n ScriptExOptions,\n ScriptOptions,\n TriggerExternalEventByDocIndexOptions,\n TriggerExternalEventOptions,\n SavePdfOptions,\n SaveSignImgOptions,\n CommonOzBridgetResponseType,\n UpdateOzdOptions,\n createOzPdfViewerOptions\n} from './native-bridge-oz-options.types';\nimport type { INativeBridgeOz, NativeOzAction } from './native-bridge-oz.types';\n\n/**\n * App - Web Bridge(for OZ)\n */\nexport class NativeBridgeOz extends CommonBridge implements INativeBridgeOz {\n private core: NativeBridgeCore<NativeOzAction>;\n\n constructor() {\n super();\n this.core = new NativeBridgeCore<NativeOzAction>('n2OzBridge', 'n2OzBridge');\n }\n\n /**\n * Iframe, App 공통으로 구현해야할 함수\n */\n hello(): void {\n console.log('[NativeBridge] hello');\n }\n\n /**\n * ### Bridge for Oz\n * 오즈 뷰어의 정보를 가져옵니다\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.getInformation({ command: \"INPUT_JSON\" });\n * ```\n */\n async getInformation<T = any>(options: GetInformationOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('getInformation', options);\n }\n\n /**\n * ### Bridge for Oz\n * 전역 변수 값을 가져옵니다.\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.getGlobal({ key: \"AAA\" })\n * ```\n */\n async getGlobal<T = any>(options: GetGlobalOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('getGlobal', Object.assign({ docIndex: 0 }, options));\n }\n\n /**\n * ### Bridge for Oz\n * 전역 변수 값을 설정합니다.\n * @example\n * ```tsx\n * // 사용 예시\n * Bridge.native.setGlobal({ key: \"AAA\", value: JSON.stringify({ aaa: 111 }) });\n * ```\n */\n setGlobal<T = any>(options: SetGlobalOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('setGlobal', Object.assign({ docIndex: 0 }, options));\n }\n\n /**\n * ### Bridge for Oz\n * 오즈 뷰어의 기능을 제어합니다.\n * @example\n * ```tsx\n * // 사용 예시\n * const command = `movepage=2`;\n * Bridge.native.script({ command });\n * ```\n */\n script<T = any>(options: ScriptOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('script', options);\n }\n /**\n * ### Bridge for Oz\n * 오즈 뷰어의 기능을 제어합니다.\n * - `param`을 통해 오즈 뷰어의 parameter를 변경할수 있습니다\n * @example\n * ```tsx\n * // 사용 예시\n * const command = `movepage=2`;\n * const param1 = `eform.show_prev_next_input=true`;\n * const param2 = `eform.signpad_iconposition=sign_bottom`;\n * // param이 여러개인경우 \\n으로 묶는다\n * const param = `${param1}\\n${param2}`;\n * Bridge.native.scriptEX({ command, param });\n * ```\n */\n scriptEx<T = any>(options: ScriptExOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>(\n 'scriptEx',\n Object.assign({ delimiter: '\\n' }, options)\n );\n }\n\n /**\n * ### Bridge for Oz\n * 현재 보고서의 `OnExternalEvent` 이벤트를 실행하고, `OnExternalEvent` 이벤트에서 전달한 값을 string 형태로 리턴받습니다.\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.triggerExternalEvent({ param1: 'signer' });\n * ```\n */\n async triggerExternalEvent<T = any>(options: TriggerExternalEventOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>(\n 'triggerExternalEvent',\n Object.assign({ param1: '', param2: '', param3: '', param4: '' }, options)\n );\n }\n\n /**\n * ### Bridge for Oz\n * 지정한 보고서의 `OnExternalEvent` 이벤트를 실행하고, `OnExternalEvent` 이벤트에서 전달한 값을 string 형태로 리턴받습니다.\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.triggerExternalEventByDocIndex({ docIndex: 0, param1: 'signer' });\n * ```\n */\n async triggerExternalEventByDocIndex<T = any>(\n options: TriggerExternalEventByDocIndexOptions\n ): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>(\n 'triggerExternalEventByDocIndex',\n Object.assign({ param1: '', param2: '', param3: '', param4: '' }, options)\n );\n }\n\n /**\n * ### Bridge for Oz\n * 오즈 파라미터에서 사용할 폰트 설정들을 조회하는 브릿지입니다\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.getOzFontParam()\n * ```\n */\n async getOzFontParam<T = any>(): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('getOzFontParam');\n }\n\n /**\n * ### Bridge for Oz\n * 서식의 진행중/완료 상태를 업데이트하는 브릿지\n */\n async updateOzDocumentStatus<T = any>(options: UpdateOzdOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('updateOzDocumentStatus', options);\n }\n\n /**\n * ### Bridge for Oz\n * 오즈뷰어에 출력되고있는 서식을 PDF로 export\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.savePdf({ exportType: \"PDF\", fileName: \"test.pdf\", startPage: 1, endPage: 1 })\n * ```\n */\n async savePdf<T = any>(options: SavePdfOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>(\n 'savePdf',\n Object.assign({ delimiter: '\\n' }, options)\n );\n }\n\n /**\n * ### Bridge for Oz\n * 오즈뷰어에 출력되고있는 서식 중 서명부분을 이미지로 export\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.saveSignImg({ exportType: \"IMG\", fileName: \"sign.png\", signImageKey: \"SIGN_IMG\" })\n * ```\n */\n async saveSignImg<T = string>(options: SaveSignImgOptions): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('saveSignImg', options);\n }\n\n /**\n * ### Bridge for Oz\n * 오즈뷰어에서 생성한 PDF를 보여주는 뷰어를 연다\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.createOzPdfViewer({ filename: \"total.pdf\", filepaths: \"/data/0/app/total.pdf\", password: \"\" })\n * ```\n */\n async createOzPdfViewer<T>(options: createOzPdfViewerOptions): Promise<CommonOzBridgetResponseType<T>> {\n // 비밀번호는 입력안하면 빈값으로 보낸다\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('createOzPdfViewer', options);\n }\n\n /**\n * ### Bridge for Oz\n * PDF뷰어 닫기\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.hideOzPdfViewer()\n * ```\n */\n async hideOzPdfViewer<T>(): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('hideOzPdfViewer');\n }\n\n /**\n * 로더 컴포넌트 show\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.showLoader()\n * ```\n */\n async showLoader<T>(): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('showLoader');\n }\n\n /**\n * 로더 컴포넌트 hide\n * @example\n * ```tsx\n * // 사용 예시\n * await Bridge.native.hideLoader()\n * ```\n */\n async hideLoader<T>(): Promise<CommonOzBridgetResponseType<T>> {\n return this.core.callToTarget<CommonOzBridgetResponseType<T>>('hideLoader');\n }\n\n // TODO: 필요 플러그인들 추가\n}\n","import { IframeBridge } from './iframe/bridge/iframe-bridge';\nimport { IframeBridgeCore } from './iframe/core/iframe-bridge-core';\nimport { NativeBridge } from './native/bridge/native-bridge';\nimport { NativeBridgeOz } from './native/bridge-oz/native-bridge-oz';\nimport { NativeBridgeCore } from './native/core/native-bridge-core';\n\nexport const Bridge = {\n native: new NativeBridge(),\n nativeOz: new NativeBridgeOz(),\n iframe: new IframeBridge(),\n nativeCore: new NativeBridgeCore(),\n iframeCore: new IframeBridgeCore()\n};\n","/**\n * OZ 뷰어에 관련된 이벤트 목록\n */\nexport enum OZViewerEvent {\n /**\n * 보고서 생성 단계별로 발생하는 이벤트\n * - `OZViewerProgressEvent` 이벤트와 매칭된다\n * - `viewer.progresscommand=true` 설정이 필요하다\n * - `OZViewerProgressEvent`와 매칭된다\n */\n OZProgressCommand = 'OZProgressCommand',\n /**\n * 에러 발생 시 발생하는 이벤트\n * - `viewer.errorcommand=true` 설정이 필요하다\n * - `OZViewerErrorEvent`와 매칭된다\n */\n OZErrorCommand = 'OZErrorCommand',\n /**\n * 화면에 표시되는 페이지가 변경된 후 발생하는 이벤트\n * - `viewer.pagechangecommand=true` 설정이 필요하다\n * - `OZViewerChangeEvent`와 매칭된다\n */\n OZPageChangeCommand = 'OZPageChangeCommand',\n /**\n * 화면에 표시되는 보고서가 변경된 후 발생하는 이벤트\n * - `viewer.reportchangecommand=true` 설정이 필요하다\n * - `OZViewerChangeEvent`와 매칭된다\n */\n OZReportChangeCommand = 'OZReportChangeCommand',\n /**\n * `OZUserEvent` _TriggerOCXUserEvent 함수 실행 시 발생하는 이벤트\n * - `OZViewerUserEvent`와 매칭된다\n */\n OZUserEvent = 'OZUserEvent',\n /**\n * `OZPageBindCommand` 페이지가 바인딩된 후 발생하는 이벤트\n * - `viewer.pagebindcommandinterval` 파라미터에서 설정한 주기별로 동작\n * - ex) `viewer.pagebindcommandinterval=500`\n * - `OZViewerPageBindEvent`와 매칭된다\n */\n OZPageBindCommand = 'OZPageBindCommand',\n /**\n * 사용자가 입력 컴포넌트를 클릭하거나 값을 변경하여 이벤트가 실행된 경우 발생되는 이벤트'\n * - 호환되는 이벤트\n * - `OnClick`\n * - `OnFinish`\n * - `OnFocus`\n * - `OnKillFocus`\n * - `OnPause`\n * - `OnPlay`\n * - `OnStop`\n * - `OnValueChanged` \n * - `eform.inputeventcommand=true` 설정이 필요하다\n * - `OZEFormInputEvent`와 매칭된다\n */\n OZEFormInputEventCommand = 'OZEFormInputEventCommand',\n /**\n * 보고서 저장 시 발생하는 이벤트\n * - `OZExportEvent`와 매칭된다\n */\n OZExportCommand = 'OZExportCommand',\n\n /**\n * 오즈뷰어, (오즈전용)PDF 뷰어 내 버튼 클릭시 발생하는 이벤트\n * - `OZBtnTouchEvent`와 매칭된다\n */\n OZBtnTouchEvent = 'btnTouchEvent'\n}\n\n/**\n * `OZViewerEvent.OZProgressCommand` 이벤트의 `e.detail` 타입 정의\n * ```tsx\n * import { OZViewerEvent } from 'sales-frontend-bridge';\n * window.addEventListener(OZViewerEvent.OZProgressCommand, (e) => { console.log(e.detail); });\n * ```\n *\n * `step과` `state`는 step => state 방식으로 진행된다\n *\n * 예시\n * ```bash\n * # step0 뷰어실행\n * [step=0][state=0] # 뷰어 실행 시작\n * [step=0][state=1] # 뷰어 실행 완료\n * # step2 보고서 템플릿 생성\n * [step=1][state=0] # 보고서 템플릿 생성 시작\n * [step=1][state=1] # 보고서 템플릿 생성 완료\n * ```\n */\nexport type OZViewerProgressEvent = {\n /**\n * 보고서 생성 단계\n * - 0 : 뷰어 실행 옵션 설정\n * - 1 : 보고서 파일 다운로드\n * - 2 : 보고서 템플릿 생성\n * - 3 : 데이터 다운로드\n * - 4 : 보고서 바인딩\n */\n step: '0' | '1' | '2' | '3' | '4';\n /**\n * 보고서 생성 상태\n * - 1 : 시작\n * - 2 : 완료\n */\n state: '1' | '2';\n /** 보고서 이름 */\n reportname: string;\n};\n\n/**\n * `OZViewerEvent.OZErrorCommand` 이벤트의 `e.detail` 타입 정의\n * ```tsx\n * import { OZViewerEvent } from 'sales-frontend-bridge';\n * window.addEventListener(OZViewerEvent.OZErrorCommand, (e) => { console.log(e.detail); });\n * ```\n */\nexport type OZViewerErrorEvent = {\n /** 에러 메시지 코드 */\n code: string;\n /** 에러 기본 메시지 */\n message: string;\n /** 에러 상세 메시지 */\n detailmessage: string;\n /** 보고서 이름 */\n reportname: string;\n};\n\n/**\n * 두 이벤트의 공용 타입\n * - `OZViewerEvent.OZPageChangeCommand` 이벤트의 `e.detail` 타입 정의\n * - `OZViewerEvent.OZReportChangeCommand` 이벤트의 `e.detail` 타입 정의\n * ```tsx\n * import { OZViewerEvent } from 'sales-frontend-bridge';\n * window.addEventListener(OZViewerEvent.OZPageChangeCommand, (e) => { console.log(e.detail); });\n * window.addEventListener(OZViewerEvent.OZViewerChangeCommand, (e) => { console.log(e.detail); });\n * ```\n */\nexport type OZViewerChangeEvent = {\n /** 보고서 인덱스(zero-based index) */\n docindex: number;\n};\n\n/**\n * `OZViewerEvent.OZUserEvent` 이벤트의 `e.detail` 타입 정의\n * ```tsx\n * import { OZViewerEvent } from 'sales-frontend-bridge';\n * window.addEventListener(OZViewerEvent.OZUserEvent, (e) => { console.log(e.detail); });\n * ```\n */\nexport type OZViewerUserEvent = {\n /** _TriggerOCXUserEvent 함수에서 전달한 첫 번째 값 */\n param1: string;\n /** _TriggerOCXUserEvent 함수에서 전달한 두 번째 값 */\n param2: string;\n /** _TriggerOCXUserEvent 함수에서 전달한 세 번째 값 */\n param3: string;\n /** 보고서 인덱스(zero-based index) */\n docindex: string;\n};\n\n/**\n * `OZViewerEvent.OZPageBindCommand` 이벤트의 `e.detail` 타입 정의\n * ```tsx\n * import { OZViewerEvent } from 'sales-frontend-bridge';\n * window.addEventListener(OZViewerEvent.OZPageBindCommand, (e) => { console.log(e.detail); });\n * ```\n */\nexport type OZViewerPageBindEvent = {\n /** 보고서 인덱스(zero-based index) */\n docindex: string;\n /** 바인딩된 페이지 번호 */\n pagecount: string;\n};\n\nexport type OZEFormInputEvent = {\n /** 보고서 인덱스(zero-based index) */\n docindex: string;\n /** 이벤트가 발생한 컴포넌트의 FormID. FormID가 설정되지 않은 경우 컴포넌트의 이름이 리턴됨 */\n formid: string;\n eventname: string;\n mainscreen: boolean;\n}\n\nexport type OZExportEvent = {\n /**\n * 저장 성공 여부\n * - `0` 실패\n * - `1` 성공\n */\n code: \"0\" | \"1\"\n /** 파일 경로 */\n path: string;\n /** 파일 이름 */\n filename: string;\n /** 저장된 페이지 수. 여러 페이지의 보고서를 한 페이지로 저장한 경우에는 1이 리턴됨 */\n pagecount: string;\n /**\n * 뷰어가 실제 저장한 모든 파일의 경로와 이름.\n * \n * 파일이 여러 개일 경우 `|`를 구분자로 하여 리턴됨\n */\n filepaths: string;\n}\n\nexport type OZBtnTouchEvent = {\n /** 버튼의 아이디 혹은 텍스트 */\n btnID: string;\n /**\n * 어떤 패널의 버튼을 눌렀는지 구분\n * - `category` 서식 전체목록의 버튼\n */\n type: \"category\"\n}","import { CSSProperties } from 'react';\n\n/**\n * 모든페이지 공용으로 쓰는 OZ 뷰어파라미터\n */\nexport const commonOzParam = [\n `information.debug = true`,\n `global.inheritparameter=true`,\n `global.concatpage=true`,\n `global.eachpagenumberatconcatpage=true`,\n `eform.signpad_type=embedded`,\n // `eform.signpad_type=keypad`,\n `eform.show_prev_next_input=true`,\n // `eform.signpad_prev_next_iconposition=sign_top_left`,\n `eform.signpad_prev_next_iconposition=sign_top`,\n `eform.inputcomponent_toolbar_button_json=${JSON.stringify({\n // 서명패드 버튼 배열 수정\n \"all\": {\n // 왼쪽에 이전, 다시쓰기 버튼\n \"left_align\": \"prev,clear\",\n // 오른쪽에 완료 성명,서명 불러오기, 다음\n \"right_align\": \"ok,reusablesign,next\"\n }\n })}`,\n `eform.signpad_show_draw_erase_button=false`,\n `eform.signpad_viewtype=keepratioandfittoframe`,\n `eform.radiobutton_type=ensurevisible_at_prev_next`,\n `eform.checkbox_type=ensurevisible_at_prev_next`,\n `eform.prev_next_required_rule=required_only`,\n `eform.prev_next_navigation_rule=required_only`,\n `eform.prev_next_constraint_rule=empty_only`,\n `viewer.pagenavigate_by_prev_next=true`,\n `eform.imagepicker_id_info=${JSON.stringify({\n ids: [\n {\n id: '1',\n name: '운전면허증_최신',\n size: '86x54',\n margin: '3',\n mask: [\n { name: '주민번호', area: '0,0,0,0' },\n { name: '운전면허번호', area: '0,0,0,0' },\n { name: '발급번호', area: '0,0,0,0' },\n { name: '발급날짜', area: '0,0,0,0' }\n ]\n },\n {\n id: '2',\n name: '운전면허증_구형',\n size: '86x54',\n margin: '3',\n mask: [\n { name: '주민번호', area: '0,0,0,0' },\n { name: '운전면허번호', area: '0,0,0,0' },\n { name: '발급번호', area: '0,0,0,0' },\n { name: '발급날짜', area: '0,0,0,0' }\n ]\n },\n {\n id: '3',\n name: '주민등록증',\n size: '86x54',\n margin: '3',\n mask: [\n { name: '주민번호', area: '0,0,0,0' },\n { name: '발급날짜', area: '0,0,0,0' }\n ]\n },\n {\n id: '4',\n name: '외국인등록증 앞면',\n size: '86x54',\n margin: '3',\n mask: [\n { name: '외국인등록번호1', area: '0,0,0,0' },\n { name: '외국인등록번호2', area: '0,0,0,0' },\n { name: '성명', area: '0,0,0,0' },\n { name: '성별', area: '0,0,0,0' },\n { name: '국가지역', area: '0,0,0,0' },\n { name: '체류자격', area: '0,0,0,0' },\n { name: '발급일자', area: '0,0,0,0' }\n ]\n },\n { id: '5', name: '외국인등록증 뒷면', size: '86x54', margin: '3', mask: [{ name: '외국인', area: '0,0,0,0' }] }\n ],\n choice: { title: '신분증을 선택하세요.', items: '1,2,3,4,5' }\n })}`,\n `eform.imagepicker_camera_iconposition = camera_top`,\n `eform.inputeventcommand=true`,\n // `viewer.zoombymouse=false`,\n `viewer.pagedisplay=singlepagecontinuous`,\n `viewer.usetoolbar=false`,\n `viewer.usestatusbar=false`,\n `viewer.useprogressbar=false`,\n `viewer.zoom=137`,\n `viewer.viewmode=fittowidth`,\n `viewer.hidehorizontalscroll=false`,\n `viewer.progresscommand=true`,\n `viewer.pagechangecommand=true`,\n `viewer.exportcommand=true`,\n `viewer.errorcommand=true`,\n `viewer.reportchangecommand=true`,\n `viewer.pagebindcommandinterval=500`\n];\n\n/**\n * PDF export시 공통으로 필요한 파라미터\n *\n * 제공하지 않는 파라미터\n * - filename\n * - ex) `pdf.filename=test.pdf`\n * - pages\n * - ex) `export.pages=1-2`\n * - userpassword\n * - ex) `pdf.userpassword=123213`\n */\nexport const commonPdfExportParam = [\n // `pdf.filename=${\"test.pdf\"}`,\n // `export.pages=${i.startPage}-${i.endPage}`,\n // \"pdf.userpassword=$pdfPassword\",G\n 'export.pagerange=range',\n 'export.confirmsave=false',\n 'export.mode=silent',\n // pdf에 폰트를 포함시킨다\n `pdf.fontembedding=true`,\n // 폰트를 포함시킬때 사용하는 글자만 포함시킨다\n `pdf.fontembedding_subset=true`\n];\n\nexport const wrapperStyle: CSSProperties = { display: 'flex', flexFlow: 'column', gap: '10px' };\nexport const btnStyle: CSSProperties = { border: '1px solid red', minHeight: '40px' };\n","import { useCallback } from 'react';\n\nimport { Bridge } from '../bridge';\n\nimport { commonOzParam } from './constant';\nimport { fetchFont } from \"./util\";\n\n/**\n * 문서코드 : { inputJson, extraParam } 매핑 맵\n */\nexport type ExtraDataType = Record<string, { inputJson?: Record<string, string>; extraParam?: string[] }>;\ntype Props = {\n documentList: string[]\n extraData?: ExtraDataType;\n};\nexport function useCreateReport({ documentList, extraData = {} }: Props) {\n\n const CreateReport = useCallback(async () => {\n if (documentList.length === 0) {\n throw new Error('문서목록이 비어있습니다');\n }\n const fontParms = await fetchFont();\n const connectionParams = documentList.map((file, idx) =>\n idx === 0 ? `connection.openfile=${file}` : `child${idx}.connection.openfile=${file}`\n );\n const childCount = documentList.length - 1;\n const extraParams = documentList.map((file, idx) => {\n const result: string[] = [];\n\n // 파일 이름에서 경로 및 확장자 제거 (ex: \"A0010.ozd\" → \"A0010\")\n const docCode = file.replace(/^.*[\\\\/]|(\\.[^/.]+)$/g, '');\n\n const prefix = idx === 0 ? '' : `child${idx}.`;\n\n // 문서코드에 바인딩할 데이터가 있는지 확인\n const data = extraData[docCode] || {};\n\n if (data.inputJson) {\n result.push(`${prefix}connection.inputjson=${JSON.stringify(data.inputJson)}`);\n }\n\n if (data.extraParam) {\n result.push(data.extraParam.map((param) => `${prefix}${param}`).join('\\n'));\n }\n\n return result;\n });\n\n // createReport용 ozParam\n const params = [\n ...(childCount > 0 ? [`viewer.childcount=${childCount}`] : []),\n ...connectionParams,\n ...commonOzParam,\n ...fontParms,\n ...extraParams.flat(1)\n ];\n\n Bridge.native.createOZViewer({ param: params.join('\\n') });\n }, [documentList, extraData]);\n\n return { CreateReport };\n}\n","import { Bridge } from '../bridge';\nimport { DocumentInfo } from '../native/bridge/native-bridge-options.types';\n\nexport async function fetchDocument(options: Array<DocumentInfo>) {\n // 브릿지에 다운로드 요청\n const { data } = await Bridge.native.downloadDocument<Array<DocumentInfo>>({ data: options });\n\n // start,end 페이지 매핑\n return data.map((i) => ({ ...i, startPage: 0, endPage: 0 }));\n}\n\nexport async function fetchFont() {\n const { data: fontMap } = await Bridge.nativeOz.getOzFontParam<Record<string, string>>();\n\n const fontParms = Object.keys(fontMap).map((i) => `font.${i}=${fontMap[i]}`);\n\n return fontParms;\n}\n\nexport function categorizeByPageRange(data: DocumentInfo[], pageCounts: number[]) {\n let pageStart = 1; // 시작 페이지는 1로 설정\n const result: DocumentInfo[] = [];\n let pageIndex = 0; // pageCounts에서 인덱스를 추적\n\n // 각 항목에 대해 페이지 범위 계산\n data.forEach((item) => {\n const startPage = pageStart; // 첫 파일의 시작 페이지 저장\n let endPage = pageStart;\n item.file.forEach(() => {\n const pageCount = pageCounts[pageIndex] as number;\n const pageEnd = pageStart + pageCount - 1;\n\n // 페이지 시작을 다음 파일의 끝 페이지 + 1로 설정\n pageStart = pageEnd + 1;\n pageIndex++;\n endPage = pageEnd;\n });\n\n // 각 name에 대해 첫 번째 파일의 시작 페이지만 startPage로 설정\n result.push({\n ...item,\n startPage,\n endPage\n });\n });\n\n return result;\n}\n\n/**\n * 주어진 파일 경로에서 파일 이름만 추출합니다.\n * @param filePath 파일 경로 (예: `/a/b/c/file.ext`)\n * @returns 파일 경로에서 추출한 파일 이름 (확장자 제외, 예: `file`)\n * @throws {Error} 유효하지 않은 파일 경로일 경우 예외 처리\n */\nexport function extractFileName(filePath: string): string {\n // 예외 처리: filePath가 null, undefined, 빈 문자열이거나 문자열이 아닌 경우\n if (!filePath || typeof filePath !== 'string') {\n throw new Error('유효한 파일 경로를 입력해주세요.');\n }\n\n // 파일 경로에서 파일 이름만 추출 (경로와 확장자 제거)\n const fileName = filePath.replace(/^.*\\/|(\\.[^/.]+)$/g, '');\n\n // 예외 처리: 파일 이름이 없는 경우\n if (!fileName) {\n throw new Error('파일 경로에서 파일 이름을 추출할 수 없습니다.');\n }\n\n return fileName;\n}\n\nexport function getFileListByGlobalIndex(index: number, data: DocumentInfo[]) {\n let currentIndex = 0;\n\n for (const form of data) {\n const fileCount = form.file.length;\n\n if (index >= currentIndex && index < currentIndex + fileCount) {\n // index가 이 서식의 파일 범위 안에 있음\n return form;\n }\n\n currentIndex += fileCount;\n }\n\n return null;\n}\n","import { useMemo, useState } from \"react\";\n\nimport { DocumentInfo } from \"../native/bridge/native-bridge-options.types\";\n\nexport function useDocumentInfo(initialValue: DocumentInfo[]) {\n\n /** 서식 목록 */\n const [documentInfo, setDocumentInfo] = useState<DocumentInfo[]>([...initialValue]);\n\n /** 글로벌 문서 목록 */\n const documentList = useMemo(() => documentInfo.map((i) => i.file).flat(1), [documentInfo]);\n\n /** 글로벌 문서 맵 { 문서이름: 글로벌 인덱스} */\n const documentIndexMap = documentList.reduce((acc, cur, index) => {\n acc[cur] = index;\n\n return acc;\n }, {} as Record<string, number>)\n\n /** 글로벌 문서 맵 { 문서이름: 속한 서식 } */\n const documentTemplateMap = useMemo(() => documentInfo.reduce((map, doc) => {\n doc.file.forEach(file => {\n map[file] = { ...doc };\n });\n\n return map;\n\n }, {} as Record<string, DocumentInfo>), [documentInfo]);\n\n // 글로벌 문서 맵 { 서식이름: 서식 }\n const nameTemplateMap = documentInfo.reduce((acc, doc) => {\n acc[doc.name] = doc;\n\n return acc;\n }, {} as Record<string, DocumentInfo>);\n\n // 글로벌 문서 배열 { 글로벌인덱스: [서식에 속한 배열 글로벌인덱스] }\n const groupIndexes = useMemo(() => (\n documentInfo.reduce((acc, item) => {\n item.file.forEach((file) => {\n const currentIndex = documentIndexMap[file] as number;\n\n // 각 globalIndex에 해당하는 그룹 인덱스를 추가\n if (!acc[currentIndex]) {\n acc[currentIndex] = []; // 배열로 초기화\n }\n\n // 해당 파일이 속한 그룹의 인덱스를 추가\n item.file.forEach((groupFile) => {\n acc[currentIndex]!.push(documentIndexMap[groupFile]!);\n });\n });\n\n return acc;\n }, [] as Array<Array<number>>)\n ), [documentIndexMap, documentInfo])\n\n return {\n setDocumentInfo,\n documentInfo,\n documentList,\n documentTemplateMap,\n documentIndexMap,\n nameTemplateMap,\n groupIndexes,\n }\n}","import { useCallback, useEffect } from 'react';\n\nimport { OZViewerEvent } from \"./oz-event.types\";\n\ntype Props<T, R = void> = {\n event: OZViewerEvent;\n handler: (e: CustomEvent<T>) => Promise<R>;\n};\n/**\n * OZ 뷰어 콜백 이벤트를 구독해주는 Hook\n */\nexport function useOzEventListener<T, R = void>({ event, handler }: Props<T, R>) {\n const handleEvent = useCallback(\n async (e: Event) => {\n const customEvent = e as CustomEvent<T>;\n\n return await handler(customEvent);\n },\n [handler]\n );\n\n useEffect(() => {\n window.addEventListener(event, handleEvent);\n\n return () => {\n window.removeEventListener(event, handleEvent);\n };\n }, [handleEvent, event]);\n}\n"]}
|