{"version":3,"file":"knowledges-57d1ca67.js","sources":["../../../node_modules/void-elements/index.js","../../../node_modules/html-parse-stringify/dist/html-parse-stringify.module.js","../../../node_modules/react-i18next/dist/es/TransWithoutContext.js","../../../node_modules/react-i18next/dist/es/Trans.js","../../../node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js","../../../app/javascript/components/common/Loaders/Loader.tsx","../../../node_modules/@rails/actioncable/app/assets/javascripts/action_cable.js","../../../app/javascript/channels/consumer.ts","../../../app/javascript/commons/dateFormatter.ts","../../../node_modules/file-saver/dist/FileSaver.min.js","../../../app/javascript/components/templates/knowledges/CsvExportDetailModal.tsx","../../../app/javascript/components/templates/knowledges/KnowledgeBase.tsx","../../../app/javascript/components/templates/knowledges/SearchInput.tsx","../../../app/javascript/components/templates/knowledges/conversation/ConversationRelatedKnowledgeList.tsx","../../../app/javascript/constants/constants.ts","../../../app/javascript/components/templates/knowledges/RelatedKnowledgeList.tsx","../../../app/javascript/components/templates/knowledges/QaResponseField.tsx","../../../app/javascript/components/templates/knowledges/KnowledgeDetailModal.tsx","../../../app/javascript/components/templates/knowledges/KnowledgeCreateModal.tsx","../../../app/javascript/components/templates/knowledges/KnowledgeEditModal.tsx","../../../app/javascript/components/templates/knowledges/KnowledgeMailDataSourceThreads.tsx","../../../app/javascript/components/templates/knowledges/conversation/ConversationSearchInput.tsx","../../../app/javascript/components/templates/knowledges/SearchForm.tsx","../../../app/javascript/components/templates/knowledges/AddMemberModal.tsx","../../../app/javascript/components/templates/knowledges/EditMemberModal.tsx","../../../app/javascript/components/templates/knowledges/MemberListModal.tsx","../../../app/javascript/components/templates/knowledges/KnowledgeLicenseChangeModal.tsx","../../../app/javascript/components/templates/knowledges/MyAppModal.tsx","../../../app/javascript/components/templates/knowledges/CommonSettingModal.tsx","../../../app/javascript/components/templates/knowledges/ConnectIdModal.tsx","../../../app/javascript/components/templates/knowledges/KnowledgeLicenseRequestModal.tsx","../../../app/javascript/components/templates/knowledges/MemberDeleteConfirmationModal.tsx","../../../app/javascript/components/templates/knowledges/MemberTwoFactorAuthRecoveryCodeModal.tsx","../../../app/javascript/components/common/LoadBtn/LoadBtn.tsx","../../../app/javascript/components/templates/knowledges/MemberTwoFactorAuthModal.tsx","../../../app/javascript/components/templates/knowledges/IpRestrictionModal.tsx","../../../app/javascript/components/templates/knowledges/SecuritySettingModal.tsx","../../../app/javascript/components/common/Knowledges/Payment/DashBoardCurrentPlan.tsx","../../../app/javascript/components/common/Knowledges/Payment/Button/SecondaryBtn.tsx","../../../app/javascript/components/common/Knowledges/Payment/Card/InfoCard.tsx","../../../app/javascript/components/common/Knowledges/Payment/DashBoardPaymentInfo.tsx","../../../app/javascript/components/templates/knowledges/payment/ChangePlan.tsx","../../../app/javascript/components/templates/knowledges/payment/DashboardView.tsx","../../../app/javascript/components/templates/knowledges/payment/PlanUpdateModal.tsx","../../../app/javascript/components/templates/knowledges/payment/PlanCancelModal.tsx","../../../app/javascript/components/templates/knowledges/LlmModelSettingModal.tsx","../../../app/javascript/components/templates/knowledges/SettingModal.tsx","../../../app/javascript/components/templates/knowledges/KnowledgeBaseShareForm.tsx","../../../app/javascript/components/templates/knowledges/KnowledgeBaseShareView.tsx","../../../app/javascript/hooks/useDebounce.ts","../../../app/javascript/components/templates/knowledges/KnowledgeBaseSearchLogView.tsx","../../../app/javascript/components/templates/knowledges/KnowledgeBaseSearchLogDetailView.tsx","../../../__vite-browser-external","../../../node_modules/pdfjs-dist/build/pdf.js","../../../node_modules/react-pdf/dist/esm/pdfjs.js","../../../node_modules/react-pdf/node_modules/prop-types/lib/ReactPropTypesSecret.js","../../../node_modules/react-pdf/node_modules/prop-types/factoryWithThrowingShims.js","../../../node_modules/react-pdf/node_modules/prop-types/index.js","../../../node_modules/make-event-props/dist/esm/index.js","../../../node_modules/make-cancellable-promise/dist/esm/index.js","../../../node_modules/clsx/dist/clsx.mjs","../../../node_modules/tiny-invariant/dist/esm/tiny-invariant.js","../../../node_modules/tiny-warning/dist/tiny-warning.esm.js","../../../node_modules/react-pdf/dist/esm/DocumentContext.js","../../../node_modules/react-pdf/dist/esm/Message.js","../../../node_modules/react-pdf/dist/esm/LinkService.js","../../../node_modules/react-pdf/dist/esm/PasswordResponses.js","../../../node_modules/react-pdf/dist/esm/shared/utils.js","../../../node_modules/react-pdf/dist/esm/shared/hooks/useResolver.js","../../../node_modules/react-pdf/dist/esm/shared/propTypes.js","../../../node_modules/react-pdf/dist/esm/Document.js","../../../node_modules/react-pdf/dist/esm/shared/hooks/useDocumentContext.js","../../../node_modules/merge-refs/dist/esm/index.js","../../../node_modules/react-pdf/dist/esm/PageContext.js","../../../node_modules/react-pdf/dist/esm/shared/constants.js","../../../node_modules/react-pdf/dist/esm/shared/structTreeUtils.js","../../../node_modules/react-pdf/dist/esm/StructTreeItem.js","../../../node_modules/react-pdf/dist/esm/shared/hooks/usePageContext.js","../../../node_modules/react-pdf/dist/esm/StructTree.js","../../../node_modules/react-pdf/dist/esm/Page/PageCanvas.js","../../../node_modules/react-pdf/dist/esm/Page/PageSVG.js","../../../node_modules/react-pdf/dist/esm/Page/TextLayer.js","../../../node_modules/react-pdf/dist/esm/Page/AnnotationLayer.js","../../../node_modules/react-pdf/dist/esm/Page.js","../../../node_modules/react-pdf/dist/esm/index.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/typeof.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/createClass.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/inherits.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/extends.js","../../../node_modules/react-virtualized/node_modules/clsx/dist/clsx.m.js","../../../node_modules/react-virtualized/dist/es/Grid/utils/calculateSizeAndPositionDataAndUpdateScrollOffset.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../../../node_modules/react-virtualized/dist/es/Grid/utils/CellSizeAndPositionManager.js","../../../node_modules/react-virtualized/dist/es/Grid/utils/maxElementSize.js","../../../node_modules/react-virtualized/dist/es/Grid/utils/ScalingCellSizeAndPositionManager.js","../../../node_modules/react-virtualized/dist/es/utils/createCallbackMemoizer.js","../../../node_modules/react-virtualized/dist/es/Grid/defaultOverscanIndicesGetter.js","../../../node_modules/react-virtualized/dist/es/Grid/utils/updateScrollIndexHelper.js","../../../node_modules/react-virtualized/dist/es/Grid/defaultCellRangeRenderer.js","../../../node_modules/react-virtualized/dist/es/utils/animationFrame.js","../../../node_modules/react-virtualized/dist/es/utils/requestAnimationTimeout.js","../../../node_modules/react-virtualized/dist/es/Grid/Grid.js","../../../node_modules/react-virtualized/dist/es/Grid/accessibilityOverscanIndicesGetter.js","../../../node_modules/react-virtualized/dist/es/ArrowKeyStepper/ArrowKeyStepper.js","../../../node_modules/react-virtualized/dist/es/vendor/detectElementResize.js","../../../node_modules/react-virtualized/dist/es/AutoSizer/AutoSizer.js","../../../node_modules/react-virtualized/dist/es/CellMeasurer/CellMeasurer.js","../../../node_modules/react-virtualized/dist/es/Collection/CollectionView.js","../../../node_modules/react-virtualized/dist/es/Collection/Section.js","../../../node_modules/react-virtualized/dist/es/Collection/SectionManager.js","../../../node_modules/react-virtualized/dist/es/Collection/utils/calculateSizeAndPositionData.js","../../../node_modules/react-virtualized/dist/es/utils/getUpdatedOffsetForIndex.js","../../../node_modules/react-virtualized/dist/es/Collection/Collection.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../../../node_modules/react-virtualized/dist/es/InfiniteLoader/InfiniteLoader.js","../../../node_modules/react-virtualized/dist/es/List/List.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../../../node_modules/react-virtualized/node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../../../node_modules/react-virtualized/dist/es/vendor/binarySearchBounds.js","../../../node_modules/react-virtualized/dist/es/vendor/intervalTree.js","../../../node_modules/react-virtualized/dist/es/Masonry/PositionCache.js","../../../node_modules/react-virtualized/dist/es/Masonry/Masonry.js","../../../node_modules/react-virtualized/dist/es/MultiGrid/CellMeasurerCacheDecorator.js","../../../node_modules/react-virtualized/dist/es/MultiGrid/MultiGrid.js","../../../node_modules/react-virtualized/dist/es/Table/defaultCellDataGetter.js","../../../node_modules/react-virtualized/dist/es/Table/defaultCellRenderer.js","../../../node_modules/react-virtualized/dist/es/Table/defaultHeaderRowRenderer.js","../../../node_modules/react-virtualized/dist/es/Table/SortDirection.js","../../../node_modules/react-virtualized/dist/es/Table/SortIndicator.js","../../../node_modules/react-virtualized/dist/es/Table/defaultHeaderRenderer.js","../../../node_modules/react-virtualized/dist/es/Table/defaultRowRenderer.js","../../../node_modules/react-virtualized/dist/es/Table/Column.js","../../../node_modules/react-virtualized/dist/es/Table/Table.js","../../../node_modules/react-virtualized/dist/es/WindowScroller/utils/onScroll.js","../../../node_modules/react-virtualized/dist/es/WindowScroller/utils/dimensions.js","../../../node_modules/react-virtualized/dist/es/WindowScroller/WindowScroller.js","../../../app/javascript/components/templates/knowledges/KnowledgeSourceReadView.tsx","../../../app/javascript/components/templates/knowledges/ProcedurePopup.tsx","../../../app/javascript/components/templates/knowledges/IntegrationComponent.tsx","../../../app/javascript/components/templates/knowledges/KnowledgeBaseIntegrationView.tsx","../../../app/javascript/entries/reactEntries/knowledges.ts"],"sourcesContent":["/**\n * This file automatically generated from `pre-publish.js`.\n * Do not manually edit.\n */\n\nmodule.exports = {\n \"area\": true,\n \"base\": true,\n \"br\": true,\n \"col\": true,\n \"embed\": true,\n \"hr\": true,\n \"img\": true,\n \"input\": true,\n \"link\": true,\n \"meta\": true,\n \"param\": true,\n \"source\": true,\n \"track\": true,\n \"wbr\": true\n};\n","import e from\"void-elements\";var t=/\\s([^'\"/\\s><]+?)[\\s/>]|([^\\s=]+)=\\s?(\".*?\"|'.*?')/g;function n(n){var r={type:\"tag\",name:\"\",voidElement:!1,attrs:{},children:[]},i=n.match(/<\\/?([^\\s]+?)[/\\s>]/);if(i&&(r.name=i[1],(e[i[1]]||\"/\"===n.charAt(n.length-2))&&(r.voidElement=!0),r.name.startsWith(\"!--\"))){var s=n.indexOf(\"--\\x3e\");return{type:\"comment\",comment:-1!==s?n.slice(4,s):\"\"}}for(var a=new RegExp(t),c=null;null!==(c=a.exec(n));)if(c[0].trim())if(c[1]){var o=c[1].trim(),l=[o,\"\"];o.indexOf(\"=\")>-1&&(l=o.split(\"=\")),r.attrs[l[0]]=l[1],a.lastIndex--}else c[2]&&(r.attrs[c[2]]=c[3].trim().substring(1,c[3].length-1));return r}var r=/<[a-zA-Z0-9\\-\\!\\/](?:\"[^\"]*\"|'[^']*'|[^'\">])*>/g,i=/^\\s*$/,s=Object.create(null);function a(e,t){switch(t.type){case\"text\":return e+t.content;case\"tag\":return e+=\"<\"+t.name+(t.attrs?function(e){var t=[];for(var n in e)t.push(n+'=\"'+e[n]+'\"');return t.length?\" \"+t.join(\" \"):\"\"}(t.attrs):\"\")+(t.voidElement?\"/>\":\">\"),t.voidElement?e:e+t.children.reduce(a,\"\")+\"\";case\"comment\":return e+\"\\x3c!--\"+t.comment+\"--\\x3e\"}}var c={parse:function(e,t){t||(t={}),t.components||(t.components=s);var a,c=[],o=[],l=-1,m=!1;if(0!==e.indexOf(\"<\")){var u=e.indexOf(\"<\");c.push({type:\"text\",content:-1===u?e:e.substring(0,u)})}return e.replace(r,function(r,s){if(m){if(r!==\"\")return;m=!1}var u,f=\"/\"!==r.charAt(1),h=r.startsWith(\"\\x3c!--\"),p=s+r.length,d=e.charAt(p);if(h){var v=n(r);return l<0?(c.push(v),c):((u=o[l]).children.push(v),c)}if(f&&(l++,\"tag\"===(a=n(r)).type&&t.components[a.name]&&(a.type=\"component\",m=!0),a.voidElement||m||!d||\"<\"===d||a.children.push({type:\"text\",content:e.slice(p,e.indexOf(\"<\",p))}),0===l&&c.push(a),(u=o[l-1])&&u.children.push(a),o[l]=a),(!f||a.voidElement)&&(l>-1&&(a.voidElement||a.name===r.slice(2,-1))&&(l--,a=-1===l?c:o[l]),!m&&\"<\"!==d&&d)){u=-1===l?c:o[l].children;var x=e.indexOf(\"<\",p),g=e.slice(p,-1===x?void 0:x);i.test(g)&&(g=\" \"),(x>-1&&l+u.length>=0||\" \"!==g)&&u.push({type:\"text\",content:g})}}),c},stringify:function(e){return e.reduce(function(e,t){return e+a(\"\",t)},\"\")}};export default c;\n//# sourceMappingURL=html-parse-stringify.module.js.map\n","import { Fragment, isValidElement, cloneElement, createElement, Children } from 'react';\nimport HTML from 'html-parse-stringify';\nimport { warn, warnOnce } from './utils.js';\nimport { getDefaults } from './defaults.js';\nimport { getI18n } from './i18nInstance.js';\nfunction hasChildren(node, checkLength) {\n if (!node) return false;\n const base = node.props ? node.props.children : node.children;\n if (checkLength) return base.length > 0;\n return !!base;\n}\nfunction getChildren(node) {\n if (!node) return [];\n const children = node.props ? node.props.children : node.children;\n return node.props && node.props.i18nIsDynamicList ? getAsArray(children) : children;\n}\nfunction hasValidReactChildren(children) {\n if (Object.prototype.toString.call(children) !== '[object Array]') return false;\n return children.every(child => isValidElement(child));\n}\nfunction getAsArray(data) {\n return Array.isArray(data) ? data : [data];\n}\nfunction mergeProps(source, target) {\n const newTarget = {\n ...target\n };\n newTarget.props = Object.assign(source.props, target.props);\n return newTarget;\n}\nexport function nodesToString(children, i18nOptions) {\n if (!children) return '';\n let stringNode = '';\n const childrenArray = getAsArray(children);\n const keepArray = i18nOptions.transSupportBasicHtmlNodes && i18nOptions.transKeepBasicHtmlNodesFor ? i18nOptions.transKeepBasicHtmlNodesFor : [];\n childrenArray.forEach((child, childIndex) => {\n if (typeof child === 'string') {\n stringNode += `${child}`;\n } else if (isValidElement(child)) {\n const childPropsCount = Object.keys(child.props).length;\n const shouldKeepChild = keepArray.indexOf(child.type) > -1;\n const childChildren = child.props.children;\n if (!childChildren && shouldKeepChild && childPropsCount === 0) {\n stringNode += `<${child.type}/>`;\n } else if (!childChildren && (!shouldKeepChild || childPropsCount !== 0)) {\n stringNode += `<${childIndex}>`;\n } else if (child.props.i18nIsDynamicList) {\n stringNode += `<${childIndex}>`;\n } else if (shouldKeepChild && childPropsCount === 1 && typeof childChildren === 'string') {\n stringNode += `<${child.type}>${childChildren}`;\n } else {\n const content = nodesToString(childChildren, i18nOptions);\n stringNode += `<${childIndex}>${content}`;\n }\n } else if (child === null) {\n warn(`Trans: the passed in value is invalid - seems you passed in a null child.`);\n } else if (typeof child === 'object') {\n const {\n format,\n ...clone\n } = child;\n const keys = Object.keys(clone);\n if (keys.length === 1) {\n const value = format ? `${keys[0]}, ${format}` : keys[0];\n stringNode += `{{${value}}}`;\n } else {\n warn(`react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.`, child);\n }\n } else {\n warn(`Trans: the passed in value is invalid - seems you passed in a variable like {number} - please pass in variables for interpolation as full objects like {{number}}.`, child);\n }\n });\n return stringNode;\n}\nfunction renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, shouldUnescape) {\n if (targetString === '') return [];\n const keepArray = i18nOptions.transKeepBasicHtmlNodesFor || [];\n const emptyChildrenButNeedsHandling = targetString && new RegExp(keepArray.map(keep => `<${keep}`).join('|')).test(targetString);\n if (!children && !emptyChildrenButNeedsHandling && !shouldUnescape) return [targetString];\n const data = {};\n function getData(childs) {\n const childrenArray = getAsArray(childs);\n childrenArray.forEach(child => {\n if (typeof child === 'string') return;\n if (hasChildren(child)) getData(getChildren(child));else if (typeof child === 'object' && !isValidElement(child)) Object.assign(data, child);\n });\n }\n getData(children);\n const ast = HTML.parse(`<0>${targetString}`);\n const opts = {\n ...data,\n ...combinedTOpts\n };\n function renderInner(child, node, rootReactNode) {\n const childs = getChildren(child);\n const mappedChildren = mapAST(childs, node.children, rootReactNode);\n return hasValidReactChildren(childs) && mappedChildren.length === 0 || child.props && child.props.i18nIsDynamicList ? childs : mappedChildren;\n }\n function pushTranslatedJSX(child, inner, mem, i, isVoid) {\n if (child.dummy) {\n child.children = inner;\n mem.push(cloneElement(child, {\n key: i\n }, isVoid ? undefined : inner));\n } else {\n mem.push(...Children.map([child], c => {\n const props = {\n ...c.props\n };\n delete props.i18nIsDynamicList;\n return createElement(c.type, {\n ...props,\n key: i,\n ref: c.ref\n }, isVoid ? null : inner);\n }));\n }\n }\n function mapAST(reactNode, astNode, rootReactNode) {\n const reactNodes = getAsArray(reactNode);\n const astNodes = getAsArray(astNode);\n return astNodes.reduce((mem, node, i) => {\n const translationContent = node.children && node.children[0] && node.children[0].content && i18n.services.interpolator.interpolate(node.children[0].content, opts, i18n.language);\n if (node.type === 'tag') {\n let tmp = reactNodes[parseInt(node.name, 10)];\n if (rootReactNode.length === 1 && !tmp) tmp = rootReactNode[0][node.name];\n if (!tmp) tmp = {};\n const child = Object.keys(node.attrs).length !== 0 ? mergeProps({\n props: node.attrs\n }, tmp) : tmp;\n const isElement = isValidElement(child);\n const isValidTranslationWithChildren = isElement && hasChildren(node, true) && !node.voidElement;\n const isEmptyTransWithHTML = emptyChildrenButNeedsHandling && typeof child === 'object' && child.dummy && !isElement;\n const isKnownComponent = typeof children === 'object' && children !== null && Object.hasOwnProperty.call(children, node.name);\n if (typeof child === 'string') {\n const value = i18n.services.interpolator.interpolate(child, opts, i18n.language);\n mem.push(value);\n } else if (hasChildren(child) || isValidTranslationWithChildren) {\n const inner = renderInner(child, node, rootReactNode);\n pushTranslatedJSX(child, inner, mem, i);\n } else if (isEmptyTransWithHTML) {\n const inner = mapAST(reactNodes, node.children, rootReactNode);\n pushTranslatedJSX(child, inner, mem, i);\n } else if (Number.isNaN(parseFloat(node.name))) {\n if (isKnownComponent) {\n const inner = renderInner(child, node, rootReactNode);\n pushTranslatedJSX(child, inner, mem, i, node.voidElement);\n } else if (i18nOptions.transSupportBasicHtmlNodes && keepArray.indexOf(node.name) > -1) {\n if (node.voidElement) {\n mem.push(createElement(node.name, {\n key: `${node.name}-${i}`\n }));\n } else {\n const inner = mapAST(reactNodes, node.children, rootReactNode);\n mem.push(createElement(node.name, {\n key: `${node.name}-${i}`\n }, inner));\n }\n } else if (node.voidElement) {\n mem.push(`<${node.name} />`);\n } else {\n const inner = mapAST(reactNodes, node.children, rootReactNode);\n mem.push(`<${node.name}>${inner}`);\n }\n } else if (typeof child === 'object' && !isElement) {\n const content = node.children[0] ? translationContent : null;\n if (content) mem.push(content);\n } else {\n pushTranslatedJSX(child, translationContent, mem, i, node.children.length !== 1 || !translationContent);\n }\n } else if (node.type === 'text') {\n const wrapTextNodes = i18nOptions.transWrapTextNodes;\n const content = shouldUnescape ? i18nOptions.unescape(i18n.services.interpolator.interpolate(node.content, opts, i18n.language)) : i18n.services.interpolator.interpolate(node.content, opts, i18n.language);\n if (wrapTextNodes) {\n mem.push(createElement(wrapTextNodes, {\n key: `${node.name}-${i}`\n }, content));\n } else {\n mem.push(content);\n }\n }\n return mem;\n }, []);\n }\n const result = mapAST([{\n dummy: true,\n children: children || []\n }], ast, getAsArray(children || []));\n return getChildren(result[0]);\n}\nexport function Trans(_ref) {\n let {\n children,\n count,\n parent,\n i18nKey,\n context,\n tOptions = {},\n values,\n defaults,\n components,\n ns,\n i18n: i18nFromProps,\n t: tFromProps,\n shouldUnescape,\n ...additionalProps\n } = _ref;\n const i18n = i18nFromProps || getI18n();\n if (!i18n) {\n warnOnce('You will need to pass in an i18next instance by using i18nextReactModule');\n return children;\n }\n const t = tFromProps || i18n.t.bind(i18n) || (k => k);\n if (context) tOptions.context = context;\n const reactI18nextOptions = {\n ...getDefaults(),\n ...(i18n.options && i18n.options.react)\n };\n let namespaces = ns || t.ns || i18n.options && i18n.options.defaultNS;\n namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];\n const nodeAsString = nodesToString(children, reactI18nextOptions);\n const defaultValue = defaults || nodeAsString || reactI18nextOptions.transEmptyNodeValue || i18nKey;\n const {\n hashTransKey\n } = reactI18nextOptions;\n const key = i18nKey || (hashTransKey ? hashTransKey(nodeAsString || defaultValue) : nodeAsString || defaultValue);\n if (i18n.options && i18n.options.interpolation && i18n.options.interpolation.defaultVariables) {\n values = values && Object.keys(values).length > 0 ? {\n ...values,\n ...i18n.options.interpolation.defaultVariables\n } : {\n ...i18n.options.interpolation.defaultVariables\n };\n }\n const interpolationOverride = values || count !== undefined ? tOptions.interpolation : {\n interpolation: {\n ...tOptions.interpolation,\n prefix: '#$?',\n suffix: '?$#'\n }\n };\n const combinedTOpts = {\n ...tOptions,\n count,\n ...values,\n ...interpolationOverride,\n defaultValue,\n ns: namespaces\n };\n const translation = key ? t(key, combinedTOpts) : defaultValue;\n if (components) {\n Object.keys(components).forEach(c => {\n const comp = components[c];\n if (typeof comp.type === 'function' || !comp.props || !comp.props.children || translation.indexOf(`${c}/>`) < 0 && translation.indexOf(`${c} />`) < 0) return;\n function Componentized() {\n return createElement(Fragment, null, comp);\n }\n components[c] = createElement(Componentized);\n });\n }\n const content = renderNodes(components || children, translation, i18n, reactI18nextOptions, combinedTOpts, shouldUnescape);\n const useAsParent = parent !== undefined ? parent : reactI18nextOptions.defaultTransParent;\n return useAsParent ? createElement(useAsParent, additionalProps, content) : content;\n}","import { useContext } from 'react';\nimport { nodesToString, Trans as TransWithoutContext } from './TransWithoutContext.js';\nimport { getI18n, I18nContext } from './context.js';\nexport { nodesToString };\nexport function Trans(_ref) {\n let {\n children,\n count,\n parent,\n i18nKey,\n context,\n tOptions = {},\n values,\n defaults,\n components,\n ns,\n i18n: i18nFromProps,\n t: tFromProps,\n shouldUnescape,\n ...additionalProps\n } = _ref;\n const {\n i18n: i18nFromContext,\n defaultNS: defaultNSFromContext\n } = useContext(I18nContext) || {};\n const i18n = i18nFromProps || i18nFromContext || getI18n();\n const t = tFromProps || i18n && i18n.t.bind(i18n);\n return TransWithoutContext({\n children,\n count,\n parent,\n i18nKey,\n context,\n tOptions,\n values,\n defaults,\n components,\n ns: ns || t && t.ns || defaultNSFromContext || i18n && i18n.options && i18n.options.defaultNS,\n i18n,\n t: tFromProps,\n shouldUnescape,\n ...additionalProps\n });\n}","/**\n * Copyright (c) 2013-present, Facebook, Inc.\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\nfunction componentWillMount() {\n // Call this.constructor.gDSFP to support sub-classes.\n var state = this.constructor.getDerivedStateFromProps(this.props, this.state);\n if (state !== null && state !== undefined) {\n this.setState(state);\n }\n}\n\nfunction componentWillReceiveProps(nextProps) {\n // Call this.constructor.gDSFP to support sub-classes.\n // Use the setState() updater to ensure state isn't stale in certain edge cases.\n function updater(prevState) {\n var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);\n return state !== null && state !== undefined ? state : null;\n }\n // Binding \"this\" is important for shallow renderer support.\n this.setState(updater.bind(this));\n}\n\nfunction componentWillUpdate(nextProps, nextState) {\n try {\n var prevProps = this.props;\n var prevState = this.state;\n this.props = nextProps;\n this.state = nextState;\n this.__reactInternalSnapshotFlag = true;\n this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(\n prevProps,\n prevState\n );\n } finally {\n this.props = prevProps;\n this.state = prevState;\n }\n}\n\n// React may warn about cWM/cWRP/cWU methods being deprecated.\n// Add a flag to suppress these warnings for this special case.\ncomponentWillMount.__suppressDeprecationWarning = true;\ncomponentWillReceiveProps.__suppressDeprecationWarning = true;\ncomponentWillUpdate.__suppressDeprecationWarning = true;\n\nfunction polyfill(Component) {\n var prototype = Component.prototype;\n\n if (!prototype || !prototype.isReactComponent) {\n throw new Error('Can only polyfill class components');\n }\n\n if (\n typeof Component.getDerivedStateFromProps !== 'function' &&\n typeof prototype.getSnapshotBeforeUpdate !== 'function'\n ) {\n return Component;\n }\n\n // If new component APIs are defined, \"unsafe\" lifecycles won't be called.\n // Error if any of these lifecycles are present,\n // Because they would work differently between older and newer (16.3+) versions of React.\n var foundWillMountName = null;\n var foundWillReceivePropsName = null;\n var foundWillUpdateName = null;\n if (typeof prototype.componentWillMount === 'function') {\n foundWillMountName = 'componentWillMount';\n } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {\n foundWillMountName = 'UNSAFE_componentWillMount';\n }\n if (typeof prototype.componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'componentWillReceiveProps';\n } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';\n }\n if (typeof prototype.componentWillUpdate === 'function') {\n foundWillUpdateName = 'componentWillUpdate';\n } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {\n foundWillUpdateName = 'UNSAFE_componentWillUpdate';\n }\n if (\n foundWillMountName !== null ||\n foundWillReceivePropsName !== null ||\n foundWillUpdateName !== null\n ) {\n var componentName = Component.displayName || Component.name;\n var newApiName =\n typeof Component.getDerivedStateFromProps === 'function'\n ? 'getDerivedStateFromProps()'\n : 'getSnapshotBeforeUpdate()';\n\n throw Error(\n 'Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n' +\n componentName +\n ' uses ' +\n newApiName +\n ' but also contains the following legacy lifecycles:' +\n (foundWillMountName !== null ? '\\n ' + foundWillMountName : '') +\n (foundWillReceivePropsName !== null\n ? '\\n ' + foundWillReceivePropsName\n : '') +\n (foundWillUpdateName !== null ? '\\n ' + foundWillUpdateName : '') +\n '\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\n' +\n 'https://fb.me/react-async-component-lifecycle-hooks'\n );\n }\n\n // React <= 16.2 does not support static getDerivedStateFromProps.\n // As a workaround, use cWM and cWRP to invoke the new static lifecycle.\n // Newer versions of React will ignore these lifecycles if gDSFP exists.\n if (typeof Component.getDerivedStateFromProps === 'function') {\n prototype.componentWillMount = componentWillMount;\n prototype.componentWillReceiveProps = componentWillReceiveProps;\n }\n\n // React <= 16.2 does not support getSnapshotBeforeUpdate.\n // As a workaround, use cWU to invoke the new lifecycle.\n // Newer versions of React will ignore that lifecycle if gSBU exists.\n if (typeof prototype.getSnapshotBeforeUpdate === 'function') {\n if (typeof prototype.componentDidUpdate !== 'function') {\n throw new Error(\n 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'\n );\n }\n\n prototype.componentWillUpdate = componentWillUpdate;\n\n var componentDidUpdate = prototype.componentDidUpdate;\n\n prototype.componentDidUpdate = function componentDidUpdatePolyfill(\n prevProps,\n prevState,\n maybeSnapshot\n ) {\n // 16.3+ will not execute our will-update method;\n // It will pass a snapshot value to did-update though.\n // Older versions will require our polyfilled will-update value.\n // We need to handle both cases, but can't just check for the presence of \"maybeSnapshot\",\n // Because for <= 15.x versions this might be a \"prevContext\" object.\n // We also can't just check \"__reactInternalSnapshot\",\n // Because get-snapshot might return a falsy value.\n // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.\n var snapshot = this.__reactInternalSnapshotFlag\n ? this.__reactInternalSnapshot\n : maybeSnapshot;\n\n componentDidUpdate.call(this, prevProps, prevState, snapshot);\n };\n }\n\n return Component;\n}\n\nexport { polyfill };\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classStyle from \"./Loader.module.scss\";\n\nexport const Loader = ({ loaderColor = \"white\", loaderSize = 35 }) => {\n const styleColor = () => {\n switch (loaderColor) {\n case \"yoom-green\":\n return \"#32cdc8\";\n case \"main-green\":\n return \"#0a6982\";\n case \"main-blue\":\n return \"#2D6295\";\n case \"white\":\n return \"#fff\";\n case \"gray\":\n return \"#7777777\";\n default:\n return loaderColor;\n }\n };\n const style = {\n width: `${Math.trunc(loaderSize / 4.2)}px`,\n height: `${Math.trunc(loaderSize / 4.2)}px`,\n };\n return (\n \n \n \n \n \n );\n};\n\nLoader.propTypes = {\n loaderColor: PropTypes.string,\n loaderSize: PropTypes.number,\n};\n","(function(global, factory) {\n typeof exports === \"object\" && typeof module !== \"undefined\" ? factory(exports) : typeof define === \"function\" && define.amd ? define([ \"exports\" ], factory) : factory(global.ActionCable = {});\n})(this, function(exports) {\n \"use strict\";\n var adapters = {\n logger: self.console,\n WebSocket: self.WebSocket\n };\n var logger = {\n log: function log() {\n if (this.enabled) {\n var _adapters$logger;\n for (var _len = arguments.length, messages = Array(_len), _key = 0; _key < _len; _key++) {\n messages[_key] = arguments[_key];\n }\n messages.push(Date.now());\n (_adapters$logger = adapters.logger).log.apply(_adapters$logger, [ \"[ActionCable]\" ].concat(messages));\n }\n }\n };\n var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function(obj) {\n return typeof obj;\n } : function(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n var classCallCheck = function(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n };\n var createClass = function() {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function(Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n }();\n var now = function now() {\n return new Date().getTime();\n };\n var secondsSince = function secondsSince(time) {\n return (now() - time) / 1e3;\n };\n var clamp = function clamp(number, min, max) {\n return Math.max(min, Math.min(max, number));\n };\n var ConnectionMonitor = function() {\n function ConnectionMonitor(connection) {\n classCallCheck(this, ConnectionMonitor);\n this.visibilityDidChange = this.visibilityDidChange.bind(this);\n this.connection = connection;\n this.reconnectAttempts = 0;\n }\n ConnectionMonitor.prototype.start = function start() {\n if (!this.isRunning()) {\n this.startedAt = now();\n delete this.stoppedAt;\n this.startPolling();\n addEventListener(\"visibilitychange\", this.visibilityDidChange);\n logger.log(\"ConnectionMonitor started. pollInterval = \" + this.getPollInterval() + \" ms\");\n }\n };\n ConnectionMonitor.prototype.stop = function stop() {\n if (this.isRunning()) {\n this.stoppedAt = now();\n this.stopPolling();\n removeEventListener(\"visibilitychange\", this.visibilityDidChange);\n logger.log(\"ConnectionMonitor stopped\");\n }\n };\n ConnectionMonitor.prototype.isRunning = function isRunning() {\n return this.startedAt && !this.stoppedAt;\n };\n ConnectionMonitor.prototype.recordPing = function recordPing() {\n this.pingedAt = now();\n };\n ConnectionMonitor.prototype.recordConnect = function recordConnect() {\n this.reconnectAttempts = 0;\n this.recordPing();\n delete this.disconnectedAt;\n logger.log(\"ConnectionMonitor recorded connect\");\n };\n ConnectionMonitor.prototype.recordDisconnect = function recordDisconnect() {\n this.disconnectedAt = now();\n logger.log(\"ConnectionMonitor recorded disconnect\");\n };\n ConnectionMonitor.prototype.startPolling = function startPolling() {\n this.stopPolling();\n this.poll();\n };\n ConnectionMonitor.prototype.stopPolling = function stopPolling() {\n clearTimeout(this.pollTimeout);\n };\n ConnectionMonitor.prototype.poll = function poll() {\n var _this = this;\n this.pollTimeout = setTimeout(function() {\n _this.reconnectIfStale();\n _this.poll();\n }, this.getPollInterval());\n };\n ConnectionMonitor.prototype.getPollInterval = function getPollInterval() {\n var _constructor$pollInte = this.constructor.pollInterval, min = _constructor$pollInte.min, max = _constructor$pollInte.max, multiplier = _constructor$pollInte.multiplier;\n var interval = multiplier * Math.log(this.reconnectAttempts + 1);\n return Math.round(clamp(interval, min, max) * 1e3);\n };\n ConnectionMonitor.prototype.reconnectIfStale = function reconnectIfStale() {\n if (this.connectionIsStale()) {\n logger.log(\"ConnectionMonitor detected stale connection. reconnectAttempts = \" + this.reconnectAttempts + \", pollInterval = \" + this.getPollInterval() + \" ms, time disconnected = \" + secondsSince(this.disconnectedAt) + \" s, stale threshold = \" + this.constructor.staleThreshold + \" s\");\n this.reconnectAttempts++;\n if (this.disconnectedRecently()) {\n logger.log(\"ConnectionMonitor skipping reopening recent disconnect\");\n } else {\n logger.log(\"ConnectionMonitor reopening\");\n this.connection.reopen();\n }\n }\n };\n ConnectionMonitor.prototype.connectionIsStale = function connectionIsStale() {\n return secondsSince(this.pingedAt ? this.pingedAt : this.startedAt) > this.constructor.staleThreshold;\n };\n ConnectionMonitor.prototype.disconnectedRecently = function disconnectedRecently() {\n return this.disconnectedAt && secondsSince(this.disconnectedAt) < this.constructor.staleThreshold;\n };\n ConnectionMonitor.prototype.visibilityDidChange = function visibilityDidChange() {\n var _this2 = this;\n if (document.visibilityState === \"visible\") {\n setTimeout(function() {\n if (_this2.connectionIsStale() || !_this2.connection.isOpen()) {\n logger.log(\"ConnectionMonitor reopening stale connection on visibilitychange. visibilityState = \" + document.visibilityState);\n _this2.connection.reopen();\n }\n }, 200);\n }\n };\n return ConnectionMonitor;\n }();\n ConnectionMonitor.pollInterval = {\n min: 3,\n max: 30,\n multiplier: 5\n };\n ConnectionMonitor.staleThreshold = 6;\n var INTERNAL = {\n message_types: {\n welcome: \"welcome\",\n disconnect: \"disconnect\",\n ping: \"ping\",\n confirmation: \"confirm_subscription\",\n rejection: \"reject_subscription\"\n },\n disconnect_reasons: {\n unauthorized: \"unauthorized\",\n invalid_request: \"invalid_request\",\n server_restart: \"server_restart\"\n },\n default_mount_path: \"/cable\",\n protocols: [ \"actioncable-v1-json\", \"actioncable-unsupported\" ]\n };\n var message_types = INTERNAL.message_types, protocols = INTERNAL.protocols;\n var supportedProtocols = protocols.slice(0, protocols.length - 1);\n var indexOf = [].indexOf;\n var Connection = function() {\n function Connection(consumer) {\n classCallCheck(this, Connection);\n this.open = this.open.bind(this);\n this.consumer = consumer;\n this.subscriptions = this.consumer.subscriptions;\n this.monitor = new ConnectionMonitor(this);\n this.disconnected = true;\n }\n Connection.prototype.send = function send(data) {\n if (this.isOpen()) {\n this.webSocket.send(JSON.stringify(data));\n return true;\n } else {\n return false;\n }\n };\n Connection.prototype.open = function open() {\n if (this.isActive()) {\n logger.log(\"Attempted to open WebSocket, but existing socket is \" + this.getState());\n return false;\n } else {\n logger.log(\"Opening WebSocket, current state is \" + this.getState() + \", subprotocols: \" + protocols);\n if (this.webSocket) {\n this.uninstallEventHandlers();\n }\n this.webSocket = new adapters.WebSocket(this.consumer.url, protocols);\n this.installEventHandlers();\n this.monitor.start();\n return true;\n }\n };\n Connection.prototype.close = function close() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {\n allowReconnect: true\n }, allowReconnect = _ref.allowReconnect;\n if (!allowReconnect) {\n this.monitor.stop();\n }\n if (this.isActive()) {\n return this.webSocket.close();\n }\n };\n Connection.prototype.reopen = function reopen() {\n logger.log(\"Reopening WebSocket, current state is \" + this.getState());\n if (this.isActive()) {\n try {\n return this.close();\n } catch (error) {\n logger.log(\"Failed to reopen WebSocket\", error);\n } finally {\n logger.log(\"Reopening WebSocket in \" + this.constructor.reopenDelay + \"ms\");\n setTimeout(this.open, this.constructor.reopenDelay);\n }\n } else {\n return this.open();\n }\n };\n Connection.prototype.getProtocol = function getProtocol() {\n if (this.webSocket) {\n return this.webSocket.protocol;\n }\n };\n Connection.prototype.isOpen = function isOpen() {\n return this.isState(\"open\");\n };\n Connection.prototype.isActive = function isActive() {\n return this.isState(\"open\", \"connecting\");\n };\n Connection.prototype.isProtocolSupported = function isProtocolSupported() {\n return indexOf.call(supportedProtocols, this.getProtocol()) >= 0;\n };\n Connection.prototype.isState = function isState() {\n for (var _len = arguments.length, states = Array(_len), _key = 0; _key < _len; _key++) {\n states[_key] = arguments[_key];\n }\n return indexOf.call(states, this.getState()) >= 0;\n };\n Connection.prototype.getState = function getState() {\n if (this.webSocket) {\n for (var state in adapters.WebSocket) {\n if (adapters.WebSocket[state] === this.webSocket.readyState) {\n return state.toLowerCase();\n }\n }\n }\n return null;\n };\n Connection.prototype.installEventHandlers = function installEventHandlers() {\n for (var eventName in this.events) {\n var handler = this.events[eventName].bind(this);\n this.webSocket[\"on\" + eventName] = handler;\n }\n };\n Connection.prototype.uninstallEventHandlers = function uninstallEventHandlers() {\n for (var eventName in this.events) {\n this.webSocket[\"on\" + eventName] = function() {};\n }\n };\n return Connection;\n }();\n Connection.reopenDelay = 500;\n Connection.prototype.events = {\n message: function message(event) {\n if (!this.isProtocolSupported()) {\n return;\n }\n var _JSON$parse = JSON.parse(event.data), identifier = _JSON$parse.identifier, message = _JSON$parse.message, reason = _JSON$parse.reason, reconnect = _JSON$parse.reconnect, type = _JSON$parse.type;\n switch (type) {\n case message_types.welcome:\n this.monitor.recordConnect();\n return this.subscriptions.reload();\n\n case message_types.disconnect:\n logger.log(\"Disconnecting. Reason: \" + reason);\n return this.close({\n allowReconnect: reconnect\n });\n\n case message_types.ping:\n return this.monitor.recordPing();\n\n case message_types.confirmation:\n this.subscriptions.confirmSubscription(identifier);\n return this.subscriptions.notify(identifier, \"connected\");\n\n case message_types.rejection:\n return this.subscriptions.reject(identifier);\n\n default:\n return this.subscriptions.notify(identifier, \"received\", message);\n }\n },\n open: function open() {\n logger.log(\"WebSocket onopen event, using '\" + this.getProtocol() + \"' subprotocol\");\n this.disconnected = false;\n if (!this.isProtocolSupported()) {\n logger.log(\"Protocol is unsupported. Stopping monitor and disconnecting.\");\n return this.close({\n allowReconnect: false\n });\n }\n },\n close: function close(event) {\n logger.log(\"WebSocket onclose event\");\n if (this.disconnected) {\n return;\n }\n this.disconnected = true;\n this.monitor.recordDisconnect();\n return this.subscriptions.notifyAll(\"disconnected\", {\n willAttemptReconnect: this.monitor.isRunning()\n });\n },\n error: function error() {\n logger.log(\"WebSocket onerror event\");\n }\n };\n var extend = function extend(object, properties) {\n if (properties != null) {\n for (var key in properties) {\n var value = properties[key];\n object[key] = value;\n }\n }\n return object;\n };\n var Subscription = function() {\n function Subscription(consumer) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var mixin = arguments[2];\n classCallCheck(this, Subscription);\n this.consumer = consumer;\n this.identifier = JSON.stringify(params);\n extend(this, mixin);\n }\n Subscription.prototype.perform = function perform(action) {\n var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n data.action = action;\n return this.send(data);\n };\n Subscription.prototype.send = function send(data) {\n return this.consumer.send({\n command: \"message\",\n identifier: this.identifier,\n data: JSON.stringify(data)\n });\n };\n Subscription.prototype.unsubscribe = function unsubscribe() {\n return this.consumer.subscriptions.remove(this);\n };\n return Subscription;\n }();\n var SubscriptionGuarantor = function() {\n function SubscriptionGuarantor(subscriptions) {\n classCallCheck(this, SubscriptionGuarantor);\n this.subscriptions = subscriptions;\n this.pendingSubscriptions = [];\n }\n SubscriptionGuarantor.prototype.guarantee = function guarantee(subscription) {\n if (this.pendingSubscriptions.indexOf(subscription) == -1) {\n logger.log(\"SubscriptionGuarantor guaranteeing \" + subscription.identifier);\n this.pendingSubscriptions.push(subscription);\n } else {\n logger.log(\"SubscriptionGuarantor already guaranteeing \" + subscription.identifier);\n }\n this.startGuaranteeing();\n };\n SubscriptionGuarantor.prototype.forget = function forget(subscription) {\n logger.log(\"SubscriptionGuarantor forgetting \" + subscription.identifier);\n this.pendingSubscriptions = this.pendingSubscriptions.filter(function(s) {\n return s !== subscription;\n });\n };\n SubscriptionGuarantor.prototype.startGuaranteeing = function startGuaranteeing() {\n this.stopGuaranteeing();\n this.retrySubscribing();\n };\n SubscriptionGuarantor.prototype.stopGuaranteeing = function stopGuaranteeing() {\n clearTimeout(this.retryTimeout);\n };\n SubscriptionGuarantor.prototype.retrySubscribing = function retrySubscribing() {\n var _this = this;\n this.retryTimeout = setTimeout(function() {\n if (_this.subscriptions && typeof _this.subscriptions.subscribe === \"function\") {\n _this.pendingSubscriptions.map(function(subscription) {\n logger.log(\"SubscriptionGuarantor resubscribing \" + subscription.identifier);\n _this.subscriptions.subscribe(subscription);\n });\n }\n }, 500);\n };\n return SubscriptionGuarantor;\n }();\n var Subscriptions = function() {\n function Subscriptions(consumer) {\n classCallCheck(this, Subscriptions);\n this.consumer = consumer;\n this.guarantor = new SubscriptionGuarantor(this);\n this.subscriptions = [];\n }\n Subscriptions.prototype.create = function create(channelName, mixin) {\n var channel = channelName;\n var params = (typeof channel === \"undefined\" ? \"undefined\" : _typeof(channel)) === \"object\" ? channel : {\n channel: channel\n };\n var subscription = new Subscription(this.consumer, params, mixin);\n return this.add(subscription);\n };\n Subscriptions.prototype.add = function add(subscription) {\n this.subscriptions.push(subscription);\n this.consumer.ensureActiveConnection();\n this.notify(subscription, \"initialized\");\n this.subscribe(subscription);\n return subscription;\n };\n Subscriptions.prototype.remove = function remove(subscription) {\n this.forget(subscription);\n if (!this.findAll(subscription.identifier).length) {\n this.sendCommand(subscription, \"unsubscribe\");\n }\n return subscription;\n };\n Subscriptions.prototype.reject = function reject(identifier) {\n var _this = this;\n return this.findAll(identifier).map(function(subscription) {\n _this.forget(subscription);\n _this.notify(subscription, \"rejected\");\n return subscription;\n });\n };\n Subscriptions.prototype.forget = function forget(subscription) {\n this.guarantor.forget(subscription);\n this.subscriptions = this.subscriptions.filter(function(s) {\n return s !== subscription;\n });\n return subscription;\n };\n Subscriptions.prototype.findAll = function findAll(identifier) {\n return this.subscriptions.filter(function(s) {\n return s.identifier === identifier;\n });\n };\n Subscriptions.prototype.reload = function reload() {\n var _this2 = this;\n return this.subscriptions.map(function(subscription) {\n return _this2.subscribe(subscription);\n });\n };\n Subscriptions.prototype.notifyAll = function notifyAll(callbackName) {\n var _this3 = this;\n for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n return this.subscriptions.map(function(subscription) {\n return _this3.notify.apply(_this3, [ subscription, callbackName ].concat(args));\n });\n };\n Subscriptions.prototype.notify = function notify(subscription, callbackName) {\n for (var _len2 = arguments.length, args = Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {\n args[_key2 - 2] = arguments[_key2];\n }\n var subscriptions = void 0;\n if (typeof subscription === \"string\") {\n subscriptions = this.findAll(subscription);\n } else {\n subscriptions = [ subscription ];\n }\n return subscriptions.map(function(subscription) {\n return typeof subscription[callbackName] === \"function\" ? subscription[callbackName].apply(subscription, args) : undefined;\n });\n };\n Subscriptions.prototype.subscribe = function subscribe(subscription) {\n if (this.sendCommand(subscription, \"subscribe\")) {\n this.guarantor.guarantee(subscription);\n }\n };\n Subscriptions.prototype.confirmSubscription = function confirmSubscription(identifier) {\n var _this4 = this;\n logger.log(\"Subscription confirmed \" + identifier);\n this.findAll(identifier).map(function(subscription) {\n return _this4.guarantor.forget(subscription);\n });\n };\n Subscriptions.prototype.sendCommand = function sendCommand(subscription, command) {\n var identifier = subscription.identifier;\n return this.consumer.send({\n command: command,\n identifier: identifier\n });\n };\n return Subscriptions;\n }();\n var Consumer = function() {\n function Consumer(url) {\n classCallCheck(this, Consumer);\n this._url = url;\n this.subscriptions = new Subscriptions(this);\n this.connection = new Connection(this);\n }\n Consumer.prototype.send = function send(data) {\n return this.connection.send(data);\n };\n Consumer.prototype.connect = function connect() {\n return this.connection.open();\n };\n Consumer.prototype.disconnect = function disconnect() {\n return this.connection.close({\n allowReconnect: false\n });\n };\n Consumer.prototype.ensureActiveConnection = function ensureActiveConnection() {\n if (!this.connection.isActive()) {\n return this.connection.open();\n }\n };\n createClass(Consumer, [ {\n key: \"url\",\n get: function get$$1() {\n return createWebSocketURL(this._url);\n }\n } ]);\n return Consumer;\n }();\n function createWebSocketURL(url) {\n if (typeof url === \"function\") {\n url = url();\n }\n if (url && !/^wss?:/i.test(url)) {\n var a = document.createElement(\"a\");\n a.href = url;\n a.href = a.href;\n a.protocol = a.protocol.replace(\"http\", \"ws\");\n return a.href;\n } else {\n return url;\n }\n }\n function createConsumer() {\n var url = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getConfig(\"url\") || INTERNAL.default_mount_path;\n return new Consumer(url);\n }\n function getConfig(name) {\n var element = document.head.querySelector(\"meta[name='action-cable-\" + name + \"']\");\n if (element) {\n return element.getAttribute(\"content\");\n }\n }\n exports.Connection = Connection;\n exports.ConnectionMonitor = ConnectionMonitor;\n exports.Consumer = Consumer;\n exports.INTERNAL = INTERNAL;\n exports.Subscription = Subscription;\n exports.Subscriptions = Subscriptions;\n exports.SubscriptionGuarantor = SubscriptionGuarantor;\n exports.adapters = adapters;\n exports.createWebSocketURL = createWebSocketURL;\n exports.logger = logger;\n exports.createConsumer = createConsumer;\n exports.getConfig = getConfig;\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n});\n","// Action Cable provides the framework to deal with WebSockets in Rails.\n// You can generate new channels where WebSocket features live using the `bin/rails generate channel` command.\n// @ts-nocheck\nimport { createConsumer } from \"@rails/actioncable\";\n\nexport default createConsumer();\n","import moment from \"moment\";\n\nexport const formatKnowledgeDate = (knowledge: any): string => {\n return !!knowledge.updated_at && knowledge.updated_at > 0\n ? moment(knowledge.updated_at * 1000).format(\"YYYY.MM.DD\")\n : moment(knowledge.created_at * 1000).format(\"YYYY.MM.DD\");\n};\n","(function(a,b){if(\"function\"==typeof define&&define.amd)define([],b);else if(\"undefined\"!=typeof exports)b();else{b(),a.FileSaver={exports:{}}.exports}})(this,function(){\"use strict\";function b(a,b){return\"undefined\"==typeof b?b={autoBom:!1}:\"object\"!=typeof b&&(console.warn(\"Deprecated: Expected third argument to be a object\"),b={autoBom:!b}),b.autoBom&&/^\\s*(?:text\\/\\S*|application\\/xml|\\S*\\/\\S*\\+xml)\\s*;.*charset\\s*=\\s*utf-8/i.test(a.type)?new Blob([\"\\uFEFF\",a],{type:a.type}):a}function c(a,b,c){var d=new XMLHttpRequest;d.open(\"GET\",a),d.responseType=\"blob\",d.onload=function(){g(d.response,b,c)},d.onerror=function(){console.error(\"could not download file\")},d.send()}function d(a){var b=new XMLHttpRequest;b.open(\"HEAD\",a,!1);try{b.send()}catch(a){}return 200<=b.status&&299>=b.status}function e(a){try{a.dispatchEvent(new MouseEvent(\"click\"))}catch(c){var b=document.createEvent(\"MouseEvents\");b.initMouseEvent(\"click\",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),a.dispatchEvent(b)}}var f=\"object\"==typeof window&&window.window===window?window:\"object\"==typeof self&&self.self===self?self:\"object\"==typeof global&&global.global===global?global:void 0,a=f.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),g=f.saveAs||(\"object\"!=typeof window||window!==f?function(){}:\"download\"in HTMLAnchorElement.prototype&&!a?function(b,g,h){var i=f.URL||f.webkitURL,j=document.createElement(\"a\");g=g||b.name||\"download\",j.download=g,j.rel=\"noopener\",\"string\"==typeof b?(j.href=b,j.origin===location.origin?e(j):d(j.href)?c(b,g,h):e(j,j.target=\"_blank\")):(j.href=i.createObjectURL(b),setTimeout(function(){i.revokeObjectURL(j.href)},4E4),setTimeout(function(){e(j)},0))}:\"msSaveOrOpenBlob\"in navigator?function(f,g,h){if(g=g||f.name||\"download\",\"string\"!=typeof f)navigator.msSaveOrOpenBlob(b(f,h),g);else if(d(f))c(f,g,h);else{var i=document.createElement(\"a\");i.href=f,i.target=\"_blank\",setTimeout(function(){e(i)})}}:function(b,d,e,g){if(g=g||open(\"\",\"_blank\"),g&&(g.document.title=g.document.body.innerText=\"downloading...\"),\"string\"==typeof b)return c(b,d,e);var h=\"application/octet-stream\"===b.type,i=/constructor/i.test(f.HTMLElement)||f.safari,j=/CriOS\\/[\\d]+/.test(navigator.userAgent);if((j||h&&i||a)&&\"undefined\"!=typeof FileReader){var k=new FileReader;k.onloadend=function(){var a=k.result;a=j?a:a.replace(/^data:[^;]*;/,\"data:attachment/file;\"),g?g.location.href=a:location=a,g=null},k.readAsDataURL(b)}else{var l=f.URL||f.webkitURL,m=l.createObjectURL(b);g?g.location=m:location.href=m,g=null,setTimeout(function(){l.revokeObjectURL(m)},4E4)}});f.saveAs=g.saveAs=g,\"undefined\"!=typeof module&&(module.exports=g)});\n\n//# sourceMappingURL=FileSaver.min.js.map","// @ts-nocheck\nimport React, { useRef } from \"react\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport { Loader } from \"../../common/Loaders/Loader\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const CsvExportDetailModal = ({ csvExportErrorMessage, setShowCsvExportModal, setCsvExportErrorMessage }) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"CsvExportDetailModal\" });\n const closeCsvExportModalRef = useRef();\n\n const handleCsvExportModalClose = () => {\n setShowCsvExportModal(false);\n setCsvExportErrorMessage(null);\n };\n\n return (\n
\n {csvExportErrorMessage ? (\n <>\n \n handleCsvExportModalClose()}\n />\n
\n

\n {csvExportErrorMessage}\n

\n \n ) : (\n <>\n
\n \n
\n

{t(\"csvExporting\")}

\n \n )}\n \n );\n};\n\nCsvExportDetailModal.propTypes = {\n csvExportErrorMessage: PropTypes.string,\n setShowCsvExportModal: PropTypes.func,\n setCsvExportErrorMessage: PropTypes.func,\n};\n","// @ts-nocheck\nimport React, { useState, useRef, useEffect } from \"react\";\nimport axios from \"axios\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport { formatKnowledgeDate } from \"../../../commons/dateFormatter\";\nimport { Modal } from \"react-bootstrap\";\nimport { saveAs } from \"file-saver\";\nimport { CsvExportDetailModal } from \"./CsvExportDetailModal\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const KnowledgeBase = ({\n knowledges,\n totalHits,\n handleShow,\n newKnowledgeCount,\n startAnimationFlag,\n setStartAnimationFlag,\n client,\n knowledgeBaseId,\n initialQuery,\n handleShowKnowledgeCreate,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"KnowledgeBase\" });\n const closeRef = useRef();\n const [isPopup, setIsPopup] = useState(false);\n const [showCsvExportModal, setShowCsvExportModal] = useState(false);\n const [csvExportErrorMessage, setCsvExportErrorMessage] = useState(null);\n\n const axiosInstance = axios.create();\n axiosInstance.defaults.headers.common[\"X-CSRF-Token\"] = document.getElementsByName(\"csrf-token\")[0].content;\n\n const onClickOuterClose = (e) => {\n if (e.target.id === \"popupIcon\") {\n return;\n } else if (isPopup) {\n if (!closeRef.current.contains(e.target)) {\n setIsPopup(false);\n }\n }\n };\n\n const handleCsvExport = () => {\n setShowCsvExportModal(true);\n csvExport();\n };\n\n const csvExport = async () => {\n await axiosInstance\n .post(\n `/${client}/knowledge_bases/${knowledgeBaseId}/export`,\n {\n query: initialQuery,\n },\n {\n responseType: \"blob\",\n },\n )\n .then((res) => {\n const blob = new Blob([res.data], { type: \"text/csv\" });\n const filename = decodeURIComponent(res.headers[\"x-filename\"]);\n saveAs(blob, filename);\n\n setIsPopup(false);\n setShowCsvExportModal(false);\n })\n .catch((err) => {\n setCsvExportErrorMessage(t(\"csvExportFail\"));\n });\n };\n\n useEffect(() => {\n if (newKnowledgeCount) {\n setStartAnimationFlag(true);\n }\n }, [totalHits]);\n\n useEffect(() => {\n document.addEventListener(\"click\", onClickOuterClose);\n return () => {\n if (isPopup) {\n document.removeEventListener(\"click\", onClickOuterClose);\n }\n };\n }, [isPopup]);\n\n return (\n
\n
\n
{t(\"title\")}
\n
\n
\n \n {totalHits}\n
\n
\n handleShowKnowledgeCreate()}\n />\n
\n
\n setIsPopup(!isPopup)}\n />\n {isPopup && (\n \n
handleCsvExport()} style={{ width: \"175px\" }}>\n \n
{t(\"csvExport\")}
\n
\n
\n )}\n
\n
\n
\n
\n {knowledges?.map((knowledge, i) => (\n = newKnowledgeCount ? style.slideIn : \"\"\n }`}\n key={i}\n onClick={() => handleShow(knowledge.id)}\n >\n \n
\n
{knowledge.question}
\n
{knowledge.answer}
\n
\n {t(\"created\", { date: formatKnowledgeDate(knowledge) })}\n
\n {moment().diff(moment(knowledge.created_at * 1000), \"days\") <= 1 && (\n
\n )}\n
\n
\n ))}\n {knowledges.length >= 300 && (\n
{t(\"latestKnowledge\", { count: 300 })}
\n )}\n \n \n \n \n \n \n \n );\n};\n\nKnowledgeBase.propTypes = {\n knowledges: PropTypes.array,\n totalHits: PropTypes.number,\n handleShow: PropTypes.func,\n newKnowledgeCount: PropTypes.number,\n startAnimationFlag: PropTypes.bool,\n setStartAnimationFlag: PropTypes.func,\n client: PropTypes.string,\n knowledgeBaseId: PropTypes.number,\n initialQuery: PropTypes.string,\n handleShowKnowledgeCreate: PropTypes.func,\n};\n","// @ts-nocheck\nimport React, { useState, useEffect, useRef } from \"react\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const SearchInput = ({\n search,\n qaSearch,\n setConversationQuestions,\n conversationSearch,\n loading,\n setLoading,\n sendFlag,\n setSendFlag,\n focusFlag,\n setFocusFlag,\n setResponseText,\n setResultKnowledges,\n searchCountLimitExceededFlag,\n initialQuery,\n isConversationPage,\n setConversationText,\n setConversationAnswers,\n setConversationResultKnowledge,\n setThreadId,\n setConversationLoading,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"SearchInput\" });\n\n const sendFunc = (text) => {\n if (isConversationPage) {\n conversationSearch([text], true);\n } else {\n qaSearch(text);\n }\n setSendFlag(true);\n setLoading(true);\n };\n\n const chatCancelFunc = () => {\n setFocusFlag(true);\n setLoading(false);\n setSendFlag(false);\n setResponseText(\"\");\n setText(\"\");\n setResultKnowledges([]);\n setConversationQuestions([]);\n setConversationText(\"\");\n setConversationAnswers([]);\n setConversationResultKnowledge([]);\n setThreadId(null);\n setConversationLoading([]);\n search(\"\");\n };\n\n const useAutoResize = (initialValue) => {\n const [value, setValue] = useState(initialValue);\n const textareaRef = useRef(null);\n\n useEffect(() => {\n const textarea = textareaRef.current;\n const resizeTextarea = () => {\n textarea.style.height = \"30px\";\n textarea.style.height = `${textarea.scrollHeight}px`;\n };\n\n textarea.addEventListener(\"input\", resizeTextarea);\n return () => {\n textarea.removeEventListener(\"input\", resizeTextarea);\n };\n }, []);\n\n return [value, setValue, textareaRef];\n };\n\n const [text, setText, textareaRef] = useAutoResize(initialQuery);\n\n return (\n \n \n \n \n \n setText(e.target.value)}\n onFocus={() => setFocusFlag(true)}\n onBlur={() => setFocusFlag(false)}\n readOnly={loading || searchCountLimitExceededFlag ? true : false}\n tabIndex={loading || searchCountLimitExceededFlag ? \"-1\" : 0}\n onKeyDown={(e) => {\n if ((e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) && e.key === \"Enter\") {\n return;\n } else if (e.key === \"Enter\" && !e.nativeEvent.isComposing) {\n e.preventDefault();\n if (text !== \"\" && !loading && !searchCountLimitExceededFlag) {\n sendFunc(text, e);\n }\n }\n }}\n />\n {sendFlag && !loading && !searchCountLimitExceededFlag ? (\n setFocusFlag(true)}\n onClick={() => {\n loading ? \"\" : chatCancelFunc();\n }}\n >\n \n \n ) : (\n \n (text !== \"\" || focusFlag) && !loading && !searchCountLimitExceededFlag ? sendFunc(text) : null\n }\n onFocus={() => setFocusFlag(true)}\n onMouseDown={() => setFocusFlag(true)}\n >\n \"send\"\n \n )}\n \n \n );\n};\n\nSearchInput.propTypes = {\n search: PropTypes.func,\n qaSearch: PropTypes.func,\n setConversationQuestions: PropTypes.func,\n conversationSearch: PropTypes.func,\n loading: PropTypes.bool,\n setLoading: PropTypes.func,\n sendFlag: PropTypes.bool,\n setSendFlag: PropTypes.func,\n focusFlag: PropTypes.bool,\n setFocusFlag: PropTypes.func,\n setResponseText: PropTypes.func,\n setResultKnowledges: PropTypes.func,\n searchCountLimitExceededFlag: PropTypes.bool,\n initialQuery: PropTypes.string,\n isConversationPage: PropTypes.bool,\n setConversationText: PropTypes.func,\n setConversationAnswers: PropTypes.func,\n setConversationResultKnowledge: PropTypes.func,\n setThreadId: PropTypes.func,\n setConversationLoading: PropTypes.func,\n};\n","// @ts-nocheck\nimport React from \"react\";\nimport style from \"./ConversationRelatedKnowledgeList.module.scss\";\nimport PropTypes from \"prop-types\";\n\nexport const ConversationRelatedKnowledgeList = ({ resultKnowledges, handleShow }) => {\n return (\n
\n {resultKnowledges?.map((knowledge, i) => (\n
handleShow(knowledge.id)}>\n \n
{knowledge.question}
\n
\n ))}\n
\n );\n};\n\nConversationRelatedKnowledgeList.propTypes = {\n resultKnowledges: PropTypes.array,\n handleShow: PropTypes.func,\n};\n","// FE共通の定数ファイル\n// NOTE: 現時点ではconstants.tsのみで定数を管理しているが、量が増えてきたらファイルを分割する\n\n// ------------------------------\n// ナレッジ関連の定数\n// ------------------------------\n\nexport const KNOWLEDGE_LIST_SIZE_PER_PAGE = 10;\nexport const KNOWLEDGE_SEARCH_LOG_LIST_SIZE_PER_PAGE = 10;\nexport const KNOWLEDGE_SEARCH_LOG_RATING_ICON_URLS = {\n good: \"images/icons/yoomKnowledgeGood.svg\",\n bad: \"images/icons/yoomKnowledgeBad.svg\",\n none: \"images/icons/yoomKnowledgeMinus.svg\",\n} as const;\n\nexport const RELATED_KNOWLEDGE_LIST_DEFAULT_DISPLAY_COUNT = 3;\nexport const RELATED_KNOWLEDGE_LIST_MAX_DISPLAY_COUNT = 5;\n","// @ts-nocheck\nimport React, { useState } from \"react\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport { formatKnowledgeDate } from \"../../../commons/dateFormatter\";\nimport { useTranslation } from \"react-i18next\";\nimport {\n RELATED_KNOWLEDGE_LIST_DEFAULT_DISPLAY_COUNT,\n RELATED_KNOWLEDGE_LIST_MAX_DISPLAY_COUNT,\n} from \"../../../constants/constants\";\n\nexport const RelatedKnowledgeList = ({ resultKnowledges, handleShow }) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"RelatedKnowledgeList\" });\n\n const [displayCount, setDisplayCount] = useState(RELATED_KNOWLEDGE_LIST_DEFAULT_DISPLAY_COUNT);\n const [moreReadFlag, setMoreReadFlag] = useState(false);\n\n const moreReadRelatedKnowledge = () => {\n setDisplayCount(RELATED_KNOWLEDGE_LIST_MAX_DISPLAY_COUNT);\n setMoreReadFlag(true);\n };\n return (\n
\n {resultKnowledges?.map(\n (knowledge, i) =>\n i < displayCount && (\n
handleShow(knowledge.id)}>\n \n
\n
{knowledge.question}
\n
{knowledge.answer}
\n
\n {!!knowledge.updated_at && knowledge.updated_at > 0\n ? t(\"updated\", { date: formatKnowledgeDate(knowledge) })\n : t(\"created\", { date: formatKnowledgeDate(knowledge) })}\n
\n {moment().diff(moment(knowledge.created_at * 1000), \"days\") <= 1 && (\n
\n )}\n
\n
\n ),\n )}\n {resultKnowledges?.length > 0 && (\n moreReadRelatedKnowledge()}\n >\n {t(\"readMore\")}\n
\n )}\n \n );\n};\n\nRelatedKnowledgeList.propTypes = {\n resultKnowledges: PropTypes.array,\n handleShow: PropTypes.func,\n};\n","// @ts-nocheck\nimport React from \"react\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport { Loader } from \"../../common/Loaders/Loader\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport { useTranslation } from \"react-i18next\";\nimport { ConversationRelatedKnowledgeList } from \"./conversation/ConversationRelatedKnowledgeList\";\n\nimport { RelatedKnowledgeList } from \"./RelatedKnowledgeList\";\n\nexport const QaResponseField = ({\n resultKnowledges,\n loading,\n responseText,\n iconPath,\n handleShow,\n qaFinished,\n handleRatingImgClick,\n searchLogRatingValue,\n isConversationThread,\n isQaSearchError,\n requiredActionMessage,\n i,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"QaResponseField\" });\n\n return (\n
\n {iconPath ? (\n
\n \n
\n ) : (\n
\n \n
\n )}\n
\n
\n
\n {responseText}\n {loading && (\n <>\n {!responseText ? (\n <>\n \n
{requiredActionMessage}
\n \n ) : (\n \n )}\n \n )}\n
\n {qaFinished && !loading && (\n
\n {(searchLogRatingValue === \"good\" || searchLogRatingValue === \"\") && (\n {\n if (searchLogRatingValue === \"\") handleRatingImgClick(\"good\", i);\n }}\n />\n )}\n {(searchLogRatingValue === \"bad\" || searchLogRatingValue === \"\") && (\n {\n if (searchLogRatingValue === \"\") handleRatingImgClick(\"bad\", i);\n }}\n />\n )}\n
\n )}\n\n <>\n {!isQaSearchError && resultKnowledges?.length > 0 && (\n
{t(\"relatedKnowledge\")}
\n )}\n {isConversationThread ? (\n \n ) : (\n \n )}\n \n
\n
\n
\n );\n};\n\nQaResponseField.propTypes = {\n resultKnowledges: PropTypes.array,\n loading: PropTypes.bool,\n responseText: PropTypes.string,\n iconPath: PropTypes.string,\n handleShow: PropTypes.func,\n qaFinished: PropTypes.bool,\n handleRatingImgClick: PropTypes.func,\n searchLogRatingValue: PropTypes.string,\n isConversationThread: PropTypes.bool,\n isQaSearchError: PropTypes.bool,\n requiredActionMessage: PropTypes.string,\n i: PropTypes.number,\n};\n","// @ts-nocheck\nimport React, { useEffect, useRef, useState } from \"react\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport DOMPurify from \"dompurify\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport { formatKnowledgeDate } from \"../../../commons/dateFormatter\";\nimport axios from \"axios\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const KnowledgeDetailModal = ({\n handleClose,\n knowledgeClientCode,\n knowledgeBaseId,\n detailKnowledge,\n deleteKnowledge,\n detailErrMessage,\n handleShowKnowledgeEdit,\n isKnowledgeEditable,\n fetchMailKnowledgeThreads,\n}) => {\n const axiosInstance = axios.create();\n axiosInstance.defaults.headers.common[\"X-CSRF-Token\"] = document.getElementsByName(\"csrf-token\")[0].content;\n\n const { t } = useTranslation(\"translation\", { keyPrefix: \"KnowledgeDetailModal\" });\n\n const closeRef = useRef();\n const [isPopup, setIsPopup] = useState(false);\n\n const extention = detailKnowledge?.source_link?.split(\".\").pop();\n\n const knowledgeSourcePreviewPath = () => {\n if (extention === \"pdf\" && detailKnowledge?.source_type === \"file\") {\n return `/${knowledgeClientCode}/knowledge_bases/${knowledgeBaseId}/knowledges/${detailKnowledge.id}/read`;\n } else if (detailKnowledge?.source_link?.includes(\"knowledge/knowledge_bases\")) {\n return detailKnowledge?.source_link?.replace(/\\/knowledge(?=\\/knowledge_bases)/, \"\");\n } else {\n return detailKnowledge?.source_link;\n }\n };\n\n const onClickOuterClose = (e) => {\n if (e.target.id === \"popupIcon\") {\n return;\n } else if (isPopup) {\n if (!closeRef.current.contains(e.target)) {\n setIsPopup(false);\n }\n }\n };\n\n const convertUrlsToLinks = (text) => {\n if (!text) return \"\";\n\n const urlRegex = /https?:\\/\\/[A-Za-z0-9-._~:/?#[\\]@!$&'()*+,;=%]+/g;\n const replacedText = text.replace(urlRegex, function (url) {\n return `${url}`;\n });\n\n return DOMPurify.sanitize(replacedText, {\n ALLOWED_TAGS: [\"a\"],\n ALLOWED_ATTR: [\"href\", \"target\", \"rel\", \"class\"],\n });\n };\n\n const copyShowKnowledgeDetailUrl = () => {\n const currentUrl = new URL(window.location.href);\n currentUrl.searchParams.set(\"knowledge_id\", detailKnowledge.id);\n navigator.clipboard.writeText(currentUrl.toString()).then(\n () => {\n alert(t(\"copyLinkSuccess\"));\n },\n () => {\n alert(t(\"copyLinkFail\"));\n },\n );\n };\n\n useEffect(() => {\n document.addEventListener(\"click\", onClickOuterClose);\n return () => {\n if (isPopup) {\n document.removeEventListener(\"click\", onClickOuterClose);\n }\n };\n }, [isPopup]);\n return (\n <>\n {detailErrMessage ? (\n
\n
\n
\n handleClose()}\n />\n
\n
\n
\n \n
{detailErrMessage}
\n
\n
\n \n ) : (\n
\n
\n
\n setIsPopup(!isPopup)}\n />\n handleClose()}\n />\n {isPopup && isKnowledgeEditable && (\n
\n
copyShowKnowledgeDetailUrl()}>\n \n
{t(\"copyLink\")}
\n
\n
handleShowKnowledgeEdit()}>\n \n
{t(\"editKnowledge\")}
\n
\n
\n \n {\n if (window.confirm(t(\"deleteKnowledgeConform\"))) {\n deleteKnowledge(detailKnowledge);\n }\n }}\n >\n {t(\"deleteKnowledge\")}\n
\n
\n
\n )}\n
\n
\n
\n
\n
{detailKnowledge?.question}
\n
\n
\n
\n
\n
\n \n {t(\"created\", { date: formatKnowledgeDate(detailKnowledge) })}\n \n
\n
\n \n {`${detailKnowledge?.source_name}`}\n
\n
\n {detailKnowledge?.source_link?.includes(\"mail_knowledge_data_sources\") ? (\n
fetchMailKnowledgeThreads()} className={style.yoomKnowledgeModalFooterUrl}>\n {t(\"checkDataSource\")}\n \n
\n ) : detailKnowledge?.source_link && detailKnowledge.source_link !== \"\" ? (\n \n {t(\"checkDataSource\")}\n \n \n ) : null}\n
\n \n \n )}\n \n );\n};\n\nKnowledgeDetailModal.propTypes = {\n handleClose: PropTypes.func,\n knowledgeClientCode: PropTypes.string,\n knowledgeBaseId: PropTypes.number,\n detailKnowledge: PropTypes.object,\n deleteKnowledge: PropTypes.func,\n detailErrMessage: PropTypes.string,\n handleShowKnowledgeEdit: PropTypes.func,\n isKnowledgeEditable: PropTypes.bool,\n fetchMailKnowledgeThreads: PropTypes.func,\n};\n","// @ts-nocheck\nimport React, { useState } from \"react\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport { Loader } from \"../../common/Loaders/Loader\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const KnowledgeCreateModal = ({ isCreating, validationErrors, handleCloseKnowledgeCreate, createKnowledge }) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"KnowledgeCreateModal\" });\n\n const [questionText, setQuestionText, questionTextareaRef] = useState(\"\");\n const [answerText, setAnswerText] = useState(\"\");\n const [sourceLinkText, setSourceLinkText, sourceLinkTextareaRef] = useState(\"\");\n\n return (\n
\n
\n {t(\"createKnowledge\")}\n\n
\n \n setQuestionText(e.target.value)}\n />\n {validationErrors[\"question\"] && (\n
{validationErrors[\"question\"].join(\",\")}
\n )}\n
\n\n
\n \n setAnswerText(e.target.value)}\n />\n {validationErrors[\"answer\"] &&
{validationErrors[\"answer\"].join(\",\")}
}\n
\n\n
\n \n setSourceLinkText(e.target.value)}\n />\n {validationErrors[\"source_link\"] && (\n
{validationErrors[\"source_link\"].join(\",\")}
\n )}\n
\n\n
\n handleCloseKnowledgeCreate()}\n >\n {t(\"cancel\")}\n \n\n createKnowledge(questionText, answerText, sourceLinkText)}\n >\n {isCreating ? (\n <>\n \n \n ) : (\n t(\"submit\")\n )}\n \n
\n
\n
\n );\n};\n\nKnowledgeCreateModal.propTypes = {\n isCreating: PropTypes.bool,\n validationErrors: PropTypes.object,\n handleCloseKnowledgeCreate: PropTypes.func,\n createKnowledge: PropTypes.func,\n};\n","// @ts-nocheck\nimport React, { useState } from \"react\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport { Loader } from \"../../common/Loaders/Loader\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const KnowledgeEditModal = ({\n knowledge,\n isUpdating,\n validationErrors,\n handleCloseKnowledgeEdit,\n updateKnowledge,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"KnowledgeEditModal\" });\n\n const [questionText, setQuestionText, questionTextareaRef] = useState(knowledge?.question);\n const [answerText, setAnswerText] = useState(knowledge?.answer);\n\n return (\n <>\n
\n
\n {t(\"editKnowledge\")}\n\n
\n \n
\n setQuestionText(e.target.value)}\n />\n {validationErrors[\"question\"] && (\n
{validationErrors[\"question\"].join(\",\")}
\n )}\n
\n
\n\n
\n \n
\n setAnswerText(e.target.value)}\n />\n {validationErrors[\"answer\"] && (\n
{validationErrors[\"answer\"].join(\",\")}
\n )}\n
\n
\n\n
\n handleCloseKnowledgeEdit()}\n >\n {t(\"cancel\")}\n \n\n updateKnowledge(knowledge?.id, questionText, answerText)}\n >\n {isUpdating ? (\n <>\n \n \n ) : (\n t(\"submit\")\n )}\n \n
\n
\n
\n \n );\n};\n\nKnowledgeEditModal.propTypes = {\n knowledge: PropTypes.object,\n isUpdating: PropTypes.bool,\n validationErrors: PropTypes.object,\n handleCloseKnowledgeEdit: PropTypes.func,\n updateKnowledge: PropTypes.func,\n};\n","// @ts-nocheck\nimport React from \"react\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\n\nexport const KnowledgeMailDataSourceThreads = ({ ...props }) => {\n return (\n <>\n
\n
\n
\n \n \n \n \n {props.mailKnowledgeThreads[0]?.title}\n \n \n props.handleCloseMailKnowledgeThreads()}\n />\n \n
\n
\n {props.mailKnowledgeThreads.map((thread, index) => (\n
\n
\n
{thread.from_display_name}
\n
\n {thread.from_mail_address}\n
\n
{thread.display_sent_at}
\n
\n
{thread.display_body_file}
\n
\n ))}\n
\n
\n
\n \n );\n};\n\nKnowledgeMailDataSourceThreads.propTypes = {\n mailKnowledgeThreads: PropTypes.object.isRequired,\n handleCloseMailKnowledgeThreads: PropTypes.func.isRequired,\n};\n","// @ts-nocheck\nimport React, { useRef, useState } from \"react\";\nimport style from \"./ConversationSearchInput.module.scss\";\nimport PropTypes from \"prop-types\";\nimport { getImageUrl } from \"../../../../commons/assets_path\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const ConversationSearchInput = ({\n conversationText,\n setConversationText,\n conversationQuestions,\n conversationSearch,\n conversationLoading,\n searchCountLimitExceededFlag = false,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"ConversationSearchInput\" });\n const inputRef = useRef(null);\n const [isFocus, setIsFocus] = useState(false);\n\n const handleFocus = () => {\n setIsFocus(true);\n };\n\n const handleBlur = () => {\n setIsFocus(false);\n };\n\n const handleInputChange = (e) => {\n e.target.style.width = \"180px\";\n e.target.style.width = `${e.target.scrollWidth}px`;\n setConversationText(e.target.value);\n };\n return (\n
\n \"addComment\"\n handleInputChange(e)}\n onKeyDown={(e) => {\n if ((e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) && e.key === \"Enter\") {\n return;\n } else if (e.key === \"Enter\" && !e.nativeEvent.isComposing) {\n e.preventDefault();\n if (conversationText !== \"\" && !conversationLoading && !searchCountLimitExceededFlag) {\n conversationSearch([...conversationQuestions, conversationText]);\n }\n }\n }}\n />\n\n setIsFocus(true)}\n onMouseDown={() => setIsFocus(true)}\n onClick={() => {\n conversationSearch([...conversationQuestions, conversationText]);\n }}\n >\n \n
\n \n );\n};\n\nConversationSearchInput.propTypes = {\n conversationText: PropTypes.string,\n setConversationText: PropTypes.func,\n conversationQuestions: PropTypes.array,\n conversationSearch: PropTypes.func,\n conversationLoading: PropTypes.bool,\n searchCountLimitExceededFlag: PropTypes.bool,\n};\n","// @ts-nocheck\nimport React, { useState, useEffect } from \"react\";\nimport axios from \"axios\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport { Loader } from \"../../common/Loaders/Loader\";\nimport { Modal } from \"react-bootstrap\";\nimport consumer from \"../../../channels/consumer\";\nimport { KnowledgeBase } from \"./KnowledgeBase\";\nimport { SearchInput } from \"./SearchInput\";\nimport { QaResponseField } from \"./QaResponseField\";\nimport { KnowledgeDetailModal } from \"./KnowledgeDetailModal\";\nimport { KnowledgeCreateModal } from \"./KnowledgeCreateModal\";\nimport { KnowledgeEditModal } from \"./KnowledgeEditModal\";\nimport { KnowledgeMailDataSourceThreads } from \"./KnowledgeMailDataSourceThreads\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport { useTranslation } from \"react-i18next\";\nimport { ConversationSearchInput } from \"./conversation/ConversationSearchInput\";\n\nexport const SearchForm = (props) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"SearchForm\" });\n\n const [knowledges, setKnowledges] = useState([]);\n const [resultKnowledges, setResultKnowledges] = useState([]);\n const [detailKnowledge, setDetailKnowledge] = useState({});\n const [totalHits, setTotalHits] = useState(0);\n const [loading, setLoading] = useState(false);\n const [initLoading, setInitLoading] = useState(true);\n const [sendFlag, setSendFlag] = useState(false);\n const [show, setShow] = useState(false);\n const [focusFlag, setFocusFlag] = useState(false);\n const [responseText, setResponseText] = useState(\"\");\n const [newKnowledgeCount, setNewKnowledgeCount] = useState(0);\n const [KnowledgeQaChannelFlag, setKnowledgeQaChannelFlag] = useState(false);\n const [startAnimationFlag, setStartAnimationFlag] = useState(false);\n const [detailErrMessage, setDetailErrMessage] = useState(\"\");\n const [showKnowledgeCreate, setShowKnowledgeCreate] = useState(false);\n const [isCreatingKnowledge, setIsCreatingKnowledge] = useState(false);\n const [showKnowledgeEdit, setShowKnowledgeEdit] = useState(false);\n const [isUpdatingKnowledge, setIsUpdatingKnowledge] = useState(false);\n const [knowledgeValidationErrors, setKnowledgeValidationErrors] = useState({});\n const [showMailKnowledgeThreads, setShowMailKnowledgeThreads] = useState(false);\n const [mailKnowledgeThreads, setMailKnowledgeThreads] = useState({});\n const [showDefaultMailKnowledgeThread, setShowDefaultMailKnowledgeThread] = useState(false);\n const [queryText, setQueryText] = useState(\"\");\n const [searchLogRatingValue, setSearchLogRatingValue] = useState(\"\");\n const [conversationSearchLogRatingValues, setConversationSearchLogRatingValues] = useState([\"\"]);\n const [searchLogIds, setSearchLogIds] = useState([]);\n const [qaFinished, setQaFinished] = useState(false);\n const [threadId, setThreadId] = useState(null);\n const [conversationText, setConversationText] = useState();\n const [conversationAnswers, setConversationAnswers] = useState([]);\n const [conversationQuestions, setConversationQuestions] = useState([]);\n const [conversationResultKnowledge, setConversationResultKnowledge] = useState([]);\n const [conversationLoading, setConversationLoading] = useState([]);\n const [isQaSearchError, setIsQaSearchError] = useState(false);\n const [requiredActionMessage, setRequiredActionMessage] = useState();\n\n const isConversationPage = props.searchFormat === \"conversation_search\";\n const scrollButton = document.getElementById(\"scrollBtn\");\n\n const axiosInstance = axios.create();\n axiosInstance.defaults.headers.common[\"X-CSRF-Token\"] = document.getElementsByName(\"csrf-token\")[0].content;\n const knowledgeBasePath = `/${props.client}/knowledge_bases/${props.knowledgeBaseId}`;\n\n const handleClose = () => {\n setDetailErrMessage(\"\");\n setShow(false);\n };\n const handleShow = (id) => {\n fetchDetailKnowledge(id);\n setShow(true);\n };\n\n const handleShowKnowledgeCreate = () => {\n setKnowledgeValidationErrors({});\n setShowKnowledgeCreate(true);\n };\n const handleCloseKnowledgeCreate = () => {\n setShowKnowledgeCreate(false);\n };\n\n const handleShowKnowledgeEdit = () => {\n setDetailErrMessage(\"\");\n setKnowledgeValidationErrors({});\n setShow(false);\n setShowKnowledgeEdit(true);\n };\n const handleCloseKnowledgeEdit = () => {\n setShowKnowledgeEdit(false);\n setShow(true);\n };\n\n const handleCloseMailKnowledgeThreads = () => {\n setShowMailKnowledgeThreads(false);\n setShow(true);\n };\n\n const handleRatingImgClick = (newRating) => {\n updateSearchLog(searchLogIds[0], newRating);\n setSearchLogRatingValue(newRating);\n };\n\n const handleConversationRatingImgClick = (newRating, i) => {\n updateSearchLog(searchLogIds[i], newRating);\n setConversationSearchLogRatingValues((prevArray) => {\n const newArray = [...prevArray];\n newArray[i] = newRating;\n return newArray;\n });\n };\n\n const qaSearch = async (text) => {\n setResponseText(\"\");\n setResultKnowledges([]);\n setSearchLogIds([]);\n setQaFinished(false);\n setSearchLogRatingValue(\"\");\n setQueryText(text);\n\n await axiosInstance\n .post(`${knowledgeBasePath}/qa`, {\n query: text,\n prefix_id: props.randomRoomId,\n })\n .catch((err) => {\n setResponseText(err.response.data.message);\n setIsQaSearchError(true);\n });\n };\n\n const search = async (text, initFlag = false) => {\n setResponseText(\"\");\n setIsQaSearchError(false);\n setNewKnowledgeCount(0);\n await axiosInstance\n .post(`${knowledgeBasePath}/search`, {\n query: text,\n })\n .then((res) => {\n setKnowledges(res?.data?.knowledges);\n setTotalHits(res?.data?.total_hits);\n setInitLoading(false);\n if (initFlag) {\n setKnowledgeQaChannelFlag(true);\n }\n })\n .catch((err) => {\n // TODO: 再検索を促すメッセージを表示する\n });\n };\n\n const conversationSearch = async (text, initFlag = false) => {\n if (initFlag) {\n setResponseText(\"\");\n setResultKnowledges([]);\n setConversationQuestions([]);\n setConversationText(\"\");\n setConversationAnswers([]);\n setConversationResultKnowledge([]);\n setThreadId(null);\n setConversationLoading([]);\n setQueryText(text[[text.length - 1]]);\n setSearchLogIds([]);\n setConversationSearchLogRatingValues([\"\"]);\n setSearchLogRatingValue(\"\");\n }\n\n setConversationLoading((prevArray) => [...prevArray, true]);\n setQaFinished(false);\n setRequiredActionMessage();\n setConversationQuestions((prevArray) => text);\n await axiosInstance\n .post(`${knowledgeBasePath}/conversation`, {\n thread_id: initFlag ? null : threadId,\n queries: text,\n prefix_id: props.randomRoomId,\n })\n .catch((err) => {\n setResponseText(err.response.data.message);\n setIsQaSearchError(true);\n });\n };\n\n const fetchDetailKnowledge = async (id) => {\n setLoading(true);\n await axiosInstance\n .get(`${knowledgeBasePath}/knowledges/${id}`)\n .then((res) => {\n setDetailKnowledge(res.data);\n setLoading(false);\n })\n .catch((err) => {\n setDetailErrMessage(t(\"knowledgeCreating\"));\n setLoading(false);\n });\n };\n\n const deleteKnowledge = async (detailKnowledge) => {\n const id = detailKnowledge?.id;\n const params = {\n source_code: detailKnowledge?.source_code,\n };\n\n await axiosInstance\n .delete(`${knowledgeBasePath}/knowledges/${id}`, {\n params: params,\n })\n .then((res) => {\n setResultKnowledges((prevResultKnowledges) => prevResultKnowledges.filter((knowledge) => knowledge.id !== id));\n setKnowledges((prevKnowledges) => prevKnowledges.filter((knowledge) => knowledge.id !== id));\n setTotalHits((prevTotalHits) => prevTotalHits - 1);\n\n handleClose();\n });\n };\n\n const createKnowledge = async (question, answer, sourceLink) => {\n setIsCreatingKnowledge(true);\n\n await axiosInstance\n .post(`${knowledgeBasePath}/knowledges`, {\n knowledge: {\n question: question,\n answer: answer,\n source_link: sourceLink,\n },\n })\n .then((res) => {\n setKnowledges((prevKnowledges) => [res.data, ...prevKnowledges]);\n setKnowledgeValidationErrors({});\n setShowKnowledgeCreate(false);\n setTotalHits((prevTotalHits) => prevTotalHits + 1);\n })\n .catch((err) => {\n setKnowledgeValidationErrors(err.response.data);\n })\n .finally(() => {\n setIsCreatingKnowledge(false);\n });\n };\n\n const updateKnowledge = async (id, question, answer) => {\n setIsUpdatingKnowledge(true);\n\n await axiosInstance\n .patch(`${knowledgeBasePath}/knowledges/${id}`, {\n knowledge: {\n question: question,\n answer: answer,\n },\n })\n .then(() => {\n setDetailKnowledge((detailKnowledge) => ({\n ...detailKnowledge,\n question,\n answer,\n }));\n setKnowledgeValidationErrors({});\n handleCloseKnowledgeEdit();\n })\n .catch((err) => {\n setKnowledgeValidationErrors(err.response.data);\n })\n .finally(() => {\n setIsUpdatingKnowledge(false);\n });\n };\n\n const fetchMailKnowledgeThreads = () => {\n const fetchData = async () => {\n await axiosInstance\n .get(detailKnowledge.source_link)\n .then((res) => {\n setMailKnowledgeThreads(res.data);\n })\n .catch((err) => {\n setDetailErrMessage(t(\"knowledgeCreating\"));\n });\n // メールのモーダル表示\n setShowMailKnowledgeThreads(true);\n };\n fetchData();\n };\n const createSearchLog = async (query, answer, knowledges) => {\n await axiosInstance\n .post(`${knowledgeBasePath}/knowledge_base_search_logs`, {\n knowledge_base_search_log: {\n query: query,\n answer: answer,\n knowledge_base_search_hits_attributes: knowledges.map((k) => ({ knowledge_id: k.id })),\n search_format: props.searchFormat,\n question_order: conversationAnswers.length ? conversationAnswers.length : 1,\n thread_id: threadId,\n },\n })\n .then((res) => {\n setSearchLogIds((prevArray) => [...prevArray, res.data.id]);\n });\n };\n\n const updateSearchLog = async (id, rating) => {\n await axiosInstance.patch(`${knowledgeBasePath}/knowledge_base_search_logs/${id}`, {\n knowledge_base_search_log: {\n rating: rating,\n },\n });\n };\n\n const observer = new IntersectionObserver(\n (entries) => {\n entries?.forEach((entry) => {\n if (entry.isIntersecting) {\n scrollButton.style.display = \"none\";\n } else {\n if (document.querySelector(\"#chatResponseRating\") && !show) {\n scrollButton.style.display = \"flex\";\n } else {\n scrollButton.style.display = \"none\";\n }\n }\n });\n },\n {\n threshold: 0,\n },\n );\n\n const observeconversationSearchForm = () => {\n const conversationSearchForm = document.getElementById(\"conversationSearchForm\");\n\n if (isConversationPage && conversationSearchForm) {\n observer?.observe(conversationSearchForm);\n }\n };\n\n useEffect(() => {\n consumer.subscriptions.create(\n {\n channel: \"KnowledgeQaChannel\",\n knowledge_base_id: props.knowledgeBaseId,\n member_id: props.currentMemberId,\n prefix_id: props.randomRoomId,\n },\n {\n received(data) {\n if (data.type === \"knowledges\") {\n if (isConversationPage) {\n setConversationResultKnowledge((prevArray) => [...prevArray, data.body]);\n setConversationAnswers((prevArray) => [...prevArray, \"\"]);\n } else {\n setResultKnowledges(data.body);\n }\n } else if (data.type === \"conversation\") {\n setResponseText((beforeText) => beforeText.concat(data.body.answer));\n setThreadId(data?.body?.thread_id);\n setConversationAnswers((prevArray) => {\n const newArray = [...prevArray];\n newArray[newArray.length - 1] = newArray[newArray.length - 1]?.concat(data?.body?.answer);\n return newArray;\n });\n\n if (data.finished) {\n setConversationSearchLogRatingValues((prevArray) => [...prevArray, \"\"]);\n setConversationLoading((prevArray) => {\n const newArray = [...prevArray];\n newArray[newArray.length - 1] = false;\n return newArray;\n });\n setConversationText(\"\");\n setLoading(false);\n setQaFinished(true);\n }\n } else if (data.type === \"required_action\") {\n setRequiredActionMessage(data.body);\n } else {\n if (data.finished) {\n setLoading(false);\n setQaFinished(true);\n } else {\n setResponseText((beforeText) => beforeText.concat(data.body));\n }\n }\n },\n },\n );\n\n search(props.initialQuery, true);\n }, []);\n\n useEffect(() => {\n if (KnowledgeQaChannelFlag) {\n consumer.subscriptions.create(\n {\n channel: \"KnowledgeCreationStatusChannel\",\n knowledge_base_id: props.knowledgeBaseId,\n member_id: props.currentMemberId,\n },\n {\n received(data) {\n const beforeKnowledge = knowledges;\n data.data.forEach((knowledge) => {\n beforeKnowledge.unshift(knowledge);\n });\n setKnowledges(beforeKnowledge.slice(0, beforeKnowledge.length));\n setNewKnowledgeCount(data.data.length);\n setTotalHits((beforeCount) => beforeCount + data.data.length);\n setStartAnimationFlag(false);\n },\n },\n );\n }\n }, [KnowledgeQaChannelFlag]);\n\n useEffect(() => {\n if (qaFinished) {\n if (isConversationPage) {\n createSearchLog(\n conversationQuestions[conversationQuestions.length - 1],\n conversationAnswers[conversationAnswers.length - 1],\n conversationResultKnowledge[conversationResultKnowledge.length - 1],\n );\n } else {\n createSearchLog(queryText, responseText, resultKnowledges);\n }\n }\n }, [qaFinished]);\n\n useEffect(() => {\n observeconversationSearchForm();\n if (scrollButton && show) {\n scrollButton.style.display = \"none\";\n }\n }, [qaFinished, show]);\n\n useEffect(() => {\n const queryParams = new URLSearchParams(location.search);\n const knowledgeId = queryParams.getAll(\"knowledge_id\")[0];\n const isMailKnowledge = queryParams.getAll(\"is_mail_knowledge\")[0];\n if (knowledgeId && isMailKnowledge) {\n const fetchData = async () => {\n await fetchDetailKnowledge(knowledgeId);\n setShowDefaultMailKnowledgeThread(true);\n };\n fetchData();\n } else if (knowledgeId) {\n const fetchData = async () => {\n await fetchDetailKnowledge(knowledgeId);\n setShow(true);\n };\n fetchData();\n }\n }, []);\n\n useEffect(() => {\n if (showDefaultMailKnowledgeThread) {\n fetchMailKnowledgeThreads();\n }\n }, [showDefaultMailKnowledgeThread]);\n\n return (\n
\n {initLoading ? (\n
\n
\n \n
\n
\n ) : (\n <>\n {totalHits === 0 ? (\n
\n
\n
\n \n
\n
\n
{t(\"initHomeTitle\")}
\n
{t(\"initHomeDescription\")}
\n \n {t(\"initHomeButton\")}\n \n
\n
\n
\n ) : (\n
\n \n\n {sendFlag ? (\n <>\n {\n const newForm = document.getElementById(\"conversationSearchForm\");\n newForm.scrollIntoView({ behavior: \"smooth\" });\n }}\n >\n \n
\n \n <>\n {conversationQuestions?.map(\n (text, i) =>\n i > 0 && (\n \n
\n
{text}
\n
\n \n
\n ),\n )}\n \n {isConversationPage && (\n <>\n {!conversationLoading[conversationLoading.length - 1] && (\n \n )}\n \n )}\n \n ) : (\n \n )}\n\n \n \n {loading ? (\n \n ) : (\n \n )}\n \n \n\n \n \n \n \n \n\n \n \n \n \n \n\n \n \n \n \n \n \n )}\n \n )}\n \n );\n};\n\nSearchForm.propTypes = {\n knowledgeBaseId: PropTypes.number,\n currentMemberId: PropTypes.number,\n randomRoomId: PropTypes.string,\n client: PropTypes.string,\n iconPath: PropTypes.string,\n searchCountLimitExceededFlag: PropTypes.bool,\n isKnowledgeEditable: PropTypes.bool,\n initialQuery: PropTypes.string,\n searchFormat: PropTypes.string,\n};\n","// @ts-nocheck\nimport React, { useRef, useState } from \"react\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport axios from \"axios\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const AddMemberModal = ({\n knowledgeClientCode,\n authentificationToken,\n setPageCategory,\n setMemberListSuccessMessage,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"AddMemberModal\" });\n const [disabledFlag, setDisabledFlag] = useState(false);\n const [addMemberErrorMessages, setAddMemberErrorMessages] = useState([]);\n\n const inviteTextRef = useRef(null);\n\n const addMember = async () => {\n setDisabledFlag(true);\n await axios\n .post(`/${knowledgeClientCode}/settings/knowledge_client_members`, {\n knowledge_client_member: {\n email: inviteTextRef.current.value,\n role: document.getElementById(\"knowledge_client_member_role\").value,\n },\n })\n .then((res) => {\n setPageCategory(\"member\");\n setMemberListSuccessMessage(t(\"invited\"));\n })\n .catch(({ response }) => {\n setAddMemberErrorMessages(response.data.messages);\n setDisabledFlag(false);\n });\n };\n\n return (\n <>\n
\n {addMemberErrorMessages?.length ? (\n
\n {addMemberErrorMessages.map((message, i) => (\n
{message}
\n ))}\n
\n ) : (\n <>\n )}\n\n
\n
\n
{t(\"title\")}
\n
\n\n
\n \n\n
\n
\n \n
\n {t(\"form.email.help\")}\n
\n \n
\n
\n
\n \n \n
\n
\n
\n addMember()}\n disabled={disabledFlag}\n >\n {t(\"form.submit\")}\n \n
\n
setPageCategory(\"member\")}>\n {t(\"form.cancel\")}\n
\n
\n
\n
\n
\n
\n \n );\n};\n\nAddMemberModal.propTypes = {\n knowledgeClientCode: PropTypes.string,\n authentificationToken: PropTypes.string,\n setPageCategory: PropTypes.func,\n setMemberListSuccessMessage: PropTypes.func,\n};\n","// @ts-nocheck\nimport React from \"react\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport axios from \"axios\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const EditMemberModal = ({ url, authentificationToken, setPageCategory, targetMember }) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"EditMemberModal\" });\n\n const editMemberRole = async () => {\n await axios\n .patch(`${url}/${targetMember.id}/update_role`, {\n authenticity_token: authentificationToken,\n knowledge_client_member: {\n role: document.getElementById(\"knowledge_client_member_role\").value,\n },\n })\n .then(() => {\n setPageCategory(\"member\");\n })\n .catch(({ response }) => {});\n };\n\n return (\n <>\n
\n
\n
\n
{t(\"title\")}
\n
\n\n
\n \n\n
\n
\n \n

{targetMember.name}

\n
\n
\n\n
\n
\n \n

{targetMember.email}

\n
\n
\n\n
\n \n \n \n \n \n \n
\n\n
\n
\n \n
\n
setPageCategory(\"member\")}>\n {t(\"form.cancel\")}\n
\n
\n
\n
\n
\n
\n \n );\n};\n\nEditMemberModal.propTypes = {\n url: PropTypes.string,\n authentificationToken: PropTypes.string,\n setPageCategory: PropTypes.func,\n targetMember: PropTypes.object,\n};\n","// @ts-nocheck\nimport React, { useEffect, useState } from \"react\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport axios from \"axios\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const MemberListModal = ({\n knowledgeClientCode,\n setPageCategory,\n memberListSuccessMessage,\n setTargetMember,\n memberListErrorMessages,\n clientMembers,\n setClientMembers,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"MemberListModal\" });\n const [canReadMore, setCanReadMore] = useState(true);\n const [memberSearchQuery, setMemberSearchQuery] = useState(\"\");\n const [searchTimer, setSearchTimer] = useState(null);\n\n const getClientMembers = async (limit = 10, offset = 0, query: \"\") => {\n await axios\n .get(`/${knowledgeClientCode}/settings/knowledge_client_members`, {\n params: {\n limit: limit,\n offset: offset,\n query: query,\n },\n })\n .then((res) => {\n if (res.data.length >= 10) {\n setCanReadMore(true);\n } else {\n setCanReadMore(false);\n }\n\n if (offset === 0) {\n setClientMembers(res.data);\n } else {\n setClientMembers([...clientMembers, ...res.data]);\n }\n })\n .catch(() => {});\n };\n\n const readMore = async () => {\n await getClientMembers(10, clientMembers.length, memberSearchQuery);\n };\n\n const onInputSearchQuery = (e) => {\n const newQuery = e.target.value;\n setMemberSearchQuery(newQuery);\n\n if (searchTimer) {\n clearTimeout(searchTimer);\n }\n\n // 入力毎にリクエストするのは負荷が高いので、300ms待ってからリクエストする\n const newTimer = setTimeout(() => {\n getClientMembers(10, 0, newQuery);\n }, 300);\n\n setSearchTimer(newTimer);\n };\n\n useEffect(() => {\n getClientMembers();\n }, []);\n\n return (\n
\n {memberListSuccessMessage && (\n
\n
{memberListSuccessMessage}
\n
\n )}\n\n {memberListErrorMessages && (\n
\n {memberListErrorMessages?.map((message, i) => (\n
{message}
\n ))}\n
\n )}\n\n
\n
\n
{t(\"title\")}
\n
\n {t(\"description\")}\n
\n
\n\n
\n
setPageCategory(\"addMember\")}>\n {t(\"invite\")}\n
\n
\n
\n\n
\n \n {\n onInputSearchQuery(e);\n }}\n >\n
\n\n \n \n \n \n \n \n \n \n \n\n \n {clientMembers?.map((member, i) => (\n \n \n \n \n \n \n ))}\n \n {canReadMore && (\n \n )}\n \n \n
{t(\"table.columns.name\")}{t(\"table.columns.role\")}
{i + 1}\n
{member.name}
\n
{member.email}
\n
{member.role_name}\n {!member.is_current_member && (\n <>\n \n \n \n
    \n {\n setTargetMember(member);\n setPageCategory(\"editMember\");\n }}\n >\n
    \n {t(\"edit\")}\n
    \n \n
  • \n {\n setTargetMember(member);\n setPageCategory(\"memberDeleteConfirmation\");\n }}\n >\n \n {t(\"delete\")}\n \n \n
  • \n
\n \n )}\n
\n {\n readMore();\n }}\n >\n {t(\"readMore\")}\n \n
\n
\n );\n};\n\nMemberListModal.propTypes = {\n knowledgeClientCode: PropTypes.string,\n setPageCategory: PropTypes.func,\n memberListSuccessMessage: PropTypes.string,\n setTargetMember: PropTypes.func,\n memberListErrorMessages: PropTypes.array,\n clientMembers: PropTypes.array,\n setClientMembers: PropTypes.func,\n};\n","// @ts-nocheck\nimport React from \"react\";\nimport PropTypes from \"prop-types\";\nimport style from \"./KnowledgeLicenseChangeModal.module.scss\";\nimport axios from \"axios\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const KnowledgeLicenseChangeModal = ({\n setPageCategory,\n currentKnowledgeLicenseCount,\n nextKnowledgeNextMonthLicenseCount,\n setTotalKnowledgeLicenseCount,\n totalKnowledgeLicenseCount,\n clientMembersCount,\n licenseChangeSuccessMessage,\n licenseChangeErrorMessage,\n contractType,\n minimumLicenseCount,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"KnowledgeLicenseChangeModal\" });\n\n return (\n
\n {licenseChangeSuccessMessage && (\n
\n
{licenseChangeSuccessMessage}
\n
\n )}\n\n {licenseChangeErrorMessage && (\n
\n
{licenseChangeErrorMessage}
\n
\n )}\n\n
{t(\"title\")}
\n\n
\n {t(\"description\")}\n
\n\n
\n \n
\n \n \n totalKnowledgeLicenseCount <= clientMembersCount || totalKnowledgeLicenseCount <= minimumLicenseCount\n ? \"\"\n : setTotalKnowledgeLicenseCount((prevCount) => prevCount - 1)\n }\n >\n \n
\n
\n setTotalKnowledgeLicenseCount((prevCount) => prevCount + 1)}\n />\n
\n
\n
\n {t(\"form.licenseCount.help\")}\n

\n

\n {t(\"currentMembersCount\", { count: clientMembersCount })}\n

\n {t(\"currentLicenseCount\", { count: currentKnowledgeLicenseCount })}\n

\n {contractType === \"partner\" && (\n <>\n
\n {t(\"nextLicenseCount\", { count: nextKnowledgeNextMonthLicenseCount })}\n \n )}\n
\n
\n
\n {\n setPageCategory(\"licenseRequest\");\n }}\n disabled={currentKnowledgeLicenseCount === totalKnowledgeLicenseCount ? true : false}\n >\n {t(\"form.submit\")}\n \n
\n \n );\n};\n\nKnowledgeLicenseChangeModal.propTypes = {\n setPageCategory: PropTypes.func,\n partnerUpdateLicensePath: PropTypes.string,\n currentKnowledgeLicenseCount: PropTypes.number,\n nextKnowledgeNextMonthLicenseCount: PropTypes.number,\n setTotalKnowledgeLicenseCount: PropTypes.func,\n totalKnowledgeLicenseCount: PropTypes.number,\n clientMembersCount: PropTypes.number,\n licenseChangeSuccessMessage: PropTypes.string,\n licenseChangeErrorMessage: PropTypes.string,\n contractType: PropTypes.string,\n minimumLicenseCount: PropTypes.number,\n};\n","// @ts-nocheck\nimport React, { useState } from \"react\";\nimport axios from \"axios\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport { useTranslation } from \"react-i18next\";\n\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\n\nexport const MyAppModal = ({\n myChatLinkageMembers,\n myDataSourceApps,\n isAppManagable,\n setPageCategory,\n setSelectServiceInfo,\n setMyAppConnectSuccessMessage,\n myAppConnectSuccessMessage,\n updateChatLinkageMemberStatus,\n filterMyApp,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"MyAppModal\" });\n const [disabledFlag, setDisabledFlag] = useState(false);\n const [updateErrorMessage, setUpdateErrorMessage] = useState([]);\n const deleteChatLinkageMember = async (path, serviceCode) => {\n setDisabledFlag(true);\n\n await axios\n .delete(path, {\n headers: {\n \"X-CSRF-Token\": document.getElementsByName(\"csrf-token\")[0].content,\n \"Content-Type\": \"application/json\",\n },\n })\n .then((res) => {\n updateChatLinkageMemberStatus(false, serviceCode, res.data.create_path, null);\n setMyAppConnectSuccessMessage(t(\"disconnectSuccess\"));\n setDisabledFlag(false);\n })\n .catch((error) => {\n setUpdateErrorMessage([...updateErrorMessage, error.response.data.messages]);\n setDisabledFlag(false);\n });\n };\n\n const updateMyDataSourceApps = async (dataSorurse) => {\n await axios\n .delete(dataSorurse.url, {\n headers: {\n \"X-CSRF-Token\": document.getElementsByName(\"csrf-token\")[0].content,\n \"Content-Type\": \"application/json\",\n },\n })\n .then((res) => {\n filterMyApp(dataSorurse);\n setMyAppConnectSuccessMessage(t(\"disconnectSuccess\"));\n })\n .catch((error) => {\n setUpdateErrorMessage([...updateErrorMessage, error.response.data.messages]);\n });\n };\n\n return (\n <>\n
\n {myAppConnectSuccessMessage && (\n
\n
{myAppConnectSuccessMessage}
\n
\n )}\n\n {updateErrorMessage && updateErrorMessage.length > 0 && (\n
\n {updateErrorMessage.map((message, index) => (\n
{message}
\n ))}\n
\n )}\n\n
\n
{t(\"title\")}
\n
\n
{t(\"chat.title\")}
\n {myChatLinkageMembers?.length > 0 ? (\n <>\n
{t(\"chat.description\")}
\n {myChatLinkageMembers?.map((chat_linkage, i) => (\n
\n
\n \n
\n
{chat_linkage.service_name}
\n {chat_linkage.is_linked && (\n
{chat_linkage.uid}
\n )}\n
\n {chat_linkage.is_linked ? (\n
\n deleteChatLinkageMember(chat_linkage.url, chat_linkage.service_code)}\n className={`${style.yoomKnowledgeSettingContentItemAddDoneBtn}`}\n disabled={disabledFlag}\n >\n \n \n {t(\"connected\")}\n \n \n
{t(\"disconnectConform\")}
\n
\n ) : (\n {\n setPageCategory(\"connectId\");\n setSelectServiceInfo(chat_linkage);\n }}\n >\n {t(\"connect\")}\n
\n )}\n
\n
\n ))}\n \n ) : (\n
{t(\"chat.notAllow\")}
\n )}\n
\n\n {isAppManagable && (\n
\n
{t(\"dataSource.title\")}
\n {myDataSourceApps.length ? (\n <>\n {myDataSourceApps?.map((dataSourse, i) => (\n
\n
\n \n
\n
{dataSourse.service_name}
\n
\n {dataSourse.account_id}\n
\n
\n
\n updateMyDataSourceApps(dataSourse)}\n className={`${style.yoomKnowledgeSettingContentItemAddDoneBtn}`}\n >\n \n \n {t(\"connected\")}\n \n
\n
{t(\"disconnectConform\")}
\n
\n
\n
\n ))}\n \n ) : (\n
{t(\"dataSource.empty\")}
\n )}\n
\n )}\n \n \n \n );\n};\n\nMyAppModal.propTypes = {\n myChatLinkageMembers: PropTypes.array,\n myDataSourceApps: PropTypes.array,\n isAppManagable: PropTypes.bool,\n setPageCategory: PropTypes.func,\n setSelectServiceInfo: PropTypes.func,\n setMyAppConnectSuccessMessage: PropTypes.func,\n myAppConnectSuccessMessage: PropTypes.string,\n updateChatLinkageMemberStatus: PropTypes.func,\n filterMyApp: PropTypes.func,\n};\n","// @ts-nocheck\nimport React, { useState, useRef } from \"react\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport axios from \"axios\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const CommonSettingModal = ({\n knowledgeClientId,\n knowledgeClientName,\n updateKnowledgeClientName,\n knowledgeClientIconPath,\n updateIconPath,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"CommonSettingModal\" });\n const [updateSuccessMessage, setUpdateSuccessMessage] = useState(null);\n const [updateErrorMessage, setUpdateErrorMessage] = useState([]);\n const [disabledFlag, setDisabledFlag] = useState(false);\n const [formData, setFormData] = useState({\n name: knowledgeClientName || null,\n iconPath: knowledgeClientIconPath || null,\n });\n const fileInputRef = useRef(null);\n\n const axiosInstance = axios.create({\n headers: {\n \"X-CSRF-Token\": document.getElementsByName(\"csrf-token\")[0].content,\n },\n });\n\n const handleInputChange = (e) => {\n const { name, value } = e.target;\n setFormData({\n ...formData,\n [name]: value,\n });\n };\n\n const handleFileChange = (e) => {\n const file = e.target.files[0];\n if (file) {\n const img = new Image();\n img.src = URL.createObjectURL(file);\n img.onload = () => {\n if (img.width !== 250 || img.height !== 250) {\n setUpdateErrorMessage([...updateErrorMessage, t(\"form.errors.iconSize\")]);\n e.target.value = null;\n return;\n }\n setFormData({\n ...formData,\n iconPath: img.src,\n iconData: file,\n });\n };\n }\n };\n\n const handleImageClick = () => {\n fileInputRef.current.click();\n };\n\n const rollbackIcon = async () => {\n setUpdateErrorMessage([]);\n setUpdateSuccessMessage(null);\n setDisabledFlag(true);\n const data = {\n knowledge_client: {\n icon: null,\n },\n };\n\n await axiosInstance\n .patch(`/knowledge_clients/${knowledgeClientId}.json`, data, {\n headers: {\n \"Content-Type\": \"application/json\",\n },\n })\n .then((res) => {\n const defaultIconPath = getImageUrl(\"images/icons/yoom-knowledge.svg\");\n setFormData({\n ...formData,\n iconPath: defaultIconPath,\n iconData: null,\n });\n updateIconPath(defaultIconPath);\n setUpdateSuccessMessage(t(\"form.iconUpdateSuccess\"));\n setDisabledFlag(false);\n })\n .catch((error) => {\n setDisabledFlag(false);\n setUpdateErrorMessage([...updateErrorMessage, error.response.data.messages]);\n });\n };\n\n const clientInfoUpdate = async () => {\n setUpdateErrorMessage([]);\n setUpdateSuccessMessage(null);\n setDisabledFlag(true);\n const form = new FormData();\n\n if (formData.name !== knowledgeClientName) {\n form.append(\"knowledge_client[name]\", formData.name);\n }\n if (formData.iconData) {\n form.append(\"knowledge_client[icon]\", formData.iconData);\n }\n if (!form.has(\"knowledge_client[name]\") && !form.has(\"knowledge_client[icon]\")) {\n setDisabledFlag(false);\n setUpdateErrorMessage([...updateErrorMessage, t(\"form.errors.notChanged\")]);\n return;\n }\n if (!formData.name) {\n setDisabledFlag(false);\n setUpdateErrorMessage([...updateErrorMessage, t(\"form.errors.workspaceNameEmpty\")]);\n return;\n }\n\n await axiosInstance\n .patch(`/knowledge_clients/${knowledgeClientId}.json`, form, {\n headers: {\n \"Content-Type\": \"multipart/form-data\",\n },\n })\n .then((res) => {\n if (res.data.icon_path) {\n const newIconPath = res.data.icon_path;\n setFormData({\n ...formData,\n iconPath: newIconPath,\n });\n updateIconPath(newIconPath);\n }\n updateKnowledgeClientName(formData.name);\n setUpdateSuccessMessage(t(\"form.commonSettingUpdateSuccess\"));\n setDisabledFlag(false);\n })\n .catch((error) => {\n setDisabledFlag(false);\n setUpdateErrorMessage([...updateErrorMessage, error.response.data.messages]);\n });\n };\n\n return (\n
\n {updateErrorMessage && updateErrorMessage.length > 0 && (\n
\n {updateErrorMessage.map((message, index) => (\n
{message}
\n ))}\n
\n )}\n\n {updateSuccessMessage && (\n
\n
{updateSuccessMessage}
\n
\n )}\n\n
\n
\n
{t(\"title\")}
\n
\n {t(\"description\")}\n
\n
\n
\n\n
\n
\n \n \n
\n
\n\n
\n \n
\n {t(\"form.icon.help\")}\n
\n
\n {t(\"form.rollbackDescription_1\")}\n\n rollbackIcon()}\n >\n {t(\"form.rollbackDefault\")}\n \n {t(\"form.rollbackDescription_2\")}\n
\n\n
\n {t(\"form.icon.alt\")}\n
\n \n \n\n
\n clientInfoUpdate()}\n disabled={disabledFlag}\n >\n {t(\"form.submit\")}\n \n
\n
\n
\n );\n};\n\nCommonSettingModal.propTypes = {\n knowledgeClientId: PropTypes.number,\n knowledgeClientName: PropTypes.string,\n knowledgeClientIconPath: PropTypes.string,\n updateKnowledgeClientName: PropTypes.func,\n updateSuccessMessage: PropTypes.string,\n setUpdateSuccessMessage: PropTypes.func,\n updateIconPath: PropTypes.func,\n};\n","// @ts-nocheck\nimport React, { useEffect, useRef, useState } from \"react\";\nimport style from \"./SearchForm.module.scss\";\nimport chatBotModalStyle from \"./ChatBotModal.module.scss\";\nimport PropTypes from \"prop-types\";\nimport axios from \"axios\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const ConnectIdModal = ({\n setPageCategory,\n selectServiceInfo,\n setMyAppConnectSuccessMessage,\n updateChatLinkageMemberStatus,\n id_check_info,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"ConnectIdModal\" });\n\n const [updateErrorMessage, setUpdateErrorMessage] = useState([]);\n const [disabledFlag, setDisabledFlag] = useState(false);\n const connectIdFormRef = useRef(null);\n\n const connectChatLinkage = async (path, serviceCode) => {\n setDisabledFlag(true);\n await axios\n .post(\n path,\n {\n knowledge_chat_linkage_member: {\n service_code: serviceCode,\n uid: connectIdFormRef.current.value,\n },\n },\n {\n headers: {\n \"X-CSRF-Token\": document.getElementsByName(\"csrf-token\")[0].content,\n \"Content-Type\": \"application/json\",\n },\n },\n )\n .then((res) => {\n updateChatLinkageMemberStatus(true, serviceCode, res.data.delete_path, res.data.uid);\n setPageCategory(\"myApp\");\n setMyAppConnectSuccessMessage(t(\"connectSuccess\"));\n setDisabledFlag(false);\n })\n .catch((error) => {\n setDisabledFlag(false);\n setUpdateErrorMessage([...updateErrorMessage, error.response.data.messages]);\n });\n };\n\n const textWithLink = (id_check_info) => {\n if (!id_check_info?.url) {\n return {id_check_info.id_info_message};\n }\n\n const { url, id_info_message, link_text } = id_check_info;\n const linkedMessage = id_info_message.replace(\n link_text,\n `${link_text}`,\n );\n\n return ;\n };\n\n return (\n <>\n
\n {updateErrorMessage && updateErrorMessage.length > 0 && (\n
\n {updateErrorMessage.map((message, index) => (\n
{message}
\n ))}\n
\n )}\n
\n
\n
\n \n
\n {t(\"title\", { serviceName: selectServiceInfo.service_name })}\n
\n
\n
\n
\n {t(\"description\", { serviceName: selectServiceInfo.service_name })}\n
\n\n \n
\n
\n \n
\n {textWithLink(id_check_info[selectServiceInfo.service_code])}\n
\n \n
\n
\n\n
\n
\n connectChatLinkage(selectServiceInfo.url, selectServiceInfo.service_code)}\n disabled={disabledFlag}\n >\n {t(\"form.submit\")}\n \n
\n
setPageCategory(\"myApp\")}>\n {t(\"form.cancel\")}\n
\n
\n \n
\n
\n
\n \n );\n};\n\nConnectIdModal.propTypes = {\n authentificationToken: PropTypes.string,\n setPageCategory: PropTypes.func,\n selectServiceInfo: PropTypes.object,\n setMyAppConnectSuccessMessage: PropTypes.func,\n updateChatLinkageMemberStatus: PropTypes.func,\n id_check_info: PropTypes.object,\n};\n","// @ts-nocheck\nimport React, { useEffect, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport style from \"./KnowledgeLicenseChangeModal.module.scss\";\nimport axios from \"axios\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nexport const KnowledgeLicenseRequestModal = ({\n setPageCategory,\n partnerUpdateKnowledgeLicensePath,\n setCurrentKnowledgeLicenseCount,\n currentKnowledgeLicenseCount,\n totalKnowledgeLicenseCount,\n setLicenseChangeSuccessMessage,\n setLicenseChangeErrorMessage,\n setNextKnowledgeNextMonthLicenseCount,\n contractType,\n directSellUpdateKnowledgeLicensePath,\n setPaymentSuccessMessage,\n setPaymentErrorMessages,\n paymentErrorMessages,\n directSellContractPeriod,\n directSellNextContractPeriod,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"KnowledgeLicenseRequestModal\" });\n const [disabledFlag, setDisabledFlag] = useState(false);\n\n const nextMonthYear = () => {\n const currentDate = new Date();\n currentDate.setMonth(currentDate.getMonth() + 1);\n\n const year = currentDate.getFullYear();\n // getMonth()は0から始まるため、1を足す\n const month = currentDate.getMonth() + 1;\n\n return t(\"date\", { year: year, month: month });\n };\n\n const currentMonthYear = () => {\n const currentDate = new Date();\n\n const year = currentDate.getFullYear();\n // getMonth()は0から始まるため、1を足す\n const month = currentDate.getMonth() + 1;\n\n return t(\"date\", { year: year, month: month });\n };\n\n const knowledgeLicenseChangeForPartner = async () => {\n await axios\n .post(\n `${partnerUpdateKnowledgeLicensePath}`,\n {\n knowledge_client_license_log: {\n member_count: totalKnowledgeLicenseCount,\n },\n },\n {\n headers: {\n \"X-CSRF-Token\": document.getElementsByName(\"csrf-token\")[0].content,\n \"Content-Type\": \"application/json\",\n },\n },\n )\n .then((res) => {\n setLicenseChangeErrorMessage(\"\");\n if (totalKnowledgeLicenseCount >= currentKnowledgeLicenseCount) {\n setCurrentKnowledgeLicenseCount(res.data.member_count);\n setLicenseChangeSuccessMessage(t(\"updateSuccess\"));\n } else {\n setLicenseChangeSuccessMessage(t(\"downgradeSuccess\"));\n }\n setNextKnowledgeNextMonthLicenseCount(res.data.member_count);\n setPageCategory(\"license_change\");\n setDisabledFlag(false);\n })\n .catch((error) => {\n if (error.response && error.response.status === 422) {\n setLicenseChangeErrorMessage(error.response.data.messages);\n } else {\n setLicenseChangeErrorMessage(t(\"updateFail\"));\n }\n setLicenseChangeSuccessMessage(\"\");\n setPageCategory(\"license_change\");\n setDisabledFlag(false);\n })\n .finally(() => {\n setDisabledFlag(false);\n });\n };\n\n const knowledgeLicenseChangeForDirectSell = async () => {\n await axios\n .post(\n `${directSellUpdateKnowledgeLicensePath}`,\n {\n knowledge_stripe_subscription: {\n license_count: totalKnowledgeLicenseCount,\n },\n },\n {\n headers: {\n \"X-CSRF-Token\": document.getElementsByName(\"csrf-token\")[0].content,\n \"Content-Type\": \"application/json\",\n },\n },\n )\n .then((res) => {\n setPaymentErrorMessages([]);\n if (totalKnowledgeLicenseCount >= currentKnowledgeLicenseCount) {\n setCurrentKnowledgeLicenseCount(res.data.license_count);\n setPaymentSuccessMessage(t(\"updateSuccess\"));\n } else {\n setPaymentSuccessMessage(t(\"downgradeSuccess\"));\n }\n setPageCategory(\"payment\");\n })\n .catch((error) => {\n if (error.response && error.response.status === 422) {\n setPaymentErrorMessages(error.response.data.messages);\n } else {\n setPaymentErrorMessages([t(\"updateFail\")]);\n }\n setPaymentSuccessMessage(\"\");\n })\n .finally(() => {\n setDisabledFlag(false);\n });\n };\n\n useEffect(() => {\n setPaymentErrorMessages([]);\n }, []);\n\n return (\n
\n {t(\"title\")}\n {!!paymentErrorMessages.length && (\n
\n {paymentErrorMessages?.map((message, i) => (\n
{message}
\n ))}\n
\n )}\n\n {totalKnowledgeLicenseCount >= currentKnowledgeLicenseCount ? (\n <>\n
\n \n
\n\n
\n
\n
\n {contractType === \"partner\" ? t(\"appliedMonth\") : t(\"appliedPeriod\")}\n
\n
\n {contractType === \"partner\" ? currentMonthYear() : directSellContractPeriod}\n
\n
\n
\n
\n
\n
{t(\"addLicenseCount\")}
\n
\n {totalKnowledgeLicenseCount - currentKnowledgeLicenseCount}\n
\n
\n
\n
{t(\"totalLicenseCount\")}
\n
{totalKnowledgeLicenseCount}
\n
\n
\n
\n
\n \n ) : (\n <>\n
{t(\"warning\")}
\n
\n
\n
\n {contractType === \"partner\" ? t(\"appliedMonth\") : t(\"appliedPeriod\")}\n
\n
\n {contractType === \"partner\" ? nextMonthYear() : directSellNextContractPeriod}\n
\n
\n
\n
\n
\n
{t(\"appliedLicenseCount\")}
\n
{totalKnowledgeLicenseCount}
\n
\n
\n
\n
\n \n )}\n\n
\n
\n {\n if (contractType === \"partner\") {\n setDisabledFlag(true);\n knowledgeLicenseChangeForPartner();\n } else {\n setDisabledFlag(true);\n knowledgeLicenseChangeForDirectSell();\n }\n }}\n >\n {t(\"submit\")}\n \n
\n setPageCategory(\"license_change\")}\n >\n {t(\"cancel\")}\n
\n
\n \n );\n};\n\nKnowledgeLicenseRequestModal.propTypes = {\n setPageCategory: PropTypes.func,\n partnerUpdateKnowledgeLicensePath: PropTypes.string,\n setCurrentKnowledgeLicenseCount: PropTypes.func,\n currentKnowledgeLicenseCount: PropTypes.number,\n totalKnowledgeLicenseCount: PropTypes.number,\n setLicenseChangeSuccessMessage: PropTypes.func,\n setLicenseChangeErrorMessage: PropTypes.func,\n setNextKnowledgeNextMonthLicenseCount: PropTypes.func,\n contractType: PropTypes.string,\n directSellUpdateKnowledgeLicensePath: PropTypes.string,\n setPaymentSuccessMessage: PropTypes.func,\n paymentErrorMessages: PropTypes.array,\n setPaymentErrorMessages: PropTypes.func,\n directSellContractPeriod: PropTypes.string,\n directSellNextContractPeriod: PropTypes.string,\n};\n","// @ts-nocheck\nimport React, { useState } from \"react\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport axios from \"axios\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const MemberDeleteConfirmationModal = ({\n knowledgeClientCode,\n setPageCategory,\n setMemberListSuccessMessage,\n setMemberListErrorMessages,\n targetMember,\n clientMembers,\n setClientMembers,\n setClientMembersCount,\n setNextKnowledgeNextMonthLicenseCount,\n nextKnowledgeNextMonthLicenseCount,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"MemberDeleteConfirmationModal\" });\n\n const [deleteLicenseFlag, setDeleteLicenseFlag] = useState(true);\n\n const memberDelete = async () => {\n await axios\n .delete(`/${knowledgeClientCode}/settings/knowledge_client_members/${targetMember.id}`, {\n data: {\n knowledge_client_member: {\n delete_license_flag: deleteLicenseFlag,\n },\n },\n })\n .then((response) => {\n if (deleteLicenseFlag === true) {\n setNextKnowledgeNextMonthLicenseCount(nextKnowledgeNextMonthLicenseCount - 1);\n }\n\n const newClientMembers = clientMembers.filter((member) => member.id !== targetMember.id);\n setClientMembers(newClientMembers);\n setClientMembersCount(newClientMembers.length);\n setMemberListSuccessMessage(t(\"deleteSuccess\"));\n })\n .catch(({ response }) => {\n setMemberListErrorMessages(response.data.messages);\n });\n };\n\n return (\n <>\n
\n
\n
\n
{t(\"deleteConfirm\")}
\n
\n\n
\n setDeleteLicenseFlag(e.target.checked)}\n style={{ accentColor: \"#2d6295\" }}\n />\n \n {t(\"deleteWithLicense\")}\n \n
\n
\n {t(\"warning\")}\n
\n\n
\n
\n {\n memberDelete();\n setPageCategory(\"member\");\n }}\n >\n {t(\"submit\")}\n \n
\n {\n setPageCategory(\"member\");\n }}\n >\n {t(\"cancel\")}\n
\n
\n
\n \n \n );\n};\n\nMemberDeleteConfirmationModal.propTypes = {\n knowledgeClientCode: PropTypes.string,\n setPageCategory: PropTypes.func,\n setMemberListSuccessMessage: PropTypes.func,\n setMemberListErrorMessages: PropTypes.func,\n targetMember: PropTypes.object,\n clientMembers: PropTypes.array,\n setClientMembers: PropTypes.func,\n setClientMembersCount: PropTypes.func,\n setNextKnowledgeNextMonthLicenseCount: PropTypes.func,\n nextKnowledgeNextMonthLicenseCount: PropTypes.number,\n};\n","// @ts-nocheck\nimport React from \"react\";\nimport PropTypes from \"prop-types\";\nimport style from \"./SearchForm.module.scss\";\nimport authModalStyle from \"./MemberTwoFactorAuthModal.module.scss\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nexport const MemberTwoFactorAuthRecoveryCodeModal = ({ knowledgeClientCode, codes }) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"MemberTwoFactorAuthRecoveryCodeModal\" });\n const csvUrl = () => {\n const baseUrl = `/${knowledgeClientCode}/settings/knowledge_two_factor_auth/csv`;\n const joinedParam = codes.map((code) => `codes[]=${code}`).join(\"&\");\n\n return `${baseUrl}?${joinedParam}`;\n };\n\n return (\n <>\n
\n
\n

{t(\"title\")}

\n\n
\n \n
\n\n \n\n
    \n {codes.map((code) => (\n
  • {code}
  • \n ))}\n
\n
\n
\n \n );\n};\n\nMemberTwoFactorAuthRecoveryCodeModal.propTypes = {\n knowledgeClientCode: PropTypes.string,\n codes: PropTypes.array,\n};\n","// @ts-nocheck\nimport React, { useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Loader } from \"../Loaders/Loader\";\n\nexport const LoadBtn = (props) => {\n const {\n text,\n url,\n className,\n formName,\n externalOnClick,\n disabled = false,\n parentLoading = true,\n requiredCheck = false,\n } = props;\n const [isloading, setLoading] = useState(false);\n const buttonClick = () => {\n if (typeof externalOnClick === \"function\") {\n externalOnClick();\n }\n\n let locationFlg = true;\n if (requiredCheck) {\n const requiredItems = document.querySelectorAll(\"input:required\");\n if (requiredItems) {\n requiredItems.forEach((item) => {\n if (item.value === \"\") {\n locationFlg = false;\n }\n });\n }\n }\n if (locationFlg) {\n setLoading(true);\n if (url) {\n location.href = url;\n }\n } else {\n setLoading(false);\n }\n };\n\n return (\n \n );\n};\n\nLoadBtn.propTypes = {\n text: PropTypes.string,\n url: PropTypes.string,\n className: PropTypes.string,\n formName: PropTypes.string,\n disabled: PropTypes.bool,\n parentLoading: PropTypes.bool,\n requiredCheck: PropTypes.bool,\n externalOnClick: PropTypes.func,\n};\n","// @ts-nocheck\nimport React, { useEffect, useState, useRef } from \"react\";\nimport axios from \"axios\";\nimport PropTypes from \"prop-types\";\nimport { MemberTwoFactorAuthRecoveryCodeModal } from \"./MemberTwoFactorAuthRecoveryCodeModal\";\nimport style from \"./SearchForm.module.scss\";\nimport authModalStyle from \"./MemberTwoFactorAuthModal.module.scss\";\nimport { Loader } from \"../../common/Loaders/Loader\";\nimport { LoadBtn } from \"../../common/LoadBtn/LoadBtn\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nexport const MemberTwoFactorAuthModal = ({ knowledgeClientCode, authentificationToken, isForcedTwoFactorAuth }) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"MemberTwoFactorAuthModal\" });\n\n const [isLoading, setIsLoading] = useState(true);\n const [isOtpRequiredForLogin, setIsOtpRequiredForLogin] = useState(false);\n const [isOtpSuccess, setIsOtpSuccess] = useState(false);\n const [codes, setCodes] = useState([]);\n const [qrCode, setQrCode] = useState(\"\");\n const [message, setMessage] = useState(\"\");\n const [isError, setIsError] = useState(false);\n const [parentLoading, setParentLoading] = useState(false);\n const otpAttemptRef = useRef(null);\n\n const submit = async () => {\n await axios\n .post(`/${knowledgeClientCode}/settings/knowledge_two_factor_auth`, {\n authenticity_token: authentificationToken,\n otp_attempt: otpAttemptRef.current.value,\n })\n .then((response) => {\n setCodes(response.data.codes);\n setIsOtpSuccess(true);\n })\n .catch((error) => {\n setQrCode(error.response.data.qr_code);\n setIsError(true);\n setMessage(error.response.data.message);\n setParentLoading(false);\n });\n };\n\n const invalidateTwoFactorAuth = async () => {\n await axios\n .delete(`/${knowledgeClientCode}/settings/knowledge_two_factor_auth`, {\n data: {\n authenticity_token: authentificationToken,\n },\n })\n .then((response) => {\n setIsOtpRequiredForLogin(false);\n })\n .catch((error) => {});\n };\n\n const refreshRecoveryCode = async () => {\n await axios\n .post(`/${knowledgeClientCode}/settings/knowledge_two_factor_auth/refresh_recovery_code`, {\n authenticity_token: authentificationToken,\n })\n .then((response) => {\n setCodes(response.data.codes);\n setIsOtpSuccess(true);\n })\n .catch((error) => {\n setParentLoading(false);\n });\n };\n\n const getEditMemberModal = async () => {\n await axios\n .get(`/${knowledgeClientCode}/settings/knowledge_two_factor_auth/edit`, {})\n .then((response) => {\n setIsOtpRequiredForLogin(response.data.is_otp_required_for_login);\n setQrCode(response.data.qr_code);\n setIsLoading(false);\n })\n .catch((error) => {});\n };\n\n useEffect(() => {\n getEditMemberModal();\n }, [isOtpRequiredForLogin]);\n\n return (\n <>\n
\n {isLoading ? (\n <>\n
\n
\n
\n \n
\n
\n
\n \n ) : (\n <>\n {isOtpSuccess ? (\n \n ) : (\n
\n <>\n {isError\n ? message &&
{message}
\n : message &&
{message}
}\n \n

{t(\"title\")}

\n {isOtpRequiredForLogin ? (\n <>\n
{t(\"isEnabled\")}
\n {isForcedTwoFactorAuth ? (\n <>\n
{t(\"canNotDisable\")}
\n \n ) : (\n <>\n
{t(\"enableDescription\")}
\n\n
\n {\n const confirmMessage = t(\"disableConfirm\");\n if (confirmMessage && window.confirm(confirmMessage)) {\n invalidateTwoFactorAuth();\n }\n }}\n >\n {t(\"disable\")}\n \n
\n \n )}\n\n
{t(\"recoveryCodeDescription\")}
\n\n
\n {\n setParentLoading(true);\n refreshRecoveryCode();\n }}\n text={t(\"refreshRecoveryCode\")}\n parentLoading={parentLoading}\n />\n
\n \n ) : (\n <>\n
\n {isForcedTwoFactorAuth && (\n
{t(\"requiredTwoFactorAuth\")}
\n )}\n \n
\n\n
\n
\n
\n\n
\n \n \n
\n\n
\n {\n setParentLoading(true);\n submit();\n }}\n parentLoading={parentLoading}\n />\n
\n \n )}\n
\n )}\n \n )}\n
\n \n );\n};\n\nMemberTwoFactorAuthModal.propTypes = {\n knowledgeClientCode: PropTypes.string.isRequired,\n isForcedTwoFactorAuth: PropTypes.bool.isRequired,\n authentificationToken: PropTypes.string.isRequired,\n};\n","// @ts-nocheck\nimport React, { useState, useEffect } from \"react\";\nimport axios from \"axios\";\nimport PropTypes from \"prop-types\";\nimport ipStyle from \"./ip_restriction_modal.module.scss\";\nimport authModalStyle from \"./MemberTwoFactorAuthModal.module.scss\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const IpRestrictionModal = ({ knowledgeClientCode, authentificationToken, setIsError, setMessage }) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"IpRestrictionModal\" });\n const [secureIps, setSecureIps] = useState([]);\n const [formList, setFormList] = useState([]);\n\n const handleChange = (i, event) => {\n const values = [...formList];\n values[i][event.target.name] = event.target.value;\n setFormList(values);\n };\n\n const handleAdd = () => {\n setFormList([...formList, { address: \"\", cidr: \"\", description: \"\" }]);\n };\n\n const handleSubmit = async () => {\n await axios\n .post(`/${knowledgeClientCode}/settings/knowledge_secure_ips`, {\n authenticity_token: authentificationToken,\n knowledge_client: {\n knowledge_secure_ips_attributes: formList,\n },\n })\n .then((response) => {\n setSecureIps(response.data);\n setFormList([]);\n setIsError(false);\n setMessage(t(\"updateSuccess\"));\n })\n .catch((error) => {\n setIsError(true);\n setMessage(t(\"updateFail\"));\n });\n };\n\n const handleRemove = (i) => {\n const values = [...formList];\n values.splice(i, 1);\n setFormList(values);\n };\n\n const deleteSecureIp = (secureIpId) => {\n setFormList([...formList, { id: secureIpId, _destroy: true }]);\n setSecureIps(secureIps.filter((secureIp) => secureIp.id !== secureIpId));\n };\n\n useEffect(() => {\n const fetchRecords = async () => {\n await axios\n .get(`/${knowledgeClientCode}/settings/knowledge_secure_ips`, {\n params: {\n authenticity_token: authentificationToken,\n },\n })\n .then((response) => {\n setSecureIps(response.data);\n })\n .catch((error) => {\n setIsError(true);\n setMessage(t(\"fetchIpFail\"));\n });\n };\n fetchRecords();\n }, []);\n\n return (\n
\n
{t(\"title\")}
\n
{t(\"description\")}
\n
\n \n \n \n \n \n \n \n \n {secureIps.map((record, idx) => (\n \n \n \n \n \n \n \n ))}\n
{t(\"form.ip.label\")}{t(\"form.cidr.label\")}{t(\"form.description.label\")}
\n handleChange(idx, event)}\n disabled\n />\n /\n handleChange(idx, event)}\n disabled\n />\n \n handleChange(idx, event)}\n disabled\n />\n \n deleteSecureIp(record.id)}\n className={ipStyle.cancelIcon}\n />\n
\n
\n
\n \n {formList.map(\n (form, idx) =>\n !form.id && (\n \n \n \n \n \n \n \n ),\n )}\n
\n handleChange(idx, event)}\n placeholder={t(\"form.ip.placeholder\")}\n />\n /\n handleChange(idx, event)}\n placeholder={t(\"form.cidr.placeholder\")}\n />\n \n handleChange(idx, event)}\n placeholder={t(\"form.description.placeholder\")}\n />\n \n handleRemove(idx)}\n className={ipStyle.cancelIcon}\n />\n
\n
\n
\n {t(\"form.addIp\")}\n
\n handleSubmit()}\n disabled={formList.length === 0}\n >\n {t(\"form.submit\")}\n \n
\n );\n};\n\nIpRestrictionModal.propTypes = {\n knowledgeClientCode: PropTypes.string,\n authentificationToken: PropTypes.string,\n setIsError: PropTypes.func,\n setMessage: PropTypes.func,\n};\n","// @ts-nocheck\nimport React, { useState, useRef } from \"react\";\nimport axios from \"axios\";\nimport PropTypes from \"prop-types\";\nimport style from \"./SearchForm.module.scss\";\nimport authModalStyle from \"./MemberTwoFactorAuthModal.module.scss\";\nimport { IpRestrictionModal } from \"./IpRestrictionModal\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nexport const SecuritySettingModal = ({\n knowledgeClientId,\n knowledgeClientCode,\n authentificationToken,\n isForcedTwoFactorAuth,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"SecuritySettingModal\" });\n\n const [isForced, setIsForced] = useState(isForcedTwoFactorAuth);\n const isForcedTwoFactorAuthRef = useRef(null);\n const [isError, setIsError] = useState(false);\n const [message, setMessage] = useState(\"\");\n const [twoFactorSettingChanged, setTwoFactorSettingChanged] = useState(false);\n\n const handleSubmit = async () => {\n await axios\n .patch(`/knowledge_clients/${knowledgeClientId}/update_is_forced_two_factor_auth.json`, {\n authenticity_token: authentificationToken,\n knowledge_client: {\n is_forced_two_factor_auth: isForcedTwoFactorAuthRef.current.checked,\n },\n })\n .then((res) => {\n setIsForced(isForcedTwoFactorAuthRef.current.checked);\n setIsError(false);\n if (isForcedTwoFactorAuthRef.current.checked) {\n setMessage(t(\"updateSuccess\"));\n } else {\n setMessage(t(\"disableSuccess\"));\n }\n })\n .catch((error) => {\n setIsError(true);\n setMessage(t(\"updateFail\"));\n });\n };\n\n return (\n <>\n
\n
\n <>\n {isError\n ? message &&
{message}
\n : message &&
{message}
}\n \n

{t(\"title\")}

\n
{t(\"description\")}
\n\n
\n
{t(\"requireTwoFactorAuth\")}
\n
\n \n
\n\n
\n setTwoFactorSettingChanged(true)}\n />\n \n
\n handleSubmit()}\n disabled={!twoFactorSettingChanged}\n >\n {t(\"submit\")}\n \n
\n\n
\n \n
\n
\n
\n \n );\n};\n\nSecuritySettingModal.propTypes = {\n knowledgeClientCode: PropTypes.string,\n knowledgeClientId: PropTypes.number,\n authentificationToken: PropTypes.string,\n isForcedTwoFactorAuth: PropTypes.bool,\n};\n","// @ts-nocheck\nimport React from \"react\";\nimport PropTypes from \"prop-types\";\nimport style from \"./DashboardCurrentPlan.module.scss\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const DashBoardCurrentPlan = ({\n currentPlanPeriodInfo,\n setPageNumber,\n setPageCategory,\n isCanceled,\n currentKnowledgeLicenseCount,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"DashBoardCurrentPlan\" });\n return (\n \n {/* グラデーションのデザインを重ねて付与 */}\n
\n
\n
\n \n {currentPlanPeriodInfo?.plan_name}\n
\n {!isCanceled && (\n setPageNumber(2)}\n >\n {t(\"submit\")}\n
\n )}\n \n\n <>\n
\n
\n
\n {t(\"learningCount\")}\n
\n
\n {currentPlanPeriodInfo?.learning_quantity?.toLocaleString()}\n
\n
\n
\n
\n {t(\"licenseCount\")}\n
\n
{currentKnowledgeLicenseCount}
\n
\n {!isCanceled && (\n setPageCategory(\"license_change\")}\n >\n {t(\"licenseChange\")}\n
\n )}\n \n \n <>\n
\n
{t(\"period\")}
\n
\n
\n {currentPlanPeriodInfo?.schedule?.start}〜{currentPlanPeriodInfo?.schedule?.end}\n
\n {!isCanceled && (\n
setPageCategory(\"planCancel\")}>\n {t(\"planCancel\")}\n
\n )}\n
\n
\n \n \n \n );\n};\n\nDashBoardCurrentPlan.propTypes = {\n currentPlanPeriodInfo: PropTypes.object,\n setPageNumber: PropTypes.func,\n setPageCategory: PropTypes.func,\n isCanceled: PropTypes.bool,\n currentKnowledgeLicenseCount: PropTypes.number,\n};\n","// @ts-nocheck\nimport React from \"react\";\nimport PropTypes from \"prop-types\";\n\nexport const SecondaryBtn = ({ text, submit, style = {}, loading = false }) => {\n return (\n \n );\n};\n\nSecondaryBtn.propTypes = {\n submit: PropTypes.func,\n text: PropTypes.string,\n style: PropTypes.object,\n loading: PropTypes.bool,\n};\n","// @ts-nocheck\nimport React from \"react\";\nimport { SecondaryBtn } from \"../../Payment/Button/SecondaryBtn\";\nimport style from \"./InfoCard.module.scss\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const InfoCard = ({ billingPortal, isRequestLoading, isCanceled }) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"InfoCard\" });\n return (\n <>\n
{t(\"paymentMethod\")}
\n
\n
\n {t(\"creditCard\")}\n
\n
\n {!isCanceled && (\n \n )}\n
\n
\n \n );\n};\n\nInfoCard.propTypes = {\n billingPortal: PropTypes.func,\n isRequestLoading: PropTypes.bool,\n isCanceled: PropTypes.bool,\n};\n","// @ts-nocheck\nimport React from \"react\";\nimport PropTypes from \"prop-types\";\nimport style from \"./DashboardPaymentInfo.module.scss\";\nimport { InfoCard } from \"../Payment/Card/InfoCard\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const DashBoardPaymentInfo = ({ currentPaymentInfo, billingPortal, isRequestLoading, isCanceled }) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"DashBoardPaymentInfo\" });\n return (\n
\n
\n
\n
\n
\n
{t(\"title\")}
\n
\n {currentPaymentInfo?.next_payment_date ? currentPaymentInfo?.next_payment_date : \"-\"}\n
\n
\n
\n
{t(\"paymentAmount\")}
\n
\n {t(\"amountMark\")}\n {currentPaymentInfo?.payment_amount?.toLocaleString()}\n
\n
\n
\n <>\n \n \n
\n
\n
\n );\n};\n\nDashBoardPaymentInfo.propTypes = {\n currentPaymentInfo: PropTypes.object,\n billingPortal: PropTypes.func,\n isRequestLoading: PropTypes.bool,\n isCanceled: PropTypes.bool,\n};\n","// @ts-nocheck\nimport React from \"react\";\nimport style from \"./ChangePlan.module.scss\";\nimport PropTypes from \"prop-types\";\nimport { ChangePlanPriceList } from \"../../../common/Knowledges/Payment/ChangePlanPriceList\";\n\nexport const ChangePlan = ({\n currentPlanInfo,\n learningQuantityInfo,\n setPageCategory,\n setChangePlanInfo,\n setPageNumber,\n}) => {\n return (\n
\n
\n \n
\n
\n );\n};\n\nChangePlan.propTypes = {\n currentPlanInfo: PropTypes.object,\n learningQuantityInfo: PropTypes.array,\n setPageCategory: PropTypes.func,\n setChangePlanInfo: PropTypes.func,\n setPageNumber: PropTypes.func,\n};\n","// @ts-nocheck\nimport React, { useEffect, useState } from \"react\";\nimport style from \"./DashboardView.module.scss\";\nimport PropTypes from \"prop-types\";\nimport { DashBoardCurrentPlan } from \"../../../common/Knowledges/Payment/DashBoardCurrentPlan\";\nimport { DashBoardPaymentInfo } from \"../../../common/Knowledges/Payment/DashBoardPaymentInfo\";\nimport { ChangePlan } from \"./ChangePlan\";\nimport axios from \"axios\";\nimport { Loader } from \"../../../common/Loaders/Loader\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const DashboardView = ({\n knowledgeClientCode,\n currentPlanInfo,\n learningQuantityInfo,\n setPageCategory,\n setChangePlanInfo,\n pageNumber,\n setPageNumber,\n paymentSuccessMessage,\n currentKnowledgeLicenseCount,\n setMinimumLicenseCount,\n setTotalKnowledgeLicenseCount,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"DashBoardView\" });\n const [currentPlanPeriodInfo, setCurrentPlanPeriodInfo] = useState({});\n const [currentPaymentInfo, setCurrentPaymentInfo] = useState({});\n const [nextSchedule, setNextSchedule] = useState({});\n const [changeScheduleSuccessMessage, setChangeScheduleSuccessMessage] = useState();\n const [inProgress, setInProgress] = useState(true);\n const [isRequestLoading, setIsRequestLoading] = useState(false);\n const [isCanceled, setIsCanceled] = useState(false);\n const [currentDisplayKnowledgeLicenseCount, setCurrentDisplayKnowledgeLicenseCount] =\n useState(currentKnowledgeLicenseCount);\n\n const getCurrentPeriodPlan = async () => {\n await axios\n .get(\n `/${knowledgeClientCode}/settings/knowledge_stripe_subscriptions/current_period_plan`,\n {},\n {\n headers: {\n \"X-CSRF-Token\": document.getElementsByName(\"csrf-token\")[0].content,\n \"Content-Type\": \"application/json\",\n },\n },\n )\n .then((res) => {\n setCurrentPlanPeriodInfo(res.data);\n setCurrentDisplayKnowledgeLicenseCount(res.data?.license_count);\n setTotalKnowledgeLicenseCount(res.data?.license_count);\n setMinimumLicenseCount(res.data?.minimum_license_count);\n })\n .catch(() => {});\n };\n\n const getCurrentPaymentInfo = async () => {\n await axios\n .get(\n `/${knowledgeClientCode}/settings/knowledge_stripe_subscriptions/payment_info`,\n {},\n {\n headers: {\n \"X-CSRF-Token\": document.getElementsByName(\"csrf-token\")[0].content,\n \"Content-Type\": \"application/json\",\n },\n },\n )\n .then((res) => {\n setCurrentPaymentInfo(res.data);\n setIsCanceled(res.data.is_canceled);\n })\n .catch(() => {});\n };\n\n const getNextSchedule = async () => {\n await axios\n .get(\n `/${knowledgeClientCode}/settings/knowledge_stripe_subscriptions/schedule`,\n {},\n {\n headers: {\n \"X-CSRF-Token\": document.getElementsByName(\"csrf-token\")[0].content,\n \"Content-Type\": \"application/json\",\n },\n },\n )\n .then((res) => {\n setNextSchedule(res?.data);\n })\n .catch(() => {});\n };\n\n const cancelNextSchedule = async () => {\n await axios\n .post(\n `/${knowledgeClientCode}/settings/knowledge_stripe_subscriptions/cancel_schedule`,\n {},\n {\n headers: {\n \"X-CSRF-Token\": document.getElementsByName(\"csrf-token\")[0].content,\n \"Content-Type\": \"application/json\",\n },\n },\n )\n .then((res) => {\n setChangeScheduleSuccessMessage(t(\"successMessage\"));\n setNextSchedule({});\n })\n .catch(() => {});\n };\n\n const billingPortal = async () => {\n setIsRequestLoading(true);\n await axios\n .get(\n `/${knowledgeClientCode}/settings/knowledge_stripe_subscriptions/billing_portal`,\n {},\n {\n headers: {\n \"X-CSRF-Token\": document.getElementsByName(\"csrf-token\")[0].content,\n \"Content-Type\": \"application/json\",\n },\n },\n )\n .then((res) => {\n window.location.href = res.data.redirect_url;\n })\n .finally(() => {\n setIsRequestLoading(false);\n });\n };\n\n const initConnect = async () => {\n await getCurrentPeriodPlan();\n await getCurrentPaymentInfo();\n await getNextSchedule();\n await setInProgress(false);\n };\n\n useEffect(() => {\n initConnect();\n }, []);\n\n return (\n
\n {pageNumber === 1 ? (\n <>\n {inProgress ? (\n
\n \n
\n ) : (\n <>\n {paymentSuccessMessage && (\n
\n
{paymentSuccessMessage}
\n
\n )}\n\n {changeScheduleSuccessMessage && (\n
\n
{changeScheduleSuccessMessage}
\n
\n )}\n\n {Object.keys(nextSchedule).length > 0 && (\n
\n
\n

{t(\"changedPlanContents\")}

\n
\n
\n
\n

{t(\"llmModel\")}

\n

{t(\"licenseCount\")}

\n

{t(\"learningQuantity\")}

\n
\n
\n

{nextSchedule?.llm_model_name}

\n

{nextSchedule?.license_count}

\n

\n {nextSchedule?.learning_quantity.toLocaleString()}\n {t(\"learningQuantityUnit\")}\n

\n
\n
\n {\n if (window.confirm(t(\"deleteConfirmation\"))) {\n cancelNextSchedule();\n }\n }}\n >\n {t(\"cancellation\")}\n
\n
\n )}\n\n
{t(\"title\")}
\n
\n
\n
\n
\n
\n \n
\n \n
\n
\n
\n
\n {!isCanceled && (\n
\n
(isRequestLoading ? \"\" : billingPortal())}>\n {t(\"paymentHistory\")}\n {\" >\"}\n
\n
\n )}\n \n )}\n \n ) : pageNumber === 2 ? (\n \n ) : (\n <>\n )}\n \n );\n};\n\nDashboardView.propTypes = {\n knowledgeClientCode: PropTypes.string,\n currentPlanInfo: PropTypes.object,\n learningQuantityInfo: PropTypes.array,\n pageNumber: PropTypes.number,\n setPageCategory: PropTypes.func,\n setChangePlanInfo: PropTypes.func,\n setPageNumber: PropTypes.func,\n paymentSuccessMessage: PropTypes.string,\n currentKnowledgeLicenseCount: PropTypes.number,\n setMinimumLicenseCount: PropTypes.func,\n setTotalKnowledgeLicenseCount: PropTypes.func,\n};\n","// @ts-nocheck\nimport React, { useEffect, useState } from \"react\";\nimport style from \"./PlanUpdateModal.module.scss\";\nimport PropTypes from \"prop-types\";\nimport axios from \"axios\";\nimport { Loader } from \"../../../common/Loaders/Loader\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const PlanUpdateModal = ({\n knowledgeClientCode,\n changePlanInfo,\n setPageCategory,\n setCurrentPlanInfo,\n setPaymentSuccessMessage,\n paymentErrorMessages,\n setPaymentErrorMessages,\n setPaymentPageNumber,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"PlanUpdateModal\" });\n const [previewPlanInfo, setPreviewPlanInfo] = useState({});\n const [isUpgrade, setIsUpgrade] = useState(true);\n const [isPreviewLoading, setIsPreviewLoading] = useState(true);\n const [isDisabled, setIsDisabled] = useState(false);\n\n const handleUpdatePlan = () => {\n if (changePlanInfo.beforePlanInfo.plan === changePlanInfo.afterPlanInfo.plan) {\n updateLearningQuantity();\n } else {\n updatePlan();\n }\n };\n\n const updatePlan = async () => {\n setIsDisabled(true);\n await axios\n .post(\n `/${knowledgeClientCode}/settings/knowledge_stripe_subscriptions/update_plan`,\n {\n knowledge_stripe_subscription: {\n llm_model: changePlanInfo.afterPlanInfo.plan,\n learning_quantity_grade: changePlanInfo.afterPlanInfo.learning_quantity,\n },\n },\n {\n headers: {\n \"X-CSRF-Token\": document.getElementsByName(\"csrf-token\")[0].content,\n \"Content-Type\": \"application/json\",\n },\n },\n )\n .then(() => {\n setPageCategory(\"payment\");\n setPaymentPageNumber(1);\n if (isUpgrade) {\n setCurrentPlanInfo(changePlanInfo.afterPlanInfo);\n setPaymentSuccessMessage(t(\"successMessage\"));\n } else {\n setPaymentSuccessMessage(t(\"downgradeMessage\"));\n }\n })\n .catch((err) => {\n setPaymentErrorMessages(err.response.data.messages);\n })\n .finally(() => setIsDisabled(false));\n };\n\n const getPreviewPlan = async () => {\n await axios\n .post(\n `/${knowledgeClientCode}/settings/knowledge_stripe_subscriptions/payment_preview`,\n {\n knowledge_stripe_subscription: {\n llm_model: changePlanInfo.afterPlanInfo.plan,\n learning_quantity_grade: changePlanInfo.afterPlanInfo.learning_quantity,\n },\n },\n {\n headers: {\n \"X-CSRF-Token\": document.getElementsByName(\"csrf-token\")[0].content,\n \"Content-Type\": \"application/json\",\n },\n },\n )\n .then((res) => {\n setIsUpgrade(res.data.is_upgrade);\n setPreviewPlanInfo(res.data);\n })\n .catch(() => {\n setPaymentErrorMessages([t(\"errorMessage\")]);\n })\n .finally(() => setIsPreviewLoading(false));\n };\n\n useEffect(() => {\n setPaymentErrorMessages([]);\n setPaymentSuccessMessage(\"\");\n getPreviewPlan();\n }, []);\n\n const updateLearningQuantity = async () => {\n setIsDisabled(true);\n await axios\n .post(\n `/${knowledgeClientCode}/settings/knowledge_stripe_subscriptions/update_learning_quantity`,\n {\n knowledge_stripe_subscription: {\n learning_quantity_grade: changePlanInfo.afterPlanInfo.learning_quantity,\n },\n },\n {\n headers: {\n \"X-CSRF-Token\": document.getElementsByName(\"csrf-token\")[0].content,\n \"Content-Type\": \"application/json\",\n },\n },\n )\n .then(() => {\n setPageCategory(\"payment\");\n setPaymentPageNumber(1);\n if (isUpgrade) {\n setCurrentPlanInfo(changePlanInfo.afterPlanInfo);\n setPaymentSuccessMessage(t(\"successMessage\"));\n } else {\n setPaymentSuccessMessage(t(\"downgradeMessage\"));\n }\n })\n .catch((err) => {\n setPaymentErrorMessages(err.response.data.messages);\n })\n .finally(() => setIsDisabled(false));\n };\n\n const backPaymentPage = () => {\n setPageCategory(\"payment\");\n };\n\n return (\n <>\n
\n {isPreviewLoading ? (\n
\n \n
\n ) : (\n
\n
{t(\"title\")}
\n {!!paymentErrorMessages.length && (\n
\n {paymentErrorMessages?.map((message, i) => (\n
{message}
\n ))}\n
\n )}\n
\n
\n
{t(\"item\")}
\n
\n {changePlanInfo?.afterPlanInfo?.plan === \"gpt35\" ? t(\"gpt35Plan\") : t(\"gpt4Plan\")}\n
\n
\n
\n
\n
{t(\"licenseAmount\")}
\n
\n {`${previewPlanInfo?.license_count}${t(\"license\")} : ${t(\n \"amountMark\",\n )} ${previewPlanInfo?.license_amount?.toLocaleString()}`}\n {t(\"unitMonth\")}\n
\n
\n
\n
\n {t(\"learningAmount\")}\n {t(\"unitMonth\")}\n
\n
\n {`${previewPlanInfo?.learning_quantity_display_name} : ${t(\n \"amountMark\",\n )} ${previewPlanInfo?.learning_quantity_amount?.toLocaleString()}`}\n {t(\"unitMonth\")}\n
\n
\n
\n
\n
{t(\"subTotal\")}
\n
\n {t(\"amountMark\")}\n {` ${previewPlanInfo?.amount_sub_total?.toLocaleString()}`}\n
\n
\n
\n
{t(\"salesTax\")}
\n
\n {t(\"amountMark\")}\n {` ${previewPlanInfo?.tax?.toLocaleString()}`}\n
\n
\n
\n
{t(\"totalAmount\")}
\n
\n {t(\"amountMark\")} {` ${previewPlanInfo?.amount_total?.toLocaleString()}`}\n
\n
\n
\n {isUpgrade ? (\n
\n
{t(\"upgrade.firstDescription\")}
\n
{t(\"upgrade.secondDescription\")}
\n
\n ) : (\n
\n
{t(\"downgrade.firstDescription\")}
\n
{t(\"downgrade.secondDescription\")}
\n
\n )}\n
\n
backPaymentPage()}>\n {t(\"cancel\")}\n
\n (isDisabled ? \"\" : handleUpdatePlan())}\n >\n {t(\"submit\")}\n
\n
\n
\n )}\n \n \n );\n};\n\nPlanUpdateModal.propTypes = {\n knowledgeClientCode: PropTypes.string,\n changePlanInfo: PropTypes.object,\n setPageCategory: PropTypes.func,\n setCurrentPlanInfo: PropTypes.func,\n setPaymentSuccessMessage: PropTypes.func,\n paymentErrorMessages: PropTypes.array,\n setPaymentErrorMessages: PropTypes.func,\n setPaymentPageNumber: PropTypes.func,\n};\n","// @ts-nocheck\nimport React, { useEffect, useState } from \"react\";\nimport style from \"./PlanCancelModal.module.scss\";\nimport PropTypes from \"prop-types\";\nimport axios from \"axios\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const PlanCancelModal = ({\n knowledgeClientCode,\n setPageCategory,\n setPaymentSuccessMessage,\n paymentErrorMessages,\n setPaymentErrorMessages,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"PlanCancelModal\" });\n const [isDisabled, setIsDisabled] = useState(false);\n\n const cancelPlan = async () => {\n setIsDisabled(true);\n await axios\n .post(\n `/${knowledgeClientCode}/settings/knowledge_stripe_subscriptions/cancel_subscription`,\n {},\n {\n headers: {\n \"X-CSRF-Token\": document.getElementsByName(\"csrf-token\")[0].content,\n \"Content-Type\": \"application/json\",\n },\n },\n )\n .then(() => {\n setPageCategory(\"payment\");\n setPaymentSuccessMessage(t(\"successMessage\"));\n })\n .catch(() => {\n setPaymentErrorMessages([t(\"errorMessage\")]);\n })\n .finally(() => setIsDisabled(false));\n };\n\n const backPaymentPage = () => {\n setPageCategory(\"payment\");\n };\n\n useEffect(() => {\n setPaymentErrorMessages([]);\n setPaymentSuccessMessage(\"\");\n }, []);\n\n return (\n <>\n
\n
\n
{t(\"title\")}
\n {!!paymentErrorMessages.length && (\n
\n {paymentErrorMessages?.map((message, i) => (\n
{message}
\n ))}\n
\n )}\n
{t(\"confirmText\")}
\n
\n
{t(\"firstDescription\")}
\n
{t(\"secondDescription\")}
\n
\n
\n
backPaymentPage()}>\n {t(\"cancel\")}\n
\n (isDisabled ? \"\" : cancelPlan())}\n >\n {t(\"submit\")}\n
\n
\n
\n \n \n );\n};\n\nPlanCancelModal.propTypes = {\n knowledgeClientCode: PropTypes.string,\n setPageCategory: PropTypes.func,\n setPaymentSuccessMessage: PropTypes.func,\n paymentErrorMessages: PropTypes.array,\n setPaymentErrorMessages: PropTypes.func,\n};\n","// @ts-nocheck\nimport React, { useState, useEffect } from \"react\";\nimport axios from \"axios\";\nimport PropTypes from \"prop-types\";\nimport style from \"./LlmModelSettingModal.module.scss\";\nimport { useTranslation, Trans } from \"react-i18next\";\nimport { Loader } from \"../../common/Loaders/Loader\";\n\nexport const LlmModelSettingModal = ({ knowledgeClientCode, authentificationToken }) => {\n const i18keyPrefix = \"LlmModelSettingModal\";\n const { t } = useTranslation(\"translation\", { keyPrefix: \"LlmModelSettingModal\" });\n const { commonTranslation } = useTranslation(\"translation\", { keyPrefix: \"Common\" });\n\n // TODO: 杉山さんのCSRF対策に対応する\n const axiosInstance = axios.create({\n headers: {\n \"X-Requested-With\": \"XMLHttpRequest\",\n \"X-CSRF-Token\": authentificationToken,\n },\n });\n const ApiPath = `/${knowledgeClientCode}/knowledge_client_llm_model_setting`;\n const changeableFields = [\"knowledge_search\", \"mail_generation\", \"knowledge_generation\"];\n\n const [llmModelSetting, setLlmModelSetting] = useState(null);\n const [modelOptions, setModelOptions] = useState(null);\n const [recommendedModels, setRecommendedModels] = useState(null);\n const [updateSuccessMessage, setUpdateSuccessMessage] = useState(null);\n const [updateFailedMessage, setUpdateFailedMessage] = useState(null);\n const [validationErrorMessages, setValidationErrorMessages] = useState({});\n const [isUpdating, setIsUpdating] = useState(false);\n\n const fetchModelOptions = async () => {\n await axiosInstance\n .get(`${ApiPath}/model_names`)\n .then((res) => {\n setModelOptions(res.data.model_names);\n setRecommendedModels(res.data.recommended_models);\n })\n .catch((error) => {\n setUpdateFailedMessage(commonTranslation(\"systemError\"));\n });\n };\n\n const fetchLlmModelSetting = async () => {\n await axiosInstance\n .get(ApiPath)\n .then((res) => {\n setLlmModelSetting({\n knowledge_search: res.data.knowledge_search,\n mail_generation: res.data.mail_generation,\n knowledge_generation: res.data.knowledge_generation,\n });\n })\n .catch((error) => {\n setUpdateFailedMessage(commonTranslation(\"systemError\"));\n });\n };\n\n const handleSubmit = async (e) => {\n e.preventDefault();\n setUpdateSuccessMessage(null);\n setUpdateFailedMessage(null);\n setIsUpdating(true);\n\n const formData = new FormData(document.forms.llmModelSetting);\n await axiosInstance\n .patch(ApiPath, formData)\n .then((res) => {\n setUpdateSuccessMessage(t(\"updateSuccess\"));\n setValidationErrorMessages({});\n window.location.reload();\n })\n .catch((error) => {\n if (error.response.status === 422) {\n setUpdateFailedMessage(t(\"updateFail\"));\n setValidationErrorMessages(error.response.data);\n } else {\n setUpdateFailedMessage(commonTranslation(\"systemError\"));\n }\n })\n .finally(() => {\n setIsUpdating(false);\n });\n };\n\n useEffect(() => {\n fetchLlmModelSetting();\n fetchModelOptions();\n }, []);\n\n return (\n <>\n
\n {updateSuccessMessage && (\n
\n
{updateSuccessMessage}
\n
\n )}\n\n {updateFailedMessage && (\n
\n
{updateFailedMessage}
\n
\n )}\n\n
\n
\n
{t(\"title\")}
\n
{t(\"description\")}
\n
\n
\n\n {llmModelSetting && modelOptions ? (\n
\n {changeableFields.map((key) => (\n
\n
\n \n \n {Object.entries(modelOptions[key]).map(([value, key]) => (\n \n ))}\n \n {validationErrorMessages[key] ? (\n
{validationErrorMessages[key].join(\", \")}
\n ) : (\n

\n \n

\n )}\n
\n
\n ))}\n\n \n {isUpdating ? : {t(\"submit\")}}\n \n \n ) : (\n
\n \n
\n )}\n
\n \n );\n};\n\nLlmModelSettingModal.propTypes = {\n knowledgeClientCode: PropTypes.string,\n authentificationToken: PropTypes.string,\n};\n","// @ts-nocheck\nimport React, { useState, useEffect } from \"react\";\nimport axios from \"axios\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport style from \"./SearchForm.module.scss\";\nimport PropTypes from \"prop-types\";\nimport { Modal } from \"react-bootstrap\";\nimport { AddMemberModal } from \"./AddMemberModal\";\nimport { EditMemberModal } from \"./EditMemberModal\";\nimport { MemberListModal } from \"./MemberListModal\";\nimport { KnowledgeLicenseChangeModal } from \"./KnowledgeLicenseChangeModal\";\nimport { MyAppModal } from \"./MyAppModal\";\nimport { CommonSettingModal } from \"./CommonSettingModal\";\nimport { ConnectIdModal } from \"./ConnectIdModal\";\nimport { KnowledgeLicenseRequestModal } from \"./KnowledgeLicenseRequestModal\";\nimport { MemberDeleteConfirmationModal } from \"./MemberDeleteConfirmationModal\";\nimport { MemberTwoFactorAuthModal } from \"./MemberTwoFactorAuthModal\";\nimport { SecuritySettingModal } from \"./SecuritySettingModal\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport { DashboardView } from \"./payment/DashboardView\";\nimport { useTranslation } from \"react-i18next\";\nimport { PlanUpdateModal } from \"./payment/PlanUpdateModal\";\nimport { PlanCancelModal } from \"./payment/PlanCancelModal\";\nimport { LlmModelSettingModal } from \"./LlmModelSettingModal\";\n\nexport const SettingModal = (props) => {\n const { t, i18n } = useTranslation(\"translation\", { keyPrefix: \"SettingModal\" });\n\n const [show, setShow] = useState(false);\n const [pageCategory, setPageCategory] = useState(\"myApp\");\n const [paymentPageNumber, setPaymentPageNumber] = useState(1);\n const [targetMember, setTargetMember] = useState(null);\n const [memberListSuccessMessage, setMemberListSuccessMessage] = useState(\"\");\n const [myAppConnectSuccessMessage, setMyAppConnectSuccessMessage] = useState(\"\");\n const [licenseChangeSuccessMessage, setLicenseChangeSuccessMessage] = useState(\"\");\n const [paymentSuccessMessage, setPaymentSuccessMessage] = useState(\"\");\n const [paymentErrorMessages, setPaymentErrorMessages] = useState([]);\n const [licenseChangeErrorMessage, setLicenseChangeErrorMessage] = useState(\"\");\n const [myDataSourceApps, setMyDataSourceApps] = useState(props.myDataSourceApps || []);\n const [myChatLinkageMembers, setMyChatLinkageMembers] = useState(props.myChatLinkageMembers || []);\n const [knowledgeClientIconPath, setKnowledgeClientIconPath] = useState(props.knowledgeClientIconPath);\n const [knowledgeClientName, setKnowledgeClientName] = useState(props.knowledgeClientName);\n const [selectServiceInfo, setSelectServiceInfo] = useState({});\n const [currentKnowledgeLicenseCount, setCurrentKnowledgeLicenseCount] = useState(\n props?.directSellKnowledgeLicenseCount || props?.partnerKnowledgeLicenseCount,\n );\n const [totalKnowledgeLicenseCount, setTotalKnowledgeLicenseCount] = useState(\n props?.directSellKnowledgeLicenseCount || props?.partnerKnowledgeLicenseCount,\n );\n const [nextKnowledgeNextMonthLicenseCount, setNextKnowledgeNextMonthLicenseCount] = useState(\n props.partnerKnowledgeNextMonthLicenseCount,\n );\n const [memberListErrorMessages, setMemberListErrorMessages] = useState(null);\n const [clientMembers, setClientMembers] = useState([]);\n const [clientMembersCount, setClientMembersCount] = useState(props.memberCount);\n const [changePlanInfo, setChangePlanInfo] = useState(props.memberCount);\n const [currentPlanInfo, setCurrentPlanInfo] = useState(props.current_plan_info);\n const [minimumLicenseCount, setMinimumLicenseCount] = useState(props.minimumLicenseCount);\n\n const handleIconPathUpdate = (newIconPath) => {\n setKnowledgeClientIconPath(newIconPath);\n };\n\n const handleKnowledgeClientNameUpdate = (newName) => {\n setKnowledgeClientName(newName);\n };\n\n const handleClose = () => {\n const params = new URLSearchParams(location.search);\n params.delete(\"category\");\n params.delete(\"status\");\n\n const extractedParams = params.toString();\n history.pushState(\"\", \"\", `${location.pathname}?${extractedParams}`);\n\n setPageCategory(\"myApp\");\n setShow(false);\n\n setMemberListSuccessMessage(\"\");\n setMyAppConnectSuccessMessage(\"\");\n setLicenseChangeSuccessMessage(\"\");\n setLicenseChangeErrorMessage(\"\");\n setMemberListErrorMessages(null);\n setPaymentSuccessMessage(\"\");\n setPaymentErrorMessages([]);\n };\n const handleShow = () => {\n setShow(true);\n };\n\n const updateChatLinkageMemberStatus = (linkageStatus, serviceCode, newUrl, uid) => {\n setMyChatLinkageMembers((prevMembers) => {\n return prevMembers.map((member) => {\n if (member.service_code === serviceCode) {\n return {\n ...member,\n is_linked: linkageStatus,\n url: newUrl,\n uid: uid,\n };\n }\n return member;\n });\n });\n };\n\n const filterMyApp = (myApp) => {\n setMyDataSourceApps((prevApps) => {\n return prevApps.filter((app) => app !== myApp);\n });\n };\n\n const extractChatLinkageMember = (serviceCode) => {\n const filteredMember = myChatLinkageMembers.find((member) => member.service_code === serviceCode);\n return !filteredMember || filteredMember.is_linked === true ? null : filteredMember;\n };\n\n useEffect(() => {\n const queryParams = new URLSearchParams(location.search);\n const lastCategory = queryParams.getAll(\"category\").slice(-1)[0];\n\n if (lastCategory === \"my_apps\") {\n handleShow();\n setPageCategory(\"myApp\");\n } else if (lastCategory === \"client_members\") {\n handleShow();\n setPageCategory(\"member\");\n } else if (lastCategory === \"license_change\") {\n handleShow();\n setPageCategory(\"license_change\");\n } else if (lastCategory === \"common_setting\") {\n handleShow();\n setPageCategory(\"common_setting\");\n } else if (lastCategory === \"connect_id\") {\n const serviceCode = queryParams.get(\"service_code\");\n\n if (serviceCode) {\n const filteredMember = extractChatLinkageMember(serviceCode);\n handleShow();\n setPageCategory(filteredMember ? \"connectId\" : \"myApp\");\n\n if (filteredMember) {\n setSelectServiceInfo(filteredMember);\n }\n }\n } else if (lastCategory === \"payment\") {\n handleShow();\n setPageCategory(\"payment\");\n }\n }, []);\n\n useEffect(() => {\n setMyChatLinkageMembers(props.myChatLinkageMembers || []);\n }, [props.myChatLinkageMembers]);\n\n useEffect(() => {\n i18n.changeLanguage(props.locale);\n }, []);\n\n return (\n <>\n
  • \n handleShow()} className=\"w-100 d-flex align-items-center yoom-text-black\">\n \n {t(\"title\")}\n \n \n {pageCategory === \"addMember\" ? (\n \n ) : pageCategory === \"editMember\" && targetMember ? (\n \n ) : pageCategory === \"connectId\" ? (\n \n ) : pageCategory === \"licenseRequest\" ? (\n \n ) : pageCategory === \"memberDeleteConfirmation\" && targetMember ? (\n \n ) : pageCategory === \"planUpdate\" ? (\n \n ) : pageCategory === \"planCancel\" ? (\n \n ) : (\n
    \n
    \n
    {t(\"title\")}
    \n handleClose()}\n />\n
    \n
    \n
    \n
    \n
    {t(\"menuList.account\")}
    \n setPageCategory(\"myApp\")}\n >\n {pageCategory === \"myApp\" ? (\n \n ) : (\n \n )}\n {t(\"menuAccountItems.myApp\")}\n
    \n setPageCategory(\"memberTwoFactorAuth\")}\n >\n {pageCategory === \"memberTwoFactorAuth\" ? (\n \n ) : (\n \n )}\n {t(\"menuAccountItems.twoFactorAuth\")}\n
    \n
    \n {props.isMemberManagable && (\n
    \n
    {t(\"menuList.team\")}
    \n setPageCategory(\"commonSetting\")}\n >\n {pageCategory === \"commonSetting\" ? (\n \n ) : (\n \n )}\n {t(\"menuTeamItems.commonSetting\")}\n
    \n setPageCategory(\"llmModel\")}\n >\n {pageCategory === \"llmModel\" ? (\n \n ) : (\n \n )}\n {t(\"menuTeamItems.llmModel\")}\n
    \n setPageCategory(\"member\")}\n >\n {pageCategory === \"member\" ? (\n \n ) : (\n \n )}\n {t(\"menuTeamItems.memberManagement\")}\n \n {props.isLicenseManageable && props.contract_type === \"partner\" && (\n setPageCategory(\"license_change\")}\n >\n \n {t(\"menuTeamItems.licenseManagement\")}\n \n )}\n {props.contract_type === \"direct_sell\" && (\n setPageCategory(\"payment\")}\n >\n {pageCategory === \"payment\" ? (\n \n ) : (\n \n )}\n {t(\"menuTeamItems.payment\")}\n \n )}\n setPageCategory(\"security\")}\n >\n {pageCategory === \"security\" ? (\n \n ) : (\n \n )}\n {t(\"menuTeamItems.security\")}\n \n \n )}\n \n {pageCategory === \"myApp\" ? (\n \n ) : pageCategory === \"member\" ? (\n \n ) : pageCategory === \"license_change\" ? (\n \n ) : pageCategory === \"commonSetting\" ? (\n \n ) : pageCategory === \"llmModel\" ? (\n \n ) : pageCategory === \"memberTwoFactorAuth\" ? (\n \n ) : pageCategory === \"security\" ? (\n \n ) : pageCategory === \"payment\" ? (\n \n ) : (\n <>\n )}\n \n \n )}\n
    \n
  • \n \n );\n};\n\nSettingModal.propTypes = {\n knowledgeClientId: PropTypes.number,\n url: PropTypes.string,\n knowledgeClientCode: PropTypes.string,\n knowledgeClientName: PropTypes.string,\n knowledgeClientIconPath: PropTypes.string,\n authentificationToken: PropTypes.string,\n chatLinkageApps: PropTypes.array,\n myChatLinkageMembers: PropTypes.array,\n myDataSourceApps: PropTypes.array,\n isForcedTwoFactorAuth: PropTypes.bool,\n isAppManagable: PropTypes.bool,\n isMemberManagable: PropTypes.bool,\n isLicenseManageable: PropTypes.bool,\n chat_linkage_procedure: PropTypes.object,\n id_check_info: PropTypes.object,\n partnerKnowledgeLicenseCount: PropTypes.number,\n directSellKnowledgeLicenseCount: PropTypes.number,\n memberCount: PropTypes.number,\n partnerUpdateKnowledgeLicensePath: PropTypes.string,\n partnerKnowledgeNextMonthLicenseCount: PropTypes.number,\n locale: PropTypes.string,\n current_plan_info: PropTypes.object,\n learning_quantity_info: PropTypes.array,\n contract_type: PropTypes.string,\n directSellUpdateKnowledgeLicensePath: PropTypes.string,\n directSellContractPeriod: PropTypes.string,\n directSellNextContractPeriod: PropTypes.string,\n minimumLicenseCount: PropTypes.number,\n};\n","// @ts-nocheck\nimport React, { useState, useEffect, useRef } from \"react\";\nimport axios from \"axios\";\nimport style from \"./knowledge_base_share.module.scss\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport PropTypes from \"prop-types\";\nimport { Modal } from \"react-bootstrap\";\nimport { KNOWLEDGE_LIST_SIZE_PER_PAGE } from \"../../../constants/constants\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const KnowledgeBaseShareForm = ({\n knowledgeClientCode,\n knowledgeBaseId,\n setUnreadableMembers,\n readableMembers,\n setReadableMembers,\n showForm,\n setShowForm,\n authentificationToken,\n}) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"KnowledgeBaseShareForm\" });\n const [selectedMembers, setSelectedMembers] = useState([]);\n const [notSelectedMembers, setNotSelectedMembers] = useState([]);\n const [inviteButtonEnabled, setInviteButtonEnabled] = useState(false);\n const [selectionEnabled, setSelectionEnabled] = useState(false);\n const [canReadMoreNotSelectedMembers, setCanReadMoreNotSelectedMembers] = useState(true);\n const inputRef = useRef();\n const [timer, setTimer] = useState(null);\n\n const handleClose = () => {\n setShowForm(false);\n setSelectedMembers([]);\n setNotSelectedMembers(notSelectedMembers);\n setSelectionEnabled(false);\n setInviteButtonEnabled(false);\n };\n\n const handleSelectionEnabled = (e) => {\n if (!e.target.closest(\".modalSelectContainer\")) {\n setSelectionEnabled(false);\n }\n };\n\n const getNotSelectedMembers = async (query = \"\", limit = KNOWLEDGE_LIST_SIZE_PER_PAGE, offset = null) => {\n const offsetNumber = offset === null ? notSelectedMembers.length : offset;\n\n await axios\n .get(`/${knowledgeClientCode}/knowledge_resource_permission_groups/unreadable_members`, {\n params: {\n knowledge_resourceable_type: \"KnowledgeBase\",\n knowledge_resourceable_id: knowledgeBaseId,\n query: query || null,\n limit: limit,\n offset: offsetNumber,\n },\n })\n .then((res) => {\n if (res.data.unreadable_members.length < KNOWLEDGE_LIST_SIZE_PER_PAGE) {\n setCanReadMoreNotSelectedMembers(false);\n }\n if (offsetNumber === 0) {\n setNotSelectedMembers(res.data.unreadable_members);\n } else {\n setNotSelectedMembers([...notSelectedMembers, ...res.data.unreadable_members]);\n }\n });\n };\n\n const searchNotSelectedMembers = (query) => {\n clearTimeout(timer);\n\n const newTimer = setTimeout(() => {\n getNotSelectedMembers(query, KNOWLEDGE_LIST_SIZE_PER_PAGE, 0);\n }, 500);\n\n setTimer(newTimer);\n };\n\n const unselectMember = (targetId) => {\n setSelectedMembers(selectedMembers.filter((value) => value.id !== targetId));\n\n const targetMember = selectedMembers.find((member) => member.id === targetId);\n const newNotSelectedMembers = notSelectedMembers;\n\n if (targetMember) {\n if (!notSelectedMembers.some((member) => member.id === targetMember.id)) {\n newNotSelectedMembers.push(targetMember);\n }\n }\n setNotSelectedMembers(newNotSelectedMembers);\n setCanReadMoreNotSelectedMembers(false);\n };\n\n const selectMember = (targetId) => {\n let isAlreadySelected = false;\n selectedMembers.forEach((value) => {\n if (value.id === targetId) {\n isAlreadySelected = true;\n return;\n }\n });\n\n if (!isAlreadySelected) {\n notSelectedMembers.forEach((value) => {\n if (value.id === targetId) {\n setSelectedMembers([...selectedMembers, value]);\n }\n });\n\n setInviteButtonEnabled(true);\n }\n\n setNotSelectedMembers(notSelectedMembers.filter((value) => value.id !== targetId));\n setCanReadMoreNotSelectedMembers(false);\n };\n\n const inviteMembers = () => {\n const knowledgeClientMemberIds = selectedMembers.map((member) => member.id);\n\n return async () => {\n await axios\n .post(`/${knowledgeClientCode}/knowledge_resource_permission_groups/batch_create`, {\n knowledge_client_member_ids: knowledgeClientMemberIds,\n knowledge_resource_permission_group: {\n knowledge_resourceable_type: \"KnowledgeBase\",\n knowledge_resourceable_id: knowledgeBaseId,\n role: \"reader\",\n },\n authenticity_token: authentificationToken,\n })\n .then((res) => {\n setShowForm(false);\n setReadableMembers([...readableMembers, ...res.data.members]);\n setUnreadableMembers(\n notSelectedMembers.filter((value) => {\n return !selectedMembers.some((selectedMember) => selectedMember.id === value.id);\n }),\n );\n setSelectedMembers([]);\n })\n .catch((error) => {});\n };\n };\n\n useEffect(() => {\n getNotSelectedMembers();\n }, []);\n\n return (\n <>\n \n \n
    {t(\"title\")}
    \n
    \n {\n setSelectionEnabled(true);\n }}\n >\n
    \n {selectedMembers.length === 0 &&
    {t(\"form.members.label\")}
    }\n
    \n {/* 選択中エリア */}\n {selectedMembers &&\n selectedMembers.map((value) => (\n
    \n {value.name}\n {\n unselectMember(value.id);\n }}\n />\n
    \n ))}\n
    \n\n {/* 選択候補エリア */}\n \n
    \n {\n searchNotSelectedMembers(e.target.value);\n }}\n />\n
    \n {notSelectedMembers && notSelectedMembers.length !== 0 ? (\n
    \n {notSelectedMembers.map((member, index) => (\n {\n selectMember(member.id);\n inputRef.current.value = \"\";\n e.stopPropagation();\n }}\n >\n {member.name}\n {member.email}\n
    \n ))}\n {canReadMoreNotSelectedMembers && (\n
    \n {\n getNotSelectedMembers(inputRef.current.value);\n }}\n >\n {t(\"form.suggest.readMore\")}\n \n
    \n )}\n \n ) : (\n \n {t(\"form.suggest.noResult\")}\n \n )}\n \n \n
    \n \n \n \n {t(\"form.submit\")}\n \n \n \n \n );\n};\n\nKnowledgeBaseShareForm.propTypes = {\n knowledgeClientCode: PropTypes.string,\n knowledgeBaseId: PropTypes.number,\n notSelectedMembers: PropTypes.array,\n setUnreadableMembers: PropTypes.func,\n readableMembers: PropTypes.array,\n setReadableMembers: PropTypes.func,\n showForm: PropTypes.bool,\n setShowForm: PropTypes.func,\n authentificationToken: PropTypes.string,\n};\n","// @ts-nocheck\nimport React, { useState, useEffect, useRef } from \"react\";\nimport axios from \"axios\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport PropTypes from \"prop-types\";\nimport { KnowledgeBaseShareForm } from \"./KnowledgeBaseShareForm\";\nimport style from \"./knowledge_base_share.module.scss\";\nimport { KNOWLEDGE_LIST_SIZE_PER_PAGE } from \"../../../constants/constants\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const KnowledgeBaseShareView = (props) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"KnowledgeBaseShareView\" });\n\n const [readableMembers, setReadableMembers] = useState([]);\n const [unreadableMembers, setUnreadableMembers] = useState([]);\n const [readableTotalCount, setReadableTotalCount] = useState(0);\n const [showForm, setShowForm] = useState(false);\n const [isInputting, setIsInputting] = useState(false);\n const [timer, setTimer] = useState(null);\n const [isOnSearch, setIsOnSearch] = useState(false);\n const [canReadMoreReadableMembers, setCanReadMoreReadableMembers] = useState(true);\n const [canReadMoreUnreadableMembers, setCanReadMoreUnreadableMembers] = useState(true);\n const searchRef = useRef(null);\n\n const searchMembers = (query) => {\n clearTimeout(timer);\n setCanReadMoreReadableMembers(true);\n setCanReadMoreUnreadableMembers(true);\n\n const newTimer = setTimeout(() => {\n getReadableMembers(query, KNOWLEDGE_LIST_SIZE_PER_PAGE, 0);\n getUnreadableMembers(query, KNOWLEDGE_LIST_SIZE_PER_PAGE, 0);\n }, 500);\n\n setTimer(newTimer);\n };\n\n const inviteMember = async (member) => {\n await axios\n .post(`/${props.knowledge_client_code}/knowledge_resource_permission_groups`, {\n authenticity_token: props.authentification_token,\n knowledge_client_member_id: member.id,\n knowledge_resource_permission_group: {\n knowledge_resourceable_type: \"KnowledgeBase\",\n knowledge_resourceable_id: props.knowledge_base_id,\n role: \"reader\",\n },\n })\n .then((res) => {\n setReadableMembers([...readableMembers, res.data]);\n setUnreadableMembers(\n unreadableMembers.filter((unreadableMember) => {\n return unreadableMember.id !== res.data.id;\n }),\n );\n setCanReadMoreReadableMembers(false);\n setCanReadMoreUnreadableMembers(false);\n });\n };\n\n const removeMember = async (member) => {\n await axios\n .delete(\n `/${props.knowledge_client_code}/knowledge_resource_permission_groups/${member.knowledge_resource_permission_group_id}`,\n {\n data: {\n authenticity_token: props.authentification_token,\n },\n },\n )\n .then(() => {\n setReadableMembers(\n readableMembers.filter((sharedMember) => {\n return sharedMember.id !== member.id;\n }),\n );\n setUnreadableMembers([...unreadableMembers, member]);\n setCanReadMoreReadableMembers(false);\n setCanReadMoreUnreadableMembers(false);\n });\n };\n\n const getReadableMembers = async (query = \"\", limit = KNOWLEDGE_LIST_SIZE_PER_PAGE, offset = null) => {\n const offsetNumber = offset === null ? readableMembers.length : offset;\n\n await axios\n .get(`/${props.knowledge_client_code}/knowledge_resource_permission_groups/readable_members`, {\n params: {\n knowledge_resourceable_type: \"KnowledgeBase\",\n knowledge_resourceable_id: props.knowledge_base_id,\n query: query,\n limit: limit,\n offset: offsetNumber,\n },\n })\n .then((res) => {\n if (\n res.data.total <= KNOWLEDGE_LIST_SIZE_PER_PAGE ||\n res.data.readable_members.length < KNOWLEDGE_LIST_SIZE_PER_PAGE\n ) {\n setCanReadMoreReadableMembers(false);\n }\n if (offsetNumber === 0) {\n setReadableMembers(res.data.readable_members);\n } else {\n setReadableMembers([...readableMembers, ...res.data.readable_members]);\n }\n setReadableTotalCount(res.data.total);\n });\n };\n\n const getUnreadableMembers = async (query = \"\", limit = KNOWLEDGE_LIST_SIZE_PER_PAGE, offset = null) => {\n const offsetNumber = offset === null ? unreadableMembers.length : offset;\n\n await axios\n .get(`/${props.knowledge_client_code}/knowledge_resource_permission_groups/unreadable_members`, {\n params: {\n knowledge_resourceable_type: \"KnowledgeBase\",\n knowledge_resourceable_id: props.knowledge_base_id,\n query: query || null,\n limit: limit,\n offset: offsetNumber,\n },\n })\n .then((res) => {\n if (res.data.unreadable_members.length < KNOWLEDGE_LIST_SIZE_PER_PAGE) {\n setCanReadMoreUnreadableMembers(false);\n }\n if (offsetNumber === 0) {\n setUnreadableMembers(res.data.unreadable_members);\n } else {\n setUnreadableMembers([...unreadableMembers, ...res.data.unreadable_members]);\n }\n });\n };\n\n useEffect(() => {\n getReadableMembers();\n }, []);\n\n return (\n <>\n
    \n
    {t(\"title\")}
    \n {\n setShowForm(true);\n }}\n >\n {t(\"addMember\")}\n \n
    \n
    {t(\"description\")}
    \n\n
    \n \n {\n if (isInputting) {\n setIsOnSearch(false);\n return false;\n }\n setIsOnSearch(true);\n searchMembers(searchRef.current.value);\n }}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n }}\n onCompositionStart={() => {\n setIsInputting(true);\n }}\n onCompositionEnd={() => {\n setIsInputting(false);\n }}\n />\n
    \n\n
    \n
    {t(\"memberCount\", { count: readableTotalCount })}
    \n
    \n {readableMembers.map((member) => (\n
    \n
    \n
    \n {member.name}\n {member.email}\n
    \n {props.current_knowledge_client_member_id !== member.id && (\n
    \n {\n removeMember(member);\n }}\n />\n
    \n )}\n
    \n
    \n ))}\n {canReadMoreReadableMembers && (\n
    \n {\n getReadableMembers(searchRef.current.value);\n }}\n >\n {t(\"readMore\")}\n \n
    \n )}\n
    \n
    \n {isOnSearch && (\n
    \n
    {t(\"notSharedMember\")}
    \n
    \n {unreadableMembers.map((member) => (\n
    \n
    \n
    \n {member.name}\n {member.email}\n
    \n {\n inviteMember(member);\n }}\n >\n {t(\"invite\")}\n \n
    \n
    \n ))}\n {canReadMoreUnreadableMembers && (\n
    \n {\n getUnreadableMembers(searchRef.current.value);\n }}\n >\n {t(\"readMore\")}\n \n
    \n )}\n
    \n
    \n )}\n\n {showForm && (\n
    \n \n
    \n )}\n \n );\n};\n\nKnowledgeBaseShareView.propTypes = {\n knowledge_client_code: PropTypes.string,\n knowledge_base_id: PropTypes.number,\n current_knowledge_client_member_id: PropTypes.number,\n authentification_token: PropTypes.string,\n};\n","// Debounce機能のカスタムフック\nimport { useEffect, useState } from \"react\";\n\n/**\n * @param value 入力値\n * @param delay 遅延時間\n * @returns 遅延時間後の入力値\n */\nexport const useDebounce = (value: string, delay: number) => {\n const [debouncedValue, setDebouncedValue] = useState(value);\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setDebouncedValue(value);\n }, delay);\n\n return () => {\n clearTimeout(timer);\n };\n }, [value, delay]);\n\n return debouncedValue;\n};\n","// @ts-nocheck\nimport React, { useState, useEffect, useRef } from \"react\";\nimport axios from \"axios\";\nimport PropTypes from \"prop-types\";\nimport style from \"./KnowledgeBaseSearchLogView.module.scss\";\nimport {\n KNOWLEDGE_SEARCH_LOG_LIST_SIZE_PER_PAGE,\n KNOWLEDGE_SEARCH_LOG_RATING_ICON_URLS,\n} from \"../../../constants/constants\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport { useDebounce } from \"../../../hooks/useDebounce\";\nimport { useTranslation } from \"react-i18next\";\nimport { YoomDateTimePicker } from \"../YoomDateTimePicker/YoomDateTimePicker.tsx\";\n\nexport const KnowledgeBaseSearchLogView = (props) => {\n const axiosInstance = axios.create();\n axiosInstance.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\n axiosInstance.defaults.headers.common[\"X-CSRF-Token\"] = props.formAuthenticityToken;\n\n const { t } = useTranslation(\"translation\", { keyPrefix: \"KnowledgeBaseSearchLogView\" });\n\n const closeRef = useRef();\n const ratingFormRef = useRef();\n const [isPopup, setIsPopup] = useState(false);\n const [searchLogs, setSearchLogs] = useState([]);\n const [canReadMoreSearchLog, setCanReadMoreSearchLog] = useState(false);\n const [searchLogQuey, setSearchLogQuey] = useState(\"\");\n const [focusingRatingForm, setFocusingRatingForm] = useState(false);\n const [selectedRatingValue, setSelectedRatingValue] = useState(\"\");\n const [selectedStartTerm, setSelectedStartTerm] = useState(\"\");\n const [selectedEndTerm, setSelectedEndTerm] = useState(\"\");\n\n const debouncedQuery = useDebounce(searchLogQuey, 300);\n const queryRatingInputRef = useRef(null);\n const queryStartTermInputRef = useRef([]);\n const queryEndTermInputRef = useRef([]);\n\n const knowledgeBasePath = `/${props.knowledge_client_code}/knowledge_bases/${props.knowledge_base_id}/knowledge_base_search_logs`;\n const ratingOptions = [\n { value: \"\", key: t(\"ratingOptions.all\") },\n { value: \"good\", key: t(\"ratingOptions.good\") },\n { value: \"bad\", key: t(\"ratingOptions.bad\") },\n { value: \"none\", key: t(\"ratingOptions.none\") },\n ];\n\n const handleClickRatingOption = (e) => {\n const rating = e.currentTarget.dataset.rating;\n\n queryRatingInputRef.current.value = e.currentTarget.value;\n setFocusingRatingForm(false);\n setSelectedRatingValue(rating);\n getSearchLogs(\n searchLogQuey,\n rating,\n selectedStartTerm,\n selectedEndTerm,\n KNOWLEDGE_SEARCH_LOG_LIST_SIZE_PER_PAGE,\n 0,\n );\n };\n\n const getSearchLogs = async (\n query = \"\",\n raging = \"\",\n start_term = \"\",\n end_term = \"\",\n limit = KNOWLEDGE_SEARCH_LOG_LIST_SIZE_PER_PAGE,\n offset = null,\n ) => {\n const offsetNumber = offset === null ? searchLogs.length : offset;\n\n const params = {\n query: query,\n rating: raging,\n start_term: start_term,\n end_term: end_term,\n limit: limit,\n offset: offsetNumber,\n };\n\n await axiosInstance\n .post(`${knowledgeBasePath}/search`, params)\n .then((res) => {\n setCanReadMoreSearchLog(!(res.data.search_logs.length < KNOWLEDGE_SEARCH_LOG_LIST_SIZE_PER_PAGE));\n\n if (offsetNumber === 0) {\n setSearchLogs(res.data.search_logs);\n } else {\n setSearchLogs([...searchLogs, ...res.data.search_logs]);\n }\n })\n .catch(() => {});\n };\n\n const exportSearchLog = async (query: \"\", rating: \"\", start_term: \"\", end_term: \"\") => {\n const params = {\n query: query,\n rating: rating,\n start_term: start_term,\n end_term: end_term,\n };\n\n await axiosInstance\n .post(`${knowledgeBasePath}/export`, params)\n .then((res) => {\n alert(res.data.message);\n })\n .catch((error) => {\n alert(error.response.data.message);\n });\n };\n\n const onClickOuterClose = (e) => {\n if (e.target.id === \"popupIcon\") {\n return;\n } else if (isPopup) {\n if (!closeRef.current.contains(e.target)) {\n setIsPopup(false);\n }\n }\n };\n\n const onClickOuterRatingForm = (e) => {\n if (e.target.id === \"ratingForm\") {\n return;\n } else if (focusingRatingForm) {\n if (!ratingFormRef.current.contains(e.target)) {\n setFocusingRatingForm(false);\n }\n }\n };\n\n const clearTerm = () => {\n queryStartTermInputRef.current.value = \"\";\n queryEndTermInputRef.current.value = \"\";\n setSelectedStartTerm(\"\");\n setSelectedEndTerm(\"\");\n };\n\n useEffect(() => {\n getSearchLogs(\n debouncedQuery,\n selectedRatingValue,\n selectedStartTerm,\n selectedEndTerm,\n KNOWLEDGE_SEARCH_LOG_LIST_SIZE_PER_PAGE,\n 0,\n );\n }, [debouncedQuery, selectedStartTerm, selectedEndTerm]);\n\n useEffect(() => {\n document.addEventListener(\"click\", onClickOuterClose);\n return () => {\n if (isPopup) {\n document.removeEventListener(\"click\", onClickOuterClose);\n }\n };\n }, [isPopup]);\n\n useEffect(() => {\n document.addEventListener(\"click\", onClickOuterRatingForm);\n return () => {\n document.removeEventListener(\"click\", onClickOuterRatingForm);\n };\n }, [focusingRatingForm]);\n\n return (\n
    \n
    \n
    \n

    {t(\"title\")}

    \n
    \n setIsPopup(!isPopup)}\n />\n {isPopup && (\n
    \n \n exportSearchLog(debouncedQuery, selectedRatingValue, selectedStartTerm, selectedEndTerm)\n }\n >\n \n
    {t(\"csvExport\")}
    \n
    \n
    \n )}\n
    \n
    \n

    {t(\"description\")}

    \n
    \n\n
    \n
    \n \n {\n setSearchLogQuey(e.target.value);\n }}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n }}\n />\n
    \n
    \n \n
    \n {\n setSelectedStartTerm(selectedStartTerm);\n }}\n customFormat=\"YYYY/MM/DD\"\n />\n \n
    \n \n
    \n {\n setSelectedEndTerm(selectedEndTerm);\n }}\n customFormat=\"YYYY/MM/DD\"\n />\n \n
    \n {queryStartTermInputRef.current.value || queryEndTermInputRef.current.value ? (\n clearTerm()}\n />\n ) : (\n
    \n )}\n
    \n
    \n {\n setFocusingRatingForm(true);\n }}\n onFocus={() => {\n setFocusingRatingForm(true);\n }}\n >\n \n \n
    \n {focusingRatingForm && (\n
    \n {ratingOptions.map((option) => (\n handleClickRatingOption(e)}\n >\n
    {option.key}
    \n \n ))}\n
    \n )}\n
    \n \n\n
    \n \n\n {canReadMoreSearchLog && (\n
    \n {\n getSearchLogs(searchLogQuey, selectedRatingValue, selectedStartTerm, selectedEndTerm);\n }}\n >\n {t(\"readMore\")}\n \n
    \n )}\n
    \n \n );\n};\n\nKnowledgeBaseSearchLogView.propTypes = {\n knowledge_client_code: PropTypes.string,\n knowledge_base_id: PropTypes.number,\n formAuthenticityToken: PropTypes.string,\n};\n","// @ts-nocheck\nimport React, { useEffect, useState } from \"react\";\nimport axios from \"axios\";\nimport PropTypes from \"prop-types\";\nimport style from \"./KnowledgeBaseSearchLogDetailView.module.scss\";\nimport { Loader } from \"../../common/Loaders/Loader\";\nimport { Modal } from \"react-bootstrap\";\nimport { KnowledgeDetailModal } from \"./KnowledgeDetailModal\";\nimport { KnowledgeCreateModal } from \"./KnowledgeCreateModal\";\nimport { KnowledgeEditModal } from \"./KnowledgeEditModal\";\nimport { KnowledgeMailDataSourceThreads } from \"./KnowledgeMailDataSourceThreads\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport { formatKnowledgeDate } from \"../../../commons/dateFormatter\";\nimport { KNOWLEDGE_SEARCH_LOG_RATING_ICON_URLS } from \"../../../constants/constants\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const KnowledgeBaseSearchLogDetailView = (props) => {\n const axiosInstance = axios.create();\n axiosInstance.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\n axiosInstance.defaults.headers.common[\"X-CSRF-Token\"] = props.formAuthenticityToken;\n\n const { t } = useTranslation(\"translation\", { keyPrefix: \"KnowledgeBaseSearchLogDetailView\" });\n\n const [knowledges, setKnowledges] = useState(props.knowledges);\n\n const [detailKnowledge, setDetailKnowledge] = useState({});\n const [knowledgeLoading, setKnowledgeLoading] = useState(true);\n const [showDetailModal, setShowDetailModal] = useState(false);\n const [detailErrMessage, setDetailErrMessage] = useState(\"\");\n\n const [isCreatingKnowledge, setIsCreatingKnowledge] = useState(false);\n const [showCreateModal, setShowCreateModal] = useState(false);\n\n const [isUpdatingKnowledge, setIsUpdatingKnowledge] = useState(false);\n const [showEditModal, setShowEditModal] = useState(false);\n const [knowledgeValidationErrors, setKnowledgeValidationErrors] = useState({});\n\n const [showMailKnowledgeThreads, setShowMailKnowledgeThreads] = useState(false);\n const [mailKnowledgeThreads, setMailKnowledgeThreads] = useState({});\n const [showDefaultMailKnowledgeThread, setShowDefaultMailKnowledgeThread] = useState(false);\n\n const KnowledgeBasePath = `/${props.client}/knowledge_bases/${props.knowledgeBaseId}`;\n\n const handleShowDetailModal = (id) => {\n setKnowledgeLoading(true);\n setShowDetailModal(true);\n fetchDetailKnowledge(id);\n };\n\n const handleCloseDetailModal = () => {\n setDetailErrMessage(\"\");\n setShowDetailModal(false);\n };\n\n const handleShowKnowledgeCreate = () => {\n setKnowledgeValidationErrors({});\n setShowCreateModal(true);\n };\n const handleCloseCreateModal = () => {\n setShowCreateModal(false);\n };\n\n const handleShowEditModal = () => {\n setDetailErrMessage(\"\");\n setKnowledgeValidationErrors({});\n setShowDetailModal(false);\n setShowEditModal(true);\n };\n const handleCloseEditModal = () => {\n setShowEditModal(false);\n setShowDetailModal(true);\n };\n\n const handleCloseMailKnowledgeThreads = () => {\n setShowMailKnowledgeThreads(false);\n setShowDetailModal(true);\n };\n\n const fetchDetailKnowledge = async (id) => {\n await axiosInstance\n .get(`${KnowledgeBasePath}/knowledges/${id}`)\n .then((res) => {\n setDetailKnowledge(res.data);\n })\n .catch(() => {\n setDetailKnowledge({});\n setDetailErrMessage(t(\"knowledgeDeleted\"));\n })\n .finally(() => {\n setKnowledgeLoading(false);\n });\n };\n\n const deleteKnowledge = async (detailKnowledge) => {\n const id = detailKnowledge?.id;\n\n await axiosInstance\n .delete(`${KnowledgeBasePath}/knowledges/${id}`, {\n params: { source_code: detailKnowledge?.source_code },\n })\n .then(() => {\n setKnowledges((prevKnowledges) => prevKnowledges.filter((knowledge) => knowledge.id !== id));\n handleCloseDetailModal();\n });\n };\n\n const createKnowledge = async (question, answer, sourceLink) => {\n setIsCreatingKnowledge(true);\n\n await axiosInstance\n .post(`${KnowledgeBasePath}/knowledges`, {\n knowledge: {\n question: question,\n answer: answer,\n source_link: sourceLink,\n },\n })\n .then((res) => {\n setKnowledges((prevKnowledges) => [res.data, ...prevKnowledges]);\n setKnowledgeValidationErrors({});\n handleCloseCreateModal();\n })\n .catch((err) => {\n setKnowledgeValidationErrors(err.response.data);\n })\n .finally(() => {\n setIsCreatingKnowledge(false);\n });\n };\n\n const updateKnowledge = async (id, question, answer) => {\n setIsUpdatingKnowledge(true);\n\n await axiosInstance\n .patch(`${KnowledgeBasePath}/knowledges/${id}`, {\n knowledge: {\n question: question,\n answer: answer,\n },\n })\n .then(() => {\n setDetailKnowledge((detailKnowledge) => ({\n ...detailKnowledge,\n question,\n answer,\n }));\n setKnowledgeValidationErrors({});\n handleCloseEditModal();\n })\n .catch((err) => {\n setKnowledgeValidationErrors(err.response.data);\n })\n .finally(() => {\n setIsUpdatingKnowledge(false);\n });\n };\n\n const fetchMailKnowledgeThreads = () => {\n const fetchData = async () => {\n await axiosInstance\n .get(detailKnowledge.source_link)\n .then((res) => {\n setMailKnowledgeThreads(res.data);\n })\n .catch((err) => {\n setDetailErrMessage(t(\"knowledgeCreating\"));\n });\n // メールのモーダル表示\n setShowMailKnowledgeThreads(true);\n };\n fetchData();\n };\n\n useEffect(() => {\n const queryParams = new URLSearchParams(location.search);\n const knowledgeId = queryParams.getAll(\"knowledge_id\")[0];\n const isMailKnowledge = queryParams.getAll(\"is_mail_knowledge\")[0];\n if (knowledgeId && isMailKnowledge) {\n const fetchData = async () => {\n await fetchDetailKnowledge(knowledgeId);\n setShowDefaultMailKnowledgeThread(true);\n };\n fetchData();\n } else if (knowledgeId) {\n const fetchData = async () => {\n await fetchDetailKnowledge(knowledgeId);\n setShowDetailModal(true);\n };\n fetchData();\n }\n }, []);\n\n useEffect(() => {\n if (showDefaultMailKnowledgeThread) {\n fetchMailKnowledgeThreads();\n }\n }, [showDefaultMailKnowledgeThread]);\n\n return (\n
    \n
    \n \n \n {t(\"back\")}\n \n
    \n \n {props.query}\n
    \n
    \n
    {props.member}
    \n
    {props.createdAt}
    \n
    \n
    \n\n
    \n {t(\"title\")}\n
    \n
    \n
    \n \n
    \n {props.answer}\n
    \n
    \n
    \n
    \n \n {t(\"relatedKnowledge\")}\n
    \n \n
    \n
    \n {knowledges.map((knowledge, i) => (\n
    handleShowDetailModal(knowledge.id)}>\n \n
    \n
    {knowledge.question}
    \n
    {knowledge.answer}
    \n
    \n {t(\"created\", { date: formatKnowledgeDate(knowledge) })}\n
    \n
    \n
    \n ))}\n
    \n
    \n
    \n
    \n\n \n \n {knowledgeLoading ? (\n \n ) : (\n \n )}\n \n \n\n \n \n \n \n \n\n \n \n \n \n \n\n \n \n \n \n \n
    \n );\n};\n\nKnowledgeBaseSearchLogDetailView.propTypes = {\n knowledgeBaseId: PropTypes.number,\n currentMemberId: PropTypes.number,\n client: PropTypes.string,\n query: PropTypes.string,\n answer: PropTypes.string,\n rating: PropTypes.string,\n member: PropTypes.string,\n createdAt: PropTypes.string,\n knowledges: PropTypes.array,\n isKnowledgeEditable: PropTypes.bool,\n formAuthenticityToken: PropTypes.string,\n};\n","export default {}","/**\n * @licstart The following is the entire license notice for the\n * JavaScript code in this page\n *\n * Copyright 2023 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * @licend The above is the entire license notice for the\n * JavaScript code in this page\n */\n\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = root.pdfjsLib = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"pdfjs-dist/build/pdf\", [], () => { return (root.pdfjsLib = factory()); });\n\telse if(typeof exports === 'object')\n\t\texports[\"pdfjs-dist/build/pdf\"] = root.pdfjsLib = factory();\n\telse\n\t\troot[\"pdfjs-dist/build/pdf\"] = root.pdfjsLib = factory();\n})(globalThis, () => {\nreturn /******/ (() => { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \tvar __webpack_modules__ = ([\n/* 0 */,\n/* 1 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.VerbosityLevel = exports.Util = exports.UnknownErrorException = exports.UnexpectedResponseException = exports.TextRenderingMode = exports.RenderingIntentFlag = exports.PromiseCapability = exports.PermissionFlag = exports.PasswordResponses = exports.PasswordException = exports.PageActionEventType = exports.OPS = exports.MissingPDFException = exports.MAX_IMAGE_SIZE_TO_CACHE = exports.LINE_FACTOR = exports.LINE_DESCENT_FACTOR = exports.InvalidPDFException = exports.ImageKind = exports.IDENTITY_MATRIX = exports.FormatError = exports.FeatureTest = exports.FONT_IDENTITY_MATRIX = exports.DocumentActionEventType = exports.CMapCompressionType = exports.BaseException = exports.BASELINE_FACTOR = exports.AnnotationType = exports.AnnotationReplyType = exports.AnnotationPrefix = exports.AnnotationMode = exports.AnnotationFlag = exports.AnnotationFieldFlag = exports.AnnotationEditorType = exports.AnnotationEditorPrefix = exports.AnnotationEditorParamsType = exports.AnnotationBorderStyleType = exports.AnnotationActionEventType = exports.AbortException = void 0;\nexports.assert = assert;\nexports.bytesToString = bytesToString;\nexports.createValidAbsoluteUrl = createValidAbsoluteUrl;\nexports.getModificationDate = getModificationDate;\nexports.getUuid = getUuid;\nexports.getVerbosityLevel = getVerbosityLevel;\nexports.info = info;\nexports.isArrayBuffer = isArrayBuffer;\nexports.isArrayEqual = isArrayEqual;\nexports.isNodeJS = void 0;\nexports.normalizeUnicode = normalizeUnicode;\nexports.objectFromMap = objectFromMap;\nexports.objectSize = objectSize;\nexports.setVerbosityLevel = setVerbosityLevel;\nexports.shadow = shadow;\nexports.string32 = string32;\nexports.stringToBytes = stringToBytes;\nexports.stringToPDFString = stringToPDFString;\nexports.stringToUTF8String = stringToUTF8String;\nexports.unreachable = unreachable;\nexports.utf8StringToString = utf8StringToString;\nexports.warn = warn;\nconst isNodeJS = typeof process === \"object\" && process + \"\" === \"[object process]\" && !process.versions.nw && !(process.versions.electron && process.type && process.type !== \"browser\");\nexports.isNodeJS = isNodeJS;\nconst IDENTITY_MATRIX = [1, 0, 0, 1, 0, 0];\nexports.IDENTITY_MATRIX = IDENTITY_MATRIX;\nconst FONT_IDENTITY_MATRIX = [0.001, 0, 0, 0.001, 0, 0];\nexports.FONT_IDENTITY_MATRIX = FONT_IDENTITY_MATRIX;\nconst MAX_IMAGE_SIZE_TO_CACHE = 10e6;\nexports.MAX_IMAGE_SIZE_TO_CACHE = MAX_IMAGE_SIZE_TO_CACHE;\nconst LINE_FACTOR = 1.35;\nexports.LINE_FACTOR = LINE_FACTOR;\nconst LINE_DESCENT_FACTOR = 0.35;\nexports.LINE_DESCENT_FACTOR = LINE_DESCENT_FACTOR;\nconst BASELINE_FACTOR = LINE_DESCENT_FACTOR / LINE_FACTOR;\nexports.BASELINE_FACTOR = BASELINE_FACTOR;\nconst RenderingIntentFlag = {\n ANY: 0x01,\n DISPLAY: 0x02,\n PRINT: 0x04,\n SAVE: 0x08,\n ANNOTATIONS_FORMS: 0x10,\n ANNOTATIONS_STORAGE: 0x20,\n ANNOTATIONS_DISABLE: 0x40,\n OPLIST: 0x100\n};\nexports.RenderingIntentFlag = RenderingIntentFlag;\nconst AnnotationMode = {\n DISABLE: 0,\n ENABLE: 1,\n ENABLE_FORMS: 2,\n ENABLE_STORAGE: 3\n};\nexports.AnnotationMode = AnnotationMode;\nconst AnnotationEditorPrefix = \"pdfjs_internal_editor_\";\nexports.AnnotationEditorPrefix = AnnotationEditorPrefix;\nconst AnnotationEditorType = {\n DISABLE: -1,\n NONE: 0,\n FREETEXT: 3,\n STAMP: 13,\n INK: 15\n};\nexports.AnnotationEditorType = AnnotationEditorType;\nconst AnnotationEditorParamsType = {\n RESIZE: 1,\n CREATE: 2,\n FREETEXT_SIZE: 11,\n FREETEXT_COLOR: 12,\n FREETEXT_OPACITY: 13,\n INK_COLOR: 21,\n INK_THICKNESS: 22,\n INK_OPACITY: 23\n};\nexports.AnnotationEditorParamsType = AnnotationEditorParamsType;\nconst PermissionFlag = {\n PRINT: 0x04,\n MODIFY_CONTENTS: 0x08,\n COPY: 0x10,\n MODIFY_ANNOTATIONS: 0x20,\n FILL_INTERACTIVE_FORMS: 0x100,\n COPY_FOR_ACCESSIBILITY: 0x200,\n ASSEMBLE: 0x400,\n PRINT_HIGH_QUALITY: 0x800\n};\nexports.PermissionFlag = PermissionFlag;\nconst TextRenderingMode = {\n FILL: 0,\n STROKE: 1,\n FILL_STROKE: 2,\n INVISIBLE: 3,\n FILL_ADD_TO_PATH: 4,\n STROKE_ADD_TO_PATH: 5,\n FILL_STROKE_ADD_TO_PATH: 6,\n ADD_TO_PATH: 7,\n FILL_STROKE_MASK: 3,\n ADD_TO_PATH_FLAG: 4\n};\nexports.TextRenderingMode = TextRenderingMode;\nconst ImageKind = {\n GRAYSCALE_1BPP: 1,\n RGB_24BPP: 2,\n RGBA_32BPP: 3\n};\nexports.ImageKind = ImageKind;\nconst AnnotationType = {\n TEXT: 1,\n LINK: 2,\n FREETEXT: 3,\n LINE: 4,\n SQUARE: 5,\n CIRCLE: 6,\n POLYGON: 7,\n POLYLINE: 8,\n HIGHLIGHT: 9,\n UNDERLINE: 10,\n SQUIGGLY: 11,\n STRIKEOUT: 12,\n STAMP: 13,\n CARET: 14,\n INK: 15,\n POPUP: 16,\n FILEATTACHMENT: 17,\n SOUND: 18,\n MOVIE: 19,\n WIDGET: 20,\n SCREEN: 21,\n PRINTERMARK: 22,\n TRAPNET: 23,\n WATERMARK: 24,\n THREED: 25,\n REDACT: 26\n};\nexports.AnnotationType = AnnotationType;\nconst AnnotationReplyType = {\n GROUP: \"Group\",\n REPLY: \"R\"\n};\nexports.AnnotationReplyType = AnnotationReplyType;\nconst AnnotationFlag = {\n INVISIBLE: 0x01,\n HIDDEN: 0x02,\n PRINT: 0x04,\n NOZOOM: 0x08,\n NOROTATE: 0x10,\n NOVIEW: 0x20,\n READONLY: 0x40,\n LOCKED: 0x80,\n TOGGLENOVIEW: 0x100,\n LOCKEDCONTENTS: 0x200\n};\nexports.AnnotationFlag = AnnotationFlag;\nconst AnnotationFieldFlag = {\n READONLY: 0x0000001,\n REQUIRED: 0x0000002,\n NOEXPORT: 0x0000004,\n MULTILINE: 0x0001000,\n PASSWORD: 0x0002000,\n NOTOGGLETOOFF: 0x0004000,\n RADIO: 0x0008000,\n PUSHBUTTON: 0x0010000,\n COMBO: 0x0020000,\n EDIT: 0x0040000,\n SORT: 0x0080000,\n FILESELECT: 0x0100000,\n MULTISELECT: 0x0200000,\n DONOTSPELLCHECK: 0x0400000,\n DONOTSCROLL: 0x0800000,\n COMB: 0x1000000,\n RICHTEXT: 0x2000000,\n RADIOSINUNISON: 0x2000000,\n COMMITONSELCHANGE: 0x4000000\n};\nexports.AnnotationFieldFlag = AnnotationFieldFlag;\nconst AnnotationBorderStyleType = {\n SOLID: 1,\n DASHED: 2,\n BEVELED: 3,\n INSET: 4,\n UNDERLINE: 5\n};\nexports.AnnotationBorderStyleType = AnnotationBorderStyleType;\nconst AnnotationActionEventType = {\n E: \"Mouse Enter\",\n X: \"Mouse Exit\",\n D: \"Mouse Down\",\n U: \"Mouse Up\",\n Fo: \"Focus\",\n Bl: \"Blur\",\n PO: \"PageOpen\",\n PC: \"PageClose\",\n PV: \"PageVisible\",\n PI: \"PageInvisible\",\n K: \"Keystroke\",\n F: \"Format\",\n V: \"Validate\",\n C: \"Calculate\"\n};\nexports.AnnotationActionEventType = AnnotationActionEventType;\nconst DocumentActionEventType = {\n WC: \"WillClose\",\n WS: \"WillSave\",\n DS: \"DidSave\",\n WP: \"WillPrint\",\n DP: \"DidPrint\"\n};\nexports.DocumentActionEventType = DocumentActionEventType;\nconst PageActionEventType = {\n O: \"PageOpen\",\n C: \"PageClose\"\n};\nexports.PageActionEventType = PageActionEventType;\nconst VerbosityLevel = {\n ERRORS: 0,\n WARNINGS: 1,\n INFOS: 5\n};\nexports.VerbosityLevel = VerbosityLevel;\nconst CMapCompressionType = {\n NONE: 0,\n BINARY: 1\n};\nexports.CMapCompressionType = CMapCompressionType;\nconst OPS = {\n dependency: 1,\n setLineWidth: 2,\n setLineCap: 3,\n setLineJoin: 4,\n setMiterLimit: 5,\n setDash: 6,\n setRenderingIntent: 7,\n setFlatness: 8,\n setGState: 9,\n save: 10,\n restore: 11,\n transform: 12,\n moveTo: 13,\n lineTo: 14,\n curveTo: 15,\n curveTo2: 16,\n curveTo3: 17,\n closePath: 18,\n rectangle: 19,\n stroke: 20,\n closeStroke: 21,\n fill: 22,\n eoFill: 23,\n fillStroke: 24,\n eoFillStroke: 25,\n closeFillStroke: 26,\n closeEOFillStroke: 27,\n endPath: 28,\n clip: 29,\n eoClip: 30,\n beginText: 31,\n endText: 32,\n setCharSpacing: 33,\n setWordSpacing: 34,\n setHScale: 35,\n setLeading: 36,\n setFont: 37,\n setTextRenderingMode: 38,\n setTextRise: 39,\n moveText: 40,\n setLeadingMoveText: 41,\n setTextMatrix: 42,\n nextLine: 43,\n showText: 44,\n showSpacedText: 45,\n nextLineShowText: 46,\n nextLineSetSpacingShowText: 47,\n setCharWidth: 48,\n setCharWidthAndBounds: 49,\n setStrokeColorSpace: 50,\n setFillColorSpace: 51,\n setStrokeColor: 52,\n setStrokeColorN: 53,\n setFillColor: 54,\n setFillColorN: 55,\n setStrokeGray: 56,\n setFillGray: 57,\n setStrokeRGBColor: 58,\n setFillRGBColor: 59,\n setStrokeCMYKColor: 60,\n setFillCMYKColor: 61,\n shadingFill: 62,\n beginInlineImage: 63,\n beginImageData: 64,\n endInlineImage: 65,\n paintXObject: 66,\n markPoint: 67,\n markPointProps: 68,\n beginMarkedContent: 69,\n beginMarkedContentProps: 70,\n endMarkedContent: 71,\n beginCompat: 72,\n endCompat: 73,\n paintFormXObjectBegin: 74,\n paintFormXObjectEnd: 75,\n beginGroup: 76,\n endGroup: 77,\n beginAnnotation: 80,\n endAnnotation: 81,\n paintImageMaskXObject: 83,\n paintImageMaskXObjectGroup: 84,\n paintImageXObject: 85,\n paintInlineImageXObject: 86,\n paintInlineImageXObjectGroup: 87,\n paintImageXObjectRepeat: 88,\n paintImageMaskXObjectRepeat: 89,\n paintSolidColorImageMask: 90,\n constructPath: 91\n};\nexports.OPS = OPS;\nconst PasswordResponses = {\n NEED_PASSWORD: 1,\n INCORRECT_PASSWORD: 2\n};\nexports.PasswordResponses = PasswordResponses;\nlet verbosity = VerbosityLevel.WARNINGS;\nfunction setVerbosityLevel(level) {\n if (Number.isInteger(level)) {\n verbosity = level;\n }\n}\nfunction getVerbosityLevel() {\n return verbosity;\n}\nfunction info(msg) {\n if (verbosity >= VerbosityLevel.INFOS) {\n console.log(`Info: ${msg}`);\n }\n}\nfunction warn(msg) {\n if (verbosity >= VerbosityLevel.WARNINGS) {\n console.log(`Warning: ${msg}`);\n }\n}\nfunction unreachable(msg) {\n throw new Error(msg);\n}\nfunction assert(cond, msg) {\n if (!cond) {\n unreachable(msg);\n }\n}\nfunction _isValidProtocol(url) {\n switch (url?.protocol) {\n case \"http:\":\n case \"https:\":\n case \"ftp:\":\n case \"mailto:\":\n case \"tel:\":\n return true;\n default:\n return false;\n }\n}\nfunction createValidAbsoluteUrl(url, baseUrl = null, options = null) {\n if (!url) {\n return null;\n }\n try {\n if (options && typeof url === \"string\") {\n if (options.addDefaultProtocol && url.startsWith(\"www.\")) {\n const dots = url.match(/\\./g);\n if (dots?.length >= 2) {\n url = `http://${url}`;\n }\n }\n if (options.tryConvertEncoding) {\n try {\n url = stringToUTF8String(url);\n } catch {}\n }\n }\n const absoluteUrl = baseUrl ? new URL(url, baseUrl) : new URL(url);\n if (_isValidProtocol(absoluteUrl)) {\n return absoluteUrl;\n }\n } catch {}\n return null;\n}\nfunction shadow(obj, prop, value, nonSerializable = false) {\n Object.defineProperty(obj, prop, {\n value,\n enumerable: !nonSerializable,\n configurable: true,\n writable: false\n });\n return value;\n}\nconst BaseException = function BaseExceptionClosure() {\n function BaseException(message, name) {\n if (this.constructor === BaseException) {\n unreachable(\"Cannot initialize BaseException.\");\n }\n this.message = message;\n this.name = name;\n }\n BaseException.prototype = new Error();\n BaseException.constructor = BaseException;\n return BaseException;\n}();\nexports.BaseException = BaseException;\nclass PasswordException extends BaseException {\n constructor(msg, code) {\n super(msg, \"PasswordException\");\n this.code = code;\n }\n}\nexports.PasswordException = PasswordException;\nclass UnknownErrorException extends BaseException {\n constructor(msg, details) {\n super(msg, \"UnknownErrorException\");\n this.details = details;\n }\n}\nexports.UnknownErrorException = UnknownErrorException;\nclass InvalidPDFException extends BaseException {\n constructor(msg) {\n super(msg, \"InvalidPDFException\");\n }\n}\nexports.InvalidPDFException = InvalidPDFException;\nclass MissingPDFException extends BaseException {\n constructor(msg) {\n super(msg, \"MissingPDFException\");\n }\n}\nexports.MissingPDFException = MissingPDFException;\nclass UnexpectedResponseException extends BaseException {\n constructor(msg, status) {\n super(msg, \"UnexpectedResponseException\");\n this.status = status;\n }\n}\nexports.UnexpectedResponseException = UnexpectedResponseException;\nclass FormatError extends BaseException {\n constructor(msg) {\n super(msg, \"FormatError\");\n }\n}\nexports.FormatError = FormatError;\nclass AbortException extends BaseException {\n constructor(msg) {\n super(msg, \"AbortException\");\n }\n}\nexports.AbortException = AbortException;\nfunction bytesToString(bytes) {\n if (typeof bytes !== \"object\" || bytes?.length === undefined) {\n unreachable(\"Invalid argument for bytesToString\");\n }\n const length = bytes.length;\n const MAX_ARGUMENT_COUNT = 8192;\n if (length < MAX_ARGUMENT_COUNT) {\n return String.fromCharCode.apply(null, bytes);\n }\n const strBuf = [];\n for (let i = 0; i < length; i += MAX_ARGUMENT_COUNT) {\n const chunkEnd = Math.min(i + MAX_ARGUMENT_COUNT, length);\n const chunk = bytes.subarray(i, chunkEnd);\n strBuf.push(String.fromCharCode.apply(null, chunk));\n }\n return strBuf.join(\"\");\n}\nfunction stringToBytes(str) {\n if (typeof str !== \"string\") {\n unreachable(\"Invalid argument for stringToBytes\");\n }\n const length = str.length;\n const bytes = new Uint8Array(length);\n for (let i = 0; i < length; ++i) {\n bytes[i] = str.charCodeAt(i) & 0xff;\n }\n return bytes;\n}\nfunction string32(value) {\n return String.fromCharCode(value >> 24 & 0xff, value >> 16 & 0xff, value >> 8 & 0xff, value & 0xff);\n}\nfunction objectSize(obj) {\n return Object.keys(obj).length;\n}\nfunction objectFromMap(map) {\n const obj = Object.create(null);\n for (const [key, value] of map) {\n obj[key] = value;\n }\n return obj;\n}\nfunction isLittleEndian() {\n const buffer8 = new Uint8Array(4);\n buffer8[0] = 1;\n const view32 = new Uint32Array(buffer8.buffer, 0, 1);\n return view32[0] === 1;\n}\nfunction isEvalSupported() {\n try {\n new Function(\"\");\n return true;\n } catch {\n return false;\n }\n}\nclass FeatureTest {\n static get isLittleEndian() {\n return shadow(this, \"isLittleEndian\", isLittleEndian());\n }\n static get isEvalSupported() {\n return shadow(this, \"isEvalSupported\", isEvalSupported());\n }\n static get isOffscreenCanvasSupported() {\n return shadow(this, \"isOffscreenCanvasSupported\", typeof OffscreenCanvas !== \"undefined\");\n }\n static get platform() {\n if (typeof navigator === \"undefined\") {\n return shadow(this, \"platform\", {\n isWin: false,\n isMac: false\n });\n }\n return shadow(this, \"platform\", {\n isWin: navigator.platform.includes(\"Win\"),\n isMac: navigator.platform.includes(\"Mac\")\n });\n }\n static get isCSSRoundSupported() {\n return shadow(this, \"isCSSRoundSupported\", globalThis.CSS?.supports?.(\"width: round(1.5px, 1px)\"));\n }\n}\nexports.FeatureTest = FeatureTest;\nconst hexNumbers = [...Array(256).keys()].map(n => n.toString(16).padStart(2, \"0\"));\nclass Util {\n static makeHexColor(r, g, b) {\n return `#${hexNumbers[r]}${hexNumbers[g]}${hexNumbers[b]}`;\n }\n static scaleMinMax(transform, minMax) {\n let temp;\n if (transform[0]) {\n if (transform[0] < 0) {\n temp = minMax[0];\n minMax[0] = minMax[1];\n minMax[1] = temp;\n }\n minMax[0] *= transform[0];\n minMax[1] *= transform[0];\n if (transform[3] < 0) {\n temp = minMax[2];\n minMax[2] = minMax[3];\n minMax[3] = temp;\n }\n minMax[2] *= transform[3];\n minMax[3] *= transform[3];\n } else {\n temp = minMax[0];\n minMax[0] = minMax[2];\n minMax[2] = temp;\n temp = minMax[1];\n minMax[1] = minMax[3];\n minMax[3] = temp;\n if (transform[1] < 0) {\n temp = minMax[2];\n minMax[2] = minMax[3];\n minMax[3] = temp;\n }\n minMax[2] *= transform[1];\n minMax[3] *= transform[1];\n if (transform[2] < 0) {\n temp = minMax[0];\n minMax[0] = minMax[1];\n minMax[1] = temp;\n }\n minMax[0] *= transform[2];\n minMax[1] *= transform[2];\n }\n minMax[0] += transform[4];\n minMax[1] += transform[4];\n minMax[2] += transform[5];\n minMax[3] += transform[5];\n }\n static transform(m1, m2) {\n return [m1[0] * m2[0] + m1[2] * m2[1], m1[1] * m2[0] + m1[3] * m2[1], m1[0] * m2[2] + m1[2] * m2[3], m1[1] * m2[2] + m1[3] * m2[3], m1[0] * m2[4] + m1[2] * m2[5] + m1[4], m1[1] * m2[4] + m1[3] * m2[5] + m1[5]];\n }\n static applyTransform(p, m) {\n const xt = p[0] * m[0] + p[1] * m[2] + m[4];\n const yt = p[0] * m[1] + p[1] * m[3] + m[5];\n return [xt, yt];\n }\n static applyInverseTransform(p, m) {\n const d = m[0] * m[3] - m[1] * m[2];\n const xt = (p[0] * m[3] - p[1] * m[2] + m[2] * m[5] - m[4] * m[3]) / d;\n const yt = (-p[0] * m[1] + p[1] * m[0] + m[4] * m[1] - m[5] * m[0]) / d;\n return [xt, yt];\n }\n static getAxialAlignedBoundingBox(r, m) {\n const p1 = this.applyTransform(r, m);\n const p2 = this.applyTransform(r.slice(2, 4), m);\n const p3 = this.applyTransform([r[0], r[3]], m);\n const p4 = this.applyTransform([r[2], r[1]], m);\n return [Math.min(p1[0], p2[0], p3[0], p4[0]), Math.min(p1[1], p2[1], p3[1], p4[1]), Math.max(p1[0], p2[0], p3[0], p4[0]), Math.max(p1[1], p2[1], p3[1], p4[1])];\n }\n static inverseTransform(m) {\n const d = m[0] * m[3] - m[1] * m[2];\n return [m[3] / d, -m[1] / d, -m[2] / d, m[0] / d, (m[2] * m[5] - m[4] * m[3]) / d, (m[4] * m[1] - m[5] * m[0]) / d];\n }\n static singularValueDecompose2dScale(m) {\n const transpose = [m[0], m[2], m[1], m[3]];\n const a = m[0] * transpose[0] + m[1] * transpose[2];\n const b = m[0] * transpose[1] + m[1] * transpose[3];\n const c = m[2] * transpose[0] + m[3] * transpose[2];\n const d = m[2] * transpose[1] + m[3] * transpose[3];\n const first = (a + d) / 2;\n const second = Math.sqrt((a + d) ** 2 - 4 * (a * d - c * b)) / 2;\n const sx = first + second || 1;\n const sy = first - second || 1;\n return [Math.sqrt(sx), Math.sqrt(sy)];\n }\n static normalizeRect(rect) {\n const r = rect.slice(0);\n if (rect[0] > rect[2]) {\n r[0] = rect[2];\n r[2] = rect[0];\n }\n if (rect[1] > rect[3]) {\n r[1] = rect[3];\n r[3] = rect[1];\n }\n return r;\n }\n static intersect(rect1, rect2) {\n const xLow = Math.max(Math.min(rect1[0], rect1[2]), Math.min(rect2[0], rect2[2]));\n const xHigh = Math.min(Math.max(rect1[0], rect1[2]), Math.max(rect2[0], rect2[2]));\n if (xLow > xHigh) {\n return null;\n }\n const yLow = Math.max(Math.min(rect1[1], rect1[3]), Math.min(rect2[1], rect2[3]));\n const yHigh = Math.min(Math.max(rect1[1], rect1[3]), Math.max(rect2[1], rect2[3]));\n if (yLow > yHigh) {\n return null;\n }\n return [xLow, yLow, xHigh, yHigh];\n }\n static bezierBoundingBox(x0, y0, x1, y1, x2, y2, x3, y3) {\n const tvalues = [],\n bounds = [[], []];\n let a, b, c, t, t1, t2, b2ac, sqrtb2ac;\n for (let i = 0; i < 2; ++i) {\n if (i === 0) {\n b = 6 * x0 - 12 * x1 + 6 * x2;\n a = -3 * x0 + 9 * x1 - 9 * x2 + 3 * x3;\n c = 3 * x1 - 3 * x0;\n } else {\n b = 6 * y0 - 12 * y1 + 6 * y2;\n a = -3 * y0 + 9 * y1 - 9 * y2 + 3 * y3;\n c = 3 * y1 - 3 * y0;\n }\n if (Math.abs(a) < 1e-12) {\n if (Math.abs(b) < 1e-12) {\n continue;\n }\n t = -c / b;\n if (0 < t && t < 1) {\n tvalues.push(t);\n }\n continue;\n }\n b2ac = b * b - 4 * c * a;\n sqrtb2ac = Math.sqrt(b2ac);\n if (b2ac < 0) {\n continue;\n }\n t1 = (-b + sqrtb2ac) / (2 * a);\n if (0 < t1 && t1 < 1) {\n tvalues.push(t1);\n }\n t2 = (-b - sqrtb2ac) / (2 * a);\n if (0 < t2 && t2 < 1) {\n tvalues.push(t2);\n }\n }\n let j = tvalues.length,\n mt;\n const jlen = j;\n while (j--) {\n t = tvalues[j];\n mt = 1 - t;\n bounds[0][j] = mt * mt * mt * x0 + 3 * mt * mt * t * x1 + 3 * mt * t * t * x2 + t * t * t * x3;\n bounds[1][j] = mt * mt * mt * y0 + 3 * mt * mt * t * y1 + 3 * mt * t * t * y2 + t * t * t * y3;\n }\n bounds[0][jlen] = x0;\n bounds[1][jlen] = y0;\n bounds[0][jlen + 1] = x3;\n bounds[1][jlen + 1] = y3;\n bounds[0].length = bounds[1].length = jlen + 2;\n return [Math.min(...bounds[0]), Math.min(...bounds[1]), Math.max(...bounds[0]), Math.max(...bounds[1])];\n }\n}\nexports.Util = Util;\nconst PDFStringTranslateTable = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2d8, 0x2c7, 0x2c6, 0x2d9, 0x2dd, 0x2db, 0x2da, 0x2dc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2022, 0x2020, 0x2021, 0x2026, 0x2014, 0x2013, 0x192, 0x2044, 0x2039, 0x203a, 0x2212, 0x2030, 0x201e, 0x201c, 0x201d, 0x2018, 0x2019, 0x201a, 0x2122, 0xfb01, 0xfb02, 0x141, 0x152, 0x160, 0x178, 0x17d, 0x131, 0x142, 0x153, 0x161, 0x17e, 0, 0x20ac];\nfunction stringToPDFString(str) {\n if (str[0] >= \"\\xEF\") {\n let encoding;\n if (str[0] === \"\\xFE\" && str[1] === \"\\xFF\") {\n encoding = \"utf-16be\";\n } else if (str[0] === \"\\xFF\" && str[1] === \"\\xFE\") {\n encoding = \"utf-16le\";\n } else if (str[0] === \"\\xEF\" && str[1] === \"\\xBB\" && str[2] === \"\\xBF\") {\n encoding = \"utf-8\";\n }\n if (encoding) {\n try {\n const decoder = new TextDecoder(encoding, {\n fatal: true\n });\n const buffer = stringToBytes(str);\n return decoder.decode(buffer);\n } catch (ex) {\n warn(`stringToPDFString: \"${ex}\".`);\n }\n }\n }\n const strBuf = [];\n for (let i = 0, ii = str.length; i < ii; i++) {\n const code = PDFStringTranslateTable[str.charCodeAt(i)];\n strBuf.push(code ? String.fromCharCode(code) : str.charAt(i));\n }\n return strBuf.join(\"\");\n}\nfunction stringToUTF8String(str) {\n return decodeURIComponent(escape(str));\n}\nfunction utf8StringToString(str) {\n return unescape(encodeURIComponent(str));\n}\nfunction isArrayBuffer(v) {\n return typeof v === \"object\" && v?.byteLength !== undefined;\n}\nfunction isArrayEqual(arr1, arr2) {\n if (arr1.length !== arr2.length) {\n return false;\n }\n for (let i = 0, ii = arr1.length; i < ii; i++) {\n if (arr1[i] !== arr2[i]) {\n return false;\n }\n }\n return true;\n}\nfunction getModificationDate(date = new Date()) {\n const buffer = [date.getUTCFullYear().toString(), (date.getUTCMonth() + 1).toString().padStart(2, \"0\"), date.getUTCDate().toString().padStart(2, \"0\"), date.getUTCHours().toString().padStart(2, \"0\"), date.getUTCMinutes().toString().padStart(2, \"0\"), date.getUTCSeconds().toString().padStart(2, \"0\")];\n return buffer.join(\"\");\n}\nclass PromiseCapability {\n #settled = false;\n constructor() {\n this.promise = new Promise((resolve, reject) => {\n this.resolve = data => {\n this.#settled = true;\n resolve(data);\n };\n this.reject = reason => {\n this.#settled = true;\n reject(reason);\n };\n });\n }\n get settled() {\n return this.#settled;\n }\n}\nexports.PromiseCapability = PromiseCapability;\nlet NormalizeRegex = null;\nlet NormalizationMap = null;\nfunction normalizeUnicode(str) {\n if (!NormalizeRegex) {\n NormalizeRegex = /([\\u00a0\\u00b5\\u037e\\u0eb3\\u2000-\\u200a\\u202f\\u2126\\ufb00-\\ufb04\\ufb06\\ufb20-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40-\\ufb41\\ufb43-\\ufb44\\ufb46-\\ufba1\\ufba4-\\ufba9\\ufbae-\\ufbb1\\ufbd3-\\ufbdc\\ufbde-\\ufbe7\\ufbea-\\ufbf8\\ufbfc-\\ufbfd\\ufc00-\\ufc5d\\ufc64-\\ufcf1\\ufcf5-\\ufd3d\\ufd88\\ufdf4\\ufdfa-\\ufdfb\\ufe71\\ufe77\\ufe79\\ufe7b\\ufe7d]+)|(\\ufb05+)/gu;\n NormalizationMap = new Map([[\"ſt\", \"ſt\"]]);\n }\n return str.replaceAll(NormalizeRegex, (_, p1, p2) => {\n return p1 ? p1.normalize(\"NFKC\") : NormalizationMap.get(p2);\n });\n}\nfunction getUuid() {\n if (typeof crypto !== \"undefined\" && typeof crypto?.randomUUID === \"function\") {\n return crypto.randomUUID();\n }\n const buf = new Uint8Array(32);\n if (typeof crypto !== \"undefined\" && typeof crypto?.getRandomValues === \"function\") {\n crypto.getRandomValues(buf);\n } else {\n for (let i = 0; i < 32; i++) {\n buf[i] = Math.floor(Math.random() * 255);\n }\n }\n return bytesToString(buf);\n}\nconst AnnotationPrefix = \"pdfjs_internal_id_\";\nexports.AnnotationPrefix = AnnotationPrefix;\n\n/***/ }),\n/* 2 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.RenderTask = exports.PDFWorkerUtil = exports.PDFWorker = exports.PDFPageProxy = exports.PDFDocumentProxy = exports.PDFDocumentLoadingTask = exports.PDFDataRangeTransport = exports.LoopbackPort = exports.DefaultStandardFontDataFactory = exports.DefaultFilterFactory = exports.DefaultCanvasFactory = exports.DefaultCMapReaderFactory = void 0;\nObject.defineProperty(exports, \"SVGGraphics\", ({\n enumerable: true,\n get: function () {\n return _displaySvg.SVGGraphics;\n }\n}));\nexports.build = void 0;\nexports.getDocument = getDocument;\nexports.version = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _annotation_storage = __w_pdfjs_require__(3);\nvar _display_utils = __w_pdfjs_require__(6);\nvar _font_loader = __w_pdfjs_require__(9);\nvar _displayNode_utils = __w_pdfjs_require__(10);\nvar _canvas = __w_pdfjs_require__(11);\nvar _worker_options = __w_pdfjs_require__(14);\nvar _message_handler = __w_pdfjs_require__(15);\nvar _metadata = __w_pdfjs_require__(16);\nvar _optional_content_config = __w_pdfjs_require__(17);\nvar _transport_stream = __w_pdfjs_require__(18);\nvar _displayFetch_stream = __w_pdfjs_require__(19);\nvar _displayNetwork = __w_pdfjs_require__(22);\nvar _displayNode_stream = __w_pdfjs_require__(23);\nvar _displaySvg = __w_pdfjs_require__(24);\nvar _xfa_text = __w_pdfjs_require__(25);\nconst DEFAULT_RANGE_CHUNK_SIZE = 65536;\nconst RENDERING_CANCELLED_TIMEOUT = 100;\nconst DELAYED_CLEANUP_TIMEOUT = 5000;\nconst DefaultCanvasFactory = _util.isNodeJS ? _displayNode_utils.NodeCanvasFactory : _display_utils.DOMCanvasFactory;\nexports.DefaultCanvasFactory = DefaultCanvasFactory;\nconst DefaultCMapReaderFactory = _util.isNodeJS ? _displayNode_utils.NodeCMapReaderFactory : _display_utils.DOMCMapReaderFactory;\nexports.DefaultCMapReaderFactory = DefaultCMapReaderFactory;\nconst DefaultFilterFactory = _util.isNodeJS ? _displayNode_utils.NodeFilterFactory : _display_utils.DOMFilterFactory;\nexports.DefaultFilterFactory = DefaultFilterFactory;\nconst DefaultStandardFontDataFactory = _util.isNodeJS ? _displayNode_utils.NodeStandardFontDataFactory : _display_utils.DOMStandardFontDataFactory;\nexports.DefaultStandardFontDataFactory = DefaultStandardFontDataFactory;\nfunction getDocument(src) {\n if (typeof src === \"string\" || src instanceof URL) {\n src = {\n url: src\n };\n } else if ((0, _util.isArrayBuffer)(src)) {\n src = {\n data: src\n };\n }\n if (typeof src !== \"object\") {\n throw new Error(\"Invalid parameter in getDocument, need parameter object.\");\n }\n if (!src.url && !src.data && !src.range) {\n throw new Error(\"Invalid parameter object: need either .data, .range or .url\");\n }\n const task = new PDFDocumentLoadingTask();\n const {\n docId\n } = task;\n const url = src.url ? getUrlProp(src.url) : null;\n const data = src.data ? getDataProp(src.data) : null;\n const httpHeaders = src.httpHeaders || null;\n const withCredentials = src.withCredentials === true;\n const password = src.password ?? null;\n const rangeTransport = src.range instanceof PDFDataRangeTransport ? src.range : null;\n const rangeChunkSize = Number.isInteger(src.rangeChunkSize) && src.rangeChunkSize > 0 ? src.rangeChunkSize : DEFAULT_RANGE_CHUNK_SIZE;\n let worker = src.worker instanceof PDFWorker ? src.worker : null;\n const verbosity = src.verbosity;\n const docBaseUrl = typeof src.docBaseUrl === \"string\" && !(0, _display_utils.isDataScheme)(src.docBaseUrl) ? src.docBaseUrl : null;\n const cMapUrl = typeof src.cMapUrl === \"string\" ? src.cMapUrl : null;\n const cMapPacked = src.cMapPacked !== false;\n const CMapReaderFactory = src.CMapReaderFactory || DefaultCMapReaderFactory;\n const standardFontDataUrl = typeof src.standardFontDataUrl === \"string\" ? src.standardFontDataUrl : null;\n const StandardFontDataFactory = src.StandardFontDataFactory || DefaultStandardFontDataFactory;\n const ignoreErrors = src.stopAtErrors !== true;\n const maxImageSize = Number.isInteger(src.maxImageSize) && src.maxImageSize > -1 ? src.maxImageSize : -1;\n const isEvalSupported = src.isEvalSupported !== false;\n const isOffscreenCanvasSupported = typeof src.isOffscreenCanvasSupported === \"boolean\" ? src.isOffscreenCanvasSupported : !_util.isNodeJS;\n const canvasMaxAreaInBytes = Number.isInteger(src.canvasMaxAreaInBytes) ? src.canvasMaxAreaInBytes : -1;\n const disableFontFace = typeof src.disableFontFace === \"boolean\" ? src.disableFontFace : _util.isNodeJS;\n const fontExtraProperties = src.fontExtraProperties === true;\n const enableXfa = src.enableXfa === true;\n const ownerDocument = src.ownerDocument || globalThis.document;\n const disableRange = src.disableRange === true;\n const disableStream = src.disableStream === true;\n const disableAutoFetch = src.disableAutoFetch === true;\n const pdfBug = src.pdfBug === true;\n const length = rangeTransport ? rangeTransport.length : src.length ?? NaN;\n const useSystemFonts = typeof src.useSystemFonts === \"boolean\" ? src.useSystemFonts : !_util.isNodeJS && !disableFontFace;\n const useWorkerFetch = typeof src.useWorkerFetch === \"boolean\" ? src.useWorkerFetch : CMapReaderFactory === _display_utils.DOMCMapReaderFactory && StandardFontDataFactory === _display_utils.DOMStandardFontDataFactory && cMapUrl && standardFontDataUrl && (0, _display_utils.isValidFetchUrl)(cMapUrl, document.baseURI) && (0, _display_utils.isValidFetchUrl)(standardFontDataUrl, document.baseURI);\n const canvasFactory = src.canvasFactory || new DefaultCanvasFactory({\n ownerDocument\n });\n const filterFactory = src.filterFactory || new DefaultFilterFactory({\n docId,\n ownerDocument\n });\n const styleElement = null;\n (0, _util.setVerbosityLevel)(verbosity);\n const transportFactory = {\n canvasFactory,\n filterFactory\n };\n if (!useWorkerFetch) {\n transportFactory.cMapReaderFactory = new CMapReaderFactory({\n baseUrl: cMapUrl,\n isCompressed: cMapPacked\n });\n transportFactory.standardFontDataFactory = new StandardFontDataFactory({\n baseUrl: standardFontDataUrl\n });\n }\n if (!worker) {\n const workerParams = {\n verbosity,\n port: _worker_options.GlobalWorkerOptions.workerPort\n };\n worker = workerParams.port ? PDFWorker.fromPort(workerParams) : new PDFWorker(workerParams);\n task._worker = worker;\n }\n const fetchDocParams = {\n docId,\n apiVersion: '3.11.174',\n data,\n password,\n disableAutoFetch,\n rangeChunkSize,\n length,\n docBaseUrl,\n enableXfa,\n evaluatorOptions: {\n maxImageSize,\n disableFontFace,\n ignoreErrors,\n isEvalSupported,\n isOffscreenCanvasSupported,\n canvasMaxAreaInBytes,\n fontExtraProperties,\n useSystemFonts,\n cMapUrl: useWorkerFetch ? cMapUrl : null,\n standardFontDataUrl: useWorkerFetch ? standardFontDataUrl : null\n }\n };\n const transportParams = {\n ignoreErrors,\n isEvalSupported,\n disableFontFace,\n fontExtraProperties,\n enableXfa,\n ownerDocument,\n disableAutoFetch,\n pdfBug,\n styleElement\n };\n worker.promise.then(function () {\n if (task.destroyed) {\n throw new Error(\"Loading aborted\");\n }\n const workerIdPromise = _fetchDocument(worker, fetchDocParams);\n const networkStreamPromise = new Promise(function (resolve) {\n let networkStream;\n if (rangeTransport) {\n networkStream = new _transport_stream.PDFDataTransportStream({\n length,\n initialData: rangeTransport.initialData,\n progressiveDone: rangeTransport.progressiveDone,\n contentDispositionFilename: rangeTransport.contentDispositionFilename,\n disableRange,\n disableStream\n }, rangeTransport);\n } else if (!data) {\n const createPDFNetworkStream = params => {\n if (_util.isNodeJS) {\n return new _displayNode_stream.PDFNodeStream(params);\n }\n return (0, _display_utils.isValidFetchUrl)(params.url) ? new _displayFetch_stream.PDFFetchStream(params) : new _displayNetwork.PDFNetworkStream(params);\n };\n networkStream = createPDFNetworkStream({\n url,\n length,\n httpHeaders,\n withCredentials,\n rangeChunkSize,\n disableRange,\n disableStream\n });\n }\n resolve(networkStream);\n });\n return Promise.all([workerIdPromise, networkStreamPromise]).then(function ([workerId, networkStream]) {\n if (task.destroyed) {\n throw new Error(\"Loading aborted\");\n }\n const messageHandler = new _message_handler.MessageHandler(docId, workerId, worker.port);\n const transport = new WorkerTransport(messageHandler, task, networkStream, transportParams, transportFactory);\n task._transport = transport;\n messageHandler.send(\"Ready\", null);\n });\n }).catch(task._capability.reject);\n return task;\n}\nasync function _fetchDocument(worker, source) {\n if (worker.destroyed) {\n throw new Error(\"Worker was destroyed\");\n }\n const workerId = await worker.messageHandler.sendWithPromise(\"GetDocRequest\", source, source.data ? [source.data.buffer] : null);\n if (worker.destroyed) {\n throw new Error(\"Worker was destroyed\");\n }\n return workerId;\n}\nfunction getUrlProp(val) {\n if (val instanceof URL) {\n return val.href;\n }\n try {\n return new URL(val, window.location).href;\n } catch {\n if (_util.isNodeJS && typeof val === \"string\") {\n return val;\n }\n }\n throw new Error(\"Invalid PDF url data: \" + \"either string or URL-object is expected in the url property.\");\n}\nfunction getDataProp(val) {\n if (_util.isNodeJS && typeof Buffer !== \"undefined\" && val instanceof Buffer) {\n throw new Error(\"Please provide binary data as `Uint8Array`, rather than `Buffer`.\");\n }\n if (val instanceof Uint8Array && val.byteLength === val.buffer.byteLength) {\n return val;\n }\n if (typeof val === \"string\") {\n return (0, _util.stringToBytes)(val);\n }\n if (typeof val === \"object\" && !isNaN(val?.length) || (0, _util.isArrayBuffer)(val)) {\n return new Uint8Array(val);\n }\n throw new Error(\"Invalid PDF binary data: either TypedArray, \" + \"string, or array-like object is expected in the data property.\");\n}\nclass PDFDocumentLoadingTask {\n static #docId = 0;\n constructor() {\n this._capability = new _util.PromiseCapability();\n this._transport = null;\n this._worker = null;\n this.docId = `d${PDFDocumentLoadingTask.#docId++}`;\n this.destroyed = false;\n this.onPassword = null;\n this.onProgress = null;\n }\n get promise() {\n return this._capability.promise;\n }\n async destroy() {\n this.destroyed = true;\n try {\n if (this._worker?.port) {\n this._worker._pendingDestroy = true;\n }\n await this._transport?.destroy();\n } catch (ex) {\n if (this._worker?.port) {\n delete this._worker._pendingDestroy;\n }\n throw ex;\n }\n this._transport = null;\n if (this._worker) {\n this._worker.destroy();\n this._worker = null;\n }\n }\n}\nexports.PDFDocumentLoadingTask = PDFDocumentLoadingTask;\nclass PDFDataRangeTransport {\n constructor(length, initialData, progressiveDone = false, contentDispositionFilename = null) {\n this.length = length;\n this.initialData = initialData;\n this.progressiveDone = progressiveDone;\n this.contentDispositionFilename = contentDispositionFilename;\n this._rangeListeners = [];\n this._progressListeners = [];\n this._progressiveReadListeners = [];\n this._progressiveDoneListeners = [];\n this._readyCapability = new _util.PromiseCapability();\n }\n addRangeListener(listener) {\n this._rangeListeners.push(listener);\n }\n addProgressListener(listener) {\n this._progressListeners.push(listener);\n }\n addProgressiveReadListener(listener) {\n this._progressiveReadListeners.push(listener);\n }\n addProgressiveDoneListener(listener) {\n this._progressiveDoneListeners.push(listener);\n }\n onDataRange(begin, chunk) {\n for (const listener of this._rangeListeners) {\n listener(begin, chunk);\n }\n }\n onDataProgress(loaded, total) {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressListeners) {\n listener(loaded, total);\n }\n });\n }\n onDataProgressiveRead(chunk) {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressiveReadListeners) {\n listener(chunk);\n }\n });\n }\n onDataProgressiveDone() {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressiveDoneListeners) {\n listener();\n }\n });\n }\n transportReady() {\n this._readyCapability.resolve();\n }\n requestDataRange(begin, end) {\n (0, _util.unreachable)(\"Abstract method PDFDataRangeTransport.requestDataRange\");\n }\n abort() {}\n}\nexports.PDFDataRangeTransport = PDFDataRangeTransport;\nclass PDFDocumentProxy {\n constructor(pdfInfo, transport) {\n this._pdfInfo = pdfInfo;\n this._transport = transport;\n Object.defineProperty(this, \"getJavaScript\", {\n value: () => {\n (0, _display_utils.deprecated)(\"`PDFDocumentProxy.getJavaScript`, \" + \"please use `PDFDocumentProxy.getJSActions` instead.\");\n return this.getJSActions().then(js => {\n if (!js) {\n return js;\n }\n const jsArr = [];\n for (const name in js) {\n jsArr.push(...js[name]);\n }\n return jsArr;\n });\n }\n });\n }\n get annotationStorage() {\n return this._transport.annotationStorage;\n }\n get filterFactory() {\n return this._transport.filterFactory;\n }\n get numPages() {\n return this._pdfInfo.numPages;\n }\n get fingerprints() {\n return this._pdfInfo.fingerprints;\n }\n get isPureXfa() {\n return (0, _util.shadow)(this, \"isPureXfa\", !!this._transport._htmlForXfa);\n }\n get allXfaHtml() {\n return this._transport._htmlForXfa;\n }\n getPage(pageNumber) {\n return this._transport.getPage(pageNumber);\n }\n getPageIndex(ref) {\n return this._transport.getPageIndex(ref);\n }\n getDestinations() {\n return this._transport.getDestinations();\n }\n getDestination(id) {\n return this._transport.getDestination(id);\n }\n getPageLabels() {\n return this._transport.getPageLabels();\n }\n getPageLayout() {\n return this._transport.getPageLayout();\n }\n getPageMode() {\n return this._transport.getPageMode();\n }\n getViewerPreferences() {\n return this._transport.getViewerPreferences();\n }\n getOpenAction() {\n return this._transport.getOpenAction();\n }\n getAttachments() {\n return this._transport.getAttachments();\n }\n getJSActions() {\n return this._transport.getDocJSActions();\n }\n getOutline() {\n return this._transport.getOutline();\n }\n getOptionalContentConfig() {\n return this._transport.getOptionalContentConfig();\n }\n getPermissions() {\n return this._transport.getPermissions();\n }\n getMetadata() {\n return this._transport.getMetadata();\n }\n getMarkInfo() {\n return this._transport.getMarkInfo();\n }\n getData() {\n return this._transport.getData();\n }\n saveDocument() {\n return this._transport.saveDocument();\n }\n getDownloadInfo() {\n return this._transport.downloadInfoCapability.promise;\n }\n cleanup(keepLoadedFonts = false) {\n return this._transport.startCleanup(keepLoadedFonts || this.isPureXfa);\n }\n destroy() {\n return this.loadingTask.destroy();\n }\n get loadingParams() {\n return this._transport.loadingParams;\n }\n get loadingTask() {\n return this._transport.loadingTask;\n }\n getFieldObjects() {\n return this._transport.getFieldObjects();\n }\n hasJSActions() {\n return this._transport.hasJSActions();\n }\n getCalculationOrderIds() {\n return this._transport.getCalculationOrderIds();\n }\n}\nexports.PDFDocumentProxy = PDFDocumentProxy;\nclass PDFPageProxy {\n #delayedCleanupTimeout = null;\n #pendingCleanup = false;\n constructor(pageIndex, pageInfo, transport, pdfBug = false) {\n this._pageIndex = pageIndex;\n this._pageInfo = pageInfo;\n this._transport = transport;\n this._stats = pdfBug ? new _display_utils.StatTimer() : null;\n this._pdfBug = pdfBug;\n this.commonObjs = transport.commonObjs;\n this.objs = new PDFObjects();\n this._maybeCleanupAfterRender = false;\n this._intentStates = new Map();\n this.destroyed = false;\n }\n get pageNumber() {\n return this._pageIndex + 1;\n }\n get rotate() {\n return this._pageInfo.rotate;\n }\n get ref() {\n return this._pageInfo.ref;\n }\n get userUnit() {\n return this._pageInfo.userUnit;\n }\n get view() {\n return this._pageInfo.view;\n }\n getViewport({\n scale,\n rotation = this.rotate,\n offsetX = 0,\n offsetY = 0,\n dontFlip = false\n } = {}) {\n return new _display_utils.PageViewport({\n viewBox: this.view,\n scale,\n rotation,\n offsetX,\n offsetY,\n dontFlip\n });\n }\n getAnnotations({\n intent = \"display\"\n } = {}) {\n const intentArgs = this._transport.getRenderingIntent(intent);\n return this._transport.getAnnotations(this._pageIndex, intentArgs.renderingIntent);\n }\n getJSActions() {\n return this._transport.getPageJSActions(this._pageIndex);\n }\n get filterFactory() {\n return this._transport.filterFactory;\n }\n get isPureXfa() {\n return (0, _util.shadow)(this, \"isPureXfa\", !!this._transport._htmlForXfa);\n }\n async getXfa() {\n return this._transport._htmlForXfa?.children[this._pageIndex] || null;\n }\n render({\n canvasContext,\n viewport,\n intent = \"display\",\n annotationMode = _util.AnnotationMode.ENABLE,\n transform = null,\n background = null,\n optionalContentConfigPromise = null,\n annotationCanvasMap = null,\n pageColors = null,\n printAnnotationStorage = null\n }) {\n this._stats?.time(\"Overall\");\n const intentArgs = this._transport.getRenderingIntent(intent, annotationMode, printAnnotationStorage);\n this.#pendingCleanup = false;\n this.#abortDelayedCleanup();\n if (!optionalContentConfigPromise) {\n optionalContentConfigPromise = this._transport.getOptionalContentConfig();\n }\n let intentState = this._intentStates.get(intentArgs.cacheKey);\n if (!intentState) {\n intentState = Object.create(null);\n this._intentStates.set(intentArgs.cacheKey, intentState);\n }\n if (intentState.streamReaderCancelTimeout) {\n clearTimeout(intentState.streamReaderCancelTimeout);\n intentState.streamReaderCancelTimeout = null;\n }\n const intentPrint = !!(intentArgs.renderingIntent & _util.RenderingIntentFlag.PRINT);\n if (!intentState.displayReadyCapability) {\n intentState.displayReadyCapability = new _util.PromiseCapability();\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false,\n separateAnnots: null\n };\n this._stats?.time(\"Page Request\");\n this._pumpOperatorList(intentArgs);\n }\n const complete = error => {\n intentState.renderTasks.delete(internalRenderTask);\n if (this._maybeCleanupAfterRender || intentPrint) {\n this.#pendingCleanup = true;\n }\n this.#tryCleanup(!intentPrint);\n if (error) {\n internalRenderTask.capability.reject(error);\n this._abortOperatorList({\n intentState,\n reason: error instanceof Error ? error : new Error(error)\n });\n } else {\n internalRenderTask.capability.resolve();\n }\n this._stats?.timeEnd(\"Rendering\");\n this._stats?.timeEnd(\"Overall\");\n };\n const internalRenderTask = new InternalRenderTask({\n callback: complete,\n params: {\n canvasContext,\n viewport,\n transform,\n background\n },\n objs: this.objs,\n commonObjs: this.commonObjs,\n annotationCanvasMap,\n operatorList: intentState.operatorList,\n pageIndex: this._pageIndex,\n canvasFactory: this._transport.canvasFactory,\n filterFactory: this._transport.filterFactory,\n useRequestAnimationFrame: !intentPrint,\n pdfBug: this._pdfBug,\n pageColors\n });\n (intentState.renderTasks ||= new Set()).add(internalRenderTask);\n const renderTask = internalRenderTask.task;\n Promise.all([intentState.displayReadyCapability.promise, optionalContentConfigPromise]).then(([transparency, optionalContentConfig]) => {\n if (this.destroyed) {\n complete();\n return;\n }\n this._stats?.time(\"Rendering\");\n internalRenderTask.initializeGraphics({\n transparency,\n optionalContentConfig\n });\n internalRenderTask.operatorListChanged();\n }).catch(complete);\n return renderTask;\n }\n getOperatorList({\n intent = \"display\",\n annotationMode = _util.AnnotationMode.ENABLE,\n printAnnotationStorage = null\n } = {}) {\n function operatorListChanged() {\n if (intentState.operatorList.lastChunk) {\n intentState.opListReadCapability.resolve(intentState.operatorList);\n intentState.renderTasks.delete(opListTask);\n }\n }\n const intentArgs = this._transport.getRenderingIntent(intent, annotationMode, printAnnotationStorage, true);\n let intentState = this._intentStates.get(intentArgs.cacheKey);\n if (!intentState) {\n intentState = Object.create(null);\n this._intentStates.set(intentArgs.cacheKey, intentState);\n }\n let opListTask;\n if (!intentState.opListReadCapability) {\n opListTask = Object.create(null);\n opListTask.operatorListChanged = operatorListChanged;\n intentState.opListReadCapability = new _util.PromiseCapability();\n (intentState.renderTasks ||= new Set()).add(opListTask);\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false,\n separateAnnots: null\n };\n this._stats?.time(\"Page Request\");\n this._pumpOperatorList(intentArgs);\n }\n return intentState.opListReadCapability.promise;\n }\n streamTextContent({\n includeMarkedContent = false,\n disableNormalization = false\n } = {}) {\n const TEXT_CONTENT_CHUNK_SIZE = 100;\n return this._transport.messageHandler.sendWithStream(\"GetTextContent\", {\n pageIndex: this._pageIndex,\n includeMarkedContent: includeMarkedContent === true,\n disableNormalization: disableNormalization === true\n }, {\n highWaterMark: TEXT_CONTENT_CHUNK_SIZE,\n size(textContent) {\n return textContent.items.length;\n }\n });\n }\n getTextContent(params = {}) {\n if (this._transport._htmlForXfa) {\n return this.getXfa().then(xfa => {\n return _xfa_text.XfaText.textContent(xfa);\n });\n }\n const readableStream = this.streamTextContent(params);\n return new Promise(function (resolve, reject) {\n function pump() {\n reader.read().then(function ({\n value,\n done\n }) {\n if (done) {\n resolve(textContent);\n return;\n }\n Object.assign(textContent.styles, value.styles);\n textContent.items.push(...value.items);\n pump();\n }, reject);\n }\n const reader = readableStream.getReader();\n const textContent = {\n items: [],\n styles: Object.create(null)\n };\n pump();\n });\n }\n getStructTree() {\n return this._transport.getStructTree(this._pageIndex);\n }\n _destroy() {\n this.destroyed = true;\n const waitOn = [];\n for (const intentState of this._intentStates.values()) {\n this._abortOperatorList({\n intentState,\n reason: new Error(\"Page was destroyed.\"),\n force: true\n });\n if (intentState.opListReadCapability) {\n continue;\n }\n for (const internalRenderTask of intentState.renderTasks) {\n waitOn.push(internalRenderTask.completed);\n internalRenderTask.cancel();\n }\n }\n this.objs.clear();\n this.#pendingCleanup = false;\n this.#abortDelayedCleanup();\n return Promise.all(waitOn);\n }\n cleanup(resetStats = false) {\n this.#pendingCleanup = true;\n const success = this.#tryCleanup(false);\n if (resetStats && success) {\n this._stats &&= new _display_utils.StatTimer();\n }\n return success;\n }\n #tryCleanup(delayed = false) {\n this.#abortDelayedCleanup();\n if (!this.#pendingCleanup || this.destroyed) {\n return false;\n }\n if (delayed) {\n this.#delayedCleanupTimeout = setTimeout(() => {\n this.#delayedCleanupTimeout = null;\n this.#tryCleanup(false);\n }, DELAYED_CLEANUP_TIMEOUT);\n return false;\n }\n for (const {\n renderTasks,\n operatorList\n } of this._intentStates.values()) {\n if (renderTasks.size > 0 || !operatorList.lastChunk) {\n return false;\n }\n }\n this._intentStates.clear();\n this.objs.clear();\n this.#pendingCleanup = false;\n return true;\n }\n #abortDelayedCleanup() {\n if (this.#delayedCleanupTimeout) {\n clearTimeout(this.#delayedCleanupTimeout);\n this.#delayedCleanupTimeout = null;\n }\n }\n _startRenderPage(transparency, cacheKey) {\n const intentState = this._intentStates.get(cacheKey);\n if (!intentState) {\n return;\n }\n this._stats?.timeEnd(\"Page Request\");\n intentState.displayReadyCapability?.resolve(transparency);\n }\n _renderPageChunk(operatorListChunk, intentState) {\n for (let i = 0, ii = operatorListChunk.length; i < ii; i++) {\n intentState.operatorList.fnArray.push(operatorListChunk.fnArray[i]);\n intentState.operatorList.argsArray.push(operatorListChunk.argsArray[i]);\n }\n intentState.operatorList.lastChunk = operatorListChunk.lastChunk;\n intentState.operatorList.separateAnnots = operatorListChunk.separateAnnots;\n for (const internalRenderTask of intentState.renderTasks) {\n internalRenderTask.operatorListChanged();\n }\n if (operatorListChunk.lastChunk) {\n this.#tryCleanup(true);\n }\n }\n _pumpOperatorList({\n renderingIntent,\n cacheKey,\n annotationStorageSerializable\n }) {\n const {\n map,\n transfers\n } = annotationStorageSerializable;\n const readableStream = this._transport.messageHandler.sendWithStream(\"GetOperatorList\", {\n pageIndex: this._pageIndex,\n intent: renderingIntent,\n cacheKey,\n annotationStorage: map\n }, transfers);\n const reader = readableStream.getReader();\n const intentState = this._intentStates.get(cacheKey);\n intentState.streamReader = reader;\n const pump = () => {\n reader.read().then(({\n value,\n done\n }) => {\n if (done) {\n intentState.streamReader = null;\n return;\n }\n if (this._transport.destroyed) {\n return;\n }\n this._renderPageChunk(value, intentState);\n pump();\n }, reason => {\n intentState.streamReader = null;\n if (this._transport.destroyed) {\n return;\n }\n if (intentState.operatorList) {\n intentState.operatorList.lastChunk = true;\n for (const internalRenderTask of intentState.renderTasks) {\n internalRenderTask.operatorListChanged();\n }\n this.#tryCleanup(true);\n }\n if (intentState.displayReadyCapability) {\n intentState.displayReadyCapability.reject(reason);\n } else if (intentState.opListReadCapability) {\n intentState.opListReadCapability.reject(reason);\n } else {\n throw reason;\n }\n });\n };\n pump();\n }\n _abortOperatorList({\n intentState,\n reason,\n force = false\n }) {\n if (!intentState.streamReader) {\n return;\n }\n if (intentState.streamReaderCancelTimeout) {\n clearTimeout(intentState.streamReaderCancelTimeout);\n intentState.streamReaderCancelTimeout = null;\n }\n if (!force) {\n if (intentState.renderTasks.size > 0) {\n return;\n }\n if (reason instanceof _display_utils.RenderingCancelledException) {\n let delay = RENDERING_CANCELLED_TIMEOUT;\n if (reason.extraDelay > 0 && reason.extraDelay < 1000) {\n delay += reason.extraDelay;\n }\n intentState.streamReaderCancelTimeout = setTimeout(() => {\n intentState.streamReaderCancelTimeout = null;\n this._abortOperatorList({\n intentState,\n reason,\n force: true\n });\n }, delay);\n return;\n }\n }\n intentState.streamReader.cancel(new _util.AbortException(reason.message)).catch(() => {});\n intentState.streamReader = null;\n if (this._transport.destroyed) {\n return;\n }\n for (const [curCacheKey, curIntentState] of this._intentStates) {\n if (curIntentState === intentState) {\n this._intentStates.delete(curCacheKey);\n break;\n }\n }\n this.cleanup();\n }\n get stats() {\n return this._stats;\n }\n}\nexports.PDFPageProxy = PDFPageProxy;\nclass LoopbackPort {\n #listeners = new Set();\n #deferred = Promise.resolve();\n postMessage(obj, transfer) {\n const event = {\n data: structuredClone(obj, transfer ? {\n transfer\n } : null)\n };\n this.#deferred.then(() => {\n for (const listener of this.#listeners) {\n listener.call(this, event);\n }\n });\n }\n addEventListener(name, listener) {\n this.#listeners.add(listener);\n }\n removeEventListener(name, listener) {\n this.#listeners.delete(listener);\n }\n terminate() {\n this.#listeners.clear();\n }\n}\nexports.LoopbackPort = LoopbackPort;\nconst PDFWorkerUtil = {\n isWorkerDisabled: false,\n fallbackWorkerSrc: null,\n fakeWorkerId: 0\n};\nexports.PDFWorkerUtil = PDFWorkerUtil;\n{\n if (_util.isNodeJS && typeof require === \"function\") {\n PDFWorkerUtil.isWorkerDisabled = true;\n PDFWorkerUtil.fallbackWorkerSrc = \"./pdf.worker.js\";\n } else if (typeof document === \"object\") {\n const pdfjsFilePath = document?.currentScript?.src;\n if (pdfjsFilePath) {\n PDFWorkerUtil.fallbackWorkerSrc = pdfjsFilePath.replace(/(\\.(?:min\\.)?js)(\\?.*)?$/i, \".worker$1$2\");\n }\n }\n PDFWorkerUtil.isSameOrigin = function (baseUrl, otherUrl) {\n let base;\n try {\n base = new URL(baseUrl);\n if (!base.origin || base.origin === \"null\") {\n return false;\n }\n } catch {\n return false;\n }\n const other = new URL(otherUrl, base);\n return base.origin === other.origin;\n };\n PDFWorkerUtil.createCDNWrapper = function (url) {\n const wrapper = `importScripts(\"${url}\");`;\n return URL.createObjectURL(new Blob([wrapper]));\n };\n}\nclass PDFWorker {\n static #workerPorts;\n constructor({\n name = null,\n port = null,\n verbosity = (0, _util.getVerbosityLevel)()\n } = {}) {\n this.name = name;\n this.destroyed = false;\n this.verbosity = verbosity;\n this._readyCapability = new _util.PromiseCapability();\n this._port = null;\n this._webWorker = null;\n this._messageHandler = null;\n if (port) {\n if (PDFWorker.#workerPorts?.has(port)) {\n throw new Error(\"Cannot use more than one PDFWorker per port.\");\n }\n (PDFWorker.#workerPorts ||= new WeakMap()).set(port, this);\n this._initializeFromPort(port);\n return;\n }\n this._initialize();\n }\n get promise() {\n return this._readyCapability.promise;\n }\n get port() {\n return this._port;\n }\n get messageHandler() {\n return this._messageHandler;\n }\n _initializeFromPort(port) {\n this._port = port;\n this._messageHandler = new _message_handler.MessageHandler(\"main\", \"worker\", port);\n this._messageHandler.on(\"ready\", function () {});\n this._readyCapability.resolve();\n this._messageHandler.send(\"configure\", {\n verbosity: this.verbosity\n });\n }\n _initialize() {\n if (!PDFWorkerUtil.isWorkerDisabled && !PDFWorker._mainThreadWorkerMessageHandler) {\n let {\n workerSrc\n } = PDFWorker;\n try {\n if (!PDFWorkerUtil.isSameOrigin(window.location.href, workerSrc)) {\n workerSrc = PDFWorkerUtil.createCDNWrapper(new URL(workerSrc, window.location).href);\n }\n const worker = new Worker(workerSrc);\n const messageHandler = new _message_handler.MessageHandler(\"main\", \"worker\", worker);\n const terminateEarly = () => {\n worker.removeEventListener(\"error\", onWorkerError);\n messageHandler.destroy();\n worker.terminate();\n if (this.destroyed) {\n this._readyCapability.reject(new Error(\"Worker was destroyed\"));\n } else {\n this._setupFakeWorker();\n }\n };\n const onWorkerError = () => {\n if (!this._webWorker) {\n terminateEarly();\n }\n };\n worker.addEventListener(\"error\", onWorkerError);\n messageHandler.on(\"test\", data => {\n worker.removeEventListener(\"error\", onWorkerError);\n if (this.destroyed) {\n terminateEarly();\n return;\n }\n if (data) {\n this._messageHandler = messageHandler;\n this._port = worker;\n this._webWorker = worker;\n this._readyCapability.resolve();\n messageHandler.send(\"configure\", {\n verbosity: this.verbosity\n });\n } else {\n this._setupFakeWorker();\n messageHandler.destroy();\n worker.terminate();\n }\n });\n messageHandler.on(\"ready\", data => {\n worker.removeEventListener(\"error\", onWorkerError);\n if (this.destroyed) {\n terminateEarly();\n return;\n }\n try {\n sendTest();\n } catch {\n this._setupFakeWorker();\n }\n });\n const sendTest = () => {\n const testObj = new Uint8Array();\n messageHandler.send(\"test\", testObj, [testObj.buffer]);\n };\n sendTest();\n return;\n } catch {\n (0, _util.info)(\"The worker has been disabled.\");\n }\n }\n this._setupFakeWorker();\n }\n _setupFakeWorker() {\n if (!PDFWorkerUtil.isWorkerDisabled) {\n (0, _util.warn)(\"Setting up fake worker.\");\n PDFWorkerUtil.isWorkerDisabled = true;\n }\n PDFWorker._setupFakeWorkerGlobal.then(WorkerMessageHandler => {\n if (this.destroyed) {\n this._readyCapability.reject(new Error(\"Worker was destroyed\"));\n return;\n }\n const port = new LoopbackPort();\n this._port = port;\n const id = `fake${PDFWorkerUtil.fakeWorkerId++}`;\n const workerHandler = new _message_handler.MessageHandler(id + \"_worker\", id, port);\n WorkerMessageHandler.setup(workerHandler, port);\n const messageHandler = new _message_handler.MessageHandler(id, id + \"_worker\", port);\n this._messageHandler = messageHandler;\n this._readyCapability.resolve();\n messageHandler.send(\"configure\", {\n verbosity: this.verbosity\n });\n }).catch(reason => {\n this._readyCapability.reject(new Error(`Setting up fake worker failed: \"${reason.message}\".`));\n });\n }\n destroy() {\n this.destroyed = true;\n if (this._webWorker) {\n this._webWorker.terminate();\n this._webWorker = null;\n }\n PDFWorker.#workerPorts?.delete(this._port);\n this._port = null;\n if (this._messageHandler) {\n this._messageHandler.destroy();\n this._messageHandler = null;\n }\n }\n static fromPort(params) {\n if (!params?.port) {\n throw new Error(\"PDFWorker.fromPort - invalid method signature.\");\n }\n const cachedPort = this.#workerPorts?.get(params.port);\n if (cachedPort) {\n if (cachedPort._pendingDestroy) {\n throw new Error(\"PDFWorker.fromPort - the worker is being destroyed.\\n\" + \"Please remember to await `PDFDocumentLoadingTask.destroy()`-calls.\");\n }\n return cachedPort;\n }\n return new PDFWorker(params);\n }\n static get workerSrc() {\n if (_worker_options.GlobalWorkerOptions.workerSrc) {\n return _worker_options.GlobalWorkerOptions.workerSrc;\n }\n if (PDFWorkerUtil.fallbackWorkerSrc !== null) {\n if (!_util.isNodeJS) {\n (0, _display_utils.deprecated)('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n return PDFWorkerUtil.fallbackWorkerSrc;\n }\n throw new Error('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n static get _mainThreadWorkerMessageHandler() {\n try {\n return globalThis.pdfjsWorker?.WorkerMessageHandler || null;\n } catch {\n return null;\n }\n }\n static get _setupFakeWorkerGlobal() {\n const loader = async () => {\n const mainWorkerMessageHandler = this._mainThreadWorkerMessageHandler;\n if (mainWorkerMessageHandler) {\n return mainWorkerMessageHandler;\n }\n if (_util.isNodeJS && typeof require === \"function\") {\n const worker = eval(\"require\")(this.workerSrc);\n return worker.WorkerMessageHandler;\n }\n await (0, _display_utils.loadScript)(this.workerSrc);\n return window.pdfjsWorker.WorkerMessageHandler;\n };\n return (0, _util.shadow)(this, \"_setupFakeWorkerGlobal\", loader());\n }\n}\nexports.PDFWorker = PDFWorker;\nclass WorkerTransport {\n #methodPromises = new Map();\n #pageCache = new Map();\n #pagePromises = new Map();\n #passwordCapability = null;\n constructor(messageHandler, loadingTask, networkStream, params, factory) {\n this.messageHandler = messageHandler;\n this.loadingTask = loadingTask;\n this.commonObjs = new PDFObjects();\n this.fontLoader = new _font_loader.FontLoader({\n ownerDocument: params.ownerDocument,\n styleElement: params.styleElement\n });\n this._params = params;\n this.canvasFactory = factory.canvasFactory;\n this.filterFactory = factory.filterFactory;\n this.cMapReaderFactory = factory.cMapReaderFactory;\n this.standardFontDataFactory = factory.standardFontDataFactory;\n this.destroyed = false;\n this.destroyCapability = null;\n this._networkStream = networkStream;\n this._fullReader = null;\n this._lastProgress = null;\n this.downloadInfoCapability = new _util.PromiseCapability();\n this.setupMessageHandler();\n }\n #cacheSimpleMethod(name, data = null) {\n const cachedPromise = this.#methodPromises.get(name);\n if (cachedPromise) {\n return cachedPromise;\n }\n const promise = this.messageHandler.sendWithPromise(name, data);\n this.#methodPromises.set(name, promise);\n return promise;\n }\n get annotationStorage() {\n return (0, _util.shadow)(this, \"annotationStorage\", new _annotation_storage.AnnotationStorage());\n }\n getRenderingIntent(intent, annotationMode = _util.AnnotationMode.ENABLE, printAnnotationStorage = null, isOpList = false) {\n let renderingIntent = _util.RenderingIntentFlag.DISPLAY;\n let annotationStorageSerializable = _annotation_storage.SerializableEmpty;\n switch (intent) {\n case \"any\":\n renderingIntent = _util.RenderingIntentFlag.ANY;\n break;\n case \"display\":\n break;\n case \"print\":\n renderingIntent = _util.RenderingIntentFlag.PRINT;\n break;\n default:\n (0, _util.warn)(`getRenderingIntent - invalid intent: ${intent}`);\n }\n switch (annotationMode) {\n case _util.AnnotationMode.DISABLE:\n renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_DISABLE;\n break;\n case _util.AnnotationMode.ENABLE:\n break;\n case _util.AnnotationMode.ENABLE_FORMS:\n renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_FORMS;\n break;\n case _util.AnnotationMode.ENABLE_STORAGE:\n renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_STORAGE;\n const annotationStorage = renderingIntent & _util.RenderingIntentFlag.PRINT && printAnnotationStorage instanceof _annotation_storage.PrintAnnotationStorage ? printAnnotationStorage : this.annotationStorage;\n annotationStorageSerializable = annotationStorage.serializable;\n break;\n default:\n (0, _util.warn)(`getRenderingIntent - invalid annotationMode: ${annotationMode}`);\n }\n if (isOpList) {\n renderingIntent += _util.RenderingIntentFlag.OPLIST;\n }\n return {\n renderingIntent,\n cacheKey: `${renderingIntent}_${annotationStorageSerializable.hash}`,\n annotationStorageSerializable\n };\n }\n destroy() {\n if (this.destroyCapability) {\n return this.destroyCapability.promise;\n }\n this.destroyed = true;\n this.destroyCapability = new _util.PromiseCapability();\n this.#passwordCapability?.reject(new Error(\"Worker was destroyed during onPassword callback\"));\n const waitOn = [];\n for (const page of this.#pageCache.values()) {\n waitOn.push(page._destroy());\n }\n this.#pageCache.clear();\n this.#pagePromises.clear();\n if (this.hasOwnProperty(\"annotationStorage\")) {\n this.annotationStorage.resetModified();\n }\n const terminated = this.messageHandler.sendWithPromise(\"Terminate\", null);\n waitOn.push(terminated);\n Promise.all(waitOn).then(() => {\n this.commonObjs.clear();\n this.fontLoader.clear();\n this.#methodPromises.clear();\n this.filterFactory.destroy();\n this._networkStream?.cancelAllRequests(new _util.AbortException(\"Worker was terminated.\"));\n if (this.messageHandler) {\n this.messageHandler.destroy();\n this.messageHandler = null;\n }\n this.destroyCapability.resolve();\n }, this.destroyCapability.reject);\n return this.destroyCapability.promise;\n }\n setupMessageHandler() {\n const {\n messageHandler,\n loadingTask\n } = this;\n messageHandler.on(\"GetReader\", (data, sink) => {\n (0, _util.assert)(this._networkStream, \"GetReader - no `IPDFStream` instance available.\");\n this._fullReader = this._networkStream.getFullReader();\n this._fullReader.onProgress = evt => {\n this._lastProgress = {\n loaded: evt.loaded,\n total: evt.total\n };\n };\n sink.onPull = () => {\n this._fullReader.read().then(function ({\n value,\n done\n }) {\n if (done) {\n sink.close();\n return;\n }\n (0, _util.assert)(value instanceof ArrayBuffer, \"GetReader - expected an ArrayBuffer.\");\n sink.enqueue(new Uint8Array(value), 1, [value]);\n }).catch(reason => {\n sink.error(reason);\n });\n };\n sink.onCancel = reason => {\n this._fullReader.cancel(reason);\n sink.ready.catch(readyReason => {\n if (this.destroyed) {\n return;\n }\n throw readyReason;\n });\n };\n });\n messageHandler.on(\"ReaderHeadersReady\", data => {\n const headersCapability = new _util.PromiseCapability();\n const fullReader = this._fullReader;\n fullReader.headersReady.then(() => {\n if (!fullReader.isStreamingSupported || !fullReader.isRangeSupported) {\n if (this._lastProgress) {\n loadingTask.onProgress?.(this._lastProgress);\n }\n fullReader.onProgress = evt => {\n loadingTask.onProgress?.({\n loaded: evt.loaded,\n total: evt.total\n });\n };\n }\n headersCapability.resolve({\n isStreamingSupported: fullReader.isStreamingSupported,\n isRangeSupported: fullReader.isRangeSupported,\n contentLength: fullReader.contentLength\n });\n }, headersCapability.reject);\n return headersCapability.promise;\n });\n messageHandler.on(\"GetRangeReader\", (data, sink) => {\n (0, _util.assert)(this._networkStream, \"GetRangeReader - no `IPDFStream` instance available.\");\n const rangeReader = this._networkStream.getRangeReader(data.begin, data.end);\n if (!rangeReader) {\n sink.close();\n return;\n }\n sink.onPull = () => {\n rangeReader.read().then(function ({\n value,\n done\n }) {\n if (done) {\n sink.close();\n return;\n }\n (0, _util.assert)(value instanceof ArrayBuffer, \"GetRangeReader - expected an ArrayBuffer.\");\n sink.enqueue(new Uint8Array(value), 1, [value]);\n }).catch(reason => {\n sink.error(reason);\n });\n };\n sink.onCancel = reason => {\n rangeReader.cancel(reason);\n sink.ready.catch(readyReason => {\n if (this.destroyed) {\n return;\n }\n throw readyReason;\n });\n };\n });\n messageHandler.on(\"GetDoc\", ({\n pdfInfo\n }) => {\n this._numPages = pdfInfo.numPages;\n this._htmlForXfa = pdfInfo.htmlForXfa;\n delete pdfInfo.htmlForXfa;\n loadingTask._capability.resolve(new PDFDocumentProxy(pdfInfo, this));\n });\n messageHandler.on(\"DocException\", function (ex) {\n let reason;\n switch (ex.name) {\n case \"PasswordException\":\n reason = new _util.PasswordException(ex.message, ex.code);\n break;\n case \"InvalidPDFException\":\n reason = new _util.InvalidPDFException(ex.message);\n break;\n case \"MissingPDFException\":\n reason = new _util.MissingPDFException(ex.message);\n break;\n case \"UnexpectedResponseException\":\n reason = new _util.UnexpectedResponseException(ex.message, ex.status);\n break;\n case \"UnknownErrorException\":\n reason = new _util.UnknownErrorException(ex.message, ex.details);\n break;\n default:\n (0, _util.unreachable)(\"DocException - expected a valid Error.\");\n }\n loadingTask._capability.reject(reason);\n });\n messageHandler.on(\"PasswordRequest\", exception => {\n this.#passwordCapability = new _util.PromiseCapability();\n if (loadingTask.onPassword) {\n const updatePassword = password => {\n if (password instanceof Error) {\n this.#passwordCapability.reject(password);\n } else {\n this.#passwordCapability.resolve({\n password\n });\n }\n };\n try {\n loadingTask.onPassword(updatePassword, exception.code);\n } catch (ex) {\n this.#passwordCapability.reject(ex);\n }\n } else {\n this.#passwordCapability.reject(new _util.PasswordException(exception.message, exception.code));\n }\n return this.#passwordCapability.promise;\n });\n messageHandler.on(\"DataLoaded\", data => {\n loadingTask.onProgress?.({\n loaded: data.length,\n total: data.length\n });\n this.downloadInfoCapability.resolve(data);\n });\n messageHandler.on(\"StartRenderPage\", data => {\n if (this.destroyed) {\n return;\n }\n const page = this.#pageCache.get(data.pageIndex);\n page._startRenderPage(data.transparency, data.cacheKey);\n });\n messageHandler.on(\"commonobj\", ([id, type, exportedData]) => {\n if (this.destroyed) {\n return;\n }\n if (this.commonObjs.has(id)) {\n return;\n }\n switch (type) {\n case \"Font\":\n const params = this._params;\n if (\"error\" in exportedData) {\n const exportedError = exportedData.error;\n (0, _util.warn)(`Error during font loading: ${exportedError}`);\n this.commonObjs.resolve(id, exportedError);\n break;\n }\n const inspectFont = params.pdfBug && globalThis.FontInspector?.enabled ? (font, url) => globalThis.FontInspector.fontAdded(font, url) : null;\n const font = new _font_loader.FontFaceObject(exportedData, {\n isEvalSupported: params.isEvalSupported,\n disableFontFace: params.disableFontFace,\n ignoreErrors: params.ignoreErrors,\n inspectFont\n });\n this.fontLoader.bind(font).catch(reason => {\n return messageHandler.sendWithPromise(\"FontFallback\", {\n id\n });\n }).finally(() => {\n if (!params.fontExtraProperties && font.data) {\n font.data = null;\n }\n this.commonObjs.resolve(id, font);\n });\n break;\n case \"FontPath\":\n case \"Image\":\n case \"Pattern\":\n this.commonObjs.resolve(id, exportedData);\n break;\n default:\n throw new Error(`Got unknown common object type ${type}`);\n }\n });\n messageHandler.on(\"obj\", ([id, pageIndex, type, imageData]) => {\n if (this.destroyed) {\n return;\n }\n const pageProxy = this.#pageCache.get(pageIndex);\n if (pageProxy.objs.has(id)) {\n return;\n }\n switch (type) {\n case \"Image\":\n pageProxy.objs.resolve(id, imageData);\n if (imageData) {\n let length;\n if (imageData.bitmap) {\n const {\n width,\n height\n } = imageData;\n length = width * height * 4;\n } else {\n length = imageData.data?.length || 0;\n }\n if (length > _util.MAX_IMAGE_SIZE_TO_CACHE) {\n pageProxy._maybeCleanupAfterRender = true;\n }\n }\n break;\n case \"Pattern\":\n pageProxy.objs.resolve(id, imageData);\n break;\n default:\n throw new Error(`Got unknown object type ${type}`);\n }\n });\n messageHandler.on(\"DocProgress\", data => {\n if (this.destroyed) {\n return;\n }\n loadingTask.onProgress?.({\n loaded: data.loaded,\n total: data.total\n });\n });\n messageHandler.on(\"FetchBuiltInCMap\", data => {\n if (this.destroyed) {\n return Promise.reject(new Error(\"Worker was destroyed.\"));\n }\n if (!this.cMapReaderFactory) {\n return Promise.reject(new Error(\"CMapReaderFactory not initialized, see the `useWorkerFetch` parameter.\"));\n }\n return this.cMapReaderFactory.fetch(data);\n });\n messageHandler.on(\"FetchStandardFontData\", data => {\n if (this.destroyed) {\n return Promise.reject(new Error(\"Worker was destroyed.\"));\n }\n if (!this.standardFontDataFactory) {\n return Promise.reject(new Error(\"StandardFontDataFactory not initialized, see the `useWorkerFetch` parameter.\"));\n }\n return this.standardFontDataFactory.fetch(data);\n });\n }\n getData() {\n return this.messageHandler.sendWithPromise(\"GetData\", null);\n }\n saveDocument() {\n if (this.annotationStorage.size <= 0) {\n (0, _util.warn)(\"saveDocument called while `annotationStorage` is empty, \" + \"please use the getData-method instead.\");\n }\n const {\n map,\n transfers\n } = this.annotationStorage.serializable;\n return this.messageHandler.sendWithPromise(\"SaveDocument\", {\n isPureXfa: !!this._htmlForXfa,\n numPages: this._numPages,\n annotationStorage: map,\n filename: this._fullReader?.filename ?? null\n }, transfers).finally(() => {\n this.annotationStorage.resetModified();\n });\n }\n getPage(pageNumber) {\n if (!Number.isInteger(pageNumber) || pageNumber <= 0 || pageNumber > this._numPages) {\n return Promise.reject(new Error(\"Invalid page request.\"));\n }\n const pageIndex = pageNumber - 1,\n cachedPromise = this.#pagePromises.get(pageIndex);\n if (cachedPromise) {\n return cachedPromise;\n }\n const promise = this.messageHandler.sendWithPromise(\"GetPage\", {\n pageIndex\n }).then(pageInfo => {\n if (this.destroyed) {\n throw new Error(\"Transport destroyed\");\n }\n const page = new PDFPageProxy(pageIndex, pageInfo, this, this._params.pdfBug);\n this.#pageCache.set(pageIndex, page);\n return page;\n });\n this.#pagePromises.set(pageIndex, promise);\n return promise;\n }\n getPageIndex(ref) {\n if (typeof ref !== \"object\" || ref === null || !Number.isInteger(ref.num) || ref.num < 0 || !Number.isInteger(ref.gen) || ref.gen < 0) {\n return Promise.reject(new Error(\"Invalid pageIndex request.\"));\n }\n return this.messageHandler.sendWithPromise(\"GetPageIndex\", {\n num: ref.num,\n gen: ref.gen\n });\n }\n getAnnotations(pageIndex, intent) {\n return this.messageHandler.sendWithPromise(\"GetAnnotations\", {\n pageIndex,\n intent\n });\n }\n getFieldObjects() {\n return this.#cacheSimpleMethod(\"GetFieldObjects\");\n }\n hasJSActions() {\n return this.#cacheSimpleMethod(\"HasJSActions\");\n }\n getCalculationOrderIds() {\n return this.messageHandler.sendWithPromise(\"GetCalculationOrderIds\", null);\n }\n getDestinations() {\n return this.messageHandler.sendWithPromise(\"GetDestinations\", null);\n }\n getDestination(id) {\n if (typeof id !== \"string\") {\n return Promise.reject(new Error(\"Invalid destination request.\"));\n }\n return this.messageHandler.sendWithPromise(\"GetDestination\", {\n id\n });\n }\n getPageLabels() {\n return this.messageHandler.sendWithPromise(\"GetPageLabels\", null);\n }\n getPageLayout() {\n return this.messageHandler.sendWithPromise(\"GetPageLayout\", null);\n }\n getPageMode() {\n return this.messageHandler.sendWithPromise(\"GetPageMode\", null);\n }\n getViewerPreferences() {\n return this.messageHandler.sendWithPromise(\"GetViewerPreferences\", null);\n }\n getOpenAction() {\n return this.messageHandler.sendWithPromise(\"GetOpenAction\", null);\n }\n getAttachments() {\n return this.messageHandler.sendWithPromise(\"GetAttachments\", null);\n }\n getDocJSActions() {\n return this.#cacheSimpleMethod(\"GetDocJSActions\");\n }\n getPageJSActions(pageIndex) {\n return this.messageHandler.sendWithPromise(\"GetPageJSActions\", {\n pageIndex\n });\n }\n getStructTree(pageIndex) {\n return this.messageHandler.sendWithPromise(\"GetStructTree\", {\n pageIndex\n });\n }\n getOutline() {\n return this.messageHandler.sendWithPromise(\"GetOutline\", null);\n }\n getOptionalContentConfig() {\n return this.messageHandler.sendWithPromise(\"GetOptionalContentConfig\", null).then(results => {\n return new _optional_content_config.OptionalContentConfig(results);\n });\n }\n getPermissions() {\n return this.messageHandler.sendWithPromise(\"GetPermissions\", null);\n }\n getMetadata() {\n const name = \"GetMetadata\",\n cachedPromise = this.#methodPromises.get(name);\n if (cachedPromise) {\n return cachedPromise;\n }\n const promise = this.messageHandler.sendWithPromise(name, null).then(results => {\n return {\n info: results[0],\n metadata: results[1] ? new _metadata.Metadata(results[1]) : null,\n contentDispositionFilename: this._fullReader?.filename ?? null,\n contentLength: this._fullReader?.contentLength ?? null\n };\n });\n this.#methodPromises.set(name, promise);\n return promise;\n }\n getMarkInfo() {\n return this.messageHandler.sendWithPromise(\"GetMarkInfo\", null);\n }\n async startCleanup(keepLoadedFonts = false) {\n if (this.destroyed) {\n return;\n }\n await this.messageHandler.sendWithPromise(\"Cleanup\", null);\n for (const page of this.#pageCache.values()) {\n const cleanupSuccessful = page.cleanup();\n if (!cleanupSuccessful) {\n throw new Error(`startCleanup: Page ${page.pageNumber} is currently rendering.`);\n }\n }\n this.commonObjs.clear();\n if (!keepLoadedFonts) {\n this.fontLoader.clear();\n }\n this.#methodPromises.clear();\n this.filterFactory.destroy(true);\n }\n get loadingParams() {\n const {\n disableAutoFetch,\n enableXfa\n } = this._params;\n return (0, _util.shadow)(this, \"loadingParams\", {\n disableAutoFetch,\n enableXfa\n });\n }\n}\nclass PDFObjects {\n #objs = Object.create(null);\n #ensureObj(objId) {\n return this.#objs[objId] ||= {\n capability: new _util.PromiseCapability(),\n data: null\n };\n }\n get(objId, callback = null) {\n if (callback) {\n const obj = this.#ensureObj(objId);\n obj.capability.promise.then(() => callback(obj.data));\n return null;\n }\n const obj = this.#objs[objId];\n if (!obj?.capability.settled) {\n throw new Error(`Requesting object that isn't resolved yet ${objId}.`);\n }\n return obj.data;\n }\n has(objId) {\n const obj = this.#objs[objId];\n return obj?.capability.settled || false;\n }\n resolve(objId, data = null) {\n const obj = this.#ensureObj(objId);\n obj.data = data;\n obj.capability.resolve();\n }\n clear() {\n for (const objId in this.#objs) {\n const {\n data\n } = this.#objs[objId];\n data?.bitmap?.close();\n }\n this.#objs = Object.create(null);\n }\n}\nclass RenderTask {\n #internalRenderTask = null;\n constructor(internalRenderTask) {\n this.#internalRenderTask = internalRenderTask;\n this.onContinue = null;\n }\n get promise() {\n return this.#internalRenderTask.capability.promise;\n }\n cancel(extraDelay = 0) {\n this.#internalRenderTask.cancel(null, extraDelay);\n }\n get separateAnnots() {\n const {\n separateAnnots\n } = this.#internalRenderTask.operatorList;\n if (!separateAnnots) {\n return false;\n }\n const {\n annotationCanvasMap\n } = this.#internalRenderTask;\n return separateAnnots.form || separateAnnots.canvas && annotationCanvasMap?.size > 0;\n }\n}\nexports.RenderTask = RenderTask;\nclass InternalRenderTask {\n static #canvasInUse = new WeakSet();\n constructor({\n callback,\n params,\n objs,\n commonObjs,\n annotationCanvasMap,\n operatorList,\n pageIndex,\n canvasFactory,\n filterFactory,\n useRequestAnimationFrame = false,\n pdfBug = false,\n pageColors = null\n }) {\n this.callback = callback;\n this.params = params;\n this.objs = objs;\n this.commonObjs = commonObjs;\n this.annotationCanvasMap = annotationCanvasMap;\n this.operatorListIdx = null;\n this.operatorList = operatorList;\n this._pageIndex = pageIndex;\n this.canvasFactory = canvasFactory;\n this.filterFactory = filterFactory;\n this._pdfBug = pdfBug;\n this.pageColors = pageColors;\n this.running = false;\n this.graphicsReadyCallback = null;\n this.graphicsReady = false;\n this._useRequestAnimationFrame = useRequestAnimationFrame === true && typeof window !== \"undefined\";\n this.cancelled = false;\n this.capability = new _util.PromiseCapability();\n this.task = new RenderTask(this);\n this._cancelBound = this.cancel.bind(this);\n this._continueBound = this._continue.bind(this);\n this._scheduleNextBound = this._scheduleNext.bind(this);\n this._nextBound = this._next.bind(this);\n this._canvas = params.canvasContext.canvas;\n }\n get completed() {\n return this.capability.promise.catch(function () {});\n }\n initializeGraphics({\n transparency = false,\n optionalContentConfig\n }) {\n if (this.cancelled) {\n return;\n }\n if (this._canvas) {\n if (InternalRenderTask.#canvasInUse.has(this._canvas)) {\n throw new Error(\"Cannot use the same canvas during multiple render() operations. \" + \"Use different canvas or ensure previous operations were \" + \"cancelled or completed.\");\n }\n InternalRenderTask.#canvasInUse.add(this._canvas);\n }\n if (this._pdfBug && globalThis.StepperManager?.enabled) {\n this.stepper = globalThis.StepperManager.create(this._pageIndex);\n this.stepper.init(this.operatorList);\n this.stepper.nextBreakPoint = this.stepper.getNextBreakPoint();\n }\n const {\n canvasContext,\n viewport,\n transform,\n background\n } = this.params;\n this.gfx = new _canvas.CanvasGraphics(canvasContext, this.commonObjs, this.objs, this.canvasFactory, this.filterFactory, {\n optionalContentConfig\n }, this.annotationCanvasMap, this.pageColors);\n this.gfx.beginDrawing({\n transform,\n viewport,\n transparency,\n background\n });\n this.operatorListIdx = 0;\n this.graphicsReady = true;\n this.graphicsReadyCallback?.();\n }\n cancel(error = null, extraDelay = 0) {\n this.running = false;\n this.cancelled = true;\n this.gfx?.endDrawing();\n InternalRenderTask.#canvasInUse.delete(this._canvas);\n this.callback(error || new _display_utils.RenderingCancelledException(`Rendering cancelled, page ${this._pageIndex + 1}`, extraDelay));\n }\n operatorListChanged() {\n if (!this.graphicsReady) {\n this.graphicsReadyCallback ||= this._continueBound;\n return;\n }\n this.stepper?.updateOperatorList(this.operatorList);\n if (this.running) {\n return;\n }\n this._continue();\n }\n _continue() {\n this.running = true;\n if (this.cancelled) {\n return;\n }\n if (this.task.onContinue) {\n this.task.onContinue(this._scheduleNextBound);\n } else {\n this._scheduleNext();\n }\n }\n _scheduleNext() {\n if (this._useRequestAnimationFrame) {\n window.requestAnimationFrame(() => {\n this._nextBound().catch(this._cancelBound);\n });\n } else {\n Promise.resolve().then(this._nextBound).catch(this._cancelBound);\n }\n }\n async _next() {\n if (this.cancelled) {\n return;\n }\n this.operatorListIdx = this.gfx.executeOperatorList(this.operatorList, this.operatorListIdx, this._continueBound, this.stepper);\n if (this.operatorListIdx === this.operatorList.argsArray.length) {\n this.running = false;\n if (this.operatorList.lastChunk) {\n this.gfx.endDrawing();\n InternalRenderTask.#canvasInUse.delete(this._canvas);\n this.callback();\n }\n }\n }\n}\nconst version = '3.11.174';\nexports.version = version;\nconst build = 'ce8716743';\nexports.build = build;\n\n/***/ }),\n/* 3 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.SerializableEmpty = exports.PrintAnnotationStorage = exports.AnnotationStorage = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _editor = __w_pdfjs_require__(4);\nvar _murmurhash = __w_pdfjs_require__(8);\nconst SerializableEmpty = Object.freeze({\n map: null,\n hash: \"\",\n transfers: undefined\n});\nexports.SerializableEmpty = SerializableEmpty;\nclass AnnotationStorage {\n #modified = false;\n #storage = new Map();\n constructor() {\n this.onSetModified = null;\n this.onResetModified = null;\n this.onAnnotationEditor = null;\n }\n getValue(key, defaultValue) {\n const value = this.#storage.get(key);\n if (value === undefined) {\n return defaultValue;\n }\n return Object.assign(defaultValue, value);\n }\n getRawValue(key) {\n return this.#storage.get(key);\n }\n remove(key) {\n this.#storage.delete(key);\n if (this.#storage.size === 0) {\n this.resetModified();\n }\n if (typeof this.onAnnotationEditor === \"function\") {\n for (const value of this.#storage.values()) {\n if (value instanceof _editor.AnnotationEditor) {\n return;\n }\n }\n this.onAnnotationEditor(null);\n }\n }\n setValue(key, value) {\n const obj = this.#storage.get(key);\n let modified = false;\n if (obj !== undefined) {\n for (const [entry, val] of Object.entries(value)) {\n if (obj[entry] !== val) {\n modified = true;\n obj[entry] = val;\n }\n }\n } else {\n modified = true;\n this.#storage.set(key, value);\n }\n if (modified) {\n this.#setModified();\n }\n if (value instanceof _editor.AnnotationEditor && typeof this.onAnnotationEditor === \"function\") {\n this.onAnnotationEditor(value.constructor._type);\n }\n }\n has(key) {\n return this.#storage.has(key);\n }\n getAll() {\n return this.#storage.size > 0 ? (0, _util.objectFromMap)(this.#storage) : null;\n }\n setAll(obj) {\n for (const [key, val] of Object.entries(obj)) {\n this.setValue(key, val);\n }\n }\n get size() {\n return this.#storage.size;\n }\n #setModified() {\n if (!this.#modified) {\n this.#modified = true;\n if (typeof this.onSetModified === \"function\") {\n this.onSetModified();\n }\n }\n }\n resetModified() {\n if (this.#modified) {\n this.#modified = false;\n if (typeof this.onResetModified === \"function\") {\n this.onResetModified();\n }\n }\n }\n get print() {\n return new PrintAnnotationStorage(this);\n }\n get serializable() {\n if (this.#storage.size === 0) {\n return SerializableEmpty;\n }\n const map = new Map(),\n hash = new _murmurhash.MurmurHash3_64(),\n transfers = [];\n const context = Object.create(null);\n let hasBitmap = false;\n for (const [key, val] of this.#storage) {\n const serialized = val instanceof _editor.AnnotationEditor ? val.serialize(false, context) : val;\n if (serialized) {\n map.set(key, serialized);\n hash.update(`${key}:${JSON.stringify(serialized)}`);\n hasBitmap ||= !!serialized.bitmap;\n }\n }\n if (hasBitmap) {\n for (const value of map.values()) {\n if (value.bitmap) {\n transfers.push(value.bitmap);\n }\n }\n }\n return map.size > 0 ? {\n map,\n hash: hash.hexdigest(),\n transfers\n } : SerializableEmpty;\n }\n}\nexports.AnnotationStorage = AnnotationStorage;\nclass PrintAnnotationStorage extends AnnotationStorage {\n #serializable;\n constructor(parent) {\n super();\n const {\n map,\n hash,\n transfers\n } = parent.serializable;\n const clone = structuredClone(map, transfers ? {\n transfer: transfers\n } : null);\n this.#serializable = {\n map: clone,\n hash,\n transfers\n };\n }\n get print() {\n (0, _util.unreachable)(\"Should not call PrintAnnotationStorage.print\");\n }\n get serializable() {\n return this.#serializable;\n }\n}\nexports.PrintAnnotationStorage = PrintAnnotationStorage;\n\n/***/ }),\n/* 4 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.AnnotationEditor = void 0;\nvar _tools = __w_pdfjs_require__(5);\nvar _util = __w_pdfjs_require__(1);\nvar _display_utils = __w_pdfjs_require__(6);\nclass AnnotationEditor {\n #altText = \"\";\n #altTextDecorative = false;\n #altTextButton = null;\n #altTextTooltip = null;\n #altTextTooltipTimeout = null;\n #keepAspectRatio = false;\n #resizersDiv = null;\n #boundFocusin = this.focusin.bind(this);\n #boundFocusout = this.focusout.bind(this);\n #hasBeenClicked = false;\n #isEditing = false;\n #isInEditMode = false;\n _initialOptions = Object.create(null);\n _uiManager = null;\n _focusEventsAllowed = true;\n _l10nPromise = null;\n #isDraggable = false;\n #zIndex = AnnotationEditor._zIndex++;\n static _borderLineWidth = -1;\n static _colorManager = new _tools.ColorManager();\n static _zIndex = 1;\n static SMALL_EDITOR_SIZE = 0;\n constructor(parameters) {\n if (this.constructor === AnnotationEditor) {\n (0, _util.unreachable)(\"Cannot initialize AnnotationEditor.\");\n }\n this.parent = parameters.parent;\n this.id = parameters.id;\n this.width = this.height = null;\n this.pageIndex = parameters.parent.pageIndex;\n this.name = parameters.name;\n this.div = null;\n this._uiManager = parameters.uiManager;\n this.annotationElementId = null;\n this._willKeepAspectRatio = false;\n this._initialOptions.isCentered = parameters.isCentered;\n this._structTreeParentId = null;\n const {\n rotation,\n rawDims: {\n pageWidth,\n pageHeight,\n pageX,\n pageY\n }\n } = this.parent.viewport;\n this.rotation = rotation;\n this.pageRotation = (360 + rotation - this._uiManager.viewParameters.rotation) % 360;\n this.pageDimensions = [pageWidth, pageHeight];\n this.pageTranslation = [pageX, pageY];\n const [width, height] = this.parentDimensions;\n this.x = parameters.x / width;\n this.y = parameters.y / height;\n this.isAttachedToDOM = false;\n this.deleted = false;\n }\n get editorType() {\n return Object.getPrototypeOf(this).constructor._type;\n }\n static get _defaultLineColor() {\n return (0, _util.shadow)(this, \"_defaultLineColor\", this._colorManager.getHexCode(\"CanvasText\"));\n }\n static deleteAnnotationElement(editor) {\n const fakeEditor = new FakeEditor({\n id: editor.parent.getNextId(),\n parent: editor.parent,\n uiManager: editor._uiManager\n });\n fakeEditor.annotationElementId = editor.annotationElementId;\n fakeEditor.deleted = true;\n fakeEditor._uiManager.addToAnnotationStorage(fakeEditor);\n }\n static initialize(l10n, options = null) {\n AnnotationEditor._l10nPromise ||= new Map([\"editor_alt_text_button_label\", \"editor_alt_text_edit_button_label\", \"editor_alt_text_decorative_tooltip\"].map(str => [str, l10n.get(str)]));\n if (options?.strings) {\n for (const str of options.strings) {\n AnnotationEditor._l10nPromise.set(str, l10n.get(str));\n }\n }\n if (AnnotationEditor._borderLineWidth !== -1) {\n return;\n }\n const style = getComputedStyle(document.documentElement);\n AnnotationEditor._borderLineWidth = parseFloat(style.getPropertyValue(\"--outline-width\")) || 0;\n }\n static updateDefaultParams(_type, _value) {}\n static get defaultPropertiesToUpdate() {\n return [];\n }\n static isHandlingMimeForPasting(mime) {\n return false;\n }\n static paste(item, parent) {\n (0, _util.unreachable)(\"Not implemented\");\n }\n get propertiesToUpdate() {\n return [];\n }\n get _isDraggable() {\n return this.#isDraggable;\n }\n set _isDraggable(value) {\n this.#isDraggable = value;\n this.div?.classList.toggle(\"draggable\", value);\n }\n center() {\n const [pageWidth, pageHeight] = this.pageDimensions;\n switch (this.parentRotation) {\n case 90:\n this.x -= this.height * pageHeight / (pageWidth * 2);\n this.y += this.width * pageWidth / (pageHeight * 2);\n break;\n case 180:\n this.x += this.width / 2;\n this.y += this.height / 2;\n break;\n case 270:\n this.x += this.height * pageHeight / (pageWidth * 2);\n this.y -= this.width * pageWidth / (pageHeight * 2);\n break;\n default:\n this.x -= this.width / 2;\n this.y -= this.height / 2;\n break;\n }\n this.fixAndSetPosition();\n }\n addCommands(params) {\n this._uiManager.addCommands(params);\n }\n get currentLayer() {\n return this._uiManager.currentLayer;\n }\n setInBackground() {\n this.div.style.zIndex = 0;\n }\n setInForeground() {\n this.div.style.zIndex = this.#zIndex;\n }\n setParent(parent) {\n if (parent !== null) {\n this.pageIndex = parent.pageIndex;\n this.pageDimensions = parent.pageDimensions;\n }\n this.parent = parent;\n }\n focusin(event) {\n if (!this._focusEventsAllowed) {\n return;\n }\n if (!this.#hasBeenClicked) {\n this.parent.setSelected(this);\n } else {\n this.#hasBeenClicked = false;\n }\n }\n focusout(event) {\n if (!this._focusEventsAllowed) {\n return;\n }\n if (!this.isAttachedToDOM) {\n return;\n }\n const target = event.relatedTarget;\n if (target?.closest(`#${this.id}`)) {\n return;\n }\n event.preventDefault();\n if (!this.parent?.isMultipleSelection) {\n this.commitOrRemove();\n }\n }\n commitOrRemove() {\n if (this.isEmpty()) {\n this.remove();\n } else {\n this.commit();\n }\n }\n commit() {\n this.addToAnnotationStorage();\n }\n addToAnnotationStorage() {\n this._uiManager.addToAnnotationStorage(this);\n }\n setAt(x, y, tx, ty) {\n const [width, height] = this.parentDimensions;\n [tx, ty] = this.screenToPageTranslation(tx, ty);\n this.x = (x + tx) / width;\n this.y = (y + ty) / height;\n this.fixAndSetPosition();\n }\n #translate([width, height], x, y) {\n [x, y] = this.screenToPageTranslation(x, y);\n this.x += x / width;\n this.y += y / height;\n this.fixAndSetPosition();\n }\n translate(x, y) {\n this.#translate(this.parentDimensions, x, y);\n }\n translateInPage(x, y) {\n this.#translate(this.pageDimensions, x, y);\n this.div.scrollIntoView({\n block: \"nearest\"\n });\n }\n drag(tx, ty) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.x += tx / parentWidth;\n this.y += ty / parentHeight;\n if (this.parent && (this.x < 0 || this.x > 1 || this.y < 0 || this.y > 1)) {\n const {\n x,\n y\n } = this.div.getBoundingClientRect();\n if (this.parent.findNewParent(this, x, y)) {\n this.x -= Math.floor(this.x);\n this.y -= Math.floor(this.y);\n }\n }\n let {\n x,\n y\n } = this;\n const [bx, by] = this.#getBaseTranslation();\n x += bx;\n y += by;\n this.div.style.left = `${(100 * x).toFixed(2)}%`;\n this.div.style.top = `${(100 * y).toFixed(2)}%`;\n this.div.scrollIntoView({\n block: \"nearest\"\n });\n }\n #getBaseTranslation() {\n const [parentWidth, parentHeight] = this.parentDimensions;\n const {\n _borderLineWidth\n } = AnnotationEditor;\n const x = _borderLineWidth / parentWidth;\n const y = _borderLineWidth / parentHeight;\n switch (this.rotation) {\n case 90:\n return [-x, y];\n case 180:\n return [x, y];\n case 270:\n return [x, -y];\n default:\n return [-x, -y];\n }\n }\n fixAndSetPosition() {\n const [pageWidth, pageHeight] = this.pageDimensions;\n let {\n x,\n y,\n width,\n height\n } = this;\n width *= pageWidth;\n height *= pageHeight;\n x *= pageWidth;\n y *= pageHeight;\n switch (this.rotation) {\n case 0:\n x = Math.max(0, Math.min(pageWidth - width, x));\n y = Math.max(0, Math.min(pageHeight - height, y));\n break;\n case 90:\n x = Math.max(0, Math.min(pageWidth - height, x));\n y = Math.min(pageHeight, Math.max(width, y));\n break;\n case 180:\n x = Math.min(pageWidth, Math.max(width, x));\n y = Math.min(pageHeight, Math.max(height, y));\n break;\n case 270:\n x = Math.min(pageWidth, Math.max(height, x));\n y = Math.max(0, Math.min(pageHeight - width, y));\n break;\n }\n this.x = x /= pageWidth;\n this.y = y /= pageHeight;\n const [bx, by] = this.#getBaseTranslation();\n x += bx;\n y += by;\n const {\n style\n } = this.div;\n style.left = `${(100 * x).toFixed(2)}%`;\n style.top = `${(100 * y).toFixed(2)}%`;\n this.moveInDOM();\n }\n static #rotatePoint(x, y, angle) {\n switch (angle) {\n case 90:\n return [y, -x];\n case 180:\n return [-x, -y];\n case 270:\n return [-y, x];\n default:\n return [x, y];\n }\n }\n screenToPageTranslation(x, y) {\n return AnnotationEditor.#rotatePoint(x, y, this.parentRotation);\n }\n pageTranslationToScreen(x, y) {\n return AnnotationEditor.#rotatePoint(x, y, 360 - this.parentRotation);\n }\n #getRotationMatrix(rotation) {\n switch (rotation) {\n case 90:\n {\n const [pageWidth, pageHeight] = this.pageDimensions;\n return [0, -pageWidth / pageHeight, pageHeight / pageWidth, 0];\n }\n case 180:\n return [-1, 0, 0, -1];\n case 270:\n {\n const [pageWidth, pageHeight] = this.pageDimensions;\n return [0, pageWidth / pageHeight, -pageHeight / pageWidth, 0];\n }\n default:\n return [1, 0, 0, 1];\n }\n }\n get parentScale() {\n return this._uiManager.viewParameters.realScale;\n }\n get parentRotation() {\n return (this._uiManager.viewParameters.rotation + this.pageRotation) % 360;\n }\n get parentDimensions() {\n const {\n parentScale,\n pageDimensions: [pageWidth, pageHeight]\n } = this;\n const scaledWidth = pageWidth * parentScale;\n const scaledHeight = pageHeight * parentScale;\n return _util.FeatureTest.isCSSRoundSupported ? [Math.round(scaledWidth), Math.round(scaledHeight)] : [scaledWidth, scaledHeight];\n }\n setDims(width, height) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.div.style.width = `${(100 * width / parentWidth).toFixed(2)}%`;\n if (!this.#keepAspectRatio) {\n this.div.style.height = `${(100 * height / parentHeight).toFixed(2)}%`;\n }\n this.#altTextButton?.classList.toggle(\"small\", width < AnnotationEditor.SMALL_EDITOR_SIZE || height < AnnotationEditor.SMALL_EDITOR_SIZE);\n }\n fixDims() {\n const {\n style\n } = this.div;\n const {\n height,\n width\n } = style;\n const widthPercent = width.endsWith(\"%\");\n const heightPercent = !this.#keepAspectRatio && height.endsWith(\"%\");\n if (widthPercent && heightPercent) {\n return;\n }\n const [parentWidth, parentHeight] = this.parentDimensions;\n if (!widthPercent) {\n style.width = `${(100 * parseFloat(width) / parentWidth).toFixed(2)}%`;\n }\n if (!this.#keepAspectRatio && !heightPercent) {\n style.height = `${(100 * parseFloat(height) / parentHeight).toFixed(2)}%`;\n }\n }\n getInitialTranslation() {\n return [0, 0];\n }\n #createResizers() {\n if (this.#resizersDiv) {\n return;\n }\n this.#resizersDiv = document.createElement(\"div\");\n this.#resizersDiv.classList.add(\"resizers\");\n const classes = [\"topLeft\", \"topRight\", \"bottomRight\", \"bottomLeft\"];\n if (!this._willKeepAspectRatio) {\n classes.push(\"topMiddle\", \"middleRight\", \"bottomMiddle\", \"middleLeft\");\n }\n for (const name of classes) {\n const div = document.createElement(\"div\");\n this.#resizersDiv.append(div);\n div.classList.add(\"resizer\", name);\n div.addEventListener(\"pointerdown\", this.#resizerPointerdown.bind(this, name));\n div.addEventListener(\"contextmenu\", _display_utils.noContextMenu);\n }\n this.div.prepend(this.#resizersDiv);\n }\n #resizerPointerdown(name, event) {\n event.preventDefault();\n const {\n isMac\n } = _util.FeatureTest.platform;\n if (event.button !== 0 || event.ctrlKey && isMac) {\n return;\n }\n const boundResizerPointermove = this.#resizerPointermove.bind(this, name);\n const savedDraggable = this._isDraggable;\n this._isDraggable = false;\n const pointerMoveOptions = {\n passive: true,\n capture: true\n };\n window.addEventListener(\"pointermove\", boundResizerPointermove, pointerMoveOptions);\n const savedX = this.x;\n const savedY = this.y;\n const savedWidth = this.width;\n const savedHeight = this.height;\n const savedParentCursor = this.parent.div.style.cursor;\n const savedCursor = this.div.style.cursor;\n this.div.style.cursor = this.parent.div.style.cursor = window.getComputedStyle(event.target).cursor;\n const pointerUpCallback = () => {\n this._isDraggable = savedDraggable;\n window.removeEventListener(\"pointerup\", pointerUpCallback);\n window.removeEventListener(\"blur\", pointerUpCallback);\n window.removeEventListener(\"pointermove\", boundResizerPointermove, pointerMoveOptions);\n this.parent.div.style.cursor = savedParentCursor;\n this.div.style.cursor = savedCursor;\n const newX = this.x;\n const newY = this.y;\n const newWidth = this.width;\n const newHeight = this.height;\n if (newX === savedX && newY === savedY && newWidth === savedWidth && newHeight === savedHeight) {\n return;\n }\n this.addCommands({\n cmd: () => {\n this.width = newWidth;\n this.height = newHeight;\n this.x = newX;\n this.y = newY;\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setDims(parentWidth * newWidth, parentHeight * newHeight);\n this.fixAndSetPosition();\n },\n undo: () => {\n this.width = savedWidth;\n this.height = savedHeight;\n this.x = savedX;\n this.y = savedY;\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setDims(parentWidth * savedWidth, parentHeight * savedHeight);\n this.fixAndSetPosition();\n },\n mustExec: true\n });\n };\n window.addEventListener(\"pointerup\", pointerUpCallback);\n window.addEventListener(\"blur\", pointerUpCallback);\n }\n #resizerPointermove(name, event) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n const savedX = this.x;\n const savedY = this.y;\n const savedWidth = this.width;\n const savedHeight = this.height;\n const minWidth = AnnotationEditor.MIN_SIZE / parentWidth;\n const minHeight = AnnotationEditor.MIN_SIZE / parentHeight;\n const round = x => Math.round(x * 10000) / 10000;\n const rotationMatrix = this.#getRotationMatrix(this.rotation);\n const transf = (x, y) => [rotationMatrix[0] * x + rotationMatrix[2] * y, rotationMatrix[1] * x + rotationMatrix[3] * y];\n const invRotationMatrix = this.#getRotationMatrix(360 - this.rotation);\n const invTransf = (x, y) => [invRotationMatrix[0] * x + invRotationMatrix[2] * y, invRotationMatrix[1] * x + invRotationMatrix[3] * y];\n let getPoint;\n let getOpposite;\n let isDiagonal = false;\n let isHorizontal = false;\n switch (name) {\n case \"topLeft\":\n isDiagonal = true;\n getPoint = (w, h) => [0, 0];\n getOpposite = (w, h) => [w, h];\n break;\n case \"topMiddle\":\n getPoint = (w, h) => [w / 2, 0];\n getOpposite = (w, h) => [w / 2, h];\n break;\n case \"topRight\":\n isDiagonal = true;\n getPoint = (w, h) => [w, 0];\n getOpposite = (w, h) => [0, h];\n break;\n case \"middleRight\":\n isHorizontal = true;\n getPoint = (w, h) => [w, h / 2];\n getOpposite = (w, h) => [0, h / 2];\n break;\n case \"bottomRight\":\n isDiagonal = true;\n getPoint = (w, h) => [w, h];\n getOpposite = (w, h) => [0, 0];\n break;\n case \"bottomMiddle\":\n getPoint = (w, h) => [w / 2, h];\n getOpposite = (w, h) => [w / 2, 0];\n break;\n case \"bottomLeft\":\n isDiagonal = true;\n getPoint = (w, h) => [0, h];\n getOpposite = (w, h) => [w, 0];\n break;\n case \"middleLeft\":\n isHorizontal = true;\n getPoint = (w, h) => [0, h / 2];\n getOpposite = (w, h) => [w, h / 2];\n break;\n }\n const point = getPoint(savedWidth, savedHeight);\n const oppositePoint = getOpposite(savedWidth, savedHeight);\n let transfOppositePoint = transf(...oppositePoint);\n const oppositeX = round(savedX + transfOppositePoint[0]);\n const oppositeY = round(savedY + transfOppositePoint[1]);\n let ratioX = 1;\n let ratioY = 1;\n let [deltaX, deltaY] = this.screenToPageTranslation(event.movementX, event.movementY);\n [deltaX, deltaY] = invTransf(deltaX / parentWidth, deltaY / parentHeight);\n if (isDiagonal) {\n const oldDiag = Math.hypot(savedWidth, savedHeight);\n ratioX = ratioY = Math.max(Math.min(Math.hypot(oppositePoint[0] - point[0] - deltaX, oppositePoint[1] - point[1] - deltaY) / oldDiag, 1 / savedWidth, 1 / savedHeight), minWidth / savedWidth, minHeight / savedHeight);\n } else if (isHorizontal) {\n ratioX = Math.max(minWidth, Math.min(1, Math.abs(oppositePoint[0] - point[0] - deltaX))) / savedWidth;\n } else {\n ratioY = Math.max(minHeight, Math.min(1, Math.abs(oppositePoint[1] - point[1] - deltaY))) / savedHeight;\n }\n const newWidth = round(savedWidth * ratioX);\n const newHeight = round(savedHeight * ratioY);\n transfOppositePoint = transf(...getOpposite(newWidth, newHeight));\n const newX = oppositeX - transfOppositePoint[0];\n const newY = oppositeY - transfOppositePoint[1];\n this.width = newWidth;\n this.height = newHeight;\n this.x = newX;\n this.y = newY;\n this.setDims(parentWidth * newWidth, parentHeight * newHeight);\n this.fixAndSetPosition();\n }\n async addAltTextButton() {\n if (this.#altTextButton) {\n return;\n }\n const altText = this.#altTextButton = document.createElement(\"button\");\n altText.className = \"altText\";\n const msg = await AnnotationEditor._l10nPromise.get(\"editor_alt_text_button_label\");\n altText.textContent = msg;\n altText.setAttribute(\"aria-label\", msg);\n altText.tabIndex = \"0\";\n altText.addEventListener(\"contextmenu\", _display_utils.noContextMenu);\n altText.addEventListener(\"pointerdown\", event => event.stopPropagation());\n altText.addEventListener(\"click\", event => {\n event.preventDefault();\n this._uiManager.editAltText(this);\n }, {\n capture: true\n });\n altText.addEventListener(\"keydown\", event => {\n if (event.target === altText && event.key === \"Enter\") {\n event.preventDefault();\n this._uiManager.editAltText(this);\n }\n });\n this.#setAltTextButtonState();\n this.div.append(altText);\n if (!AnnotationEditor.SMALL_EDITOR_SIZE) {\n const PERCENT = 40;\n AnnotationEditor.SMALL_EDITOR_SIZE = Math.min(128, Math.round(altText.getBoundingClientRect().width * (1 + PERCENT / 100)));\n }\n }\n async #setAltTextButtonState() {\n const button = this.#altTextButton;\n if (!button) {\n return;\n }\n if (!this.#altText && !this.#altTextDecorative) {\n button.classList.remove(\"done\");\n this.#altTextTooltip?.remove();\n return;\n }\n AnnotationEditor._l10nPromise.get(\"editor_alt_text_edit_button_label\").then(msg => {\n button.setAttribute(\"aria-label\", msg);\n });\n let tooltip = this.#altTextTooltip;\n if (!tooltip) {\n this.#altTextTooltip = tooltip = document.createElement(\"span\");\n tooltip.className = \"tooltip\";\n tooltip.setAttribute(\"role\", \"tooltip\");\n const id = tooltip.id = `alt-text-tooltip-${this.id}`;\n button.setAttribute(\"aria-describedby\", id);\n const DELAY_TO_SHOW_TOOLTIP = 100;\n button.addEventListener(\"mouseenter\", () => {\n this.#altTextTooltipTimeout = setTimeout(() => {\n this.#altTextTooltipTimeout = null;\n this.#altTextTooltip.classList.add(\"show\");\n this._uiManager._eventBus.dispatch(\"reporttelemetry\", {\n source: this,\n details: {\n type: \"editing\",\n subtype: this.editorType,\n data: {\n action: \"alt_text_tooltip\"\n }\n }\n });\n }, DELAY_TO_SHOW_TOOLTIP);\n });\n button.addEventListener(\"mouseleave\", () => {\n clearTimeout(this.#altTextTooltipTimeout);\n this.#altTextTooltipTimeout = null;\n this.#altTextTooltip?.classList.remove(\"show\");\n });\n }\n button.classList.add(\"done\");\n tooltip.innerText = this.#altTextDecorative ? await AnnotationEditor._l10nPromise.get(\"editor_alt_text_decorative_tooltip\") : this.#altText;\n if (!tooltip.parentNode) {\n button.append(tooltip);\n }\n }\n getClientDimensions() {\n return this.div.getBoundingClientRect();\n }\n get altTextData() {\n return {\n altText: this.#altText,\n decorative: this.#altTextDecorative\n };\n }\n set altTextData({\n altText,\n decorative\n }) {\n if (this.#altText === altText && this.#altTextDecorative === decorative) {\n return;\n }\n this.#altText = altText;\n this.#altTextDecorative = decorative;\n this.#setAltTextButtonState();\n }\n render() {\n this.div = document.createElement(\"div\");\n this.div.setAttribute(\"data-editor-rotation\", (360 - this.rotation) % 360);\n this.div.className = this.name;\n this.div.setAttribute(\"id\", this.id);\n this.div.setAttribute(\"tabIndex\", 0);\n this.setInForeground();\n this.div.addEventListener(\"focusin\", this.#boundFocusin);\n this.div.addEventListener(\"focusout\", this.#boundFocusout);\n const [parentWidth, parentHeight] = this.parentDimensions;\n if (this.parentRotation % 180 !== 0) {\n this.div.style.maxWidth = `${(100 * parentHeight / parentWidth).toFixed(2)}%`;\n this.div.style.maxHeight = `${(100 * parentWidth / parentHeight).toFixed(2)}%`;\n }\n const [tx, ty] = this.getInitialTranslation();\n this.translate(tx, ty);\n (0, _tools.bindEvents)(this, this.div, [\"pointerdown\"]);\n return this.div;\n }\n pointerdown(event) {\n const {\n isMac\n } = _util.FeatureTest.platform;\n if (event.button !== 0 || event.ctrlKey && isMac) {\n event.preventDefault();\n return;\n }\n this.#hasBeenClicked = true;\n this.#setUpDragSession(event);\n }\n #setUpDragSession(event) {\n if (!this._isDraggable) {\n return;\n }\n const isSelected = this._uiManager.isSelected(this);\n this._uiManager.setUpDragSession();\n let pointerMoveOptions, pointerMoveCallback;\n if (isSelected) {\n pointerMoveOptions = {\n passive: true,\n capture: true\n };\n pointerMoveCallback = e => {\n const [tx, ty] = this.screenToPageTranslation(e.movementX, e.movementY);\n this._uiManager.dragSelectedEditors(tx, ty);\n };\n window.addEventListener(\"pointermove\", pointerMoveCallback, pointerMoveOptions);\n }\n const pointerUpCallback = () => {\n window.removeEventListener(\"pointerup\", pointerUpCallback);\n window.removeEventListener(\"blur\", pointerUpCallback);\n if (isSelected) {\n window.removeEventListener(\"pointermove\", pointerMoveCallback, pointerMoveOptions);\n }\n this.#hasBeenClicked = false;\n if (!this._uiManager.endDragSession()) {\n const {\n isMac\n } = _util.FeatureTest.platform;\n if (event.ctrlKey && !isMac || event.shiftKey || event.metaKey && isMac) {\n this.parent.toggleSelected(this);\n } else {\n this.parent.setSelected(this);\n }\n }\n };\n window.addEventListener(\"pointerup\", pointerUpCallback);\n window.addEventListener(\"blur\", pointerUpCallback);\n }\n moveInDOM() {\n this.parent?.moveEditorInDOM(this);\n }\n _setParentAndPosition(parent, x, y) {\n parent.changeParent(this);\n this.x = x;\n this.y = y;\n this.fixAndSetPosition();\n }\n getRect(tx, ty) {\n const scale = this.parentScale;\n const [pageWidth, pageHeight] = this.pageDimensions;\n const [pageX, pageY] = this.pageTranslation;\n const shiftX = tx / scale;\n const shiftY = ty / scale;\n const x = this.x * pageWidth;\n const y = this.y * pageHeight;\n const width = this.width * pageWidth;\n const height = this.height * pageHeight;\n switch (this.rotation) {\n case 0:\n return [x + shiftX + pageX, pageHeight - y - shiftY - height + pageY, x + shiftX + width + pageX, pageHeight - y - shiftY + pageY];\n case 90:\n return [x + shiftY + pageX, pageHeight - y + shiftX + pageY, x + shiftY + height + pageX, pageHeight - y + shiftX + width + pageY];\n case 180:\n return [x - shiftX - width + pageX, pageHeight - y + shiftY + pageY, x - shiftX + pageX, pageHeight - y + shiftY + height + pageY];\n case 270:\n return [x - shiftY - height + pageX, pageHeight - y - shiftX - width + pageY, x - shiftY + pageX, pageHeight - y - shiftX + pageY];\n default:\n throw new Error(\"Invalid rotation\");\n }\n }\n getRectInCurrentCoords(rect, pageHeight) {\n const [x1, y1, x2, y2] = rect;\n const width = x2 - x1;\n const height = y2 - y1;\n switch (this.rotation) {\n case 0:\n return [x1, pageHeight - y2, width, height];\n case 90:\n return [x1, pageHeight - y1, height, width];\n case 180:\n return [x2, pageHeight - y1, width, height];\n case 270:\n return [x2, pageHeight - y2, height, width];\n default:\n throw new Error(\"Invalid rotation\");\n }\n }\n onceAdded() {}\n isEmpty() {\n return false;\n }\n enableEditMode() {\n this.#isInEditMode = true;\n }\n disableEditMode() {\n this.#isInEditMode = false;\n }\n isInEditMode() {\n return this.#isInEditMode;\n }\n shouldGetKeyboardEvents() {\n return false;\n }\n needsToBeRebuilt() {\n return this.div && !this.isAttachedToDOM;\n }\n rebuild() {\n this.div?.addEventListener(\"focusin\", this.#boundFocusin);\n this.div?.addEventListener(\"focusout\", this.#boundFocusout);\n }\n serialize(isForCopying = false, context = null) {\n (0, _util.unreachable)(\"An editor must be serializable\");\n }\n static deserialize(data, parent, uiManager) {\n const editor = new this.prototype.constructor({\n parent,\n id: parent.getNextId(),\n uiManager\n });\n editor.rotation = data.rotation;\n const [pageWidth, pageHeight] = editor.pageDimensions;\n const [x, y, width, height] = editor.getRectInCurrentCoords(data.rect, pageHeight);\n editor.x = x / pageWidth;\n editor.y = y / pageHeight;\n editor.width = width / pageWidth;\n editor.height = height / pageHeight;\n return editor;\n }\n remove() {\n this.div.removeEventListener(\"focusin\", this.#boundFocusin);\n this.div.removeEventListener(\"focusout\", this.#boundFocusout);\n if (!this.isEmpty()) {\n this.commit();\n }\n if (this.parent) {\n this.parent.remove(this);\n } else {\n this._uiManager.removeEditor(this);\n }\n this.#altTextButton?.remove();\n this.#altTextButton = null;\n this.#altTextTooltip = null;\n }\n get isResizable() {\n return false;\n }\n makeResizable() {\n if (this.isResizable) {\n this.#createResizers();\n this.#resizersDiv.classList.remove(\"hidden\");\n }\n }\n select() {\n this.makeResizable();\n this.div?.classList.add(\"selectedEditor\");\n }\n unselect() {\n this.#resizersDiv?.classList.add(\"hidden\");\n this.div?.classList.remove(\"selectedEditor\");\n if (this.div?.contains(document.activeElement)) {\n this._uiManager.currentLayer.div.focus();\n }\n }\n updateParams(type, value) {}\n disableEditing() {\n if (this.#altTextButton) {\n this.#altTextButton.hidden = true;\n }\n }\n enableEditing() {\n if (this.#altTextButton) {\n this.#altTextButton.hidden = false;\n }\n }\n enterInEditMode() {}\n get contentDiv() {\n return this.div;\n }\n get isEditing() {\n return this.#isEditing;\n }\n set isEditing(value) {\n this.#isEditing = value;\n if (!this.parent) {\n return;\n }\n if (value) {\n this.parent.setSelected(this);\n this.parent.setActiveEditor(this);\n } else {\n this.parent.setActiveEditor(null);\n }\n }\n setAspectRatio(width, height) {\n this.#keepAspectRatio = true;\n const aspectRatio = width / height;\n const {\n style\n } = this.div;\n style.aspectRatio = aspectRatio;\n style.height = \"auto\";\n }\n static get MIN_SIZE() {\n return 16;\n }\n}\nexports.AnnotationEditor = AnnotationEditor;\nclass FakeEditor extends AnnotationEditor {\n constructor(params) {\n super(params);\n this.annotationElementId = params.annotationElementId;\n this.deleted = true;\n }\n serialize() {\n return {\n id: this.annotationElementId,\n deleted: true,\n pageIndex: this.pageIndex\n };\n }\n}\n\n/***/ }),\n/* 5 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.KeyboardManager = exports.CommandManager = exports.ColorManager = exports.AnnotationEditorUIManager = void 0;\nexports.bindEvents = bindEvents;\nexports.opacityToHex = opacityToHex;\nvar _util = __w_pdfjs_require__(1);\nvar _display_utils = __w_pdfjs_require__(6);\nfunction bindEvents(obj, element, names) {\n for (const name of names) {\n element.addEventListener(name, obj[name].bind(obj));\n }\n}\nfunction opacityToHex(opacity) {\n return Math.round(Math.min(255, Math.max(1, 255 * opacity))).toString(16).padStart(2, \"0\");\n}\nclass IdManager {\n #id = 0;\n getId() {\n return `${_util.AnnotationEditorPrefix}${this.#id++}`;\n }\n}\nclass ImageManager {\n #baseId = (0, _util.getUuid)();\n #id = 0;\n #cache = null;\n static get _isSVGFittingCanvas() {\n const svg = `data:image/svg+xml;charset=UTF-8,`;\n const canvas = new OffscreenCanvas(1, 3);\n const ctx = canvas.getContext(\"2d\");\n const image = new Image();\n image.src = svg;\n const promise = image.decode().then(() => {\n ctx.drawImage(image, 0, 0, 1, 1, 0, 0, 1, 3);\n return new Uint32Array(ctx.getImageData(0, 0, 1, 1).data.buffer)[0] === 0;\n });\n return (0, _util.shadow)(this, \"_isSVGFittingCanvas\", promise);\n }\n async #get(key, rawData) {\n this.#cache ||= new Map();\n let data = this.#cache.get(key);\n if (data === null) {\n return null;\n }\n if (data?.bitmap) {\n data.refCounter += 1;\n return data;\n }\n try {\n data ||= {\n bitmap: null,\n id: `image_${this.#baseId}_${this.#id++}`,\n refCounter: 0,\n isSvg: false\n };\n let image;\n if (typeof rawData === \"string\") {\n data.url = rawData;\n const response = await fetch(rawData);\n if (!response.ok) {\n throw new Error(response.statusText);\n }\n image = await response.blob();\n } else {\n image = data.file = rawData;\n }\n if (image.type === \"image/svg+xml\") {\n const mustRemoveAspectRatioPromise = ImageManager._isSVGFittingCanvas;\n const fileReader = new FileReader();\n const imageElement = new Image();\n const imagePromise = new Promise((resolve, reject) => {\n imageElement.onload = () => {\n data.bitmap = imageElement;\n data.isSvg = true;\n resolve();\n };\n fileReader.onload = async () => {\n const url = data.svgUrl = fileReader.result;\n imageElement.src = (await mustRemoveAspectRatioPromise) ? `${url}#svgView(preserveAspectRatio(none))` : url;\n };\n imageElement.onerror = fileReader.onerror = reject;\n });\n fileReader.readAsDataURL(image);\n await imagePromise;\n } else {\n data.bitmap = await createImageBitmap(image);\n }\n data.refCounter = 1;\n } catch (e) {\n console.error(e);\n data = null;\n }\n this.#cache.set(key, data);\n if (data) {\n this.#cache.set(data.id, data);\n }\n return data;\n }\n async getFromFile(file) {\n const {\n lastModified,\n name,\n size,\n type\n } = file;\n return this.#get(`${lastModified}_${name}_${size}_${type}`, file);\n }\n async getFromUrl(url) {\n return this.#get(url, url);\n }\n async getFromId(id) {\n this.#cache ||= new Map();\n const data = this.#cache.get(id);\n if (!data) {\n return null;\n }\n if (data.bitmap) {\n data.refCounter += 1;\n return data;\n }\n if (data.file) {\n return this.getFromFile(data.file);\n }\n return this.getFromUrl(data.url);\n }\n getSvgUrl(id) {\n const data = this.#cache.get(id);\n if (!data?.isSvg) {\n return null;\n }\n return data.svgUrl;\n }\n deleteId(id) {\n this.#cache ||= new Map();\n const data = this.#cache.get(id);\n if (!data) {\n return;\n }\n data.refCounter -= 1;\n if (data.refCounter !== 0) {\n return;\n }\n data.bitmap = null;\n }\n isValidId(id) {\n return id.startsWith(`image_${this.#baseId}_`);\n }\n}\nclass CommandManager {\n #commands = [];\n #locked = false;\n #maxSize;\n #position = -1;\n constructor(maxSize = 128) {\n this.#maxSize = maxSize;\n }\n add({\n cmd,\n undo,\n mustExec,\n type = NaN,\n overwriteIfSameType = false,\n keepUndo = false\n }) {\n if (mustExec) {\n cmd();\n }\n if (this.#locked) {\n return;\n }\n const save = {\n cmd,\n undo,\n type\n };\n if (this.#position === -1) {\n if (this.#commands.length > 0) {\n this.#commands.length = 0;\n }\n this.#position = 0;\n this.#commands.push(save);\n return;\n }\n if (overwriteIfSameType && this.#commands[this.#position].type === type) {\n if (keepUndo) {\n save.undo = this.#commands[this.#position].undo;\n }\n this.#commands[this.#position] = save;\n return;\n }\n const next = this.#position + 1;\n if (next === this.#maxSize) {\n this.#commands.splice(0, 1);\n } else {\n this.#position = next;\n if (next < this.#commands.length) {\n this.#commands.splice(next);\n }\n }\n this.#commands.push(save);\n }\n undo() {\n if (this.#position === -1) {\n return;\n }\n this.#locked = true;\n this.#commands[this.#position].undo();\n this.#locked = false;\n this.#position -= 1;\n }\n redo() {\n if (this.#position < this.#commands.length - 1) {\n this.#position += 1;\n this.#locked = true;\n this.#commands[this.#position].cmd();\n this.#locked = false;\n }\n }\n hasSomethingToUndo() {\n return this.#position !== -1;\n }\n hasSomethingToRedo() {\n return this.#position < this.#commands.length - 1;\n }\n destroy() {\n this.#commands = null;\n }\n}\nexports.CommandManager = CommandManager;\nclass KeyboardManager {\n constructor(callbacks) {\n this.buffer = [];\n this.callbacks = new Map();\n this.allKeys = new Set();\n const {\n isMac\n } = _util.FeatureTest.platform;\n for (const [keys, callback, options = {}] of callbacks) {\n for (const key of keys) {\n const isMacKey = key.startsWith(\"mac+\");\n if (isMac && isMacKey) {\n this.callbacks.set(key.slice(4), {\n callback,\n options\n });\n this.allKeys.add(key.split(\"+\").at(-1));\n } else if (!isMac && !isMacKey) {\n this.callbacks.set(key, {\n callback,\n options\n });\n this.allKeys.add(key.split(\"+\").at(-1));\n }\n }\n }\n }\n #serialize(event) {\n if (event.altKey) {\n this.buffer.push(\"alt\");\n }\n if (event.ctrlKey) {\n this.buffer.push(\"ctrl\");\n }\n if (event.metaKey) {\n this.buffer.push(\"meta\");\n }\n if (event.shiftKey) {\n this.buffer.push(\"shift\");\n }\n this.buffer.push(event.key);\n const str = this.buffer.join(\"+\");\n this.buffer.length = 0;\n return str;\n }\n exec(self, event) {\n if (!this.allKeys.has(event.key)) {\n return;\n }\n const info = this.callbacks.get(this.#serialize(event));\n if (!info) {\n return;\n }\n const {\n callback,\n options: {\n bubbles = false,\n args = [],\n checker = null\n }\n } = info;\n if (checker && !checker(self, event)) {\n return;\n }\n callback.bind(self, ...args)();\n if (!bubbles) {\n event.stopPropagation();\n event.preventDefault();\n }\n }\n}\nexports.KeyboardManager = KeyboardManager;\nclass ColorManager {\n static _colorsMapping = new Map([[\"CanvasText\", [0, 0, 0]], [\"Canvas\", [255, 255, 255]]]);\n get _colors() {\n const colors = new Map([[\"CanvasText\", null], [\"Canvas\", null]]);\n (0, _display_utils.getColorValues)(colors);\n return (0, _util.shadow)(this, \"_colors\", colors);\n }\n convert(color) {\n const rgb = (0, _display_utils.getRGB)(color);\n if (!window.matchMedia(\"(forced-colors: active)\").matches) {\n return rgb;\n }\n for (const [name, RGB] of this._colors) {\n if (RGB.every((x, i) => x === rgb[i])) {\n return ColorManager._colorsMapping.get(name);\n }\n }\n return rgb;\n }\n getHexCode(name) {\n const rgb = this._colors.get(name);\n if (!rgb) {\n return name;\n }\n return _util.Util.makeHexColor(...rgb);\n }\n}\nexports.ColorManager = ColorManager;\nclass AnnotationEditorUIManager {\n #activeEditor = null;\n #allEditors = new Map();\n #allLayers = new Map();\n #altTextManager = null;\n #annotationStorage = null;\n #commandManager = new CommandManager();\n #currentPageIndex = 0;\n #deletedAnnotationsElementIds = new Set();\n #draggingEditors = null;\n #editorTypes = null;\n #editorsToRescale = new Set();\n #filterFactory = null;\n #idManager = new IdManager();\n #isEnabled = false;\n #isWaiting = false;\n #lastActiveElement = null;\n #mode = _util.AnnotationEditorType.NONE;\n #selectedEditors = new Set();\n #pageColors = null;\n #boundBlur = this.blur.bind(this);\n #boundFocus = this.focus.bind(this);\n #boundCopy = this.copy.bind(this);\n #boundCut = this.cut.bind(this);\n #boundPaste = this.paste.bind(this);\n #boundKeydown = this.keydown.bind(this);\n #boundOnEditingAction = this.onEditingAction.bind(this);\n #boundOnPageChanging = this.onPageChanging.bind(this);\n #boundOnScaleChanging = this.onScaleChanging.bind(this);\n #boundOnRotationChanging = this.onRotationChanging.bind(this);\n #previousStates = {\n isEditing: false,\n isEmpty: true,\n hasSomethingToUndo: false,\n hasSomethingToRedo: false,\n hasSelectedEditor: false\n };\n #translation = [0, 0];\n #translationTimeoutId = null;\n #container = null;\n #viewer = null;\n static TRANSLATE_SMALL = 1;\n static TRANSLATE_BIG = 10;\n static get _keyboardManager() {\n const proto = AnnotationEditorUIManager.prototype;\n const arrowChecker = self => {\n const {\n activeElement\n } = document;\n return activeElement && self.#container.contains(activeElement) && self.hasSomethingToControl();\n };\n const small = this.TRANSLATE_SMALL;\n const big = this.TRANSLATE_BIG;\n return (0, _util.shadow)(this, \"_keyboardManager\", new KeyboardManager([[[\"ctrl+a\", \"mac+meta+a\"], proto.selectAll], [[\"ctrl+z\", \"mac+meta+z\"], proto.undo], [[\"ctrl+y\", \"ctrl+shift+z\", \"mac+meta+shift+z\", \"ctrl+shift+Z\", \"mac+meta+shift+Z\"], proto.redo], [[\"Backspace\", \"alt+Backspace\", \"ctrl+Backspace\", \"shift+Backspace\", \"mac+Backspace\", \"mac+alt+Backspace\", \"mac+ctrl+Backspace\", \"Delete\", \"ctrl+Delete\", \"shift+Delete\", \"mac+Delete\"], proto.delete], [[\"Escape\", \"mac+Escape\"], proto.unselectAll], [[\"ArrowLeft\", \"mac+ArrowLeft\"], proto.translateSelectedEditors, {\n args: [-small, 0],\n checker: arrowChecker\n }], [[\"ctrl+ArrowLeft\", \"mac+shift+ArrowLeft\"], proto.translateSelectedEditors, {\n args: [-big, 0],\n checker: arrowChecker\n }], [[\"ArrowRight\", \"mac+ArrowRight\"], proto.translateSelectedEditors, {\n args: [small, 0],\n checker: arrowChecker\n }], [[\"ctrl+ArrowRight\", \"mac+shift+ArrowRight\"], proto.translateSelectedEditors, {\n args: [big, 0],\n checker: arrowChecker\n }], [[\"ArrowUp\", \"mac+ArrowUp\"], proto.translateSelectedEditors, {\n args: [0, -small],\n checker: arrowChecker\n }], [[\"ctrl+ArrowUp\", \"mac+shift+ArrowUp\"], proto.translateSelectedEditors, {\n args: [0, -big],\n checker: arrowChecker\n }], [[\"ArrowDown\", \"mac+ArrowDown\"], proto.translateSelectedEditors, {\n args: [0, small],\n checker: arrowChecker\n }], [[\"ctrl+ArrowDown\", \"mac+shift+ArrowDown\"], proto.translateSelectedEditors, {\n args: [0, big],\n checker: arrowChecker\n }]]));\n }\n constructor(container, viewer, altTextManager, eventBus, pdfDocument, pageColors) {\n this.#container = container;\n this.#viewer = viewer;\n this.#altTextManager = altTextManager;\n this._eventBus = eventBus;\n this._eventBus._on(\"editingaction\", this.#boundOnEditingAction);\n this._eventBus._on(\"pagechanging\", this.#boundOnPageChanging);\n this._eventBus._on(\"scalechanging\", this.#boundOnScaleChanging);\n this._eventBus._on(\"rotationchanging\", this.#boundOnRotationChanging);\n this.#annotationStorage = pdfDocument.annotationStorage;\n this.#filterFactory = pdfDocument.filterFactory;\n this.#pageColors = pageColors;\n this.viewParameters = {\n realScale: _display_utils.PixelsPerInch.PDF_TO_CSS_UNITS,\n rotation: 0\n };\n }\n destroy() {\n this.#removeKeyboardManager();\n this.#removeFocusManager();\n this._eventBus._off(\"editingaction\", this.#boundOnEditingAction);\n this._eventBus._off(\"pagechanging\", this.#boundOnPageChanging);\n this._eventBus._off(\"scalechanging\", this.#boundOnScaleChanging);\n this._eventBus._off(\"rotationchanging\", this.#boundOnRotationChanging);\n for (const layer of this.#allLayers.values()) {\n layer.destroy();\n }\n this.#allLayers.clear();\n this.#allEditors.clear();\n this.#editorsToRescale.clear();\n this.#activeEditor = null;\n this.#selectedEditors.clear();\n this.#commandManager.destroy();\n this.#altTextManager.destroy();\n }\n get hcmFilter() {\n return (0, _util.shadow)(this, \"hcmFilter\", this.#pageColors ? this.#filterFactory.addHCMFilter(this.#pageColors.foreground, this.#pageColors.background) : \"none\");\n }\n get direction() {\n return (0, _util.shadow)(this, \"direction\", getComputedStyle(this.#container).direction);\n }\n editAltText(editor) {\n this.#altTextManager?.editAltText(this, editor);\n }\n onPageChanging({\n pageNumber\n }) {\n this.#currentPageIndex = pageNumber - 1;\n }\n focusMainContainer() {\n this.#container.focus();\n }\n findParent(x, y) {\n for (const layer of this.#allLayers.values()) {\n const {\n x: layerX,\n y: layerY,\n width,\n height\n } = layer.div.getBoundingClientRect();\n if (x >= layerX && x <= layerX + width && y >= layerY && y <= layerY + height) {\n return layer;\n }\n }\n return null;\n }\n disableUserSelect(value = false) {\n this.#viewer.classList.toggle(\"noUserSelect\", value);\n }\n addShouldRescale(editor) {\n this.#editorsToRescale.add(editor);\n }\n removeShouldRescale(editor) {\n this.#editorsToRescale.delete(editor);\n }\n onScaleChanging({\n scale\n }) {\n this.commitOrRemove();\n this.viewParameters.realScale = scale * _display_utils.PixelsPerInch.PDF_TO_CSS_UNITS;\n for (const editor of this.#editorsToRescale) {\n editor.onScaleChanging();\n }\n }\n onRotationChanging({\n pagesRotation\n }) {\n this.commitOrRemove();\n this.viewParameters.rotation = pagesRotation;\n }\n addToAnnotationStorage(editor) {\n if (!editor.isEmpty() && this.#annotationStorage && !this.#annotationStorage.has(editor.id)) {\n this.#annotationStorage.setValue(editor.id, editor);\n }\n }\n #addFocusManager() {\n window.addEventListener(\"focus\", this.#boundFocus);\n window.addEventListener(\"blur\", this.#boundBlur);\n }\n #removeFocusManager() {\n window.removeEventListener(\"focus\", this.#boundFocus);\n window.removeEventListener(\"blur\", this.#boundBlur);\n }\n blur() {\n if (!this.hasSelection) {\n return;\n }\n const {\n activeElement\n } = document;\n for (const editor of this.#selectedEditors) {\n if (editor.div.contains(activeElement)) {\n this.#lastActiveElement = [editor, activeElement];\n editor._focusEventsAllowed = false;\n break;\n }\n }\n }\n focus() {\n if (!this.#lastActiveElement) {\n return;\n }\n const [lastEditor, lastActiveElement] = this.#lastActiveElement;\n this.#lastActiveElement = null;\n lastActiveElement.addEventListener(\"focusin\", () => {\n lastEditor._focusEventsAllowed = true;\n }, {\n once: true\n });\n lastActiveElement.focus();\n }\n #addKeyboardManager() {\n window.addEventListener(\"keydown\", this.#boundKeydown, {\n capture: true\n });\n }\n #removeKeyboardManager() {\n window.removeEventListener(\"keydown\", this.#boundKeydown, {\n capture: true\n });\n }\n #addCopyPasteListeners() {\n document.addEventListener(\"copy\", this.#boundCopy);\n document.addEventListener(\"cut\", this.#boundCut);\n document.addEventListener(\"paste\", this.#boundPaste);\n }\n #removeCopyPasteListeners() {\n document.removeEventListener(\"copy\", this.#boundCopy);\n document.removeEventListener(\"cut\", this.#boundCut);\n document.removeEventListener(\"paste\", this.#boundPaste);\n }\n addEditListeners() {\n this.#addKeyboardManager();\n this.#addCopyPasteListeners();\n }\n removeEditListeners() {\n this.#removeKeyboardManager();\n this.#removeCopyPasteListeners();\n }\n copy(event) {\n event.preventDefault();\n this.#activeEditor?.commitOrRemove();\n if (!this.hasSelection) {\n return;\n }\n const editors = [];\n for (const editor of this.#selectedEditors) {\n const serialized = editor.serialize(true);\n if (serialized) {\n editors.push(serialized);\n }\n }\n if (editors.length === 0) {\n return;\n }\n event.clipboardData.setData(\"application/pdfjs\", JSON.stringify(editors));\n }\n cut(event) {\n this.copy(event);\n this.delete();\n }\n paste(event) {\n event.preventDefault();\n const {\n clipboardData\n } = event;\n for (const item of clipboardData.items) {\n for (const editorType of this.#editorTypes) {\n if (editorType.isHandlingMimeForPasting(item.type)) {\n editorType.paste(item, this.currentLayer);\n return;\n }\n }\n }\n let data = clipboardData.getData(\"application/pdfjs\");\n if (!data) {\n return;\n }\n try {\n data = JSON.parse(data);\n } catch (ex) {\n (0, _util.warn)(`paste: \"${ex.message}\".`);\n return;\n }\n if (!Array.isArray(data)) {\n return;\n }\n this.unselectAll();\n const layer = this.currentLayer;\n try {\n const newEditors = [];\n for (const editor of data) {\n const deserializedEditor = layer.deserialize(editor);\n if (!deserializedEditor) {\n return;\n }\n newEditors.push(deserializedEditor);\n }\n const cmd = () => {\n for (const editor of newEditors) {\n this.#addEditorToLayer(editor);\n }\n this.#selectEditors(newEditors);\n };\n const undo = () => {\n for (const editor of newEditors) {\n editor.remove();\n }\n };\n this.addCommands({\n cmd,\n undo,\n mustExec: true\n });\n } catch (ex) {\n (0, _util.warn)(`paste: \"${ex.message}\".`);\n }\n }\n keydown(event) {\n if (!this.getActive()?.shouldGetKeyboardEvents()) {\n AnnotationEditorUIManager._keyboardManager.exec(this, event);\n }\n }\n onEditingAction(details) {\n if ([\"undo\", \"redo\", \"delete\", \"selectAll\"].includes(details.name)) {\n this[details.name]();\n }\n }\n #dispatchUpdateStates(details) {\n const hasChanged = Object.entries(details).some(([key, value]) => this.#previousStates[key] !== value);\n if (hasChanged) {\n this._eventBus.dispatch(\"annotationeditorstateschanged\", {\n source: this,\n details: Object.assign(this.#previousStates, details)\n });\n }\n }\n #dispatchUpdateUI(details) {\n this._eventBus.dispatch(\"annotationeditorparamschanged\", {\n source: this,\n details\n });\n }\n setEditingState(isEditing) {\n if (isEditing) {\n this.#addFocusManager();\n this.#addKeyboardManager();\n this.#addCopyPasteListeners();\n this.#dispatchUpdateStates({\n isEditing: this.#mode !== _util.AnnotationEditorType.NONE,\n isEmpty: this.#isEmpty(),\n hasSomethingToUndo: this.#commandManager.hasSomethingToUndo(),\n hasSomethingToRedo: this.#commandManager.hasSomethingToRedo(),\n hasSelectedEditor: false\n });\n } else {\n this.#removeFocusManager();\n this.#removeKeyboardManager();\n this.#removeCopyPasteListeners();\n this.#dispatchUpdateStates({\n isEditing: false\n });\n this.disableUserSelect(false);\n }\n }\n registerEditorTypes(types) {\n if (this.#editorTypes) {\n return;\n }\n this.#editorTypes = types;\n for (const editorType of this.#editorTypes) {\n this.#dispatchUpdateUI(editorType.defaultPropertiesToUpdate);\n }\n }\n getId() {\n return this.#idManager.getId();\n }\n get currentLayer() {\n return this.#allLayers.get(this.#currentPageIndex);\n }\n getLayer(pageIndex) {\n return this.#allLayers.get(pageIndex);\n }\n get currentPageIndex() {\n return this.#currentPageIndex;\n }\n addLayer(layer) {\n this.#allLayers.set(layer.pageIndex, layer);\n if (this.#isEnabled) {\n layer.enable();\n } else {\n layer.disable();\n }\n }\n removeLayer(layer) {\n this.#allLayers.delete(layer.pageIndex);\n }\n updateMode(mode, editId = null) {\n if (this.#mode === mode) {\n return;\n }\n this.#mode = mode;\n if (mode === _util.AnnotationEditorType.NONE) {\n this.setEditingState(false);\n this.#disableAll();\n return;\n }\n this.setEditingState(true);\n this.#enableAll();\n this.unselectAll();\n for (const layer of this.#allLayers.values()) {\n layer.updateMode(mode);\n }\n if (!editId) {\n return;\n }\n for (const editor of this.#allEditors.values()) {\n if (editor.annotationElementId === editId) {\n this.setSelected(editor);\n editor.enterInEditMode();\n break;\n }\n }\n }\n updateToolbar(mode) {\n if (mode === this.#mode) {\n return;\n }\n this._eventBus.dispatch(\"switchannotationeditormode\", {\n source: this,\n mode\n });\n }\n updateParams(type, value) {\n if (!this.#editorTypes) {\n return;\n }\n if (type === _util.AnnotationEditorParamsType.CREATE) {\n this.currentLayer.addNewEditor(type);\n return;\n }\n for (const editor of this.#selectedEditors) {\n editor.updateParams(type, value);\n }\n for (const editorType of this.#editorTypes) {\n editorType.updateDefaultParams(type, value);\n }\n }\n enableWaiting(mustWait = false) {\n if (this.#isWaiting === mustWait) {\n return;\n }\n this.#isWaiting = mustWait;\n for (const layer of this.#allLayers.values()) {\n if (mustWait) {\n layer.disableClick();\n } else {\n layer.enableClick();\n }\n layer.div.classList.toggle(\"waiting\", mustWait);\n }\n }\n #enableAll() {\n if (!this.#isEnabled) {\n this.#isEnabled = true;\n for (const layer of this.#allLayers.values()) {\n layer.enable();\n }\n }\n }\n #disableAll() {\n this.unselectAll();\n if (this.#isEnabled) {\n this.#isEnabled = false;\n for (const layer of this.#allLayers.values()) {\n layer.disable();\n }\n }\n }\n getEditors(pageIndex) {\n const editors = [];\n for (const editor of this.#allEditors.values()) {\n if (editor.pageIndex === pageIndex) {\n editors.push(editor);\n }\n }\n return editors;\n }\n getEditor(id) {\n return this.#allEditors.get(id);\n }\n addEditor(editor) {\n this.#allEditors.set(editor.id, editor);\n }\n removeEditor(editor) {\n this.#allEditors.delete(editor.id);\n this.unselect(editor);\n if (!editor.annotationElementId || !this.#deletedAnnotationsElementIds.has(editor.annotationElementId)) {\n this.#annotationStorage?.remove(editor.id);\n }\n }\n addDeletedAnnotationElement(editor) {\n this.#deletedAnnotationsElementIds.add(editor.annotationElementId);\n editor.deleted = true;\n }\n isDeletedAnnotationElement(annotationElementId) {\n return this.#deletedAnnotationsElementIds.has(annotationElementId);\n }\n removeDeletedAnnotationElement(editor) {\n this.#deletedAnnotationsElementIds.delete(editor.annotationElementId);\n editor.deleted = false;\n }\n #addEditorToLayer(editor) {\n const layer = this.#allLayers.get(editor.pageIndex);\n if (layer) {\n layer.addOrRebuild(editor);\n } else {\n this.addEditor(editor);\n }\n }\n setActiveEditor(editor) {\n if (this.#activeEditor === editor) {\n return;\n }\n this.#activeEditor = editor;\n if (editor) {\n this.#dispatchUpdateUI(editor.propertiesToUpdate);\n }\n }\n toggleSelected(editor) {\n if (this.#selectedEditors.has(editor)) {\n this.#selectedEditors.delete(editor);\n editor.unselect();\n this.#dispatchUpdateStates({\n hasSelectedEditor: this.hasSelection\n });\n return;\n }\n this.#selectedEditors.add(editor);\n editor.select();\n this.#dispatchUpdateUI(editor.propertiesToUpdate);\n this.#dispatchUpdateStates({\n hasSelectedEditor: true\n });\n }\n setSelected(editor) {\n for (const ed of this.#selectedEditors) {\n if (ed !== editor) {\n ed.unselect();\n }\n }\n this.#selectedEditors.clear();\n this.#selectedEditors.add(editor);\n editor.select();\n this.#dispatchUpdateUI(editor.propertiesToUpdate);\n this.#dispatchUpdateStates({\n hasSelectedEditor: true\n });\n }\n isSelected(editor) {\n return this.#selectedEditors.has(editor);\n }\n unselect(editor) {\n editor.unselect();\n this.#selectedEditors.delete(editor);\n this.#dispatchUpdateStates({\n hasSelectedEditor: this.hasSelection\n });\n }\n get hasSelection() {\n return this.#selectedEditors.size !== 0;\n }\n undo() {\n this.#commandManager.undo();\n this.#dispatchUpdateStates({\n hasSomethingToUndo: this.#commandManager.hasSomethingToUndo(),\n hasSomethingToRedo: true,\n isEmpty: this.#isEmpty()\n });\n }\n redo() {\n this.#commandManager.redo();\n this.#dispatchUpdateStates({\n hasSomethingToUndo: true,\n hasSomethingToRedo: this.#commandManager.hasSomethingToRedo(),\n isEmpty: this.#isEmpty()\n });\n }\n addCommands(params) {\n this.#commandManager.add(params);\n this.#dispatchUpdateStates({\n hasSomethingToUndo: true,\n hasSomethingToRedo: false,\n isEmpty: this.#isEmpty()\n });\n }\n #isEmpty() {\n if (this.#allEditors.size === 0) {\n return true;\n }\n if (this.#allEditors.size === 1) {\n for (const editor of this.#allEditors.values()) {\n return editor.isEmpty();\n }\n }\n return false;\n }\n delete() {\n this.commitOrRemove();\n if (!this.hasSelection) {\n return;\n }\n const editors = [...this.#selectedEditors];\n const cmd = () => {\n for (const editor of editors) {\n editor.remove();\n }\n };\n const undo = () => {\n for (const editor of editors) {\n this.#addEditorToLayer(editor);\n }\n };\n this.addCommands({\n cmd,\n undo,\n mustExec: true\n });\n }\n commitOrRemove() {\n this.#activeEditor?.commitOrRemove();\n }\n hasSomethingToControl() {\n return this.#activeEditor || this.hasSelection;\n }\n #selectEditors(editors) {\n this.#selectedEditors.clear();\n for (const editor of editors) {\n if (editor.isEmpty()) {\n continue;\n }\n this.#selectedEditors.add(editor);\n editor.select();\n }\n this.#dispatchUpdateStates({\n hasSelectedEditor: true\n });\n }\n selectAll() {\n for (const editor of this.#selectedEditors) {\n editor.commit();\n }\n this.#selectEditors(this.#allEditors.values());\n }\n unselectAll() {\n if (this.#activeEditor) {\n this.#activeEditor.commitOrRemove();\n return;\n }\n if (!this.hasSelection) {\n return;\n }\n for (const editor of this.#selectedEditors) {\n editor.unselect();\n }\n this.#selectedEditors.clear();\n this.#dispatchUpdateStates({\n hasSelectedEditor: false\n });\n }\n translateSelectedEditors(x, y, noCommit = false) {\n if (!noCommit) {\n this.commitOrRemove();\n }\n if (!this.hasSelection) {\n return;\n }\n this.#translation[0] += x;\n this.#translation[1] += y;\n const [totalX, totalY] = this.#translation;\n const editors = [...this.#selectedEditors];\n const TIME_TO_WAIT = 1000;\n if (this.#translationTimeoutId) {\n clearTimeout(this.#translationTimeoutId);\n }\n this.#translationTimeoutId = setTimeout(() => {\n this.#translationTimeoutId = null;\n this.#translation[0] = this.#translation[1] = 0;\n this.addCommands({\n cmd: () => {\n for (const editor of editors) {\n if (this.#allEditors.has(editor.id)) {\n editor.translateInPage(totalX, totalY);\n }\n }\n },\n undo: () => {\n for (const editor of editors) {\n if (this.#allEditors.has(editor.id)) {\n editor.translateInPage(-totalX, -totalY);\n }\n }\n },\n mustExec: false\n });\n }, TIME_TO_WAIT);\n for (const editor of editors) {\n editor.translateInPage(x, y);\n }\n }\n setUpDragSession() {\n if (!this.hasSelection) {\n return;\n }\n this.disableUserSelect(true);\n this.#draggingEditors = new Map();\n for (const editor of this.#selectedEditors) {\n this.#draggingEditors.set(editor, {\n savedX: editor.x,\n savedY: editor.y,\n savedPageIndex: editor.pageIndex,\n newX: 0,\n newY: 0,\n newPageIndex: -1\n });\n }\n }\n endDragSession() {\n if (!this.#draggingEditors) {\n return false;\n }\n this.disableUserSelect(false);\n const map = this.#draggingEditors;\n this.#draggingEditors = null;\n let mustBeAddedInUndoStack = false;\n for (const [{\n x,\n y,\n pageIndex\n }, value] of map) {\n value.newX = x;\n value.newY = y;\n value.newPageIndex = pageIndex;\n mustBeAddedInUndoStack ||= x !== value.savedX || y !== value.savedY || pageIndex !== value.savedPageIndex;\n }\n if (!mustBeAddedInUndoStack) {\n return false;\n }\n const move = (editor, x, y, pageIndex) => {\n if (this.#allEditors.has(editor.id)) {\n const parent = this.#allLayers.get(pageIndex);\n if (parent) {\n editor._setParentAndPosition(parent, x, y);\n } else {\n editor.pageIndex = pageIndex;\n editor.x = x;\n editor.y = y;\n }\n }\n };\n this.addCommands({\n cmd: () => {\n for (const [editor, {\n newX,\n newY,\n newPageIndex\n }] of map) {\n move(editor, newX, newY, newPageIndex);\n }\n },\n undo: () => {\n for (const [editor, {\n savedX,\n savedY,\n savedPageIndex\n }] of map) {\n move(editor, savedX, savedY, savedPageIndex);\n }\n },\n mustExec: true\n });\n return true;\n }\n dragSelectedEditors(tx, ty) {\n if (!this.#draggingEditors) {\n return;\n }\n for (const editor of this.#draggingEditors.keys()) {\n editor.drag(tx, ty);\n }\n }\n rebuild(editor) {\n if (editor.parent === null) {\n const parent = this.getLayer(editor.pageIndex);\n if (parent) {\n parent.changeParent(editor);\n parent.addOrRebuild(editor);\n } else {\n this.addEditor(editor);\n this.addToAnnotationStorage(editor);\n editor.rebuild();\n }\n } else {\n editor.parent.addOrRebuild(editor);\n }\n }\n isActive(editor) {\n return this.#activeEditor === editor;\n }\n getActive() {\n return this.#activeEditor;\n }\n getMode() {\n return this.#mode;\n }\n get imageManager() {\n return (0, _util.shadow)(this, \"imageManager\", new ImageManager());\n }\n}\nexports.AnnotationEditorUIManager = AnnotationEditorUIManager;\n\n/***/ }),\n/* 6 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.StatTimer = exports.RenderingCancelledException = exports.PixelsPerInch = exports.PageViewport = exports.PDFDateString = exports.DOMStandardFontDataFactory = exports.DOMSVGFactory = exports.DOMFilterFactory = exports.DOMCanvasFactory = exports.DOMCMapReaderFactory = void 0;\nexports.deprecated = deprecated;\nexports.getColorValues = getColorValues;\nexports.getCurrentTransform = getCurrentTransform;\nexports.getCurrentTransformInverse = getCurrentTransformInverse;\nexports.getFilenameFromUrl = getFilenameFromUrl;\nexports.getPdfFilenameFromUrl = getPdfFilenameFromUrl;\nexports.getRGB = getRGB;\nexports.getXfaPageViewport = getXfaPageViewport;\nexports.isDataScheme = isDataScheme;\nexports.isPdfFile = isPdfFile;\nexports.isValidFetchUrl = isValidFetchUrl;\nexports.loadScript = loadScript;\nexports.noContextMenu = noContextMenu;\nexports.setLayerDimensions = setLayerDimensions;\nvar _base_factory = __w_pdfjs_require__(7);\nvar _util = __w_pdfjs_require__(1);\nconst SVG_NS = \"http://www.w3.org/2000/svg\";\nclass PixelsPerInch {\n static CSS = 96.0;\n static PDF = 72.0;\n static PDF_TO_CSS_UNITS = this.CSS / this.PDF;\n}\nexports.PixelsPerInch = PixelsPerInch;\nclass DOMFilterFactory extends _base_factory.BaseFilterFactory {\n #_cache;\n #_defs;\n #docId;\n #document;\n #hcmFilter;\n #hcmKey;\n #hcmUrl;\n #hcmHighlightFilter;\n #hcmHighlightKey;\n #hcmHighlightUrl;\n #id = 0;\n constructor({\n docId,\n ownerDocument = globalThis.document\n } = {}) {\n super();\n this.#docId = docId;\n this.#document = ownerDocument;\n }\n get #cache() {\n return this.#_cache ||= new Map();\n }\n get #defs() {\n if (!this.#_defs) {\n const div = this.#document.createElement(\"div\");\n const {\n style\n } = div;\n style.visibility = \"hidden\";\n style.contain = \"strict\";\n style.width = style.height = 0;\n style.position = \"absolute\";\n style.top = style.left = 0;\n style.zIndex = -1;\n const svg = this.#document.createElementNS(SVG_NS, \"svg\");\n svg.setAttribute(\"width\", 0);\n svg.setAttribute(\"height\", 0);\n this.#_defs = this.#document.createElementNS(SVG_NS, \"defs\");\n div.append(svg);\n svg.append(this.#_defs);\n this.#document.body.append(div);\n }\n return this.#_defs;\n }\n addFilter(maps) {\n if (!maps) {\n return \"none\";\n }\n let value = this.#cache.get(maps);\n if (value) {\n return value;\n }\n let tableR, tableG, tableB, key;\n if (maps.length === 1) {\n const mapR = maps[0];\n const buffer = new Array(256);\n for (let i = 0; i < 256; i++) {\n buffer[i] = mapR[i] / 255;\n }\n key = tableR = tableG = tableB = buffer.join(\",\");\n } else {\n const [mapR, mapG, mapB] = maps;\n const bufferR = new Array(256);\n const bufferG = new Array(256);\n const bufferB = new Array(256);\n for (let i = 0; i < 256; i++) {\n bufferR[i] = mapR[i] / 255;\n bufferG[i] = mapG[i] / 255;\n bufferB[i] = mapB[i] / 255;\n }\n tableR = bufferR.join(\",\");\n tableG = bufferG.join(\",\");\n tableB = bufferB.join(\",\");\n key = `${tableR}${tableG}${tableB}`;\n }\n value = this.#cache.get(key);\n if (value) {\n this.#cache.set(maps, value);\n return value;\n }\n const id = `g_${this.#docId}_transfer_map_${this.#id++}`;\n const url = `url(#${id})`;\n this.#cache.set(maps, url);\n this.#cache.set(key, url);\n const filter = this.#createFilter(id);\n this.#addTransferMapConversion(tableR, tableG, tableB, filter);\n return url;\n }\n addHCMFilter(fgColor, bgColor) {\n const key = `${fgColor}-${bgColor}`;\n if (this.#hcmKey === key) {\n return this.#hcmUrl;\n }\n this.#hcmKey = key;\n this.#hcmUrl = \"none\";\n this.#hcmFilter?.remove();\n if (!fgColor || !bgColor) {\n return this.#hcmUrl;\n }\n const fgRGB = this.#getRGB(fgColor);\n fgColor = _util.Util.makeHexColor(...fgRGB);\n const bgRGB = this.#getRGB(bgColor);\n bgColor = _util.Util.makeHexColor(...bgRGB);\n this.#defs.style.color = \"\";\n if (fgColor === \"#000000\" && bgColor === \"#ffffff\" || fgColor === bgColor) {\n return this.#hcmUrl;\n }\n const map = new Array(256);\n for (let i = 0; i <= 255; i++) {\n const x = i / 255;\n map[i] = x <= 0.03928 ? x / 12.92 : ((x + 0.055) / 1.055) ** 2.4;\n }\n const table = map.join(\",\");\n const id = `g_${this.#docId}_hcm_filter`;\n const filter = this.#hcmHighlightFilter = this.#createFilter(id);\n this.#addTransferMapConversion(table, table, table, filter);\n this.#addGrayConversion(filter);\n const getSteps = (c, n) => {\n const start = fgRGB[c] / 255;\n const end = bgRGB[c] / 255;\n const arr = new Array(n + 1);\n for (let i = 0; i <= n; i++) {\n arr[i] = start + i / n * (end - start);\n }\n return arr.join(\",\");\n };\n this.#addTransferMapConversion(getSteps(0, 5), getSteps(1, 5), getSteps(2, 5), filter);\n this.#hcmUrl = `url(#${id})`;\n return this.#hcmUrl;\n }\n addHighlightHCMFilter(fgColor, bgColor, newFgColor, newBgColor) {\n const key = `${fgColor}-${bgColor}-${newFgColor}-${newBgColor}`;\n if (this.#hcmHighlightKey === key) {\n return this.#hcmHighlightUrl;\n }\n this.#hcmHighlightKey = key;\n this.#hcmHighlightUrl = \"none\";\n this.#hcmHighlightFilter?.remove();\n if (!fgColor || !bgColor) {\n return this.#hcmHighlightUrl;\n }\n const [fgRGB, bgRGB] = [fgColor, bgColor].map(this.#getRGB.bind(this));\n let fgGray = Math.round(0.2126 * fgRGB[0] + 0.7152 * fgRGB[1] + 0.0722 * fgRGB[2]);\n let bgGray = Math.round(0.2126 * bgRGB[0] + 0.7152 * bgRGB[1] + 0.0722 * bgRGB[2]);\n let [newFgRGB, newBgRGB] = [newFgColor, newBgColor].map(this.#getRGB.bind(this));\n if (bgGray < fgGray) {\n [fgGray, bgGray, newFgRGB, newBgRGB] = [bgGray, fgGray, newBgRGB, newFgRGB];\n }\n this.#defs.style.color = \"\";\n const getSteps = (fg, bg, n) => {\n const arr = new Array(256);\n const step = (bgGray - fgGray) / n;\n const newStart = fg / 255;\n const newStep = (bg - fg) / (255 * n);\n let prev = 0;\n for (let i = 0; i <= n; i++) {\n const k = Math.round(fgGray + i * step);\n const value = newStart + i * newStep;\n for (let j = prev; j <= k; j++) {\n arr[j] = value;\n }\n prev = k + 1;\n }\n for (let i = prev; i < 256; i++) {\n arr[i] = arr[prev - 1];\n }\n return arr.join(\",\");\n };\n const id = `g_${this.#docId}_hcm_highlight_filter`;\n const filter = this.#hcmHighlightFilter = this.#createFilter(id);\n this.#addGrayConversion(filter);\n this.#addTransferMapConversion(getSteps(newFgRGB[0], newBgRGB[0], 5), getSteps(newFgRGB[1], newBgRGB[1], 5), getSteps(newFgRGB[2], newBgRGB[2], 5), filter);\n this.#hcmHighlightUrl = `url(#${id})`;\n return this.#hcmHighlightUrl;\n }\n destroy(keepHCM = false) {\n if (keepHCM && (this.#hcmUrl || this.#hcmHighlightUrl)) {\n return;\n }\n if (this.#_defs) {\n this.#_defs.parentNode.parentNode.remove();\n this.#_defs = null;\n }\n if (this.#_cache) {\n this.#_cache.clear();\n this.#_cache = null;\n }\n this.#id = 0;\n }\n #addGrayConversion(filter) {\n const feColorMatrix = this.#document.createElementNS(SVG_NS, \"feColorMatrix\");\n feColorMatrix.setAttribute(\"type\", \"matrix\");\n feColorMatrix.setAttribute(\"values\", \"0.2126 0.7152 0.0722 0 0 0.2126 0.7152 0.0722 0 0 0.2126 0.7152 0.0722 0 0 0 0 0 1 0\");\n filter.append(feColorMatrix);\n }\n #createFilter(id) {\n const filter = this.#document.createElementNS(SVG_NS, \"filter\");\n filter.setAttribute(\"color-interpolation-filters\", \"sRGB\");\n filter.setAttribute(\"id\", id);\n this.#defs.append(filter);\n return filter;\n }\n #appendFeFunc(feComponentTransfer, func, table) {\n const feFunc = this.#document.createElementNS(SVG_NS, func);\n feFunc.setAttribute(\"type\", \"discrete\");\n feFunc.setAttribute(\"tableValues\", table);\n feComponentTransfer.append(feFunc);\n }\n #addTransferMapConversion(rTable, gTable, bTable, filter) {\n const feComponentTransfer = this.#document.createElementNS(SVG_NS, \"feComponentTransfer\");\n filter.append(feComponentTransfer);\n this.#appendFeFunc(feComponentTransfer, \"feFuncR\", rTable);\n this.#appendFeFunc(feComponentTransfer, \"feFuncG\", gTable);\n this.#appendFeFunc(feComponentTransfer, \"feFuncB\", bTable);\n }\n #getRGB(color) {\n this.#defs.style.color = color;\n return getRGB(getComputedStyle(this.#defs).getPropertyValue(\"color\"));\n }\n}\nexports.DOMFilterFactory = DOMFilterFactory;\nclass DOMCanvasFactory extends _base_factory.BaseCanvasFactory {\n constructor({\n ownerDocument = globalThis.document\n } = {}) {\n super();\n this._document = ownerDocument;\n }\n _createCanvas(width, height) {\n const canvas = this._document.createElement(\"canvas\");\n canvas.width = width;\n canvas.height = height;\n return canvas;\n }\n}\nexports.DOMCanvasFactory = DOMCanvasFactory;\nasync function fetchData(url, asTypedArray = false) {\n if (isValidFetchUrl(url, document.baseURI)) {\n const response = await fetch(url);\n if (!response.ok) {\n throw new Error(response.statusText);\n }\n return asTypedArray ? new Uint8Array(await response.arrayBuffer()) : (0, _util.stringToBytes)(await response.text());\n }\n return new Promise((resolve, reject) => {\n const request = new XMLHttpRequest();\n request.open(\"GET\", url, true);\n if (asTypedArray) {\n request.responseType = \"arraybuffer\";\n }\n request.onreadystatechange = () => {\n if (request.readyState !== XMLHttpRequest.DONE) {\n return;\n }\n if (request.status === 200 || request.status === 0) {\n let data;\n if (asTypedArray && request.response) {\n data = new Uint8Array(request.response);\n } else if (!asTypedArray && request.responseText) {\n data = (0, _util.stringToBytes)(request.responseText);\n }\n if (data) {\n resolve(data);\n return;\n }\n }\n reject(new Error(request.statusText));\n };\n request.send(null);\n });\n}\nclass DOMCMapReaderFactory extends _base_factory.BaseCMapReaderFactory {\n _fetchData(url, compressionType) {\n return fetchData(url, this.isCompressed).then(data => {\n return {\n cMapData: data,\n compressionType\n };\n });\n }\n}\nexports.DOMCMapReaderFactory = DOMCMapReaderFactory;\nclass DOMStandardFontDataFactory extends _base_factory.BaseStandardFontDataFactory {\n _fetchData(url) {\n return fetchData(url, true);\n }\n}\nexports.DOMStandardFontDataFactory = DOMStandardFontDataFactory;\nclass DOMSVGFactory extends _base_factory.BaseSVGFactory {\n _createSVG(type) {\n return document.createElementNS(SVG_NS, type);\n }\n}\nexports.DOMSVGFactory = DOMSVGFactory;\nclass PageViewport {\n constructor({\n viewBox,\n scale,\n rotation,\n offsetX = 0,\n offsetY = 0,\n dontFlip = false\n }) {\n this.viewBox = viewBox;\n this.scale = scale;\n this.rotation = rotation;\n this.offsetX = offsetX;\n this.offsetY = offsetY;\n const centerX = (viewBox[2] + viewBox[0]) / 2;\n const centerY = (viewBox[3] + viewBox[1]) / 2;\n let rotateA, rotateB, rotateC, rotateD;\n rotation %= 360;\n if (rotation < 0) {\n rotation += 360;\n }\n switch (rotation) {\n case 180:\n rotateA = -1;\n rotateB = 0;\n rotateC = 0;\n rotateD = 1;\n break;\n case 90:\n rotateA = 0;\n rotateB = 1;\n rotateC = 1;\n rotateD = 0;\n break;\n case 270:\n rotateA = 0;\n rotateB = -1;\n rotateC = -1;\n rotateD = 0;\n break;\n case 0:\n rotateA = 1;\n rotateB = 0;\n rotateC = 0;\n rotateD = -1;\n break;\n default:\n throw new Error(\"PageViewport: Invalid rotation, must be a multiple of 90 degrees.\");\n }\n if (dontFlip) {\n rotateC = -rotateC;\n rotateD = -rotateD;\n }\n let offsetCanvasX, offsetCanvasY;\n let width, height;\n if (rotateA === 0) {\n offsetCanvasX = Math.abs(centerY - viewBox[1]) * scale + offsetX;\n offsetCanvasY = Math.abs(centerX - viewBox[0]) * scale + offsetY;\n width = (viewBox[3] - viewBox[1]) * scale;\n height = (viewBox[2] - viewBox[0]) * scale;\n } else {\n offsetCanvasX = Math.abs(centerX - viewBox[0]) * scale + offsetX;\n offsetCanvasY = Math.abs(centerY - viewBox[1]) * scale + offsetY;\n width = (viewBox[2] - viewBox[0]) * scale;\n height = (viewBox[3] - viewBox[1]) * scale;\n }\n this.transform = [rotateA * scale, rotateB * scale, rotateC * scale, rotateD * scale, offsetCanvasX - rotateA * scale * centerX - rotateC * scale * centerY, offsetCanvasY - rotateB * scale * centerX - rotateD * scale * centerY];\n this.width = width;\n this.height = height;\n }\n get rawDims() {\n const {\n viewBox\n } = this;\n return (0, _util.shadow)(this, \"rawDims\", {\n pageWidth: viewBox[2] - viewBox[0],\n pageHeight: viewBox[3] - viewBox[1],\n pageX: viewBox[0],\n pageY: viewBox[1]\n });\n }\n clone({\n scale = this.scale,\n rotation = this.rotation,\n offsetX = this.offsetX,\n offsetY = this.offsetY,\n dontFlip = false\n } = {}) {\n return new PageViewport({\n viewBox: this.viewBox.slice(),\n scale,\n rotation,\n offsetX,\n offsetY,\n dontFlip\n });\n }\n convertToViewportPoint(x, y) {\n return _util.Util.applyTransform([x, y], this.transform);\n }\n convertToViewportRectangle(rect) {\n const topLeft = _util.Util.applyTransform([rect[0], rect[1]], this.transform);\n const bottomRight = _util.Util.applyTransform([rect[2], rect[3]], this.transform);\n return [topLeft[0], topLeft[1], bottomRight[0], bottomRight[1]];\n }\n convertToPdfPoint(x, y) {\n return _util.Util.applyInverseTransform([x, y], this.transform);\n }\n}\nexports.PageViewport = PageViewport;\nclass RenderingCancelledException extends _util.BaseException {\n constructor(msg, extraDelay = 0) {\n super(msg, \"RenderingCancelledException\");\n this.extraDelay = extraDelay;\n }\n}\nexports.RenderingCancelledException = RenderingCancelledException;\nfunction isDataScheme(url) {\n const ii = url.length;\n let i = 0;\n while (i < ii && url[i].trim() === \"\") {\n i++;\n }\n return url.substring(i, i + 5).toLowerCase() === \"data:\";\n}\nfunction isPdfFile(filename) {\n return typeof filename === \"string\" && /\\.pdf$/i.test(filename);\n}\nfunction getFilenameFromUrl(url, onlyStripPath = false) {\n if (!onlyStripPath) {\n [url] = url.split(/[#?]/, 1);\n }\n return url.substring(url.lastIndexOf(\"/\") + 1);\n}\nfunction getPdfFilenameFromUrl(url, defaultFilename = \"document.pdf\") {\n if (typeof url !== \"string\") {\n return defaultFilename;\n }\n if (isDataScheme(url)) {\n (0, _util.warn)('getPdfFilenameFromUrl: ignore \"data:\"-URL for performance reasons.');\n return defaultFilename;\n }\n const reURI = /^(?:(?:[^:]+:)?\\/\\/[^/]+)?([^?#]*)(\\?[^#]*)?(#.*)?$/;\n const reFilename = /[^/?#=]+\\.pdf\\b(?!.*\\.pdf\\b)/i;\n const splitURI = reURI.exec(url);\n let suggestedFilename = reFilename.exec(splitURI[1]) || reFilename.exec(splitURI[2]) || reFilename.exec(splitURI[3]);\n if (suggestedFilename) {\n suggestedFilename = suggestedFilename[0];\n if (suggestedFilename.includes(\"%\")) {\n try {\n suggestedFilename = reFilename.exec(decodeURIComponent(suggestedFilename))[0];\n } catch {}\n }\n }\n return suggestedFilename || defaultFilename;\n}\nclass StatTimer {\n started = Object.create(null);\n times = [];\n time(name) {\n if (name in this.started) {\n (0, _util.warn)(`Timer is already running for ${name}`);\n }\n this.started[name] = Date.now();\n }\n timeEnd(name) {\n if (!(name in this.started)) {\n (0, _util.warn)(`Timer has not been started for ${name}`);\n }\n this.times.push({\n name,\n start: this.started[name],\n end: Date.now()\n });\n delete this.started[name];\n }\n toString() {\n const outBuf = [];\n let longest = 0;\n for (const {\n name\n } of this.times) {\n longest = Math.max(name.length, longest);\n }\n for (const {\n name,\n start,\n end\n } of this.times) {\n outBuf.push(`${name.padEnd(longest)} ${end - start}ms\\n`);\n }\n return outBuf.join(\"\");\n }\n}\nexports.StatTimer = StatTimer;\nfunction isValidFetchUrl(url, baseUrl) {\n try {\n const {\n protocol\n } = baseUrl ? new URL(url, baseUrl) : new URL(url);\n return protocol === \"http:\" || protocol === \"https:\";\n } catch {\n return false;\n }\n}\nfunction noContextMenu(e) {\n e.preventDefault();\n}\nfunction loadScript(src, removeScriptElement = false) {\n return new Promise((resolve, reject) => {\n const script = document.createElement(\"script\");\n script.src = src;\n script.onload = function (evt) {\n if (removeScriptElement) {\n script.remove();\n }\n resolve(evt);\n };\n script.onerror = function () {\n reject(new Error(`Cannot load script at: ${script.src}`));\n };\n (document.head || document.documentElement).append(script);\n });\n}\nfunction deprecated(details) {\n console.log(\"Deprecated API usage: \" + details);\n}\nlet pdfDateStringRegex;\nclass PDFDateString {\n static toDateObject(input) {\n if (!input || typeof input !== \"string\") {\n return null;\n }\n pdfDateStringRegex ||= new RegExp(\"^D:\" + \"(\\\\d{4})\" + \"(\\\\d{2})?\" + \"(\\\\d{2})?\" + \"(\\\\d{2})?\" + \"(\\\\d{2})?\" + \"(\\\\d{2})?\" + \"([Z|+|-])?\" + \"(\\\\d{2})?\" + \"'?\" + \"(\\\\d{2})?\" + \"'?\");\n const matches = pdfDateStringRegex.exec(input);\n if (!matches) {\n return null;\n }\n const year = parseInt(matches[1], 10);\n let month = parseInt(matches[2], 10);\n month = month >= 1 && month <= 12 ? month - 1 : 0;\n let day = parseInt(matches[3], 10);\n day = day >= 1 && day <= 31 ? day : 1;\n let hour = parseInt(matches[4], 10);\n hour = hour >= 0 && hour <= 23 ? hour : 0;\n let minute = parseInt(matches[5], 10);\n minute = minute >= 0 && minute <= 59 ? minute : 0;\n let second = parseInt(matches[6], 10);\n second = second >= 0 && second <= 59 ? second : 0;\n const universalTimeRelation = matches[7] || \"Z\";\n let offsetHour = parseInt(matches[8], 10);\n offsetHour = offsetHour >= 0 && offsetHour <= 23 ? offsetHour : 0;\n let offsetMinute = parseInt(matches[9], 10) || 0;\n offsetMinute = offsetMinute >= 0 && offsetMinute <= 59 ? offsetMinute : 0;\n if (universalTimeRelation === \"-\") {\n hour += offsetHour;\n minute += offsetMinute;\n } else if (universalTimeRelation === \"+\") {\n hour -= offsetHour;\n minute -= offsetMinute;\n }\n return new Date(Date.UTC(year, month, day, hour, minute, second));\n }\n}\nexports.PDFDateString = PDFDateString;\nfunction getXfaPageViewport(xfaPage, {\n scale = 1,\n rotation = 0\n}) {\n const {\n width,\n height\n } = xfaPage.attributes.style;\n const viewBox = [0, 0, parseInt(width), parseInt(height)];\n return new PageViewport({\n viewBox,\n scale,\n rotation\n });\n}\nfunction getRGB(color) {\n if (color.startsWith(\"#\")) {\n const colorRGB = parseInt(color.slice(1), 16);\n return [(colorRGB & 0xff0000) >> 16, (colorRGB & 0x00ff00) >> 8, colorRGB & 0x0000ff];\n }\n if (color.startsWith(\"rgb(\")) {\n return color.slice(4, -1).split(\",\").map(x => parseInt(x));\n }\n if (color.startsWith(\"rgba(\")) {\n return color.slice(5, -1).split(\",\").map(x => parseInt(x)).slice(0, 3);\n }\n (0, _util.warn)(`Not a valid color format: \"${color}\"`);\n return [0, 0, 0];\n}\nfunction getColorValues(colors) {\n const span = document.createElement(\"span\");\n span.style.visibility = \"hidden\";\n document.body.append(span);\n for (const name of colors.keys()) {\n span.style.color = name;\n const computedColor = window.getComputedStyle(span).color;\n colors.set(name, getRGB(computedColor));\n }\n span.remove();\n}\nfunction getCurrentTransform(ctx) {\n const {\n a,\n b,\n c,\n d,\n e,\n f\n } = ctx.getTransform();\n return [a, b, c, d, e, f];\n}\nfunction getCurrentTransformInverse(ctx) {\n const {\n a,\n b,\n c,\n d,\n e,\n f\n } = ctx.getTransform().invertSelf();\n return [a, b, c, d, e, f];\n}\nfunction setLayerDimensions(div, viewport, mustFlip = false, mustRotate = true) {\n if (viewport instanceof PageViewport) {\n const {\n pageWidth,\n pageHeight\n } = viewport.rawDims;\n const {\n style\n } = div;\n const useRound = _util.FeatureTest.isCSSRoundSupported;\n const w = `var(--scale-factor) * ${pageWidth}px`,\n h = `var(--scale-factor) * ${pageHeight}px`;\n const widthStr = useRound ? `round(${w}, 1px)` : `calc(${w})`,\n heightStr = useRound ? `round(${h}, 1px)` : `calc(${h})`;\n if (!mustFlip || viewport.rotation % 180 === 0) {\n style.width = widthStr;\n style.height = heightStr;\n } else {\n style.width = heightStr;\n style.height = widthStr;\n }\n }\n if (mustRotate) {\n div.setAttribute(\"data-main-rotation\", viewport.rotation);\n }\n}\n\n/***/ }),\n/* 7 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.BaseStandardFontDataFactory = exports.BaseSVGFactory = exports.BaseFilterFactory = exports.BaseCanvasFactory = exports.BaseCMapReaderFactory = void 0;\nvar _util = __w_pdfjs_require__(1);\nclass BaseFilterFactory {\n constructor() {\n if (this.constructor === BaseFilterFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseFilterFactory.\");\n }\n }\n addFilter(maps) {\n return \"none\";\n }\n addHCMFilter(fgColor, bgColor) {\n return \"none\";\n }\n addHighlightHCMFilter(fgColor, bgColor, newFgColor, newBgColor) {\n return \"none\";\n }\n destroy(keepHCM = false) {}\n}\nexports.BaseFilterFactory = BaseFilterFactory;\nclass BaseCanvasFactory {\n constructor() {\n if (this.constructor === BaseCanvasFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseCanvasFactory.\");\n }\n }\n create(width, height) {\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid canvas size\");\n }\n const canvas = this._createCanvas(width, height);\n return {\n canvas,\n context: canvas.getContext(\"2d\")\n };\n }\n reset(canvasAndContext, width, height) {\n if (!canvasAndContext.canvas) {\n throw new Error(\"Canvas is not specified\");\n }\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid canvas size\");\n }\n canvasAndContext.canvas.width = width;\n canvasAndContext.canvas.height = height;\n }\n destroy(canvasAndContext) {\n if (!canvasAndContext.canvas) {\n throw new Error(\"Canvas is not specified\");\n }\n canvasAndContext.canvas.width = 0;\n canvasAndContext.canvas.height = 0;\n canvasAndContext.canvas = null;\n canvasAndContext.context = null;\n }\n _createCanvas(width, height) {\n (0, _util.unreachable)(\"Abstract method `_createCanvas` called.\");\n }\n}\nexports.BaseCanvasFactory = BaseCanvasFactory;\nclass BaseCMapReaderFactory {\n constructor({\n baseUrl = null,\n isCompressed = true\n }) {\n if (this.constructor === BaseCMapReaderFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseCMapReaderFactory.\");\n }\n this.baseUrl = baseUrl;\n this.isCompressed = isCompressed;\n }\n async fetch({\n name\n }) {\n if (!this.baseUrl) {\n throw new Error('The CMap \"baseUrl\" parameter must be specified, ensure that ' + 'the \"cMapUrl\" and \"cMapPacked\" API parameters are provided.');\n }\n if (!name) {\n throw new Error(\"CMap name must be specified.\");\n }\n const url = this.baseUrl + name + (this.isCompressed ? \".bcmap\" : \"\");\n const compressionType = this.isCompressed ? _util.CMapCompressionType.BINARY : _util.CMapCompressionType.NONE;\n return this._fetchData(url, compressionType).catch(reason => {\n throw new Error(`Unable to load ${this.isCompressed ? \"binary \" : \"\"}CMap at: ${url}`);\n });\n }\n _fetchData(url, compressionType) {\n (0, _util.unreachable)(\"Abstract method `_fetchData` called.\");\n }\n}\nexports.BaseCMapReaderFactory = BaseCMapReaderFactory;\nclass BaseStandardFontDataFactory {\n constructor({\n baseUrl = null\n }) {\n if (this.constructor === BaseStandardFontDataFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseStandardFontDataFactory.\");\n }\n this.baseUrl = baseUrl;\n }\n async fetch({\n filename\n }) {\n if (!this.baseUrl) {\n throw new Error('The standard font \"baseUrl\" parameter must be specified, ensure that ' + 'the \"standardFontDataUrl\" API parameter is provided.');\n }\n if (!filename) {\n throw new Error(\"Font filename must be specified.\");\n }\n const url = `${this.baseUrl}${filename}`;\n return this._fetchData(url).catch(reason => {\n throw new Error(`Unable to load font data at: ${url}`);\n });\n }\n _fetchData(url) {\n (0, _util.unreachable)(\"Abstract method `_fetchData` called.\");\n }\n}\nexports.BaseStandardFontDataFactory = BaseStandardFontDataFactory;\nclass BaseSVGFactory {\n constructor() {\n if (this.constructor === BaseSVGFactory) {\n (0, _util.unreachable)(\"Cannot initialize BaseSVGFactory.\");\n }\n }\n create(width, height, skipDimensions = false) {\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid SVG dimensions\");\n }\n const svg = this._createSVG(\"svg:svg\");\n svg.setAttribute(\"version\", \"1.1\");\n if (!skipDimensions) {\n svg.setAttribute(\"width\", `${width}px`);\n svg.setAttribute(\"height\", `${height}px`);\n }\n svg.setAttribute(\"preserveAspectRatio\", \"none\");\n svg.setAttribute(\"viewBox\", `0 0 ${width} ${height}`);\n return svg;\n }\n createElement(type) {\n if (typeof type !== \"string\") {\n throw new Error(\"Invalid SVG element type\");\n }\n return this._createSVG(type);\n }\n _createSVG(type) {\n (0, _util.unreachable)(\"Abstract method `_createSVG` called.\");\n }\n}\nexports.BaseSVGFactory = BaseSVGFactory;\n\n/***/ }),\n/* 8 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.MurmurHash3_64 = void 0;\nvar _util = __w_pdfjs_require__(1);\nconst SEED = 0xc3d2e1f0;\nconst MASK_HIGH = 0xffff0000;\nconst MASK_LOW = 0xffff;\nclass MurmurHash3_64 {\n constructor(seed) {\n this.h1 = seed ? seed & 0xffffffff : SEED;\n this.h2 = seed ? seed & 0xffffffff : SEED;\n }\n update(input) {\n let data, length;\n if (typeof input === \"string\") {\n data = new Uint8Array(input.length * 2);\n length = 0;\n for (let i = 0, ii = input.length; i < ii; i++) {\n const code = input.charCodeAt(i);\n if (code <= 0xff) {\n data[length++] = code;\n } else {\n data[length++] = code >>> 8;\n data[length++] = code & 0xff;\n }\n }\n } else if ((0, _util.isArrayBuffer)(input)) {\n data = input.slice();\n length = data.byteLength;\n } else {\n throw new Error(\"Wrong data format in MurmurHash3_64_update. \" + \"Input must be a string or array.\");\n }\n const blockCounts = length >> 2;\n const tailLength = length - blockCounts * 4;\n const dataUint32 = new Uint32Array(data.buffer, 0, blockCounts);\n let k1 = 0,\n k2 = 0;\n let h1 = this.h1,\n h2 = this.h2;\n const C1 = 0xcc9e2d51,\n C2 = 0x1b873593;\n const C1_LOW = C1 & MASK_LOW,\n C2_LOW = C2 & MASK_LOW;\n for (let i = 0; i < blockCounts; i++) {\n if (i & 1) {\n k1 = dataUint32[i];\n k1 = k1 * C1 & MASK_HIGH | k1 * C1_LOW & MASK_LOW;\n k1 = k1 << 15 | k1 >>> 17;\n k1 = k1 * C2 & MASK_HIGH | k1 * C2_LOW & MASK_LOW;\n h1 ^= k1;\n h1 = h1 << 13 | h1 >>> 19;\n h1 = h1 * 5 + 0xe6546b64;\n } else {\n k2 = dataUint32[i];\n k2 = k2 * C1 & MASK_HIGH | k2 * C1_LOW & MASK_LOW;\n k2 = k2 << 15 | k2 >>> 17;\n k2 = k2 * C2 & MASK_HIGH | k2 * C2_LOW & MASK_LOW;\n h2 ^= k2;\n h2 = h2 << 13 | h2 >>> 19;\n h2 = h2 * 5 + 0xe6546b64;\n }\n }\n k1 = 0;\n switch (tailLength) {\n case 3:\n k1 ^= data[blockCounts * 4 + 2] << 16;\n case 2:\n k1 ^= data[blockCounts * 4 + 1] << 8;\n case 1:\n k1 ^= data[blockCounts * 4];\n k1 = k1 * C1 & MASK_HIGH | k1 * C1_LOW & MASK_LOW;\n k1 = k1 << 15 | k1 >>> 17;\n k1 = k1 * C2 & MASK_HIGH | k1 * C2_LOW & MASK_LOW;\n if (blockCounts & 1) {\n h1 ^= k1;\n } else {\n h2 ^= k1;\n }\n }\n this.h1 = h1;\n this.h2 = h2;\n }\n hexdigest() {\n let h1 = this.h1,\n h2 = this.h2;\n h1 ^= h2 >>> 1;\n h1 = h1 * 0xed558ccd & MASK_HIGH | h1 * 0x8ccd & MASK_LOW;\n h2 = h2 * 0xff51afd7 & MASK_HIGH | ((h2 << 16 | h1 >>> 16) * 0xafd7ed55 & MASK_HIGH) >>> 16;\n h1 ^= h2 >>> 1;\n h1 = h1 * 0x1a85ec53 & MASK_HIGH | h1 * 0xec53 & MASK_LOW;\n h2 = h2 * 0xc4ceb9fe & MASK_HIGH | ((h2 << 16 | h1 >>> 16) * 0xb9fe1a85 & MASK_HIGH) >>> 16;\n h1 ^= h2 >>> 1;\n return (h1 >>> 0).toString(16).padStart(8, \"0\") + (h2 >>> 0).toString(16).padStart(8, \"0\");\n }\n}\nexports.MurmurHash3_64 = MurmurHash3_64;\n\n/***/ }),\n/* 9 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.FontLoader = exports.FontFaceObject = void 0;\nvar _util = __w_pdfjs_require__(1);\nclass FontLoader {\n #systemFonts = new Set();\n constructor({\n ownerDocument = globalThis.document,\n styleElement = null\n }) {\n this._document = ownerDocument;\n this.nativeFontFaces = new Set();\n this.styleElement = null;\n this.loadingRequests = [];\n this.loadTestFontId = 0;\n }\n addNativeFontFace(nativeFontFace) {\n this.nativeFontFaces.add(nativeFontFace);\n this._document.fonts.add(nativeFontFace);\n }\n removeNativeFontFace(nativeFontFace) {\n this.nativeFontFaces.delete(nativeFontFace);\n this._document.fonts.delete(nativeFontFace);\n }\n insertRule(rule) {\n if (!this.styleElement) {\n this.styleElement = this._document.createElement(\"style\");\n this._document.documentElement.getElementsByTagName(\"head\")[0].append(this.styleElement);\n }\n const styleSheet = this.styleElement.sheet;\n styleSheet.insertRule(rule, styleSheet.cssRules.length);\n }\n clear() {\n for (const nativeFontFace of this.nativeFontFaces) {\n this._document.fonts.delete(nativeFontFace);\n }\n this.nativeFontFaces.clear();\n this.#systemFonts.clear();\n if (this.styleElement) {\n this.styleElement.remove();\n this.styleElement = null;\n }\n }\n async loadSystemFont(info) {\n if (!info || this.#systemFonts.has(info.loadedName)) {\n return;\n }\n (0, _util.assert)(!this.disableFontFace, \"loadSystemFont shouldn't be called when `disableFontFace` is set.\");\n if (this.isFontLoadingAPISupported) {\n const {\n loadedName,\n src,\n style\n } = info;\n const fontFace = new FontFace(loadedName, src, style);\n this.addNativeFontFace(fontFace);\n try {\n await fontFace.load();\n this.#systemFonts.add(loadedName);\n } catch {\n (0, _util.warn)(`Cannot load system font: ${info.baseFontName}, installing it could help to improve PDF rendering.`);\n this.removeNativeFontFace(fontFace);\n }\n return;\n }\n (0, _util.unreachable)(\"Not implemented: loadSystemFont without the Font Loading API.\");\n }\n async bind(font) {\n if (font.attached || font.missingFile && !font.systemFontInfo) {\n return;\n }\n font.attached = true;\n if (font.systemFontInfo) {\n await this.loadSystemFont(font.systemFontInfo);\n return;\n }\n if (this.isFontLoadingAPISupported) {\n const nativeFontFace = font.createNativeFontFace();\n if (nativeFontFace) {\n this.addNativeFontFace(nativeFontFace);\n try {\n await nativeFontFace.loaded;\n } catch (ex) {\n (0, _util.warn)(`Failed to load font '${nativeFontFace.family}': '${ex}'.`);\n font.disableFontFace = true;\n throw ex;\n }\n }\n return;\n }\n const rule = font.createFontFaceRule();\n if (rule) {\n this.insertRule(rule);\n if (this.isSyncFontLoadingSupported) {\n return;\n }\n await new Promise(resolve => {\n const request = this._queueLoadingCallback(resolve);\n this._prepareFontLoadEvent(font, request);\n });\n }\n }\n get isFontLoadingAPISupported() {\n const hasFonts = !!this._document?.fonts;\n return (0, _util.shadow)(this, \"isFontLoadingAPISupported\", hasFonts);\n }\n get isSyncFontLoadingSupported() {\n let supported = false;\n if (_util.isNodeJS) {\n supported = true;\n } else if (typeof navigator !== \"undefined\" && /Mozilla\\/5.0.*?rv:\\d+.*? Gecko/.test(navigator.userAgent)) {\n supported = true;\n }\n return (0, _util.shadow)(this, \"isSyncFontLoadingSupported\", supported);\n }\n _queueLoadingCallback(callback) {\n function completeRequest() {\n (0, _util.assert)(!request.done, \"completeRequest() cannot be called twice.\");\n request.done = true;\n while (loadingRequests.length > 0 && loadingRequests[0].done) {\n const otherRequest = loadingRequests.shift();\n setTimeout(otherRequest.callback, 0);\n }\n }\n const {\n loadingRequests\n } = this;\n const request = {\n done: false,\n complete: completeRequest,\n callback\n };\n loadingRequests.push(request);\n return request;\n }\n get _loadTestFont() {\n const testFont = atob(\"T1RUTwALAIAAAwAwQ0ZGIDHtZg4AAAOYAAAAgUZGVE1lkzZwAAAEHAAAABxHREVGABQA\" + \"FQAABDgAAAAeT1MvMlYNYwkAAAEgAAAAYGNtYXABDQLUAAACNAAAAUJoZWFk/xVFDQAA\" + \"ALwAAAA2aGhlYQdkA+oAAAD0AAAAJGhtdHgD6AAAAAAEWAAAAAZtYXhwAAJQAAAAARgA\" + \"AAAGbmFtZVjmdH4AAAGAAAAAsXBvc3T/hgAzAAADeAAAACAAAQAAAAEAALZRFsRfDzz1\" + \"AAsD6AAAAADOBOTLAAAAAM4KHDwAAAAAA+gDIQAAAAgAAgAAAAAAAAABAAADIQAAAFoD\" + \"6AAAAAAD6AABAAAAAAAAAAAAAAAAAAAAAQAAUAAAAgAAAAQD6AH0AAUAAAKKArwAAACM\" + \"AooCvAAAAeAAMQECAAACAAYJAAAAAAAAAAAAAQAAAAAAAAAAAAAAAFBmRWQAwAAuAC4D\" + \"IP84AFoDIQAAAAAAAQAAAAAAAAAAACAAIAABAAAADgCuAAEAAAAAAAAAAQAAAAEAAAAA\" + \"AAEAAQAAAAEAAAAAAAIAAQAAAAEAAAAAAAMAAQAAAAEAAAAAAAQAAQAAAAEAAAAAAAUA\" + \"AQAAAAEAAAAAAAYAAQAAAAMAAQQJAAAAAgABAAMAAQQJAAEAAgABAAMAAQQJAAIAAgAB\" + \"AAMAAQQJAAMAAgABAAMAAQQJAAQAAgABAAMAAQQJAAUAAgABAAMAAQQJAAYAAgABWABY\" + \"AAAAAAAAAwAAAAMAAAAcAAEAAAAAADwAAwABAAAAHAAEACAAAAAEAAQAAQAAAC7//wAA\" + \"AC7////TAAEAAAAAAAABBgAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAD/gwAyAAAAAQAAAAAAAAAAAAAAAAAA\" + \"AAABAAQEAAEBAQJYAAEBASH4DwD4GwHEAvgcA/gXBIwMAYuL+nz5tQXkD5j3CBLnEQAC\" + \"AQEBIVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYAAABAQAADwACAQEEE/t3\" + \"Dov6fAH6fAT+fPp8+nwHDosMCvm1Cvm1DAz6fBQAAAAAAAABAAAAAMmJbzEAAAAAzgTj\" + \"FQAAAADOBOQpAAEAAAAAAAAADAAUAAQAAAABAAAAAgABAAAAAAAAAAAD6AAAAAAAAA==\");\n return (0, _util.shadow)(this, \"_loadTestFont\", testFont);\n }\n _prepareFontLoadEvent(font, request) {\n function int32(data, offset) {\n return data.charCodeAt(offset) << 24 | data.charCodeAt(offset + 1) << 16 | data.charCodeAt(offset + 2) << 8 | data.charCodeAt(offset + 3) & 0xff;\n }\n function spliceString(s, offset, remove, insert) {\n const chunk1 = s.substring(0, offset);\n const chunk2 = s.substring(offset + remove);\n return chunk1 + insert + chunk2;\n }\n let i, ii;\n const canvas = this._document.createElement(\"canvas\");\n canvas.width = 1;\n canvas.height = 1;\n const ctx = canvas.getContext(\"2d\");\n let called = 0;\n function isFontReady(name, callback) {\n if (++called > 30) {\n (0, _util.warn)(\"Load test font never loaded.\");\n callback();\n return;\n }\n ctx.font = \"30px \" + name;\n ctx.fillText(\".\", 0, 20);\n const imageData = ctx.getImageData(0, 0, 1, 1);\n if (imageData.data[3] > 0) {\n callback();\n return;\n }\n setTimeout(isFontReady.bind(null, name, callback));\n }\n const loadTestFontId = `lt${Date.now()}${this.loadTestFontId++}`;\n let data = this._loadTestFont;\n const COMMENT_OFFSET = 976;\n data = spliceString(data, COMMENT_OFFSET, loadTestFontId.length, loadTestFontId);\n const CFF_CHECKSUM_OFFSET = 16;\n const XXXX_VALUE = 0x58585858;\n let checksum = int32(data, CFF_CHECKSUM_OFFSET);\n for (i = 0, ii = loadTestFontId.length - 3; i < ii; i += 4) {\n checksum = checksum - XXXX_VALUE + int32(loadTestFontId, i) | 0;\n }\n if (i < loadTestFontId.length) {\n checksum = checksum - XXXX_VALUE + int32(loadTestFontId + \"XXX\", i) | 0;\n }\n data = spliceString(data, CFF_CHECKSUM_OFFSET, 4, (0, _util.string32)(checksum));\n const url = `url(data:font/opentype;base64,${btoa(data)});`;\n const rule = `@font-face {font-family:\"${loadTestFontId}\";src:${url}}`;\n this.insertRule(rule);\n const div = this._document.createElement(\"div\");\n div.style.visibility = \"hidden\";\n div.style.width = div.style.height = \"10px\";\n div.style.position = \"absolute\";\n div.style.top = div.style.left = \"0px\";\n for (const name of [font.loadedName, loadTestFontId]) {\n const span = this._document.createElement(\"span\");\n span.textContent = \"Hi\";\n span.style.fontFamily = name;\n div.append(span);\n }\n this._document.body.append(div);\n isFontReady(loadTestFontId, () => {\n div.remove();\n request.complete();\n });\n }\n}\nexports.FontLoader = FontLoader;\nclass FontFaceObject {\n constructor(translatedData, {\n isEvalSupported = true,\n disableFontFace = false,\n ignoreErrors = false,\n inspectFont = null\n }) {\n this.compiledGlyphs = Object.create(null);\n for (const i in translatedData) {\n this[i] = translatedData[i];\n }\n this.isEvalSupported = isEvalSupported !== false;\n this.disableFontFace = disableFontFace === true;\n this.ignoreErrors = ignoreErrors === true;\n this._inspectFont = inspectFont;\n }\n createNativeFontFace() {\n if (!this.data || this.disableFontFace) {\n return null;\n }\n let nativeFontFace;\n if (!this.cssFontInfo) {\n nativeFontFace = new FontFace(this.loadedName, this.data, {});\n } else {\n const css = {\n weight: this.cssFontInfo.fontWeight\n };\n if (this.cssFontInfo.italicAngle) {\n css.style = `oblique ${this.cssFontInfo.italicAngle}deg`;\n }\n nativeFontFace = new FontFace(this.cssFontInfo.fontFamily, this.data, css);\n }\n this._inspectFont?.(this);\n return nativeFontFace;\n }\n createFontFaceRule() {\n if (!this.data || this.disableFontFace) {\n return null;\n }\n const data = (0, _util.bytesToString)(this.data);\n const url = `url(data:${this.mimetype};base64,${btoa(data)});`;\n let rule;\n if (!this.cssFontInfo) {\n rule = `@font-face {font-family:\"${this.loadedName}\";src:${url}}`;\n } else {\n let css = `font-weight: ${this.cssFontInfo.fontWeight};`;\n if (this.cssFontInfo.italicAngle) {\n css += `font-style: oblique ${this.cssFontInfo.italicAngle}deg;`;\n }\n rule = `@font-face {font-family:\"${this.cssFontInfo.fontFamily}\";${css}src:${url}}`;\n }\n this._inspectFont?.(this, url);\n return rule;\n }\n getPathGenerator(objs, character) {\n if (this.compiledGlyphs[character] !== undefined) {\n return this.compiledGlyphs[character];\n }\n let cmds;\n try {\n cmds = objs.get(this.loadedName + \"_path_\" + character);\n } catch (ex) {\n if (!this.ignoreErrors) {\n throw ex;\n }\n (0, _util.warn)(`getPathGenerator - ignoring character: \"${ex}\".`);\n return this.compiledGlyphs[character] = function (c, size) {};\n }\n if (this.isEvalSupported && _util.FeatureTest.isEvalSupported) {\n const jsBuf = [];\n for (const current of cmds) {\n const args = current.args !== undefined ? current.args.join(\",\") : \"\";\n jsBuf.push(\"c.\", current.cmd, \"(\", args, \");\\n\");\n }\n return this.compiledGlyphs[character] = new Function(\"c\", \"size\", jsBuf.join(\"\"));\n }\n return this.compiledGlyphs[character] = function (c, size) {\n for (const current of cmds) {\n if (current.cmd === \"scale\") {\n current.args = [size, -size];\n }\n c[current.cmd].apply(c, current.args);\n }\n };\n }\n}\nexports.FontFaceObject = FontFaceObject;\n\n/***/ }),\n/* 10 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.NodeStandardFontDataFactory = exports.NodeFilterFactory = exports.NodeCanvasFactory = exports.NodeCMapReaderFactory = void 0;\nvar _base_factory = __w_pdfjs_require__(7);\nvar _util = __w_pdfjs_require__(1);\n;\n;\nconst fetchData = function (url) {\n return new Promise((resolve, reject) => {\n const fs = require(\"fs\");\n fs.readFile(url, (error, data) => {\n if (error || !data) {\n reject(new Error(error));\n return;\n }\n resolve(new Uint8Array(data));\n });\n });\n};\nclass NodeFilterFactory extends _base_factory.BaseFilterFactory {}\nexports.NodeFilterFactory = NodeFilterFactory;\nclass NodeCanvasFactory extends _base_factory.BaseCanvasFactory {\n _createCanvas(width, height) {\n const Canvas = require(\"canvas\");\n return Canvas.createCanvas(width, height);\n }\n}\nexports.NodeCanvasFactory = NodeCanvasFactory;\nclass NodeCMapReaderFactory extends _base_factory.BaseCMapReaderFactory {\n _fetchData(url, compressionType) {\n return fetchData(url).then(data => {\n return {\n cMapData: data,\n compressionType\n };\n });\n }\n}\nexports.NodeCMapReaderFactory = NodeCMapReaderFactory;\nclass NodeStandardFontDataFactory extends _base_factory.BaseStandardFontDataFactory {\n _fetchData(url) {\n return fetchData(url);\n }\n}\nexports.NodeStandardFontDataFactory = NodeStandardFontDataFactory;\n\n/***/ }),\n/* 11 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.CanvasGraphics = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _display_utils = __w_pdfjs_require__(6);\nvar _pattern_helper = __w_pdfjs_require__(12);\nvar _image_utils = __w_pdfjs_require__(13);\nconst MIN_FONT_SIZE = 16;\nconst MAX_FONT_SIZE = 100;\nconst MAX_GROUP_SIZE = 4096;\nconst EXECUTION_TIME = 15;\nconst EXECUTION_STEPS = 10;\nconst MAX_SIZE_TO_COMPILE = 1000;\nconst FULL_CHUNK_HEIGHT = 16;\nfunction mirrorContextOperations(ctx, destCtx) {\n if (ctx._removeMirroring) {\n throw new Error(\"Context is already forwarding operations.\");\n }\n ctx.__originalSave = ctx.save;\n ctx.__originalRestore = ctx.restore;\n ctx.__originalRotate = ctx.rotate;\n ctx.__originalScale = ctx.scale;\n ctx.__originalTranslate = ctx.translate;\n ctx.__originalTransform = ctx.transform;\n ctx.__originalSetTransform = ctx.setTransform;\n ctx.__originalResetTransform = ctx.resetTransform;\n ctx.__originalClip = ctx.clip;\n ctx.__originalMoveTo = ctx.moveTo;\n ctx.__originalLineTo = ctx.lineTo;\n ctx.__originalBezierCurveTo = ctx.bezierCurveTo;\n ctx.__originalRect = ctx.rect;\n ctx.__originalClosePath = ctx.closePath;\n ctx.__originalBeginPath = ctx.beginPath;\n ctx._removeMirroring = () => {\n ctx.save = ctx.__originalSave;\n ctx.restore = ctx.__originalRestore;\n ctx.rotate = ctx.__originalRotate;\n ctx.scale = ctx.__originalScale;\n ctx.translate = ctx.__originalTranslate;\n ctx.transform = ctx.__originalTransform;\n ctx.setTransform = ctx.__originalSetTransform;\n ctx.resetTransform = ctx.__originalResetTransform;\n ctx.clip = ctx.__originalClip;\n ctx.moveTo = ctx.__originalMoveTo;\n ctx.lineTo = ctx.__originalLineTo;\n ctx.bezierCurveTo = ctx.__originalBezierCurveTo;\n ctx.rect = ctx.__originalRect;\n ctx.closePath = ctx.__originalClosePath;\n ctx.beginPath = ctx.__originalBeginPath;\n delete ctx._removeMirroring;\n };\n ctx.save = function ctxSave() {\n destCtx.save();\n this.__originalSave();\n };\n ctx.restore = function ctxRestore() {\n destCtx.restore();\n this.__originalRestore();\n };\n ctx.translate = function ctxTranslate(x, y) {\n destCtx.translate(x, y);\n this.__originalTranslate(x, y);\n };\n ctx.scale = function ctxScale(x, y) {\n destCtx.scale(x, y);\n this.__originalScale(x, y);\n };\n ctx.transform = function ctxTransform(a, b, c, d, e, f) {\n destCtx.transform(a, b, c, d, e, f);\n this.__originalTransform(a, b, c, d, e, f);\n };\n ctx.setTransform = function ctxSetTransform(a, b, c, d, e, f) {\n destCtx.setTransform(a, b, c, d, e, f);\n this.__originalSetTransform(a, b, c, d, e, f);\n };\n ctx.resetTransform = function ctxResetTransform() {\n destCtx.resetTransform();\n this.__originalResetTransform();\n };\n ctx.rotate = function ctxRotate(angle) {\n destCtx.rotate(angle);\n this.__originalRotate(angle);\n };\n ctx.clip = function ctxRotate(rule) {\n destCtx.clip(rule);\n this.__originalClip(rule);\n };\n ctx.moveTo = function (x, y) {\n destCtx.moveTo(x, y);\n this.__originalMoveTo(x, y);\n };\n ctx.lineTo = function (x, y) {\n destCtx.lineTo(x, y);\n this.__originalLineTo(x, y);\n };\n ctx.bezierCurveTo = function (cp1x, cp1y, cp2x, cp2y, x, y) {\n destCtx.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);\n this.__originalBezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);\n };\n ctx.rect = function (x, y, width, height) {\n destCtx.rect(x, y, width, height);\n this.__originalRect(x, y, width, height);\n };\n ctx.closePath = function () {\n destCtx.closePath();\n this.__originalClosePath();\n };\n ctx.beginPath = function () {\n destCtx.beginPath();\n this.__originalBeginPath();\n };\n}\nclass CachedCanvases {\n constructor(canvasFactory) {\n this.canvasFactory = canvasFactory;\n this.cache = Object.create(null);\n }\n getCanvas(id, width, height) {\n let canvasEntry;\n if (this.cache[id] !== undefined) {\n canvasEntry = this.cache[id];\n this.canvasFactory.reset(canvasEntry, width, height);\n } else {\n canvasEntry = this.canvasFactory.create(width, height);\n this.cache[id] = canvasEntry;\n }\n return canvasEntry;\n }\n delete(id) {\n delete this.cache[id];\n }\n clear() {\n for (const id in this.cache) {\n const canvasEntry = this.cache[id];\n this.canvasFactory.destroy(canvasEntry);\n delete this.cache[id];\n }\n }\n}\nfunction drawImageAtIntegerCoords(ctx, srcImg, srcX, srcY, srcW, srcH, destX, destY, destW, destH) {\n const [a, b, c, d, tx, ty] = (0, _display_utils.getCurrentTransform)(ctx);\n if (b === 0 && c === 0) {\n const tlX = destX * a + tx;\n const rTlX = Math.round(tlX);\n const tlY = destY * d + ty;\n const rTlY = Math.round(tlY);\n const brX = (destX + destW) * a + tx;\n const rWidth = Math.abs(Math.round(brX) - rTlX) || 1;\n const brY = (destY + destH) * d + ty;\n const rHeight = Math.abs(Math.round(brY) - rTlY) || 1;\n ctx.setTransform(Math.sign(a), 0, 0, Math.sign(d), rTlX, rTlY);\n ctx.drawImage(srcImg, srcX, srcY, srcW, srcH, 0, 0, rWidth, rHeight);\n ctx.setTransform(a, b, c, d, tx, ty);\n return [rWidth, rHeight];\n }\n if (a === 0 && d === 0) {\n const tlX = destY * c + tx;\n const rTlX = Math.round(tlX);\n const tlY = destX * b + ty;\n const rTlY = Math.round(tlY);\n const brX = (destY + destH) * c + tx;\n const rWidth = Math.abs(Math.round(brX) - rTlX) || 1;\n const brY = (destX + destW) * b + ty;\n const rHeight = Math.abs(Math.round(brY) - rTlY) || 1;\n ctx.setTransform(0, Math.sign(b), Math.sign(c), 0, rTlX, rTlY);\n ctx.drawImage(srcImg, srcX, srcY, srcW, srcH, 0, 0, rHeight, rWidth);\n ctx.setTransform(a, b, c, d, tx, ty);\n return [rHeight, rWidth];\n }\n ctx.drawImage(srcImg, srcX, srcY, srcW, srcH, destX, destY, destW, destH);\n const scaleX = Math.hypot(a, b);\n const scaleY = Math.hypot(c, d);\n return [scaleX * destW, scaleY * destH];\n}\nfunction compileType3Glyph(imgData) {\n const {\n width,\n height\n } = imgData;\n if (width > MAX_SIZE_TO_COMPILE || height > MAX_SIZE_TO_COMPILE) {\n return null;\n }\n const POINT_TO_PROCESS_LIMIT = 1000;\n const POINT_TYPES = new Uint8Array([0, 2, 4, 0, 1, 0, 5, 4, 8, 10, 0, 8, 0, 2, 1, 0]);\n const width1 = width + 1;\n let points = new Uint8Array(width1 * (height + 1));\n let i, j, j0;\n const lineSize = width + 7 & ~7;\n let data = new Uint8Array(lineSize * height),\n pos = 0;\n for (const elem of imgData.data) {\n let mask = 128;\n while (mask > 0) {\n data[pos++] = elem & mask ? 0 : 255;\n mask >>= 1;\n }\n }\n let count = 0;\n pos = 0;\n if (data[pos] !== 0) {\n points[0] = 1;\n ++count;\n }\n for (j = 1; j < width; j++) {\n if (data[pos] !== data[pos + 1]) {\n points[j] = data[pos] ? 2 : 1;\n ++count;\n }\n pos++;\n }\n if (data[pos] !== 0) {\n points[j] = 2;\n ++count;\n }\n for (i = 1; i < height; i++) {\n pos = i * lineSize;\n j0 = i * width1;\n if (data[pos - lineSize] !== data[pos]) {\n points[j0] = data[pos] ? 1 : 8;\n ++count;\n }\n let sum = (data[pos] ? 4 : 0) + (data[pos - lineSize] ? 8 : 0);\n for (j = 1; j < width; j++) {\n sum = (sum >> 2) + (data[pos + 1] ? 4 : 0) + (data[pos - lineSize + 1] ? 8 : 0);\n if (POINT_TYPES[sum]) {\n points[j0 + j] = POINT_TYPES[sum];\n ++count;\n }\n pos++;\n }\n if (data[pos - lineSize] !== data[pos]) {\n points[j0 + j] = data[pos] ? 2 : 4;\n ++count;\n }\n if (count > POINT_TO_PROCESS_LIMIT) {\n return null;\n }\n }\n pos = lineSize * (height - 1);\n j0 = i * width1;\n if (data[pos] !== 0) {\n points[j0] = 8;\n ++count;\n }\n for (j = 1; j < width; j++) {\n if (data[pos] !== data[pos + 1]) {\n points[j0 + j] = data[pos] ? 4 : 8;\n ++count;\n }\n pos++;\n }\n if (data[pos] !== 0) {\n points[j0 + j] = 4;\n ++count;\n }\n if (count > POINT_TO_PROCESS_LIMIT) {\n return null;\n }\n const steps = new Int32Array([0, width1, -1, 0, -width1, 0, 0, 0, 1]);\n const path = new Path2D();\n for (i = 0; count && i <= height; i++) {\n let p = i * width1;\n const end = p + width;\n while (p < end && !points[p]) {\n p++;\n }\n if (p === end) {\n continue;\n }\n path.moveTo(p % width1, i);\n const p0 = p;\n let type = points[p];\n do {\n const step = steps[type];\n do {\n p += step;\n } while (!points[p]);\n const pp = points[p];\n if (pp !== 5 && pp !== 10) {\n type = pp;\n points[p] = 0;\n } else {\n type = pp & 0x33 * type >> 4;\n points[p] &= type >> 2 | type << 2;\n }\n path.lineTo(p % width1, p / width1 | 0);\n if (!points[p]) {\n --count;\n }\n } while (p0 !== p);\n --i;\n }\n data = null;\n points = null;\n const drawOutline = function (c) {\n c.save();\n c.scale(1 / width, -1 / height);\n c.translate(0, -height);\n c.fill(path);\n c.beginPath();\n c.restore();\n };\n return drawOutline;\n}\nclass CanvasExtraState {\n constructor(width, height) {\n this.alphaIsShape = false;\n this.fontSize = 0;\n this.fontSizeScale = 1;\n this.textMatrix = _util.IDENTITY_MATRIX;\n this.textMatrixScale = 1;\n this.fontMatrix = _util.FONT_IDENTITY_MATRIX;\n this.leading = 0;\n this.x = 0;\n this.y = 0;\n this.lineX = 0;\n this.lineY = 0;\n this.charSpacing = 0;\n this.wordSpacing = 0;\n this.textHScale = 1;\n this.textRenderingMode = _util.TextRenderingMode.FILL;\n this.textRise = 0;\n this.fillColor = \"#000000\";\n this.strokeColor = \"#000000\";\n this.patternFill = false;\n this.fillAlpha = 1;\n this.strokeAlpha = 1;\n this.lineWidth = 1;\n this.activeSMask = null;\n this.transferMaps = \"none\";\n this.startNewPathAndClipBox([0, 0, width, height]);\n }\n clone() {\n const clone = Object.create(this);\n clone.clipBox = this.clipBox.slice();\n return clone;\n }\n setCurrentPoint(x, y) {\n this.x = x;\n this.y = y;\n }\n updatePathMinMax(transform, x, y) {\n [x, y] = _util.Util.applyTransform([x, y], transform);\n this.minX = Math.min(this.minX, x);\n this.minY = Math.min(this.minY, y);\n this.maxX = Math.max(this.maxX, x);\n this.maxY = Math.max(this.maxY, y);\n }\n updateRectMinMax(transform, rect) {\n const p1 = _util.Util.applyTransform(rect, transform);\n const p2 = _util.Util.applyTransform(rect.slice(2), transform);\n this.minX = Math.min(this.minX, p1[0], p2[0]);\n this.minY = Math.min(this.minY, p1[1], p2[1]);\n this.maxX = Math.max(this.maxX, p1[0], p2[0]);\n this.maxY = Math.max(this.maxY, p1[1], p2[1]);\n }\n updateScalingPathMinMax(transform, minMax) {\n _util.Util.scaleMinMax(transform, minMax);\n this.minX = Math.min(this.minX, minMax[0]);\n this.maxX = Math.max(this.maxX, minMax[1]);\n this.minY = Math.min(this.minY, minMax[2]);\n this.maxY = Math.max(this.maxY, minMax[3]);\n }\n updateCurvePathMinMax(transform, x0, y0, x1, y1, x2, y2, x3, y3, minMax) {\n const box = _util.Util.bezierBoundingBox(x0, y0, x1, y1, x2, y2, x3, y3);\n if (minMax) {\n minMax[0] = Math.min(minMax[0], box[0], box[2]);\n minMax[1] = Math.max(minMax[1], box[0], box[2]);\n minMax[2] = Math.min(minMax[2], box[1], box[3]);\n minMax[3] = Math.max(minMax[3], box[1], box[3]);\n return;\n }\n this.updateRectMinMax(transform, box);\n }\n getPathBoundingBox(pathType = _pattern_helper.PathType.FILL, transform = null) {\n const box = [this.minX, this.minY, this.maxX, this.maxY];\n if (pathType === _pattern_helper.PathType.STROKE) {\n if (!transform) {\n (0, _util.unreachable)(\"Stroke bounding box must include transform.\");\n }\n const scale = _util.Util.singularValueDecompose2dScale(transform);\n const xStrokePad = scale[0] * this.lineWidth / 2;\n const yStrokePad = scale[1] * this.lineWidth / 2;\n box[0] -= xStrokePad;\n box[1] -= yStrokePad;\n box[2] += xStrokePad;\n box[3] += yStrokePad;\n }\n return box;\n }\n updateClipFromPath() {\n const intersect = _util.Util.intersect(this.clipBox, this.getPathBoundingBox());\n this.startNewPathAndClipBox(intersect || [0, 0, 0, 0]);\n }\n isEmptyClip() {\n return this.minX === Infinity;\n }\n startNewPathAndClipBox(box) {\n this.clipBox = box;\n this.minX = Infinity;\n this.minY = Infinity;\n this.maxX = 0;\n this.maxY = 0;\n }\n getClippedPathBoundingBox(pathType = _pattern_helper.PathType.FILL, transform = null) {\n return _util.Util.intersect(this.clipBox, this.getPathBoundingBox(pathType, transform));\n }\n}\nfunction putBinaryImageData(ctx, imgData) {\n if (typeof ImageData !== \"undefined\" && imgData instanceof ImageData) {\n ctx.putImageData(imgData, 0, 0);\n return;\n }\n const height = imgData.height,\n width = imgData.width;\n const partialChunkHeight = height % FULL_CHUNK_HEIGHT;\n const fullChunks = (height - partialChunkHeight) / FULL_CHUNK_HEIGHT;\n const totalChunks = partialChunkHeight === 0 ? fullChunks : fullChunks + 1;\n const chunkImgData = ctx.createImageData(width, FULL_CHUNK_HEIGHT);\n let srcPos = 0,\n destPos;\n const src = imgData.data;\n const dest = chunkImgData.data;\n let i, j, thisChunkHeight, elemsInThisChunk;\n if (imgData.kind === _util.ImageKind.GRAYSCALE_1BPP) {\n const srcLength = src.byteLength;\n const dest32 = new Uint32Array(dest.buffer, 0, dest.byteLength >> 2);\n const dest32DataLength = dest32.length;\n const fullSrcDiff = width + 7 >> 3;\n const white = 0xffffffff;\n const black = _util.FeatureTest.isLittleEndian ? 0xff000000 : 0x000000ff;\n for (i = 0; i < totalChunks; i++) {\n thisChunkHeight = i < fullChunks ? FULL_CHUNK_HEIGHT : partialChunkHeight;\n destPos = 0;\n for (j = 0; j < thisChunkHeight; j++) {\n const srcDiff = srcLength - srcPos;\n let k = 0;\n const kEnd = srcDiff > fullSrcDiff ? width : srcDiff * 8 - 7;\n const kEndUnrolled = kEnd & ~7;\n let mask = 0;\n let srcByte = 0;\n for (; k < kEndUnrolled; k += 8) {\n srcByte = src[srcPos++];\n dest32[destPos++] = srcByte & 128 ? white : black;\n dest32[destPos++] = srcByte & 64 ? white : black;\n dest32[destPos++] = srcByte & 32 ? white : black;\n dest32[destPos++] = srcByte & 16 ? white : black;\n dest32[destPos++] = srcByte & 8 ? white : black;\n dest32[destPos++] = srcByte & 4 ? white : black;\n dest32[destPos++] = srcByte & 2 ? white : black;\n dest32[destPos++] = srcByte & 1 ? white : black;\n }\n for (; k < kEnd; k++) {\n if (mask === 0) {\n srcByte = src[srcPos++];\n mask = 128;\n }\n dest32[destPos++] = srcByte & mask ? white : black;\n mask >>= 1;\n }\n }\n while (destPos < dest32DataLength) {\n dest32[destPos++] = 0;\n }\n ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT);\n }\n } else if (imgData.kind === _util.ImageKind.RGBA_32BPP) {\n j = 0;\n elemsInThisChunk = width * FULL_CHUNK_HEIGHT * 4;\n for (i = 0; i < fullChunks; i++) {\n dest.set(src.subarray(srcPos, srcPos + elemsInThisChunk));\n srcPos += elemsInThisChunk;\n ctx.putImageData(chunkImgData, 0, j);\n j += FULL_CHUNK_HEIGHT;\n }\n if (i < totalChunks) {\n elemsInThisChunk = width * partialChunkHeight * 4;\n dest.set(src.subarray(srcPos, srcPos + elemsInThisChunk));\n ctx.putImageData(chunkImgData, 0, j);\n }\n } else if (imgData.kind === _util.ImageKind.RGB_24BPP) {\n thisChunkHeight = FULL_CHUNK_HEIGHT;\n elemsInThisChunk = width * thisChunkHeight;\n for (i = 0; i < totalChunks; i++) {\n if (i >= fullChunks) {\n thisChunkHeight = partialChunkHeight;\n elemsInThisChunk = width * thisChunkHeight;\n }\n destPos = 0;\n for (j = elemsInThisChunk; j--;) {\n dest[destPos++] = src[srcPos++];\n dest[destPos++] = src[srcPos++];\n dest[destPos++] = src[srcPos++];\n dest[destPos++] = 255;\n }\n ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT);\n }\n } else {\n throw new Error(`bad image kind: ${imgData.kind}`);\n }\n}\nfunction putBinaryImageMask(ctx, imgData) {\n if (imgData.bitmap) {\n ctx.drawImage(imgData.bitmap, 0, 0);\n return;\n }\n const height = imgData.height,\n width = imgData.width;\n const partialChunkHeight = height % FULL_CHUNK_HEIGHT;\n const fullChunks = (height - partialChunkHeight) / FULL_CHUNK_HEIGHT;\n const totalChunks = partialChunkHeight === 0 ? fullChunks : fullChunks + 1;\n const chunkImgData = ctx.createImageData(width, FULL_CHUNK_HEIGHT);\n let srcPos = 0;\n const src = imgData.data;\n const dest = chunkImgData.data;\n for (let i = 0; i < totalChunks; i++) {\n const thisChunkHeight = i < fullChunks ? FULL_CHUNK_HEIGHT : partialChunkHeight;\n ({\n srcPos\n } = (0, _image_utils.convertBlackAndWhiteToRGBA)({\n src,\n srcPos,\n dest,\n width,\n height: thisChunkHeight,\n nonBlackColor: 0\n }));\n ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT);\n }\n}\nfunction copyCtxState(sourceCtx, destCtx) {\n const properties = [\"strokeStyle\", \"fillStyle\", \"fillRule\", \"globalAlpha\", \"lineWidth\", \"lineCap\", \"lineJoin\", \"miterLimit\", \"globalCompositeOperation\", \"font\", \"filter\"];\n for (const property of properties) {\n if (sourceCtx[property] !== undefined) {\n destCtx[property] = sourceCtx[property];\n }\n }\n if (sourceCtx.setLineDash !== undefined) {\n destCtx.setLineDash(sourceCtx.getLineDash());\n destCtx.lineDashOffset = sourceCtx.lineDashOffset;\n }\n}\nfunction resetCtxToDefault(ctx) {\n ctx.strokeStyle = ctx.fillStyle = \"#000000\";\n ctx.fillRule = \"nonzero\";\n ctx.globalAlpha = 1;\n ctx.lineWidth = 1;\n ctx.lineCap = \"butt\";\n ctx.lineJoin = \"miter\";\n ctx.miterLimit = 10;\n ctx.globalCompositeOperation = \"source-over\";\n ctx.font = \"10px sans-serif\";\n if (ctx.setLineDash !== undefined) {\n ctx.setLineDash([]);\n ctx.lineDashOffset = 0;\n }\n if (!_util.isNodeJS) {\n const {\n filter\n } = ctx;\n if (filter !== \"none\" && filter !== \"\") {\n ctx.filter = \"none\";\n }\n }\n}\nfunction composeSMaskBackdrop(bytes, r0, g0, b0) {\n const length = bytes.length;\n for (let i = 3; i < length; i += 4) {\n const alpha = bytes[i];\n if (alpha === 0) {\n bytes[i - 3] = r0;\n bytes[i - 2] = g0;\n bytes[i - 1] = b0;\n } else if (alpha < 255) {\n const alpha_ = 255 - alpha;\n bytes[i - 3] = bytes[i - 3] * alpha + r0 * alpha_ >> 8;\n bytes[i - 2] = bytes[i - 2] * alpha + g0 * alpha_ >> 8;\n bytes[i - 1] = bytes[i - 1] * alpha + b0 * alpha_ >> 8;\n }\n }\n}\nfunction composeSMaskAlpha(maskData, layerData, transferMap) {\n const length = maskData.length;\n const scale = 1 / 255;\n for (let i = 3; i < length; i += 4) {\n const alpha = transferMap ? transferMap[maskData[i]] : maskData[i];\n layerData[i] = layerData[i] * alpha * scale | 0;\n }\n}\nfunction composeSMaskLuminosity(maskData, layerData, transferMap) {\n const length = maskData.length;\n for (let i = 3; i < length; i += 4) {\n const y = maskData[i - 3] * 77 + maskData[i - 2] * 152 + maskData[i - 1] * 28;\n layerData[i] = transferMap ? layerData[i] * transferMap[y >> 8] >> 8 : layerData[i] * y >> 16;\n }\n}\nfunction genericComposeSMask(maskCtx, layerCtx, width, height, subtype, backdrop, transferMap, layerOffsetX, layerOffsetY, maskOffsetX, maskOffsetY) {\n const hasBackdrop = !!backdrop;\n const r0 = hasBackdrop ? backdrop[0] : 0;\n const g0 = hasBackdrop ? backdrop[1] : 0;\n const b0 = hasBackdrop ? backdrop[2] : 0;\n const composeFn = subtype === \"Luminosity\" ? composeSMaskLuminosity : composeSMaskAlpha;\n const PIXELS_TO_PROCESS = 1048576;\n const chunkSize = Math.min(height, Math.ceil(PIXELS_TO_PROCESS / width));\n for (let row = 0; row < height; row += chunkSize) {\n const chunkHeight = Math.min(chunkSize, height - row);\n const maskData = maskCtx.getImageData(layerOffsetX - maskOffsetX, row + (layerOffsetY - maskOffsetY), width, chunkHeight);\n const layerData = layerCtx.getImageData(layerOffsetX, row + layerOffsetY, width, chunkHeight);\n if (hasBackdrop) {\n composeSMaskBackdrop(maskData.data, r0, g0, b0);\n }\n composeFn(maskData.data, layerData.data, transferMap);\n layerCtx.putImageData(layerData, layerOffsetX, row + layerOffsetY);\n }\n}\nfunction composeSMask(ctx, smask, layerCtx, layerBox) {\n const layerOffsetX = layerBox[0];\n const layerOffsetY = layerBox[1];\n const layerWidth = layerBox[2] - layerOffsetX;\n const layerHeight = layerBox[3] - layerOffsetY;\n if (layerWidth === 0 || layerHeight === 0) {\n return;\n }\n genericComposeSMask(smask.context, layerCtx, layerWidth, layerHeight, smask.subtype, smask.backdrop, smask.transferMap, layerOffsetX, layerOffsetY, smask.offsetX, smask.offsetY);\n ctx.save();\n ctx.globalAlpha = 1;\n ctx.globalCompositeOperation = \"source-over\";\n ctx.setTransform(1, 0, 0, 1, 0, 0);\n ctx.drawImage(layerCtx.canvas, 0, 0);\n ctx.restore();\n}\nfunction getImageSmoothingEnabled(transform, interpolate) {\n const scale = _util.Util.singularValueDecompose2dScale(transform);\n scale[0] = Math.fround(scale[0]);\n scale[1] = Math.fround(scale[1]);\n const actualScale = Math.fround((globalThis.devicePixelRatio || 1) * _display_utils.PixelsPerInch.PDF_TO_CSS_UNITS);\n if (interpolate !== undefined) {\n return interpolate;\n } else if (scale[0] <= actualScale || scale[1] <= actualScale) {\n return true;\n }\n return false;\n}\nconst LINE_CAP_STYLES = [\"butt\", \"round\", \"square\"];\nconst LINE_JOIN_STYLES = [\"miter\", \"round\", \"bevel\"];\nconst NORMAL_CLIP = {};\nconst EO_CLIP = {};\nclass CanvasGraphics {\n constructor(canvasCtx, commonObjs, objs, canvasFactory, filterFactory, {\n optionalContentConfig,\n markedContentStack = null\n }, annotationCanvasMap, pageColors) {\n this.ctx = canvasCtx;\n this.current = new CanvasExtraState(this.ctx.canvas.width, this.ctx.canvas.height);\n this.stateStack = [];\n this.pendingClip = null;\n this.pendingEOFill = false;\n this.res = null;\n this.xobjs = null;\n this.commonObjs = commonObjs;\n this.objs = objs;\n this.canvasFactory = canvasFactory;\n this.filterFactory = filterFactory;\n this.groupStack = [];\n this.processingType3 = null;\n this.baseTransform = null;\n this.baseTransformStack = [];\n this.groupLevel = 0;\n this.smaskStack = [];\n this.smaskCounter = 0;\n this.tempSMask = null;\n this.suspendedCtx = null;\n this.contentVisible = true;\n this.markedContentStack = markedContentStack || [];\n this.optionalContentConfig = optionalContentConfig;\n this.cachedCanvases = new CachedCanvases(this.canvasFactory);\n this.cachedPatterns = new Map();\n this.annotationCanvasMap = annotationCanvasMap;\n this.viewportScale = 1;\n this.outputScaleX = 1;\n this.outputScaleY = 1;\n this.pageColors = pageColors;\n this._cachedScaleForStroking = [-1, 0];\n this._cachedGetSinglePixelWidth = null;\n this._cachedBitmapsMap = new Map();\n }\n getObject(data, fallback = null) {\n if (typeof data === \"string\") {\n return data.startsWith(\"g_\") ? this.commonObjs.get(data) : this.objs.get(data);\n }\n return fallback;\n }\n beginDrawing({\n transform,\n viewport,\n transparency = false,\n background = null\n }) {\n const width = this.ctx.canvas.width;\n const height = this.ctx.canvas.height;\n const savedFillStyle = this.ctx.fillStyle;\n this.ctx.fillStyle = background || \"#ffffff\";\n this.ctx.fillRect(0, 0, width, height);\n this.ctx.fillStyle = savedFillStyle;\n if (transparency) {\n const transparentCanvas = this.cachedCanvases.getCanvas(\"transparent\", width, height);\n this.compositeCtx = this.ctx;\n this.transparentCanvas = transparentCanvas.canvas;\n this.ctx = transparentCanvas.context;\n this.ctx.save();\n this.ctx.transform(...(0, _display_utils.getCurrentTransform)(this.compositeCtx));\n }\n this.ctx.save();\n resetCtxToDefault(this.ctx);\n if (transform) {\n this.ctx.transform(...transform);\n this.outputScaleX = transform[0];\n this.outputScaleY = transform[0];\n }\n this.ctx.transform(...viewport.transform);\n this.viewportScale = viewport.scale;\n this.baseTransform = (0, _display_utils.getCurrentTransform)(this.ctx);\n }\n executeOperatorList(operatorList, executionStartIdx, continueCallback, stepper) {\n const argsArray = operatorList.argsArray;\n const fnArray = operatorList.fnArray;\n let i = executionStartIdx || 0;\n const argsArrayLen = argsArray.length;\n if (argsArrayLen === i) {\n return i;\n }\n const chunkOperations = argsArrayLen - i > EXECUTION_STEPS && typeof continueCallback === \"function\";\n const endTime = chunkOperations ? Date.now() + EXECUTION_TIME : 0;\n let steps = 0;\n const commonObjs = this.commonObjs;\n const objs = this.objs;\n let fnId;\n while (true) {\n if (stepper !== undefined && i === stepper.nextBreakPoint) {\n stepper.breakIt(i, continueCallback);\n return i;\n }\n fnId = fnArray[i];\n if (fnId !== _util.OPS.dependency) {\n this[fnId].apply(this, argsArray[i]);\n } else {\n for (const depObjId of argsArray[i]) {\n const objsPool = depObjId.startsWith(\"g_\") ? commonObjs : objs;\n if (!objsPool.has(depObjId)) {\n objsPool.get(depObjId, continueCallback);\n return i;\n }\n }\n }\n i++;\n if (i === argsArrayLen) {\n return i;\n }\n if (chunkOperations && ++steps > EXECUTION_STEPS) {\n if (Date.now() > endTime) {\n continueCallback();\n return i;\n }\n steps = 0;\n }\n }\n }\n #restoreInitialState() {\n while (this.stateStack.length || this.inSMaskMode) {\n this.restore();\n }\n this.ctx.restore();\n if (this.transparentCanvas) {\n this.ctx = this.compositeCtx;\n this.ctx.save();\n this.ctx.setTransform(1, 0, 0, 1, 0, 0);\n this.ctx.drawImage(this.transparentCanvas, 0, 0);\n this.ctx.restore();\n this.transparentCanvas = null;\n }\n }\n endDrawing() {\n this.#restoreInitialState();\n this.cachedCanvases.clear();\n this.cachedPatterns.clear();\n for (const cache of this._cachedBitmapsMap.values()) {\n for (const canvas of cache.values()) {\n if (typeof HTMLCanvasElement !== \"undefined\" && canvas instanceof HTMLCanvasElement) {\n canvas.width = canvas.height = 0;\n }\n }\n cache.clear();\n }\n this._cachedBitmapsMap.clear();\n this.#drawFilter();\n }\n #drawFilter() {\n if (this.pageColors) {\n const hcmFilterId = this.filterFactory.addHCMFilter(this.pageColors.foreground, this.pageColors.background);\n if (hcmFilterId !== \"none\") {\n const savedFilter = this.ctx.filter;\n this.ctx.filter = hcmFilterId;\n this.ctx.drawImage(this.ctx.canvas, 0, 0);\n this.ctx.filter = savedFilter;\n }\n }\n }\n _scaleImage(img, inverseTransform) {\n const width = img.width;\n const height = img.height;\n let widthScale = Math.max(Math.hypot(inverseTransform[0], inverseTransform[1]), 1);\n let heightScale = Math.max(Math.hypot(inverseTransform[2], inverseTransform[3]), 1);\n let paintWidth = width,\n paintHeight = height;\n let tmpCanvasId = \"prescale1\";\n let tmpCanvas, tmpCtx;\n while (widthScale > 2 && paintWidth > 1 || heightScale > 2 && paintHeight > 1) {\n let newWidth = paintWidth,\n newHeight = paintHeight;\n if (widthScale > 2 && paintWidth > 1) {\n newWidth = paintWidth >= 16384 ? Math.floor(paintWidth / 2) - 1 || 1 : Math.ceil(paintWidth / 2);\n widthScale /= paintWidth / newWidth;\n }\n if (heightScale > 2 && paintHeight > 1) {\n newHeight = paintHeight >= 16384 ? Math.floor(paintHeight / 2) - 1 || 1 : Math.ceil(paintHeight) / 2;\n heightScale /= paintHeight / newHeight;\n }\n tmpCanvas = this.cachedCanvases.getCanvas(tmpCanvasId, newWidth, newHeight);\n tmpCtx = tmpCanvas.context;\n tmpCtx.clearRect(0, 0, newWidth, newHeight);\n tmpCtx.drawImage(img, 0, 0, paintWidth, paintHeight, 0, 0, newWidth, newHeight);\n img = tmpCanvas.canvas;\n paintWidth = newWidth;\n paintHeight = newHeight;\n tmpCanvasId = tmpCanvasId === \"prescale1\" ? \"prescale2\" : \"prescale1\";\n }\n return {\n img,\n paintWidth,\n paintHeight\n };\n }\n _createMaskCanvas(img) {\n const ctx = this.ctx;\n const {\n width,\n height\n } = img;\n const fillColor = this.current.fillColor;\n const isPatternFill = this.current.patternFill;\n const currentTransform = (0, _display_utils.getCurrentTransform)(ctx);\n let cache, cacheKey, scaled, maskCanvas;\n if ((img.bitmap || img.data) && img.count > 1) {\n const mainKey = img.bitmap || img.data.buffer;\n cacheKey = JSON.stringify(isPatternFill ? currentTransform : [currentTransform.slice(0, 4), fillColor]);\n cache = this._cachedBitmapsMap.get(mainKey);\n if (!cache) {\n cache = new Map();\n this._cachedBitmapsMap.set(mainKey, cache);\n }\n const cachedImage = cache.get(cacheKey);\n if (cachedImage && !isPatternFill) {\n const offsetX = Math.round(Math.min(currentTransform[0], currentTransform[2]) + currentTransform[4]);\n const offsetY = Math.round(Math.min(currentTransform[1], currentTransform[3]) + currentTransform[5]);\n return {\n canvas: cachedImage,\n offsetX,\n offsetY\n };\n }\n scaled = cachedImage;\n }\n if (!scaled) {\n maskCanvas = this.cachedCanvases.getCanvas(\"maskCanvas\", width, height);\n putBinaryImageMask(maskCanvas.context, img);\n }\n let maskToCanvas = _util.Util.transform(currentTransform, [1 / width, 0, 0, -1 / height, 0, 0]);\n maskToCanvas = _util.Util.transform(maskToCanvas, [1, 0, 0, 1, 0, -height]);\n const cord1 = _util.Util.applyTransform([0, 0], maskToCanvas);\n const cord2 = _util.Util.applyTransform([width, height], maskToCanvas);\n const rect = _util.Util.normalizeRect([cord1[0], cord1[1], cord2[0], cord2[1]]);\n const drawnWidth = Math.round(rect[2] - rect[0]) || 1;\n const drawnHeight = Math.round(rect[3] - rect[1]) || 1;\n const fillCanvas = this.cachedCanvases.getCanvas(\"fillCanvas\", drawnWidth, drawnHeight);\n const fillCtx = fillCanvas.context;\n const offsetX = Math.min(cord1[0], cord2[0]);\n const offsetY = Math.min(cord1[1], cord2[1]);\n fillCtx.translate(-offsetX, -offsetY);\n fillCtx.transform(...maskToCanvas);\n if (!scaled) {\n scaled = this._scaleImage(maskCanvas.canvas, (0, _display_utils.getCurrentTransformInverse)(fillCtx));\n scaled = scaled.img;\n if (cache && isPatternFill) {\n cache.set(cacheKey, scaled);\n }\n }\n fillCtx.imageSmoothingEnabled = getImageSmoothingEnabled((0, _display_utils.getCurrentTransform)(fillCtx), img.interpolate);\n drawImageAtIntegerCoords(fillCtx, scaled, 0, 0, scaled.width, scaled.height, 0, 0, width, height);\n fillCtx.globalCompositeOperation = \"source-in\";\n const inverse = _util.Util.transform((0, _display_utils.getCurrentTransformInverse)(fillCtx), [1, 0, 0, 1, -offsetX, -offsetY]);\n fillCtx.fillStyle = isPatternFill ? fillColor.getPattern(ctx, this, inverse, _pattern_helper.PathType.FILL) : fillColor;\n fillCtx.fillRect(0, 0, width, height);\n if (cache && !isPatternFill) {\n this.cachedCanvases.delete(\"fillCanvas\");\n cache.set(cacheKey, fillCanvas.canvas);\n }\n return {\n canvas: fillCanvas.canvas,\n offsetX: Math.round(offsetX),\n offsetY: Math.round(offsetY)\n };\n }\n setLineWidth(width) {\n if (width !== this.current.lineWidth) {\n this._cachedScaleForStroking[0] = -1;\n }\n this.current.lineWidth = width;\n this.ctx.lineWidth = width;\n }\n setLineCap(style) {\n this.ctx.lineCap = LINE_CAP_STYLES[style];\n }\n setLineJoin(style) {\n this.ctx.lineJoin = LINE_JOIN_STYLES[style];\n }\n setMiterLimit(limit) {\n this.ctx.miterLimit = limit;\n }\n setDash(dashArray, dashPhase) {\n const ctx = this.ctx;\n if (ctx.setLineDash !== undefined) {\n ctx.setLineDash(dashArray);\n ctx.lineDashOffset = dashPhase;\n }\n }\n setRenderingIntent(intent) {}\n setFlatness(flatness) {}\n setGState(states) {\n for (const [key, value] of states) {\n switch (key) {\n case \"LW\":\n this.setLineWidth(value);\n break;\n case \"LC\":\n this.setLineCap(value);\n break;\n case \"LJ\":\n this.setLineJoin(value);\n break;\n case \"ML\":\n this.setMiterLimit(value);\n break;\n case \"D\":\n this.setDash(value[0], value[1]);\n break;\n case \"RI\":\n this.setRenderingIntent(value);\n break;\n case \"FL\":\n this.setFlatness(value);\n break;\n case \"Font\":\n this.setFont(value[0], value[1]);\n break;\n case \"CA\":\n this.current.strokeAlpha = value;\n break;\n case \"ca\":\n this.current.fillAlpha = value;\n this.ctx.globalAlpha = value;\n break;\n case \"BM\":\n this.ctx.globalCompositeOperation = value;\n break;\n case \"SMask\":\n this.current.activeSMask = value ? this.tempSMask : null;\n this.tempSMask = null;\n this.checkSMaskState();\n break;\n case \"TR\":\n this.ctx.filter = this.current.transferMaps = this.filterFactory.addFilter(value);\n break;\n }\n }\n }\n get inSMaskMode() {\n return !!this.suspendedCtx;\n }\n checkSMaskState() {\n const inSMaskMode = this.inSMaskMode;\n if (this.current.activeSMask && !inSMaskMode) {\n this.beginSMaskMode();\n } else if (!this.current.activeSMask && inSMaskMode) {\n this.endSMaskMode();\n }\n }\n beginSMaskMode() {\n if (this.inSMaskMode) {\n throw new Error(\"beginSMaskMode called while already in smask mode\");\n }\n const drawnWidth = this.ctx.canvas.width;\n const drawnHeight = this.ctx.canvas.height;\n const cacheId = \"smaskGroupAt\" + this.groupLevel;\n const scratchCanvas = this.cachedCanvases.getCanvas(cacheId, drawnWidth, drawnHeight);\n this.suspendedCtx = this.ctx;\n this.ctx = scratchCanvas.context;\n const ctx = this.ctx;\n ctx.setTransform(...(0, _display_utils.getCurrentTransform)(this.suspendedCtx));\n copyCtxState(this.suspendedCtx, ctx);\n mirrorContextOperations(ctx, this.suspendedCtx);\n this.setGState([[\"BM\", \"source-over\"], [\"ca\", 1], [\"CA\", 1]]);\n }\n endSMaskMode() {\n if (!this.inSMaskMode) {\n throw new Error(\"endSMaskMode called while not in smask mode\");\n }\n this.ctx._removeMirroring();\n copyCtxState(this.ctx, this.suspendedCtx);\n this.ctx = this.suspendedCtx;\n this.suspendedCtx = null;\n }\n compose(dirtyBox) {\n if (!this.current.activeSMask) {\n return;\n }\n if (!dirtyBox) {\n dirtyBox = [0, 0, this.ctx.canvas.width, this.ctx.canvas.height];\n } else {\n dirtyBox[0] = Math.floor(dirtyBox[0]);\n dirtyBox[1] = Math.floor(dirtyBox[1]);\n dirtyBox[2] = Math.ceil(dirtyBox[2]);\n dirtyBox[3] = Math.ceil(dirtyBox[3]);\n }\n const smask = this.current.activeSMask;\n const suspendedCtx = this.suspendedCtx;\n composeSMask(suspendedCtx, smask, this.ctx, dirtyBox);\n this.ctx.save();\n this.ctx.setTransform(1, 0, 0, 1, 0, 0);\n this.ctx.clearRect(0, 0, this.ctx.canvas.width, this.ctx.canvas.height);\n this.ctx.restore();\n }\n save() {\n if (this.inSMaskMode) {\n copyCtxState(this.ctx, this.suspendedCtx);\n this.suspendedCtx.save();\n } else {\n this.ctx.save();\n }\n const old = this.current;\n this.stateStack.push(old);\n this.current = old.clone();\n }\n restore() {\n if (this.stateStack.length === 0 && this.inSMaskMode) {\n this.endSMaskMode();\n }\n if (this.stateStack.length !== 0) {\n this.current = this.stateStack.pop();\n if (this.inSMaskMode) {\n this.suspendedCtx.restore();\n copyCtxState(this.suspendedCtx, this.ctx);\n } else {\n this.ctx.restore();\n }\n this.checkSMaskState();\n this.pendingClip = null;\n this._cachedScaleForStroking[0] = -1;\n this._cachedGetSinglePixelWidth = null;\n }\n }\n transform(a, b, c, d, e, f) {\n this.ctx.transform(a, b, c, d, e, f);\n this._cachedScaleForStroking[0] = -1;\n this._cachedGetSinglePixelWidth = null;\n }\n constructPath(ops, args, minMax) {\n const ctx = this.ctx;\n const current = this.current;\n let x = current.x,\n y = current.y;\n let startX, startY;\n const currentTransform = (0, _display_utils.getCurrentTransform)(ctx);\n const isScalingMatrix = currentTransform[0] === 0 && currentTransform[3] === 0 || currentTransform[1] === 0 && currentTransform[2] === 0;\n const minMaxForBezier = isScalingMatrix ? minMax.slice(0) : null;\n for (let i = 0, j = 0, ii = ops.length; i < ii; i++) {\n switch (ops[i] | 0) {\n case _util.OPS.rectangle:\n x = args[j++];\n y = args[j++];\n const width = args[j++];\n const height = args[j++];\n const xw = x + width;\n const yh = y + height;\n ctx.moveTo(x, y);\n if (width === 0 || height === 0) {\n ctx.lineTo(xw, yh);\n } else {\n ctx.lineTo(xw, y);\n ctx.lineTo(xw, yh);\n ctx.lineTo(x, yh);\n }\n if (!isScalingMatrix) {\n current.updateRectMinMax(currentTransform, [x, y, xw, yh]);\n }\n ctx.closePath();\n break;\n case _util.OPS.moveTo:\n x = args[j++];\n y = args[j++];\n ctx.moveTo(x, y);\n if (!isScalingMatrix) {\n current.updatePathMinMax(currentTransform, x, y);\n }\n break;\n case _util.OPS.lineTo:\n x = args[j++];\n y = args[j++];\n ctx.lineTo(x, y);\n if (!isScalingMatrix) {\n current.updatePathMinMax(currentTransform, x, y);\n }\n break;\n case _util.OPS.curveTo:\n startX = x;\n startY = y;\n x = args[j + 4];\n y = args[j + 5];\n ctx.bezierCurveTo(args[j], args[j + 1], args[j + 2], args[j + 3], x, y);\n current.updateCurvePathMinMax(currentTransform, startX, startY, args[j], args[j + 1], args[j + 2], args[j + 3], x, y, minMaxForBezier);\n j += 6;\n break;\n case _util.OPS.curveTo2:\n startX = x;\n startY = y;\n ctx.bezierCurveTo(x, y, args[j], args[j + 1], args[j + 2], args[j + 3]);\n current.updateCurvePathMinMax(currentTransform, startX, startY, x, y, args[j], args[j + 1], args[j + 2], args[j + 3], minMaxForBezier);\n x = args[j + 2];\n y = args[j + 3];\n j += 4;\n break;\n case _util.OPS.curveTo3:\n startX = x;\n startY = y;\n x = args[j + 2];\n y = args[j + 3];\n ctx.bezierCurveTo(args[j], args[j + 1], x, y, x, y);\n current.updateCurvePathMinMax(currentTransform, startX, startY, args[j], args[j + 1], x, y, x, y, minMaxForBezier);\n j += 4;\n break;\n case _util.OPS.closePath:\n ctx.closePath();\n break;\n }\n }\n if (isScalingMatrix) {\n current.updateScalingPathMinMax(currentTransform, minMaxForBezier);\n }\n current.setCurrentPoint(x, y);\n }\n closePath() {\n this.ctx.closePath();\n }\n stroke(consumePath = true) {\n const ctx = this.ctx;\n const strokeColor = this.current.strokeColor;\n ctx.globalAlpha = this.current.strokeAlpha;\n if (this.contentVisible) {\n if (typeof strokeColor === \"object\" && strokeColor?.getPattern) {\n ctx.save();\n ctx.strokeStyle = strokeColor.getPattern(ctx, this, (0, _display_utils.getCurrentTransformInverse)(ctx), _pattern_helper.PathType.STROKE);\n this.rescaleAndStroke(false);\n ctx.restore();\n } else {\n this.rescaleAndStroke(true);\n }\n }\n if (consumePath) {\n this.consumePath(this.current.getClippedPathBoundingBox());\n }\n ctx.globalAlpha = this.current.fillAlpha;\n }\n closeStroke() {\n this.closePath();\n this.stroke();\n }\n fill(consumePath = true) {\n const ctx = this.ctx;\n const fillColor = this.current.fillColor;\n const isPatternFill = this.current.patternFill;\n let needRestore = false;\n if (isPatternFill) {\n ctx.save();\n ctx.fillStyle = fillColor.getPattern(ctx, this, (0, _display_utils.getCurrentTransformInverse)(ctx), _pattern_helper.PathType.FILL);\n needRestore = true;\n }\n const intersect = this.current.getClippedPathBoundingBox();\n if (this.contentVisible && intersect !== null) {\n if (this.pendingEOFill) {\n ctx.fill(\"evenodd\");\n this.pendingEOFill = false;\n } else {\n ctx.fill();\n }\n }\n if (needRestore) {\n ctx.restore();\n }\n if (consumePath) {\n this.consumePath(intersect);\n }\n }\n eoFill() {\n this.pendingEOFill = true;\n this.fill();\n }\n fillStroke() {\n this.fill(false);\n this.stroke(false);\n this.consumePath();\n }\n eoFillStroke() {\n this.pendingEOFill = true;\n this.fillStroke();\n }\n closeFillStroke() {\n this.closePath();\n this.fillStroke();\n }\n closeEOFillStroke() {\n this.pendingEOFill = true;\n this.closePath();\n this.fillStroke();\n }\n endPath() {\n this.consumePath();\n }\n clip() {\n this.pendingClip = NORMAL_CLIP;\n }\n eoClip() {\n this.pendingClip = EO_CLIP;\n }\n beginText() {\n this.current.textMatrix = _util.IDENTITY_MATRIX;\n this.current.textMatrixScale = 1;\n this.current.x = this.current.lineX = 0;\n this.current.y = this.current.lineY = 0;\n }\n endText() {\n const paths = this.pendingTextPaths;\n const ctx = this.ctx;\n if (paths === undefined) {\n ctx.beginPath();\n return;\n }\n ctx.save();\n ctx.beginPath();\n for (const path of paths) {\n ctx.setTransform(...path.transform);\n ctx.translate(path.x, path.y);\n path.addToPath(ctx, path.fontSize);\n }\n ctx.restore();\n ctx.clip();\n ctx.beginPath();\n delete this.pendingTextPaths;\n }\n setCharSpacing(spacing) {\n this.current.charSpacing = spacing;\n }\n setWordSpacing(spacing) {\n this.current.wordSpacing = spacing;\n }\n setHScale(scale) {\n this.current.textHScale = scale / 100;\n }\n setLeading(leading) {\n this.current.leading = -leading;\n }\n setFont(fontRefName, size) {\n const fontObj = this.commonObjs.get(fontRefName);\n const current = this.current;\n if (!fontObj) {\n throw new Error(`Can't find font for ${fontRefName}`);\n }\n current.fontMatrix = fontObj.fontMatrix || _util.FONT_IDENTITY_MATRIX;\n if (current.fontMatrix[0] === 0 || current.fontMatrix[3] === 0) {\n (0, _util.warn)(\"Invalid font matrix for font \" + fontRefName);\n }\n if (size < 0) {\n size = -size;\n current.fontDirection = -1;\n } else {\n current.fontDirection = 1;\n }\n this.current.font = fontObj;\n this.current.fontSize = size;\n if (fontObj.isType3Font) {\n return;\n }\n const name = fontObj.loadedName || \"sans-serif\";\n const typeface = fontObj.systemFontInfo?.css || `\"${name}\", ${fontObj.fallbackName}`;\n let bold = \"normal\";\n if (fontObj.black) {\n bold = \"900\";\n } else if (fontObj.bold) {\n bold = \"bold\";\n }\n const italic = fontObj.italic ? \"italic\" : \"normal\";\n let browserFontSize = size;\n if (size < MIN_FONT_SIZE) {\n browserFontSize = MIN_FONT_SIZE;\n } else if (size > MAX_FONT_SIZE) {\n browserFontSize = MAX_FONT_SIZE;\n }\n this.current.fontSizeScale = size / browserFontSize;\n this.ctx.font = `${italic} ${bold} ${browserFontSize}px ${typeface}`;\n }\n setTextRenderingMode(mode) {\n this.current.textRenderingMode = mode;\n }\n setTextRise(rise) {\n this.current.textRise = rise;\n }\n moveText(x, y) {\n this.current.x = this.current.lineX += x;\n this.current.y = this.current.lineY += y;\n }\n setLeadingMoveText(x, y) {\n this.setLeading(-y);\n this.moveText(x, y);\n }\n setTextMatrix(a, b, c, d, e, f) {\n this.current.textMatrix = [a, b, c, d, e, f];\n this.current.textMatrixScale = Math.hypot(a, b);\n this.current.x = this.current.lineX = 0;\n this.current.y = this.current.lineY = 0;\n }\n nextLine() {\n this.moveText(0, this.current.leading);\n }\n paintChar(character, x, y, patternTransform) {\n const ctx = this.ctx;\n const current = this.current;\n const font = current.font;\n const textRenderingMode = current.textRenderingMode;\n const fontSize = current.fontSize / current.fontSizeScale;\n const fillStrokeMode = textRenderingMode & _util.TextRenderingMode.FILL_STROKE_MASK;\n const isAddToPathSet = !!(textRenderingMode & _util.TextRenderingMode.ADD_TO_PATH_FLAG);\n const patternFill = current.patternFill && !font.missingFile;\n let addToPath;\n if (font.disableFontFace || isAddToPathSet || patternFill) {\n addToPath = font.getPathGenerator(this.commonObjs, character);\n }\n if (font.disableFontFace || patternFill) {\n ctx.save();\n ctx.translate(x, y);\n ctx.beginPath();\n addToPath(ctx, fontSize);\n if (patternTransform) {\n ctx.setTransform(...patternTransform);\n }\n if (fillStrokeMode === _util.TextRenderingMode.FILL || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n ctx.fill();\n }\n if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n ctx.stroke();\n }\n ctx.restore();\n } else {\n if (fillStrokeMode === _util.TextRenderingMode.FILL || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n ctx.fillText(character, x, y);\n }\n if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n ctx.strokeText(character, x, y);\n }\n }\n if (isAddToPathSet) {\n const paths = this.pendingTextPaths ||= [];\n paths.push({\n transform: (0, _display_utils.getCurrentTransform)(ctx),\n x,\n y,\n fontSize,\n addToPath\n });\n }\n }\n get isFontSubpixelAAEnabled() {\n const {\n context: ctx\n } = this.cachedCanvases.getCanvas(\"isFontSubpixelAAEnabled\", 10, 10);\n ctx.scale(1.5, 1);\n ctx.fillText(\"I\", 0, 10);\n const data = ctx.getImageData(0, 0, 10, 10).data;\n let enabled = false;\n for (let i = 3; i < data.length; i += 4) {\n if (data[i] > 0 && data[i] < 255) {\n enabled = true;\n break;\n }\n }\n return (0, _util.shadow)(this, \"isFontSubpixelAAEnabled\", enabled);\n }\n showText(glyphs) {\n const current = this.current;\n const font = current.font;\n if (font.isType3Font) {\n return this.showType3Text(glyphs);\n }\n const fontSize = current.fontSize;\n if (fontSize === 0) {\n return undefined;\n }\n const ctx = this.ctx;\n const fontSizeScale = current.fontSizeScale;\n const charSpacing = current.charSpacing;\n const wordSpacing = current.wordSpacing;\n const fontDirection = current.fontDirection;\n const textHScale = current.textHScale * fontDirection;\n const glyphsLength = glyphs.length;\n const vertical = font.vertical;\n const spacingDir = vertical ? 1 : -1;\n const defaultVMetrics = font.defaultVMetrics;\n const widthAdvanceScale = fontSize * current.fontMatrix[0];\n const simpleFillText = current.textRenderingMode === _util.TextRenderingMode.FILL && !font.disableFontFace && !current.patternFill;\n ctx.save();\n ctx.transform(...current.textMatrix);\n ctx.translate(current.x, current.y + current.textRise);\n if (fontDirection > 0) {\n ctx.scale(textHScale, -1);\n } else {\n ctx.scale(textHScale, 1);\n }\n let patternTransform;\n if (current.patternFill) {\n ctx.save();\n const pattern = current.fillColor.getPattern(ctx, this, (0, _display_utils.getCurrentTransformInverse)(ctx), _pattern_helper.PathType.FILL);\n patternTransform = (0, _display_utils.getCurrentTransform)(ctx);\n ctx.restore();\n ctx.fillStyle = pattern;\n }\n let lineWidth = current.lineWidth;\n const scale = current.textMatrixScale;\n if (scale === 0 || lineWidth === 0) {\n const fillStrokeMode = current.textRenderingMode & _util.TextRenderingMode.FILL_STROKE_MASK;\n if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n lineWidth = this.getSinglePixelWidth();\n }\n } else {\n lineWidth /= scale;\n }\n if (fontSizeScale !== 1.0) {\n ctx.scale(fontSizeScale, fontSizeScale);\n lineWidth /= fontSizeScale;\n }\n ctx.lineWidth = lineWidth;\n if (font.isInvalidPDFjsFont) {\n const chars = [];\n let width = 0;\n for (const glyph of glyphs) {\n chars.push(glyph.unicode);\n width += glyph.width;\n }\n ctx.fillText(chars.join(\"\"), 0, 0);\n current.x += width * widthAdvanceScale * textHScale;\n ctx.restore();\n this.compose();\n return undefined;\n }\n let x = 0,\n i;\n for (i = 0; i < glyphsLength; ++i) {\n const glyph = glyphs[i];\n if (typeof glyph === \"number\") {\n x += spacingDir * glyph * fontSize / 1000;\n continue;\n }\n let restoreNeeded = false;\n const spacing = (glyph.isSpace ? wordSpacing : 0) + charSpacing;\n const character = glyph.fontChar;\n const accent = glyph.accent;\n let scaledX, scaledY;\n let width = glyph.width;\n if (vertical) {\n const vmetric = glyph.vmetric || defaultVMetrics;\n const vx = -(glyph.vmetric ? vmetric[1] : width * 0.5) * widthAdvanceScale;\n const vy = vmetric[2] * widthAdvanceScale;\n width = vmetric ? -vmetric[0] : width;\n scaledX = vx / fontSizeScale;\n scaledY = (x + vy) / fontSizeScale;\n } else {\n scaledX = x / fontSizeScale;\n scaledY = 0;\n }\n if (font.remeasure && width > 0) {\n const measuredWidth = ctx.measureText(character).width * 1000 / fontSize * fontSizeScale;\n if (width < measuredWidth && this.isFontSubpixelAAEnabled) {\n const characterScaleX = width / measuredWidth;\n restoreNeeded = true;\n ctx.save();\n ctx.scale(characterScaleX, 1);\n scaledX /= characterScaleX;\n } else if (width !== measuredWidth) {\n scaledX += (width - measuredWidth) / 2000 * fontSize / fontSizeScale;\n }\n }\n if (this.contentVisible && (glyph.isInFont || font.missingFile)) {\n if (simpleFillText && !accent) {\n ctx.fillText(character, scaledX, scaledY);\n } else {\n this.paintChar(character, scaledX, scaledY, patternTransform);\n if (accent) {\n const scaledAccentX = scaledX + fontSize * accent.offset.x / fontSizeScale;\n const scaledAccentY = scaledY - fontSize * accent.offset.y / fontSizeScale;\n this.paintChar(accent.fontChar, scaledAccentX, scaledAccentY, patternTransform);\n }\n }\n }\n const charWidth = vertical ? width * widthAdvanceScale - spacing * fontDirection : width * widthAdvanceScale + spacing * fontDirection;\n x += charWidth;\n if (restoreNeeded) {\n ctx.restore();\n }\n }\n if (vertical) {\n current.y -= x;\n } else {\n current.x += x * textHScale;\n }\n ctx.restore();\n this.compose();\n return undefined;\n }\n showType3Text(glyphs) {\n const ctx = this.ctx;\n const current = this.current;\n const font = current.font;\n const fontSize = current.fontSize;\n const fontDirection = current.fontDirection;\n const spacingDir = font.vertical ? 1 : -1;\n const charSpacing = current.charSpacing;\n const wordSpacing = current.wordSpacing;\n const textHScale = current.textHScale * fontDirection;\n const fontMatrix = current.fontMatrix || _util.FONT_IDENTITY_MATRIX;\n const glyphsLength = glyphs.length;\n const isTextInvisible = current.textRenderingMode === _util.TextRenderingMode.INVISIBLE;\n let i, glyph, width, spacingLength;\n if (isTextInvisible || fontSize === 0) {\n return;\n }\n this._cachedScaleForStroking[0] = -1;\n this._cachedGetSinglePixelWidth = null;\n ctx.save();\n ctx.transform(...current.textMatrix);\n ctx.translate(current.x, current.y);\n ctx.scale(textHScale, fontDirection);\n for (i = 0; i < glyphsLength; ++i) {\n glyph = glyphs[i];\n if (typeof glyph === \"number\") {\n spacingLength = spacingDir * glyph * fontSize / 1000;\n this.ctx.translate(spacingLength, 0);\n current.x += spacingLength * textHScale;\n continue;\n }\n const spacing = (glyph.isSpace ? wordSpacing : 0) + charSpacing;\n const operatorList = font.charProcOperatorList[glyph.operatorListId];\n if (!operatorList) {\n (0, _util.warn)(`Type3 character \"${glyph.operatorListId}\" is not available.`);\n continue;\n }\n if (this.contentVisible) {\n this.processingType3 = glyph;\n this.save();\n ctx.scale(fontSize, fontSize);\n ctx.transform(...fontMatrix);\n this.executeOperatorList(operatorList);\n this.restore();\n }\n const transformed = _util.Util.applyTransform([glyph.width, 0], fontMatrix);\n width = transformed[0] * fontSize + spacing;\n ctx.translate(width, 0);\n current.x += width * textHScale;\n }\n ctx.restore();\n this.processingType3 = null;\n }\n setCharWidth(xWidth, yWidth) {}\n setCharWidthAndBounds(xWidth, yWidth, llx, lly, urx, ury) {\n this.ctx.rect(llx, lly, urx - llx, ury - lly);\n this.ctx.clip();\n this.endPath();\n }\n getColorN_Pattern(IR) {\n let pattern;\n if (IR[0] === \"TilingPattern\") {\n const color = IR[1];\n const baseTransform = this.baseTransform || (0, _display_utils.getCurrentTransform)(this.ctx);\n const canvasGraphicsFactory = {\n createCanvasGraphics: ctx => {\n return new CanvasGraphics(ctx, this.commonObjs, this.objs, this.canvasFactory, this.filterFactory, {\n optionalContentConfig: this.optionalContentConfig,\n markedContentStack: this.markedContentStack\n });\n }\n };\n pattern = new _pattern_helper.TilingPattern(IR, color, this.ctx, canvasGraphicsFactory, baseTransform);\n } else {\n pattern = this._getPattern(IR[1], IR[2]);\n }\n return pattern;\n }\n setStrokeColorN() {\n this.current.strokeColor = this.getColorN_Pattern(arguments);\n }\n setFillColorN() {\n this.current.fillColor = this.getColorN_Pattern(arguments);\n this.current.patternFill = true;\n }\n setStrokeRGBColor(r, g, b) {\n const color = _util.Util.makeHexColor(r, g, b);\n this.ctx.strokeStyle = color;\n this.current.strokeColor = color;\n }\n setFillRGBColor(r, g, b) {\n const color = _util.Util.makeHexColor(r, g, b);\n this.ctx.fillStyle = color;\n this.current.fillColor = color;\n this.current.patternFill = false;\n }\n _getPattern(objId, matrix = null) {\n let pattern;\n if (this.cachedPatterns.has(objId)) {\n pattern = this.cachedPatterns.get(objId);\n } else {\n pattern = (0, _pattern_helper.getShadingPattern)(this.getObject(objId));\n this.cachedPatterns.set(objId, pattern);\n }\n if (matrix) {\n pattern.matrix = matrix;\n }\n return pattern;\n }\n shadingFill(objId) {\n if (!this.contentVisible) {\n return;\n }\n const ctx = this.ctx;\n this.save();\n const pattern = this._getPattern(objId);\n ctx.fillStyle = pattern.getPattern(ctx, this, (0, _display_utils.getCurrentTransformInverse)(ctx), _pattern_helper.PathType.SHADING);\n const inv = (0, _display_utils.getCurrentTransformInverse)(ctx);\n if (inv) {\n const {\n width,\n height\n } = ctx.canvas;\n const [x0, y0, x1, y1] = _util.Util.getAxialAlignedBoundingBox([0, 0, width, height], inv);\n this.ctx.fillRect(x0, y0, x1 - x0, y1 - y0);\n } else {\n this.ctx.fillRect(-1e10, -1e10, 2e10, 2e10);\n }\n this.compose(this.current.getClippedPathBoundingBox());\n this.restore();\n }\n beginInlineImage() {\n (0, _util.unreachable)(\"Should not call beginInlineImage\");\n }\n beginImageData() {\n (0, _util.unreachable)(\"Should not call beginImageData\");\n }\n paintFormXObjectBegin(matrix, bbox) {\n if (!this.contentVisible) {\n return;\n }\n this.save();\n this.baseTransformStack.push(this.baseTransform);\n if (Array.isArray(matrix) && matrix.length === 6) {\n this.transform(...matrix);\n }\n this.baseTransform = (0, _display_utils.getCurrentTransform)(this.ctx);\n if (bbox) {\n const width = bbox[2] - bbox[0];\n const height = bbox[3] - bbox[1];\n this.ctx.rect(bbox[0], bbox[1], width, height);\n this.current.updateRectMinMax((0, _display_utils.getCurrentTransform)(this.ctx), bbox);\n this.clip();\n this.endPath();\n }\n }\n paintFormXObjectEnd() {\n if (!this.contentVisible) {\n return;\n }\n this.restore();\n this.baseTransform = this.baseTransformStack.pop();\n }\n beginGroup(group) {\n if (!this.contentVisible) {\n return;\n }\n this.save();\n if (this.inSMaskMode) {\n this.endSMaskMode();\n this.current.activeSMask = null;\n }\n const currentCtx = this.ctx;\n if (!group.isolated) {\n (0, _util.info)(\"TODO: Support non-isolated groups.\");\n }\n if (group.knockout) {\n (0, _util.warn)(\"Knockout groups not supported.\");\n }\n const currentTransform = (0, _display_utils.getCurrentTransform)(currentCtx);\n if (group.matrix) {\n currentCtx.transform(...group.matrix);\n }\n if (!group.bbox) {\n throw new Error(\"Bounding box is required.\");\n }\n let bounds = _util.Util.getAxialAlignedBoundingBox(group.bbox, (0, _display_utils.getCurrentTransform)(currentCtx));\n const canvasBounds = [0, 0, currentCtx.canvas.width, currentCtx.canvas.height];\n bounds = _util.Util.intersect(bounds, canvasBounds) || [0, 0, 0, 0];\n const offsetX = Math.floor(bounds[0]);\n const offsetY = Math.floor(bounds[1]);\n let drawnWidth = Math.max(Math.ceil(bounds[2]) - offsetX, 1);\n let drawnHeight = Math.max(Math.ceil(bounds[3]) - offsetY, 1);\n let scaleX = 1,\n scaleY = 1;\n if (drawnWidth > MAX_GROUP_SIZE) {\n scaleX = drawnWidth / MAX_GROUP_SIZE;\n drawnWidth = MAX_GROUP_SIZE;\n }\n if (drawnHeight > MAX_GROUP_SIZE) {\n scaleY = drawnHeight / MAX_GROUP_SIZE;\n drawnHeight = MAX_GROUP_SIZE;\n }\n this.current.startNewPathAndClipBox([0, 0, drawnWidth, drawnHeight]);\n let cacheId = \"groupAt\" + this.groupLevel;\n if (group.smask) {\n cacheId += \"_smask_\" + this.smaskCounter++ % 2;\n }\n const scratchCanvas = this.cachedCanvases.getCanvas(cacheId, drawnWidth, drawnHeight);\n const groupCtx = scratchCanvas.context;\n groupCtx.scale(1 / scaleX, 1 / scaleY);\n groupCtx.translate(-offsetX, -offsetY);\n groupCtx.transform(...currentTransform);\n if (group.smask) {\n this.smaskStack.push({\n canvas: scratchCanvas.canvas,\n context: groupCtx,\n offsetX,\n offsetY,\n scaleX,\n scaleY,\n subtype: group.smask.subtype,\n backdrop: group.smask.backdrop,\n transferMap: group.smask.transferMap || null,\n startTransformInverse: null\n });\n } else {\n currentCtx.setTransform(1, 0, 0, 1, 0, 0);\n currentCtx.translate(offsetX, offsetY);\n currentCtx.scale(scaleX, scaleY);\n currentCtx.save();\n }\n copyCtxState(currentCtx, groupCtx);\n this.ctx = groupCtx;\n this.setGState([[\"BM\", \"source-over\"], [\"ca\", 1], [\"CA\", 1]]);\n this.groupStack.push(currentCtx);\n this.groupLevel++;\n }\n endGroup(group) {\n if (!this.contentVisible) {\n return;\n }\n this.groupLevel--;\n const groupCtx = this.ctx;\n const ctx = this.groupStack.pop();\n this.ctx = ctx;\n this.ctx.imageSmoothingEnabled = false;\n if (group.smask) {\n this.tempSMask = this.smaskStack.pop();\n this.restore();\n } else {\n this.ctx.restore();\n const currentMtx = (0, _display_utils.getCurrentTransform)(this.ctx);\n this.restore();\n this.ctx.save();\n this.ctx.setTransform(...currentMtx);\n const dirtyBox = _util.Util.getAxialAlignedBoundingBox([0, 0, groupCtx.canvas.width, groupCtx.canvas.height], currentMtx);\n this.ctx.drawImage(groupCtx.canvas, 0, 0);\n this.ctx.restore();\n this.compose(dirtyBox);\n }\n }\n beginAnnotation(id, rect, transform, matrix, hasOwnCanvas) {\n this.#restoreInitialState();\n resetCtxToDefault(this.ctx);\n this.ctx.save();\n this.save();\n if (this.baseTransform) {\n this.ctx.setTransform(...this.baseTransform);\n }\n if (Array.isArray(rect) && rect.length === 4) {\n const width = rect[2] - rect[0];\n const height = rect[3] - rect[1];\n if (hasOwnCanvas && this.annotationCanvasMap) {\n transform = transform.slice();\n transform[4] -= rect[0];\n transform[5] -= rect[1];\n rect = rect.slice();\n rect[0] = rect[1] = 0;\n rect[2] = width;\n rect[3] = height;\n const [scaleX, scaleY] = _util.Util.singularValueDecompose2dScale((0, _display_utils.getCurrentTransform)(this.ctx));\n const {\n viewportScale\n } = this;\n const canvasWidth = Math.ceil(width * this.outputScaleX * viewportScale);\n const canvasHeight = Math.ceil(height * this.outputScaleY * viewportScale);\n this.annotationCanvas = this.canvasFactory.create(canvasWidth, canvasHeight);\n const {\n canvas,\n context\n } = this.annotationCanvas;\n this.annotationCanvasMap.set(id, canvas);\n this.annotationCanvas.savedCtx = this.ctx;\n this.ctx = context;\n this.ctx.save();\n this.ctx.setTransform(scaleX, 0, 0, -scaleY, 0, height * scaleY);\n resetCtxToDefault(this.ctx);\n } else {\n resetCtxToDefault(this.ctx);\n this.ctx.rect(rect[0], rect[1], width, height);\n this.ctx.clip();\n this.endPath();\n }\n }\n this.current = new CanvasExtraState(this.ctx.canvas.width, this.ctx.canvas.height);\n this.transform(...transform);\n this.transform(...matrix);\n }\n endAnnotation() {\n if (this.annotationCanvas) {\n this.ctx.restore();\n this.#drawFilter();\n this.ctx = this.annotationCanvas.savedCtx;\n delete this.annotationCanvas.savedCtx;\n delete this.annotationCanvas;\n }\n }\n paintImageMaskXObject(img) {\n if (!this.contentVisible) {\n return;\n }\n const count = img.count;\n img = this.getObject(img.data, img);\n img.count = count;\n const ctx = this.ctx;\n const glyph = this.processingType3;\n if (glyph) {\n if (glyph.compiled === undefined) {\n glyph.compiled = compileType3Glyph(img);\n }\n if (glyph.compiled) {\n glyph.compiled(ctx);\n return;\n }\n }\n const mask = this._createMaskCanvas(img);\n const maskCanvas = mask.canvas;\n ctx.save();\n ctx.setTransform(1, 0, 0, 1, 0, 0);\n ctx.drawImage(maskCanvas, mask.offsetX, mask.offsetY);\n ctx.restore();\n this.compose();\n }\n paintImageMaskXObjectRepeat(img, scaleX, skewX = 0, skewY = 0, scaleY, positions) {\n if (!this.contentVisible) {\n return;\n }\n img = this.getObject(img.data, img);\n const ctx = this.ctx;\n ctx.save();\n const currentTransform = (0, _display_utils.getCurrentTransform)(ctx);\n ctx.transform(scaleX, skewX, skewY, scaleY, 0, 0);\n const mask = this._createMaskCanvas(img);\n ctx.setTransform(1, 0, 0, 1, mask.offsetX - currentTransform[4], mask.offsetY - currentTransform[5]);\n for (let i = 0, ii = positions.length; i < ii; i += 2) {\n const trans = _util.Util.transform(currentTransform, [scaleX, skewX, skewY, scaleY, positions[i], positions[i + 1]]);\n const [x, y] = _util.Util.applyTransform([0, 0], trans);\n ctx.drawImage(mask.canvas, x, y);\n }\n ctx.restore();\n this.compose();\n }\n paintImageMaskXObjectGroup(images) {\n if (!this.contentVisible) {\n return;\n }\n const ctx = this.ctx;\n const fillColor = this.current.fillColor;\n const isPatternFill = this.current.patternFill;\n for (const image of images) {\n const {\n data,\n width,\n height,\n transform\n } = image;\n const maskCanvas = this.cachedCanvases.getCanvas(\"maskCanvas\", width, height);\n const maskCtx = maskCanvas.context;\n maskCtx.save();\n const img = this.getObject(data, image);\n putBinaryImageMask(maskCtx, img);\n maskCtx.globalCompositeOperation = \"source-in\";\n maskCtx.fillStyle = isPatternFill ? fillColor.getPattern(maskCtx, this, (0, _display_utils.getCurrentTransformInverse)(ctx), _pattern_helper.PathType.FILL) : fillColor;\n maskCtx.fillRect(0, 0, width, height);\n maskCtx.restore();\n ctx.save();\n ctx.transform(...transform);\n ctx.scale(1, -1);\n drawImageAtIntegerCoords(ctx, maskCanvas.canvas, 0, 0, width, height, 0, -1, 1, 1);\n ctx.restore();\n }\n this.compose();\n }\n paintImageXObject(objId) {\n if (!this.contentVisible) {\n return;\n }\n const imgData = this.getObject(objId);\n if (!imgData) {\n (0, _util.warn)(\"Dependent image isn't ready yet\");\n return;\n }\n this.paintInlineImageXObject(imgData);\n }\n paintImageXObjectRepeat(objId, scaleX, scaleY, positions) {\n if (!this.contentVisible) {\n return;\n }\n const imgData = this.getObject(objId);\n if (!imgData) {\n (0, _util.warn)(\"Dependent image isn't ready yet\");\n return;\n }\n const width = imgData.width;\n const height = imgData.height;\n const map = [];\n for (let i = 0, ii = positions.length; i < ii; i += 2) {\n map.push({\n transform: [scaleX, 0, 0, scaleY, positions[i], positions[i + 1]],\n x: 0,\n y: 0,\n w: width,\n h: height\n });\n }\n this.paintInlineImageXObjectGroup(imgData, map);\n }\n applyTransferMapsToCanvas(ctx) {\n if (this.current.transferMaps !== \"none\") {\n ctx.filter = this.current.transferMaps;\n ctx.drawImage(ctx.canvas, 0, 0);\n ctx.filter = \"none\";\n }\n return ctx.canvas;\n }\n applyTransferMapsToBitmap(imgData) {\n if (this.current.transferMaps === \"none\") {\n return imgData.bitmap;\n }\n const {\n bitmap,\n width,\n height\n } = imgData;\n const tmpCanvas = this.cachedCanvases.getCanvas(\"inlineImage\", width, height);\n const tmpCtx = tmpCanvas.context;\n tmpCtx.filter = this.current.transferMaps;\n tmpCtx.drawImage(bitmap, 0, 0);\n tmpCtx.filter = \"none\";\n return tmpCanvas.canvas;\n }\n paintInlineImageXObject(imgData) {\n if (!this.contentVisible) {\n return;\n }\n const width = imgData.width;\n const height = imgData.height;\n const ctx = this.ctx;\n this.save();\n if (!_util.isNodeJS) {\n const {\n filter\n } = ctx;\n if (filter !== \"none\" && filter !== \"\") {\n ctx.filter = \"none\";\n }\n }\n ctx.scale(1 / width, -1 / height);\n let imgToPaint;\n if (imgData.bitmap) {\n imgToPaint = this.applyTransferMapsToBitmap(imgData);\n } else if (typeof HTMLElement === \"function\" && imgData instanceof HTMLElement || !imgData.data) {\n imgToPaint = imgData;\n } else {\n const tmpCanvas = this.cachedCanvases.getCanvas(\"inlineImage\", width, height);\n const tmpCtx = tmpCanvas.context;\n putBinaryImageData(tmpCtx, imgData);\n imgToPaint = this.applyTransferMapsToCanvas(tmpCtx);\n }\n const scaled = this._scaleImage(imgToPaint, (0, _display_utils.getCurrentTransformInverse)(ctx));\n ctx.imageSmoothingEnabled = getImageSmoothingEnabled((0, _display_utils.getCurrentTransform)(ctx), imgData.interpolate);\n drawImageAtIntegerCoords(ctx, scaled.img, 0, 0, scaled.paintWidth, scaled.paintHeight, 0, -height, width, height);\n this.compose();\n this.restore();\n }\n paintInlineImageXObjectGroup(imgData, map) {\n if (!this.contentVisible) {\n return;\n }\n const ctx = this.ctx;\n let imgToPaint;\n if (imgData.bitmap) {\n imgToPaint = imgData.bitmap;\n } else {\n const w = imgData.width;\n const h = imgData.height;\n const tmpCanvas = this.cachedCanvases.getCanvas(\"inlineImage\", w, h);\n const tmpCtx = tmpCanvas.context;\n putBinaryImageData(tmpCtx, imgData);\n imgToPaint = this.applyTransferMapsToCanvas(tmpCtx);\n }\n for (const entry of map) {\n ctx.save();\n ctx.transform(...entry.transform);\n ctx.scale(1, -1);\n drawImageAtIntegerCoords(ctx, imgToPaint, entry.x, entry.y, entry.w, entry.h, 0, -1, 1, 1);\n ctx.restore();\n }\n this.compose();\n }\n paintSolidColorImageMask() {\n if (!this.contentVisible) {\n return;\n }\n this.ctx.fillRect(0, 0, 1, 1);\n this.compose();\n }\n markPoint(tag) {}\n markPointProps(tag, properties) {}\n beginMarkedContent(tag) {\n this.markedContentStack.push({\n visible: true\n });\n }\n beginMarkedContentProps(tag, properties) {\n if (tag === \"OC\") {\n this.markedContentStack.push({\n visible: this.optionalContentConfig.isVisible(properties)\n });\n } else {\n this.markedContentStack.push({\n visible: true\n });\n }\n this.contentVisible = this.isContentVisible();\n }\n endMarkedContent() {\n this.markedContentStack.pop();\n this.contentVisible = this.isContentVisible();\n }\n beginCompat() {}\n endCompat() {}\n consumePath(clipBox) {\n const isEmpty = this.current.isEmptyClip();\n if (this.pendingClip) {\n this.current.updateClipFromPath();\n }\n if (!this.pendingClip) {\n this.compose(clipBox);\n }\n const ctx = this.ctx;\n if (this.pendingClip) {\n if (!isEmpty) {\n if (this.pendingClip === EO_CLIP) {\n ctx.clip(\"evenodd\");\n } else {\n ctx.clip();\n }\n }\n this.pendingClip = null;\n }\n this.current.startNewPathAndClipBox(this.current.clipBox);\n ctx.beginPath();\n }\n getSinglePixelWidth() {\n if (!this._cachedGetSinglePixelWidth) {\n const m = (0, _display_utils.getCurrentTransform)(this.ctx);\n if (m[1] === 0 && m[2] === 0) {\n this._cachedGetSinglePixelWidth = 1 / Math.min(Math.abs(m[0]), Math.abs(m[3]));\n } else {\n const absDet = Math.abs(m[0] * m[3] - m[2] * m[1]);\n const normX = Math.hypot(m[0], m[2]);\n const normY = Math.hypot(m[1], m[3]);\n this._cachedGetSinglePixelWidth = Math.max(normX, normY) / absDet;\n }\n }\n return this._cachedGetSinglePixelWidth;\n }\n getScaleForStroking() {\n if (this._cachedScaleForStroking[0] === -1) {\n const {\n lineWidth\n } = this.current;\n const {\n a,\n b,\n c,\n d\n } = this.ctx.getTransform();\n let scaleX, scaleY;\n if (b === 0 && c === 0) {\n const normX = Math.abs(a);\n const normY = Math.abs(d);\n if (normX === normY) {\n if (lineWidth === 0) {\n scaleX = scaleY = 1 / normX;\n } else {\n const scaledLineWidth = normX * lineWidth;\n scaleX = scaleY = scaledLineWidth < 1 ? 1 / scaledLineWidth : 1;\n }\n } else if (lineWidth === 0) {\n scaleX = 1 / normX;\n scaleY = 1 / normY;\n } else {\n const scaledXLineWidth = normX * lineWidth;\n const scaledYLineWidth = normY * lineWidth;\n scaleX = scaledXLineWidth < 1 ? 1 / scaledXLineWidth : 1;\n scaleY = scaledYLineWidth < 1 ? 1 / scaledYLineWidth : 1;\n }\n } else {\n const absDet = Math.abs(a * d - b * c);\n const normX = Math.hypot(a, b);\n const normY = Math.hypot(c, d);\n if (lineWidth === 0) {\n scaleX = normY / absDet;\n scaleY = normX / absDet;\n } else {\n const baseArea = lineWidth * absDet;\n scaleX = normY > baseArea ? normY / baseArea : 1;\n scaleY = normX > baseArea ? normX / baseArea : 1;\n }\n }\n this._cachedScaleForStroking[0] = scaleX;\n this._cachedScaleForStroking[1] = scaleY;\n }\n return this._cachedScaleForStroking;\n }\n rescaleAndStroke(saveRestore) {\n const {\n ctx\n } = this;\n const {\n lineWidth\n } = this.current;\n const [scaleX, scaleY] = this.getScaleForStroking();\n ctx.lineWidth = lineWidth || 1;\n if (scaleX === 1 && scaleY === 1) {\n ctx.stroke();\n return;\n }\n const dashes = ctx.getLineDash();\n if (saveRestore) {\n ctx.save();\n }\n ctx.scale(scaleX, scaleY);\n if (dashes.length > 0) {\n const scale = Math.max(scaleX, scaleY);\n ctx.setLineDash(dashes.map(x => x / scale));\n ctx.lineDashOffset /= scale;\n }\n ctx.stroke();\n if (saveRestore) {\n ctx.restore();\n }\n }\n isContentVisible() {\n for (let i = this.markedContentStack.length - 1; i >= 0; i--) {\n if (!this.markedContentStack[i].visible) {\n return false;\n }\n }\n return true;\n }\n}\nexports.CanvasGraphics = CanvasGraphics;\nfor (const op in _util.OPS) {\n if (CanvasGraphics.prototype[op] !== undefined) {\n CanvasGraphics.prototype[_util.OPS[op]] = CanvasGraphics.prototype[op];\n }\n}\n\n/***/ }),\n/* 12 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.TilingPattern = exports.PathType = void 0;\nexports.getShadingPattern = getShadingPattern;\nvar _util = __w_pdfjs_require__(1);\nvar _display_utils = __w_pdfjs_require__(6);\nconst PathType = {\n FILL: \"Fill\",\n STROKE: \"Stroke\",\n SHADING: \"Shading\"\n};\nexports.PathType = PathType;\nfunction applyBoundingBox(ctx, bbox) {\n if (!bbox) {\n return;\n }\n const width = bbox[2] - bbox[0];\n const height = bbox[3] - bbox[1];\n const region = new Path2D();\n region.rect(bbox[0], bbox[1], width, height);\n ctx.clip(region);\n}\nclass BaseShadingPattern {\n constructor() {\n if (this.constructor === BaseShadingPattern) {\n (0, _util.unreachable)(\"Cannot initialize BaseShadingPattern.\");\n }\n }\n getPattern() {\n (0, _util.unreachable)(\"Abstract method `getPattern` called.\");\n }\n}\nclass RadialAxialShadingPattern extends BaseShadingPattern {\n constructor(IR) {\n super();\n this._type = IR[1];\n this._bbox = IR[2];\n this._colorStops = IR[3];\n this._p0 = IR[4];\n this._p1 = IR[5];\n this._r0 = IR[6];\n this._r1 = IR[7];\n this.matrix = null;\n }\n _createGradient(ctx) {\n let grad;\n if (this._type === \"axial\") {\n grad = ctx.createLinearGradient(this._p0[0], this._p0[1], this._p1[0], this._p1[1]);\n } else if (this._type === \"radial\") {\n grad = ctx.createRadialGradient(this._p0[0], this._p0[1], this._r0, this._p1[0], this._p1[1], this._r1);\n }\n for (const colorStop of this._colorStops) {\n grad.addColorStop(colorStop[0], colorStop[1]);\n }\n return grad;\n }\n getPattern(ctx, owner, inverse, pathType) {\n let pattern;\n if (pathType === PathType.STROKE || pathType === PathType.FILL) {\n const ownerBBox = owner.current.getClippedPathBoundingBox(pathType, (0, _display_utils.getCurrentTransform)(ctx)) || [0, 0, 0, 0];\n const width = Math.ceil(ownerBBox[2] - ownerBBox[0]) || 1;\n const height = Math.ceil(ownerBBox[3] - ownerBBox[1]) || 1;\n const tmpCanvas = owner.cachedCanvases.getCanvas(\"pattern\", width, height, true);\n const tmpCtx = tmpCanvas.context;\n tmpCtx.clearRect(0, 0, tmpCtx.canvas.width, tmpCtx.canvas.height);\n tmpCtx.beginPath();\n tmpCtx.rect(0, 0, tmpCtx.canvas.width, tmpCtx.canvas.height);\n tmpCtx.translate(-ownerBBox[0], -ownerBBox[1]);\n inverse = _util.Util.transform(inverse, [1, 0, 0, 1, ownerBBox[0], ownerBBox[1]]);\n tmpCtx.transform(...owner.baseTransform);\n if (this.matrix) {\n tmpCtx.transform(...this.matrix);\n }\n applyBoundingBox(tmpCtx, this._bbox);\n tmpCtx.fillStyle = this._createGradient(tmpCtx);\n tmpCtx.fill();\n pattern = ctx.createPattern(tmpCanvas.canvas, \"no-repeat\");\n const domMatrix = new DOMMatrix(inverse);\n pattern.setTransform(domMatrix);\n } else {\n applyBoundingBox(ctx, this._bbox);\n pattern = this._createGradient(ctx);\n }\n return pattern;\n }\n}\nfunction drawTriangle(data, context, p1, p2, p3, c1, c2, c3) {\n const coords = context.coords,\n colors = context.colors;\n const bytes = data.data,\n rowSize = data.width * 4;\n let tmp;\n if (coords[p1 + 1] > coords[p2 + 1]) {\n tmp = p1;\n p1 = p2;\n p2 = tmp;\n tmp = c1;\n c1 = c2;\n c2 = tmp;\n }\n if (coords[p2 + 1] > coords[p3 + 1]) {\n tmp = p2;\n p2 = p3;\n p3 = tmp;\n tmp = c2;\n c2 = c3;\n c3 = tmp;\n }\n if (coords[p1 + 1] > coords[p2 + 1]) {\n tmp = p1;\n p1 = p2;\n p2 = tmp;\n tmp = c1;\n c1 = c2;\n c2 = tmp;\n }\n const x1 = (coords[p1] + context.offsetX) * context.scaleX;\n const y1 = (coords[p1 + 1] + context.offsetY) * context.scaleY;\n const x2 = (coords[p2] + context.offsetX) * context.scaleX;\n const y2 = (coords[p2 + 1] + context.offsetY) * context.scaleY;\n const x3 = (coords[p3] + context.offsetX) * context.scaleX;\n const y3 = (coords[p3 + 1] + context.offsetY) * context.scaleY;\n if (y1 >= y3) {\n return;\n }\n const c1r = colors[c1],\n c1g = colors[c1 + 1],\n c1b = colors[c1 + 2];\n const c2r = colors[c2],\n c2g = colors[c2 + 1],\n c2b = colors[c2 + 2];\n const c3r = colors[c3],\n c3g = colors[c3 + 1],\n c3b = colors[c3 + 2];\n const minY = Math.round(y1),\n maxY = Math.round(y3);\n let xa, car, cag, cab;\n let xb, cbr, cbg, cbb;\n for (let y = minY; y <= maxY; y++) {\n if (y < y2) {\n const k = y < y1 ? 0 : (y1 - y) / (y1 - y2);\n xa = x1 - (x1 - x2) * k;\n car = c1r - (c1r - c2r) * k;\n cag = c1g - (c1g - c2g) * k;\n cab = c1b - (c1b - c2b) * k;\n } else {\n let k;\n if (y > y3) {\n k = 1;\n } else if (y2 === y3) {\n k = 0;\n } else {\n k = (y2 - y) / (y2 - y3);\n }\n xa = x2 - (x2 - x3) * k;\n car = c2r - (c2r - c3r) * k;\n cag = c2g - (c2g - c3g) * k;\n cab = c2b - (c2b - c3b) * k;\n }\n let k;\n if (y < y1) {\n k = 0;\n } else if (y > y3) {\n k = 1;\n } else {\n k = (y1 - y) / (y1 - y3);\n }\n xb = x1 - (x1 - x3) * k;\n cbr = c1r - (c1r - c3r) * k;\n cbg = c1g - (c1g - c3g) * k;\n cbb = c1b - (c1b - c3b) * k;\n const x1_ = Math.round(Math.min(xa, xb));\n const x2_ = Math.round(Math.max(xa, xb));\n let j = rowSize * y + x1_ * 4;\n for (let x = x1_; x <= x2_; x++) {\n k = (xa - x) / (xa - xb);\n if (k < 0) {\n k = 0;\n } else if (k > 1) {\n k = 1;\n }\n bytes[j++] = car - (car - cbr) * k | 0;\n bytes[j++] = cag - (cag - cbg) * k | 0;\n bytes[j++] = cab - (cab - cbb) * k | 0;\n bytes[j++] = 255;\n }\n }\n}\nfunction drawFigure(data, figure, context) {\n const ps = figure.coords;\n const cs = figure.colors;\n let i, ii;\n switch (figure.type) {\n case \"lattice\":\n const verticesPerRow = figure.verticesPerRow;\n const rows = Math.floor(ps.length / verticesPerRow) - 1;\n const cols = verticesPerRow - 1;\n for (i = 0; i < rows; i++) {\n let q = i * verticesPerRow;\n for (let j = 0; j < cols; j++, q++) {\n drawTriangle(data, context, ps[q], ps[q + 1], ps[q + verticesPerRow], cs[q], cs[q + 1], cs[q + verticesPerRow]);\n drawTriangle(data, context, ps[q + verticesPerRow + 1], ps[q + 1], ps[q + verticesPerRow], cs[q + verticesPerRow + 1], cs[q + 1], cs[q + verticesPerRow]);\n }\n }\n break;\n case \"triangles\":\n for (i = 0, ii = ps.length; i < ii; i += 3) {\n drawTriangle(data, context, ps[i], ps[i + 1], ps[i + 2], cs[i], cs[i + 1], cs[i + 2]);\n }\n break;\n default:\n throw new Error(\"illegal figure\");\n }\n}\nclass MeshShadingPattern extends BaseShadingPattern {\n constructor(IR) {\n super();\n this._coords = IR[2];\n this._colors = IR[3];\n this._figures = IR[4];\n this._bounds = IR[5];\n this._bbox = IR[7];\n this._background = IR[8];\n this.matrix = null;\n }\n _createMeshCanvas(combinedScale, backgroundColor, cachedCanvases) {\n const EXPECTED_SCALE = 1.1;\n const MAX_PATTERN_SIZE = 3000;\n const BORDER_SIZE = 2;\n const offsetX = Math.floor(this._bounds[0]);\n const offsetY = Math.floor(this._bounds[1]);\n const boundsWidth = Math.ceil(this._bounds[2]) - offsetX;\n const boundsHeight = Math.ceil(this._bounds[3]) - offsetY;\n const width = Math.min(Math.ceil(Math.abs(boundsWidth * combinedScale[0] * EXPECTED_SCALE)), MAX_PATTERN_SIZE);\n const height = Math.min(Math.ceil(Math.abs(boundsHeight * combinedScale[1] * EXPECTED_SCALE)), MAX_PATTERN_SIZE);\n const scaleX = boundsWidth / width;\n const scaleY = boundsHeight / height;\n const context = {\n coords: this._coords,\n colors: this._colors,\n offsetX: -offsetX,\n offsetY: -offsetY,\n scaleX: 1 / scaleX,\n scaleY: 1 / scaleY\n };\n const paddedWidth = width + BORDER_SIZE * 2;\n const paddedHeight = height + BORDER_SIZE * 2;\n const tmpCanvas = cachedCanvases.getCanvas(\"mesh\", paddedWidth, paddedHeight, false);\n const tmpCtx = tmpCanvas.context;\n const data = tmpCtx.createImageData(width, height);\n if (backgroundColor) {\n const bytes = data.data;\n for (let i = 0, ii = bytes.length; i < ii; i += 4) {\n bytes[i] = backgroundColor[0];\n bytes[i + 1] = backgroundColor[1];\n bytes[i + 2] = backgroundColor[2];\n bytes[i + 3] = 255;\n }\n }\n for (const figure of this._figures) {\n drawFigure(data, figure, context);\n }\n tmpCtx.putImageData(data, BORDER_SIZE, BORDER_SIZE);\n const canvas = tmpCanvas.canvas;\n return {\n canvas,\n offsetX: offsetX - BORDER_SIZE * scaleX,\n offsetY: offsetY - BORDER_SIZE * scaleY,\n scaleX,\n scaleY\n };\n }\n getPattern(ctx, owner, inverse, pathType) {\n applyBoundingBox(ctx, this._bbox);\n let scale;\n if (pathType === PathType.SHADING) {\n scale = _util.Util.singularValueDecompose2dScale((0, _display_utils.getCurrentTransform)(ctx));\n } else {\n scale = _util.Util.singularValueDecompose2dScale(owner.baseTransform);\n if (this.matrix) {\n const matrixScale = _util.Util.singularValueDecompose2dScale(this.matrix);\n scale = [scale[0] * matrixScale[0], scale[1] * matrixScale[1]];\n }\n }\n const temporaryPatternCanvas = this._createMeshCanvas(scale, pathType === PathType.SHADING ? null : this._background, owner.cachedCanvases);\n if (pathType !== PathType.SHADING) {\n ctx.setTransform(...owner.baseTransform);\n if (this.matrix) {\n ctx.transform(...this.matrix);\n }\n }\n ctx.translate(temporaryPatternCanvas.offsetX, temporaryPatternCanvas.offsetY);\n ctx.scale(temporaryPatternCanvas.scaleX, temporaryPatternCanvas.scaleY);\n return ctx.createPattern(temporaryPatternCanvas.canvas, \"no-repeat\");\n }\n}\nclass DummyShadingPattern extends BaseShadingPattern {\n getPattern() {\n return \"hotpink\";\n }\n}\nfunction getShadingPattern(IR) {\n switch (IR[0]) {\n case \"RadialAxial\":\n return new RadialAxialShadingPattern(IR);\n case \"Mesh\":\n return new MeshShadingPattern(IR);\n case \"Dummy\":\n return new DummyShadingPattern();\n }\n throw new Error(`Unknown IR type: ${IR[0]}`);\n}\nconst PaintType = {\n COLORED: 1,\n UNCOLORED: 2\n};\nclass TilingPattern {\n static MAX_PATTERN_SIZE = 3000;\n constructor(IR, color, ctx, canvasGraphicsFactory, baseTransform) {\n this.operatorList = IR[2];\n this.matrix = IR[3] || [1, 0, 0, 1, 0, 0];\n this.bbox = IR[4];\n this.xstep = IR[5];\n this.ystep = IR[6];\n this.paintType = IR[7];\n this.tilingType = IR[8];\n this.color = color;\n this.ctx = ctx;\n this.canvasGraphicsFactory = canvasGraphicsFactory;\n this.baseTransform = baseTransform;\n }\n createPatternCanvas(owner) {\n const operatorList = this.operatorList;\n const bbox = this.bbox;\n const xstep = this.xstep;\n const ystep = this.ystep;\n const paintType = this.paintType;\n const tilingType = this.tilingType;\n const color = this.color;\n const canvasGraphicsFactory = this.canvasGraphicsFactory;\n (0, _util.info)(\"TilingType: \" + tilingType);\n const x0 = bbox[0],\n y0 = bbox[1],\n x1 = bbox[2],\n y1 = bbox[3];\n const matrixScale = _util.Util.singularValueDecompose2dScale(this.matrix);\n const curMatrixScale = _util.Util.singularValueDecompose2dScale(this.baseTransform);\n const combinedScale = [matrixScale[0] * curMatrixScale[0], matrixScale[1] * curMatrixScale[1]];\n const dimx = this.getSizeAndScale(xstep, this.ctx.canvas.width, combinedScale[0]);\n const dimy = this.getSizeAndScale(ystep, this.ctx.canvas.height, combinedScale[1]);\n const tmpCanvas = owner.cachedCanvases.getCanvas(\"pattern\", dimx.size, dimy.size, true);\n const tmpCtx = tmpCanvas.context;\n const graphics = canvasGraphicsFactory.createCanvasGraphics(tmpCtx);\n graphics.groupLevel = owner.groupLevel;\n this.setFillAndStrokeStyleToContext(graphics, paintType, color);\n let adjustedX0 = x0;\n let adjustedY0 = y0;\n let adjustedX1 = x1;\n let adjustedY1 = y1;\n if (x0 < 0) {\n adjustedX0 = 0;\n adjustedX1 += Math.abs(x0);\n }\n if (y0 < 0) {\n adjustedY0 = 0;\n adjustedY1 += Math.abs(y0);\n }\n tmpCtx.translate(-(dimx.scale * adjustedX0), -(dimy.scale * adjustedY0));\n graphics.transform(dimx.scale, 0, 0, dimy.scale, 0, 0);\n tmpCtx.save();\n this.clipBbox(graphics, adjustedX0, adjustedY0, adjustedX1, adjustedY1);\n graphics.baseTransform = (0, _display_utils.getCurrentTransform)(graphics.ctx);\n graphics.executeOperatorList(operatorList);\n graphics.endDrawing();\n return {\n canvas: tmpCanvas.canvas,\n scaleX: dimx.scale,\n scaleY: dimy.scale,\n offsetX: adjustedX0,\n offsetY: adjustedY0\n };\n }\n getSizeAndScale(step, realOutputSize, scale) {\n step = Math.abs(step);\n const maxSize = Math.max(TilingPattern.MAX_PATTERN_SIZE, realOutputSize);\n let size = Math.ceil(step * scale);\n if (size >= maxSize) {\n size = maxSize;\n } else {\n scale = size / step;\n }\n return {\n scale,\n size\n };\n }\n clipBbox(graphics, x0, y0, x1, y1) {\n const bboxWidth = x1 - x0;\n const bboxHeight = y1 - y0;\n graphics.ctx.rect(x0, y0, bboxWidth, bboxHeight);\n graphics.current.updateRectMinMax((0, _display_utils.getCurrentTransform)(graphics.ctx), [x0, y0, x1, y1]);\n graphics.clip();\n graphics.endPath();\n }\n setFillAndStrokeStyleToContext(graphics, paintType, color) {\n const context = graphics.ctx,\n current = graphics.current;\n switch (paintType) {\n case PaintType.COLORED:\n const ctx = this.ctx;\n context.fillStyle = ctx.fillStyle;\n context.strokeStyle = ctx.strokeStyle;\n current.fillColor = ctx.fillStyle;\n current.strokeColor = ctx.strokeStyle;\n break;\n case PaintType.UNCOLORED:\n const cssColor = _util.Util.makeHexColor(color[0], color[1], color[2]);\n context.fillStyle = cssColor;\n context.strokeStyle = cssColor;\n current.fillColor = cssColor;\n current.strokeColor = cssColor;\n break;\n default:\n throw new _util.FormatError(`Unsupported paint type: ${paintType}`);\n }\n }\n getPattern(ctx, owner, inverse, pathType) {\n let matrix = inverse;\n if (pathType !== PathType.SHADING) {\n matrix = _util.Util.transform(matrix, owner.baseTransform);\n if (this.matrix) {\n matrix = _util.Util.transform(matrix, this.matrix);\n }\n }\n const temporaryPatternCanvas = this.createPatternCanvas(owner);\n let domMatrix = new DOMMatrix(matrix);\n domMatrix = domMatrix.translate(temporaryPatternCanvas.offsetX, temporaryPatternCanvas.offsetY);\n domMatrix = domMatrix.scale(1 / temporaryPatternCanvas.scaleX, 1 / temporaryPatternCanvas.scaleY);\n const pattern = ctx.createPattern(temporaryPatternCanvas.canvas, \"repeat\");\n pattern.setTransform(domMatrix);\n return pattern;\n }\n}\nexports.TilingPattern = TilingPattern;\n\n/***/ }),\n/* 13 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.convertBlackAndWhiteToRGBA = convertBlackAndWhiteToRGBA;\nexports.convertToRGBA = convertToRGBA;\nexports.grayToRGBA = grayToRGBA;\nvar _util = __w_pdfjs_require__(1);\nfunction convertToRGBA(params) {\n switch (params.kind) {\n case _util.ImageKind.GRAYSCALE_1BPP:\n return convertBlackAndWhiteToRGBA(params);\n case _util.ImageKind.RGB_24BPP:\n return convertRGBToRGBA(params);\n }\n return null;\n}\nfunction convertBlackAndWhiteToRGBA({\n src,\n srcPos = 0,\n dest,\n width,\n height,\n nonBlackColor = 0xffffffff,\n inverseDecode = false\n}) {\n const black = _util.FeatureTest.isLittleEndian ? 0xff000000 : 0x000000ff;\n const [zeroMapping, oneMapping] = inverseDecode ? [nonBlackColor, black] : [black, nonBlackColor];\n const widthInSource = width >> 3;\n const widthRemainder = width & 7;\n const srcLength = src.length;\n dest = new Uint32Array(dest.buffer);\n let destPos = 0;\n for (let i = 0; i < height; i++) {\n for (const max = srcPos + widthInSource; srcPos < max; srcPos++) {\n const elem = srcPos < srcLength ? src[srcPos] : 255;\n dest[destPos++] = elem & 0b10000000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b1000000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b100000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b10000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b1000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b100 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b10 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b1 ? oneMapping : zeroMapping;\n }\n if (widthRemainder === 0) {\n continue;\n }\n const elem = srcPos < srcLength ? src[srcPos++] : 255;\n for (let j = 0; j < widthRemainder; j++) {\n dest[destPos++] = elem & 1 << 7 - j ? oneMapping : zeroMapping;\n }\n }\n return {\n srcPos,\n destPos\n };\n}\nfunction convertRGBToRGBA({\n src,\n srcPos = 0,\n dest,\n destPos = 0,\n width,\n height\n}) {\n let i = 0;\n const len32 = src.length >> 2;\n const src32 = new Uint32Array(src.buffer, srcPos, len32);\n if (_util.FeatureTest.isLittleEndian) {\n for (; i < len32 - 2; i += 3, destPos += 4) {\n const s1 = src32[i];\n const s2 = src32[i + 1];\n const s3 = src32[i + 2];\n dest[destPos] = s1 | 0xff000000;\n dest[destPos + 1] = s1 >>> 24 | s2 << 8 | 0xff000000;\n dest[destPos + 2] = s2 >>> 16 | s3 << 16 | 0xff000000;\n dest[destPos + 3] = s3 >>> 8 | 0xff000000;\n }\n for (let j = i * 4, jj = src.length; j < jj; j += 3) {\n dest[destPos++] = src[j] | src[j + 1] << 8 | src[j + 2] << 16 | 0xff000000;\n }\n } else {\n for (; i < len32 - 2; i += 3, destPos += 4) {\n const s1 = src32[i];\n const s2 = src32[i + 1];\n const s3 = src32[i + 2];\n dest[destPos] = s1 | 0xff;\n dest[destPos + 1] = s1 << 24 | s2 >>> 8 | 0xff;\n dest[destPos + 2] = s2 << 16 | s3 >>> 16 | 0xff;\n dest[destPos + 3] = s3 << 8 | 0xff;\n }\n for (let j = i * 4, jj = src.length; j < jj; j += 3) {\n dest[destPos++] = src[j] << 24 | src[j + 1] << 16 | src[j + 2] << 8 | 0xff;\n }\n }\n return {\n srcPos,\n destPos\n };\n}\nfunction grayToRGBA(src, dest) {\n if (_util.FeatureTest.isLittleEndian) {\n for (let i = 0, ii = src.length; i < ii; i++) {\n dest[i] = src[i] * 0x10101 | 0xff000000;\n }\n } else {\n for (let i = 0, ii = src.length; i < ii; i++) {\n dest[i] = src[i] * 0x1010100 | 0x000000ff;\n }\n }\n}\n\n/***/ }),\n/* 14 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.GlobalWorkerOptions = void 0;\nconst GlobalWorkerOptions = Object.create(null);\nexports.GlobalWorkerOptions = GlobalWorkerOptions;\nGlobalWorkerOptions.workerPort = null;\nGlobalWorkerOptions.workerSrc = \"\";\n\n/***/ }),\n/* 15 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.MessageHandler = void 0;\nvar _util = __w_pdfjs_require__(1);\nconst CallbackKind = {\n UNKNOWN: 0,\n DATA: 1,\n ERROR: 2\n};\nconst StreamKind = {\n UNKNOWN: 0,\n CANCEL: 1,\n CANCEL_COMPLETE: 2,\n CLOSE: 3,\n ENQUEUE: 4,\n ERROR: 5,\n PULL: 6,\n PULL_COMPLETE: 7,\n START_COMPLETE: 8\n};\nfunction wrapReason(reason) {\n if (!(reason instanceof Error || typeof reason === \"object\" && reason !== null)) {\n (0, _util.unreachable)('wrapReason: Expected \"reason\" to be a (possibly cloned) Error.');\n }\n switch (reason.name) {\n case \"AbortException\":\n return new _util.AbortException(reason.message);\n case \"MissingPDFException\":\n return new _util.MissingPDFException(reason.message);\n case \"PasswordException\":\n return new _util.PasswordException(reason.message, reason.code);\n case \"UnexpectedResponseException\":\n return new _util.UnexpectedResponseException(reason.message, reason.status);\n case \"UnknownErrorException\":\n return new _util.UnknownErrorException(reason.message, reason.details);\n default:\n return new _util.UnknownErrorException(reason.message, reason.toString());\n }\n}\nclass MessageHandler {\n constructor(sourceName, targetName, comObj) {\n this.sourceName = sourceName;\n this.targetName = targetName;\n this.comObj = comObj;\n this.callbackId = 1;\n this.streamId = 1;\n this.streamSinks = Object.create(null);\n this.streamControllers = Object.create(null);\n this.callbackCapabilities = Object.create(null);\n this.actionHandler = Object.create(null);\n this._onComObjOnMessage = event => {\n const data = event.data;\n if (data.targetName !== this.sourceName) {\n return;\n }\n if (data.stream) {\n this.#processStreamMessage(data);\n return;\n }\n if (data.callback) {\n const callbackId = data.callbackId;\n const capability = this.callbackCapabilities[callbackId];\n if (!capability) {\n throw new Error(`Cannot resolve callback ${callbackId}`);\n }\n delete this.callbackCapabilities[callbackId];\n if (data.callback === CallbackKind.DATA) {\n capability.resolve(data.data);\n } else if (data.callback === CallbackKind.ERROR) {\n capability.reject(wrapReason(data.reason));\n } else {\n throw new Error(\"Unexpected callback case\");\n }\n return;\n }\n const action = this.actionHandler[data.action];\n if (!action) {\n throw new Error(`Unknown action from worker: ${data.action}`);\n }\n if (data.callbackId) {\n const cbSourceName = this.sourceName;\n const cbTargetName = data.sourceName;\n new Promise(function (resolve) {\n resolve(action(data.data));\n }).then(function (result) {\n comObj.postMessage({\n sourceName: cbSourceName,\n targetName: cbTargetName,\n callback: CallbackKind.DATA,\n callbackId: data.callbackId,\n data: result\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName: cbSourceName,\n targetName: cbTargetName,\n callback: CallbackKind.ERROR,\n callbackId: data.callbackId,\n reason: wrapReason(reason)\n });\n });\n return;\n }\n if (data.streamId) {\n this.#createStreamSink(data);\n return;\n }\n action(data.data);\n };\n comObj.addEventListener(\"message\", this._onComObjOnMessage);\n }\n on(actionName, handler) {\n const ah = this.actionHandler;\n if (ah[actionName]) {\n throw new Error(`There is already an actionName called \"${actionName}\"`);\n }\n ah[actionName] = handler;\n }\n send(actionName, data, transfers) {\n this.comObj.postMessage({\n sourceName: this.sourceName,\n targetName: this.targetName,\n action: actionName,\n data\n }, transfers);\n }\n sendWithPromise(actionName, data, transfers) {\n const callbackId = this.callbackId++;\n const capability = new _util.PromiseCapability();\n this.callbackCapabilities[callbackId] = capability;\n try {\n this.comObj.postMessage({\n sourceName: this.sourceName,\n targetName: this.targetName,\n action: actionName,\n callbackId,\n data\n }, transfers);\n } catch (ex) {\n capability.reject(ex);\n }\n return capability.promise;\n }\n sendWithStream(actionName, data, queueingStrategy, transfers) {\n const streamId = this.streamId++,\n sourceName = this.sourceName,\n targetName = this.targetName,\n comObj = this.comObj;\n return new ReadableStream({\n start: controller => {\n const startCapability = new _util.PromiseCapability();\n this.streamControllers[streamId] = {\n controller,\n startCall: startCapability,\n pullCall: null,\n cancelCall: null,\n isClosed: false\n };\n comObj.postMessage({\n sourceName,\n targetName,\n action: actionName,\n streamId,\n data,\n desiredSize: controller.desiredSize\n }, transfers);\n return startCapability.promise;\n },\n pull: controller => {\n const pullCapability = new _util.PromiseCapability();\n this.streamControllers[streamId].pullCall = pullCapability;\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.PULL,\n streamId,\n desiredSize: controller.desiredSize\n });\n return pullCapability.promise;\n },\n cancel: reason => {\n (0, _util.assert)(reason instanceof Error, \"cancel must have a valid reason\");\n const cancelCapability = new _util.PromiseCapability();\n this.streamControllers[streamId].cancelCall = cancelCapability;\n this.streamControllers[streamId].isClosed = true;\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.CANCEL,\n streamId,\n reason: wrapReason(reason)\n });\n return cancelCapability.promise;\n }\n }, queueingStrategy);\n }\n #createStreamSink(data) {\n const streamId = data.streamId,\n sourceName = this.sourceName,\n targetName = data.sourceName,\n comObj = this.comObj;\n const self = this,\n action = this.actionHandler[data.action];\n const streamSink = {\n enqueue(chunk, size = 1, transfers) {\n if (this.isCancelled) {\n return;\n }\n const lastDesiredSize = this.desiredSize;\n this.desiredSize -= size;\n if (lastDesiredSize > 0 && this.desiredSize <= 0) {\n this.sinkCapability = new _util.PromiseCapability();\n this.ready = this.sinkCapability.promise;\n }\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.ENQUEUE,\n streamId,\n chunk\n }, transfers);\n },\n close() {\n if (this.isCancelled) {\n return;\n }\n this.isCancelled = true;\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.CLOSE,\n streamId\n });\n delete self.streamSinks[streamId];\n },\n error(reason) {\n (0, _util.assert)(reason instanceof Error, \"error must have a valid reason\");\n if (this.isCancelled) {\n return;\n }\n this.isCancelled = true;\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.ERROR,\n streamId,\n reason: wrapReason(reason)\n });\n },\n sinkCapability: new _util.PromiseCapability(),\n onPull: null,\n onCancel: null,\n isCancelled: false,\n desiredSize: data.desiredSize,\n ready: null\n };\n streamSink.sinkCapability.resolve();\n streamSink.ready = streamSink.sinkCapability.promise;\n this.streamSinks[streamId] = streamSink;\n new Promise(function (resolve) {\n resolve(action(data.data, streamSink));\n }).then(function () {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.START_COMPLETE,\n streamId,\n success: true\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.START_COMPLETE,\n streamId,\n reason: wrapReason(reason)\n });\n });\n }\n #processStreamMessage(data) {\n const streamId = data.streamId,\n sourceName = this.sourceName,\n targetName = data.sourceName,\n comObj = this.comObj;\n const streamController = this.streamControllers[streamId],\n streamSink = this.streamSinks[streamId];\n switch (data.stream) {\n case StreamKind.START_COMPLETE:\n if (data.success) {\n streamController.startCall.resolve();\n } else {\n streamController.startCall.reject(wrapReason(data.reason));\n }\n break;\n case StreamKind.PULL_COMPLETE:\n if (data.success) {\n streamController.pullCall.resolve();\n } else {\n streamController.pullCall.reject(wrapReason(data.reason));\n }\n break;\n case StreamKind.PULL:\n if (!streamSink) {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.PULL_COMPLETE,\n streamId,\n success: true\n });\n break;\n }\n if (streamSink.desiredSize <= 0 && data.desiredSize > 0) {\n streamSink.sinkCapability.resolve();\n }\n streamSink.desiredSize = data.desiredSize;\n new Promise(function (resolve) {\n resolve(streamSink.onPull?.());\n }).then(function () {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.PULL_COMPLETE,\n streamId,\n success: true\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.PULL_COMPLETE,\n streamId,\n reason: wrapReason(reason)\n });\n });\n break;\n case StreamKind.ENQUEUE:\n (0, _util.assert)(streamController, \"enqueue should have stream controller\");\n if (streamController.isClosed) {\n break;\n }\n streamController.controller.enqueue(data.chunk);\n break;\n case StreamKind.CLOSE:\n (0, _util.assert)(streamController, \"close should have stream controller\");\n if (streamController.isClosed) {\n break;\n }\n streamController.isClosed = true;\n streamController.controller.close();\n this.#deleteStreamController(streamController, streamId);\n break;\n case StreamKind.ERROR:\n (0, _util.assert)(streamController, \"error should have stream controller\");\n streamController.controller.error(wrapReason(data.reason));\n this.#deleteStreamController(streamController, streamId);\n break;\n case StreamKind.CANCEL_COMPLETE:\n if (data.success) {\n streamController.cancelCall.resolve();\n } else {\n streamController.cancelCall.reject(wrapReason(data.reason));\n }\n this.#deleteStreamController(streamController, streamId);\n break;\n case StreamKind.CANCEL:\n if (!streamSink) {\n break;\n }\n new Promise(function (resolve) {\n resolve(streamSink.onCancel?.(wrapReason(data.reason)));\n }).then(function () {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.CANCEL_COMPLETE,\n streamId,\n success: true\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.CANCEL_COMPLETE,\n streamId,\n reason: wrapReason(reason)\n });\n });\n streamSink.sinkCapability.reject(wrapReason(data.reason));\n streamSink.isCancelled = true;\n delete this.streamSinks[streamId];\n break;\n default:\n throw new Error(\"Unexpected stream case\");\n }\n }\n async #deleteStreamController(streamController, streamId) {\n await Promise.allSettled([streamController.startCall?.promise, streamController.pullCall?.promise, streamController.cancelCall?.promise]);\n delete this.streamControllers[streamId];\n }\n destroy() {\n this.comObj.removeEventListener(\"message\", this._onComObjOnMessage);\n }\n}\nexports.MessageHandler = MessageHandler;\n\n/***/ }),\n/* 16 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Metadata = void 0;\nvar _util = __w_pdfjs_require__(1);\nclass Metadata {\n #metadataMap;\n #data;\n constructor({\n parsedData,\n rawData\n }) {\n this.#metadataMap = parsedData;\n this.#data = rawData;\n }\n getRaw() {\n return this.#data;\n }\n get(name) {\n return this.#metadataMap.get(name) ?? null;\n }\n getAll() {\n return (0, _util.objectFromMap)(this.#metadataMap);\n }\n has(name) {\n return this.#metadataMap.has(name);\n }\n}\nexports.Metadata = Metadata;\n\n/***/ }),\n/* 17 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.OptionalContentConfig = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _murmurhash = __w_pdfjs_require__(8);\nconst INTERNAL = Symbol(\"INTERNAL\");\nclass OptionalContentGroup {\n #visible = true;\n constructor(name, intent) {\n this.name = name;\n this.intent = intent;\n }\n get visible() {\n return this.#visible;\n }\n _setVisible(internal, visible) {\n if (internal !== INTERNAL) {\n (0, _util.unreachable)(\"Internal method `_setVisible` called.\");\n }\n this.#visible = visible;\n }\n}\nclass OptionalContentConfig {\n #cachedGetHash = null;\n #groups = new Map();\n #initialHash = null;\n #order = null;\n constructor(data) {\n this.name = null;\n this.creator = null;\n if (data === null) {\n return;\n }\n this.name = data.name;\n this.creator = data.creator;\n this.#order = data.order;\n for (const group of data.groups) {\n this.#groups.set(group.id, new OptionalContentGroup(group.name, group.intent));\n }\n if (data.baseState === \"OFF\") {\n for (const group of this.#groups.values()) {\n group._setVisible(INTERNAL, false);\n }\n }\n for (const on of data.on) {\n this.#groups.get(on)._setVisible(INTERNAL, true);\n }\n for (const off of data.off) {\n this.#groups.get(off)._setVisible(INTERNAL, false);\n }\n this.#initialHash = this.getHash();\n }\n #evaluateVisibilityExpression(array) {\n const length = array.length;\n if (length < 2) {\n return true;\n }\n const operator = array[0];\n for (let i = 1; i < length; i++) {\n const element = array[i];\n let state;\n if (Array.isArray(element)) {\n state = this.#evaluateVisibilityExpression(element);\n } else if (this.#groups.has(element)) {\n state = this.#groups.get(element).visible;\n } else {\n (0, _util.warn)(`Optional content group not found: ${element}`);\n return true;\n }\n switch (operator) {\n case \"And\":\n if (!state) {\n return false;\n }\n break;\n case \"Or\":\n if (state) {\n return true;\n }\n break;\n case \"Not\":\n return !state;\n default:\n return true;\n }\n }\n return operator === \"And\";\n }\n isVisible(group) {\n if (this.#groups.size === 0) {\n return true;\n }\n if (!group) {\n (0, _util.warn)(\"Optional content group not defined.\");\n return true;\n }\n if (group.type === \"OCG\") {\n if (!this.#groups.has(group.id)) {\n (0, _util.warn)(`Optional content group not found: ${group.id}`);\n return true;\n }\n return this.#groups.get(group.id).visible;\n } else if (group.type === \"OCMD\") {\n if (group.expression) {\n return this.#evaluateVisibilityExpression(group.expression);\n }\n if (!group.policy || group.policy === \"AnyOn\") {\n for (const id of group.ids) {\n if (!this.#groups.has(id)) {\n (0, _util.warn)(`Optional content group not found: ${id}`);\n return true;\n }\n if (this.#groups.get(id).visible) {\n return true;\n }\n }\n return false;\n } else if (group.policy === \"AllOn\") {\n for (const id of group.ids) {\n if (!this.#groups.has(id)) {\n (0, _util.warn)(`Optional content group not found: ${id}`);\n return true;\n }\n if (!this.#groups.get(id).visible) {\n return false;\n }\n }\n return true;\n } else if (group.policy === \"AnyOff\") {\n for (const id of group.ids) {\n if (!this.#groups.has(id)) {\n (0, _util.warn)(`Optional content group not found: ${id}`);\n return true;\n }\n if (!this.#groups.get(id).visible) {\n return true;\n }\n }\n return false;\n } else if (group.policy === \"AllOff\") {\n for (const id of group.ids) {\n if (!this.#groups.has(id)) {\n (0, _util.warn)(`Optional content group not found: ${id}`);\n return true;\n }\n if (this.#groups.get(id).visible) {\n return false;\n }\n }\n return true;\n }\n (0, _util.warn)(`Unknown optional content policy ${group.policy}.`);\n return true;\n }\n (0, _util.warn)(`Unknown group type ${group.type}.`);\n return true;\n }\n setVisibility(id, visible = true) {\n if (!this.#groups.has(id)) {\n (0, _util.warn)(`Optional content group not found: ${id}`);\n return;\n }\n this.#groups.get(id)._setVisible(INTERNAL, !!visible);\n this.#cachedGetHash = null;\n }\n get hasInitialVisibility() {\n return this.#initialHash === null || this.getHash() === this.#initialHash;\n }\n getOrder() {\n if (!this.#groups.size) {\n return null;\n }\n if (this.#order) {\n return this.#order.slice();\n }\n return [...this.#groups.keys()];\n }\n getGroups() {\n return this.#groups.size > 0 ? (0, _util.objectFromMap)(this.#groups) : null;\n }\n getGroup(id) {\n return this.#groups.get(id) || null;\n }\n getHash() {\n if (this.#cachedGetHash !== null) {\n return this.#cachedGetHash;\n }\n const hash = new _murmurhash.MurmurHash3_64();\n for (const [id, group] of this.#groups) {\n hash.update(`${id}:${group.visible}`);\n }\n return this.#cachedGetHash = hash.hexdigest();\n }\n}\nexports.OptionalContentConfig = OptionalContentConfig;\n\n/***/ }),\n/* 18 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFDataTransportStream = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _display_utils = __w_pdfjs_require__(6);\nclass PDFDataTransportStream {\n constructor({\n length,\n initialData,\n progressiveDone = false,\n contentDispositionFilename = null,\n disableRange = false,\n disableStream = false\n }, pdfDataRangeTransport) {\n (0, _util.assert)(pdfDataRangeTransport, 'PDFDataTransportStream - missing required \"pdfDataRangeTransport\" argument.');\n this._queuedChunks = [];\n this._progressiveDone = progressiveDone;\n this._contentDispositionFilename = contentDispositionFilename;\n if (initialData?.length > 0) {\n const buffer = initialData instanceof Uint8Array && initialData.byteLength === initialData.buffer.byteLength ? initialData.buffer : new Uint8Array(initialData).buffer;\n this._queuedChunks.push(buffer);\n }\n this._pdfDataRangeTransport = pdfDataRangeTransport;\n this._isStreamingSupported = !disableStream;\n this._isRangeSupported = !disableRange;\n this._contentLength = length;\n this._fullRequestReader = null;\n this._rangeReaders = [];\n this._pdfDataRangeTransport.addRangeListener((begin, chunk) => {\n this._onReceiveData({\n begin,\n chunk\n });\n });\n this._pdfDataRangeTransport.addProgressListener((loaded, total) => {\n this._onProgress({\n loaded,\n total\n });\n });\n this._pdfDataRangeTransport.addProgressiveReadListener(chunk => {\n this._onReceiveData({\n chunk\n });\n });\n this._pdfDataRangeTransport.addProgressiveDoneListener(() => {\n this._onProgressiveDone();\n });\n this._pdfDataRangeTransport.transportReady();\n }\n _onReceiveData({\n begin,\n chunk\n }) {\n const buffer = chunk instanceof Uint8Array && chunk.byteLength === chunk.buffer.byteLength ? chunk.buffer : new Uint8Array(chunk).buffer;\n if (begin === undefined) {\n if (this._fullRequestReader) {\n this._fullRequestReader._enqueue(buffer);\n } else {\n this._queuedChunks.push(buffer);\n }\n } else {\n const found = this._rangeReaders.some(function (rangeReader) {\n if (rangeReader._begin !== begin) {\n return false;\n }\n rangeReader._enqueue(buffer);\n return true;\n });\n (0, _util.assert)(found, \"_onReceiveData - no `PDFDataTransportStreamRangeReader` instance found.\");\n }\n }\n get _progressiveDataLength() {\n return this._fullRequestReader?._loaded ?? 0;\n }\n _onProgress(evt) {\n if (evt.total === undefined) {\n this._rangeReaders[0]?.onProgress?.({\n loaded: evt.loaded\n });\n } else {\n this._fullRequestReader?.onProgress?.({\n loaded: evt.loaded,\n total: evt.total\n });\n }\n }\n _onProgressiveDone() {\n this._fullRequestReader?.progressiveDone();\n this._progressiveDone = true;\n }\n _removeRangeReader(reader) {\n const i = this._rangeReaders.indexOf(reader);\n if (i >= 0) {\n this._rangeReaders.splice(i, 1);\n }\n }\n getFullReader() {\n (0, _util.assert)(!this._fullRequestReader, \"PDFDataTransportStream.getFullReader can only be called once.\");\n const queuedChunks = this._queuedChunks;\n this._queuedChunks = null;\n return new PDFDataTransportStreamReader(this, queuedChunks, this._progressiveDone, this._contentDispositionFilename);\n }\n getRangeReader(begin, end) {\n if (end <= this._progressiveDataLength) {\n return null;\n }\n const reader = new PDFDataTransportStreamRangeReader(this, begin, end);\n this._pdfDataRangeTransport.requestDataRange(begin, end);\n this._rangeReaders.push(reader);\n return reader;\n }\n cancelAllRequests(reason) {\n this._fullRequestReader?.cancel(reason);\n for (const reader of this._rangeReaders.slice(0)) {\n reader.cancel(reason);\n }\n this._pdfDataRangeTransport.abort();\n }\n}\nexports.PDFDataTransportStream = PDFDataTransportStream;\nclass PDFDataTransportStreamReader {\n constructor(stream, queuedChunks, progressiveDone = false, contentDispositionFilename = null) {\n this._stream = stream;\n this._done = progressiveDone || false;\n this._filename = (0, _display_utils.isPdfFile)(contentDispositionFilename) ? contentDispositionFilename : null;\n this._queuedChunks = queuedChunks || [];\n this._loaded = 0;\n for (const chunk of this._queuedChunks) {\n this._loaded += chunk.byteLength;\n }\n this._requests = [];\n this._headersReady = Promise.resolve();\n stream._fullRequestReader = this;\n this.onProgress = null;\n }\n _enqueue(chunk) {\n if (this._done) {\n return;\n }\n if (this._requests.length > 0) {\n const requestCapability = this._requests.shift();\n requestCapability.resolve({\n value: chunk,\n done: false\n });\n } else {\n this._queuedChunks.push(chunk);\n }\n this._loaded += chunk.byteLength;\n }\n get headersReady() {\n return this._headersReady;\n }\n get filename() {\n return this._filename;\n }\n get isRangeSupported() {\n return this._stream._isRangeSupported;\n }\n get isStreamingSupported() {\n return this._stream._isStreamingSupported;\n }\n get contentLength() {\n return this._stream._contentLength;\n }\n async read() {\n if (this._queuedChunks.length > 0) {\n const chunk = this._queuedChunks.shift();\n return {\n value: chunk,\n done: false\n };\n }\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n const requestCapability = new _util.PromiseCapability();\n this._requests.push(requestCapability);\n return requestCapability.promise;\n }\n cancel(reason) {\n this._done = true;\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n }\n progressiveDone() {\n if (this._done) {\n return;\n }\n this._done = true;\n }\n}\nclass PDFDataTransportStreamRangeReader {\n constructor(stream, begin, end) {\n this._stream = stream;\n this._begin = begin;\n this._end = end;\n this._queuedChunk = null;\n this._requests = [];\n this._done = false;\n this.onProgress = null;\n }\n _enqueue(chunk) {\n if (this._done) {\n return;\n }\n if (this._requests.length === 0) {\n this._queuedChunk = chunk;\n } else {\n const requestsCapability = this._requests.shift();\n requestsCapability.resolve({\n value: chunk,\n done: false\n });\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n }\n this._done = true;\n this._stream._removeRangeReader(this);\n }\n get isStreamingSupported() {\n return false;\n }\n async read() {\n if (this._queuedChunk) {\n const chunk = this._queuedChunk;\n this._queuedChunk = null;\n return {\n value: chunk,\n done: false\n };\n }\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n const requestCapability = new _util.PromiseCapability();\n this._requests.push(requestCapability);\n return requestCapability.promise;\n }\n cancel(reason) {\n this._done = true;\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n this._stream._removeRangeReader(this);\n }\n}\n\n/***/ }),\n/* 19 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFFetchStream = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _network_utils = __w_pdfjs_require__(20);\n;\nfunction createFetchOptions(headers, withCredentials, abortController) {\n return {\n method: \"GET\",\n headers,\n signal: abortController.signal,\n mode: \"cors\",\n credentials: withCredentials ? \"include\" : \"same-origin\",\n redirect: \"follow\"\n };\n}\nfunction createHeaders(httpHeaders) {\n const headers = new Headers();\n for (const property in httpHeaders) {\n const value = httpHeaders[property];\n if (value === undefined) {\n continue;\n }\n headers.append(property, value);\n }\n return headers;\n}\nfunction getArrayBuffer(val) {\n if (val instanceof Uint8Array) {\n return val.buffer;\n }\n if (val instanceof ArrayBuffer) {\n return val;\n }\n (0, _util.warn)(`getArrayBuffer - unexpected data format: ${val}`);\n return new Uint8Array(val).buffer;\n}\nclass PDFFetchStream {\n constructor(source) {\n this.source = source;\n this.isHttp = /^https?:/i.test(source.url);\n this.httpHeaders = this.isHttp && source.httpHeaders || {};\n this._fullRequestReader = null;\n this._rangeRequestReaders = [];\n }\n get _progressiveDataLength() {\n return this._fullRequestReader?._loaded ?? 0;\n }\n getFullReader() {\n (0, _util.assert)(!this._fullRequestReader, \"PDFFetchStream.getFullReader can only be called once.\");\n this._fullRequestReader = new PDFFetchStreamReader(this);\n return this._fullRequestReader;\n }\n getRangeReader(begin, end) {\n if (end <= this._progressiveDataLength) {\n return null;\n }\n const reader = new PDFFetchStreamRangeReader(this, begin, end);\n this._rangeRequestReaders.push(reader);\n return reader;\n }\n cancelAllRequests(reason) {\n this._fullRequestReader?.cancel(reason);\n for (const reader of this._rangeRequestReaders.slice(0)) {\n reader.cancel(reason);\n }\n }\n}\nexports.PDFFetchStream = PDFFetchStream;\nclass PDFFetchStreamReader {\n constructor(stream) {\n this._stream = stream;\n this._reader = null;\n this._loaded = 0;\n this._filename = null;\n const source = stream.source;\n this._withCredentials = source.withCredentials || false;\n this._contentLength = source.length;\n this._headersCapability = new _util.PromiseCapability();\n this._disableRange = source.disableRange || false;\n this._rangeChunkSize = source.rangeChunkSize;\n if (!this._rangeChunkSize && !this._disableRange) {\n this._disableRange = true;\n }\n this._abortController = new AbortController();\n this._isStreamingSupported = !source.disableStream;\n this._isRangeSupported = !source.disableRange;\n this._headers = createHeaders(this._stream.httpHeaders);\n const url = source.url;\n fetch(url, createFetchOptions(this._headers, this._withCredentials, this._abortController)).then(response => {\n if (!(0, _network_utils.validateResponseStatus)(response.status)) {\n throw (0, _network_utils.createResponseStatusError)(response.status, url);\n }\n this._reader = response.body.getReader();\n this._headersCapability.resolve();\n const getResponseHeader = name => {\n return response.headers.get(name);\n };\n const {\n allowRangeRequests,\n suggestedLength\n } = (0, _network_utils.validateRangeRequestCapabilities)({\n getResponseHeader,\n isHttp: this._stream.isHttp,\n rangeChunkSize: this._rangeChunkSize,\n disableRange: this._disableRange\n });\n this._isRangeSupported = allowRangeRequests;\n this._contentLength = suggestedLength || this._contentLength;\n this._filename = (0, _network_utils.extractFilenameFromHeader)(getResponseHeader);\n if (!this._isStreamingSupported && this._isRangeSupported) {\n this.cancel(new _util.AbortException(\"Streaming is disabled.\"));\n }\n }).catch(this._headersCapability.reject);\n this.onProgress = null;\n }\n get headersReady() {\n return this._headersCapability.promise;\n }\n get filename() {\n return this._filename;\n }\n get contentLength() {\n return this._contentLength;\n }\n get isRangeSupported() {\n return this._isRangeSupported;\n }\n get isStreamingSupported() {\n return this._isStreamingSupported;\n }\n async read() {\n await this._headersCapability.promise;\n const {\n value,\n done\n } = await this._reader.read();\n if (done) {\n return {\n value,\n done\n };\n }\n this._loaded += value.byteLength;\n this.onProgress?.({\n loaded: this._loaded,\n total: this._contentLength\n });\n return {\n value: getArrayBuffer(value),\n done: false\n };\n }\n cancel(reason) {\n this._reader?.cancel(reason);\n this._abortController.abort();\n }\n}\nclass PDFFetchStreamRangeReader {\n constructor(stream, begin, end) {\n this._stream = stream;\n this._reader = null;\n this._loaded = 0;\n const source = stream.source;\n this._withCredentials = source.withCredentials || false;\n this._readCapability = new _util.PromiseCapability();\n this._isStreamingSupported = !source.disableStream;\n this._abortController = new AbortController();\n this._headers = createHeaders(this._stream.httpHeaders);\n this._headers.append(\"Range\", `bytes=${begin}-${end - 1}`);\n const url = source.url;\n fetch(url, createFetchOptions(this._headers, this._withCredentials, this._abortController)).then(response => {\n if (!(0, _network_utils.validateResponseStatus)(response.status)) {\n throw (0, _network_utils.createResponseStatusError)(response.status, url);\n }\n this._readCapability.resolve();\n this._reader = response.body.getReader();\n }).catch(this._readCapability.reject);\n this.onProgress = null;\n }\n get isStreamingSupported() {\n return this._isStreamingSupported;\n }\n async read() {\n await this._readCapability.promise;\n const {\n value,\n done\n } = await this._reader.read();\n if (done) {\n return {\n value,\n done\n };\n }\n this._loaded += value.byteLength;\n this.onProgress?.({\n loaded: this._loaded\n });\n return {\n value: getArrayBuffer(value),\n done: false\n };\n }\n cancel(reason) {\n this._reader?.cancel(reason);\n this._abortController.abort();\n }\n}\n\n/***/ }),\n/* 20 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.createResponseStatusError = createResponseStatusError;\nexports.extractFilenameFromHeader = extractFilenameFromHeader;\nexports.validateRangeRequestCapabilities = validateRangeRequestCapabilities;\nexports.validateResponseStatus = validateResponseStatus;\nvar _util = __w_pdfjs_require__(1);\nvar _content_disposition = __w_pdfjs_require__(21);\nvar _display_utils = __w_pdfjs_require__(6);\nfunction validateRangeRequestCapabilities({\n getResponseHeader,\n isHttp,\n rangeChunkSize,\n disableRange\n}) {\n const returnValues = {\n allowRangeRequests: false,\n suggestedLength: undefined\n };\n const length = parseInt(getResponseHeader(\"Content-Length\"), 10);\n if (!Number.isInteger(length)) {\n return returnValues;\n }\n returnValues.suggestedLength = length;\n if (length <= 2 * rangeChunkSize) {\n return returnValues;\n }\n if (disableRange || !isHttp) {\n return returnValues;\n }\n if (getResponseHeader(\"Accept-Ranges\") !== \"bytes\") {\n return returnValues;\n }\n const contentEncoding = getResponseHeader(\"Content-Encoding\") || \"identity\";\n if (contentEncoding !== \"identity\") {\n return returnValues;\n }\n returnValues.allowRangeRequests = true;\n return returnValues;\n}\nfunction extractFilenameFromHeader(getResponseHeader) {\n const contentDisposition = getResponseHeader(\"Content-Disposition\");\n if (contentDisposition) {\n let filename = (0, _content_disposition.getFilenameFromContentDispositionHeader)(contentDisposition);\n if (filename.includes(\"%\")) {\n try {\n filename = decodeURIComponent(filename);\n } catch {}\n }\n if ((0, _display_utils.isPdfFile)(filename)) {\n return filename;\n }\n }\n return null;\n}\nfunction createResponseStatusError(status, url) {\n if (status === 404 || status === 0 && url.startsWith(\"file:\")) {\n return new _util.MissingPDFException('Missing PDF \"' + url + '\".');\n }\n return new _util.UnexpectedResponseException(`Unexpected server response (${status}) while retrieving PDF \"${url}\".`, status);\n}\nfunction validateResponseStatus(status) {\n return status === 200 || status === 206;\n}\n\n/***/ }),\n/* 21 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.getFilenameFromContentDispositionHeader = getFilenameFromContentDispositionHeader;\nvar _util = __w_pdfjs_require__(1);\nfunction getFilenameFromContentDispositionHeader(contentDisposition) {\n let needsEncodingFixup = true;\n let tmp = toParamRegExp(\"filename\\\\*\", \"i\").exec(contentDisposition);\n if (tmp) {\n tmp = tmp[1];\n let filename = rfc2616unquote(tmp);\n filename = unescape(filename);\n filename = rfc5987decode(filename);\n filename = rfc2047decode(filename);\n return fixupEncoding(filename);\n }\n tmp = rfc2231getparam(contentDisposition);\n if (tmp) {\n const filename = rfc2047decode(tmp);\n return fixupEncoding(filename);\n }\n tmp = toParamRegExp(\"filename\", \"i\").exec(contentDisposition);\n if (tmp) {\n tmp = tmp[1];\n let filename = rfc2616unquote(tmp);\n filename = rfc2047decode(filename);\n return fixupEncoding(filename);\n }\n function toParamRegExp(attributePattern, flags) {\n return new RegExp(\"(?:^|;)\\\\s*\" + attributePattern + \"\\\\s*=\\\\s*\" + \"(\" + '[^\";\\\\s][^;\\\\s]*' + \"|\" + '\"(?:[^\"\\\\\\\\]|\\\\\\\\\"?)+\"?' + \")\", flags);\n }\n function textdecode(encoding, value) {\n if (encoding) {\n if (!/^[\\x00-\\xFF]+$/.test(value)) {\n return value;\n }\n try {\n const decoder = new TextDecoder(encoding, {\n fatal: true\n });\n const buffer = (0, _util.stringToBytes)(value);\n value = decoder.decode(buffer);\n needsEncodingFixup = false;\n } catch {}\n }\n return value;\n }\n function fixupEncoding(value) {\n if (needsEncodingFixup && /[\\x80-\\xff]/.test(value)) {\n value = textdecode(\"utf-8\", value);\n if (needsEncodingFixup) {\n value = textdecode(\"iso-8859-1\", value);\n }\n }\n return value;\n }\n function rfc2231getparam(contentDispositionStr) {\n const matches = [];\n let match;\n const iter = toParamRegExp(\"filename\\\\*((?!0\\\\d)\\\\d+)(\\\\*?)\", \"ig\");\n while ((match = iter.exec(contentDispositionStr)) !== null) {\n let [, n, quot, part] = match;\n n = parseInt(n, 10);\n if (n in matches) {\n if (n === 0) {\n break;\n }\n continue;\n }\n matches[n] = [quot, part];\n }\n const parts = [];\n for (let n = 0; n < matches.length; ++n) {\n if (!(n in matches)) {\n break;\n }\n let [quot, part] = matches[n];\n part = rfc2616unquote(part);\n if (quot) {\n part = unescape(part);\n if (n === 0) {\n part = rfc5987decode(part);\n }\n }\n parts.push(part);\n }\n return parts.join(\"\");\n }\n function rfc2616unquote(value) {\n if (value.startsWith('\"')) {\n const parts = value.slice(1).split('\\\\\"');\n for (let i = 0; i < parts.length; ++i) {\n const quotindex = parts[i].indexOf('\"');\n if (quotindex !== -1) {\n parts[i] = parts[i].slice(0, quotindex);\n parts.length = i + 1;\n }\n parts[i] = parts[i].replaceAll(/\\\\(.)/g, \"$1\");\n }\n value = parts.join('\"');\n }\n return value;\n }\n function rfc5987decode(extvalue) {\n const encodingend = extvalue.indexOf(\"'\");\n if (encodingend === -1) {\n return extvalue;\n }\n const encoding = extvalue.slice(0, encodingend);\n const langvalue = extvalue.slice(encodingend + 1);\n const value = langvalue.replace(/^[^']*'/, \"\");\n return textdecode(encoding, value);\n }\n function rfc2047decode(value) {\n if (!value.startsWith(\"=?\") || /[\\x00-\\x19\\x80-\\xff]/.test(value)) {\n return value;\n }\n return value.replaceAll(/=\\?([\\w-]*)\\?([QqBb])\\?((?:[^?]|\\?(?!=))*)\\?=/g, function (matches, charset, encoding, text) {\n if (encoding === \"q\" || encoding === \"Q\") {\n text = text.replaceAll(\"_\", \" \");\n text = text.replaceAll(/=([0-9a-fA-F]{2})/g, function (match, hex) {\n return String.fromCharCode(parseInt(hex, 16));\n });\n return textdecode(charset, text);\n }\n try {\n text = atob(text);\n } catch {}\n return textdecode(charset, text);\n });\n }\n return \"\";\n}\n\n/***/ }),\n/* 22 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFNetworkStream = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _network_utils = __w_pdfjs_require__(20);\n;\nconst OK_RESPONSE = 200;\nconst PARTIAL_CONTENT_RESPONSE = 206;\nfunction getArrayBuffer(xhr) {\n const data = xhr.response;\n if (typeof data !== \"string\") {\n return data;\n }\n return (0, _util.stringToBytes)(data).buffer;\n}\nclass NetworkManager {\n constructor(url, args = {}) {\n this.url = url;\n this.isHttp = /^https?:/i.test(url);\n this.httpHeaders = this.isHttp && args.httpHeaders || Object.create(null);\n this.withCredentials = args.withCredentials || false;\n this.currXhrId = 0;\n this.pendingRequests = Object.create(null);\n }\n requestRange(begin, end, listeners) {\n const args = {\n begin,\n end\n };\n for (const prop in listeners) {\n args[prop] = listeners[prop];\n }\n return this.request(args);\n }\n requestFull(listeners) {\n return this.request(listeners);\n }\n request(args) {\n const xhr = new XMLHttpRequest();\n const xhrId = this.currXhrId++;\n const pendingRequest = this.pendingRequests[xhrId] = {\n xhr\n };\n xhr.open(\"GET\", this.url);\n xhr.withCredentials = this.withCredentials;\n for (const property in this.httpHeaders) {\n const value = this.httpHeaders[property];\n if (value === undefined) {\n continue;\n }\n xhr.setRequestHeader(property, value);\n }\n if (this.isHttp && \"begin\" in args && \"end\" in args) {\n xhr.setRequestHeader(\"Range\", `bytes=${args.begin}-${args.end - 1}`);\n pendingRequest.expectedStatus = PARTIAL_CONTENT_RESPONSE;\n } else {\n pendingRequest.expectedStatus = OK_RESPONSE;\n }\n xhr.responseType = \"arraybuffer\";\n if (args.onError) {\n xhr.onerror = function (evt) {\n args.onError(xhr.status);\n };\n }\n xhr.onreadystatechange = this.onStateChange.bind(this, xhrId);\n xhr.onprogress = this.onProgress.bind(this, xhrId);\n pendingRequest.onHeadersReceived = args.onHeadersReceived;\n pendingRequest.onDone = args.onDone;\n pendingRequest.onError = args.onError;\n pendingRequest.onProgress = args.onProgress;\n xhr.send(null);\n return xhrId;\n }\n onProgress(xhrId, evt) {\n const pendingRequest = this.pendingRequests[xhrId];\n if (!pendingRequest) {\n return;\n }\n pendingRequest.onProgress?.(evt);\n }\n onStateChange(xhrId, evt) {\n const pendingRequest = this.pendingRequests[xhrId];\n if (!pendingRequest) {\n return;\n }\n const xhr = pendingRequest.xhr;\n if (xhr.readyState >= 2 && pendingRequest.onHeadersReceived) {\n pendingRequest.onHeadersReceived();\n delete pendingRequest.onHeadersReceived;\n }\n if (xhr.readyState !== 4) {\n return;\n }\n if (!(xhrId in this.pendingRequests)) {\n return;\n }\n delete this.pendingRequests[xhrId];\n if (xhr.status === 0 && this.isHttp) {\n pendingRequest.onError?.(xhr.status);\n return;\n }\n const xhrStatus = xhr.status || OK_RESPONSE;\n const ok_response_on_range_request = xhrStatus === OK_RESPONSE && pendingRequest.expectedStatus === PARTIAL_CONTENT_RESPONSE;\n if (!ok_response_on_range_request && xhrStatus !== pendingRequest.expectedStatus) {\n pendingRequest.onError?.(xhr.status);\n return;\n }\n const chunk = getArrayBuffer(xhr);\n if (xhrStatus === PARTIAL_CONTENT_RESPONSE) {\n const rangeHeader = xhr.getResponseHeader(\"Content-Range\");\n const matches = /bytes (\\d+)-(\\d+)\\/(\\d+)/.exec(rangeHeader);\n pendingRequest.onDone({\n begin: parseInt(matches[1], 10),\n chunk\n });\n } else if (chunk) {\n pendingRequest.onDone({\n begin: 0,\n chunk\n });\n } else {\n pendingRequest.onError?.(xhr.status);\n }\n }\n getRequestXhr(xhrId) {\n return this.pendingRequests[xhrId].xhr;\n }\n isPendingRequest(xhrId) {\n return xhrId in this.pendingRequests;\n }\n abortRequest(xhrId) {\n const xhr = this.pendingRequests[xhrId].xhr;\n delete this.pendingRequests[xhrId];\n xhr.abort();\n }\n}\nclass PDFNetworkStream {\n constructor(source) {\n this._source = source;\n this._manager = new NetworkManager(source.url, {\n httpHeaders: source.httpHeaders,\n withCredentials: source.withCredentials\n });\n this._rangeChunkSize = source.rangeChunkSize;\n this._fullRequestReader = null;\n this._rangeRequestReaders = [];\n }\n _onRangeRequestReaderClosed(reader) {\n const i = this._rangeRequestReaders.indexOf(reader);\n if (i >= 0) {\n this._rangeRequestReaders.splice(i, 1);\n }\n }\n getFullReader() {\n (0, _util.assert)(!this._fullRequestReader, \"PDFNetworkStream.getFullReader can only be called once.\");\n this._fullRequestReader = new PDFNetworkStreamFullRequestReader(this._manager, this._source);\n return this._fullRequestReader;\n }\n getRangeReader(begin, end) {\n const reader = new PDFNetworkStreamRangeRequestReader(this._manager, begin, end);\n reader.onClosed = this._onRangeRequestReaderClosed.bind(this);\n this._rangeRequestReaders.push(reader);\n return reader;\n }\n cancelAllRequests(reason) {\n this._fullRequestReader?.cancel(reason);\n for (const reader of this._rangeRequestReaders.slice(0)) {\n reader.cancel(reason);\n }\n }\n}\nexports.PDFNetworkStream = PDFNetworkStream;\nclass PDFNetworkStreamFullRequestReader {\n constructor(manager, source) {\n this._manager = manager;\n const args = {\n onHeadersReceived: this._onHeadersReceived.bind(this),\n onDone: this._onDone.bind(this),\n onError: this._onError.bind(this),\n onProgress: this._onProgress.bind(this)\n };\n this._url = source.url;\n this._fullRequestId = manager.requestFull(args);\n this._headersReceivedCapability = new _util.PromiseCapability();\n this._disableRange = source.disableRange || false;\n this._contentLength = source.length;\n this._rangeChunkSize = source.rangeChunkSize;\n if (!this._rangeChunkSize && !this._disableRange) {\n this._disableRange = true;\n }\n this._isStreamingSupported = false;\n this._isRangeSupported = false;\n this._cachedChunks = [];\n this._requests = [];\n this._done = false;\n this._storedError = undefined;\n this._filename = null;\n this.onProgress = null;\n }\n _onHeadersReceived() {\n const fullRequestXhrId = this._fullRequestId;\n const fullRequestXhr = this._manager.getRequestXhr(fullRequestXhrId);\n const getResponseHeader = name => {\n return fullRequestXhr.getResponseHeader(name);\n };\n const {\n allowRangeRequests,\n suggestedLength\n } = (0, _network_utils.validateRangeRequestCapabilities)({\n getResponseHeader,\n isHttp: this._manager.isHttp,\n rangeChunkSize: this._rangeChunkSize,\n disableRange: this._disableRange\n });\n if (allowRangeRequests) {\n this._isRangeSupported = true;\n }\n this._contentLength = suggestedLength || this._contentLength;\n this._filename = (0, _network_utils.extractFilenameFromHeader)(getResponseHeader);\n if (this._isRangeSupported) {\n this._manager.abortRequest(fullRequestXhrId);\n }\n this._headersReceivedCapability.resolve();\n }\n _onDone(data) {\n if (data) {\n if (this._requests.length > 0) {\n const requestCapability = this._requests.shift();\n requestCapability.resolve({\n value: data.chunk,\n done: false\n });\n } else {\n this._cachedChunks.push(data.chunk);\n }\n }\n this._done = true;\n if (this._cachedChunks.length > 0) {\n return;\n }\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n }\n _onError(status) {\n this._storedError = (0, _network_utils.createResponseStatusError)(status, this._url);\n this._headersReceivedCapability.reject(this._storedError);\n for (const requestCapability of this._requests) {\n requestCapability.reject(this._storedError);\n }\n this._requests.length = 0;\n this._cachedChunks.length = 0;\n }\n _onProgress(evt) {\n this.onProgress?.({\n loaded: evt.loaded,\n total: evt.lengthComputable ? evt.total : this._contentLength\n });\n }\n get filename() {\n return this._filename;\n }\n get isRangeSupported() {\n return this._isRangeSupported;\n }\n get isStreamingSupported() {\n return this._isStreamingSupported;\n }\n get contentLength() {\n return this._contentLength;\n }\n get headersReady() {\n return this._headersReceivedCapability.promise;\n }\n async read() {\n if (this._storedError) {\n throw this._storedError;\n }\n if (this._cachedChunks.length > 0) {\n const chunk = this._cachedChunks.shift();\n return {\n value: chunk,\n done: false\n };\n }\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n const requestCapability = new _util.PromiseCapability();\n this._requests.push(requestCapability);\n return requestCapability.promise;\n }\n cancel(reason) {\n this._done = true;\n this._headersReceivedCapability.reject(reason);\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n if (this._manager.isPendingRequest(this._fullRequestId)) {\n this._manager.abortRequest(this._fullRequestId);\n }\n this._fullRequestReader = null;\n }\n}\nclass PDFNetworkStreamRangeRequestReader {\n constructor(manager, begin, end) {\n this._manager = manager;\n const args = {\n onDone: this._onDone.bind(this),\n onError: this._onError.bind(this),\n onProgress: this._onProgress.bind(this)\n };\n this._url = manager.url;\n this._requestId = manager.requestRange(begin, end, args);\n this._requests = [];\n this._queuedChunk = null;\n this._done = false;\n this._storedError = undefined;\n this.onProgress = null;\n this.onClosed = null;\n }\n _close() {\n this.onClosed?.(this);\n }\n _onDone(data) {\n const chunk = data.chunk;\n if (this._requests.length > 0) {\n const requestCapability = this._requests.shift();\n requestCapability.resolve({\n value: chunk,\n done: false\n });\n } else {\n this._queuedChunk = chunk;\n }\n this._done = true;\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n this._close();\n }\n _onError(status) {\n this._storedError = (0, _network_utils.createResponseStatusError)(status, this._url);\n for (const requestCapability of this._requests) {\n requestCapability.reject(this._storedError);\n }\n this._requests.length = 0;\n this._queuedChunk = null;\n }\n _onProgress(evt) {\n if (!this.isStreamingSupported) {\n this.onProgress?.({\n loaded: evt.loaded\n });\n }\n }\n get isStreamingSupported() {\n return false;\n }\n async read() {\n if (this._storedError) {\n throw this._storedError;\n }\n if (this._queuedChunk !== null) {\n const chunk = this._queuedChunk;\n this._queuedChunk = null;\n return {\n value: chunk,\n done: false\n };\n }\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n const requestCapability = new _util.PromiseCapability();\n this._requests.push(requestCapability);\n return requestCapability.promise;\n }\n cancel(reason) {\n this._done = true;\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n if (this._manager.isPendingRequest(this._requestId)) {\n this._manager.abortRequest(this._requestId);\n }\n this._close();\n }\n}\n\n/***/ }),\n/* 23 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.PDFNodeStream = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _network_utils = __w_pdfjs_require__(20);\n;\nconst fileUriRegex = /^file:\\/\\/\\/[a-zA-Z]:\\//;\nfunction parseUrl(sourceUrl) {\n const url = require(\"url\");\n const parsedUrl = url.parse(sourceUrl);\n if (parsedUrl.protocol === \"file:\" || parsedUrl.host) {\n return parsedUrl;\n }\n if (/^[a-z]:[/\\\\]/i.test(sourceUrl)) {\n return url.parse(`file:///${sourceUrl}`);\n }\n if (!parsedUrl.host) {\n parsedUrl.protocol = \"file:\";\n }\n return parsedUrl;\n}\nclass PDFNodeStream {\n constructor(source) {\n this.source = source;\n this.url = parseUrl(source.url);\n this.isHttp = this.url.protocol === \"http:\" || this.url.protocol === \"https:\";\n this.isFsUrl = this.url.protocol === \"file:\";\n this.httpHeaders = this.isHttp && source.httpHeaders || {};\n this._fullRequestReader = null;\n this._rangeRequestReaders = [];\n }\n get _progressiveDataLength() {\n return this._fullRequestReader?._loaded ?? 0;\n }\n getFullReader() {\n (0, _util.assert)(!this._fullRequestReader, \"PDFNodeStream.getFullReader can only be called once.\");\n this._fullRequestReader = this.isFsUrl ? new PDFNodeStreamFsFullReader(this) : new PDFNodeStreamFullReader(this);\n return this._fullRequestReader;\n }\n getRangeReader(start, end) {\n if (end <= this._progressiveDataLength) {\n return null;\n }\n const rangeReader = this.isFsUrl ? new PDFNodeStreamFsRangeReader(this, start, end) : new PDFNodeStreamRangeReader(this, start, end);\n this._rangeRequestReaders.push(rangeReader);\n return rangeReader;\n }\n cancelAllRequests(reason) {\n this._fullRequestReader?.cancel(reason);\n for (const reader of this._rangeRequestReaders.slice(0)) {\n reader.cancel(reason);\n }\n }\n}\nexports.PDFNodeStream = PDFNodeStream;\nclass BaseFullReader {\n constructor(stream) {\n this._url = stream.url;\n this._done = false;\n this._storedError = null;\n this.onProgress = null;\n const source = stream.source;\n this._contentLength = source.length;\n this._loaded = 0;\n this._filename = null;\n this._disableRange = source.disableRange || false;\n this._rangeChunkSize = source.rangeChunkSize;\n if (!this._rangeChunkSize && !this._disableRange) {\n this._disableRange = true;\n }\n this._isStreamingSupported = !source.disableStream;\n this._isRangeSupported = !source.disableRange;\n this._readableStream = null;\n this._readCapability = new _util.PromiseCapability();\n this._headersCapability = new _util.PromiseCapability();\n }\n get headersReady() {\n return this._headersCapability.promise;\n }\n get filename() {\n return this._filename;\n }\n get contentLength() {\n return this._contentLength;\n }\n get isRangeSupported() {\n return this._isRangeSupported;\n }\n get isStreamingSupported() {\n return this._isStreamingSupported;\n }\n async read() {\n await this._readCapability.promise;\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n if (this._storedError) {\n throw this._storedError;\n }\n const chunk = this._readableStream.read();\n if (chunk === null) {\n this._readCapability = new _util.PromiseCapability();\n return this.read();\n }\n this._loaded += chunk.length;\n this.onProgress?.({\n loaded: this._loaded,\n total: this._contentLength\n });\n const buffer = new Uint8Array(chunk).buffer;\n return {\n value: buffer,\n done: false\n };\n }\n cancel(reason) {\n if (!this._readableStream) {\n this._error(reason);\n return;\n }\n this._readableStream.destroy(reason);\n }\n _error(reason) {\n this._storedError = reason;\n this._readCapability.resolve();\n }\n _setReadableStream(readableStream) {\n this._readableStream = readableStream;\n readableStream.on(\"readable\", () => {\n this._readCapability.resolve();\n });\n readableStream.on(\"end\", () => {\n readableStream.destroy();\n this._done = true;\n this._readCapability.resolve();\n });\n readableStream.on(\"error\", reason => {\n this._error(reason);\n });\n if (!this._isStreamingSupported && this._isRangeSupported) {\n this._error(new _util.AbortException(\"streaming is disabled\"));\n }\n if (this._storedError) {\n this._readableStream.destroy(this._storedError);\n }\n }\n}\nclass BaseRangeReader {\n constructor(stream) {\n this._url = stream.url;\n this._done = false;\n this._storedError = null;\n this.onProgress = null;\n this._loaded = 0;\n this._readableStream = null;\n this._readCapability = new _util.PromiseCapability();\n const source = stream.source;\n this._isStreamingSupported = !source.disableStream;\n }\n get isStreamingSupported() {\n return this._isStreamingSupported;\n }\n async read() {\n await this._readCapability.promise;\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n if (this._storedError) {\n throw this._storedError;\n }\n const chunk = this._readableStream.read();\n if (chunk === null) {\n this._readCapability = new _util.PromiseCapability();\n return this.read();\n }\n this._loaded += chunk.length;\n this.onProgress?.({\n loaded: this._loaded\n });\n const buffer = new Uint8Array(chunk).buffer;\n return {\n value: buffer,\n done: false\n };\n }\n cancel(reason) {\n if (!this._readableStream) {\n this._error(reason);\n return;\n }\n this._readableStream.destroy(reason);\n }\n _error(reason) {\n this._storedError = reason;\n this._readCapability.resolve();\n }\n _setReadableStream(readableStream) {\n this._readableStream = readableStream;\n readableStream.on(\"readable\", () => {\n this._readCapability.resolve();\n });\n readableStream.on(\"end\", () => {\n readableStream.destroy();\n this._done = true;\n this._readCapability.resolve();\n });\n readableStream.on(\"error\", reason => {\n this._error(reason);\n });\n if (this._storedError) {\n this._readableStream.destroy(this._storedError);\n }\n }\n}\nfunction createRequestOptions(parsedUrl, headers) {\n return {\n protocol: parsedUrl.protocol,\n auth: parsedUrl.auth,\n host: parsedUrl.hostname,\n port: parsedUrl.port,\n path: parsedUrl.path,\n method: \"GET\",\n headers\n };\n}\nclass PDFNodeStreamFullReader extends BaseFullReader {\n constructor(stream) {\n super(stream);\n const handleResponse = response => {\n if (response.statusCode === 404) {\n const error = new _util.MissingPDFException(`Missing PDF \"${this._url}\".`);\n this._storedError = error;\n this._headersCapability.reject(error);\n return;\n }\n this._headersCapability.resolve();\n this._setReadableStream(response);\n const getResponseHeader = name => {\n return this._readableStream.headers[name.toLowerCase()];\n };\n const {\n allowRangeRequests,\n suggestedLength\n } = (0, _network_utils.validateRangeRequestCapabilities)({\n getResponseHeader,\n isHttp: stream.isHttp,\n rangeChunkSize: this._rangeChunkSize,\n disableRange: this._disableRange\n });\n this._isRangeSupported = allowRangeRequests;\n this._contentLength = suggestedLength || this._contentLength;\n this._filename = (0, _network_utils.extractFilenameFromHeader)(getResponseHeader);\n };\n this._request = null;\n if (this._url.protocol === \"http:\") {\n const http = require(\"http\");\n this._request = http.request(createRequestOptions(this._url, stream.httpHeaders), handleResponse);\n } else {\n const https = require(\"https\");\n this._request = https.request(createRequestOptions(this._url, stream.httpHeaders), handleResponse);\n }\n this._request.on(\"error\", reason => {\n this._storedError = reason;\n this._headersCapability.reject(reason);\n });\n this._request.end();\n }\n}\nclass PDFNodeStreamRangeReader extends BaseRangeReader {\n constructor(stream, start, end) {\n super(stream);\n this._httpHeaders = {};\n for (const property in stream.httpHeaders) {\n const value = stream.httpHeaders[property];\n if (value === undefined) {\n continue;\n }\n this._httpHeaders[property] = value;\n }\n this._httpHeaders.Range = `bytes=${start}-${end - 1}`;\n const handleResponse = response => {\n if (response.statusCode === 404) {\n const error = new _util.MissingPDFException(`Missing PDF \"${this._url}\".`);\n this._storedError = error;\n return;\n }\n this._setReadableStream(response);\n };\n this._request = null;\n if (this._url.protocol === \"http:\") {\n const http = require(\"http\");\n this._request = http.request(createRequestOptions(this._url, this._httpHeaders), handleResponse);\n } else {\n const https = require(\"https\");\n this._request = https.request(createRequestOptions(this._url, this._httpHeaders), handleResponse);\n }\n this._request.on(\"error\", reason => {\n this._storedError = reason;\n });\n this._request.end();\n }\n}\nclass PDFNodeStreamFsFullReader extends BaseFullReader {\n constructor(stream) {\n super(stream);\n let path = decodeURIComponent(this._url.path);\n if (fileUriRegex.test(this._url.href)) {\n path = path.replace(/^\\//, \"\");\n }\n const fs = require(\"fs\");\n fs.lstat(path, (error, stat) => {\n if (error) {\n if (error.code === \"ENOENT\") {\n error = new _util.MissingPDFException(`Missing PDF \"${path}\".`);\n }\n this._storedError = error;\n this._headersCapability.reject(error);\n return;\n }\n this._contentLength = stat.size;\n this._setReadableStream(fs.createReadStream(path));\n this._headersCapability.resolve();\n });\n }\n}\nclass PDFNodeStreamFsRangeReader extends BaseRangeReader {\n constructor(stream, start, end) {\n super(stream);\n let path = decodeURIComponent(this._url.path);\n if (fileUriRegex.test(this._url.href)) {\n path = path.replace(/^\\//, \"\");\n }\n const fs = require(\"fs\");\n this._setReadableStream(fs.createReadStream(path, {\n start,\n end: end - 1\n }));\n }\n}\n\n/***/ }),\n/* 24 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.SVGGraphics = void 0;\nvar _display_utils = __w_pdfjs_require__(6);\nvar _util = __w_pdfjs_require__(1);\n;\nconst SVG_DEFAULTS = {\n fontStyle: \"normal\",\n fontWeight: \"normal\",\n fillColor: \"#000000\"\n};\nconst XML_NS = \"http://www.w3.org/XML/1998/namespace\";\nconst XLINK_NS = \"http://www.w3.org/1999/xlink\";\nconst LINE_CAP_STYLES = [\"butt\", \"round\", \"square\"];\nconst LINE_JOIN_STYLES = [\"miter\", \"round\", \"bevel\"];\nconst createObjectURL = function (data, contentType = \"\", forceDataSchema = false) {\n if (URL.createObjectURL && typeof Blob !== \"undefined\" && !forceDataSchema) {\n return URL.createObjectURL(new Blob([data], {\n type: contentType\n }));\n }\n const digits = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n let buffer = `data:${contentType};base64,`;\n for (let i = 0, ii = data.length; i < ii; i += 3) {\n const b1 = data[i] & 0xff;\n const b2 = data[i + 1] & 0xff;\n const b3 = data[i + 2] & 0xff;\n const d1 = b1 >> 2,\n d2 = (b1 & 3) << 4 | b2 >> 4;\n const d3 = i + 1 < ii ? (b2 & 0xf) << 2 | b3 >> 6 : 64;\n const d4 = i + 2 < ii ? b3 & 0x3f : 64;\n buffer += digits[d1] + digits[d2] + digits[d3] + digits[d4];\n }\n return buffer;\n};\nconst convertImgDataToPng = function () {\n const PNG_HEADER = new Uint8Array([0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a]);\n const CHUNK_WRAPPER_SIZE = 12;\n const crcTable = new Int32Array(256);\n for (let i = 0; i < 256; i++) {\n let c = i;\n for (let h = 0; h < 8; h++) {\n c = c & 1 ? 0xedb88320 ^ c >> 1 & 0x7fffffff : c >> 1 & 0x7fffffff;\n }\n crcTable[i] = c;\n }\n function crc32(data, start, end) {\n let crc = -1;\n for (let i = start; i < end; i++) {\n const a = (crc ^ data[i]) & 0xff;\n const b = crcTable[a];\n crc = crc >>> 8 ^ b;\n }\n return crc ^ -1;\n }\n function writePngChunk(type, body, data, offset) {\n let p = offset;\n const len = body.length;\n data[p] = len >> 24 & 0xff;\n data[p + 1] = len >> 16 & 0xff;\n data[p + 2] = len >> 8 & 0xff;\n data[p + 3] = len & 0xff;\n p += 4;\n data[p] = type.charCodeAt(0) & 0xff;\n data[p + 1] = type.charCodeAt(1) & 0xff;\n data[p + 2] = type.charCodeAt(2) & 0xff;\n data[p + 3] = type.charCodeAt(3) & 0xff;\n p += 4;\n data.set(body, p);\n p += body.length;\n const crc = crc32(data, offset + 4, p);\n data[p] = crc >> 24 & 0xff;\n data[p + 1] = crc >> 16 & 0xff;\n data[p + 2] = crc >> 8 & 0xff;\n data[p + 3] = crc & 0xff;\n }\n function adler32(data, start, end) {\n let a = 1;\n let b = 0;\n for (let i = start; i < end; ++i) {\n a = (a + (data[i] & 0xff)) % 65521;\n b = (b + a) % 65521;\n }\n return b << 16 | a;\n }\n function deflateSync(literals) {\n if (!_util.isNodeJS) {\n return deflateSyncUncompressed(literals);\n }\n try {\n const input = parseInt(process.versions.node) >= 8 ? literals : Buffer.from(literals);\n const output = require(\"zlib\").deflateSync(input, {\n level: 9\n });\n return output instanceof Uint8Array ? output : new Uint8Array(output);\n } catch (e) {\n (0, _util.warn)(\"Not compressing PNG because zlib.deflateSync is unavailable: \" + e);\n }\n return deflateSyncUncompressed(literals);\n }\n function deflateSyncUncompressed(literals) {\n let len = literals.length;\n const maxBlockLength = 0xffff;\n const deflateBlocks = Math.ceil(len / maxBlockLength);\n const idat = new Uint8Array(2 + len + deflateBlocks * 5 + 4);\n let pi = 0;\n idat[pi++] = 0x78;\n idat[pi++] = 0x9c;\n let pos = 0;\n while (len > maxBlockLength) {\n idat[pi++] = 0x00;\n idat[pi++] = 0xff;\n idat[pi++] = 0xff;\n idat[pi++] = 0x00;\n idat[pi++] = 0x00;\n idat.set(literals.subarray(pos, pos + maxBlockLength), pi);\n pi += maxBlockLength;\n pos += maxBlockLength;\n len -= maxBlockLength;\n }\n idat[pi++] = 0x01;\n idat[pi++] = len & 0xff;\n idat[pi++] = len >> 8 & 0xff;\n idat[pi++] = ~len & 0xffff & 0xff;\n idat[pi++] = (~len & 0xffff) >> 8 & 0xff;\n idat.set(literals.subarray(pos), pi);\n pi += literals.length - pos;\n const adler = adler32(literals, 0, literals.length);\n idat[pi++] = adler >> 24 & 0xff;\n idat[pi++] = adler >> 16 & 0xff;\n idat[pi++] = adler >> 8 & 0xff;\n idat[pi++] = adler & 0xff;\n return idat;\n }\n function encode(imgData, kind, forceDataSchema, isMask) {\n const width = imgData.width;\n const height = imgData.height;\n let bitDepth, colorType, lineSize;\n const bytes = imgData.data;\n switch (kind) {\n case _util.ImageKind.GRAYSCALE_1BPP:\n colorType = 0;\n bitDepth = 1;\n lineSize = width + 7 >> 3;\n break;\n case _util.ImageKind.RGB_24BPP:\n colorType = 2;\n bitDepth = 8;\n lineSize = width * 3;\n break;\n case _util.ImageKind.RGBA_32BPP:\n colorType = 6;\n bitDepth = 8;\n lineSize = width * 4;\n break;\n default:\n throw new Error(\"invalid format\");\n }\n const literals = new Uint8Array((1 + lineSize) * height);\n let offsetLiterals = 0,\n offsetBytes = 0;\n for (let y = 0; y < height; ++y) {\n literals[offsetLiterals++] = 0;\n literals.set(bytes.subarray(offsetBytes, offsetBytes + lineSize), offsetLiterals);\n offsetBytes += lineSize;\n offsetLiterals += lineSize;\n }\n if (kind === _util.ImageKind.GRAYSCALE_1BPP && isMask) {\n offsetLiterals = 0;\n for (let y = 0; y < height; y++) {\n offsetLiterals++;\n for (let i = 0; i < lineSize; i++) {\n literals[offsetLiterals++] ^= 0xff;\n }\n }\n }\n const ihdr = new Uint8Array([width >> 24 & 0xff, width >> 16 & 0xff, width >> 8 & 0xff, width & 0xff, height >> 24 & 0xff, height >> 16 & 0xff, height >> 8 & 0xff, height & 0xff, bitDepth, colorType, 0x00, 0x00, 0x00]);\n const idat = deflateSync(literals);\n const pngLength = PNG_HEADER.length + CHUNK_WRAPPER_SIZE * 3 + ihdr.length + idat.length;\n const data = new Uint8Array(pngLength);\n let offset = 0;\n data.set(PNG_HEADER, offset);\n offset += PNG_HEADER.length;\n writePngChunk(\"IHDR\", ihdr, data, offset);\n offset += CHUNK_WRAPPER_SIZE + ihdr.length;\n writePngChunk(\"IDATA\", idat, data, offset);\n offset += CHUNK_WRAPPER_SIZE + idat.length;\n writePngChunk(\"IEND\", new Uint8Array(0), data, offset);\n return createObjectURL(data, \"image/png\", forceDataSchema);\n }\n return function convertImgDataToPng(imgData, forceDataSchema, isMask) {\n const kind = imgData.kind === undefined ? _util.ImageKind.GRAYSCALE_1BPP : imgData.kind;\n return encode(imgData, kind, forceDataSchema, isMask);\n };\n}();\nclass SVGExtraState {\n constructor() {\n this.fontSizeScale = 1;\n this.fontWeight = SVG_DEFAULTS.fontWeight;\n this.fontSize = 0;\n this.textMatrix = _util.IDENTITY_MATRIX;\n this.fontMatrix = _util.FONT_IDENTITY_MATRIX;\n this.leading = 0;\n this.textRenderingMode = _util.TextRenderingMode.FILL;\n this.textMatrixScale = 1;\n this.x = 0;\n this.y = 0;\n this.lineX = 0;\n this.lineY = 0;\n this.charSpacing = 0;\n this.wordSpacing = 0;\n this.textHScale = 1;\n this.textRise = 0;\n this.fillColor = SVG_DEFAULTS.fillColor;\n this.strokeColor = \"#000000\";\n this.fillAlpha = 1;\n this.strokeAlpha = 1;\n this.lineWidth = 1;\n this.lineJoin = \"\";\n this.lineCap = \"\";\n this.miterLimit = 0;\n this.dashArray = [];\n this.dashPhase = 0;\n this.dependencies = [];\n this.activeClipUrl = null;\n this.clipGroup = null;\n this.maskId = \"\";\n }\n clone() {\n return Object.create(this);\n }\n setCurrentPoint(x, y) {\n this.x = x;\n this.y = y;\n }\n}\nfunction opListToTree(opList) {\n let opTree = [];\n const tmp = [];\n for (const opListElement of opList) {\n if (opListElement.fn === \"save\") {\n opTree.push({\n fnId: 92,\n fn: \"group\",\n items: []\n });\n tmp.push(opTree);\n opTree = opTree.at(-1).items;\n continue;\n }\n if (opListElement.fn === \"restore\") {\n opTree = tmp.pop();\n } else {\n opTree.push(opListElement);\n }\n }\n return opTree;\n}\nfunction pf(value) {\n if (Number.isInteger(value)) {\n return value.toString();\n }\n const s = value.toFixed(10);\n let i = s.length - 1;\n if (s[i] !== \"0\") {\n return s;\n }\n do {\n i--;\n } while (s[i] === \"0\");\n return s.substring(0, s[i] === \".\" ? i : i + 1);\n}\nfunction pm(m) {\n if (m[4] === 0 && m[5] === 0) {\n if (m[1] === 0 && m[2] === 0) {\n if (m[0] === 1 && m[3] === 1) {\n return \"\";\n }\n return `scale(${pf(m[0])} ${pf(m[3])})`;\n }\n if (m[0] === m[3] && m[1] === -m[2]) {\n const a = Math.acos(m[0]) * 180 / Math.PI;\n return `rotate(${pf(a)})`;\n }\n } else if (m[0] === 1 && m[1] === 0 && m[2] === 0 && m[3] === 1) {\n return `translate(${pf(m[4])} ${pf(m[5])})`;\n }\n return `matrix(${pf(m[0])} ${pf(m[1])} ${pf(m[2])} ${pf(m[3])} ${pf(m[4])} ` + `${pf(m[5])})`;\n}\nlet clipCount = 0;\nlet maskCount = 0;\nlet shadingCount = 0;\nclass SVGGraphics {\n constructor(commonObjs, objs, forceDataSchema = false) {\n (0, _display_utils.deprecated)(\"The SVG back-end is no longer maintained and *may* be removed in the future.\");\n this.svgFactory = new _display_utils.DOMSVGFactory();\n this.current = new SVGExtraState();\n this.transformMatrix = _util.IDENTITY_MATRIX;\n this.transformStack = [];\n this.extraStack = [];\n this.commonObjs = commonObjs;\n this.objs = objs;\n this.pendingClip = null;\n this.pendingEOFill = false;\n this.embedFonts = false;\n this.embeddedFonts = Object.create(null);\n this.cssStyle = null;\n this.forceDataSchema = !!forceDataSchema;\n this._operatorIdMapping = [];\n for (const op in _util.OPS) {\n this._operatorIdMapping[_util.OPS[op]] = op;\n }\n }\n getObject(data, fallback = null) {\n if (typeof data === \"string\") {\n return data.startsWith(\"g_\") ? this.commonObjs.get(data) : this.objs.get(data);\n }\n return fallback;\n }\n save() {\n this.transformStack.push(this.transformMatrix);\n const old = this.current;\n this.extraStack.push(old);\n this.current = old.clone();\n }\n restore() {\n this.transformMatrix = this.transformStack.pop();\n this.current = this.extraStack.pop();\n this.pendingClip = null;\n this.tgrp = null;\n }\n group(items) {\n this.save();\n this.executeOpTree(items);\n this.restore();\n }\n loadDependencies(operatorList) {\n const fnArray = operatorList.fnArray;\n const argsArray = operatorList.argsArray;\n for (let i = 0, ii = fnArray.length; i < ii; i++) {\n if (fnArray[i] !== _util.OPS.dependency) {\n continue;\n }\n for (const obj of argsArray[i]) {\n const objsPool = obj.startsWith(\"g_\") ? this.commonObjs : this.objs;\n const promise = new Promise(resolve => {\n objsPool.get(obj, resolve);\n });\n this.current.dependencies.push(promise);\n }\n }\n return Promise.all(this.current.dependencies);\n }\n transform(a, b, c, d, e, f) {\n const transformMatrix = [a, b, c, d, e, f];\n this.transformMatrix = _util.Util.transform(this.transformMatrix, transformMatrix);\n this.tgrp = null;\n }\n getSVG(operatorList, viewport) {\n this.viewport = viewport;\n const svgElement = this._initialize(viewport);\n return this.loadDependencies(operatorList).then(() => {\n this.transformMatrix = _util.IDENTITY_MATRIX;\n this.executeOpTree(this.convertOpList(operatorList));\n return svgElement;\n });\n }\n convertOpList(operatorList) {\n const operatorIdMapping = this._operatorIdMapping;\n const argsArray = operatorList.argsArray;\n const fnArray = operatorList.fnArray;\n const opList = [];\n for (let i = 0, ii = fnArray.length; i < ii; i++) {\n const fnId = fnArray[i];\n opList.push({\n fnId,\n fn: operatorIdMapping[fnId],\n args: argsArray[i]\n });\n }\n return opListToTree(opList);\n }\n executeOpTree(opTree) {\n for (const opTreeElement of opTree) {\n const fn = opTreeElement.fn;\n const fnId = opTreeElement.fnId;\n const args = opTreeElement.args;\n switch (fnId | 0) {\n case _util.OPS.beginText:\n this.beginText();\n break;\n case _util.OPS.dependency:\n break;\n case _util.OPS.setLeading:\n this.setLeading(args);\n break;\n case _util.OPS.setLeadingMoveText:\n this.setLeadingMoveText(args[0], args[1]);\n break;\n case _util.OPS.setFont:\n this.setFont(args);\n break;\n case _util.OPS.showText:\n this.showText(args[0]);\n break;\n case _util.OPS.showSpacedText:\n this.showText(args[0]);\n break;\n case _util.OPS.endText:\n this.endText();\n break;\n case _util.OPS.moveText:\n this.moveText(args[0], args[1]);\n break;\n case _util.OPS.setCharSpacing:\n this.setCharSpacing(args[0]);\n break;\n case _util.OPS.setWordSpacing:\n this.setWordSpacing(args[0]);\n break;\n case _util.OPS.setHScale:\n this.setHScale(args[0]);\n break;\n case _util.OPS.setTextMatrix:\n this.setTextMatrix(args[0], args[1], args[2], args[3], args[4], args[5]);\n break;\n case _util.OPS.setTextRise:\n this.setTextRise(args[0]);\n break;\n case _util.OPS.setTextRenderingMode:\n this.setTextRenderingMode(args[0]);\n break;\n case _util.OPS.setLineWidth:\n this.setLineWidth(args[0]);\n break;\n case _util.OPS.setLineJoin:\n this.setLineJoin(args[0]);\n break;\n case _util.OPS.setLineCap:\n this.setLineCap(args[0]);\n break;\n case _util.OPS.setMiterLimit:\n this.setMiterLimit(args[0]);\n break;\n case _util.OPS.setFillRGBColor:\n this.setFillRGBColor(args[0], args[1], args[2]);\n break;\n case _util.OPS.setStrokeRGBColor:\n this.setStrokeRGBColor(args[0], args[1], args[2]);\n break;\n case _util.OPS.setStrokeColorN:\n this.setStrokeColorN(args);\n break;\n case _util.OPS.setFillColorN:\n this.setFillColorN(args);\n break;\n case _util.OPS.shadingFill:\n this.shadingFill(args[0]);\n break;\n case _util.OPS.setDash:\n this.setDash(args[0], args[1]);\n break;\n case _util.OPS.setRenderingIntent:\n this.setRenderingIntent(args[0]);\n break;\n case _util.OPS.setFlatness:\n this.setFlatness(args[0]);\n break;\n case _util.OPS.setGState:\n this.setGState(args[0]);\n break;\n case _util.OPS.fill:\n this.fill();\n break;\n case _util.OPS.eoFill:\n this.eoFill();\n break;\n case _util.OPS.stroke:\n this.stroke();\n break;\n case _util.OPS.fillStroke:\n this.fillStroke();\n break;\n case _util.OPS.eoFillStroke:\n this.eoFillStroke();\n break;\n case _util.OPS.clip:\n this.clip(\"nonzero\");\n break;\n case _util.OPS.eoClip:\n this.clip(\"evenodd\");\n break;\n case _util.OPS.paintSolidColorImageMask:\n this.paintSolidColorImageMask();\n break;\n case _util.OPS.paintImageXObject:\n this.paintImageXObject(args[0]);\n break;\n case _util.OPS.paintInlineImageXObject:\n this.paintInlineImageXObject(args[0]);\n break;\n case _util.OPS.paintImageMaskXObject:\n this.paintImageMaskXObject(args[0]);\n break;\n case _util.OPS.paintFormXObjectBegin:\n this.paintFormXObjectBegin(args[0], args[1]);\n break;\n case _util.OPS.paintFormXObjectEnd:\n this.paintFormXObjectEnd();\n break;\n case _util.OPS.closePath:\n this.closePath();\n break;\n case _util.OPS.closeStroke:\n this.closeStroke();\n break;\n case _util.OPS.closeFillStroke:\n this.closeFillStroke();\n break;\n case _util.OPS.closeEOFillStroke:\n this.closeEOFillStroke();\n break;\n case _util.OPS.nextLine:\n this.nextLine();\n break;\n case _util.OPS.transform:\n this.transform(args[0], args[1], args[2], args[3], args[4], args[5]);\n break;\n case _util.OPS.constructPath:\n this.constructPath(args[0], args[1]);\n break;\n case _util.OPS.endPath:\n this.endPath();\n break;\n case 92:\n this.group(opTreeElement.items);\n break;\n default:\n (0, _util.warn)(`Unimplemented operator ${fn}`);\n break;\n }\n }\n }\n setWordSpacing(wordSpacing) {\n this.current.wordSpacing = wordSpacing;\n }\n setCharSpacing(charSpacing) {\n this.current.charSpacing = charSpacing;\n }\n nextLine() {\n this.moveText(0, this.current.leading);\n }\n setTextMatrix(a, b, c, d, e, f) {\n const current = this.current;\n current.textMatrix = current.lineMatrix = [a, b, c, d, e, f];\n current.textMatrixScale = Math.hypot(a, b);\n current.x = current.lineX = 0;\n current.y = current.lineY = 0;\n current.xcoords = [];\n current.ycoords = [];\n current.tspan = this.svgFactory.createElement(\"svg:tspan\");\n current.tspan.setAttributeNS(null, \"font-family\", current.fontFamily);\n current.tspan.setAttributeNS(null, \"font-size\", `${pf(current.fontSize)}px`);\n current.tspan.setAttributeNS(null, \"y\", pf(-current.y));\n current.txtElement = this.svgFactory.createElement(\"svg:text\");\n current.txtElement.append(current.tspan);\n }\n beginText() {\n const current = this.current;\n current.x = current.lineX = 0;\n current.y = current.lineY = 0;\n current.textMatrix = _util.IDENTITY_MATRIX;\n current.lineMatrix = _util.IDENTITY_MATRIX;\n current.textMatrixScale = 1;\n current.tspan = this.svgFactory.createElement(\"svg:tspan\");\n current.txtElement = this.svgFactory.createElement(\"svg:text\");\n current.txtgrp = this.svgFactory.createElement(\"svg:g\");\n current.xcoords = [];\n current.ycoords = [];\n }\n moveText(x, y) {\n const current = this.current;\n current.x = current.lineX += x;\n current.y = current.lineY += y;\n current.xcoords = [];\n current.ycoords = [];\n current.tspan = this.svgFactory.createElement(\"svg:tspan\");\n current.tspan.setAttributeNS(null, \"font-family\", current.fontFamily);\n current.tspan.setAttributeNS(null, \"font-size\", `${pf(current.fontSize)}px`);\n current.tspan.setAttributeNS(null, \"y\", pf(-current.y));\n }\n showText(glyphs) {\n const current = this.current;\n const font = current.font;\n const fontSize = current.fontSize;\n if (fontSize === 0) {\n return;\n }\n const fontSizeScale = current.fontSizeScale;\n const charSpacing = current.charSpacing;\n const wordSpacing = current.wordSpacing;\n const fontDirection = current.fontDirection;\n const textHScale = current.textHScale * fontDirection;\n const vertical = font.vertical;\n const spacingDir = vertical ? 1 : -1;\n const defaultVMetrics = font.defaultVMetrics;\n const widthAdvanceScale = fontSize * current.fontMatrix[0];\n let x = 0;\n for (const glyph of glyphs) {\n if (glyph === null) {\n x += fontDirection * wordSpacing;\n continue;\n } else if (typeof glyph === \"number\") {\n x += spacingDir * glyph * fontSize / 1000;\n continue;\n }\n const spacing = (glyph.isSpace ? wordSpacing : 0) + charSpacing;\n const character = glyph.fontChar;\n let scaledX, scaledY;\n let width = glyph.width;\n if (vertical) {\n let vx;\n const vmetric = glyph.vmetric || defaultVMetrics;\n vx = glyph.vmetric ? vmetric[1] : width * 0.5;\n vx = -vx * widthAdvanceScale;\n const vy = vmetric[2] * widthAdvanceScale;\n width = vmetric ? -vmetric[0] : width;\n scaledX = vx / fontSizeScale;\n scaledY = (x + vy) / fontSizeScale;\n } else {\n scaledX = x / fontSizeScale;\n scaledY = 0;\n }\n if (glyph.isInFont || font.missingFile) {\n current.xcoords.push(current.x + scaledX);\n if (vertical) {\n current.ycoords.push(-current.y + scaledY);\n }\n current.tspan.textContent += character;\n } else {}\n const charWidth = vertical ? width * widthAdvanceScale - spacing * fontDirection : width * widthAdvanceScale + spacing * fontDirection;\n x += charWidth;\n }\n current.tspan.setAttributeNS(null, \"x\", current.xcoords.map(pf).join(\" \"));\n if (vertical) {\n current.tspan.setAttributeNS(null, \"y\", current.ycoords.map(pf).join(\" \"));\n } else {\n current.tspan.setAttributeNS(null, \"y\", pf(-current.y));\n }\n if (vertical) {\n current.y -= x;\n } else {\n current.x += x * textHScale;\n }\n current.tspan.setAttributeNS(null, \"font-family\", current.fontFamily);\n current.tspan.setAttributeNS(null, \"font-size\", `${pf(current.fontSize)}px`);\n if (current.fontStyle !== SVG_DEFAULTS.fontStyle) {\n current.tspan.setAttributeNS(null, \"font-style\", current.fontStyle);\n }\n if (current.fontWeight !== SVG_DEFAULTS.fontWeight) {\n current.tspan.setAttributeNS(null, \"font-weight\", current.fontWeight);\n }\n const fillStrokeMode = current.textRenderingMode & _util.TextRenderingMode.FILL_STROKE_MASK;\n if (fillStrokeMode === _util.TextRenderingMode.FILL || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n if (current.fillColor !== SVG_DEFAULTS.fillColor) {\n current.tspan.setAttributeNS(null, \"fill\", current.fillColor);\n }\n if (current.fillAlpha < 1) {\n current.tspan.setAttributeNS(null, \"fill-opacity\", current.fillAlpha);\n }\n } else if (current.textRenderingMode === _util.TextRenderingMode.ADD_TO_PATH) {\n current.tspan.setAttributeNS(null, \"fill\", \"transparent\");\n } else {\n current.tspan.setAttributeNS(null, \"fill\", \"none\");\n }\n if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) {\n const lineWidthScale = 1 / (current.textMatrixScale || 1);\n this._setStrokeAttributes(current.tspan, lineWidthScale);\n }\n let textMatrix = current.textMatrix;\n if (current.textRise !== 0) {\n textMatrix = textMatrix.slice();\n textMatrix[5] += current.textRise;\n }\n current.txtElement.setAttributeNS(null, \"transform\", `${pm(textMatrix)} scale(${pf(textHScale)}, -1)`);\n current.txtElement.setAttributeNS(XML_NS, \"xml:space\", \"preserve\");\n current.txtElement.append(current.tspan);\n current.txtgrp.append(current.txtElement);\n this._ensureTransformGroup().append(current.txtElement);\n }\n setLeadingMoveText(x, y) {\n this.setLeading(-y);\n this.moveText(x, y);\n }\n addFontStyle(fontObj) {\n if (!fontObj.data) {\n throw new Error(\"addFontStyle: No font data available, \" + 'ensure that the \"fontExtraProperties\" API parameter is set.');\n }\n if (!this.cssStyle) {\n this.cssStyle = this.svgFactory.createElement(\"svg:style\");\n this.cssStyle.setAttributeNS(null, \"type\", \"text/css\");\n this.defs.append(this.cssStyle);\n }\n const url = createObjectURL(fontObj.data, fontObj.mimetype, this.forceDataSchema);\n this.cssStyle.textContent += `@font-face { font-family: \"${fontObj.loadedName}\";` + ` src: url(${url}); }\\n`;\n }\n setFont(details) {\n const current = this.current;\n const fontObj = this.commonObjs.get(details[0]);\n let size = details[1];\n current.font = fontObj;\n if (this.embedFonts && !fontObj.missingFile && !this.embeddedFonts[fontObj.loadedName]) {\n this.addFontStyle(fontObj);\n this.embeddedFonts[fontObj.loadedName] = fontObj;\n }\n current.fontMatrix = fontObj.fontMatrix || _util.FONT_IDENTITY_MATRIX;\n let bold = \"normal\";\n if (fontObj.black) {\n bold = \"900\";\n } else if (fontObj.bold) {\n bold = \"bold\";\n }\n const italic = fontObj.italic ? \"italic\" : \"normal\";\n if (size < 0) {\n size = -size;\n current.fontDirection = -1;\n } else {\n current.fontDirection = 1;\n }\n current.fontSize = size;\n current.fontFamily = fontObj.loadedName;\n current.fontWeight = bold;\n current.fontStyle = italic;\n current.tspan = this.svgFactory.createElement(\"svg:tspan\");\n current.tspan.setAttributeNS(null, \"y\", pf(-current.y));\n current.xcoords = [];\n current.ycoords = [];\n }\n endText() {\n const current = this.current;\n if (current.textRenderingMode & _util.TextRenderingMode.ADD_TO_PATH_FLAG && current.txtElement?.hasChildNodes()) {\n current.element = current.txtElement;\n this.clip(\"nonzero\");\n this.endPath();\n }\n }\n setLineWidth(width) {\n if (width > 0) {\n this.current.lineWidth = width;\n }\n }\n setLineCap(style) {\n this.current.lineCap = LINE_CAP_STYLES[style];\n }\n setLineJoin(style) {\n this.current.lineJoin = LINE_JOIN_STYLES[style];\n }\n setMiterLimit(limit) {\n this.current.miterLimit = limit;\n }\n setStrokeAlpha(strokeAlpha) {\n this.current.strokeAlpha = strokeAlpha;\n }\n setStrokeRGBColor(r, g, b) {\n this.current.strokeColor = _util.Util.makeHexColor(r, g, b);\n }\n setFillAlpha(fillAlpha) {\n this.current.fillAlpha = fillAlpha;\n }\n setFillRGBColor(r, g, b) {\n this.current.fillColor = _util.Util.makeHexColor(r, g, b);\n this.current.tspan = this.svgFactory.createElement(\"svg:tspan\");\n this.current.xcoords = [];\n this.current.ycoords = [];\n }\n setStrokeColorN(args) {\n this.current.strokeColor = this._makeColorN_Pattern(args);\n }\n setFillColorN(args) {\n this.current.fillColor = this._makeColorN_Pattern(args);\n }\n shadingFill(args) {\n const {\n width,\n height\n } = this.viewport;\n const inv = _util.Util.inverseTransform(this.transformMatrix);\n const [x0, y0, x1, y1] = _util.Util.getAxialAlignedBoundingBox([0, 0, width, height], inv);\n const rect = this.svgFactory.createElement(\"svg:rect\");\n rect.setAttributeNS(null, \"x\", x0);\n rect.setAttributeNS(null, \"y\", y0);\n rect.setAttributeNS(null, \"width\", x1 - x0);\n rect.setAttributeNS(null, \"height\", y1 - y0);\n rect.setAttributeNS(null, \"fill\", this._makeShadingPattern(args));\n if (this.current.fillAlpha < 1) {\n rect.setAttributeNS(null, \"fill-opacity\", this.current.fillAlpha);\n }\n this._ensureTransformGroup().append(rect);\n }\n _makeColorN_Pattern(args) {\n if (args[0] === \"TilingPattern\") {\n return this._makeTilingPattern(args);\n }\n return this._makeShadingPattern(args);\n }\n _makeTilingPattern(args) {\n const color = args[1];\n const operatorList = args[2];\n const matrix = args[3] || _util.IDENTITY_MATRIX;\n const [x0, y0, x1, y1] = args[4];\n const xstep = args[5];\n const ystep = args[6];\n const paintType = args[7];\n const tilingId = `shading${shadingCount++}`;\n const [tx0, ty0, tx1, ty1] = _util.Util.normalizeRect([..._util.Util.applyTransform([x0, y0], matrix), ..._util.Util.applyTransform([x1, y1], matrix)]);\n const [xscale, yscale] = _util.Util.singularValueDecompose2dScale(matrix);\n const txstep = xstep * xscale;\n const tystep = ystep * yscale;\n const tiling = this.svgFactory.createElement(\"svg:pattern\");\n tiling.setAttributeNS(null, \"id\", tilingId);\n tiling.setAttributeNS(null, \"patternUnits\", \"userSpaceOnUse\");\n tiling.setAttributeNS(null, \"width\", txstep);\n tiling.setAttributeNS(null, \"height\", tystep);\n tiling.setAttributeNS(null, \"x\", `${tx0}`);\n tiling.setAttributeNS(null, \"y\", `${ty0}`);\n const svg = this.svg;\n const transformMatrix = this.transformMatrix;\n const fillColor = this.current.fillColor;\n const strokeColor = this.current.strokeColor;\n const bbox = this.svgFactory.create(tx1 - tx0, ty1 - ty0);\n this.svg = bbox;\n this.transformMatrix = matrix;\n if (paintType === 2) {\n const cssColor = _util.Util.makeHexColor(...color);\n this.current.fillColor = cssColor;\n this.current.strokeColor = cssColor;\n }\n this.executeOpTree(this.convertOpList(operatorList));\n this.svg = svg;\n this.transformMatrix = transformMatrix;\n this.current.fillColor = fillColor;\n this.current.strokeColor = strokeColor;\n tiling.append(bbox.childNodes[0]);\n this.defs.append(tiling);\n return `url(#${tilingId})`;\n }\n _makeShadingPattern(args) {\n if (typeof args === \"string\") {\n args = this.objs.get(args);\n }\n switch (args[0]) {\n case \"RadialAxial\":\n const shadingId = `shading${shadingCount++}`;\n const colorStops = args[3];\n let gradient;\n switch (args[1]) {\n case \"axial\":\n const point0 = args[4];\n const point1 = args[5];\n gradient = this.svgFactory.createElement(\"svg:linearGradient\");\n gradient.setAttributeNS(null, \"id\", shadingId);\n gradient.setAttributeNS(null, \"gradientUnits\", \"userSpaceOnUse\");\n gradient.setAttributeNS(null, \"x1\", point0[0]);\n gradient.setAttributeNS(null, \"y1\", point0[1]);\n gradient.setAttributeNS(null, \"x2\", point1[0]);\n gradient.setAttributeNS(null, \"y2\", point1[1]);\n break;\n case \"radial\":\n const focalPoint = args[4];\n const circlePoint = args[5];\n const focalRadius = args[6];\n const circleRadius = args[7];\n gradient = this.svgFactory.createElement(\"svg:radialGradient\");\n gradient.setAttributeNS(null, \"id\", shadingId);\n gradient.setAttributeNS(null, \"gradientUnits\", \"userSpaceOnUse\");\n gradient.setAttributeNS(null, \"cx\", circlePoint[0]);\n gradient.setAttributeNS(null, \"cy\", circlePoint[1]);\n gradient.setAttributeNS(null, \"r\", circleRadius);\n gradient.setAttributeNS(null, \"fx\", focalPoint[0]);\n gradient.setAttributeNS(null, \"fy\", focalPoint[1]);\n gradient.setAttributeNS(null, \"fr\", focalRadius);\n break;\n default:\n throw new Error(`Unknown RadialAxial type: ${args[1]}`);\n }\n for (const colorStop of colorStops) {\n const stop = this.svgFactory.createElement(\"svg:stop\");\n stop.setAttributeNS(null, \"offset\", colorStop[0]);\n stop.setAttributeNS(null, \"stop-color\", colorStop[1]);\n gradient.append(stop);\n }\n this.defs.append(gradient);\n return `url(#${shadingId})`;\n case \"Mesh\":\n (0, _util.warn)(\"Unimplemented pattern Mesh\");\n return null;\n case \"Dummy\":\n return \"hotpink\";\n default:\n throw new Error(`Unknown IR type: ${args[0]}`);\n }\n }\n setDash(dashArray, dashPhase) {\n this.current.dashArray = dashArray;\n this.current.dashPhase = dashPhase;\n }\n constructPath(ops, args) {\n const current = this.current;\n let x = current.x,\n y = current.y;\n let d = [];\n let j = 0;\n for (const op of ops) {\n switch (op | 0) {\n case _util.OPS.rectangle:\n x = args[j++];\n y = args[j++];\n const width = args[j++];\n const height = args[j++];\n const xw = x + width;\n const yh = y + height;\n d.push(\"M\", pf(x), pf(y), \"L\", pf(xw), pf(y), \"L\", pf(xw), pf(yh), \"L\", pf(x), pf(yh), \"Z\");\n break;\n case _util.OPS.moveTo:\n x = args[j++];\n y = args[j++];\n d.push(\"M\", pf(x), pf(y));\n break;\n case _util.OPS.lineTo:\n x = args[j++];\n y = args[j++];\n d.push(\"L\", pf(x), pf(y));\n break;\n case _util.OPS.curveTo:\n x = args[j + 4];\n y = args[j + 5];\n d.push(\"C\", pf(args[j]), pf(args[j + 1]), pf(args[j + 2]), pf(args[j + 3]), pf(x), pf(y));\n j += 6;\n break;\n case _util.OPS.curveTo2:\n d.push(\"C\", pf(x), pf(y), pf(args[j]), pf(args[j + 1]), pf(args[j + 2]), pf(args[j + 3]));\n x = args[j + 2];\n y = args[j + 3];\n j += 4;\n break;\n case _util.OPS.curveTo3:\n x = args[j + 2];\n y = args[j + 3];\n d.push(\"C\", pf(args[j]), pf(args[j + 1]), pf(x), pf(y), pf(x), pf(y));\n j += 4;\n break;\n case _util.OPS.closePath:\n d.push(\"Z\");\n break;\n }\n }\n d = d.join(\" \");\n if (current.path && ops.length > 0 && ops[0] !== _util.OPS.rectangle && ops[0] !== _util.OPS.moveTo) {\n d = current.path.getAttributeNS(null, \"d\") + d;\n } else {\n current.path = this.svgFactory.createElement(\"svg:path\");\n this._ensureTransformGroup().append(current.path);\n }\n current.path.setAttributeNS(null, \"d\", d);\n current.path.setAttributeNS(null, \"fill\", \"none\");\n current.element = current.path;\n current.setCurrentPoint(x, y);\n }\n endPath() {\n const current = this.current;\n current.path = null;\n if (!this.pendingClip) {\n return;\n }\n if (!current.element) {\n this.pendingClip = null;\n return;\n }\n const clipId = `clippath${clipCount++}`;\n const clipPath = this.svgFactory.createElement(\"svg:clipPath\");\n clipPath.setAttributeNS(null, \"id\", clipId);\n clipPath.setAttributeNS(null, \"transform\", pm(this.transformMatrix));\n const clipElement = current.element.cloneNode(true);\n if (this.pendingClip === \"evenodd\") {\n clipElement.setAttributeNS(null, \"clip-rule\", \"evenodd\");\n } else {\n clipElement.setAttributeNS(null, \"clip-rule\", \"nonzero\");\n }\n this.pendingClip = null;\n clipPath.append(clipElement);\n this.defs.append(clipPath);\n if (current.activeClipUrl) {\n current.clipGroup = null;\n for (const prev of this.extraStack) {\n prev.clipGroup = null;\n }\n clipPath.setAttributeNS(null, \"clip-path\", current.activeClipUrl);\n }\n current.activeClipUrl = `url(#${clipId})`;\n this.tgrp = null;\n }\n clip(type) {\n this.pendingClip = type;\n }\n closePath() {\n const current = this.current;\n if (current.path) {\n const d = `${current.path.getAttributeNS(null, \"d\")}Z`;\n current.path.setAttributeNS(null, \"d\", d);\n }\n }\n setLeading(leading) {\n this.current.leading = -leading;\n }\n setTextRise(textRise) {\n this.current.textRise = textRise;\n }\n setTextRenderingMode(textRenderingMode) {\n this.current.textRenderingMode = textRenderingMode;\n }\n setHScale(scale) {\n this.current.textHScale = scale / 100;\n }\n setRenderingIntent(intent) {}\n setFlatness(flatness) {}\n setGState(states) {\n for (const [key, value] of states) {\n switch (key) {\n case \"LW\":\n this.setLineWidth(value);\n break;\n case \"LC\":\n this.setLineCap(value);\n break;\n case \"LJ\":\n this.setLineJoin(value);\n break;\n case \"ML\":\n this.setMiterLimit(value);\n break;\n case \"D\":\n this.setDash(value[0], value[1]);\n break;\n case \"RI\":\n this.setRenderingIntent(value);\n break;\n case \"FL\":\n this.setFlatness(value);\n break;\n case \"Font\":\n this.setFont(value);\n break;\n case \"CA\":\n this.setStrokeAlpha(value);\n break;\n case \"ca\":\n this.setFillAlpha(value);\n break;\n default:\n (0, _util.warn)(`Unimplemented graphic state operator ${key}`);\n break;\n }\n }\n }\n fill() {\n const current = this.current;\n if (current.element) {\n current.element.setAttributeNS(null, \"fill\", current.fillColor);\n current.element.setAttributeNS(null, \"fill-opacity\", current.fillAlpha);\n this.endPath();\n }\n }\n stroke() {\n const current = this.current;\n if (current.element) {\n this._setStrokeAttributes(current.element);\n current.element.setAttributeNS(null, \"fill\", \"none\");\n this.endPath();\n }\n }\n _setStrokeAttributes(element, lineWidthScale = 1) {\n const current = this.current;\n let dashArray = current.dashArray;\n if (lineWidthScale !== 1 && dashArray.length > 0) {\n dashArray = dashArray.map(function (value) {\n return lineWidthScale * value;\n });\n }\n element.setAttributeNS(null, \"stroke\", current.strokeColor);\n element.setAttributeNS(null, \"stroke-opacity\", current.strokeAlpha);\n element.setAttributeNS(null, \"stroke-miterlimit\", pf(current.miterLimit));\n element.setAttributeNS(null, \"stroke-linecap\", current.lineCap);\n element.setAttributeNS(null, \"stroke-linejoin\", current.lineJoin);\n element.setAttributeNS(null, \"stroke-width\", pf(lineWidthScale * current.lineWidth) + \"px\");\n element.setAttributeNS(null, \"stroke-dasharray\", dashArray.map(pf).join(\" \"));\n element.setAttributeNS(null, \"stroke-dashoffset\", pf(lineWidthScale * current.dashPhase) + \"px\");\n }\n eoFill() {\n this.current.element?.setAttributeNS(null, \"fill-rule\", \"evenodd\");\n this.fill();\n }\n fillStroke() {\n this.stroke();\n this.fill();\n }\n eoFillStroke() {\n this.current.element?.setAttributeNS(null, \"fill-rule\", \"evenodd\");\n this.fillStroke();\n }\n closeStroke() {\n this.closePath();\n this.stroke();\n }\n closeFillStroke() {\n this.closePath();\n this.fillStroke();\n }\n closeEOFillStroke() {\n this.closePath();\n this.eoFillStroke();\n }\n paintSolidColorImageMask() {\n const rect = this.svgFactory.createElement(\"svg:rect\");\n rect.setAttributeNS(null, \"x\", \"0\");\n rect.setAttributeNS(null, \"y\", \"0\");\n rect.setAttributeNS(null, \"width\", \"1px\");\n rect.setAttributeNS(null, \"height\", \"1px\");\n rect.setAttributeNS(null, \"fill\", this.current.fillColor);\n this._ensureTransformGroup().append(rect);\n }\n paintImageXObject(objId) {\n const imgData = this.getObject(objId);\n if (!imgData) {\n (0, _util.warn)(`Dependent image with object ID ${objId} is not ready yet`);\n return;\n }\n this.paintInlineImageXObject(imgData);\n }\n paintInlineImageXObject(imgData, mask) {\n const width = imgData.width;\n const height = imgData.height;\n const imgSrc = convertImgDataToPng(imgData, this.forceDataSchema, !!mask);\n const cliprect = this.svgFactory.createElement(\"svg:rect\");\n cliprect.setAttributeNS(null, \"x\", \"0\");\n cliprect.setAttributeNS(null, \"y\", \"0\");\n cliprect.setAttributeNS(null, \"width\", pf(width));\n cliprect.setAttributeNS(null, \"height\", pf(height));\n this.current.element = cliprect;\n this.clip(\"nonzero\");\n const imgEl = this.svgFactory.createElement(\"svg:image\");\n imgEl.setAttributeNS(XLINK_NS, \"xlink:href\", imgSrc);\n imgEl.setAttributeNS(null, \"x\", \"0\");\n imgEl.setAttributeNS(null, \"y\", pf(-height));\n imgEl.setAttributeNS(null, \"width\", pf(width) + \"px\");\n imgEl.setAttributeNS(null, \"height\", pf(height) + \"px\");\n imgEl.setAttributeNS(null, \"transform\", `scale(${pf(1 / width)} ${pf(-1 / height)})`);\n if (mask) {\n mask.append(imgEl);\n } else {\n this._ensureTransformGroup().append(imgEl);\n }\n }\n paintImageMaskXObject(img) {\n const imgData = this.getObject(img.data, img);\n if (imgData.bitmap) {\n (0, _util.warn)(\"paintImageMaskXObject: ImageBitmap support is not implemented, \" + \"ensure that the `isOffscreenCanvasSupported` API parameter is disabled.\");\n return;\n }\n const current = this.current;\n const width = imgData.width;\n const height = imgData.height;\n const fillColor = current.fillColor;\n current.maskId = `mask${maskCount++}`;\n const mask = this.svgFactory.createElement(\"svg:mask\");\n mask.setAttributeNS(null, \"id\", current.maskId);\n const rect = this.svgFactory.createElement(\"svg:rect\");\n rect.setAttributeNS(null, \"x\", \"0\");\n rect.setAttributeNS(null, \"y\", \"0\");\n rect.setAttributeNS(null, \"width\", pf(width));\n rect.setAttributeNS(null, \"height\", pf(height));\n rect.setAttributeNS(null, \"fill\", fillColor);\n rect.setAttributeNS(null, \"mask\", `url(#${current.maskId})`);\n this.defs.append(mask);\n this._ensureTransformGroup().append(rect);\n this.paintInlineImageXObject(imgData, mask);\n }\n paintFormXObjectBegin(matrix, bbox) {\n if (Array.isArray(matrix) && matrix.length === 6) {\n this.transform(matrix[0], matrix[1], matrix[2], matrix[3], matrix[4], matrix[5]);\n }\n if (bbox) {\n const width = bbox[2] - bbox[0];\n const height = bbox[3] - bbox[1];\n const cliprect = this.svgFactory.createElement(\"svg:rect\");\n cliprect.setAttributeNS(null, \"x\", bbox[0]);\n cliprect.setAttributeNS(null, \"y\", bbox[1]);\n cliprect.setAttributeNS(null, \"width\", pf(width));\n cliprect.setAttributeNS(null, \"height\", pf(height));\n this.current.element = cliprect;\n this.clip(\"nonzero\");\n this.endPath();\n }\n }\n paintFormXObjectEnd() {}\n _initialize(viewport) {\n const svg = this.svgFactory.create(viewport.width, viewport.height);\n const definitions = this.svgFactory.createElement(\"svg:defs\");\n svg.append(definitions);\n this.defs = definitions;\n const rootGroup = this.svgFactory.createElement(\"svg:g\");\n rootGroup.setAttributeNS(null, \"transform\", pm(viewport.transform));\n svg.append(rootGroup);\n this.svg = rootGroup;\n return svg;\n }\n _ensureClipGroup() {\n if (!this.current.clipGroup) {\n const clipGroup = this.svgFactory.createElement(\"svg:g\");\n clipGroup.setAttributeNS(null, \"clip-path\", this.current.activeClipUrl);\n this.svg.append(clipGroup);\n this.current.clipGroup = clipGroup;\n }\n return this.current.clipGroup;\n }\n _ensureTransformGroup() {\n if (!this.tgrp) {\n this.tgrp = this.svgFactory.createElement(\"svg:g\");\n this.tgrp.setAttributeNS(null, \"transform\", pm(this.transformMatrix));\n if (this.current.activeClipUrl) {\n this._ensureClipGroup().append(this.tgrp);\n } else {\n this.svg.append(this.tgrp);\n }\n }\n return this.tgrp;\n }\n}\nexports.SVGGraphics = SVGGraphics;\n\n/***/ }),\n/* 25 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.XfaText = void 0;\nclass XfaText {\n static textContent(xfa) {\n const items = [];\n const output = {\n items,\n styles: Object.create(null)\n };\n function walk(node) {\n if (!node) {\n return;\n }\n let str = null;\n const name = node.name;\n if (name === \"#text\") {\n str = node.value;\n } else if (!XfaText.shouldBuildText(name)) {\n return;\n } else if (node?.attributes?.textContent) {\n str = node.attributes.textContent;\n } else if (node.value) {\n str = node.value;\n }\n if (str !== null) {\n items.push({\n str\n });\n }\n if (!node.children) {\n return;\n }\n for (const child of node.children) {\n walk(child);\n }\n }\n walk(xfa);\n return output;\n }\n static shouldBuildText(name) {\n return !(name === \"textarea\" || name === \"input\" || name === \"option\" || name === \"select\");\n }\n}\nexports.XfaText = XfaText;\n\n/***/ }),\n/* 26 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.TextLayerRenderTask = void 0;\nexports.renderTextLayer = renderTextLayer;\nexports.updateTextLayer = updateTextLayer;\nvar _util = __w_pdfjs_require__(1);\nvar _display_utils = __w_pdfjs_require__(6);\nconst MAX_TEXT_DIVS_TO_RENDER = 100000;\nconst DEFAULT_FONT_SIZE = 30;\nconst DEFAULT_FONT_ASCENT = 0.8;\nconst ascentCache = new Map();\nfunction getCtx(size, isOffscreenCanvasSupported) {\n let ctx;\n if (isOffscreenCanvasSupported && _util.FeatureTest.isOffscreenCanvasSupported) {\n ctx = new OffscreenCanvas(size, size).getContext(\"2d\", {\n alpha: false\n });\n } else {\n const canvas = document.createElement(\"canvas\");\n canvas.width = canvas.height = size;\n ctx = canvas.getContext(\"2d\", {\n alpha: false\n });\n }\n return ctx;\n}\nfunction getAscent(fontFamily, isOffscreenCanvasSupported) {\n const cachedAscent = ascentCache.get(fontFamily);\n if (cachedAscent) {\n return cachedAscent;\n }\n const ctx = getCtx(DEFAULT_FONT_SIZE, isOffscreenCanvasSupported);\n ctx.font = `${DEFAULT_FONT_SIZE}px ${fontFamily}`;\n const metrics = ctx.measureText(\"\");\n let ascent = metrics.fontBoundingBoxAscent;\n let descent = Math.abs(metrics.fontBoundingBoxDescent);\n if (ascent) {\n const ratio = ascent / (ascent + descent);\n ascentCache.set(fontFamily, ratio);\n ctx.canvas.width = ctx.canvas.height = 0;\n return ratio;\n }\n ctx.strokeStyle = \"red\";\n ctx.clearRect(0, 0, DEFAULT_FONT_SIZE, DEFAULT_FONT_SIZE);\n ctx.strokeText(\"g\", 0, 0);\n let pixels = ctx.getImageData(0, 0, DEFAULT_FONT_SIZE, DEFAULT_FONT_SIZE).data;\n descent = 0;\n for (let i = pixels.length - 1 - 3; i >= 0; i -= 4) {\n if (pixels[i] > 0) {\n descent = Math.ceil(i / 4 / DEFAULT_FONT_SIZE);\n break;\n }\n }\n ctx.clearRect(0, 0, DEFAULT_FONT_SIZE, DEFAULT_FONT_SIZE);\n ctx.strokeText(\"A\", 0, DEFAULT_FONT_SIZE);\n pixels = ctx.getImageData(0, 0, DEFAULT_FONT_SIZE, DEFAULT_FONT_SIZE).data;\n ascent = 0;\n for (let i = 0, ii = pixels.length; i < ii; i += 4) {\n if (pixels[i] > 0) {\n ascent = DEFAULT_FONT_SIZE - Math.floor(i / 4 / DEFAULT_FONT_SIZE);\n break;\n }\n }\n ctx.canvas.width = ctx.canvas.height = 0;\n if (ascent) {\n const ratio = ascent / (ascent + descent);\n ascentCache.set(fontFamily, ratio);\n return ratio;\n }\n ascentCache.set(fontFamily, DEFAULT_FONT_ASCENT);\n return DEFAULT_FONT_ASCENT;\n}\nfunction appendText(task, geom, styles) {\n const textDiv = document.createElement(\"span\");\n const textDivProperties = {\n angle: 0,\n canvasWidth: 0,\n hasText: geom.str !== \"\",\n hasEOL: geom.hasEOL,\n fontSize: 0\n };\n task._textDivs.push(textDiv);\n const tx = _util.Util.transform(task._transform, geom.transform);\n let angle = Math.atan2(tx[1], tx[0]);\n const style = styles[geom.fontName];\n if (style.vertical) {\n angle += Math.PI / 2;\n }\n const fontHeight = Math.hypot(tx[2], tx[3]);\n const fontAscent = fontHeight * getAscent(style.fontFamily, task._isOffscreenCanvasSupported);\n let left, top;\n if (angle === 0) {\n left = tx[4];\n top = tx[5] - fontAscent;\n } else {\n left = tx[4] + fontAscent * Math.sin(angle);\n top = tx[5] - fontAscent * Math.cos(angle);\n }\n const scaleFactorStr = \"calc(var(--scale-factor)*\";\n const divStyle = textDiv.style;\n if (task._container === task._rootContainer) {\n divStyle.left = `${(100 * left / task._pageWidth).toFixed(2)}%`;\n divStyle.top = `${(100 * top / task._pageHeight).toFixed(2)}%`;\n } else {\n divStyle.left = `${scaleFactorStr}${left.toFixed(2)}px)`;\n divStyle.top = `${scaleFactorStr}${top.toFixed(2)}px)`;\n }\n divStyle.fontSize = `${scaleFactorStr}${fontHeight.toFixed(2)}px)`;\n divStyle.fontFamily = style.fontFamily;\n textDivProperties.fontSize = fontHeight;\n textDiv.setAttribute(\"role\", \"presentation\");\n textDiv.textContent = geom.str;\n textDiv.dir = geom.dir;\n if (task._fontInspectorEnabled) {\n textDiv.dataset.fontName = geom.fontName;\n }\n if (angle !== 0) {\n textDivProperties.angle = angle * (180 / Math.PI);\n }\n let shouldScaleText = false;\n if (geom.str.length > 1) {\n shouldScaleText = true;\n } else if (geom.str !== \" \" && geom.transform[0] !== geom.transform[3]) {\n const absScaleX = Math.abs(geom.transform[0]),\n absScaleY = Math.abs(geom.transform[3]);\n if (absScaleX !== absScaleY && Math.max(absScaleX, absScaleY) / Math.min(absScaleX, absScaleY) > 1.5) {\n shouldScaleText = true;\n }\n }\n if (shouldScaleText) {\n textDivProperties.canvasWidth = style.vertical ? geom.height : geom.width;\n }\n task._textDivProperties.set(textDiv, textDivProperties);\n if (task._isReadableStream) {\n task._layoutText(textDiv);\n }\n}\nfunction layout(params) {\n const {\n div,\n scale,\n properties,\n ctx,\n prevFontSize,\n prevFontFamily\n } = params;\n const {\n style\n } = div;\n let transform = \"\";\n if (properties.canvasWidth !== 0 && properties.hasText) {\n const {\n fontFamily\n } = style;\n const {\n canvasWidth,\n fontSize\n } = properties;\n if (prevFontSize !== fontSize || prevFontFamily !== fontFamily) {\n ctx.font = `${fontSize * scale}px ${fontFamily}`;\n params.prevFontSize = fontSize;\n params.prevFontFamily = fontFamily;\n }\n const {\n width\n } = ctx.measureText(div.textContent);\n if (width > 0) {\n transform = `scaleX(${canvasWidth * scale / width})`;\n }\n }\n if (properties.angle !== 0) {\n transform = `rotate(${properties.angle}deg) ${transform}`;\n }\n if (transform.length > 0) {\n style.transform = transform;\n }\n}\nfunction render(task) {\n if (task._canceled) {\n return;\n }\n const textDivs = task._textDivs;\n const capability = task._capability;\n const textDivsLength = textDivs.length;\n if (textDivsLength > MAX_TEXT_DIVS_TO_RENDER) {\n capability.resolve();\n return;\n }\n if (!task._isReadableStream) {\n for (const textDiv of textDivs) {\n task._layoutText(textDiv);\n }\n }\n capability.resolve();\n}\nclass TextLayerRenderTask {\n constructor({\n textContentSource,\n container,\n viewport,\n textDivs,\n textDivProperties,\n textContentItemsStr,\n isOffscreenCanvasSupported\n }) {\n this._textContentSource = textContentSource;\n this._isReadableStream = textContentSource instanceof ReadableStream;\n this._container = this._rootContainer = container;\n this._textDivs = textDivs || [];\n this._textContentItemsStr = textContentItemsStr || [];\n this._isOffscreenCanvasSupported = isOffscreenCanvasSupported;\n this._fontInspectorEnabled = !!globalThis.FontInspector?.enabled;\n this._reader = null;\n this._textDivProperties = textDivProperties || new WeakMap();\n this._canceled = false;\n this._capability = new _util.PromiseCapability();\n this._layoutTextParams = {\n prevFontSize: null,\n prevFontFamily: null,\n div: null,\n scale: viewport.scale * (globalThis.devicePixelRatio || 1),\n properties: null,\n ctx: getCtx(0, isOffscreenCanvasSupported)\n };\n const {\n pageWidth,\n pageHeight,\n pageX,\n pageY\n } = viewport.rawDims;\n this._transform = [1, 0, 0, -1, -pageX, pageY + pageHeight];\n this._pageWidth = pageWidth;\n this._pageHeight = pageHeight;\n (0, _display_utils.setLayerDimensions)(container, viewport);\n this._capability.promise.finally(() => {\n this._layoutTextParams = null;\n }).catch(() => {});\n }\n get promise() {\n return this._capability.promise;\n }\n cancel() {\n this._canceled = true;\n if (this._reader) {\n this._reader.cancel(new _util.AbortException(\"TextLayer task cancelled.\")).catch(() => {});\n this._reader = null;\n }\n this._capability.reject(new _util.AbortException(\"TextLayer task cancelled.\"));\n }\n _processItems(items, styleCache) {\n for (const item of items) {\n if (item.str === undefined) {\n if (item.type === \"beginMarkedContentProps\" || item.type === \"beginMarkedContent\") {\n const parent = this._container;\n this._container = document.createElement(\"span\");\n this._container.classList.add(\"markedContent\");\n if (item.id !== null) {\n this._container.setAttribute(\"id\", `${item.id}`);\n }\n parent.append(this._container);\n } else if (item.type === \"endMarkedContent\") {\n this._container = this._container.parentNode;\n }\n continue;\n }\n this._textContentItemsStr.push(item.str);\n appendText(this, item, styleCache);\n }\n }\n _layoutText(textDiv) {\n const textDivProperties = this._layoutTextParams.properties = this._textDivProperties.get(textDiv);\n this._layoutTextParams.div = textDiv;\n layout(this._layoutTextParams);\n if (textDivProperties.hasText) {\n this._container.append(textDiv);\n }\n if (textDivProperties.hasEOL) {\n const br = document.createElement(\"br\");\n br.setAttribute(\"role\", \"presentation\");\n this._container.append(br);\n }\n }\n _render() {\n const capability = new _util.PromiseCapability();\n let styleCache = Object.create(null);\n if (this._isReadableStream) {\n const pump = () => {\n this._reader.read().then(({\n value,\n done\n }) => {\n if (done) {\n capability.resolve();\n return;\n }\n Object.assign(styleCache, value.styles);\n this._processItems(value.items, styleCache);\n pump();\n }, capability.reject);\n };\n this._reader = this._textContentSource.getReader();\n pump();\n } else if (this._textContentSource) {\n const {\n items,\n styles\n } = this._textContentSource;\n this._processItems(items, styles);\n capability.resolve();\n } else {\n throw new Error('No \"textContentSource\" parameter specified.');\n }\n capability.promise.then(() => {\n styleCache = null;\n render(this);\n }, this._capability.reject);\n }\n}\nexports.TextLayerRenderTask = TextLayerRenderTask;\nfunction renderTextLayer(params) {\n if (!params.textContentSource && (params.textContent || params.textContentStream)) {\n (0, _display_utils.deprecated)(\"The TextLayerRender `textContent`/`textContentStream` parameters \" + \"will be removed in the future, please use `textContentSource` instead.\");\n params.textContentSource = params.textContent || params.textContentStream;\n }\n const {\n container,\n viewport\n } = params;\n const style = getComputedStyle(container);\n const visibility = style.getPropertyValue(\"visibility\");\n const scaleFactor = parseFloat(style.getPropertyValue(\"--scale-factor\"));\n if (visibility === \"visible\" && (!scaleFactor || Math.abs(scaleFactor - viewport.scale) > 1e-5)) {\n console.error(\"The `--scale-factor` CSS-variable must be set, \" + \"to the same value as `viewport.scale`, \" + \"either on the `container`-element itself or higher up in the DOM.\");\n }\n const task = new TextLayerRenderTask(params);\n task._render();\n return task;\n}\nfunction updateTextLayer({\n container,\n viewport,\n textDivs,\n textDivProperties,\n isOffscreenCanvasSupported,\n mustRotate = true,\n mustRescale = true\n}) {\n if (mustRotate) {\n (0, _display_utils.setLayerDimensions)(container, {\n rotation: viewport.rotation\n });\n }\n if (mustRescale) {\n const ctx = getCtx(0, isOffscreenCanvasSupported);\n const scale = viewport.scale * (globalThis.devicePixelRatio || 1);\n const params = {\n prevFontSize: null,\n prevFontFamily: null,\n div: null,\n scale,\n properties: null,\n ctx\n };\n for (const div of textDivs) {\n params.properties = textDivProperties.get(div);\n params.div = div;\n layout(params);\n }\n }\n}\n\n/***/ }),\n/* 27 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.AnnotationEditorLayer = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _editor = __w_pdfjs_require__(4);\nvar _freetext = __w_pdfjs_require__(28);\nvar _ink = __w_pdfjs_require__(33);\nvar _display_utils = __w_pdfjs_require__(6);\nvar _stamp = __w_pdfjs_require__(34);\nclass AnnotationEditorLayer {\n #accessibilityManager;\n #allowClick = false;\n #annotationLayer = null;\n #boundPointerup = this.pointerup.bind(this);\n #boundPointerdown = this.pointerdown.bind(this);\n #editors = new Map();\n #hadPointerDown = false;\n #isCleaningUp = false;\n #isDisabling = false;\n #uiManager;\n static _initialized = false;\n constructor({\n uiManager,\n pageIndex,\n div,\n accessibilityManager,\n annotationLayer,\n viewport,\n l10n\n }) {\n const editorTypes = [_freetext.FreeTextEditor, _ink.InkEditor, _stamp.StampEditor];\n if (!AnnotationEditorLayer._initialized) {\n AnnotationEditorLayer._initialized = true;\n for (const editorType of editorTypes) {\n editorType.initialize(l10n);\n }\n }\n uiManager.registerEditorTypes(editorTypes);\n this.#uiManager = uiManager;\n this.pageIndex = pageIndex;\n this.div = div;\n this.#accessibilityManager = accessibilityManager;\n this.#annotationLayer = annotationLayer;\n this.viewport = viewport;\n this.#uiManager.addLayer(this);\n }\n get isEmpty() {\n return this.#editors.size === 0;\n }\n updateToolbar(mode) {\n this.#uiManager.updateToolbar(mode);\n }\n updateMode(mode = this.#uiManager.getMode()) {\n this.#cleanup();\n if (mode === _util.AnnotationEditorType.INK) {\n this.addInkEditorIfNeeded(false);\n this.disableClick();\n } else {\n this.enableClick();\n }\n if (mode !== _util.AnnotationEditorType.NONE) {\n this.div.classList.toggle(\"freeTextEditing\", mode === _util.AnnotationEditorType.FREETEXT);\n this.div.classList.toggle(\"inkEditing\", mode === _util.AnnotationEditorType.INK);\n this.div.classList.toggle(\"stampEditing\", mode === _util.AnnotationEditorType.STAMP);\n this.div.hidden = false;\n }\n }\n addInkEditorIfNeeded(isCommitting) {\n if (!isCommitting && this.#uiManager.getMode() !== _util.AnnotationEditorType.INK) {\n return;\n }\n if (!isCommitting) {\n for (const editor of this.#editors.values()) {\n if (editor.isEmpty()) {\n editor.setInBackground();\n return;\n }\n }\n }\n const editor = this.#createAndAddNewEditor({\n offsetX: 0,\n offsetY: 0\n }, false);\n editor.setInBackground();\n }\n setEditingState(isEditing) {\n this.#uiManager.setEditingState(isEditing);\n }\n addCommands(params) {\n this.#uiManager.addCommands(params);\n }\n enable() {\n this.div.style.pointerEvents = \"auto\";\n const annotationElementIds = new Set();\n for (const editor of this.#editors.values()) {\n editor.enableEditing();\n if (editor.annotationElementId) {\n annotationElementIds.add(editor.annotationElementId);\n }\n }\n if (!this.#annotationLayer) {\n return;\n }\n const editables = this.#annotationLayer.getEditableAnnotations();\n for (const editable of editables) {\n editable.hide();\n if (this.#uiManager.isDeletedAnnotationElement(editable.data.id)) {\n continue;\n }\n if (annotationElementIds.has(editable.data.id)) {\n continue;\n }\n const editor = this.deserialize(editable);\n if (!editor) {\n continue;\n }\n this.addOrRebuild(editor);\n editor.enableEditing();\n }\n }\n disable() {\n this.#isDisabling = true;\n this.div.style.pointerEvents = \"none\";\n const hiddenAnnotationIds = new Set();\n for (const editor of this.#editors.values()) {\n editor.disableEditing();\n if (!editor.annotationElementId || editor.serialize() !== null) {\n hiddenAnnotationIds.add(editor.annotationElementId);\n continue;\n }\n this.getEditableAnnotation(editor.annotationElementId)?.show();\n editor.remove();\n }\n if (this.#annotationLayer) {\n const editables = this.#annotationLayer.getEditableAnnotations();\n for (const editable of editables) {\n const {\n id\n } = editable.data;\n if (hiddenAnnotationIds.has(id) || this.#uiManager.isDeletedAnnotationElement(id)) {\n continue;\n }\n editable.show();\n }\n }\n this.#cleanup();\n if (this.isEmpty) {\n this.div.hidden = true;\n }\n this.#isDisabling = false;\n }\n getEditableAnnotation(id) {\n return this.#annotationLayer?.getEditableAnnotation(id) || null;\n }\n setActiveEditor(editor) {\n const currentActive = this.#uiManager.getActive();\n if (currentActive === editor) {\n return;\n }\n this.#uiManager.setActiveEditor(editor);\n }\n enableClick() {\n this.div.addEventListener(\"pointerdown\", this.#boundPointerdown);\n this.div.addEventListener(\"pointerup\", this.#boundPointerup);\n }\n disableClick() {\n this.div.removeEventListener(\"pointerdown\", this.#boundPointerdown);\n this.div.removeEventListener(\"pointerup\", this.#boundPointerup);\n }\n attach(editor) {\n this.#editors.set(editor.id, editor);\n const {\n annotationElementId\n } = editor;\n if (annotationElementId && this.#uiManager.isDeletedAnnotationElement(annotationElementId)) {\n this.#uiManager.removeDeletedAnnotationElement(editor);\n }\n }\n detach(editor) {\n this.#editors.delete(editor.id);\n this.#accessibilityManager?.removePointerInTextLayer(editor.contentDiv);\n if (!this.#isDisabling && editor.annotationElementId) {\n this.#uiManager.addDeletedAnnotationElement(editor);\n }\n }\n remove(editor) {\n this.detach(editor);\n this.#uiManager.removeEditor(editor);\n if (editor.div.contains(document.activeElement)) {\n setTimeout(() => {\n this.#uiManager.focusMainContainer();\n }, 0);\n }\n editor.div.remove();\n editor.isAttachedToDOM = false;\n if (!this.#isCleaningUp) {\n this.addInkEditorIfNeeded(false);\n }\n }\n changeParent(editor) {\n if (editor.parent === this) {\n return;\n }\n if (editor.annotationElementId) {\n this.#uiManager.addDeletedAnnotationElement(editor.annotationElementId);\n _editor.AnnotationEditor.deleteAnnotationElement(editor);\n editor.annotationElementId = null;\n }\n this.attach(editor);\n editor.parent?.detach(editor);\n editor.setParent(this);\n if (editor.div && editor.isAttachedToDOM) {\n editor.div.remove();\n this.div.append(editor.div);\n }\n }\n add(editor) {\n this.changeParent(editor);\n this.#uiManager.addEditor(editor);\n this.attach(editor);\n if (!editor.isAttachedToDOM) {\n const div = editor.render();\n this.div.append(div);\n editor.isAttachedToDOM = true;\n }\n editor.fixAndSetPosition();\n editor.onceAdded();\n this.#uiManager.addToAnnotationStorage(editor);\n }\n moveEditorInDOM(editor) {\n if (!editor.isAttachedToDOM) {\n return;\n }\n const {\n activeElement\n } = document;\n if (editor.div.contains(activeElement)) {\n editor._focusEventsAllowed = false;\n setTimeout(() => {\n if (!editor.div.contains(document.activeElement)) {\n editor.div.addEventListener(\"focusin\", () => {\n editor._focusEventsAllowed = true;\n }, {\n once: true\n });\n activeElement.focus();\n } else {\n editor._focusEventsAllowed = true;\n }\n }, 0);\n }\n editor._structTreeParentId = this.#accessibilityManager?.moveElementInDOM(this.div, editor.div, editor.contentDiv, true);\n }\n addOrRebuild(editor) {\n if (editor.needsToBeRebuilt()) {\n editor.rebuild();\n } else {\n this.add(editor);\n }\n }\n addUndoableEditor(editor) {\n const cmd = () => editor._uiManager.rebuild(editor);\n const undo = () => {\n editor.remove();\n };\n this.addCommands({\n cmd,\n undo,\n mustExec: false\n });\n }\n getNextId() {\n return this.#uiManager.getId();\n }\n #createNewEditor(params) {\n switch (this.#uiManager.getMode()) {\n case _util.AnnotationEditorType.FREETEXT:\n return new _freetext.FreeTextEditor(params);\n case _util.AnnotationEditorType.INK:\n return new _ink.InkEditor(params);\n case _util.AnnotationEditorType.STAMP:\n return new _stamp.StampEditor(params);\n }\n return null;\n }\n pasteEditor(mode, params) {\n this.#uiManager.updateToolbar(mode);\n this.#uiManager.updateMode(mode);\n const {\n offsetX,\n offsetY\n } = this.#getCenterPoint();\n const id = this.getNextId();\n const editor = this.#createNewEditor({\n parent: this,\n id,\n x: offsetX,\n y: offsetY,\n uiManager: this.#uiManager,\n isCentered: true,\n ...params\n });\n if (editor) {\n this.add(editor);\n }\n }\n deserialize(data) {\n switch (data.annotationType ?? data.annotationEditorType) {\n case _util.AnnotationEditorType.FREETEXT:\n return _freetext.FreeTextEditor.deserialize(data, this, this.#uiManager);\n case _util.AnnotationEditorType.INK:\n return _ink.InkEditor.deserialize(data, this, this.#uiManager);\n case _util.AnnotationEditorType.STAMP:\n return _stamp.StampEditor.deserialize(data, this, this.#uiManager);\n }\n return null;\n }\n #createAndAddNewEditor(event, isCentered) {\n const id = this.getNextId();\n const editor = this.#createNewEditor({\n parent: this,\n id,\n x: event.offsetX,\n y: event.offsetY,\n uiManager: this.#uiManager,\n isCentered\n });\n if (editor) {\n this.add(editor);\n }\n return editor;\n }\n #getCenterPoint() {\n const {\n x,\n y,\n width,\n height\n } = this.div.getBoundingClientRect();\n const tlX = Math.max(0, x);\n const tlY = Math.max(0, y);\n const brX = Math.min(window.innerWidth, x + width);\n const brY = Math.min(window.innerHeight, y + height);\n const centerX = (tlX + brX) / 2 - x;\n const centerY = (tlY + brY) / 2 - y;\n const [offsetX, offsetY] = this.viewport.rotation % 180 === 0 ? [centerX, centerY] : [centerY, centerX];\n return {\n offsetX,\n offsetY\n };\n }\n addNewEditor() {\n this.#createAndAddNewEditor(this.#getCenterPoint(), true);\n }\n setSelected(editor) {\n this.#uiManager.setSelected(editor);\n }\n toggleSelected(editor) {\n this.#uiManager.toggleSelected(editor);\n }\n isSelected(editor) {\n return this.#uiManager.isSelected(editor);\n }\n unselect(editor) {\n this.#uiManager.unselect(editor);\n }\n pointerup(event) {\n const {\n isMac\n } = _util.FeatureTest.platform;\n if (event.button !== 0 || event.ctrlKey && isMac) {\n return;\n }\n if (event.target !== this.div) {\n return;\n }\n if (!this.#hadPointerDown) {\n return;\n }\n this.#hadPointerDown = false;\n if (!this.#allowClick) {\n this.#allowClick = true;\n return;\n }\n if (this.#uiManager.getMode() === _util.AnnotationEditorType.STAMP) {\n this.#uiManager.unselectAll();\n return;\n }\n this.#createAndAddNewEditor(event, false);\n }\n pointerdown(event) {\n if (this.#hadPointerDown) {\n this.#hadPointerDown = false;\n return;\n }\n const {\n isMac\n } = _util.FeatureTest.platform;\n if (event.button !== 0 || event.ctrlKey && isMac) {\n return;\n }\n if (event.target !== this.div) {\n return;\n }\n this.#hadPointerDown = true;\n const editor = this.#uiManager.getActive();\n this.#allowClick = !editor || editor.isEmpty();\n }\n findNewParent(editor, x, y) {\n const layer = this.#uiManager.findParent(x, y);\n if (layer === null || layer === this) {\n return false;\n }\n layer.changeParent(editor);\n return true;\n }\n destroy() {\n if (this.#uiManager.getActive()?.parent === this) {\n this.#uiManager.commitOrRemove();\n this.#uiManager.setActiveEditor(null);\n }\n for (const editor of this.#editors.values()) {\n this.#accessibilityManager?.removePointerInTextLayer(editor.contentDiv);\n editor.setParent(null);\n editor.isAttachedToDOM = false;\n editor.div.remove();\n }\n this.div = null;\n this.#editors.clear();\n this.#uiManager.removeLayer(this);\n }\n #cleanup() {\n this.#isCleaningUp = true;\n for (const editor of this.#editors.values()) {\n if (editor.isEmpty()) {\n editor.remove();\n }\n }\n this.#isCleaningUp = false;\n }\n render({\n viewport\n }) {\n this.viewport = viewport;\n (0, _display_utils.setLayerDimensions)(this.div, viewport);\n for (const editor of this.#uiManager.getEditors(this.pageIndex)) {\n this.add(editor);\n }\n this.updateMode();\n }\n update({\n viewport\n }) {\n this.#uiManager.commitOrRemove();\n this.viewport = viewport;\n (0, _display_utils.setLayerDimensions)(this.div, {\n rotation: viewport.rotation\n });\n this.updateMode();\n }\n get pageDimensions() {\n const {\n pageWidth,\n pageHeight\n } = this.viewport.rawDims;\n return [pageWidth, pageHeight];\n }\n}\nexports.AnnotationEditorLayer = AnnotationEditorLayer;\n\n/***/ }),\n/* 28 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.FreeTextEditor = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _tools = __w_pdfjs_require__(5);\nvar _editor = __w_pdfjs_require__(4);\nvar _annotation_layer = __w_pdfjs_require__(29);\nclass FreeTextEditor extends _editor.AnnotationEditor {\n #boundEditorDivBlur = this.editorDivBlur.bind(this);\n #boundEditorDivFocus = this.editorDivFocus.bind(this);\n #boundEditorDivInput = this.editorDivInput.bind(this);\n #boundEditorDivKeydown = this.editorDivKeydown.bind(this);\n #color;\n #content = \"\";\n #editorDivId = `${this.id}-editor`;\n #fontSize;\n #initialData = null;\n static _freeTextDefaultContent = \"\";\n static _internalPadding = 0;\n static _defaultColor = null;\n static _defaultFontSize = 10;\n static get _keyboardManager() {\n const proto = FreeTextEditor.prototype;\n const arrowChecker = self => self.isEmpty();\n const small = _tools.AnnotationEditorUIManager.TRANSLATE_SMALL;\n const big = _tools.AnnotationEditorUIManager.TRANSLATE_BIG;\n return (0, _util.shadow)(this, \"_keyboardManager\", new _tools.KeyboardManager([[[\"ctrl+s\", \"mac+meta+s\", \"ctrl+p\", \"mac+meta+p\"], proto.commitOrRemove, {\n bubbles: true\n }], [[\"ctrl+Enter\", \"mac+meta+Enter\", \"Escape\", \"mac+Escape\"], proto.commitOrRemove], [[\"ArrowLeft\", \"mac+ArrowLeft\"], proto._translateEmpty, {\n args: [-small, 0],\n checker: arrowChecker\n }], [[\"ctrl+ArrowLeft\", \"mac+shift+ArrowLeft\"], proto._translateEmpty, {\n args: [-big, 0],\n checker: arrowChecker\n }], [[\"ArrowRight\", \"mac+ArrowRight\"], proto._translateEmpty, {\n args: [small, 0],\n checker: arrowChecker\n }], [[\"ctrl+ArrowRight\", \"mac+shift+ArrowRight\"], proto._translateEmpty, {\n args: [big, 0],\n checker: arrowChecker\n }], [[\"ArrowUp\", \"mac+ArrowUp\"], proto._translateEmpty, {\n args: [0, -small],\n checker: arrowChecker\n }], [[\"ctrl+ArrowUp\", \"mac+shift+ArrowUp\"], proto._translateEmpty, {\n args: [0, -big],\n checker: arrowChecker\n }], [[\"ArrowDown\", \"mac+ArrowDown\"], proto._translateEmpty, {\n args: [0, small],\n checker: arrowChecker\n }], [[\"ctrl+ArrowDown\", \"mac+shift+ArrowDown\"], proto._translateEmpty, {\n args: [0, big],\n checker: arrowChecker\n }]]));\n }\n static _type = \"freetext\";\n constructor(params) {\n super({\n ...params,\n name: \"freeTextEditor\"\n });\n this.#color = params.color || FreeTextEditor._defaultColor || _editor.AnnotationEditor._defaultLineColor;\n this.#fontSize = params.fontSize || FreeTextEditor._defaultFontSize;\n }\n static initialize(l10n) {\n _editor.AnnotationEditor.initialize(l10n, {\n strings: [\"free_text2_default_content\", \"editor_free_text2_aria_label\"]\n });\n const style = getComputedStyle(document.documentElement);\n this._internalPadding = parseFloat(style.getPropertyValue(\"--freetext-padding\"));\n }\n static updateDefaultParams(type, value) {\n switch (type) {\n case _util.AnnotationEditorParamsType.FREETEXT_SIZE:\n FreeTextEditor._defaultFontSize = value;\n break;\n case _util.AnnotationEditorParamsType.FREETEXT_COLOR:\n FreeTextEditor._defaultColor = value;\n break;\n }\n }\n updateParams(type, value) {\n switch (type) {\n case _util.AnnotationEditorParamsType.FREETEXT_SIZE:\n this.#updateFontSize(value);\n break;\n case _util.AnnotationEditorParamsType.FREETEXT_COLOR:\n this.#updateColor(value);\n break;\n }\n }\n static get defaultPropertiesToUpdate() {\n return [[_util.AnnotationEditorParamsType.FREETEXT_SIZE, FreeTextEditor._defaultFontSize], [_util.AnnotationEditorParamsType.FREETEXT_COLOR, FreeTextEditor._defaultColor || _editor.AnnotationEditor._defaultLineColor]];\n }\n get propertiesToUpdate() {\n return [[_util.AnnotationEditorParamsType.FREETEXT_SIZE, this.#fontSize], [_util.AnnotationEditorParamsType.FREETEXT_COLOR, this.#color]];\n }\n #updateFontSize(fontSize) {\n const setFontsize = size => {\n this.editorDiv.style.fontSize = `calc(${size}px * var(--scale-factor))`;\n this.translate(0, -(size - this.#fontSize) * this.parentScale);\n this.#fontSize = size;\n this.#setEditorDimensions();\n };\n const savedFontsize = this.#fontSize;\n this.addCommands({\n cmd: () => {\n setFontsize(fontSize);\n },\n undo: () => {\n setFontsize(savedFontsize);\n },\n mustExec: true,\n type: _util.AnnotationEditorParamsType.FREETEXT_SIZE,\n overwriteIfSameType: true,\n keepUndo: true\n });\n }\n #updateColor(color) {\n const savedColor = this.#color;\n this.addCommands({\n cmd: () => {\n this.#color = this.editorDiv.style.color = color;\n },\n undo: () => {\n this.#color = this.editorDiv.style.color = savedColor;\n },\n mustExec: true,\n type: _util.AnnotationEditorParamsType.FREETEXT_COLOR,\n overwriteIfSameType: true,\n keepUndo: true\n });\n }\n _translateEmpty(x, y) {\n this._uiManager.translateSelectedEditors(x, y, true);\n }\n getInitialTranslation() {\n const scale = this.parentScale;\n return [-FreeTextEditor._internalPadding * scale, -(FreeTextEditor._internalPadding + this.#fontSize) * scale];\n }\n rebuild() {\n if (!this.parent) {\n return;\n }\n super.rebuild();\n if (this.div === null) {\n return;\n }\n if (!this.isAttachedToDOM) {\n this.parent.add(this);\n }\n }\n enableEditMode() {\n if (this.isInEditMode()) {\n return;\n }\n this.parent.setEditingState(false);\n this.parent.updateToolbar(_util.AnnotationEditorType.FREETEXT);\n super.enableEditMode();\n this.overlayDiv.classList.remove(\"enabled\");\n this.editorDiv.contentEditable = true;\n this._isDraggable = false;\n this.div.removeAttribute(\"aria-activedescendant\");\n this.editorDiv.addEventListener(\"keydown\", this.#boundEditorDivKeydown);\n this.editorDiv.addEventListener(\"focus\", this.#boundEditorDivFocus);\n this.editorDiv.addEventListener(\"blur\", this.#boundEditorDivBlur);\n this.editorDiv.addEventListener(\"input\", this.#boundEditorDivInput);\n }\n disableEditMode() {\n if (!this.isInEditMode()) {\n return;\n }\n this.parent.setEditingState(true);\n super.disableEditMode();\n this.overlayDiv.classList.add(\"enabled\");\n this.editorDiv.contentEditable = false;\n this.div.setAttribute(\"aria-activedescendant\", this.#editorDivId);\n this._isDraggable = true;\n this.editorDiv.removeEventListener(\"keydown\", this.#boundEditorDivKeydown);\n this.editorDiv.removeEventListener(\"focus\", this.#boundEditorDivFocus);\n this.editorDiv.removeEventListener(\"blur\", this.#boundEditorDivBlur);\n this.editorDiv.removeEventListener(\"input\", this.#boundEditorDivInput);\n this.div.focus({\n preventScroll: true\n });\n this.isEditing = false;\n this.parent.div.classList.add(\"freeTextEditing\");\n }\n focusin(event) {\n if (!this._focusEventsAllowed) {\n return;\n }\n super.focusin(event);\n if (event.target !== this.editorDiv) {\n this.editorDiv.focus();\n }\n }\n onceAdded() {\n if (this.width) {\n this.#cheatInitialRect();\n return;\n }\n this.enableEditMode();\n this.editorDiv.focus();\n if (this._initialOptions?.isCentered) {\n this.center();\n }\n this._initialOptions = null;\n }\n isEmpty() {\n return !this.editorDiv || this.editorDiv.innerText.trim() === \"\";\n }\n remove() {\n this.isEditing = false;\n if (this.parent) {\n this.parent.setEditingState(true);\n this.parent.div.classList.add(\"freeTextEditing\");\n }\n super.remove();\n }\n #extractText() {\n const divs = this.editorDiv.getElementsByTagName(\"div\");\n if (divs.length === 0) {\n return this.editorDiv.innerText;\n }\n const buffer = [];\n for (const div of divs) {\n buffer.push(div.innerText.replace(/\\r\\n?|\\n/, \"\"));\n }\n return buffer.join(\"\\n\");\n }\n #setEditorDimensions() {\n const [parentWidth, parentHeight] = this.parentDimensions;\n let rect;\n if (this.isAttachedToDOM) {\n rect = this.div.getBoundingClientRect();\n } else {\n const {\n currentLayer,\n div\n } = this;\n const savedDisplay = div.style.display;\n div.style.display = \"hidden\";\n currentLayer.div.append(this.div);\n rect = div.getBoundingClientRect();\n div.remove();\n div.style.display = savedDisplay;\n }\n if (this.rotation % 180 === this.parentRotation % 180) {\n this.width = rect.width / parentWidth;\n this.height = rect.height / parentHeight;\n } else {\n this.width = rect.height / parentWidth;\n this.height = rect.width / parentHeight;\n }\n this.fixAndSetPosition();\n }\n commit() {\n if (!this.isInEditMode()) {\n return;\n }\n super.commit();\n this.disableEditMode();\n const savedText = this.#content;\n const newText = this.#content = this.#extractText().trimEnd();\n if (savedText === newText) {\n return;\n }\n const setText = text => {\n this.#content = text;\n if (!text) {\n this.remove();\n return;\n }\n this.#setContent();\n this._uiManager.rebuild(this);\n this.#setEditorDimensions();\n };\n this.addCommands({\n cmd: () => {\n setText(newText);\n },\n undo: () => {\n setText(savedText);\n },\n mustExec: false\n });\n this.#setEditorDimensions();\n }\n shouldGetKeyboardEvents() {\n return this.isInEditMode();\n }\n enterInEditMode() {\n this.enableEditMode();\n this.editorDiv.focus();\n }\n dblclick(event) {\n this.enterInEditMode();\n }\n keydown(event) {\n if (event.target === this.div && event.key === \"Enter\") {\n this.enterInEditMode();\n event.preventDefault();\n }\n }\n editorDivKeydown(event) {\n FreeTextEditor._keyboardManager.exec(this, event);\n }\n editorDivFocus(event) {\n this.isEditing = true;\n }\n editorDivBlur(event) {\n this.isEditing = false;\n }\n editorDivInput(event) {\n this.parent.div.classList.toggle(\"freeTextEditing\", this.isEmpty());\n }\n disableEditing() {\n this.editorDiv.setAttribute(\"role\", \"comment\");\n this.editorDiv.removeAttribute(\"aria-multiline\");\n }\n enableEditing() {\n this.editorDiv.setAttribute(\"role\", \"textbox\");\n this.editorDiv.setAttribute(\"aria-multiline\", true);\n }\n render() {\n if (this.div) {\n return this.div;\n }\n let baseX, baseY;\n if (this.width) {\n baseX = this.x;\n baseY = this.y;\n }\n super.render();\n this.editorDiv = document.createElement(\"div\");\n this.editorDiv.className = \"internal\";\n this.editorDiv.setAttribute(\"id\", this.#editorDivId);\n this.enableEditing();\n _editor.AnnotationEditor._l10nPromise.get(\"editor_free_text2_aria_label\").then(msg => this.editorDiv?.setAttribute(\"aria-label\", msg));\n _editor.AnnotationEditor._l10nPromise.get(\"free_text2_default_content\").then(msg => this.editorDiv?.setAttribute(\"default-content\", msg));\n this.editorDiv.contentEditable = true;\n const {\n style\n } = this.editorDiv;\n style.fontSize = `calc(${this.#fontSize}px * var(--scale-factor))`;\n style.color = this.#color;\n this.div.append(this.editorDiv);\n this.overlayDiv = document.createElement(\"div\");\n this.overlayDiv.classList.add(\"overlay\", \"enabled\");\n this.div.append(this.overlayDiv);\n (0, _tools.bindEvents)(this, this.div, [\"dblclick\", \"keydown\"]);\n if (this.width) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n if (this.annotationElementId) {\n const {\n position\n } = this.#initialData;\n let [tx, ty] = this.getInitialTranslation();\n [tx, ty] = this.pageTranslationToScreen(tx, ty);\n const [pageWidth, pageHeight] = this.pageDimensions;\n const [pageX, pageY] = this.pageTranslation;\n let posX, posY;\n switch (this.rotation) {\n case 0:\n posX = baseX + (position[0] - pageX) / pageWidth;\n posY = baseY + this.height - (position[1] - pageY) / pageHeight;\n break;\n case 90:\n posX = baseX + (position[0] - pageX) / pageWidth;\n posY = baseY - (position[1] - pageY) / pageHeight;\n [tx, ty] = [ty, -tx];\n break;\n case 180:\n posX = baseX - this.width + (position[0] - pageX) / pageWidth;\n posY = baseY - (position[1] - pageY) / pageHeight;\n [tx, ty] = [-tx, -ty];\n break;\n case 270:\n posX = baseX + (position[0] - pageX - this.height * pageHeight) / pageWidth;\n posY = baseY + (position[1] - pageY - this.width * pageWidth) / pageHeight;\n [tx, ty] = [-ty, tx];\n break;\n }\n this.setAt(posX * parentWidth, posY * parentHeight, tx, ty);\n } else {\n this.setAt(baseX * parentWidth, baseY * parentHeight, this.width * parentWidth, this.height * parentHeight);\n }\n this.#setContent();\n this._isDraggable = true;\n this.editorDiv.contentEditable = false;\n } else {\n this._isDraggable = false;\n this.editorDiv.contentEditable = true;\n }\n return this.div;\n }\n #setContent() {\n this.editorDiv.replaceChildren();\n if (!this.#content) {\n return;\n }\n for (const line of this.#content.split(\"\\n\")) {\n const div = document.createElement(\"div\");\n div.append(line ? document.createTextNode(line) : document.createElement(\"br\"));\n this.editorDiv.append(div);\n }\n }\n get contentDiv() {\n return this.editorDiv;\n }\n static deserialize(data, parent, uiManager) {\n let initialData = null;\n if (data instanceof _annotation_layer.FreeTextAnnotationElement) {\n const {\n data: {\n defaultAppearanceData: {\n fontSize,\n fontColor\n },\n rect,\n rotation,\n id\n },\n textContent,\n textPosition,\n parent: {\n page: {\n pageNumber\n }\n }\n } = data;\n if (!textContent || textContent.length === 0) {\n return null;\n }\n initialData = data = {\n annotationType: _util.AnnotationEditorType.FREETEXT,\n color: Array.from(fontColor),\n fontSize,\n value: textContent.join(\"\\n\"),\n position: textPosition,\n pageIndex: pageNumber - 1,\n rect,\n rotation,\n id,\n deleted: false\n };\n }\n const editor = super.deserialize(data, parent, uiManager);\n editor.#fontSize = data.fontSize;\n editor.#color = _util.Util.makeHexColor(...data.color);\n editor.#content = data.value;\n editor.annotationElementId = data.id || null;\n editor.#initialData = initialData;\n return editor;\n }\n serialize(isForCopying = false) {\n if (this.isEmpty()) {\n return null;\n }\n if (this.deleted) {\n return {\n pageIndex: this.pageIndex,\n id: this.annotationElementId,\n deleted: true\n };\n }\n const padding = FreeTextEditor._internalPadding * this.parentScale;\n const rect = this.getRect(padding, padding);\n const color = _editor.AnnotationEditor._colorManager.convert(this.isAttachedToDOM ? getComputedStyle(this.editorDiv).color : this.#color);\n const serialized = {\n annotationType: _util.AnnotationEditorType.FREETEXT,\n color,\n fontSize: this.#fontSize,\n value: this.#content,\n pageIndex: this.pageIndex,\n rect,\n rotation: this.rotation,\n structTreeParentId: this._structTreeParentId\n };\n if (isForCopying) {\n return serialized;\n }\n if (this.annotationElementId && !this.#hasElementChanged(serialized)) {\n return null;\n }\n serialized.id = this.annotationElementId;\n return serialized;\n }\n #hasElementChanged(serialized) {\n const {\n value,\n fontSize,\n color,\n rect,\n pageIndex\n } = this.#initialData;\n return serialized.value !== value || serialized.fontSize !== fontSize || serialized.rect.some((x, i) => Math.abs(x - rect[i]) >= 1) || serialized.color.some((c, i) => c !== color[i]) || serialized.pageIndex !== pageIndex;\n }\n #cheatInitialRect(delayed = false) {\n if (!this.annotationElementId) {\n return;\n }\n this.#setEditorDimensions();\n if (!delayed && (this.width === 0 || this.height === 0)) {\n setTimeout(() => this.#cheatInitialRect(true), 0);\n return;\n }\n const padding = FreeTextEditor._internalPadding * this.parentScale;\n this.#initialData.rect = this.getRect(padding, padding);\n }\n}\nexports.FreeTextEditor = FreeTextEditor;\n\n/***/ }),\n/* 29 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.StampAnnotationElement = exports.InkAnnotationElement = exports.FreeTextAnnotationElement = exports.AnnotationLayer = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _display_utils = __w_pdfjs_require__(6);\nvar _annotation_storage = __w_pdfjs_require__(3);\nvar _scripting_utils = __w_pdfjs_require__(30);\nvar _displayL10n_utils = __w_pdfjs_require__(31);\nvar _xfa_layer = __w_pdfjs_require__(32);\nconst DEFAULT_TAB_INDEX = 1000;\nconst DEFAULT_FONT_SIZE = 9;\nconst GetElementsByNameSet = new WeakSet();\nfunction getRectDims(rect) {\n return {\n width: rect[2] - rect[0],\n height: rect[3] - rect[1]\n };\n}\nclass AnnotationElementFactory {\n static create(parameters) {\n const subtype = parameters.data.annotationType;\n switch (subtype) {\n case _util.AnnotationType.LINK:\n return new LinkAnnotationElement(parameters);\n case _util.AnnotationType.TEXT:\n return new TextAnnotationElement(parameters);\n case _util.AnnotationType.WIDGET:\n const fieldType = parameters.data.fieldType;\n switch (fieldType) {\n case \"Tx\":\n return new TextWidgetAnnotationElement(parameters);\n case \"Btn\":\n if (parameters.data.radioButton) {\n return new RadioButtonWidgetAnnotationElement(parameters);\n } else if (parameters.data.checkBox) {\n return new CheckboxWidgetAnnotationElement(parameters);\n }\n return new PushButtonWidgetAnnotationElement(parameters);\n case \"Ch\":\n return new ChoiceWidgetAnnotationElement(parameters);\n case \"Sig\":\n return new SignatureWidgetAnnotationElement(parameters);\n }\n return new WidgetAnnotationElement(parameters);\n case _util.AnnotationType.POPUP:\n return new PopupAnnotationElement(parameters);\n case _util.AnnotationType.FREETEXT:\n return new FreeTextAnnotationElement(parameters);\n case _util.AnnotationType.LINE:\n return new LineAnnotationElement(parameters);\n case _util.AnnotationType.SQUARE:\n return new SquareAnnotationElement(parameters);\n case _util.AnnotationType.CIRCLE:\n return new CircleAnnotationElement(parameters);\n case _util.AnnotationType.POLYLINE:\n return new PolylineAnnotationElement(parameters);\n case _util.AnnotationType.CARET:\n return new CaretAnnotationElement(parameters);\n case _util.AnnotationType.INK:\n return new InkAnnotationElement(parameters);\n case _util.AnnotationType.POLYGON:\n return new PolygonAnnotationElement(parameters);\n case _util.AnnotationType.HIGHLIGHT:\n return new HighlightAnnotationElement(parameters);\n case _util.AnnotationType.UNDERLINE:\n return new UnderlineAnnotationElement(parameters);\n case _util.AnnotationType.SQUIGGLY:\n return new SquigglyAnnotationElement(parameters);\n case _util.AnnotationType.STRIKEOUT:\n return new StrikeOutAnnotationElement(parameters);\n case _util.AnnotationType.STAMP:\n return new StampAnnotationElement(parameters);\n case _util.AnnotationType.FILEATTACHMENT:\n return new FileAttachmentAnnotationElement(parameters);\n default:\n return new AnnotationElement(parameters);\n }\n }\n}\nclass AnnotationElement {\n #hasBorder = false;\n constructor(parameters, {\n isRenderable = false,\n ignoreBorder = false,\n createQuadrilaterals = false\n } = {}) {\n this.isRenderable = isRenderable;\n this.data = parameters.data;\n this.layer = parameters.layer;\n this.linkService = parameters.linkService;\n this.downloadManager = parameters.downloadManager;\n this.imageResourcesPath = parameters.imageResourcesPath;\n this.renderForms = parameters.renderForms;\n this.svgFactory = parameters.svgFactory;\n this.annotationStorage = parameters.annotationStorage;\n this.enableScripting = parameters.enableScripting;\n this.hasJSActions = parameters.hasJSActions;\n this._fieldObjects = parameters.fieldObjects;\n this.parent = parameters.parent;\n if (isRenderable) {\n this.container = this._createContainer(ignoreBorder);\n }\n if (createQuadrilaterals) {\n this._createQuadrilaterals();\n }\n }\n static _hasPopupData({\n titleObj,\n contentsObj,\n richText\n }) {\n return !!(titleObj?.str || contentsObj?.str || richText?.str);\n }\n get hasPopupData() {\n return AnnotationElement._hasPopupData(this.data);\n }\n _createContainer(ignoreBorder) {\n const {\n data,\n parent: {\n page,\n viewport\n }\n } = this;\n const container = document.createElement(\"section\");\n container.setAttribute(\"data-annotation-id\", data.id);\n if (!(this instanceof WidgetAnnotationElement)) {\n container.tabIndex = DEFAULT_TAB_INDEX;\n }\n container.style.zIndex = this.parent.zIndex++;\n if (this.data.popupRef) {\n container.setAttribute(\"aria-haspopup\", \"dialog\");\n }\n if (data.noRotate) {\n container.classList.add(\"norotate\");\n }\n const {\n pageWidth,\n pageHeight,\n pageX,\n pageY\n } = viewport.rawDims;\n if (!data.rect || this instanceof PopupAnnotationElement) {\n const {\n rotation\n } = data;\n if (!data.hasOwnCanvas && rotation !== 0) {\n this.setRotation(rotation, container);\n }\n return container;\n }\n const {\n width,\n height\n } = getRectDims(data.rect);\n const rect = _util.Util.normalizeRect([data.rect[0], page.view[3] - data.rect[1] + page.view[1], data.rect[2], page.view[3] - data.rect[3] + page.view[1]]);\n if (!ignoreBorder && data.borderStyle.width > 0) {\n container.style.borderWidth = `${data.borderStyle.width}px`;\n const horizontalRadius = data.borderStyle.horizontalCornerRadius;\n const verticalRadius = data.borderStyle.verticalCornerRadius;\n if (horizontalRadius > 0 || verticalRadius > 0) {\n const radius = `calc(${horizontalRadius}px * var(--scale-factor)) / calc(${verticalRadius}px * var(--scale-factor))`;\n container.style.borderRadius = radius;\n } else if (this instanceof RadioButtonWidgetAnnotationElement) {\n const radius = `calc(${width}px * var(--scale-factor)) / calc(${height}px * var(--scale-factor))`;\n container.style.borderRadius = radius;\n }\n switch (data.borderStyle.style) {\n case _util.AnnotationBorderStyleType.SOLID:\n container.style.borderStyle = \"solid\";\n break;\n case _util.AnnotationBorderStyleType.DASHED:\n container.style.borderStyle = \"dashed\";\n break;\n case _util.AnnotationBorderStyleType.BEVELED:\n (0, _util.warn)(\"Unimplemented border style: beveled\");\n break;\n case _util.AnnotationBorderStyleType.INSET:\n (0, _util.warn)(\"Unimplemented border style: inset\");\n break;\n case _util.AnnotationBorderStyleType.UNDERLINE:\n container.style.borderBottomStyle = \"solid\";\n break;\n default:\n break;\n }\n const borderColor = data.borderColor || null;\n if (borderColor) {\n this.#hasBorder = true;\n container.style.borderColor = _util.Util.makeHexColor(borderColor[0] | 0, borderColor[1] | 0, borderColor[2] | 0);\n } else {\n container.style.borderWidth = 0;\n }\n }\n container.style.left = `${100 * (rect[0] - pageX) / pageWidth}%`;\n container.style.top = `${100 * (rect[1] - pageY) / pageHeight}%`;\n const {\n rotation\n } = data;\n if (data.hasOwnCanvas || rotation === 0) {\n container.style.width = `${100 * width / pageWidth}%`;\n container.style.height = `${100 * height / pageHeight}%`;\n } else {\n this.setRotation(rotation, container);\n }\n return container;\n }\n setRotation(angle, container = this.container) {\n if (!this.data.rect) {\n return;\n }\n const {\n pageWidth,\n pageHeight\n } = this.parent.viewport.rawDims;\n const {\n width,\n height\n } = getRectDims(this.data.rect);\n let elementWidth, elementHeight;\n if (angle % 180 === 0) {\n elementWidth = 100 * width / pageWidth;\n elementHeight = 100 * height / pageHeight;\n } else {\n elementWidth = 100 * height / pageWidth;\n elementHeight = 100 * width / pageHeight;\n }\n container.style.width = `${elementWidth}%`;\n container.style.height = `${elementHeight}%`;\n container.setAttribute(\"data-main-rotation\", (360 - angle) % 360);\n }\n get _commonActions() {\n const setColor = (jsName, styleName, event) => {\n const color = event.detail[jsName];\n const colorType = color[0];\n const colorArray = color.slice(1);\n event.target.style[styleName] = _scripting_utils.ColorConverters[`${colorType}_HTML`](colorArray);\n this.annotationStorage.setValue(this.data.id, {\n [styleName]: _scripting_utils.ColorConverters[`${colorType}_rgb`](colorArray)\n });\n };\n return (0, _util.shadow)(this, \"_commonActions\", {\n display: event => {\n const {\n display\n } = event.detail;\n const hidden = display % 2 === 1;\n this.container.style.visibility = hidden ? \"hidden\" : \"visible\";\n this.annotationStorage.setValue(this.data.id, {\n noView: hidden,\n noPrint: display === 1 || display === 2\n });\n },\n print: event => {\n this.annotationStorage.setValue(this.data.id, {\n noPrint: !event.detail.print\n });\n },\n hidden: event => {\n const {\n hidden\n } = event.detail;\n this.container.style.visibility = hidden ? \"hidden\" : \"visible\";\n this.annotationStorage.setValue(this.data.id, {\n noPrint: hidden,\n noView: hidden\n });\n },\n focus: event => {\n setTimeout(() => event.target.focus({\n preventScroll: false\n }), 0);\n },\n userName: event => {\n event.target.title = event.detail.userName;\n },\n readonly: event => {\n event.target.disabled = event.detail.readonly;\n },\n required: event => {\n this._setRequired(event.target, event.detail.required);\n },\n bgColor: event => {\n setColor(\"bgColor\", \"backgroundColor\", event);\n },\n fillColor: event => {\n setColor(\"fillColor\", \"backgroundColor\", event);\n },\n fgColor: event => {\n setColor(\"fgColor\", \"color\", event);\n },\n textColor: event => {\n setColor(\"textColor\", \"color\", event);\n },\n borderColor: event => {\n setColor(\"borderColor\", \"borderColor\", event);\n },\n strokeColor: event => {\n setColor(\"strokeColor\", \"borderColor\", event);\n },\n rotation: event => {\n const angle = event.detail.rotation;\n this.setRotation(angle);\n this.annotationStorage.setValue(this.data.id, {\n rotation: angle\n });\n }\n });\n }\n _dispatchEventFromSandbox(actions, jsEvent) {\n const commonActions = this._commonActions;\n for (const name of Object.keys(jsEvent.detail)) {\n const action = actions[name] || commonActions[name];\n action?.(jsEvent);\n }\n }\n _setDefaultPropertiesFromJS(element) {\n if (!this.enableScripting) {\n return;\n }\n const storedData = this.annotationStorage.getRawValue(this.data.id);\n if (!storedData) {\n return;\n }\n const commonActions = this._commonActions;\n for (const [actionName, detail] of Object.entries(storedData)) {\n const action = commonActions[actionName];\n if (action) {\n const eventProxy = {\n detail: {\n [actionName]: detail\n },\n target: element\n };\n action(eventProxy);\n delete storedData[actionName];\n }\n }\n }\n _createQuadrilaterals() {\n if (!this.container) {\n return;\n }\n const {\n quadPoints\n } = this.data;\n if (!quadPoints) {\n return;\n }\n const [rectBlX, rectBlY, rectTrX, rectTrY] = this.data.rect;\n if (quadPoints.length === 1) {\n const [, {\n x: trX,\n y: trY\n }, {\n x: blX,\n y: blY\n }] = quadPoints[0];\n if (rectTrX === trX && rectTrY === trY && rectBlX === blX && rectBlY === blY) {\n return;\n }\n }\n const {\n style\n } = this.container;\n let svgBuffer;\n if (this.#hasBorder) {\n const {\n borderColor,\n borderWidth\n } = style;\n style.borderWidth = 0;\n svgBuffer = [\"url('data:image/svg+xml;utf8,\", ``, ``];\n this.container.classList.add(\"hasBorder\");\n }\n const width = rectTrX - rectBlX;\n const height = rectTrY - rectBlY;\n const {\n svgFactory\n } = this;\n const svg = svgFactory.createElement(\"svg\");\n svg.classList.add(\"quadrilateralsContainer\");\n svg.setAttribute(\"width\", 0);\n svg.setAttribute(\"height\", 0);\n const defs = svgFactory.createElement(\"defs\");\n svg.append(defs);\n const clipPath = svgFactory.createElement(\"clipPath\");\n const id = `clippath_${this.data.id}`;\n clipPath.setAttribute(\"id\", id);\n clipPath.setAttribute(\"clipPathUnits\", \"objectBoundingBox\");\n defs.append(clipPath);\n for (const [, {\n x: trX,\n y: trY\n }, {\n x: blX,\n y: blY\n }] of quadPoints) {\n const rect = svgFactory.createElement(\"rect\");\n const x = (blX - rectBlX) / width;\n const y = (rectTrY - trY) / height;\n const rectWidth = (trX - blX) / width;\n const rectHeight = (trY - blY) / height;\n rect.setAttribute(\"x\", x);\n rect.setAttribute(\"y\", y);\n rect.setAttribute(\"width\", rectWidth);\n rect.setAttribute(\"height\", rectHeight);\n clipPath.append(rect);\n svgBuffer?.push(``);\n }\n if (this.#hasBorder) {\n svgBuffer.push(`')`);\n style.backgroundImage = svgBuffer.join(\"\");\n }\n this.container.append(svg);\n this.container.style.clipPath = `url(#${id})`;\n }\n _createPopup() {\n const {\n container,\n data\n } = this;\n container.setAttribute(\"aria-haspopup\", \"dialog\");\n const popup = new PopupAnnotationElement({\n data: {\n color: data.color,\n titleObj: data.titleObj,\n modificationDate: data.modificationDate,\n contentsObj: data.contentsObj,\n richText: data.richText,\n parentRect: data.rect,\n borderStyle: 0,\n id: `popup_${data.id}`,\n rotation: data.rotation\n },\n parent: this.parent,\n elements: [this]\n });\n this.parent.div.append(popup.render());\n }\n render() {\n (0, _util.unreachable)(\"Abstract method `AnnotationElement.render` called\");\n }\n _getElementsByName(name, skipId = null) {\n const fields = [];\n if (this._fieldObjects) {\n const fieldObj = this._fieldObjects[name];\n if (fieldObj) {\n for (const {\n page,\n id,\n exportValues\n } of fieldObj) {\n if (page === -1) {\n continue;\n }\n if (id === skipId) {\n continue;\n }\n const exportValue = typeof exportValues === \"string\" ? exportValues : null;\n const domElement = document.querySelector(`[data-element-id=\"${id}\"]`);\n if (domElement && !GetElementsByNameSet.has(domElement)) {\n (0, _util.warn)(`_getElementsByName - element not allowed: ${id}`);\n continue;\n }\n fields.push({\n id,\n exportValue,\n domElement\n });\n }\n }\n return fields;\n }\n for (const domElement of document.getElementsByName(name)) {\n const {\n exportValue\n } = domElement;\n const id = domElement.getAttribute(\"data-element-id\");\n if (id === skipId) {\n continue;\n }\n if (!GetElementsByNameSet.has(domElement)) {\n continue;\n }\n fields.push({\n id,\n exportValue,\n domElement\n });\n }\n return fields;\n }\n show() {\n if (this.container) {\n this.container.hidden = false;\n }\n this.popup?.maybeShow();\n }\n hide() {\n if (this.container) {\n this.container.hidden = true;\n }\n this.popup?.forceHide();\n }\n getElementsToTriggerPopup() {\n return this.container;\n }\n addHighlightArea() {\n const triggers = this.getElementsToTriggerPopup();\n if (Array.isArray(triggers)) {\n for (const element of triggers) {\n element.classList.add(\"highlightArea\");\n }\n } else {\n triggers.classList.add(\"highlightArea\");\n }\n }\n _editOnDoubleClick() {\n const {\n annotationEditorType: mode,\n data: {\n id: editId\n }\n } = this;\n this.container.addEventListener(\"dblclick\", () => {\n this.linkService.eventBus?.dispatch(\"switchannotationeditormode\", {\n source: this,\n mode,\n editId\n });\n });\n }\n}\nclass LinkAnnotationElement extends AnnotationElement {\n constructor(parameters, options = null) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: !!options?.ignoreBorder,\n createQuadrilaterals: true\n });\n this.isTooltipOnly = parameters.data.isTooltipOnly;\n }\n render() {\n const {\n data,\n linkService\n } = this;\n const link = document.createElement(\"a\");\n link.setAttribute(\"data-element-id\", data.id);\n let isBound = false;\n if (data.url) {\n linkService.addLinkAttributes(link, data.url, data.newWindow);\n isBound = true;\n } else if (data.action) {\n this._bindNamedAction(link, data.action);\n isBound = true;\n } else if (data.attachment) {\n this._bindAttachment(link, data.attachment);\n isBound = true;\n } else if (data.setOCGState) {\n this.#bindSetOCGState(link, data.setOCGState);\n isBound = true;\n } else if (data.dest) {\n this._bindLink(link, data.dest);\n isBound = true;\n } else {\n if (data.actions && (data.actions.Action || data.actions[\"Mouse Up\"] || data.actions[\"Mouse Down\"]) && this.enableScripting && this.hasJSActions) {\n this._bindJSAction(link, data);\n isBound = true;\n }\n if (data.resetForm) {\n this._bindResetFormAction(link, data.resetForm);\n isBound = true;\n } else if (this.isTooltipOnly && !isBound) {\n this._bindLink(link, \"\");\n isBound = true;\n }\n }\n this.container.classList.add(\"linkAnnotation\");\n if (isBound) {\n this.container.append(link);\n }\n return this.container;\n }\n #setInternalLink() {\n this.container.setAttribute(\"data-internal-link\", \"\");\n }\n _bindLink(link, destination) {\n link.href = this.linkService.getDestinationHash(destination);\n link.onclick = () => {\n if (destination) {\n this.linkService.goToDestination(destination);\n }\n return false;\n };\n if (destination || destination === \"\") {\n this.#setInternalLink();\n }\n }\n _bindNamedAction(link, action) {\n link.href = this.linkService.getAnchorUrl(\"\");\n link.onclick = () => {\n this.linkService.executeNamedAction(action);\n return false;\n };\n this.#setInternalLink();\n }\n _bindAttachment(link, attachment) {\n link.href = this.linkService.getAnchorUrl(\"\");\n link.onclick = () => {\n this.downloadManager?.openOrDownloadData(this.container, attachment.content, attachment.filename);\n return false;\n };\n this.#setInternalLink();\n }\n #bindSetOCGState(link, action) {\n link.href = this.linkService.getAnchorUrl(\"\");\n link.onclick = () => {\n this.linkService.executeSetOCGState(action);\n return false;\n };\n this.#setInternalLink();\n }\n _bindJSAction(link, data) {\n link.href = this.linkService.getAnchorUrl(\"\");\n const map = new Map([[\"Action\", \"onclick\"], [\"Mouse Up\", \"onmouseup\"], [\"Mouse Down\", \"onmousedown\"]]);\n for (const name of Object.keys(data.actions)) {\n const jsName = map.get(name);\n if (!jsName) {\n continue;\n }\n link[jsName] = () => {\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id: data.id,\n name\n }\n });\n return false;\n };\n }\n if (!link.onclick) {\n link.onclick = () => false;\n }\n this.#setInternalLink();\n }\n _bindResetFormAction(link, resetForm) {\n const otherClickAction = link.onclick;\n if (!otherClickAction) {\n link.href = this.linkService.getAnchorUrl(\"\");\n }\n this.#setInternalLink();\n if (!this._fieldObjects) {\n (0, _util.warn)(`_bindResetFormAction - \"resetForm\" action not supported, ` + \"ensure that the `fieldObjects` parameter is provided.\");\n if (!otherClickAction) {\n link.onclick = () => false;\n }\n return;\n }\n link.onclick = () => {\n otherClickAction?.();\n const {\n fields: resetFormFields,\n refs: resetFormRefs,\n include\n } = resetForm;\n const allFields = [];\n if (resetFormFields.length !== 0 || resetFormRefs.length !== 0) {\n const fieldIds = new Set(resetFormRefs);\n for (const fieldName of resetFormFields) {\n const fields = this._fieldObjects[fieldName] || [];\n for (const {\n id\n } of fields) {\n fieldIds.add(id);\n }\n }\n for (const fields of Object.values(this._fieldObjects)) {\n for (const field of fields) {\n if (fieldIds.has(field.id) === include) {\n allFields.push(field);\n }\n }\n }\n } else {\n for (const fields of Object.values(this._fieldObjects)) {\n allFields.push(...fields);\n }\n }\n const storage = this.annotationStorage;\n const allIds = [];\n for (const field of allFields) {\n const {\n id\n } = field;\n allIds.push(id);\n switch (field.type) {\n case \"text\":\n {\n const value = field.defaultValue || \"\";\n storage.setValue(id, {\n value\n });\n break;\n }\n case \"checkbox\":\n case \"radiobutton\":\n {\n const value = field.defaultValue === field.exportValues;\n storage.setValue(id, {\n value\n });\n break;\n }\n case \"combobox\":\n case \"listbox\":\n {\n const value = field.defaultValue || \"\";\n storage.setValue(id, {\n value\n });\n break;\n }\n default:\n continue;\n }\n const domElement = document.querySelector(`[data-element-id=\"${id}\"]`);\n if (!domElement) {\n continue;\n } else if (!GetElementsByNameSet.has(domElement)) {\n (0, _util.warn)(`_bindResetFormAction - element not allowed: ${id}`);\n continue;\n }\n domElement.dispatchEvent(new Event(\"resetform\"));\n }\n if (this.enableScripting) {\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id: \"app\",\n ids: allIds,\n name: \"ResetForm\"\n }\n });\n }\n return false;\n };\n }\n}\nclass TextAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true\n });\n }\n render() {\n this.container.classList.add(\"textAnnotation\");\n const image = document.createElement(\"img\");\n image.src = this.imageResourcesPath + \"annotation-\" + this.data.name.toLowerCase() + \".svg\";\n image.alt = \"[{{type}} Annotation]\";\n image.dataset.l10nId = \"text_annotation_type\";\n image.dataset.l10nArgs = JSON.stringify({\n type: this.data.name\n });\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this.container.append(image);\n return this.container;\n }\n}\nclass WidgetAnnotationElement extends AnnotationElement {\n render() {\n if (this.data.alternativeText) {\n this.container.title = this.data.alternativeText;\n }\n return this.container;\n }\n showElementAndHideCanvas(element) {\n if (this.data.hasOwnCanvas) {\n if (element.previousSibling?.nodeName === \"CANVAS\") {\n element.previousSibling.hidden = true;\n }\n element.hidden = false;\n }\n }\n _getKeyModifier(event) {\n const {\n isWin,\n isMac\n } = _util.FeatureTest.platform;\n return isWin && event.ctrlKey || isMac && event.metaKey;\n }\n _setEventListener(element, elementData, baseName, eventName, valueGetter) {\n if (baseName.includes(\"mouse\")) {\n element.addEventListener(baseName, event => {\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id: this.data.id,\n name: eventName,\n value: valueGetter(event),\n shift: event.shiftKey,\n modifier: this._getKeyModifier(event)\n }\n });\n });\n } else {\n element.addEventListener(baseName, event => {\n if (baseName === \"blur\") {\n if (!elementData.focused || !event.relatedTarget) {\n return;\n }\n elementData.focused = false;\n } else if (baseName === \"focus\") {\n if (elementData.focused) {\n return;\n }\n elementData.focused = true;\n }\n if (!valueGetter) {\n return;\n }\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id: this.data.id,\n name: eventName,\n value: valueGetter(event)\n }\n });\n });\n }\n }\n _setEventListeners(element, elementData, names, getter) {\n for (const [baseName, eventName] of names) {\n if (eventName === \"Action\" || this.data.actions?.[eventName]) {\n if (eventName === \"Focus\" || eventName === \"Blur\") {\n elementData ||= {\n focused: false\n };\n }\n this._setEventListener(element, elementData, baseName, eventName, getter);\n if (eventName === \"Focus\" && !this.data.actions?.Blur) {\n this._setEventListener(element, elementData, \"blur\", \"Blur\", null);\n } else if (eventName === \"Blur\" && !this.data.actions?.Focus) {\n this._setEventListener(element, elementData, \"focus\", \"Focus\", null);\n }\n }\n }\n }\n _setBackgroundColor(element) {\n const color = this.data.backgroundColor || null;\n element.style.backgroundColor = color === null ? \"transparent\" : _util.Util.makeHexColor(color[0], color[1], color[2]);\n }\n _setTextStyle(element) {\n const TEXT_ALIGNMENT = [\"left\", \"center\", \"right\"];\n const {\n fontColor\n } = this.data.defaultAppearanceData;\n const fontSize = this.data.defaultAppearanceData.fontSize || DEFAULT_FONT_SIZE;\n const style = element.style;\n let computedFontSize;\n const BORDER_SIZE = 2;\n const roundToOneDecimal = x => Math.round(10 * x) / 10;\n if (this.data.multiLine) {\n const height = Math.abs(this.data.rect[3] - this.data.rect[1] - BORDER_SIZE);\n const numberOfLines = Math.round(height / (_util.LINE_FACTOR * fontSize)) || 1;\n const lineHeight = height / numberOfLines;\n computedFontSize = Math.min(fontSize, roundToOneDecimal(lineHeight / _util.LINE_FACTOR));\n } else {\n const height = Math.abs(this.data.rect[3] - this.data.rect[1] - BORDER_SIZE);\n computedFontSize = Math.min(fontSize, roundToOneDecimal(height / _util.LINE_FACTOR));\n }\n style.fontSize = `calc(${computedFontSize}px * var(--scale-factor))`;\n style.color = _util.Util.makeHexColor(fontColor[0], fontColor[1], fontColor[2]);\n if (this.data.textAlignment !== null) {\n style.textAlign = TEXT_ALIGNMENT[this.data.textAlignment];\n }\n }\n _setRequired(element, isRequired) {\n if (isRequired) {\n element.setAttribute(\"required\", true);\n } else {\n element.removeAttribute(\"required\");\n }\n element.setAttribute(\"aria-required\", isRequired);\n }\n}\nclass TextWidgetAnnotationElement extends WidgetAnnotationElement {\n constructor(parameters) {\n const isRenderable = parameters.renderForms || !parameters.data.hasAppearance && !!parameters.data.fieldValue;\n super(parameters, {\n isRenderable\n });\n }\n setPropertyOnSiblings(base, key, value, keyInStorage) {\n const storage = this.annotationStorage;\n for (const element of this._getElementsByName(base.name, base.id)) {\n if (element.domElement) {\n element.domElement[key] = value;\n }\n storage.setValue(element.id, {\n [keyInStorage]: value\n });\n }\n }\n render() {\n const storage = this.annotationStorage;\n const id = this.data.id;\n this.container.classList.add(\"textWidgetAnnotation\");\n let element = null;\n if (this.renderForms) {\n const storedData = storage.getValue(id, {\n value: this.data.fieldValue\n });\n let textContent = storedData.value || \"\";\n const maxLen = storage.getValue(id, {\n charLimit: this.data.maxLen\n }).charLimit;\n if (maxLen && textContent.length > maxLen) {\n textContent = textContent.slice(0, maxLen);\n }\n let fieldFormattedValues = storedData.formattedValue || this.data.textContent?.join(\"\\n\") || null;\n if (fieldFormattedValues && this.data.comb) {\n fieldFormattedValues = fieldFormattedValues.replaceAll(/\\s+/g, \"\");\n }\n const elementData = {\n userValue: textContent,\n formattedValue: fieldFormattedValues,\n lastCommittedValue: null,\n commitKey: 1,\n focused: false\n };\n if (this.data.multiLine) {\n element = document.createElement(\"textarea\");\n element.textContent = fieldFormattedValues ?? textContent;\n if (this.data.doNotScroll) {\n element.style.overflowY = \"hidden\";\n }\n } else {\n element = document.createElement(\"input\");\n element.type = \"text\";\n element.setAttribute(\"value\", fieldFormattedValues ?? textContent);\n if (this.data.doNotScroll) {\n element.style.overflowX = \"hidden\";\n }\n }\n if (this.data.hasOwnCanvas) {\n element.hidden = true;\n }\n GetElementsByNameSet.add(element);\n element.setAttribute(\"data-element-id\", id);\n element.disabled = this.data.readOnly;\n element.name = this.data.fieldName;\n element.tabIndex = DEFAULT_TAB_INDEX;\n this._setRequired(element, this.data.required);\n if (maxLen) {\n element.maxLength = maxLen;\n }\n element.addEventListener(\"input\", event => {\n storage.setValue(id, {\n value: event.target.value\n });\n this.setPropertyOnSiblings(element, \"value\", event.target.value, \"value\");\n elementData.formattedValue = null;\n });\n element.addEventListener(\"resetform\", event => {\n const defaultValue = this.data.defaultFieldValue ?? \"\";\n element.value = elementData.userValue = defaultValue;\n elementData.formattedValue = null;\n });\n let blurListener = event => {\n const {\n formattedValue\n } = elementData;\n if (formattedValue !== null && formattedValue !== undefined) {\n event.target.value = formattedValue;\n }\n event.target.scrollLeft = 0;\n };\n if (this.enableScripting && this.hasJSActions) {\n element.addEventListener(\"focus\", event => {\n if (elementData.focused) {\n return;\n }\n const {\n target\n } = event;\n if (elementData.userValue) {\n target.value = elementData.userValue;\n }\n elementData.lastCommittedValue = target.value;\n elementData.commitKey = 1;\n elementData.focused = true;\n });\n element.addEventListener(\"updatefromsandbox\", jsEvent => {\n this.showElementAndHideCanvas(jsEvent.target);\n const actions = {\n value(event) {\n elementData.userValue = event.detail.value ?? \"\";\n storage.setValue(id, {\n value: elementData.userValue.toString()\n });\n event.target.value = elementData.userValue;\n },\n formattedValue(event) {\n const {\n formattedValue\n } = event.detail;\n elementData.formattedValue = formattedValue;\n if (formattedValue !== null && formattedValue !== undefined && event.target !== document.activeElement) {\n event.target.value = formattedValue;\n }\n storage.setValue(id, {\n formattedValue\n });\n },\n selRange(event) {\n event.target.setSelectionRange(...event.detail.selRange);\n },\n charLimit: event => {\n const {\n charLimit\n } = event.detail;\n const {\n target\n } = event;\n if (charLimit === 0) {\n target.removeAttribute(\"maxLength\");\n return;\n }\n target.setAttribute(\"maxLength\", charLimit);\n let value = elementData.userValue;\n if (!value || value.length <= charLimit) {\n return;\n }\n value = value.slice(0, charLimit);\n target.value = elementData.userValue = value;\n storage.setValue(id, {\n value\n });\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id,\n name: \"Keystroke\",\n value,\n willCommit: true,\n commitKey: 1,\n selStart: target.selectionStart,\n selEnd: target.selectionEnd\n }\n });\n }\n };\n this._dispatchEventFromSandbox(actions, jsEvent);\n });\n element.addEventListener(\"keydown\", event => {\n elementData.commitKey = 1;\n let commitKey = -1;\n if (event.key === \"Escape\") {\n commitKey = 0;\n } else if (event.key === \"Enter\" && !this.data.multiLine) {\n commitKey = 2;\n } else if (event.key === \"Tab\") {\n elementData.commitKey = 3;\n }\n if (commitKey === -1) {\n return;\n }\n const {\n value\n } = event.target;\n if (elementData.lastCommittedValue === value) {\n return;\n }\n elementData.lastCommittedValue = value;\n elementData.userValue = value;\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id,\n name: \"Keystroke\",\n value,\n willCommit: true,\n commitKey,\n selStart: event.target.selectionStart,\n selEnd: event.target.selectionEnd\n }\n });\n });\n const _blurListener = blurListener;\n blurListener = null;\n element.addEventListener(\"blur\", event => {\n if (!elementData.focused || !event.relatedTarget) {\n return;\n }\n elementData.focused = false;\n const {\n value\n } = event.target;\n elementData.userValue = value;\n if (elementData.lastCommittedValue !== value) {\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id,\n name: \"Keystroke\",\n value,\n willCommit: true,\n commitKey: elementData.commitKey,\n selStart: event.target.selectionStart,\n selEnd: event.target.selectionEnd\n }\n });\n }\n _blurListener(event);\n });\n if (this.data.actions?.Keystroke) {\n element.addEventListener(\"beforeinput\", event => {\n elementData.lastCommittedValue = null;\n const {\n data,\n target\n } = event;\n const {\n value,\n selectionStart,\n selectionEnd\n } = target;\n let selStart = selectionStart,\n selEnd = selectionEnd;\n switch (event.inputType) {\n case \"deleteWordBackward\":\n {\n const match = value.substring(0, selectionStart).match(/\\w*[^\\w]*$/);\n if (match) {\n selStart -= match[0].length;\n }\n break;\n }\n case \"deleteWordForward\":\n {\n const match = value.substring(selectionStart).match(/^[^\\w]*\\w*/);\n if (match) {\n selEnd += match[0].length;\n }\n break;\n }\n case \"deleteContentBackward\":\n if (selectionStart === selectionEnd) {\n selStart -= 1;\n }\n break;\n case \"deleteContentForward\":\n if (selectionStart === selectionEnd) {\n selEnd += 1;\n }\n break;\n }\n event.preventDefault();\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id,\n name: \"Keystroke\",\n value,\n change: data || \"\",\n willCommit: false,\n selStart,\n selEnd\n }\n });\n });\n }\n this._setEventListeners(element, elementData, [[\"focus\", \"Focus\"], [\"blur\", \"Blur\"], [\"mousedown\", \"Mouse Down\"], [\"mouseenter\", \"Mouse Enter\"], [\"mouseleave\", \"Mouse Exit\"], [\"mouseup\", \"Mouse Up\"]], event => event.target.value);\n }\n if (blurListener) {\n element.addEventListener(\"blur\", blurListener);\n }\n if (this.data.comb) {\n const fieldWidth = this.data.rect[2] - this.data.rect[0];\n const combWidth = fieldWidth / maxLen;\n element.classList.add(\"comb\");\n element.style.letterSpacing = `calc(${combWidth}px * var(--scale-factor) - 1ch)`;\n }\n } else {\n element = document.createElement(\"div\");\n element.textContent = this.data.fieldValue;\n element.style.verticalAlign = \"middle\";\n element.style.display = \"table-cell\";\n }\n this._setTextStyle(element);\n this._setBackgroundColor(element);\n this._setDefaultPropertiesFromJS(element);\n this.container.append(element);\n return this.container;\n }\n}\nclass SignatureWidgetAnnotationElement extends WidgetAnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: !!parameters.data.hasOwnCanvas\n });\n }\n}\nclass CheckboxWidgetAnnotationElement extends WidgetAnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: parameters.renderForms\n });\n }\n render() {\n const storage = this.annotationStorage;\n const data = this.data;\n const id = data.id;\n let value = storage.getValue(id, {\n value: data.exportValue === data.fieldValue\n }).value;\n if (typeof value === \"string\") {\n value = value !== \"Off\";\n storage.setValue(id, {\n value\n });\n }\n this.container.classList.add(\"buttonWidgetAnnotation\", \"checkBox\");\n const element = document.createElement(\"input\");\n GetElementsByNameSet.add(element);\n element.setAttribute(\"data-element-id\", id);\n element.disabled = data.readOnly;\n this._setRequired(element, this.data.required);\n element.type = \"checkbox\";\n element.name = data.fieldName;\n if (value) {\n element.setAttribute(\"checked\", true);\n }\n element.setAttribute(\"exportValue\", data.exportValue);\n element.tabIndex = DEFAULT_TAB_INDEX;\n element.addEventListener(\"change\", event => {\n const {\n name,\n checked\n } = event.target;\n for (const checkbox of this._getElementsByName(name, id)) {\n const curChecked = checked && checkbox.exportValue === data.exportValue;\n if (checkbox.domElement) {\n checkbox.domElement.checked = curChecked;\n }\n storage.setValue(checkbox.id, {\n value: curChecked\n });\n }\n storage.setValue(id, {\n value: checked\n });\n });\n element.addEventListener(\"resetform\", event => {\n const defaultValue = data.defaultFieldValue || \"Off\";\n event.target.checked = defaultValue === data.exportValue;\n });\n if (this.enableScripting && this.hasJSActions) {\n element.addEventListener(\"updatefromsandbox\", jsEvent => {\n const actions = {\n value(event) {\n event.target.checked = event.detail.value !== \"Off\";\n storage.setValue(id, {\n value: event.target.checked\n });\n }\n };\n this._dispatchEventFromSandbox(actions, jsEvent);\n });\n this._setEventListeners(element, null, [[\"change\", \"Validate\"], [\"change\", \"Action\"], [\"focus\", \"Focus\"], [\"blur\", \"Blur\"], [\"mousedown\", \"Mouse Down\"], [\"mouseenter\", \"Mouse Enter\"], [\"mouseleave\", \"Mouse Exit\"], [\"mouseup\", \"Mouse Up\"]], event => event.target.checked);\n }\n this._setBackgroundColor(element);\n this._setDefaultPropertiesFromJS(element);\n this.container.append(element);\n return this.container;\n }\n}\nclass RadioButtonWidgetAnnotationElement extends WidgetAnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: parameters.renderForms\n });\n }\n render() {\n this.container.classList.add(\"buttonWidgetAnnotation\", \"radioButton\");\n const storage = this.annotationStorage;\n const data = this.data;\n const id = data.id;\n let value = storage.getValue(id, {\n value: data.fieldValue === data.buttonValue\n }).value;\n if (typeof value === \"string\") {\n value = value !== data.buttonValue;\n storage.setValue(id, {\n value\n });\n }\n const element = document.createElement(\"input\");\n GetElementsByNameSet.add(element);\n element.setAttribute(\"data-element-id\", id);\n element.disabled = data.readOnly;\n this._setRequired(element, this.data.required);\n element.type = \"radio\";\n element.name = data.fieldName;\n if (value) {\n element.setAttribute(\"checked\", true);\n }\n element.tabIndex = DEFAULT_TAB_INDEX;\n element.addEventListener(\"change\", event => {\n const {\n name,\n checked\n } = event.target;\n for (const radio of this._getElementsByName(name, id)) {\n storage.setValue(radio.id, {\n value: false\n });\n }\n storage.setValue(id, {\n value: checked\n });\n });\n element.addEventListener(\"resetform\", event => {\n const defaultValue = data.defaultFieldValue;\n event.target.checked = defaultValue !== null && defaultValue !== undefined && defaultValue === data.buttonValue;\n });\n if (this.enableScripting && this.hasJSActions) {\n const pdfButtonValue = data.buttonValue;\n element.addEventListener(\"updatefromsandbox\", jsEvent => {\n const actions = {\n value: event => {\n const checked = pdfButtonValue === event.detail.value;\n for (const radio of this._getElementsByName(event.target.name)) {\n const curChecked = checked && radio.id === id;\n if (radio.domElement) {\n radio.domElement.checked = curChecked;\n }\n storage.setValue(radio.id, {\n value: curChecked\n });\n }\n }\n };\n this._dispatchEventFromSandbox(actions, jsEvent);\n });\n this._setEventListeners(element, null, [[\"change\", \"Validate\"], [\"change\", \"Action\"], [\"focus\", \"Focus\"], [\"blur\", \"Blur\"], [\"mousedown\", \"Mouse Down\"], [\"mouseenter\", \"Mouse Enter\"], [\"mouseleave\", \"Mouse Exit\"], [\"mouseup\", \"Mouse Up\"]], event => event.target.checked);\n }\n this._setBackgroundColor(element);\n this._setDefaultPropertiesFromJS(element);\n this.container.append(element);\n return this.container;\n }\n}\nclass PushButtonWidgetAnnotationElement extends LinkAnnotationElement {\n constructor(parameters) {\n super(parameters, {\n ignoreBorder: parameters.data.hasAppearance\n });\n }\n render() {\n const container = super.render();\n container.classList.add(\"buttonWidgetAnnotation\", \"pushButton\");\n if (this.data.alternativeText) {\n container.title = this.data.alternativeText;\n }\n const linkElement = container.lastChild;\n if (this.enableScripting && this.hasJSActions && linkElement) {\n this._setDefaultPropertiesFromJS(linkElement);\n linkElement.addEventListener(\"updatefromsandbox\", jsEvent => {\n this._dispatchEventFromSandbox({}, jsEvent);\n });\n }\n return container;\n }\n}\nclass ChoiceWidgetAnnotationElement extends WidgetAnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: parameters.renderForms\n });\n }\n render() {\n this.container.classList.add(\"choiceWidgetAnnotation\");\n const storage = this.annotationStorage;\n const id = this.data.id;\n const storedData = storage.getValue(id, {\n value: this.data.fieldValue\n });\n const selectElement = document.createElement(\"select\");\n GetElementsByNameSet.add(selectElement);\n selectElement.setAttribute(\"data-element-id\", id);\n selectElement.disabled = this.data.readOnly;\n this._setRequired(selectElement, this.data.required);\n selectElement.name = this.data.fieldName;\n selectElement.tabIndex = DEFAULT_TAB_INDEX;\n let addAnEmptyEntry = this.data.combo && this.data.options.length > 0;\n if (!this.data.combo) {\n selectElement.size = this.data.options.length;\n if (this.data.multiSelect) {\n selectElement.multiple = true;\n }\n }\n selectElement.addEventListener(\"resetform\", event => {\n const defaultValue = this.data.defaultFieldValue;\n for (const option of selectElement.options) {\n option.selected = option.value === defaultValue;\n }\n });\n for (const option of this.data.options) {\n const optionElement = document.createElement(\"option\");\n optionElement.textContent = option.displayValue;\n optionElement.value = option.exportValue;\n if (storedData.value.includes(option.exportValue)) {\n optionElement.setAttribute(\"selected\", true);\n addAnEmptyEntry = false;\n }\n selectElement.append(optionElement);\n }\n let removeEmptyEntry = null;\n if (addAnEmptyEntry) {\n const noneOptionElement = document.createElement(\"option\");\n noneOptionElement.value = \" \";\n noneOptionElement.setAttribute(\"hidden\", true);\n noneOptionElement.setAttribute(\"selected\", true);\n selectElement.prepend(noneOptionElement);\n removeEmptyEntry = () => {\n noneOptionElement.remove();\n selectElement.removeEventListener(\"input\", removeEmptyEntry);\n removeEmptyEntry = null;\n };\n selectElement.addEventListener(\"input\", removeEmptyEntry);\n }\n const getValue = isExport => {\n const name = isExport ? \"value\" : \"textContent\";\n const {\n options,\n multiple\n } = selectElement;\n if (!multiple) {\n return options.selectedIndex === -1 ? null : options[options.selectedIndex][name];\n }\n return Array.prototype.filter.call(options, option => option.selected).map(option => option[name]);\n };\n let selectedValues = getValue(false);\n const getItems = event => {\n const options = event.target.options;\n return Array.prototype.map.call(options, option => {\n return {\n displayValue: option.textContent,\n exportValue: option.value\n };\n });\n };\n if (this.enableScripting && this.hasJSActions) {\n selectElement.addEventListener(\"updatefromsandbox\", jsEvent => {\n const actions = {\n value(event) {\n removeEmptyEntry?.();\n const value = event.detail.value;\n const values = new Set(Array.isArray(value) ? value : [value]);\n for (const option of selectElement.options) {\n option.selected = values.has(option.value);\n }\n storage.setValue(id, {\n value: getValue(true)\n });\n selectedValues = getValue(false);\n },\n multipleSelection(event) {\n selectElement.multiple = true;\n },\n remove(event) {\n const options = selectElement.options;\n const index = event.detail.remove;\n options[index].selected = false;\n selectElement.remove(index);\n if (options.length > 0) {\n const i = Array.prototype.findIndex.call(options, option => option.selected);\n if (i === -1) {\n options[0].selected = true;\n }\n }\n storage.setValue(id, {\n value: getValue(true),\n items: getItems(event)\n });\n selectedValues = getValue(false);\n },\n clear(event) {\n while (selectElement.length !== 0) {\n selectElement.remove(0);\n }\n storage.setValue(id, {\n value: null,\n items: []\n });\n selectedValues = getValue(false);\n },\n insert(event) {\n const {\n index,\n displayValue,\n exportValue\n } = event.detail.insert;\n const selectChild = selectElement.children[index];\n const optionElement = document.createElement(\"option\");\n optionElement.textContent = displayValue;\n optionElement.value = exportValue;\n if (selectChild) {\n selectChild.before(optionElement);\n } else {\n selectElement.append(optionElement);\n }\n storage.setValue(id, {\n value: getValue(true),\n items: getItems(event)\n });\n selectedValues = getValue(false);\n },\n items(event) {\n const {\n items\n } = event.detail;\n while (selectElement.length !== 0) {\n selectElement.remove(0);\n }\n for (const item of items) {\n const {\n displayValue,\n exportValue\n } = item;\n const optionElement = document.createElement(\"option\");\n optionElement.textContent = displayValue;\n optionElement.value = exportValue;\n selectElement.append(optionElement);\n }\n if (selectElement.options.length > 0) {\n selectElement.options[0].selected = true;\n }\n storage.setValue(id, {\n value: getValue(true),\n items: getItems(event)\n });\n selectedValues = getValue(false);\n },\n indices(event) {\n const indices = new Set(event.detail.indices);\n for (const option of event.target.options) {\n option.selected = indices.has(option.index);\n }\n storage.setValue(id, {\n value: getValue(true)\n });\n selectedValues = getValue(false);\n },\n editable(event) {\n event.target.disabled = !event.detail.editable;\n }\n };\n this._dispatchEventFromSandbox(actions, jsEvent);\n });\n selectElement.addEventListener(\"input\", event => {\n const exportValue = getValue(true);\n storage.setValue(id, {\n value: exportValue\n });\n event.preventDefault();\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id,\n name: \"Keystroke\",\n value: selectedValues,\n changeEx: exportValue,\n willCommit: false,\n commitKey: 1,\n keyDown: false\n }\n });\n });\n this._setEventListeners(selectElement, null, [[\"focus\", \"Focus\"], [\"blur\", \"Blur\"], [\"mousedown\", \"Mouse Down\"], [\"mouseenter\", \"Mouse Enter\"], [\"mouseleave\", \"Mouse Exit\"], [\"mouseup\", \"Mouse Up\"], [\"input\", \"Action\"], [\"input\", \"Validate\"]], event => event.target.value);\n } else {\n selectElement.addEventListener(\"input\", function (event) {\n storage.setValue(id, {\n value: getValue(true)\n });\n });\n }\n if (this.data.combo) {\n this._setTextStyle(selectElement);\n } else {}\n this._setBackgroundColor(selectElement);\n this._setDefaultPropertiesFromJS(selectElement);\n this.container.append(selectElement);\n return this.container;\n }\n}\nclass PopupAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n const {\n data,\n elements\n } = parameters;\n super(parameters, {\n isRenderable: AnnotationElement._hasPopupData(data)\n });\n this.elements = elements;\n }\n render() {\n this.container.classList.add(\"popupAnnotation\");\n const popup = new PopupElement({\n container: this.container,\n color: this.data.color,\n titleObj: this.data.titleObj,\n modificationDate: this.data.modificationDate,\n contentsObj: this.data.contentsObj,\n richText: this.data.richText,\n rect: this.data.rect,\n parentRect: this.data.parentRect || null,\n parent: this.parent,\n elements: this.elements,\n open: this.data.open\n });\n const elementIds = [];\n for (const element of this.elements) {\n element.popup = popup;\n elementIds.push(element.data.id);\n element.addHighlightArea();\n }\n this.container.setAttribute(\"aria-controls\", elementIds.map(id => `${_util.AnnotationPrefix}${id}`).join(\",\"));\n return this.container;\n }\n}\nclass PopupElement {\n #dateTimePromise = null;\n #boundKeyDown = this.#keyDown.bind(this);\n #boundHide = this.#hide.bind(this);\n #boundShow = this.#show.bind(this);\n #boundToggle = this.#toggle.bind(this);\n #color = null;\n #container = null;\n #contentsObj = null;\n #elements = null;\n #parent = null;\n #parentRect = null;\n #pinned = false;\n #popup = null;\n #rect = null;\n #richText = null;\n #titleObj = null;\n #wasVisible = false;\n constructor({\n container,\n color,\n elements,\n titleObj,\n modificationDate,\n contentsObj,\n richText,\n parent,\n rect,\n parentRect,\n open\n }) {\n this.#container = container;\n this.#titleObj = titleObj;\n this.#contentsObj = contentsObj;\n this.#richText = richText;\n this.#parent = parent;\n this.#color = color;\n this.#rect = rect;\n this.#parentRect = parentRect;\n this.#elements = elements;\n const dateObject = _display_utils.PDFDateString.toDateObject(modificationDate);\n if (dateObject) {\n this.#dateTimePromise = parent.l10n.get(\"annotation_date_string\", {\n date: dateObject.toLocaleDateString(),\n time: dateObject.toLocaleTimeString()\n });\n }\n this.trigger = elements.flatMap(e => e.getElementsToTriggerPopup());\n for (const element of this.trigger) {\n element.addEventListener(\"click\", this.#boundToggle);\n element.addEventListener(\"mouseenter\", this.#boundShow);\n element.addEventListener(\"mouseleave\", this.#boundHide);\n element.classList.add(\"popupTriggerArea\");\n }\n for (const element of elements) {\n element.container?.addEventListener(\"keydown\", this.#boundKeyDown);\n }\n this.#container.hidden = true;\n if (open) {\n this.#toggle();\n }\n }\n render() {\n if (this.#popup) {\n return;\n }\n const {\n page: {\n view\n },\n viewport: {\n rawDims: {\n pageWidth,\n pageHeight,\n pageX,\n pageY\n }\n }\n } = this.#parent;\n const popup = this.#popup = document.createElement(\"div\");\n popup.className = \"popup\";\n if (this.#color) {\n const baseColor = popup.style.outlineColor = _util.Util.makeHexColor(...this.#color);\n if (CSS.supports(\"background-color\", \"color-mix(in srgb, red 30%, white)\")) {\n popup.style.backgroundColor = `color-mix(in srgb, ${baseColor} 30%, white)`;\n } else {\n const BACKGROUND_ENLIGHT = 0.7;\n popup.style.backgroundColor = _util.Util.makeHexColor(...this.#color.map(c => Math.floor(BACKGROUND_ENLIGHT * (255 - c) + c)));\n }\n }\n const header = document.createElement(\"span\");\n header.className = \"header\";\n const title = document.createElement(\"h1\");\n header.append(title);\n ({\n dir: title.dir,\n str: title.textContent\n } = this.#titleObj);\n popup.append(header);\n if (this.#dateTimePromise) {\n const modificationDate = document.createElement(\"span\");\n modificationDate.classList.add(\"popupDate\");\n this.#dateTimePromise.then(localized => {\n modificationDate.textContent = localized;\n });\n header.append(modificationDate);\n }\n const contentsObj = this.#contentsObj;\n const richText = this.#richText;\n if (richText?.str && (!contentsObj?.str || contentsObj.str === richText.str)) {\n _xfa_layer.XfaLayer.render({\n xfaHtml: richText.html,\n intent: \"richText\",\n div: popup\n });\n popup.lastChild.classList.add(\"richText\", \"popupContent\");\n } else {\n const contents = this._formatContents(contentsObj);\n popup.append(contents);\n }\n let useParentRect = !!this.#parentRect;\n let rect = useParentRect ? this.#parentRect : this.#rect;\n for (const element of this.#elements) {\n if (!rect || _util.Util.intersect(element.data.rect, rect) !== null) {\n rect = element.data.rect;\n useParentRect = true;\n break;\n }\n }\n const normalizedRect = _util.Util.normalizeRect([rect[0], view[3] - rect[1] + view[1], rect[2], view[3] - rect[3] + view[1]]);\n const HORIZONTAL_SPACE_AFTER_ANNOTATION = 5;\n const parentWidth = useParentRect ? rect[2] - rect[0] + HORIZONTAL_SPACE_AFTER_ANNOTATION : 0;\n const popupLeft = normalizedRect[0] + parentWidth;\n const popupTop = normalizedRect[1];\n const {\n style\n } = this.#container;\n style.left = `${100 * (popupLeft - pageX) / pageWidth}%`;\n style.top = `${100 * (popupTop - pageY) / pageHeight}%`;\n this.#container.append(popup);\n }\n _formatContents({\n str,\n dir\n }) {\n const p = document.createElement(\"p\");\n p.classList.add(\"popupContent\");\n p.dir = dir;\n const lines = str.split(/(?:\\r\\n?|\\n)/);\n for (let i = 0, ii = lines.length; i < ii; ++i) {\n const line = lines[i];\n p.append(document.createTextNode(line));\n if (i < ii - 1) {\n p.append(document.createElement(\"br\"));\n }\n }\n return p;\n }\n #keyDown(event) {\n if (event.altKey || event.shiftKey || event.ctrlKey || event.metaKey) {\n return;\n }\n if (event.key === \"Enter\" || event.key === \"Escape\" && this.#pinned) {\n this.#toggle();\n }\n }\n #toggle() {\n this.#pinned = !this.#pinned;\n if (this.#pinned) {\n this.#show();\n this.#container.addEventListener(\"click\", this.#boundToggle);\n this.#container.addEventListener(\"keydown\", this.#boundKeyDown);\n } else {\n this.#hide();\n this.#container.removeEventListener(\"click\", this.#boundToggle);\n this.#container.removeEventListener(\"keydown\", this.#boundKeyDown);\n }\n }\n #show() {\n if (!this.#popup) {\n this.render();\n }\n if (!this.isVisible) {\n this.#container.hidden = false;\n this.#container.style.zIndex = parseInt(this.#container.style.zIndex) + 1000;\n } else if (this.#pinned) {\n this.#container.classList.add(\"focused\");\n }\n }\n #hide() {\n this.#container.classList.remove(\"focused\");\n if (this.#pinned || !this.isVisible) {\n return;\n }\n this.#container.hidden = true;\n this.#container.style.zIndex = parseInt(this.#container.style.zIndex) - 1000;\n }\n forceHide() {\n this.#wasVisible = this.isVisible;\n if (!this.#wasVisible) {\n return;\n }\n this.#container.hidden = true;\n }\n maybeShow() {\n if (!this.#wasVisible) {\n return;\n }\n this.#wasVisible = false;\n this.#container.hidden = false;\n }\n get isVisible() {\n return this.#container.hidden === false;\n }\n}\nclass FreeTextAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n this.textContent = parameters.data.textContent;\n this.textPosition = parameters.data.textPosition;\n this.annotationEditorType = _util.AnnotationEditorType.FREETEXT;\n }\n render() {\n this.container.classList.add(\"freeTextAnnotation\");\n if (this.textContent) {\n const content = document.createElement(\"div\");\n content.classList.add(\"annotationTextContent\");\n content.setAttribute(\"role\", \"comment\");\n for (const line of this.textContent) {\n const lineSpan = document.createElement(\"span\");\n lineSpan.textContent = line;\n content.append(lineSpan);\n }\n this.container.append(content);\n }\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this._editOnDoubleClick();\n return this.container;\n }\n}\nexports.FreeTextAnnotationElement = FreeTextAnnotationElement;\nclass LineAnnotationElement extends AnnotationElement {\n #line = null;\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n }\n render() {\n this.container.classList.add(\"lineAnnotation\");\n const data = this.data;\n const {\n width,\n height\n } = getRectDims(data.rect);\n const svg = this.svgFactory.create(width, height, true);\n const line = this.#line = this.svgFactory.createElement(\"svg:line\");\n line.setAttribute(\"x1\", data.rect[2] - data.lineCoordinates[0]);\n line.setAttribute(\"y1\", data.rect[3] - data.lineCoordinates[1]);\n line.setAttribute(\"x2\", data.rect[2] - data.lineCoordinates[2]);\n line.setAttribute(\"y2\", data.rect[3] - data.lineCoordinates[3]);\n line.setAttribute(\"stroke-width\", data.borderStyle.width || 1);\n line.setAttribute(\"stroke\", \"transparent\");\n line.setAttribute(\"fill\", \"transparent\");\n svg.append(line);\n this.container.append(svg);\n if (!data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n getElementsToTriggerPopup() {\n return this.#line;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n}\nclass SquareAnnotationElement extends AnnotationElement {\n #square = null;\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n }\n render() {\n this.container.classList.add(\"squareAnnotation\");\n const data = this.data;\n const {\n width,\n height\n } = getRectDims(data.rect);\n const svg = this.svgFactory.create(width, height, true);\n const borderWidth = data.borderStyle.width;\n const square = this.#square = this.svgFactory.createElement(\"svg:rect\");\n square.setAttribute(\"x\", borderWidth / 2);\n square.setAttribute(\"y\", borderWidth / 2);\n square.setAttribute(\"width\", width - borderWidth);\n square.setAttribute(\"height\", height - borderWidth);\n square.setAttribute(\"stroke-width\", borderWidth || 1);\n square.setAttribute(\"stroke\", \"transparent\");\n square.setAttribute(\"fill\", \"transparent\");\n svg.append(square);\n this.container.append(svg);\n if (!data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n getElementsToTriggerPopup() {\n return this.#square;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n}\nclass CircleAnnotationElement extends AnnotationElement {\n #circle = null;\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n }\n render() {\n this.container.classList.add(\"circleAnnotation\");\n const data = this.data;\n const {\n width,\n height\n } = getRectDims(data.rect);\n const svg = this.svgFactory.create(width, height, true);\n const borderWidth = data.borderStyle.width;\n const circle = this.#circle = this.svgFactory.createElement(\"svg:ellipse\");\n circle.setAttribute(\"cx\", width / 2);\n circle.setAttribute(\"cy\", height / 2);\n circle.setAttribute(\"rx\", width / 2 - borderWidth / 2);\n circle.setAttribute(\"ry\", height / 2 - borderWidth / 2);\n circle.setAttribute(\"stroke-width\", borderWidth || 1);\n circle.setAttribute(\"stroke\", \"transparent\");\n circle.setAttribute(\"fill\", \"transparent\");\n svg.append(circle);\n this.container.append(svg);\n if (!data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n getElementsToTriggerPopup() {\n return this.#circle;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n}\nclass PolylineAnnotationElement extends AnnotationElement {\n #polyline = null;\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n this.containerClassName = \"polylineAnnotation\";\n this.svgElementName = \"svg:polyline\";\n }\n render() {\n this.container.classList.add(this.containerClassName);\n const data = this.data;\n const {\n width,\n height\n } = getRectDims(data.rect);\n const svg = this.svgFactory.create(width, height, true);\n let points = [];\n for (const coordinate of data.vertices) {\n const x = coordinate.x - data.rect[0];\n const y = data.rect[3] - coordinate.y;\n points.push(x + \",\" + y);\n }\n points = points.join(\" \");\n const polyline = this.#polyline = this.svgFactory.createElement(this.svgElementName);\n polyline.setAttribute(\"points\", points);\n polyline.setAttribute(\"stroke-width\", data.borderStyle.width || 1);\n polyline.setAttribute(\"stroke\", \"transparent\");\n polyline.setAttribute(\"fill\", \"transparent\");\n svg.append(polyline);\n this.container.append(svg);\n if (!data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n getElementsToTriggerPopup() {\n return this.#polyline;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n}\nclass PolygonAnnotationElement extends PolylineAnnotationElement {\n constructor(parameters) {\n super(parameters);\n this.containerClassName = \"polygonAnnotation\";\n this.svgElementName = \"svg:polygon\";\n }\n}\nclass CaretAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n }\n render() {\n this.container.classList.add(\"caretAnnotation\");\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n}\nclass InkAnnotationElement extends AnnotationElement {\n #polylines = [];\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n this.containerClassName = \"inkAnnotation\";\n this.svgElementName = \"svg:polyline\";\n this.annotationEditorType = _util.AnnotationEditorType.INK;\n }\n render() {\n this.container.classList.add(this.containerClassName);\n const data = this.data;\n const {\n width,\n height\n } = getRectDims(data.rect);\n const svg = this.svgFactory.create(width, height, true);\n for (const inkList of data.inkLists) {\n let points = [];\n for (const coordinate of inkList) {\n const x = coordinate.x - data.rect[0];\n const y = data.rect[3] - coordinate.y;\n points.push(`${x},${y}`);\n }\n points = points.join(\" \");\n const polyline = this.svgFactory.createElement(this.svgElementName);\n this.#polylines.push(polyline);\n polyline.setAttribute(\"points\", points);\n polyline.setAttribute(\"stroke-width\", data.borderStyle.width || 1);\n polyline.setAttribute(\"stroke\", \"transparent\");\n polyline.setAttribute(\"fill\", \"transparent\");\n if (!data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n svg.append(polyline);\n }\n this.container.append(svg);\n return this.container;\n }\n getElementsToTriggerPopup() {\n return this.#polylines;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n}\nexports.InkAnnotationElement = InkAnnotationElement;\nclass HighlightAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true,\n createQuadrilaterals: true\n });\n }\n render() {\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this.container.classList.add(\"highlightAnnotation\");\n return this.container;\n }\n}\nclass UnderlineAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true,\n createQuadrilaterals: true\n });\n }\n render() {\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this.container.classList.add(\"underlineAnnotation\");\n return this.container;\n }\n}\nclass SquigglyAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true,\n createQuadrilaterals: true\n });\n }\n render() {\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this.container.classList.add(\"squigglyAnnotation\");\n return this.container;\n }\n}\nclass StrikeOutAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true,\n createQuadrilaterals: true\n });\n }\n render() {\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this.container.classList.add(\"strikeoutAnnotation\");\n return this.container;\n }\n}\nclass StampAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n }\n render() {\n this.container.classList.add(\"stampAnnotation\");\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n}\nexports.StampAnnotationElement = StampAnnotationElement;\nclass FileAttachmentAnnotationElement extends AnnotationElement {\n #trigger = null;\n constructor(parameters) {\n super(parameters, {\n isRenderable: true\n });\n const {\n filename,\n content\n } = this.data.file;\n this.filename = (0, _display_utils.getFilenameFromUrl)(filename, true);\n this.content = content;\n this.linkService.eventBus?.dispatch(\"fileattachmentannotation\", {\n source: this,\n filename,\n content\n });\n }\n render() {\n this.container.classList.add(\"fileAttachmentAnnotation\");\n const {\n container,\n data\n } = this;\n let trigger;\n if (data.hasAppearance || data.fillAlpha === 0) {\n trigger = document.createElement(\"div\");\n } else {\n trigger = document.createElement(\"img\");\n trigger.src = `${this.imageResourcesPath}annotation-${/paperclip/i.test(data.name) ? \"paperclip\" : \"pushpin\"}.svg`;\n if (data.fillAlpha && data.fillAlpha < 1) {\n trigger.style = `filter: opacity(${Math.round(data.fillAlpha * 100)}%);`;\n }\n }\n trigger.addEventListener(\"dblclick\", this.#download.bind(this));\n this.#trigger = trigger;\n const {\n isMac\n } = _util.FeatureTest.platform;\n container.addEventListener(\"keydown\", evt => {\n if (evt.key === \"Enter\" && (isMac ? evt.metaKey : evt.ctrlKey)) {\n this.#download();\n }\n });\n if (!data.popupRef && this.hasPopupData) {\n this._createPopup();\n } else {\n trigger.classList.add(\"popupTriggerArea\");\n }\n container.append(trigger);\n return container;\n }\n getElementsToTriggerPopup() {\n return this.#trigger;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n #download() {\n this.downloadManager?.openOrDownloadData(this.container, this.content, this.filename);\n }\n}\nclass AnnotationLayer {\n #accessibilityManager = null;\n #annotationCanvasMap = null;\n #editableAnnotations = new Map();\n constructor({\n div,\n accessibilityManager,\n annotationCanvasMap,\n l10n,\n page,\n viewport\n }) {\n this.div = div;\n this.#accessibilityManager = accessibilityManager;\n this.#annotationCanvasMap = annotationCanvasMap;\n this.l10n = l10n;\n this.page = page;\n this.viewport = viewport;\n this.zIndex = 0;\n this.l10n ||= _displayL10n_utils.NullL10n;\n }\n #appendElement(element, id) {\n const contentElement = element.firstChild || element;\n contentElement.id = `${_util.AnnotationPrefix}${id}`;\n this.div.append(element);\n this.#accessibilityManager?.moveElementInDOM(this.div, element, contentElement, false);\n }\n async render(params) {\n const {\n annotations\n } = params;\n const layer = this.div;\n (0, _display_utils.setLayerDimensions)(layer, this.viewport);\n const popupToElements = new Map();\n const elementParams = {\n data: null,\n layer,\n linkService: params.linkService,\n downloadManager: params.downloadManager,\n imageResourcesPath: params.imageResourcesPath || \"\",\n renderForms: params.renderForms !== false,\n svgFactory: new _display_utils.DOMSVGFactory(),\n annotationStorage: params.annotationStorage || new _annotation_storage.AnnotationStorage(),\n enableScripting: params.enableScripting === true,\n hasJSActions: params.hasJSActions,\n fieldObjects: params.fieldObjects,\n parent: this,\n elements: null\n };\n for (const data of annotations) {\n if (data.noHTML) {\n continue;\n }\n const isPopupAnnotation = data.annotationType === _util.AnnotationType.POPUP;\n if (!isPopupAnnotation) {\n const {\n width,\n height\n } = getRectDims(data.rect);\n if (width <= 0 || height <= 0) {\n continue;\n }\n } else {\n const elements = popupToElements.get(data.id);\n if (!elements) {\n continue;\n }\n elementParams.elements = elements;\n }\n elementParams.data = data;\n const element = AnnotationElementFactory.create(elementParams);\n if (!element.isRenderable) {\n continue;\n }\n if (!isPopupAnnotation && data.popupRef) {\n const elements = popupToElements.get(data.popupRef);\n if (!elements) {\n popupToElements.set(data.popupRef, [element]);\n } else {\n elements.push(element);\n }\n }\n if (element.annotationEditorType > 0) {\n this.#editableAnnotations.set(element.data.id, element);\n }\n const rendered = element.render();\n if (data.hidden) {\n rendered.style.visibility = \"hidden\";\n }\n this.#appendElement(rendered, data.id);\n }\n this.#setAnnotationCanvasMap();\n await this.l10n.translate(layer);\n }\n update({\n viewport\n }) {\n const layer = this.div;\n this.viewport = viewport;\n (0, _display_utils.setLayerDimensions)(layer, {\n rotation: viewport.rotation\n });\n this.#setAnnotationCanvasMap();\n layer.hidden = false;\n }\n #setAnnotationCanvasMap() {\n if (!this.#annotationCanvasMap) {\n return;\n }\n const layer = this.div;\n for (const [id, canvas] of this.#annotationCanvasMap) {\n const element = layer.querySelector(`[data-annotation-id=\"${id}\"]`);\n if (!element) {\n continue;\n }\n const {\n firstChild\n } = element;\n if (!firstChild) {\n element.append(canvas);\n } else if (firstChild.nodeName === \"CANVAS\") {\n firstChild.replaceWith(canvas);\n } else {\n firstChild.before(canvas);\n }\n }\n this.#annotationCanvasMap.clear();\n }\n getEditableAnnotations() {\n return Array.from(this.#editableAnnotations.values());\n }\n getEditableAnnotation(id) {\n return this.#editableAnnotations.get(id);\n }\n}\nexports.AnnotationLayer = AnnotationLayer;\n\n/***/ }),\n/* 30 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.ColorConverters = void 0;\nfunction makeColorComp(n) {\n return Math.floor(Math.max(0, Math.min(1, n)) * 255).toString(16).padStart(2, \"0\");\n}\nfunction scaleAndClamp(x) {\n return Math.max(0, Math.min(255, 255 * x));\n}\nclass ColorConverters {\n static CMYK_G([c, y, m, k]) {\n return [\"G\", 1 - Math.min(1, 0.3 * c + 0.59 * m + 0.11 * y + k)];\n }\n static G_CMYK([g]) {\n return [\"CMYK\", 0, 0, 0, 1 - g];\n }\n static G_RGB([g]) {\n return [\"RGB\", g, g, g];\n }\n static G_rgb([g]) {\n g = scaleAndClamp(g);\n return [g, g, g];\n }\n static G_HTML([g]) {\n const G = makeColorComp(g);\n return `#${G}${G}${G}`;\n }\n static RGB_G([r, g, b]) {\n return [\"G\", 0.3 * r + 0.59 * g + 0.11 * b];\n }\n static RGB_rgb(color) {\n return color.map(scaleAndClamp);\n }\n static RGB_HTML(color) {\n return `#${color.map(makeColorComp).join(\"\")}`;\n }\n static T_HTML() {\n return \"#00000000\";\n }\n static T_rgb() {\n return [null];\n }\n static CMYK_RGB([c, y, m, k]) {\n return [\"RGB\", 1 - Math.min(1, c + k), 1 - Math.min(1, m + k), 1 - Math.min(1, y + k)];\n }\n static CMYK_rgb([c, y, m, k]) {\n return [scaleAndClamp(1 - Math.min(1, c + k)), scaleAndClamp(1 - Math.min(1, m + k)), scaleAndClamp(1 - Math.min(1, y + k))];\n }\n static CMYK_HTML(components) {\n const rgb = this.CMYK_RGB(components).slice(1);\n return this.RGB_HTML(rgb);\n }\n static RGB_CMYK([r, g, b]) {\n const c = 1 - r;\n const m = 1 - g;\n const y = 1 - b;\n const k = Math.min(c, m, y);\n return [\"CMYK\", c, m, y, k];\n }\n}\nexports.ColorConverters = ColorConverters;\n\n/***/ }),\n/* 31 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.NullL10n = void 0;\nexports.getL10nFallback = getL10nFallback;\nconst DEFAULT_L10N_STRINGS = {\n of_pages: \"of {{pagesCount}}\",\n page_of_pages: \"({{pageNumber}} of {{pagesCount}})\",\n document_properties_kb: \"{{size_kb}} KB ({{size_b}} bytes)\",\n document_properties_mb: \"{{size_mb}} MB ({{size_b}} bytes)\",\n document_properties_date_string: \"{{date}}, {{time}}\",\n document_properties_page_size_unit_inches: \"in\",\n document_properties_page_size_unit_millimeters: \"mm\",\n document_properties_page_size_orientation_portrait: \"portrait\",\n document_properties_page_size_orientation_landscape: \"landscape\",\n document_properties_page_size_name_a3: \"A3\",\n document_properties_page_size_name_a4: \"A4\",\n document_properties_page_size_name_letter: \"Letter\",\n document_properties_page_size_name_legal: \"Legal\",\n document_properties_page_size_dimension_string: \"{{width}} × {{height}} {{unit}} ({{orientation}})\",\n document_properties_page_size_dimension_name_string: \"{{width}} × {{height}} {{unit}} ({{name}}, {{orientation}})\",\n document_properties_linearized_yes: \"Yes\",\n document_properties_linearized_no: \"No\",\n additional_layers: \"Additional Layers\",\n page_landmark: \"Page {{page}}\",\n thumb_page_title: \"Page {{page}}\",\n thumb_page_canvas: \"Thumbnail of Page {{page}}\",\n find_reached_top: \"Reached top of document, continued from bottom\",\n find_reached_bottom: \"Reached end of document, continued from top\",\n \"find_match_count[one]\": \"{{current}} of {{total}} match\",\n \"find_match_count[other]\": \"{{current}} of {{total}} matches\",\n \"find_match_count_limit[one]\": \"More than {{limit}} match\",\n \"find_match_count_limit[other]\": \"More than {{limit}} matches\",\n find_not_found: \"Phrase not found\",\n page_scale_width: \"Page Width\",\n page_scale_fit: \"Page Fit\",\n page_scale_auto: \"Automatic Zoom\",\n page_scale_actual: \"Actual Size\",\n page_scale_percent: \"{{scale}}%\",\n loading_error: \"An error occurred while loading the PDF.\",\n invalid_file_error: \"Invalid or corrupted PDF file.\",\n missing_file_error: \"Missing PDF file.\",\n unexpected_response_error: \"Unexpected server response.\",\n rendering_error: \"An error occurred while rendering the page.\",\n annotation_date_string: \"{{date}}, {{time}}\",\n printing_not_supported: \"Warning: Printing is not fully supported by this browser.\",\n printing_not_ready: \"Warning: The PDF is not fully loaded for printing.\",\n web_fonts_disabled: \"Web fonts are disabled: unable to use embedded PDF fonts.\",\n free_text2_default_content: \"Start typing…\",\n editor_free_text2_aria_label: \"Text Editor\",\n editor_ink2_aria_label: \"Draw Editor\",\n editor_ink_canvas_aria_label: \"User-created image\",\n editor_alt_text_button_label: \"Alt text\",\n editor_alt_text_edit_button_label: \"Edit alt text\",\n editor_alt_text_decorative_tooltip: \"Marked as decorative\"\n};\n{\n DEFAULT_L10N_STRINGS.print_progress_percent = \"{{progress}}%\";\n}\nfunction getL10nFallback(key, args) {\n switch (key) {\n case \"find_match_count\":\n key = `find_match_count[${args.total === 1 ? \"one\" : \"other\"}]`;\n break;\n case \"find_match_count_limit\":\n key = `find_match_count_limit[${args.limit === 1 ? \"one\" : \"other\"}]`;\n break;\n }\n return DEFAULT_L10N_STRINGS[key] || \"\";\n}\nfunction formatL10nValue(text, args) {\n if (!args) {\n return text;\n }\n return text.replaceAll(/\\{\\{\\s*(\\w+)\\s*\\}\\}/g, (all, name) => {\n return name in args ? args[name] : \"{{\" + name + \"}}\";\n });\n}\nconst NullL10n = {\n async getLanguage() {\n return \"en-us\";\n },\n async getDirection() {\n return \"ltr\";\n },\n async get(key, args = null, fallback = getL10nFallback(key, args)) {\n return formatL10nValue(fallback, args);\n },\n async translate(element) {}\n};\nexports.NullL10n = NullL10n;\n\n/***/ }),\n/* 32 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.XfaLayer = void 0;\nvar _xfa_text = __w_pdfjs_require__(25);\nclass XfaLayer {\n static setupStorage(html, id, element, storage, intent) {\n const storedData = storage.getValue(id, {\n value: null\n });\n switch (element.name) {\n case \"textarea\":\n if (storedData.value !== null) {\n html.textContent = storedData.value;\n }\n if (intent === \"print\") {\n break;\n }\n html.addEventListener(\"input\", event => {\n storage.setValue(id, {\n value: event.target.value\n });\n });\n break;\n case \"input\":\n if (element.attributes.type === \"radio\" || element.attributes.type === \"checkbox\") {\n if (storedData.value === element.attributes.xfaOn) {\n html.setAttribute(\"checked\", true);\n } else if (storedData.value === element.attributes.xfaOff) {\n html.removeAttribute(\"checked\");\n }\n if (intent === \"print\") {\n break;\n }\n html.addEventListener(\"change\", event => {\n storage.setValue(id, {\n value: event.target.checked ? event.target.getAttribute(\"xfaOn\") : event.target.getAttribute(\"xfaOff\")\n });\n });\n } else {\n if (storedData.value !== null) {\n html.setAttribute(\"value\", storedData.value);\n }\n if (intent === \"print\") {\n break;\n }\n html.addEventListener(\"input\", event => {\n storage.setValue(id, {\n value: event.target.value\n });\n });\n }\n break;\n case \"select\":\n if (storedData.value !== null) {\n html.setAttribute(\"value\", storedData.value);\n for (const option of element.children) {\n if (option.attributes.value === storedData.value) {\n option.attributes.selected = true;\n } else if (option.attributes.hasOwnProperty(\"selected\")) {\n delete option.attributes.selected;\n }\n }\n }\n html.addEventListener(\"input\", event => {\n const options = event.target.options;\n const value = options.selectedIndex === -1 ? \"\" : options[options.selectedIndex].value;\n storage.setValue(id, {\n value\n });\n });\n break;\n }\n }\n static setAttributes({\n html,\n element,\n storage = null,\n intent,\n linkService\n }) {\n const {\n attributes\n } = element;\n const isHTMLAnchorElement = html instanceof HTMLAnchorElement;\n if (attributes.type === \"radio\") {\n attributes.name = `${attributes.name}-${intent}`;\n }\n for (const [key, value] of Object.entries(attributes)) {\n if (value === null || value === undefined) {\n continue;\n }\n switch (key) {\n case \"class\":\n if (value.length) {\n html.setAttribute(key, value.join(\" \"));\n }\n break;\n case \"dataId\":\n break;\n case \"id\":\n html.setAttribute(\"data-element-id\", value);\n break;\n case \"style\":\n Object.assign(html.style, value);\n break;\n case \"textContent\":\n html.textContent = value;\n break;\n default:\n if (!isHTMLAnchorElement || key !== \"href\" && key !== \"newWindow\") {\n html.setAttribute(key, value);\n }\n }\n }\n if (isHTMLAnchorElement) {\n linkService.addLinkAttributes(html, attributes.href, attributes.newWindow);\n }\n if (storage && attributes.dataId) {\n this.setupStorage(html, attributes.dataId, element, storage);\n }\n }\n static render(parameters) {\n const storage = parameters.annotationStorage;\n const linkService = parameters.linkService;\n const root = parameters.xfaHtml;\n const intent = parameters.intent || \"display\";\n const rootHtml = document.createElement(root.name);\n if (root.attributes) {\n this.setAttributes({\n html: rootHtml,\n element: root,\n intent,\n linkService\n });\n }\n const stack = [[root, -1, rootHtml]];\n const rootDiv = parameters.div;\n rootDiv.append(rootHtml);\n if (parameters.viewport) {\n const transform = `matrix(${parameters.viewport.transform.join(\",\")})`;\n rootDiv.style.transform = transform;\n }\n if (intent !== \"richText\") {\n rootDiv.setAttribute(\"class\", \"xfaLayer xfaFont\");\n }\n const textDivs = [];\n while (stack.length > 0) {\n const [parent, i, html] = stack.at(-1);\n if (i + 1 === parent.children.length) {\n stack.pop();\n continue;\n }\n const child = parent.children[++stack.at(-1)[1]];\n if (child === null) {\n continue;\n }\n const {\n name\n } = child;\n if (name === \"#text\") {\n const node = document.createTextNode(child.value);\n textDivs.push(node);\n html.append(node);\n continue;\n }\n const childHtml = child?.attributes?.xmlns ? document.createElementNS(child.attributes.xmlns, name) : document.createElement(name);\n html.append(childHtml);\n if (child.attributes) {\n this.setAttributes({\n html: childHtml,\n element: child,\n storage,\n intent,\n linkService\n });\n }\n if (child.children && child.children.length > 0) {\n stack.push([child, -1, childHtml]);\n } else if (child.value) {\n const node = document.createTextNode(child.value);\n if (_xfa_text.XfaText.shouldBuildText(name)) {\n textDivs.push(node);\n }\n childHtml.append(node);\n }\n }\n for (const el of rootDiv.querySelectorAll(\".xfaNonInteractive input, .xfaNonInteractive textarea\")) {\n el.setAttribute(\"readOnly\", true);\n }\n return {\n textDivs\n };\n }\n static update(parameters) {\n const transform = `matrix(${parameters.viewport.transform.join(\",\")})`;\n parameters.div.style.transform = transform;\n parameters.div.hidden = false;\n }\n}\nexports.XfaLayer = XfaLayer;\n\n/***/ }),\n/* 33 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.InkEditor = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _editor = __w_pdfjs_require__(4);\nvar _annotation_layer = __w_pdfjs_require__(29);\nvar _display_utils = __w_pdfjs_require__(6);\nvar _tools = __w_pdfjs_require__(5);\nclass InkEditor extends _editor.AnnotationEditor {\n #baseHeight = 0;\n #baseWidth = 0;\n #boundCanvasPointermove = this.canvasPointermove.bind(this);\n #boundCanvasPointerleave = this.canvasPointerleave.bind(this);\n #boundCanvasPointerup = this.canvasPointerup.bind(this);\n #boundCanvasPointerdown = this.canvasPointerdown.bind(this);\n #currentPath2D = new Path2D();\n #disableEditing = false;\n #hasSomethingToDraw = false;\n #isCanvasInitialized = false;\n #observer = null;\n #realWidth = 0;\n #realHeight = 0;\n #requestFrameCallback = null;\n static _defaultColor = null;\n static _defaultOpacity = 1;\n static _defaultThickness = 1;\n static _type = \"ink\";\n constructor(params) {\n super({\n ...params,\n name: \"inkEditor\"\n });\n this.color = params.color || null;\n this.thickness = params.thickness || null;\n this.opacity = params.opacity || null;\n this.paths = [];\n this.bezierPath2D = [];\n this.allRawPaths = [];\n this.currentPath = [];\n this.scaleFactor = 1;\n this.translationX = this.translationY = 0;\n this.x = 0;\n this.y = 0;\n this._willKeepAspectRatio = true;\n }\n static initialize(l10n) {\n _editor.AnnotationEditor.initialize(l10n, {\n strings: [\"editor_ink_canvas_aria_label\", \"editor_ink2_aria_label\"]\n });\n }\n static updateDefaultParams(type, value) {\n switch (type) {\n case _util.AnnotationEditorParamsType.INK_THICKNESS:\n InkEditor._defaultThickness = value;\n break;\n case _util.AnnotationEditorParamsType.INK_COLOR:\n InkEditor._defaultColor = value;\n break;\n case _util.AnnotationEditorParamsType.INK_OPACITY:\n InkEditor._defaultOpacity = value / 100;\n break;\n }\n }\n updateParams(type, value) {\n switch (type) {\n case _util.AnnotationEditorParamsType.INK_THICKNESS:\n this.#updateThickness(value);\n break;\n case _util.AnnotationEditorParamsType.INK_COLOR:\n this.#updateColor(value);\n break;\n case _util.AnnotationEditorParamsType.INK_OPACITY:\n this.#updateOpacity(value);\n break;\n }\n }\n static get defaultPropertiesToUpdate() {\n return [[_util.AnnotationEditorParamsType.INK_THICKNESS, InkEditor._defaultThickness], [_util.AnnotationEditorParamsType.INK_COLOR, InkEditor._defaultColor || _editor.AnnotationEditor._defaultLineColor], [_util.AnnotationEditorParamsType.INK_OPACITY, Math.round(InkEditor._defaultOpacity * 100)]];\n }\n get propertiesToUpdate() {\n return [[_util.AnnotationEditorParamsType.INK_THICKNESS, this.thickness || InkEditor._defaultThickness], [_util.AnnotationEditorParamsType.INK_COLOR, this.color || InkEditor._defaultColor || _editor.AnnotationEditor._defaultLineColor], [_util.AnnotationEditorParamsType.INK_OPACITY, Math.round(100 * (this.opacity ?? InkEditor._defaultOpacity))]];\n }\n #updateThickness(thickness) {\n const savedThickness = this.thickness;\n this.addCommands({\n cmd: () => {\n this.thickness = thickness;\n this.#fitToContent();\n },\n undo: () => {\n this.thickness = savedThickness;\n this.#fitToContent();\n },\n mustExec: true,\n type: _util.AnnotationEditorParamsType.INK_THICKNESS,\n overwriteIfSameType: true,\n keepUndo: true\n });\n }\n #updateColor(color) {\n const savedColor = this.color;\n this.addCommands({\n cmd: () => {\n this.color = color;\n this.#redraw();\n },\n undo: () => {\n this.color = savedColor;\n this.#redraw();\n },\n mustExec: true,\n type: _util.AnnotationEditorParamsType.INK_COLOR,\n overwriteIfSameType: true,\n keepUndo: true\n });\n }\n #updateOpacity(opacity) {\n opacity /= 100;\n const savedOpacity = this.opacity;\n this.addCommands({\n cmd: () => {\n this.opacity = opacity;\n this.#redraw();\n },\n undo: () => {\n this.opacity = savedOpacity;\n this.#redraw();\n },\n mustExec: true,\n type: _util.AnnotationEditorParamsType.INK_OPACITY,\n overwriteIfSameType: true,\n keepUndo: true\n });\n }\n rebuild() {\n if (!this.parent) {\n return;\n }\n super.rebuild();\n if (this.div === null) {\n return;\n }\n if (!this.canvas) {\n this.#createCanvas();\n this.#createObserver();\n }\n if (!this.isAttachedToDOM) {\n this.parent.add(this);\n this.#setCanvasDims();\n }\n this.#fitToContent();\n }\n remove() {\n if (this.canvas === null) {\n return;\n }\n if (!this.isEmpty()) {\n this.commit();\n }\n this.canvas.width = this.canvas.height = 0;\n this.canvas.remove();\n this.canvas = null;\n this.#observer.disconnect();\n this.#observer = null;\n super.remove();\n }\n setParent(parent) {\n if (!this.parent && parent) {\n this._uiManager.removeShouldRescale(this);\n } else if (this.parent && parent === null) {\n this._uiManager.addShouldRescale(this);\n }\n super.setParent(parent);\n }\n onScaleChanging() {\n const [parentWidth, parentHeight] = this.parentDimensions;\n const width = this.width * parentWidth;\n const height = this.height * parentHeight;\n this.setDimensions(width, height);\n }\n enableEditMode() {\n if (this.#disableEditing || this.canvas === null) {\n return;\n }\n super.enableEditMode();\n this._isDraggable = false;\n this.canvas.addEventListener(\"pointerdown\", this.#boundCanvasPointerdown);\n }\n disableEditMode() {\n if (!this.isInEditMode() || this.canvas === null) {\n return;\n }\n super.disableEditMode();\n this._isDraggable = !this.isEmpty();\n this.div.classList.remove(\"editing\");\n this.canvas.removeEventListener(\"pointerdown\", this.#boundCanvasPointerdown);\n }\n onceAdded() {\n this._isDraggable = !this.isEmpty();\n }\n isEmpty() {\n return this.paths.length === 0 || this.paths.length === 1 && this.paths[0].length === 0;\n }\n #getInitialBBox() {\n const {\n parentRotation,\n parentDimensions: [width, height]\n } = this;\n switch (parentRotation) {\n case 90:\n return [0, height, height, width];\n case 180:\n return [width, height, width, height];\n case 270:\n return [width, 0, height, width];\n default:\n return [0, 0, width, height];\n }\n }\n #setStroke() {\n const {\n ctx,\n color,\n opacity,\n thickness,\n parentScale,\n scaleFactor\n } = this;\n ctx.lineWidth = thickness * parentScale / scaleFactor;\n ctx.lineCap = \"round\";\n ctx.lineJoin = \"round\";\n ctx.miterLimit = 10;\n ctx.strokeStyle = `${color}${(0, _tools.opacityToHex)(opacity)}`;\n }\n #startDrawing(x, y) {\n this.canvas.addEventListener(\"contextmenu\", _display_utils.noContextMenu);\n this.canvas.addEventListener(\"pointerleave\", this.#boundCanvasPointerleave);\n this.canvas.addEventListener(\"pointermove\", this.#boundCanvasPointermove);\n this.canvas.addEventListener(\"pointerup\", this.#boundCanvasPointerup);\n this.canvas.removeEventListener(\"pointerdown\", this.#boundCanvasPointerdown);\n this.isEditing = true;\n if (!this.#isCanvasInitialized) {\n this.#isCanvasInitialized = true;\n this.#setCanvasDims();\n this.thickness ||= InkEditor._defaultThickness;\n this.color ||= InkEditor._defaultColor || _editor.AnnotationEditor._defaultLineColor;\n this.opacity ??= InkEditor._defaultOpacity;\n }\n this.currentPath.push([x, y]);\n this.#hasSomethingToDraw = false;\n this.#setStroke();\n this.#requestFrameCallback = () => {\n this.#drawPoints();\n if (this.#requestFrameCallback) {\n window.requestAnimationFrame(this.#requestFrameCallback);\n }\n };\n window.requestAnimationFrame(this.#requestFrameCallback);\n }\n #draw(x, y) {\n const [lastX, lastY] = this.currentPath.at(-1);\n if (this.currentPath.length > 1 && x === lastX && y === lastY) {\n return;\n }\n const currentPath = this.currentPath;\n let path2D = this.#currentPath2D;\n currentPath.push([x, y]);\n this.#hasSomethingToDraw = true;\n if (currentPath.length <= 2) {\n path2D.moveTo(...currentPath[0]);\n path2D.lineTo(x, y);\n return;\n }\n if (currentPath.length === 3) {\n this.#currentPath2D = path2D = new Path2D();\n path2D.moveTo(...currentPath[0]);\n }\n this.#makeBezierCurve(path2D, ...currentPath.at(-3), ...currentPath.at(-2), x, y);\n }\n #endPath() {\n if (this.currentPath.length === 0) {\n return;\n }\n const lastPoint = this.currentPath.at(-1);\n this.#currentPath2D.lineTo(...lastPoint);\n }\n #stopDrawing(x, y) {\n this.#requestFrameCallback = null;\n x = Math.min(Math.max(x, 0), this.canvas.width);\n y = Math.min(Math.max(y, 0), this.canvas.height);\n this.#draw(x, y);\n this.#endPath();\n let bezier;\n if (this.currentPath.length !== 1) {\n bezier = this.#generateBezierPoints();\n } else {\n const xy = [x, y];\n bezier = [[xy, xy.slice(), xy.slice(), xy]];\n }\n const path2D = this.#currentPath2D;\n const currentPath = this.currentPath;\n this.currentPath = [];\n this.#currentPath2D = new Path2D();\n const cmd = () => {\n this.allRawPaths.push(currentPath);\n this.paths.push(bezier);\n this.bezierPath2D.push(path2D);\n this.rebuild();\n };\n const undo = () => {\n this.allRawPaths.pop();\n this.paths.pop();\n this.bezierPath2D.pop();\n if (this.paths.length === 0) {\n this.remove();\n } else {\n if (!this.canvas) {\n this.#createCanvas();\n this.#createObserver();\n }\n this.#fitToContent();\n }\n };\n this.addCommands({\n cmd,\n undo,\n mustExec: true\n });\n }\n #drawPoints() {\n if (!this.#hasSomethingToDraw) {\n return;\n }\n this.#hasSomethingToDraw = false;\n const thickness = Math.ceil(this.thickness * this.parentScale);\n const lastPoints = this.currentPath.slice(-3);\n const x = lastPoints.map(xy => xy[0]);\n const y = lastPoints.map(xy => xy[1]);\n const xMin = Math.min(...x) - thickness;\n const xMax = Math.max(...x) + thickness;\n const yMin = Math.min(...y) - thickness;\n const yMax = Math.max(...y) + thickness;\n const {\n ctx\n } = this;\n ctx.save();\n ctx.clearRect(0, 0, this.canvas.width, this.canvas.height);\n for (const path of this.bezierPath2D) {\n ctx.stroke(path);\n }\n ctx.stroke(this.#currentPath2D);\n ctx.restore();\n }\n #makeBezierCurve(path2D, x0, y0, x1, y1, x2, y2) {\n const prevX = (x0 + x1) / 2;\n const prevY = (y0 + y1) / 2;\n const x3 = (x1 + x2) / 2;\n const y3 = (y1 + y2) / 2;\n path2D.bezierCurveTo(prevX + 2 * (x1 - prevX) / 3, prevY + 2 * (y1 - prevY) / 3, x3 + 2 * (x1 - x3) / 3, y3 + 2 * (y1 - y3) / 3, x3, y3);\n }\n #generateBezierPoints() {\n const path = this.currentPath;\n if (path.length <= 2) {\n return [[path[0], path[0], path.at(-1), path.at(-1)]];\n }\n const bezierPoints = [];\n let i;\n let [x0, y0] = path[0];\n for (i = 1; i < path.length - 2; i++) {\n const [x1, y1] = path[i];\n const [x2, y2] = path[i + 1];\n const x3 = (x1 + x2) / 2;\n const y3 = (y1 + y2) / 2;\n const control1 = [x0 + 2 * (x1 - x0) / 3, y0 + 2 * (y1 - y0) / 3];\n const control2 = [x3 + 2 * (x1 - x3) / 3, y3 + 2 * (y1 - y3) / 3];\n bezierPoints.push([[x0, y0], control1, control2, [x3, y3]]);\n [x0, y0] = [x3, y3];\n }\n const [x1, y1] = path[i];\n const [x2, y2] = path[i + 1];\n const control1 = [x0 + 2 * (x1 - x0) / 3, y0 + 2 * (y1 - y0) / 3];\n const control2 = [x2 + 2 * (x1 - x2) / 3, y2 + 2 * (y1 - y2) / 3];\n bezierPoints.push([[x0, y0], control1, control2, [x2, y2]]);\n return bezierPoints;\n }\n #redraw() {\n if (this.isEmpty()) {\n this.#updateTransform();\n return;\n }\n this.#setStroke();\n const {\n canvas,\n ctx\n } = this;\n ctx.setTransform(1, 0, 0, 1, 0, 0);\n ctx.clearRect(0, 0, canvas.width, canvas.height);\n this.#updateTransform();\n for (const path of this.bezierPath2D) {\n ctx.stroke(path);\n }\n }\n commit() {\n if (this.#disableEditing) {\n return;\n }\n super.commit();\n this.isEditing = false;\n this.disableEditMode();\n this.setInForeground();\n this.#disableEditing = true;\n this.div.classList.add(\"disabled\");\n this.#fitToContent(true);\n this.makeResizable();\n this.parent.addInkEditorIfNeeded(true);\n this.moveInDOM();\n this.div.focus({\n preventScroll: true\n });\n }\n focusin(event) {\n if (!this._focusEventsAllowed) {\n return;\n }\n super.focusin(event);\n this.enableEditMode();\n }\n canvasPointerdown(event) {\n if (event.button !== 0 || !this.isInEditMode() || this.#disableEditing) {\n return;\n }\n this.setInForeground();\n event.preventDefault();\n if (event.type !== \"mouse\") {\n this.div.focus();\n }\n this.#startDrawing(event.offsetX, event.offsetY);\n }\n canvasPointermove(event) {\n event.preventDefault();\n this.#draw(event.offsetX, event.offsetY);\n }\n canvasPointerup(event) {\n event.preventDefault();\n this.#endDrawing(event);\n }\n canvasPointerleave(event) {\n this.#endDrawing(event);\n }\n #endDrawing(event) {\n this.canvas.removeEventListener(\"pointerleave\", this.#boundCanvasPointerleave);\n this.canvas.removeEventListener(\"pointermove\", this.#boundCanvasPointermove);\n this.canvas.removeEventListener(\"pointerup\", this.#boundCanvasPointerup);\n this.canvas.addEventListener(\"pointerdown\", this.#boundCanvasPointerdown);\n setTimeout(() => {\n this.canvas.removeEventListener(\"contextmenu\", _display_utils.noContextMenu);\n }, 10);\n this.#stopDrawing(event.offsetX, event.offsetY);\n this.addToAnnotationStorage();\n this.setInBackground();\n }\n #createCanvas() {\n this.canvas = document.createElement(\"canvas\");\n this.canvas.width = this.canvas.height = 0;\n this.canvas.className = \"inkEditorCanvas\";\n _editor.AnnotationEditor._l10nPromise.get(\"editor_ink_canvas_aria_label\").then(msg => this.canvas?.setAttribute(\"aria-label\", msg));\n this.div.append(this.canvas);\n this.ctx = this.canvas.getContext(\"2d\");\n }\n #createObserver() {\n this.#observer = new ResizeObserver(entries => {\n const rect = entries[0].contentRect;\n if (rect.width && rect.height) {\n this.setDimensions(rect.width, rect.height);\n }\n });\n this.#observer.observe(this.div);\n }\n get isResizable() {\n return !this.isEmpty() && this.#disableEditing;\n }\n render() {\n if (this.div) {\n return this.div;\n }\n let baseX, baseY;\n if (this.width) {\n baseX = this.x;\n baseY = this.y;\n }\n super.render();\n _editor.AnnotationEditor._l10nPromise.get(\"editor_ink2_aria_label\").then(msg => this.div?.setAttribute(\"aria-label\", msg));\n const [x, y, w, h] = this.#getInitialBBox();\n this.setAt(x, y, 0, 0);\n this.setDims(w, h);\n this.#createCanvas();\n if (this.width) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setAspectRatio(this.width * parentWidth, this.height * parentHeight);\n this.setAt(baseX * parentWidth, baseY * parentHeight, this.width * parentWidth, this.height * parentHeight);\n this.#isCanvasInitialized = true;\n this.#setCanvasDims();\n this.setDims(this.width * parentWidth, this.height * parentHeight);\n this.#redraw();\n this.div.classList.add(\"disabled\");\n } else {\n this.div.classList.add(\"editing\");\n this.enableEditMode();\n }\n this.#createObserver();\n return this.div;\n }\n #setCanvasDims() {\n if (!this.#isCanvasInitialized) {\n return;\n }\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.canvas.width = Math.ceil(this.width * parentWidth);\n this.canvas.height = Math.ceil(this.height * parentHeight);\n this.#updateTransform();\n }\n setDimensions(width, height) {\n const roundedWidth = Math.round(width);\n const roundedHeight = Math.round(height);\n if (this.#realWidth === roundedWidth && this.#realHeight === roundedHeight) {\n return;\n }\n this.#realWidth = roundedWidth;\n this.#realHeight = roundedHeight;\n this.canvas.style.visibility = \"hidden\";\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.width = width / parentWidth;\n this.height = height / parentHeight;\n this.fixAndSetPosition();\n if (this.#disableEditing) {\n this.#setScaleFactor(width, height);\n }\n this.#setCanvasDims();\n this.#redraw();\n this.canvas.style.visibility = \"visible\";\n this.fixDims();\n }\n #setScaleFactor(width, height) {\n const padding = this.#getPadding();\n const scaleFactorW = (width - padding) / this.#baseWidth;\n const scaleFactorH = (height - padding) / this.#baseHeight;\n this.scaleFactor = Math.min(scaleFactorW, scaleFactorH);\n }\n #updateTransform() {\n const padding = this.#getPadding() / 2;\n this.ctx.setTransform(this.scaleFactor, 0, 0, this.scaleFactor, this.translationX * this.scaleFactor + padding, this.translationY * this.scaleFactor + padding);\n }\n static #buildPath2D(bezier) {\n const path2D = new Path2D();\n for (let i = 0, ii = bezier.length; i < ii; i++) {\n const [first, control1, control2, second] = bezier[i];\n if (i === 0) {\n path2D.moveTo(...first);\n }\n path2D.bezierCurveTo(control1[0], control1[1], control2[0], control2[1], second[0], second[1]);\n }\n return path2D;\n }\n static #toPDFCoordinates(points, rect, rotation) {\n const [blX, blY, trX, trY] = rect;\n switch (rotation) {\n case 0:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n points[i] += blX;\n points[i + 1] = trY - points[i + 1];\n }\n break;\n case 90:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n const x = points[i];\n points[i] = points[i + 1] + blX;\n points[i + 1] = x + blY;\n }\n break;\n case 180:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n points[i] = trX - points[i];\n points[i + 1] += blY;\n }\n break;\n case 270:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n const x = points[i];\n points[i] = trX - points[i + 1];\n points[i + 1] = trY - x;\n }\n break;\n default:\n throw new Error(\"Invalid rotation\");\n }\n return points;\n }\n static #fromPDFCoordinates(points, rect, rotation) {\n const [blX, blY, trX, trY] = rect;\n switch (rotation) {\n case 0:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n points[i] -= blX;\n points[i + 1] = trY - points[i + 1];\n }\n break;\n case 90:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n const x = points[i];\n points[i] = points[i + 1] - blY;\n points[i + 1] = x - blX;\n }\n break;\n case 180:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n points[i] = trX - points[i];\n points[i + 1] -= blY;\n }\n break;\n case 270:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n const x = points[i];\n points[i] = trY - points[i + 1];\n points[i + 1] = trX - x;\n }\n break;\n default:\n throw new Error(\"Invalid rotation\");\n }\n return points;\n }\n #serializePaths(s, tx, ty, rect) {\n const paths = [];\n const padding = this.thickness / 2;\n const shiftX = s * tx + padding;\n const shiftY = s * ty + padding;\n for (const bezier of this.paths) {\n const buffer = [];\n const points = [];\n for (let j = 0, jj = bezier.length; j < jj; j++) {\n const [first, control1, control2, second] = bezier[j];\n const p10 = s * first[0] + shiftX;\n const p11 = s * first[1] + shiftY;\n const p20 = s * control1[0] + shiftX;\n const p21 = s * control1[1] + shiftY;\n const p30 = s * control2[0] + shiftX;\n const p31 = s * control2[1] + shiftY;\n const p40 = s * second[0] + shiftX;\n const p41 = s * second[1] + shiftY;\n if (j === 0) {\n buffer.push(p10, p11);\n points.push(p10, p11);\n }\n buffer.push(p20, p21, p30, p31, p40, p41);\n points.push(p20, p21);\n if (j === jj - 1) {\n points.push(p40, p41);\n }\n }\n paths.push({\n bezier: InkEditor.#toPDFCoordinates(buffer, rect, this.rotation),\n points: InkEditor.#toPDFCoordinates(points, rect, this.rotation)\n });\n }\n return paths;\n }\n #getBbox() {\n let xMin = Infinity;\n let xMax = -Infinity;\n let yMin = Infinity;\n let yMax = -Infinity;\n for (const path of this.paths) {\n for (const [first, control1, control2, second] of path) {\n const bbox = _util.Util.bezierBoundingBox(...first, ...control1, ...control2, ...second);\n xMin = Math.min(xMin, bbox[0]);\n yMin = Math.min(yMin, bbox[1]);\n xMax = Math.max(xMax, bbox[2]);\n yMax = Math.max(yMax, bbox[3]);\n }\n }\n return [xMin, yMin, xMax, yMax];\n }\n #getPadding() {\n return this.#disableEditing ? Math.ceil(this.thickness * this.parentScale) : 0;\n }\n #fitToContent(firstTime = false) {\n if (this.isEmpty()) {\n return;\n }\n if (!this.#disableEditing) {\n this.#redraw();\n return;\n }\n const bbox = this.#getBbox();\n const padding = this.#getPadding();\n this.#baseWidth = Math.max(_editor.AnnotationEditor.MIN_SIZE, bbox[2] - bbox[0]);\n this.#baseHeight = Math.max(_editor.AnnotationEditor.MIN_SIZE, bbox[3] - bbox[1]);\n const width = Math.ceil(padding + this.#baseWidth * this.scaleFactor);\n const height = Math.ceil(padding + this.#baseHeight * this.scaleFactor);\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.width = width / parentWidth;\n this.height = height / parentHeight;\n this.setAspectRatio(width, height);\n const prevTranslationX = this.translationX;\n const prevTranslationY = this.translationY;\n this.translationX = -bbox[0];\n this.translationY = -bbox[1];\n this.#setCanvasDims();\n this.#redraw();\n this.#realWidth = width;\n this.#realHeight = height;\n this.setDims(width, height);\n const unscaledPadding = firstTime ? padding / this.scaleFactor / 2 : 0;\n this.translate(prevTranslationX - this.translationX - unscaledPadding, prevTranslationY - this.translationY - unscaledPadding);\n }\n static deserialize(data, parent, uiManager) {\n if (data instanceof _annotation_layer.InkAnnotationElement) {\n return null;\n }\n const editor = super.deserialize(data, parent, uiManager);\n editor.thickness = data.thickness;\n editor.color = _util.Util.makeHexColor(...data.color);\n editor.opacity = data.opacity;\n const [pageWidth, pageHeight] = editor.pageDimensions;\n const width = editor.width * pageWidth;\n const height = editor.height * pageHeight;\n const scaleFactor = editor.parentScale;\n const padding = data.thickness / 2;\n editor.#disableEditing = true;\n editor.#realWidth = Math.round(width);\n editor.#realHeight = Math.round(height);\n const {\n paths,\n rect,\n rotation\n } = data;\n for (let {\n bezier\n } of paths) {\n bezier = InkEditor.#fromPDFCoordinates(bezier, rect, rotation);\n const path = [];\n editor.paths.push(path);\n let p0 = scaleFactor * (bezier[0] - padding);\n let p1 = scaleFactor * (bezier[1] - padding);\n for (let i = 2, ii = bezier.length; i < ii; i += 6) {\n const p10 = scaleFactor * (bezier[i] - padding);\n const p11 = scaleFactor * (bezier[i + 1] - padding);\n const p20 = scaleFactor * (bezier[i + 2] - padding);\n const p21 = scaleFactor * (bezier[i + 3] - padding);\n const p30 = scaleFactor * (bezier[i + 4] - padding);\n const p31 = scaleFactor * (bezier[i + 5] - padding);\n path.push([[p0, p1], [p10, p11], [p20, p21], [p30, p31]]);\n p0 = p30;\n p1 = p31;\n }\n const path2D = this.#buildPath2D(path);\n editor.bezierPath2D.push(path2D);\n }\n const bbox = editor.#getBbox();\n editor.#baseWidth = Math.max(_editor.AnnotationEditor.MIN_SIZE, bbox[2] - bbox[0]);\n editor.#baseHeight = Math.max(_editor.AnnotationEditor.MIN_SIZE, bbox[3] - bbox[1]);\n editor.#setScaleFactor(width, height);\n return editor;\n }\n serialize() {\n if (this.isEmpty()) {\n return null;\n }\n const rect = this.getRect(0, 0);\n const color = _editor.AnnotationEditor._colorManager.convert(this.ctx.strokeStyle);\n return {\n annotationType: _util.AnnotationEditorType.INK,\n color,\n thickness: this.thickness,\n opacity: this.opacity,\n paths: this.#serializePaths(this.scaleFactor / this.parentScale, this.translationX, this.translationY, rect),\n pageIndex: this.pageIndex,\n rect,\n rotation: this.rotation,\n structTreeParentId: this._structTreeParentId\n };\n }\n}\nexports.InkEditor = InkEditor;\n\n/***/ }),\n/* 34 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.StampEditor = void 0;\nvar _util = __w_pdfjs_require__(1);\nvar _editor = __w_pdfjs_require__(4);\nvar _display_utils = __w_pdfjs_require__(6);\nvar _annotation_layer = __w_pdfjs_require__(29);\nclass StampEditor extends _editor.AnnotationEditor {\n #bitmap = null;\n #bitmapId = null;\n #bitmapPromise = null;\n #bitmapUrl = null;\n #bitmapFile = null;\n #canvas = null;\n #observer = null;\n #resizeTimeoutId = null;\n #isSvg = false;\n #hasBeenAddedInUndoStack = false;\n static _type = \"stamp\";\n constructor(params) {\n super({\n ...params,\n name: \"stampEditor\"\n });\n this.#bitmapUrl = params.bitmapUrl;\n this.#bitmapFile = params.bitmapFile;\n }\n static initialize(l10n) {\n _editor.AnnotationEditor.initialize(l10n);\n }\n static get supportedTypes() {\n const types = [\"apng\", \"avif\", \"bmp\", \"gif\", \"jpeg\", \"png\", \"svg+xml\", \"webp\", \"x-icon\"];\n return (0, _util.shadow)(this, \"supportedTypes\", types.map(type => `image/${type}`));\n }\n static get supportedTypesStr() {\n return (0, _util.shadow)(this, \"supportedTypesStr\", this.supportedTypes.join(\",\"));\n }\n static isHandlingMimeForPasting(mime) {\n return this.supportedTypes.includes(mime);\n }\n static paste(item, parent) {\n parent.pasteEditor(_util.AnnotationEditorType.STAMP, {\n bitmapFile: item.getAsFile()\n });\n }\n #getBitmapFetched(data, fromId = false) {\n if (!data) {\n this.remove();\n return;\n }\n this.#bitmap = data.bitmap;\n if (!fromId) {\n this.#bitmapId = data.id;\n this.#isSvg = data.isSvg;\n }\n this.#createCanvas();\n }\n #getBitmapDone() {\n this.#bitmapPromise = null;\n this._uiManager.enableWaiting(false);\n if (this.#canvas) {\n this.div.focus();\n }\n }\n #getBitmap() {\n if (this.#bitmapId) {\n this._uiManager.enableWaiting(true);\n this._uiManager.imageManager.getFromId(this.#bitmapId).then(data => this.#getBitmapFetched(data, true)).finally(() => this.#getBitmapDone());\n return;\n }\n if (this.#bitmapUrl) {\n const url = this.#bitmapUrl;\n this.#bitmapUrl = null;\n this._uiManager.enableWaiting(true);\n this.#bitmapPromise = this._uiManager.imageManager.getFromUrl(url).then(data => this.#getBitmapFetched(data)).finally(() => this.#getBitmapDone());\n return;\n }\n if (this.#bitmapFile) {\n const file = this.#bitmapFile;\n this.#bitmapFile = null;\n this._uiManager.enableWaiting(true);\n this.#bitmapPromise = this._uiManager.imageManager.getFromFile(file).then(data => this.#getBitmapFetched(data)).finally(() => this.#getBitmapDone());\n return;\n }\n const input = document.createElement(\"input\");\n input.type = \"file\";\n input.accept = StampEditor.supportedTypesStr;\n this.#bitmapPromise = new Promise(resolve => {\n input.addEventListener(\"change\", async () => {\n if (!input.files || input.files.length === 0) {\n this.remove();\n } else {\n this._uiManager.enableWaiting(true);\n const data = await this._uiManager.imageManager.getFromFile(input.files[0]);\n this.#getBitmapFetched(data);\n }\n resolve();\n });\n input.addEventListener(\"cancel\", () => {\n this.remove();\n resolve();\n });\n }).finally(() => this.#getBitmapDone());\n input.click();\n }\n remove() {\n if (this.#bitmapId) {\n this.#bitmap = null;\n this._uiManager.imageManager.deleteId(this.#bitmapId);\n this.#canvas?.remove();\n this.#canvas = null;\n this.#observer?.disconnect();\n this.#observer = null;\n }\n super.remove();\n }\n rebuild() {\n if (!this.parent) {\n if (this.#bitmapId) {\n this.#getBitmap();\n }\n return;\n }\n super.rebuild();\n if (this.div === null) {\n return;\n }\n if (this.#bitmapId) {\n this.#getBitmap();\n }\n if (!this.isAttachedToDOM) {\n this.parent.add(this);\n }\n }\n onceAdded() {\n this._isDraggable = true;\n this.div.focus();\n }\n isEmpty() {\n return !(this.#bitmapPromise || this.#bitmap || this.#bitmapUrl || this.#bitmapFile);\n }\n get isResizable() {\n return true;\n }\n render() {\n if (this.div) {\n return this.div;\n }\n let baseX, baseY;\n if (this.width) {\n baseX = this.x;\n baseY = this.y;\n }\n super.render();\n this.div.hidden = true;\n if (this.#bitmap) {\n this.#createCanvas();\n } else {\n this.#getBitmap();\n }\n if (this.width) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setAt(baseX * parentWidth, baseY * parentHeight, this.width * parentWidth, this.height * parentHeight);\n }\n return this.div;\n }\n #createCanvas() {\n const {\n div\n } = this;\n let {\n width,\n height\n } = this.#bitmap;\n const [pageWidth, pageHeight] = this.pageDimensions;\n const MAX_RATIO = 0.75;\n if (this.width) {\n width = this.width * pageWidth;\n height = this.height * pageHeight;\n } else if (width > MAX_RATIO * pageWidth || height > MAX_RATIO * pageHeight) {\n const factor = Math.min(MAX_RATIO * pageWidth / width, MAX_RATIO * pageHeight / height);\n width *= factor;\n height *= factor;\n }\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setDims(width * parentWidth / pageWidth, height * parentHeight / pageHeight);\n this._uiManager.enableWaiting(false);\n const canvas = this.#canvas = document.createElement(\"canvas\");\n div.append(canvas);\n div.hidden = false;\n this.#drawBitmap(width, height);\n this.#createObserver();\n if (!this.#hasBeenAddedInUndoStack) {\n this.parent.addUndoableEditor(this);\n this.#hasBeenAddedInUndoStack = true;\n }\n this._uiManager._eventBus.dispatch(\"reporttelemetry\", {\n source: this,\n details: {\n type: \"editing\",\n subtype: this.editorType,\n data: {\n action: \"inserted_image\"\n }\n }\n });\n this.addAltTextButton();\n }\n #setDimensions(width, height) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.width = width / parentWidth;\n this.height = height / parentHeight;\n this.setDims(width, height);\n if (this._initialOptions?.isCentered) {\n this.center();\n } else {\n this.fixAndSetPosition();\n }\n this._initialOptions = null;\n if (this.#resizeTimeoutId !== null) {\n clearTimeout(this.#resizeTimeoutId);\n }\n const TIME_TO_WAIT = 200;\n this.#resizeTimeoutId = setTimeout(() => {\n this.#resizeTimeoutId = null;\n this.#drawBitmap(width, height);\n }, TIME_TO_WAIT);\n }\n #scaleBitmap(width, height) {\n const {\n width: bitmapWidth,\n height: bitmapHeight\n } = this.#bitmap;\n let newWidth = bitmapWidth;\n let newHeight = bitmapHeight;\n let bitmap = this.#bitmap;\n while (newWidth > 2 * width || newHeight > 2 * height) {\n const prevWidth = newWidth;\n const prevHeight = newHeight;\n if (newWidth > 2 * width) {\n newWidth = newWidth >= 16384 ? Math.floor(newWidth / 2) - 1 : Math.ceil(newWidth / 2);\n }\n if (newHeight > 2 * height) {\n newHeight = newHeight >= 16384 ? Math.floor(newHeight / 2) - 1 : Math.ceil(newHeight / 2);\n }\n const offscreen = new OffscreenCanvas(newWidth, newHeight);\n const ctx = offscreen.getContext(\"2d\");\n ctx.drawImage(bitmap, 0, 0, prevWidth, prevHeight, 0, 0, newWidth, newHeight);\n bitmap = offscreen.transferToImageBitmap();\n }\n return bitmap;\n }\n #drawBitmap(width, height) {\n width = Math.ceil(width);\n height = Math.ceil(height);\n const canvas = this.#canvas;\n if (!canvas || canvas.width === width && canvas.height === height) {\n return;\n }\n canvas.width = width;\n canvas.height = height;\n const bitmap = this.#isSvg ? this.#bitmap : this.#scaleBitmap(width, height);\n const ctx = canvas.getContext(\"2d\");\n ctx.filter = this._uiManager.hcmFilter;\n ctx.drawImage(bitmap, 0, 0, bitmap.width, bitmap.height, 0, 0, width, height);\n }\n #serializeBitmap(toUrl) {\n if (toUrl) {\n if (this.#isSvg) {\n const url = this._uiManager.imageManager.getSvgUrl(this.#bitmapId);\n if (url) {\n return url;\n }\n }\n const canvas = document.createElement(\"canvas\");\n ({\n width: canvas.width,\n height: canvas.height\n } = this.#bitmap);\n const ctx = canvas.getContext(\"2d\");\n ctx.drawImage(this.#bitmap, 0, 0);\n return canvas.toDataURL();\n }\n if (this.#isSvg) {\n const [pageWidth, pageHeight] = this.pageDimensions;\n const width = Math.round(this.width * pageWidth * _display_utils.PixelsPerInch.PDF_TO_CSS_UNITS);\n const height = Math.round(this.height * pageHeight * _display_utils.PixelsPerInch.PDF_TO_CSS_UNITS);\n const offscreen = new OffscreenCanvas(width, height);\n const ctx = offscreen.getContext(\"2d\");\n ctx.drawImage(this.#bitmap, 0, 0, this.#bitmap.width, this.#bitmap.height, 0, 0, width, height);\n return offscreen.transferToImageBitmap();\n }\n return structuredClone(this.#bitmap);\n }\n #createObserver() {\n this.#observer = new ResizeObserver(entries => {\n const rect = entries[0].contentRect;\n if (rect.width && rect.height) {\n this.#setDimensions(rect.width, rect.height);\n }\n });\n this.#observer.observe(this.div);\n }\n static deserialize(data, parent, uiManager) {\n if (data instanceof _annotation_layer.StampAnnotationElement) {\n return null;\n }\n const editor = super.deserialize(data, parent, uiManager);\n const {\n rect,\n bitmapUrl,\n bitmapId,\n isSvg,\n accessibilityData\n } = data;\n if (bitmapId && uiManager.imageManager.isValidId(bitmapId)) {\n editor.#bitmapId = bitmapId;\n } else {\n editor.#bitmapUrl = bitmapUrl;\n }\n editor.#isSvg = isSvg;\n const [parentWidth, parentHeight] = editor.pageDimensions;\n editor.width = (rect[2] - rect[0]) / parentWidth;\n editor.height = (rect[3] - rect[1]) / parentHeight;\n if (accessibilityData) {\n editor.altTextData = accessibilityData;\n }\n return editor;\n }\n serialize(isForCopying = false, context = null) {\n if (this.isEmpty()) {\n return null;\n }\n const serialized = {\n annotationType: _util.AnnotationEditorType.STAMP,\n bitmapId: this.#bitmapId,\n pageIndex: this.pageIndex,\n rect: this.getRect(0, 0),\n rotation: this.rotation,\n isSvg: this.#isSvg,\n structTreeParentId: this._structTreeParentId\n };\n if (isForCopying) {\n serialized.bitmapUrl = this.#serializeBitmap(true);\n serialized.accessibilityData = this.altTextData;\n return serialized;\n }\n const {\n decorative,\n altText\n } = this.altTextData;\n if (!decorative && altText) {\n serialized.accessibilityData = {\n type: \"Figure\",\n alt: altText\n };\n }\n if (context === null) {\n return serialized;\n }\n context.stamps ||= new Map();\n const area = this.#isSvg ? (serialized.rect[2] - serialized.rect[0]) * (serialized.rect[3] - serialized.rect[1]) : null;\n if (!context.stamps.has(this.#bitmapId)) {\n context.stamps.set(this.#bitmapId, {\n area,\n serialized\n });\n serialized.bitmap = this.#serializeBitmap(false);\n } else if (this.#isSvg) {\n const prevData = context.stamps.get(this.#bitmapId);\n if (area > prevData.area) {\n prevData.area = area;\n prevData.serialized.bitmap.close();\n prevData.serialized.bitmap = this.#serializeBitmap(false);\n }\n }\n return serialized;\n }\n}\nexports.StampEditor = StampEditor;\n\n/***/ })\n/******/ \t]);\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __w_pdfjs_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __w_pdfjs_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n(() => {\nvar exports = __webpack_exports__;\n\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"AbortException\", ({\n enumerable: true,\n get: function () {\n return _util.AbortException;\n }\n}));\nObject.defineProperty(exports, \"AnnotationEditorLayer\", ({\n enumerable: true,\n get: function () {\n return _annotation_editor_layer.AnnotationEditorLayer;\n }\n}));\nObject.defineProperty(exports, \"AnnotationEditorParamsType\", ({\n enumerable: true,\n get: function () {\n return _util.AnnotationEditorParamsType;\n }\n}));\nObject.defineProperty(exports, \"AnnotationEditorType\", ({\n enumerable: true,\n get: function () {\n return _util.AnnotationEditorType;\n }\n}));\nObject.defineProperty(exports, \"AnnotationEditorUIManager\", ({\n enumerable: true,\n get: function () {\n return _tools.AnnotationEditorUIManager;\n }\n}));\nObject.defineProperty(exports, \"AnnotationLayer\", ({\n enumerable: true,\n get: function () {\n return _annotation_layer.AnnotationLayer;\n }\n}));\nObject.defineProperty(exports, \"AnnotationMode\", ({\n enumerable: true,\n get: function () {\n return _util.AnnotationMode;\n }\n}));\nObject.defineProperty(exports, \"CMapCompressionType\", ({\n enumerable: true,\n get: function () {\n return _util.CMapCompressionType;\n }\n}));\nObject.defineProperty(exports, \"DOMSVGFactory\", ({\n enumerable: true,\n get: function () {\n return _display_utils.DOMSVGFactory;\n }\n}));\nObject.defineProperty(exports, \"FeatureTest\", ({\n enumerable: true,\n get: function () {\n return _util.FeatureTest;\n }\n}));\nObject.defineProperty(exports, \"GlobalWorkerOptions\", ({\n enumerable: true,\n get: function () {\n return _worker_options.GlobalWorkerOptions;\n }\n}));\nObject.defineProperty(exports, \"ImageKind\", ({\n enumerable: true,\n get: function () {\n return _util.ImageKind;\n }\n}));\nObject.defineProperty(exports, \"InvalidPDFException\", ({\n enumerable: true,\n get: function () {\n return _util.InvalidPDFException;\n }\n}));\nObject.defineProperty(exports, \"MissingPDFException\", ({\n enumerable: true,\n get: function () {\n return _util.MissingPDFException;\n }\n}));\nObject.defineProperty(exports, \"OPS\", ({\n enumerable: true,\n get: function () {\n return _util.OPS;\n }\n}));\nObject.defineProperty(exports, \"PDFDataRangeTransport\", ({\n enumerable: true,\n get: function () {\n return _api.PDFDataRangeTransport;\n }\n}));\nObject.defineProperty(exports, \"PDFDateString\", ({\n enumerable: true,\n get: function () {\n return _display_utils.PDFDateString;\n }\n}));\nObject.defineProperty(exports, \"PDFWorker\", ({\n enumerable: true,\n get: function () {\n return _api.PDFWorker;\n }\n}));\nObject.defineProperty(exports, \"PasswordResponses\", ({\n enumerable: true,\n get: function () {\n return _util.PasswordResponses;\n }\n}));\nObject.defineProperty(exports, \"PermissionFlag\", ({\n enumerable: true,\n get: function () {\n return _util.PermissionFlag;\n }\n}));\nObject.defineProperty(exports, \"PixelsPerInch\", ({\n enumerable: true,\n get: function () {\n return _display_utils.PixelsPerInch;\n }\n}));\nObject.defineProperty(exports, \"PromiseCapability\", ({\n enumerable: true,\n get: function () {\n return _util.PromiseCapability;\n }\n}));\nObject.defineProperty(exports, \"RenderingCancelledException\", ({\n enumerable: true,\n get: function () {\n return _display_utils.RenderingCancelledException;\n }\n}));\nObject.defineProperty(exports, \"SVGGraphics\", ({\n enumerable: true,\n get: function () {\n return _api.SVGGraphics;\n }\n}));\nObject.defineProperty(exports, \"UnexpectedResponseException\", ({\n enumerable: true,\n get: function () {\n return _util.UnexpectedResponseException;\n }\n}));\nObject.defineProperty(exports, \"Util\", ({\n enumerable: true,\n get: function () {\n return _util.Util;\n }\n}));\nObject.defineProperty(exports, \"VerbosityLevel\", ({\n enumerable: true,\n get: function () {\n return _util.VerbosityLevel;\n }\n}));\nObject.defineProperty(exports, \"XfaLayer\", ({\n enumerable: true,\n get: function () {\n return _xfa_layer.XfaLayer;\n }\n}));\nObject.defineProperty(exports, \"build\", ({\n enumerable: true,\n get: function () {\n return _api.build;\n }\n}));\nObject.defineProperty(exports, \"createValidAbsoluteUrl\", ({\n enumerable: true,\n get: function () {\n return _util.createValidAbsoluteUrl;\n }\n}));\nObject.defineProperty(exports, \"getDocument\", ({\n enumerable: true,\n get: function () {\n return _api.getDocument;\n }\n}));\nObject.defineProperty(exports, \"getFilenameFromUrl\", ({\n enumerable: true,\n get: function () {\n return _display_utils.getFilenameFromUrl;\n }\n}));\nObject.defineProperty(exports, \"getPdfFilenameFromUrl\", ({\n enumerable: true,\n get: function () {\n return _display_utils.getPdfFilenameFromUrl;\n }\n}));\nObject.defineProperty(exports, \"getXfaPageViewport\", ({\n enumerable: true,\n get: function () {\n return _display_utils.getXfaPageViewport;\n }\n}));\nObject.defineProperty(exports, \"isDataScheme\", ({\n enumerable: true,\n get: function () {\n return _display_utils.isDataScheme;\n }\n}));\nObject.defineProperty(exports, \"isPdfFile\", ({\n enumerable: true,\n get: function () {\n return _display_utils.isPdfFile;\n }\n}));\nObject.defineProperty(exports, \"loadScript\", ({\n enumerable: true,\n get: function () {\n return _display_utils.loadScript;\n }\n}));\nObject.defineProperty(exports, \"noContextMenu\", ({\n enumerable: true,\n get: function () {\n return _display_utils.noContextMenu;\n }\n}));\nObject.defineProperty(exports, \"normalizeUnicode\", ({\n enumerable: true,\n get: function () {\n return _util.normalizeUnicode;\n }\n}));\nObject.defineProperty(exports, \"renderTextLayer\", ({\n enumerable: true,\n get: function () {\n return _text_layer.renderTextLayer;\n }\n}));\nObject.defineProperty(exports, \"setLayerDimensions\", ({\n enumerable: true,\n get: function () {\n return _display_utils.setLayerDimensions;\n }\n}));\nObject.defineProperty(exports, \"shadow\", ({\n enumerable: true,\n get: function () {\n return _util.shadow;\n }\n}));\nObject.defineProperty(exports, \"updateTextLayer\", ({\n enumerable: true,\n get: function () {\n return _text_layer.updateTextLayer;\n }\n}));\nObject.defineProperty(exports, \"version\", ({\n enumerable: true,\n get: function () {\n return _api.version;\n }\n}));\nvar _util = __w_pdfjs_require__(1);\nvar _api = __w_pdfjs_require__(2);\nvar _display_utils = __w_pdfjs_require__(6);\nvar _text_layer = __w_pdfjs_require__(26);\nvar _annotation_editor_layer = __w_pdfjs_require__(27);\nvar _tools = __w_pdfjs_require__(5);\nvar _annotation_layer = __w_pdfjs_require__(29);\nvar _worker_options = __w_pdfjs_require__(14);\nvar _xfa_layer = __w_pdfjs_require__(32);\nconst pdfjsVersion = '3.11.174';\nconst pdfjsBuild = 'ce8716743';\n})();\n\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});\n//# sourceMappingURL=pdf.js.map","import * as pdfjsModule from 'pdfjs-dist';\nconst pdfjs = ('default' in pdfjsModule ? pdfjsModule['default'] : pdfjsModule);\nexport default pdfjs;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\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\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\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\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\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\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\n// As defined on the list of supported events: https://reactjs.org/docs/events.html\nexport var clipboardEvents = ['onCopy', 'onCut', 'onPaste'];\nexport var compositionEvents = [\n 'onCompositionEnd',\n 'onCompositionStart',\n 'onCompositionUpdate',\n];\nexport var focusEvents = ['onFocus', 'onBlur'];\nexport var formEvents = ['onInput', 'onInvalid', 'onReset', 'onSubmit'];\nexport var imageEvents = ['onLoad', 'onError'];\nexport var keyboardEvents = ['onKeyDown', 'onKeyPress', 'onKeyUp'];\nexport var mediaEvents = [\n 'onAbort',\n 'onCanPlay',\n 'onCanPlayThrough',\n 'onDurationChange',\n 'onEmptied',\n 'onEncrypted',\n 'onEnded',\n 'onError',\n 'onLoadedData',\n 'onLoadedMetadata',\n 'onLoadStart',\n 'onPause',\n 'onPlay',\n 'onPlaying',\n 'onProgress',\n 'onRateChange',\n 'onSeeked',\n 'onSeeking',\n 'onStalled',\n 'onSuspend',\n 'onTimeUpdate',\n 'onVolumeChange',\n 'onWaiting',\n];\nexport var mouseEvents = [\n 'onClick',\n 'onContextMenu',\n 'onDoubleClick',\n 'onMouseDown',\n 'onMouseEnter',\n 'onMouseLeave',\n 'onMouseMove',\n 'onMouseOut',\n 'onMouseOver',\n 'onMouseUp',\n];\nexport var dragEvents = [\n 'onDrag',\n 'onDragEnd',\n 'onDragEnter',\n 'onDragExit',\n 'onDragLeave',\n 'onDragOver',\n 'onDragStart',\n 'onDrop',\n];\nexport var selectionEvents = ['onSelect'];\nexport var touchEvents = ['onTouchCancel', 'onTouchEnd', 'onTouchMove', 'onTouchStart'];\nexport var pointerEvents = [\n 'onPointerDown',\n 'onPointerMove',\n 'onPointerUp',\n 'onPointerCancel',\n 'onGotPointerCapture',\n 'onLostPointerCapture',\n 'onPointerEnter',\n 'onPointerLeave',\n 'onPointerOver',\n 'onPointerOut',\n];\nexport var uiEvents = ['onScroll'];\nexport var wheelEvents = ['onWheel'];\nexport var animationEvents = [\n 'onAnimationStart',\n 'onAnimationEnd',\n 'onAnimationIteration',\n];\nexport var transitionEvents = ['onTransitionEnd'];\nexport var otherEvents = ['onToggle'];\nexport var changeEvents = ['onChange'];\nexport var allEvents = __spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray([], clipboardEvents, true), compositionEvents, true), focusEvents, true), formEvents, true), imageEvents, true), keyboardEvents, true), mediaEvents, true), mouseEvents, true), dragEvents, true), selectionEvents, true), touchEvents, true), pointerEvents, true), uiEvents, true), wheelEvents, true), animationEvents, true), transitionEvents, true), changeEvents, true), otherEvents, true);\n/**\n * Returns an object with on-event callback props curried with provided args.\n * @param {Object} props Props passed to a component.\n * @param {Function=} getArgs A function that returns argument(s) on-event callbacks\n * shall be curried with.\n */\nexport default function makeEventProps(props, getArgs) {\n var eventProps = {};\n allEvents.forEach(function (eventName) {\n var eventHandler = props[eventName];\n if (!eventHandler) {\n return;\n }\n if (getArgs) {\n eventProps[eventName] = (function (event) {\n return eventHandler(event, getArgs(eventName));\n });\n }\n else {\n eventProps[eventName] = eventHandler;\n }\n });\n return eventProps;\n}\n","export default function makeCancellablePromise(promise) {\n var isCancelled = false;\n var wrappedPromise = new Promise(function (resolve, reject) {\n promise\n .then(function (value) { return !isCancelled && resolve(value); })\n .catch(function (error) { return !isCancelled && reject(error); });\n });\n return {\n promise: wrappedPromise,\n cancel: function () {\n isCancelled = true;\n },\n };\n}\n","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t {\n invariant(this.pdfDocument, 'PDF document not loaded.');\n invariant(dest, 'Destination is not specified.');\n if (typeof dest === 'string') {\n this.pdfDocument.getDestination(dest).then(resolve);\n }\n else if (Array.isArray(dest)) {\n resolve(dest);\n }\n else {\n dest.then(resolve);\n }\n }).then((explicitDest) => {\n invariant(Array.isArray(explicitDest), `\"${explicitDest}\" is not a valid destination array.`);\n const destRef = explicitDest[0];\n new Promise((resolve) => {\n invariant(this.pdfDocument, 'PDF document not loaded.');\n if (destRef instanceof Object) {\n this.pdfDocument\n .getPageIndex(destRef)\n .then((pageIndex) => {\n resolve(pageIndex);\n })\n .catch(() => {\n invariant(false, `\"${destRef}\" is not a valid page reference.`);\n });\n }\n else if (typeof destRef === 'number') {\n resolve(destRef);\n }\n else {\n invariant(false, `\"${destRef}\" is not a valid destination reference.`);\n }\n }).then((pageIndex) => {\n const pageNumber = pageIndex + 1;\n invariant(this.pdfViewer, 'PDF viewer is not initialized.');\n invariant(pageNumber >= 1 && pageNumber <= this.pagesCount, `\"${pageNumber}\" is not a valid page number.`);\n this.pdfViewer.scrollPageIntoView({\n dest: explicitDest,\n pageIndex,\n pageNumber,\n });\n });\n });\n }\n navigateTo(dest) {\n this.goToDestination(dest);\n }\n goToPage(pageNumber) {\n const pageIndex = pageNumber - 1;\n invariant(this.pdfViewer, 'PDF viewer is not initialized.');\n invariant(pageNumber >= 1 && pageNumber <= this.pagesCount, `\"${pageNumber}\" is not a valid page number.`);\n this.pdfViewer.scrollPageIntoView({\n pageIndex,\n pageNumber,\n });\n }\n addLinkAttributes(link, url, newWindow) {\n link.href = url;\n link.rel = this.externalLinkRel || DEFAULT_LINK_REL;\n link.target = newWindow ? '_blank' : this.externalLinkTarget || '';\n }\n getDestinationHash() {\n return '#';\n }\n getAnchorUrl() {\n return '#';\n }\n setHash() {\n // Intentionally empty\n }\n executeNamedAction() {\n // Intentionally empty\n }\n cachePageRef() {\n // Intentionally empty\n }\n isPageVisible() {\n return true;\n }\n isPageCached() {\n return true;\n }\n executeSetOCGState() {\n // Intentionally empty\n }\n}\n","// As defined in https://github.com/mozilla/pdf.js/blob/d9fac3459609a807be6506fb3441b5da4b154d14/src/shared/util.js#L371-L374\nconst PasswordResponses = {\n NEED_PASSWORD: 1,\n INCORRECT_PASSWORD: 2,\n};\nexport default PasswordResponses;\n","import invariant from 'tiny-invariant';\nimport warning from 'tiny-warning';\n/**\n * Checks if we're running in a browser environment.\n */\nexport const isBrowser = typeof document !== 'undefined';\n/**\n * Checks whether we're running from a local file system.\n */\nexport const isLocalFileSystem = isBrowser && window.location.protocol === 'file:';\n/**\n * Checks whether a variable is defined.\n *\n * @param {*} variable Variable to check\n */\nexport function isDefined(variable) {\n return typeof variable !== 'undefined';\n}\n/**\n * Checks whether a variable is defined and not null.\n *\n * @param {*} variable Variable to check\n */\nexport function isProvided(variable) {\n return isDefined(variable) && variable !== null;\n}\n/**\n * Checks whether a variable provided is a string.\n *\n * @param {*} variable Variable to check\n */\nexport function isString(variable) {\n return typeof variable === 'string';\n}\n/**\n * Checks whether a variable provided is an ArrayBuffer.\n *\n * @param {*} variable Variable to check\n */\nexport function isArrayBuffer(variable) {\n return variable instanceof ArrayBuffer;\n}\n/**\n * Checks whether a variable provided is a Blob.\n *\n * @param {*} variable Variable to check\n */\nexport function isBlob(variable) {\n invariant(isBrowser, 'isBlob can only be used in a browser environment');\n return variable instanceof Blob;\n}\n/**\n * Checks whether a variable provided is a data URI.\n *\n * @param {*} variable String to check\n */\nexport function isDataURI(variable) {\n return isString(variable) && /^data:/.test(variable);\n}\nexport function dataURItoByteString(dataURI) {\n invariant(isDataURI(dataURI), 'Invalid data URI.');\n const [headersString = '', dataString = ''] = dataURI.split(',');\n const headers = headersString.split(';');\n if (headers.indexOf('base64') !== -1) {\n return atob(dataString);\n }\n return unescape(dataString);\n}\nexport function getDevicePixelRatio() {\n return (isBrowser && window.devicePixelRatio) || 1;\n}\nconst allowFileAccessFromFilesTip = 'On Chromium based browsers, you can use --allow-file-access-from-files flag for debugging purposes.';\nexport function displayCORSWarning() {\n warning(!isLocalFileSystem, `Loading PDF as base64 strings/URLs may not work on protocols other than HTTP/HTTPS. ${allowFileAccessFromFilesTip}`);\n}\nexport function displayWorkerWarning() {\n warning(!isLocalFileSystem, `Loading PDF.js worker may not work on protocols other than HTTP/HTTPS. ${allowFileAccessFromFilesTip}`);\n}\nexport function cancelRunningTask(runningTask) {\n if (runningTask && runningTask.cancel)\n runningTask.cancel();\n}\nexport function makePageCallback(page, scale) {\n Object.defineProperty(page, 'width', {\n get() {\n return this.view[2] * scale;\n },\n configurable: true,\n });\n Object.defineProperty(page, 'height', {\n get() {\n return this.view[3] * scale;\n },\n configurable: true,\n });\n Object.defineProperty(page, 'originalWidth', {\n get() {\n return this.view[2];\n },\n configurable: true,\n });\n Object.defineProperty(page, 'originalHeight', {\n get() {\n return this.view[3];\n },\n configurable: true,\n });\n return page;\n}\nexport function isCancelException(error) {\n return error.name === 'RenderingCancelledException';\n}\nexport function loadFromFile(file) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onload = () => {\n if (!reader.result) {\n return reject(new Error('Error while reading a file.'));\n }\n resolve(reader.result);\n };\n reader.onerror = (event) => {\n if (!event.target) {\n return reject(new Error('Error while reading a file.'));\n }\n const { error } = event.target;\n if (!error) {\n return reject(new Error('Error while reading a file.'));\n }\n switch (error.code) {\n case error.NOT_FOUND_ERR:\n return reject(new Error('Error while reading a file: File not found.'));\n case error.SECURITY_ERR:\n return reject(new Error('Error while reading a file: Security error.'));\n case error.ABORT_ERR:\n return reject(new Error('Error while reading a file: Aborted.'));\n default:\n return reject(new Error('Error while reading a file.'));\n }\n };\n reader.readAsArrayBuffer(file);\n });\n}\n","import { useReducer } from 'react';\nfunction reducer(state, action) {\n switch (action.type) {\n case 'RESOLVE':\n return { value: action.value, error: undefined };\n case 'REJECT':\n return { value: false, error: action.error };\n case 'RESET':\n return { value: undefined, error: undefined };\n default:\n return state;\n }\n}\nexport default function useResolver() {\n return useReducer((reducer), { value: undefined, error: undefined });\n}\n","import PropTypes from 'prop-types';\nimport { allEvents } from 'make-event-props';\nimport pdfjs from '../pdfjs.js';\nimport { isDefined } from './utils.js';\nimport LinkService from '../LinkService.js';\nconst { PDFDataRangeTransport } = pdfjs;\nexport const eventProps = (() => {\n const result = {};\n allEvents.forEach((eventName) => {\n result[eventName] = PropTypes.func;\n });\n return result;\n})();\nconst isTypedArray = PropTypes.oneOfType([\n PropTypes.instanceOf(Int8Array),\n PropTypes.instanceOf(Uint8Array),\n PropTypes.instanceOf(Uint8ClampedArray),\n PropTypes.instanceOf(Int16Array),\n PropTypes.instanceOf(Uint16Array),\n PropTypes.instanceOf(Int32Array),\n PropTypes.instanceOf(Uint32Array),\n PropTypes.instanceOf(Float32Array),\n PropTypes.instanceOf(Float64Array),\n]);\nconst fileTypes = [\n PropTypes.string,\n PropTypes.instanceOf(ArrayBuffer),\n PropTypes.shape({\n data: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.instanceOf(ArrayBuffer),\n PropTypes.arrayOf(PropTypes.number.isRequired),\n isTypedArray,\n ]).isRequired,\n }),\n PropTypes.shape({\n range: PropTypes.instanceOf(PDFDataRangeTransport).isRequired,\n }),\n PropTypes.shape({\n url: PropTypes.string.isRequired,\n }),\n];\nif (typeof Blob !== 'undefined') {\n fileTypes.push(PropTypes.instanceOf(Blob));\n}\nexport const isClassName = PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n]);\nexport const isFile = PropTypes.oneOfType(fileTypes);\nexport const isLinkService = PropTypes.instanceOf(LinkService);\nexport const isLinkTarget = PropTypes.oneOf(['_self', '_blank', '_parent', '_top']);\nexport const isPage = PropTypes.shape({\n commonObjs: PropTypes.shape({}).isRequired,\n getAnnotations: PropTypes.func.isRequired,\n getTextContent: PropTypes.func.isRequired,\n getViewport: PropTypes.func.isRequired,\n render: PropTypes.func.isRequired,\n});\nexport const isPageIndex = function isPageIndex(props, propName, componentName) {\n const { [propName]: pageIndex, pageNumber, pdf } = props;\n if (!isDefined(pdf)) {\n return null;\n }\n if (isDefined(pageIndex)) {\n if (typeof pageIndex !== 'number') {\n return new Error(`\\`${propName}\\` of type \\`${typeof pageIndex}\\` supplied to \\`${componentName}\\`, expected \\`number\\`.`);\n }\n if (pageIndex < 0) {\n return new Error(`Expected \\`${propName}\\` to be greater or equal to 0.`);\n }\n const { numPages } = pdf;\n if (pageIndex + 1 > numPages) {\n return new Error(`Expected \\`${propName}\\` to be less or equal to ${numPages - 1}.`);\n }\n }\n else if (!isDefined(pageNumber)) {\n return new Error(`\\`${propName}\\` not supplied. Either pageIndex or pageNumber must be supplied to \\`${componentName}\\`.`);\n }\n // Everything is fine\n return null;\n};\nexport const isPageNumber = function isPageNumber(props, propName, componentName) {\n const { [propName]: pageNumber, pageIndex, pdf } = props;\n if (!isDefined(pdf)) {\n return null;\n }\n if (isDefined(pageNumber)) {\n if (typeof pageNumber !== 'number') {\n return new Error(`\\`${propName}\\` of type \\`${typeof pageNumber}\\` supplied to \\`${componentName}\\`, expected \\`number\\`.`);\n }\n if (pageNumber < 1) {\n return new Error(`Expected \\`${propName}\\` to be greater or equal to 1.`);\n }\n const { numPages } = pdf;\n if (pageNumber > numPages) {\n return new Error(`Expected \\`${propName}\\` to be less or equal to ${numPages}.`);\n }\n }\n else if (!isDefined(pageIndex)) {\n return new Error(`\\`${propName}\\` not supplied. Either pageIndex or pageNumber must be supplied to \\`${componentName}\\`.`);\n }\n // Everything is fine\n return null;\n};\nexport const isPdf = PropTypes.oneOfType([\n // Ideally, this would be `PropTypes.instanceOf(PDFDocumentProxy)`, but it can't be imported.\n PropTypes.any,\n PropTypes.oneOf([false]),\n]);\nexport const isRef = PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.exact({\n current: PropTypes.any,\n }),\n]);\nexport const isRenderMode = PropTypes.oneOf(['canvas', 'custom', 'none', 'svg']);\nexport const isRotate = PropTypes.oneOf([0, 90, 180, 270]);\n","'use client';\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\n/**\n * Loads a PDF document. Passes it to all children.\n */\nimport React, { forwardRef, useCallback, useEffect, useImperativeHandle, useMemo, useRef, } from 'react';\nimport PropTypes from 'prop-types';\nimport makeEventProps from 'make-event-props';\nimport makeCancellable from 'make-cancellable-promise';\nimport clsx from 'clsx';\nimport invariant from 'tiny-invariant';\nimport warning from 'tiny-warning';\nimport pdfjs from './pdfjs.js';\nimport DocumentContext from './DocumentContext.js';\nimport Message from './Message.js';\nimport LinkService from './LinkService.js';\nimport PasswordResponses from './PasswordResponses.js';\nimport { cancelRunningTask, dataURItoByteString, displayCORSWarning, isArrayBuffer, isBlob, isBrowser, isDataURI, loadFromFile, } from './shared/utils.js';\nimport useResolver from './shared/hooks/useResolver.js';\nimport { eventProps, isClassName, isFile, isRef } from './shared/propTypes.js';\nconst { PDFDataRangeTransport } = pdfjs;\nconst defaultOnPassword = (callback, reason) => {\n switch (reason) {\n case PasswordResponses.NEED_PASSWORD: {\n // eslint-disable-next-line no-alert\n const password = prompt('Enter the password to open this PDF file.');\n callback(password);\n break;\n }\n case PasswordResponses.INCORRECT_PASSWORD: {\n // eslint-disable-next-line no-alert\n const password = prompt('Invalid password. Please try again.');\n callback(password);\n break;\n }\n default:\n }\n};\nconst Document = forwardRef(function Document(_a, ref) {\n var { children, className, error = 'Failed to load PDF file.', externalLinkRel, externalLinkTarget, file, inputRef, imageResourcesPath, loading = 'Loading PDF…', noData = 'No PDF file specified.', onItemClick, onLoadError: onLoadErrorProps, onLoadProgress, onLoadSuccess: onLoadSuccessProps, onPassword = defaultOnPassword, onSourceError: onSourceErrorProps, onSourceSuccess: onSourceSuccessProps, options, renderMode, rotate } = _a, otherProps = __rest(_a, [\"children\", \"className\", \"error\", \"externalLinkRel\", \"externalLinkTarget\", \"file\", \"inputRef\", \"imageResourcesPath\", \"loading\", \"noData\", \"onItemClick\", \"onLoadError\", \"onLoadProgress\", \"onLoadSuccess\", \"onPassword\", \"onSourceError\", \"onSourceSuccess\", \"options\", \"renderMode\", \"rotate\"]);\n const [sourceState, sourceDispatch] = useResolver();\n const { value: source, error: sourceError } = sourceState;\n const [pdfState, pdfDispatch] = useResolver();\n const { value: pdf, error: pdfError } = pdfState;\n const linkService = useRef(new LinkService());\n const pages = useRef([]);\n const viewer = useRef({\n // Handling jumping to internal links target\n scrollPageIntoView: (args) => {\n const { dest, pageNumber, pageIndex = pageNumber - 1 } = args;\n // First, check if custom handling of onItemClick was provided\n if (onItemClick) {\n onItemClick({ dest, pageIndex, pageNumber });\n return;\n }\n // If not, try to look for target page within the .\n const page = pages.current[pageIndex];\n if (page) {\n // Scroll to the page automatically\n page.scrollIntoView();\n return;\n }\n warning(false, `An internal link leading to page ${pageNumber} was clicked, but neither was provided with onItemClick nor it was able to find the page within itself. Either provide onItemClick to and handle navigating by yourself or ensure that all pages are rendered within .`);\n },\n });\n useImperativeHandle(ref, () => ({\n linkService,\n pages,\n viewer,\n }), []);\n /**\n * Called when a document source is resolved correctly\n */\n function onSourceSuccess() {\n if (onSourceSuccessProps) {\n onSourceSuccessProps();\n }\n }\n /**\n * Called when a document source failed to be resolved correctly\n */\n function onSourceError() {\n if (!sourceError) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n warning(false, sourceError.toString());\n if (onSourceErrorProps) {\n onSourceErrorProps(sourceError);\n }\n }\n function resetSource() {\n sourceDispatch({ type: 'RESET' });\n }\n useEffect(resetSource, [file, sourceDispatch]);\n const findDocumentSource = useCallback(() => __awaiter(this, void 0, void 0, function* () {\n if (!file) {\n return null;\n }\n // File is a string\n if (typeof file === 'string') {\n if (isDataURI(file)) {\n const fileByteString = dataURItoByteString(file);\n return { data: fileByteString };\n }\n displayCORSWarning();\n return { url: file };\n }\n // File is PDFDataRangeTransport\n if (file instanceof PDFDataRangeTransport) {\n return { range: file };\n }\n // File is an ArrayBuffer\n if (isArrayBuffer(file)) {\n return { data: file };\n }\n /**\n * The cases below are browser-only.\n * If you're running on a non-browser environment, these cases will be of no use.\n */\n if (isBrowser) {\n // File is a Blob\n if (isBlob(file)) {\n const data = yield loadFromFile(file);\n return { data };\n }\n }\n // At this point, file must be an object\n invariant(typeof file === 'object', 'Invalid parameter in file, need either Uint8Array, string or a parameter object');\n invariant('data' in file || 'range' in file || 'url' in file, 'Invalid parameter object: need either .data, .range or .url');\n // File .url is a string\n if ('url' in file && typeof file.url === 'string') {\n if (isDataURI(file.url)) {\n const { url } = file, otherParams = __rest(file, [\"url\"]);\n const fileByteString = dataURItoByteString(url);\n return Object.assign({ data: fileByteString }, otherParams);\n }\n displayCORSWarning();\n }\n return file;\n }), [file]);\n useEffect(() => {\n const cancellable = makeCancellable(findDocumentSource());\n cancellable.promise\n .then((nextSource) => {\n sourceDispatch({ type: 'RESOLVE', value: nextSource });\n })\n .catch((error) => {\n sourceDispatch({ type: 'REJECT', error });\n });\n return () => {\n cancelRunningTask(cancellable);\n };\n }, [findDocumentSource, sourceDispatch]);\n useEffect(() => {\n if (typeof source === 'undefined') {\n return;\n }\n if (source === false) {\n onSourceError();\n return;\n }\n onSourceSuccess();\n }, \n // Ommitted callbacks so they are not called every time they change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [source]);\n /**\n * Called when a document is read successfully\n */\n function onLoadSuccess() {\n if (!pdf) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n if (onLoadSuccessProps) {\n onLoadSuccessProps(pdf);\n }\n pages.current = new Array(pdf.numPages);\n linkService.current.setDocument(pdf);\n }\n /**\n * Called when a document failed to read successfully\n */\n function onLoadError() {\n if (!pdfError) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n warning(false, pdfError.toString());\n if (onLoadErrorProps) {\n onLoadErrorProps(pdfError);\n }\n }\n function resetDocument() {\n pdfDispatch({ type: 'RESET' });\n }\n useEffect(resetDocument, [pdfDispatch, source]);\n function loadDocument() {\n if (!source) {\n return;\n }\n const documentInitParams = options\n ? Object.assign(Object.assign({}, source), options) : source;\n const destroyable = pdfjs.getDocument(documentInitParams);\n if (onLoadProgress) {\n destroyable.onProgress = onLoadProgress;\n }\n if (onPassword) {\n destroyable.onPassword = onPassword;\n }\n const loadingTask = destroyable;\n loadingTask.promise\n .then((nextPdf) => {\n pdfDispatch({ type: 'RESOLVE', value: nextPdf });\n })\n .catch((error) => {\n if (loadingTask.destroyed) {\n return;\n }\n pdfDispatch({ type: 'REJECT', error });\n });\n return () => {\n loadingTask.destroy();\n };\n }\n useEffect(loadDocument, \n // Ommitted callbacks so they are not called every time they change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [options, pdfDispatch, source]);\n useEffect(() => {\n if (typeof pdf === 'undefined') {\n return;\n }\n if (pdf === false) {\n onLoadError();\n return;\n }\n onLoadSuccess();\n }, \n // Ommitted callbacks so they are not called every time they change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [pdf]);\n function setupLinkService() {\n linkService.current.setViewer(viewer.current);\n linkService.current.setExternalLinkRel(externalLinkRel);\n linkService.current.setExternalLinkTarget(externalLinkTarget);\n }\n useEffect(setupLinkService, [externalLinkRel, externalLinkTarget]);\n function registerPage(pageIndex, ref) {\n pages.current[pageIndex] = ref;\n }\n function unregisterPage(pageIndex) {\n delete pages.current[pageIndex];\n }\n const childContext = useMemo(() => ({\n imageResourcesPath,\n linkService: linkService.current,\n onItemClick,\n pdf,\n registerPage,\n renderMode,\n rotate,\n unregisterPage,\n }), [imageResourcesPath, onItemClick, pdf, renderMode, rotate]);\n const eventProps = useMemo(() => makeEventProps(otherProps, () => pdf), [otherProps, pdf]);\n function renderChildren() {\n return React.createElement(DocumentContext.Provider, { value: childContext }, children);\n }\n function renderContent() {\n if (!file) {\n return React.createElement(Message, { type: \"no-data\" }, typeof noData === 'function' ? noData() : noData);\n }\n if (pdf === undefined || pdf === null) {\n return (React.createElement(Message, { type: \"loading\" }, typeof loading === 'function' ? loading() : loading));\n }\n if (pdf === false) {\n return React.createElement(Message, { type: \"error\" }, typeof error === 'function' ? error() : error);\n }\n return renderChildren();\n }\n return (React.createElement(\"div\", Object.assign({ className: clsx('react-pdf__Document', className), ref: inputRef, style: {\n ['--scale-factor']: '1',\n } }, eventProps), renderContent()));\n});\nconst isFunctionOrNode = PropTypes.oneOfType([PropTypes.func, PropTypes.node]);\nDocument.propTypes = Object.assign(Object.assign({}, eventProps), { children: PropTypes.node, className: isClassName, error: isFunctionOrNode, externalLinkRel: PropTypes.string, externalLinkTarget: PropTypes.oneOf(['_self', '_blank', '_parent', '_top']), file: isFile, imageResourcesPath: PropTypes.string, inputRef: isRef, loading: isFunctionOrNode, noData: isFunctionOrNode, onItemClick: PropTypes.func, onLoadError: PropTypes.func, onLoadProgress: PropTypes.func, onLoadSuccess: PropTypes.func, onPassword: PropTypes.func, onSourceError: PropTypes.func, onSourceSuccess: PropTypes.func, options: PropTypes.shape({\n canvasFactory: PropTypes.any,\n canvasMaxAreaInBytes: PropTypes.number,\n cMapPacked: PropTypes.bool,\n CMapReaderFactory: PropTypes.any,\n cMapUrl: PropTypes.string,\n disableAutoFetch: PropTypes.bool,\n disableFontFace: PropTypes.bool,\n disableRange: PropTypes.bool,\n disableStream: PropTypes.bool,\n docBaseUrl: PropTypes.string,\n enableXfa: PropTypes.bool,\n filterFactory: PropTypes.any,\n fontExtraProperties: PropTypes.bool,\n httpHeaders: PropTypes.object,\n isEvalSupported: PropTypes.bool,\n isOffscreenCanvasSupported: PropTypes.bool,\n length: PropTypes.number,\n maxImageSize: PropTypes.number,\n ownerDocument: PropTypes.any,\n password: PropTypes.string,\n pdfBug: PropTypes.bool,\n rangeChunkSize: PropTypes.number,\n StandardFontDataFactory: PropTypes.any,\n standardFontDataUrl: PropTypes.string,\n stopAtErrors: PropTypes.bool,\n useSystemFonts: PropTypes.bool,\n useWorkerFetch: PropTypes.bool,\n verbosity: PropTypes.number,\n withCredentials: PropTypes.bool,\n worker: PropTypes.any,\n }), rotate: PropTypes.number });\nexport default Document;\n","import { useContext } from 'react';\nimport DocumentContext from '../../DocumentContext.js';\nexport default function useDocumentContext() {\n return useContext(DocumentContext);\n}\n","/**\n * A function that merges React refs into one.\n * Supports both functions and ref objects created using createRef() and useRef().\n *\n * Usage:\n * ```tsx\n *
    \n * ```\n *\n * @param {(React.Ref | undefined)[]} inputRefs Array of refs\n * @returns {React.Ref | React.RefCallback} Merged refs\n */\nexport default function mergeRefs() {\n var inputRefs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n inputRefs[_i] = arguments[_i];\n }\n var filteredInputRefs = inputRefs.filter(Boolean);\n if (filteredInputRefs.length <= 1) {\n var firstRef = filteredInputRefs[0];\n return firstRef || null;\n }\n return function mergedRefs(ref) {\n filteredInputRefs.forEach(function (inputRef) {\n if (typeof inputRef === 'function') {\n inputRef(ref);\n }\n else if (inputRef) {\n inputRef.current = ref;\n }\n });\n };\n}\n","'use client';\nimport { createContext } from 'react';\nexport default createContext(null);\n","// From pdfjs-dist/lib/web/struct_tree_layer_builder.js\nexport const PDF_ROLE_TO_HTML_ROLE = {\n // Document level structure types\n Document: null,\n DocumentFragment: null,\n // Grouping level structure types\n Part: 'group',\n Sect: 'group',\n Div: 'group',\n Aside: 'note',\n NonStruct: 'none',\n // Block level structure types\n P: null,\n // H,\n H: 'heading',\n Title: null,\n FENote: 'note',\n // Sub-block level structure type\n Sub: 'group',\n // General inline level structure types\n Lbl: null,\n Span: null,\n Em: null,\n Strong: null,\n Link: 'link',\n Annot: 'note',\n Form: 'form',\n // Ruby and Warichu structure types\n Ruby: null,\n RB: null,\n RT: null,\n RP: null,\n Warichu: null,\n WT: null,\n WP: null,\n // List standard structure types\n L: 'list',\n LI: 'listitem',\n LBody: null,\n // Table standard structure types\n Table: 'table',\n TR: 'row',\n TH: 'columnheader',\n TD: 'cell',\n THead: 'columnheader',\n TBody: null,\n TFoot: null,\n // Standard structure type Caption\n Caption: null,\n // Standard structure type Figure\n Figure: 'figure',\n // Standard structure type Formula\n Formula: null,\n // standard structure type Artifact\n Artifact: null,\n};\nexport const HEADING_PATTERN = /^H(\\d+)$/;\n","import { HEADING_PATTERN, PDF_ROLE_TO_HTML_ROLE } from './constants.js';\nexport function isPdfRole(role) {\n return role in PDF_ROLE_TO_HTML_ROLE;\n}\nexport function isStructTreeNode(node) {\n return 'children' in node;\n}\nexport function isStructTreeNodeWithOnlyContentChild(node) {\n if (!isStructTreeNode(node)) {\n return false;\n }\n return node.children.length === 1 && 0 in node.children && 'id' in node.children[0];\n}\nexport function getRoleAttributes(node) {\n const attributes = {};\n if (isStructTreeNode(node)) {\n const { role } = node;\n const matches = role.match(HEADING_PATTERN);\n if (matches) {\n attributes.role = 'heading';\n attributes['aria-level'] = Number(matches[1]);\n }\n else if (isPdfRole(role)) {\n const htmlRole = PDF_ROLE_TO_HTML_ROLE[role];\n if (htmlRole) {\n attributes.role = htmlRole;\n }\n }\n }\n return attributes;\n}\nexport function getBaseAttributes(node) {\n const attributes = {};\n if (isStructTreeNode(node)) {\n if (node.alt !== undefined) {\n attributes['aria-label'] = node.alt;\n }\n if (node.lang !== undefined) {\n attributes.lang = node.lang;\n }\n if (isStructTreeNodeWithOnlyContentChild(node)) {\n const [child] = node.children;\n if (child) {\n const childAttributes = getBaseAttributes(child);\n return Object.assign(Object.assign({}, attributes), childAttributes);\n }\n }\n }\n else {\n if ('id' in node) {\n attributes['aria-owns'] = node.id;\n }\n }\n return attributes;\n}\nexport function getAttributes(node) {\n if (!node) {\n return null;\n }\n return Object.assign(Object.assign({}, getRoleAttributes(node)), getBaseAttributes(node));\n}\n","import React, { useMemo } from 'react';\nimport { getAttributes, isStructTreeNode, isStructTreeNodeWithOnlyContentChild, } from './shared/structTreeUtils.js';\nexport default function StructTreeItem({ className, node }) {\n const attributes = useMemo(() => getAttributes(node), [node]);\n const children = useMemo(() => {\n if (!isStructTreeNode(node)) {\n return null;\n }\n if (isStructTreeNodeWithOnlyContentChild(node)) {\n return null;\n }\n return node.children.map((child, index) => {\n return (\n // eslint-disable-next-line react/no-array-index-key\n React.createElement(StructTreeItem, { key: index, node: child }));\n });\n }, [node]);\n return (React.createElement(\"span\", Object.assign({ className: className }, attributes), children));\n}\n","import { useContext } from 'react';\nimport PageContext from '../../PageContext.js';\nexport default function usePageContext() {\n return useContext(PageContext);\n}\n","import React, { useEffect } from 'react';\nimport makeCancellable from 'make-cancellable-promise';\nimport invariant from 'tiny-invariant';\nimport warning from 'tiny-warning';\nimport StructTreeItem from './StructTreeItem.js';\nimport usePageContext from './shared/hooks/usePageContext.js';\nimport useResolver from './shared/hooks/useResolver.js';\nimport { cancelRunningTask } from './shared/utils.js';\nexport default function StructTree() {\n const pageContext = usePageContext();\n invariant(pageContext, 'Unable to find Page context.');\n const { onGetStructTreeError: onGetStructTreeErrorProps, onGetStructTreeSuccess: onGetStructTreeSuccessProps, } = pageContext;\n const [structTreeState, structTreeDispatch] = useResolver();\n const { value: structTree, error: structTreeError } = structTreeState;\n const { customTextRenderer, page } = pageContext;\n function onLoadSuccess() {\n if (!structTree) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n if (onGetStructTreeSuccessProps) {\n onGetStructTreeSuccessProps(structTree);\n }\n }\n function onLoadError() {\n if (!structTreeError) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n warning(false, structTreeError.toString());\n if (onGetStructTreeErrorProps) {\n onGetStructTreeErrorProps(structTreeError);\n }\n }\n function resetAnnotations() {\n structTreeDispatch({ type: 'RESET' });\n }\n useEffect(resetAnnotations, [structTreeDispatch, page]);\n function loadStructTree() {\n if (customTextRenderer) {\n // TODO: Document why this is necessary\n return;\n }\n if (!page) {\n return;\n }\n const cancellable = makeCancellable(page.getStructTree());\n const runningTask = cancellable;\n cancellable.promise\n .then((nextStructTree) => {\n structTreeDispatch({ type: 'RESOLVE', value: nextStructTree });\n })\n .catch((error) => {\n structTreeDispatch({ type: 'REJECT', error });\n });\n return () => cancelRunningTask(runningTask);\n }\n useEffect(loadStructTree, [customTextRenderer, page, structTreeDispatch]);\n useEffect(() => {\n if (structTree === undefined) {\n return;\n }\n if (structTree === false) {\n onLoadError();\n return;\n }\n onLoadSuccess();\n }, \n // Ommitted callbacks so they are not called every time they change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [structTree]);\n if (!structTree) {\n return null;\n }\n return React.createElement(StructTreeItem, { className: \"react-pdf__Page__structTree structTree\", node: structTree });\n}\n","'use client';\nimport React, { useCallback, useEffect, useMemo, useRef } from 'react';\nimport mergeRefs from 'merge-refs';\nimport invariant from 'tiny-invariant';\nimport warning from 'tiny-warning';\nimport pdfjs from '../pdfjs.js';\nimport StructTree from '../StructTree.js';\nimport usePageContext from '../shared/hooks/usePageContext.js';\nimport { cancelRunningTask, getDevicePixelRatio, isCancelException, makePageCallback, } from '../shared/utils.js';\nconst ANNOTATION_MODE = pdfjs.AnnotationMode;\nexport default function PageCanvas(props) {\n const pageContext = usePageContext();\n invariant(pageContext, 'Unable to find Page context.');\n const mergedProps = Object.assign(Object.assign({}, pageContext), props);\n const { _className, canvasBackground, devicePixelRatio = getDevicePixelRatio(), onRenderError: onRenderErrorProps, onRenderSuccess: onRenderSuccessProps, page, renderForms, renderTextLayer, rotate, scale, } = mergedProps;\n const { canvasRef } = props;\n invariant(page, 'Attempted to render page canvas, but no page was specified.');\n const canvasElement = useRef(null);\n /**\n * Called when a page is rendered successfully.\n */\n function onRenderSuccess() {\n if (!page) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n if (onRenderSuccessProps) {\n onRenderSuccessProps(makePageCallback(page, scale));\n }\n }\n /**\n * Called when a page fails to render.\n */\n function onRenderError(error) {\n if (isCancelException(error)) {\n return;\n }\n warning(false, error.toString());\n if (onRenderErrorProps) {\n onRenderErrorProps(error);\n }\n }\n const renderViewport = useMemo(() => page.getViewport({ scale: scale * devicePixelRatio, rotation: rotate }), [devicePixelRatio, page, rotate, scale]);\n const viewport = useMemo(() => page.getViewport({ scale, rotation: rotate }), [page, rotate, scale]);\n function drawPageOnCanvas() {\n if (!page) {\n return;\n }\n // Ensures the canvas will be re-rendered from scratch. Otherwise all form data will stay.\n page.cleanup();\n const { current: canvas } = canvasElement;\n if (!canvas) {\n return;\n }\n canvas.width = renderViewport.width;\n canvas.height = renderViewport.height;\n canvas.style.width = `${Math.floor(viewport.width)}px`;\n canvas.style.height = `${Math.floor(viewport.height)}px`;\n canvas.style.visibility = 'hidden';\n const renderContext = {\n annotationMode: renderForms ? ANNOTATION_MODE.ENABLE_FORMS : ANNOTATION_MODE.ENABLE,\n canvasContext: canvas.getContext('2d', { alpha: false }),\n viewport: renderViewport,\n };\n if (canvasBackground) {\n renderContext.background = canvasBackground;\n }\n const cancellable = page.render(renderContext);\n const runningTask = cancellable;\n cancellable.promise\n .then(() => {\n canvas.style.visibility = '';\n onRenderSuccess();\n })\n .catch(onRenderError);\n return () => cancelRunningTask(runningTask);\n }\n useEffect(drawPageOnCanvas, \n // Ommitted callbacks so they are not called every time they change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n canvasBackground,\n canvasElement,\n devicePixelRatio,\n page,\n renderForms,\n renderViewport,\n viewport,\n ]);\n const cleanup = useCallback(() => {\n const { current: canvas } = canvasElement;\n /**\n * Zeroing the width and height cause most browsers to release graphics\n * resources immediately, which can greatly reduce memory consumption.\n */\n if (canvas) {\n canvas.width = 0;\n canvas.height = 0;\n }\n }, [canvasElement]);\n useEffect(() => cleanup, [cleanup]);\n return (React.createElement(\"canvas\", { className: `${_className}__canvas`, dir: \"ltr\", ref: mergeRefs(canvasRef, canvasElement), style: {\n display: 'block',\n userSelect: 'none',\n } }, renderTextLayer ? React.createElement(StructTree, null) : null));\n}\n","import React, { useEffect, useMemo } from 'react';\nimport makeCancellable from 'make-cancellable-promise';\nimport invariant from 'tiny-invariant';\nimport warning from 'tiny-warning';\nimport pdfjs from '../pdfjs.js';\nimport usePageContext from '../shared/hooks/usePageContext.js';\nimport useResolver from '../shared/hooks/useResolver.js';\nimport { cancelRunningTask, isCancelException, makePageCallback } from '../shared/utils.js';\nexport default function PageSVG() {\n const pageContext = usePageContext();\n invariant(pageContext, 'Unable to find Page context.');\n const { _className, onRenderSuccess: onRenderSuccessProps, onRenderError: onRenderErrorProps, page, rotate, scale, } = pageContext;\n invariant(page, 'Attempted to render page SVG, but no page was specified.');\n const [svgState, svgDispatch] = useResolver();\n const { value: svg, error: svgError } = svgState;\n /**\n * Called when a page is rendered successfully\n */\n function onRenderSuccess() {\n if (!page) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n if (onRenderSuccessProps) {\n onRenderSuccessProps(makePageCallback(page, scale));\n }\n }\n /**\n * Called when a page fails to render\n */\n function onRenderError() {\n if (!svgError) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n if (isCancelException(svgError)) {\n return;\n }\n warning(false, svgError.toString());\n if (onRenderErrorProps) {\n onRenderErrorProps(svgError);\n }\n }\n const viewport = useMemo(() => page.getViewport({ scale, rotation: rotate }), [page, rotate, scale]);\n function resetSVG() {\n svgDispatch({ type: 'RESET' });\n }\n useEffect(resetSVG, [page, svgDispatch, viewport]);\n function renderSVG() {\n if (!page) {\n return;\n }\n const cancellable = makeCancellable(page.getOperatorList());\n cancellable.promise\n .then((operatorList) => {\n const svgGfx = new pdfjs.SVGGraphics(page.commonObjs, page.objs);\n svgGfx\n .getSVG(operatorList, viewport)\n .then((nextSvg) => {\n // See https://github.com/mozilla/pdf.js/issues/16745\n if (!(nextSvg instanceof SVGElement)) {\n throw new Error('getSVG returned unexpected result.');\n }\n svgDispatch({ type: 'RESOLVE', value: nextSvg });\n })\n .catch((error) => {\n svgDispatch({ type: 'REJECT', error });\n });\n })\n .catch((error) => {\n svgDispatch({ type: 'REJECT', error });\n });\n return () => cancelRunningTask(cancellable);\n }\n useEffect(renderSVG, [page, svgDispatch, viewport]);\n useEffect(() => {\n if (svg === undefined) {\n return;\n }\n if (svg === false) {\n onRenderError();\n return;\n }\n onRenderSuccess();\n }, \n // Ommitted callbacks so they are not called every time they change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [svg]);\n function drawPageOnContainer(element) {\n if (!element || !svg) {\n return;\n }\n // Append SVG element to the main container, if this hasn't been done already\n if (!element.firstElementChild) {\n element.appendChild(svg);\n }\n const { width, height } = viewport;\n svg.setAttribute('width', `${width}`);\n svg.setAttribute('height', `${height}`);\n }\n const { width, height } = viewport;\n return (React.createElement(\"div\", { className: `${_className}__svg`, \n // Note: This cannot be shortened, as we need this function to be called with each render.\n ref: (ref) => drawPageOnContainer(ref), style: {\n display: 'block',\n backgroundColor: 'white',\n overflow: 'hidden',\n width,\n height,\n userSelect: 'none',\n } }));\n}\n","'use client';\nimport React, { useCallback, useEffect, useLayoutEffect, useMemo, useRef } from 'react';\nimport makeCancellable from 'make-cancellable-promise';\nimport clsx from 'clsx';\nimport invariant from 'tiny-invariant';\nimport warning from 'tiny-warning';\nimport pdfjs from '../pdfjs.js';\nimport usePageContext from '../shared/hooks/usePageContext.js';\nimport useResolver from '../shared/hooks/useResolver.js';\nimport { cancelRunningTask } from '../shared/utils.js';\nfunction isTextItem(item) {\n return 'str' in item;\n}\nexport default function TextLayer() {\n const pageContext = usePageContext();\n invariant(pageContext, 'Unable to find Page context.');\n const { customTextRenderer, onGetTextError, onGetTextSuccess, onRenderTextLayerError, onRenderTextLayerSuccess, page, pageIndex, pageNumber, rotate, scale, } = pageContext;\n invariant(page, 'Attempted to load page text content, but no page was specified.');\n const [textContentState, textContentDispatch] = useResolver();\n const { value: textContent, error: textContentError } = textContentState;\n const layerElement = useRef(null);\n const endElement = useRef();\n warning(parseInt(window.getComputedStyle(document.body).getPropertyValue('--react-pdf-text-layer'), 10) === 1, 'TextLayer styles not found. Read more: https://github.com/wojtekmaj/react-pdf#support-for-text-layer');\n /**\n * Called when a page text content is read successfully\n */\n function onLoadSuccess() {\n if (!textContent) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n if (onGetTextSuccess) {\n onGetTextSuccess(textContent);\n }\n }\n /**\n * Called when a page text content failed to read successfully\n */\n function onLoadError() {\n if (!textContentError) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n warning(false, textContentError.toString());\n if (onGetTextError) {\n onGetTextError(textContentError);\n }\n }\n function resetTextContent() {\n textContentDispatch({ type: 'RESET' });\n }\n useEffect(resetTextContent, [page, textContentDispatch]);\n function loadTextContent() {\n if (!page) {\n return;\n }\n const cancellable = makeCancellable(page.getTextContent());\n const runningTask = cancellable;\n cancellable.promise\n .then((nextTextContent) => {\n textContentDispatch({ type: 'RESOLVE', value: nextTextContent });\n })\n .catch((error) => {\n textContentDispatch({ type: 'REJECT', error });\n });\n return () => cancelRunningTask(runningTask);\n }\n useEffect(loadTextContent, [page, textContentDispatch]);\n useEffect(() => {\n if (textContent === undefined) {\n return;\n }\n if (textContent === false) {\n onLoadError();\n return;\n }\n onLoadSuccess();\n }, \n // Ommitted callbacks so they are not called every time they change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [textContent]);\n /**\n * Called when a text layer is rendered successfully\n */\n const onRenderSuccess = useCallback(() => {\n if (onRenderTextLayerSuccess) {\n onRenderTextLayerSuccess();\n }\n }, [onRenderTextLayerSuccess]);\n /**\n * Called when a text layer failed to render successfully\n */\n const onRenderError = useCallback((error) => {\n warning(false, error.toString());\n if (onRenderTextLayerError) {\n onRenderTextLayerError(error);\n }\n }, [onRenderTextLayerError]);\n function onMouseDown() {\n const end = endElement.current;\n if (!end) {\n return;\n }\n end.classList.add('active');\n }\n function onMouseUp() {\n const end = endElement.current;\n if (!end) {\n return;\n }\n end.classList.remove('active');\n }\n const viewport = useMemo(() => page.getViewport({ scale, rotation: rotate }), [page, rotate, scale]);\n function renderTextLayer() {\n if (!page || !textContent) {\n return;\n }\n const { current: layer } = layerElement;\n if (!layer) {\n return;\n }\n layer.innerHTML = '';\n const textContentSource = page.streamTextContent({ includeMarkedContent: true });\n const parameters = {\n container: layer,\n textContentSource,\n viewport,\n };\n const cancellable = pdfjs.renderTextLayer(parameters);\n const runningTask = cancellable;\n cancellable.promise\n .then(() => {\n const end = document.createElement('div');\n end.className = 'endOfContent';\n layer.append(end);\n endElement.current = end;\n const layerChildren = layer.querySelectorAll('[role=\"presentation\"]');\n if (customTextRenderer) {\n let index = 0;\n textContent.items.forEach((item, itemIndex) => {\n if (!isTextItem(item)) {\n return;\n }\n const child = layerChildren[index];\n if (!child) {\n return;\n }\n const content = customTextRenderer(Object.assign({ pageIndex,\n pageNumber,\n itemIndex }, item));\n child.innerHTML = content;\n index += item.str && item.hasEOL ? 2 : 1;\n });\n }\n // Intentional immediate callback\n onRenderSuccess();\n })\n .catch(onRenderError);\n return () => cancelRunningTask(runningTask);\n }\n useLayoutEffect(renderTextLayer, [\n customTextRenderer,\n onRenderError,\n onRenderSuccess,\n page,\n pageIndex,\n pageNumber,\n textContent,\n viewport,\n ]);\n return (\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n React.createElement(\"div\", { className: clsx('react-pdf__Page__textContent', 'textLayer'), onMouseUp: onMouseUp, onMouseDown: onMouseDown, ref: layerElement }));\n}\n","'use client';\nimport React, { useEffect, useMemo, useRef } from 'react';\nimport makeCancellable from 'make-cancellable-promise';\nimport clsx from 'clsx';\nimport invariant from 'tiny-invariant';\nimport warning from 'tiny-warning';\nimport pdfjs from '../pdfjs.js';\nimport useDocumentContext from '../shared/hooks/useDocumentContext.js';\nimport usePageContext from '../shared/hooks/usePageContext.js';\nimport useResolver from '../shared/hooks/useResolver.js';\nimport { cancelRunningTask } from '../shared/utils.js';\nexport default function AnnotationLayer() {\n const documentContext = useDocumentContext();\n invariant(documentContext, 'Unable to find Document context. Did you wrap in ?');\n const pageContext = usePageContext();\n invariant(pageContext, 'Unable to find Page context.');\n const mergedProps = Object.assign(Object.assign({}, documentContext), pageContext);\n const { imageResourcesPath, linkService, onGetAnnotationsError: onGetAnnotationsErrorProps, onGetAnnotationsSuccess: onGetAnnotationsSuccessProps, onRenderAnnotationLayerError: onRenderAnnotationLayerErrorProps, onRenderAnnotationLayerSuccess: onRenderAnnotationLayerSuccessProps, page, pdf, renderForms, rotate, scale = 1, } = mergedProps;\n invariant(page, 'Attempted to load page annotations, but no page was specified.');\n const [annotationsState, annotationsDispatch] = useResolver();\n const { value: annotations, error: annotationsError } = annotationsState;\n const layerElement = useRef(null);\n warning(parseInt(window.getComputedStyle(document.body).getPropertyValue('--react-pdf-annotation-layer'), 10) === 1, 'AnnotationLayer styles not found. Read more: https://github.com/wojtekmaj/react-pdf#support-for-annotations');\n function onLoadSuccess() {\n if (!annotations) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n if (onGetAnnotationsSuccessProps) {\n onGetAnnotationsSuccessProps(annotations);\n }\n }\n function onLoadError() {\n if (!annotationsError) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n warning(false, annotationsError.toString());\n if (onGetAnnotationsErrorProps) {\n onGetAnnotationsErrorProps(annotationsError);\n }\n }\n function resetAnnotations() {\n annotationsDispatch({ type: 'RESET' });\n }\n useEffect(resetAnnotations, [annotationsDispatch, page]);\n function loadAnnotations() {\n if (!page) {\n return;\n }\n const cancellable = makeCancellable(page.getAnnotations());\n const runningTask = cancellable;\n cancellable.promise\n .then((nextAnnotations) => {\n annotationsDispatch({ type: 'RESOLVE', value: nextAnnotations });\n })\n .catch((error) => {\n annotationsDispatch({ type: 'REJECT', error });\n });\n return () => {\n cancelRunningTask(runningTask);\n };\n }\n useEffect(loadAnnotations, [annotationsDispatch, page, renderForms]);\n useEffect(() => {\n if (annotations === undefined) {\n return;\n }\n if (annotations === false) {\n onLoadError();\n return;\n }\n onLoadSuccess();\n }, \n // Ommitted callbacks so they are not called every time they change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [annotations]);\n function onRenderSuccess() {\n if (onRenderAnnotationLayerSuccessProps) {\n onRenderAnnotationLayerSuccessProps();\n }\n }\n function onRenderError(error) {\n warning(false, `${error}`);\n if (onRenderAnnotationLayerErrorProps) {\n onRenderAnnotationLayerErrorProps(error);\n }\n }\n const viewport = useMemo(() => page.getViewport({ scale, rotation: rotate }), [page, rotate, scale]);\n function renderAnnotationLayer() {\n if (!pdf || !page || !annotations) {\n return;\n }\n const { current: layer } = layerElement;\n if (!layer) {\n return;\n }\n const clonedViewport = viewport.clone({ dontFlip: true });\n const annotationLayerParameters = {\n accessibilityManager: null,\n annotationCanvasMap: null,\n div: layer,\n l10n: null,\n page,\n viewport: clonedViewport,\n };\n const renderParameters = {\n annotations,\n annotationStorage: pdf.annotationStorage,\n div: layer,\n // See https://github.com/mozilla/pdf.js/issues/17029\n downloadManager: null,\n imageResourcesPath,\n linkService,\n page,\n renderForms,\n viewport: clonedViewport,\n };\n layer.innerHTML = '';\n try {\n new pdfjs.AnnotationLayer(annotationLayerParameters).render(renderParameters);\n // Intentional immediate callback\n onRenderSuccess();\n }\n catch (error) {\n onRenderError(error);\n }\n return () => {\n // TODO: Cancel running task?\n };\n }\n useEffect(renderAnnotationLayer, \n // Ommitted callbacks so they are not called every time they change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [annotations, imageResourcesPath, linkService, page, renderForms, viewport]);\n return (React.createElement(\"div\", { className: clsx('react-pdf__Page__annotations', 'annotationLayer'), ref: layerElement }));\n}\n","'use client';\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport React, { useEffect, useMemo, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport makeCancellable from 'make-cancellable-promise';\nimport makeEventProps from 'make-event-props';\nimport clsx from 'clsx';\nimport mergeRefs from 'merge-refs';\nimport invariant from 'tiny-invariant';\nimport warning from 'tiny-warning';\nimport PageContext from './PageContext.js';\nimport Message from './Message.js';\nimport PageCanvas from './Page/PageCanvas.js';\nimport PageSVG from './Page/PageSVG.js';\nimport TextLayer from './Page/TextLayer.js';\nimport AnnotationLayer from './Page/AnnotationLayer.js';\nimport { cancelRunningTask, isProvided, makePageCallback } from './shared/utils.js';\nimport useDocumentContext from './shared/hooks/useDocumentContext.js';\nimport useResolver from './shared/hooks/useResolver.js';\nimport { eventProps, isClassName, isPageIndex, isPageNumber, isPdf, isRef, isRenderMode, isRotate, } from './shared/propTypes.js';\nconst defaultScale = 1;\nconst Page = function Page(props) {\n const documentContext = useDocumentContext();\n invariant(documentContext, 'Unable to find Document context. Did you wrap in ?');\n const mergedProps = Object.assign(Object.assign({}, documentContext), props);\n const { _className = 'react-pdf__Page', _enableRegisterUnregisterPage = true, canvasBackground, canvasRef, children, className, customRenderer: CustomRenderer, customTextRenderer, devicePixelRatio, error = 'Failed to load the page.', height, inputRef, loading = 'Loading page…', noData = 'No page specified.', onGetAnnotationsError: onGetAnnotationsErrorProps, onGetAnnotationsSuccess: onGetAnnotationsSuccessProps, onGetStructTreeError: onGetStructTreeErrorProps, onGetStructTreeSuccess: onGetStructTreeSuccessProps, onGetTextError: onGetTextErrorProps, onGetTextSuccess: onGetTextSuccessProps, onLoadError: onLoadErrorProps, onLoadSuccess: onLoadSuccessProps, onRenderAnnotationLayerError: onRenderAnnotationLayerErrorProps, onRenderAnnotationLayerSuccess: onRenderAnnotationLayerSuccessProps, onRenderError: onRenderErrorProps, onRenderSuccess: onRenderSuccessProps, onRenderTextLayerError: onRenderTextLayerErrorProps, onRenderTextLayerSuccess: onRenderTextLayerSuccessProps, pageIndex: pageIndexProps, pageNumber: pageNumberProps, pdf, registerPage, renderAnnotationLayer: renderAnnotationLayerProps = true, renderForms = false, renderMode = 'canvas', renderTextLayer: renderTextLayerProps = true, rotate: rotateProps, scale: scaleProps = defaultScale, unregisterPage, width } = mergedProps, otherProps = __rest(mergedProps, [\"_className\", \"_enableRegisterUnregisterPage\", \"canvasBackground\", \"canvasRef\", \"children\", \"className\", \"customRenderer\", \"customTextRenderer\", \"devicePixelRatio\", \"error\", \"height\", \"inputRef\", \"loading\", \"noData\", \"onGetAnnotationsError\", \"onGetAnnotationsSuccess\", \"onGetStructTreeError\", \"onGetStructTreeSuccess\", \"onGetTextError\", \"onGetTextSuccess\", \"onLoadError\", \"onLoadSuccess\", \"onRenderAnnotationLayerError\", \"onRenderAnnotationLayerSuccess\", \"onRenderError\", \"onRenderSuccess\", \"onRenderTextLayerError\", \"onRenderTextLayerSuccess\", \"pageIndex\", \"pageNumber\", \"pdf\", \"registerPage\", \"renderAnnotationLayer\", \"renderForms\", \"renderMode\", \"renderTextLayer\", \"rotate\", \"scale\", \"unregisterPage\", \"width\"]);\n const [pageState, pageDispatch] = useResolver();\n const { value: page, error: pageError } = pageState;\n const pageElement = useRef(null);\n invariant(pdf, 'Attempted to load a page, but no document was specified.');\n const pageIndex = isProvided(pageNumberProps) ? pageNumberProps - 1 : pageIndexProps !== null && pageIndexProps !== void 0 ? pageIndexProps : null;\n const pageNumber = pageNumberProps !== null && pageNumberProps !== void 0 ? pageNumberProps : (isProvided(pageIndexProps) ? pageIndexProps + 1 : null);\n const rotate = rotateProps !== null && rotateProps !== void 0 ? rotateProps : (page ? page.rotate : null);\n const scale = useMemo(() => {\n if (!page) {\n return null;\n }\n // Be default, we'll render page at 100% * scale width.\n let pageScale = 1;\n // Passing scale explicitly null would cause the page not to render\n const scaleWithDefault = scaleProps !== null && scaleProps !== void 0 ? scaleProps : defaultScale;\n // If width/height is defined, calculate the scale of the page so it could be of desired width.\n if (width || height) {\n const viewport = page.getViewport({ scale: 1, rotation: rotate });\n if (width) {\n pageScale = width / viewport.width;\n }\n else if (height) {\n pageScale = height / viewport.height;\n }\n }\n return scaleWithDefault * pageScale;\n }, [height, page, rotate, scaleProps, width]);\n function hook() {\n return () => {\n if (!isProvided(pageIndex)) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n if (_enableRegisterUnregisterPage && unregisterPage) {\n unregisterPage(pageIndex);\n }\n };\n }\n useEffect(hook, [_enableRegisterUnregisterPage, pdf, pageIndex, unregisterPage]);\n /**\n * Called when a page is loaded successfully\n */\n function onLoadSuccess() {\n if (onLoadSuccessProps) {\n if (!page || !scale) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n onLoadSuccessProps(makePageCallback(page, scale));\n }\n if (_enableRegisterUnregisterPage && registerPage) {\n if (!isProvided(pageIndex) || !pageElement.current) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n registerPage(pageIndex, pageElement.current);\n }\n }\n /**\n * Called when a page failed to load\n */\n function onLoadError() {\n if (!pageError) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n warning(false, pageError.toString());\n if (onLoadErrorProps) {\n onLoadErrorProps(pageError);\n }\n }\n function resetPage() {\n pageDispatch({ type: 'RESET' });\n }\n useEffect(resetPage, [pageDispatch, pdf, pageIndex]);\n function loadPage() {\n if (!pdf || !pageNumber) {\n return;\n }\n const cancellable = makeCancellable(pdf.getPage(pageNumber));\n const runningTask = cancellable;\n cancellable.promise\n .then((nextPage) => {\n pageDispatch({ type: 'RESOLVE', value: nextPage });\n })\n .catch((error) => {\n pageDispatch({ type: 'REJECT', error });\n });\n return () => cancelRunningTask(runningTask);\n }\n useEffect(loadPage, [pageDispatch, pdf, pageIndex, pageNumber, registerPage]);\n useEffect(() => {\n if (page === undefined) {\n return;\n }\n if (page === false) {\n onLoadError();\n return;\n }\n onLoadSuccess();\n }, \n // Ommitted callbacks so they are not called every time they change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [page, scale]);\n const childContext = useMemo(() => \n // Technically there cannot be page without pageIndex, pageNumber, rotate and scale, but TypeScript doesn't know that\n page && isProvided(pageIndex) && pageNumber && isProvided(rotate) && isProvided(scale)\n ? {\n _className,\n canvasBackground,\n customTextRenderer,\n devicePixelRatio,\n onGetAnnotationsError: onGetAnnotationsErrorProps,\n onGetAnnotationsSuccess: onGetAnnotationsSuccessProps,\n onGetStructTreeError: onGetStructTreeErrorProps,\n onGetStructTreeSuccess: onGetStructTreeSuccessProps,\n onGetTextError: onGetTextErrorProps,\n onGetTextSuccess: onGetTextSuccessProps,\n onRenderAnnotationLayerError: onRenderAnnotationLayerErrorProps,\n onRenderAnnotationLayerSuccess: onRenderAnnotationLayerSuccessProps,\n onRenderError: onRenderErrorProps,\n onRenderSuccess: onRenderSuccessProps,\n onRenderTextLayerError: onRenderTextLayerErrorProps,\n onRenderTextLayerSuccess: onRenderTextLayerSuccessProps,\n page,\n pageIndex,\n pageNumber,\n renderForms,\n renderTextLayer: renderTextLayerProps,\n rotate,\n scale,\n }\n : null, [\n _className,\n canvasBackground,\n customTextRenderer,\n devicePixelRatio,\n onGetAnnotationsErrorProps,\n onGetAnnotationsSuccessProps,\n onGetStructTreeErrorProps,\n onGetStructTreeSuccessProps,\n onGetTextErrorProps,\n onGetTextSuccessProps,\n onRenderAnnotationLayerErrorProps,\n onRenderAnnotationLayerSuccessProps,\n onRenderErrorProps,\n onRenderSuccessProps,\n onRenderTextLayerErrorProps,\n onRenderTextLayerSuccessProps,\n page,\n pageIndex,\n pageNumber,\n renderForms,\n renderTextLayerProps,\n rotate,\n scale,\n ]);\n const eventProps = useMemo(() => makeEventProps(otherProps, () => page ? (scale ? makePageCallback(page, scale) : undefined) : page), [otherProps, page, scale]);\n const pageKey = `${pageIndex}@${scale}/${rotate}`;\n const pageKeyNoScale = `${pageIndex}/${rotate}`;\n function renderMainLayer() {\n switch (renderMode) {\n case 'custom': {\n invariant(CustomRenderer, `renderMode was set to \"custom\", but no customRenderer was passed.`);\n return React.createElement(CustomRenderer, { key: `${pageKey}_custom` });\n }\n case 'none':\n return null;\n case 'svg':\n return React.createElement(PageSVG, { key: `${pageKeyNoScale}_svg` });\n case 'canvas':\n default:\n return React.createElement(PageCanvas, { key: `${pageKey}_canvas`, canvasRef: canvasRef });\n }\n }\n function renderTextLayer() {\n if (!renderTextLayerProps) {\n return null;\n }\n return React.createElement(TextLayer, { key: `${pageKey}_text` });\n }\n function renderAnnotationLayer() {\n if (!renderAnnotationLayerProps) {\n return null;\n }\n /**\n * As of now, PDF.js 2.0.943 returns warnings on unimplemented annotations in SVG mode.\n * Therefore, as a fallback, we render \"traditional\" AnnotationLayer component.\n */\n return React.createElement(AnnotationLayer, { key: `${pageKey}_annotations` });\n }\n function renderChildren() {\n return (React.createElement(PageContext.Provider, { value: childContext },\n renderMainLayer(),\n renderTextLayer(),\n renderAnnotationLayer(),\n children));\n }\n function renderContent() {\n if (!pageNumber) {\n return React.createElement(Message, { type: \"no-data\" }, typeof noData === 'function' ? noData() : noData);\n }\n if (pdf === null || page === undefined || page === null) {\n return (React.createElement(Message, { type: \"loading\" }, typeof loading === 'function' ? loading() : loading));\n }\n if (pdf === false || page === false) {\n return React.createElement(Message, { type: \"error\" }, typeof error === 'function' ? error() : error);\n }\n return renderChildren();\n }\n return (React.createElement(\"div\", Object.assign({ className: clsx(_className, className), \"data-page-number\": pageNumber, ref: mergeRefs(inputRef, pageElement), style: {\n ['--scale-factor']: `${scale}`,\n backgroundColor: canvasBackground || 'white',\n position: 'relative',\n minWidth: 'min-content',\n minHeight: 'min-content',\n } }, eventProps), renderContent()));\n};\nconst isFunctionOrNode = PropTypes.oneOfType([PropTypes.func, PropTypes.node]);\nPage.propTypes = Object.assign(Object.assign({}, eventProps), { canvasBackground: PropTypes.string, canvasRef: isRef, children: PropTypes.node, className: isClassName, customRenderer: PropTypes.func, customTextRenderer: PropTypes.func, devicePixelRatio: PropTypes.number, error: isFunctionOrNode, height: PropTypes.number, imageResourcesPath: PropTypes.string, inputRef: isRef, loading: isFunctionOrNode, noData: isFunctionOrNode, onGetTextError: PropTypes.func, onGetTextSuccess: PropTypes.func, onLoadError: PropTypes.func, onLoadSuccess: PropTypes.func, onRenderError: PropTypes.func, onRenderSuccess: PropTypes.func, onRenderTextLayerError: PropTypes.func, onRenderTextLayerSuccess: PropTypes.func, pageIndex: isPageIndex, pageNumber: isPageNumber, pdf: isPdf, renderAnnotationLayer: PropTypes.bool, renderForms: PropTypes.bool, renderMode: isRenderMode, renderTextLayer: PropTypes.bool, rotate: isRotate, scale: PropTypes.number, width: PropTypes.number });\nexport default Page;\n","import pdfjs from './pdfjs.js';\nimport Document from './Document.js';\nimport Outline from './Outline.js';\nimport Page from './Page.js';\nimport Thumbnail from './Thumbnail.js';\nimport useDocumentContext from './shared/hooks/useDocumentContext.js';\nimport useOutlineContext from './shared/hooks/useOutlineContext.js';\nimport usePageContext from './shared/hooks/usePageContext.js';\nimport PasswordResponses from './PasswordResponses.js';\nimport { displayWorkerWarning } from './shared/utils.js';\ndisplayWorkerWarning();\npdfjs.GlobalWorkerOptions.workerSrc = 'pdf.worker.js';\nexport { pdfjs, Document, Outline, Page, Thumbnail, useDocumentContext, useOutlineContext, usePageContext, PasswordResponses, };\n","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t
    \n \n ) : (\n
    \n
    {props.file_name}
    \n
    \n {currentPageNum === 0 ? (\n
    \n \n
    \n ) : (\n
    scrollToPage(currentPageNum)}>\n \n
    \n )}\n
    \n {currentPageNum + 1}/{totalPages}\n
    \n {currentPageNum === totalPages - 1 ? (\n
    \n \n
    \n ) : (\n
    scrollToPage(currentPageNum + 2)}>\n \n
    \n )}\n
    \n
    \n {\n if (!disabledFlag) {\n handlePdfDownload();\n }\n }}\n width={20}\n height={20}\n />\n
    \n
    \n )}\n\n {downloadErrMessage && (\n
    \n {downloadErrMessage}\n
    setDownloadErrMessage(\"\")} style={{ cursor: \"pointer\", marginLeft: \"10px\" }}>\n \n
    \n
    \n )}\n\n {!errMessage && (\n \n \n {totalPages && (\n (\n
    \n \n {t(\"pdfMorePageLoading\")}\n
    \n }\n onRenderSuccess={() => loadingStop(index + 1)}\n >\n {isPositionData && (\n <>\n {polygonList.map((polygon, i) => (\n <>\n {polygon.pageNumber === index + 1 && (\n \n )}\n \n ))}\n \n )}\n \n \n )}\n />\n )}\n
    \n \n )}\n \n );\n};\n\nKnowledgeSourceReadView.propTypes = {\n file_name: PropTypes.string,\n source_link: PropTypes.string,\n source_code: PropTypes.string,\n positions: PropTypes.array,\n download_url: PropTypes.string,\n};\n","// @ts-nocheck\nimport React from \"react\";\nimport PropTypes from \"prop-types\";\nimport chatBotModalStyle from \"./ChatBotModal.module.scss\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const ProcedurePopup = (props) => {\n const { t } = useTranslation(\"translation\", { keyPrefix: \"ProcedurePopup\" });\n const { steps, url, closeRef } = props;\n return (\n <>\n
    \n
    \n {steps.map((step, index) => (\n
    \n
    {`${index + 1}.`}
    \n
    {step}
    \n
    \n ))}\n
    \n
    \n \n
    \n {t(\"detail\")}\n \n {t(\"here\")}\n \n
    \n
    \n
    \n \n );\n};\n\nProcedurePopup.propTypes = {\n steps: PropTypes.array,\n url: PropTypes.string,\n closeRef: PropTypes.func,\n};\n","// @ts-nocheck\nimport React, { useState, useEffect, useRef } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { getImageUrl } from \"../../../commons/assets_path\";\nimport style from \"./IntegrationComponent.module.scss\";\nimport { ProcedurePopup } from \"./ProcedurePopup\";\nimport SearchFormStyle from \"./SearchForm.module.scss\";\nimport axios from \"axios\";\naxios.defaults.headers.common[\"X-Requested-With\"] = \"XMLHttpRequest\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const IntegrationComponent = (props) => {\n const [disabledFlag, setDisabledFlag] = useState(false);\n const [showDescriptionDefaultInstructionPrompt, setShowDescriptionDefaultInstructionPrompt] = useState(false);\n const [useSlackProcedurePopup, setUseSlackProcedurePopup] = useState(false);\n const [useTeamsProcedurePopup, setUseTeamsProcedurePopup] = useState(false);\n const [useChatworkProcedurePopup, setUseChatworkProcedurePopup] = useState(false);\n const [updateErrorMessage, setUpdateErrorMessage] = useState(\"\");\n const [updateSuccessMessage, setUpdateSuccessMessage] = useState(\"\");\n const closeRef = useRef();\n const { t } = useTranslation(\"translation\", { keyPrefix: \"IntegrationComponent\" });\n\n const [showSlackDisconnectConfirm, setShowSlackDisconnectConfirm] = useState(false);\n const [showTeamsDisconnectConfirm, setShowTeamsDisconnectConfirm] = useState(false);\n const [showChatworkDisconnectConfirm, setShowChatworkDisconnectConfirm] = useState(false);\n const [instructionPromptValue, setInstructionPromptValue] = useState(\"\");\n\n const disconnectConfirmSetters = {\n slack: setShowSlackDisconnectConfirm,\n teams: setShowTeamsDisconnectConfirm,\n chatwork: setShowChatworkDisconnectConfirm,\n };\n const disconnectConfirmGetters = {\n slack: showSlackDisconnectConfirm,\n teams: showTeamsDisconnectConfirm,\n chatwork: showChatworkDisconnectConfirm,\n };\n\n const openWindow = () => {\n window.open(\n \"https://chromewebstore.google.com/detail/yoom%E3%83%8A%E3%83%AC%E3%83%83%E3%82%B8/nldgbphmmcghbidmhdopibkflaooplfe\",\n \"_blank\",\n );\n };\n\n const toggleProcedurePopup = (serviceCode, isShow) => {\n if (serviceCode === \"slack\") {\n setUseSlackProcedurePopup(isShow);\n setUseTeamsProcedurePopup(false);\n setUseChatworkProcedurePopup(false);\n } else if (serviceCode === \"teams\") {\n setUseTeamsProcedurePopup(isShow);\n setUseSlackProcedurePopup(false);\n setUseChatworkProcedurePopup(false);\n } else if (serviceCode === \"chatwork\") {\n setUseChatworkProcedurePopup(isShow);\n setUseSlackProcedurePopup(false);\n setUseTeamsProcedurePopup(false);\n }\n };\n\n const handleChatLinkageClick = (url) => {\n window.open(url, \"knowledgeChatLinkageOauthIntegrationWindow\", \"width=980,height=699\");\n };\n\n const deleteChatLinkage = async (service) => {\n setDisabledFlag(true);\n\n await axios\n .delete(service.url, {\n headers: {\n \"X-CSRF-Token\": document.getElementsByName(\"csrf-token\")[0].content,\n \"Content-Type\": \"application/json\",\n },\n })\n .then((res) => {\n props.updateChatLinkageAppStatus(false, service.service_code, res.data.new_path, null);\n setUpdateSuccessMessage(t(\"disconnectSuccess\"));\n setDisabledFlag(false);\n })\n .catch((error) => {\n setUpdateErrorMessage(t(\"disconnectFail\"));\n setDisabledFlag(false);\n });\n };\n const setDefaultInstructionPrompt = async () => {\n const url = `/${props.current_client.code}/settings/knowledge_client_mail_generate_setting/show`;\n await axios.post(url).then((res) => {\n setInstructionPromptValue(res.data.knowledge_client_mail_generate_setting.default_instruction_prompt);\n });\n };\n\n const updateOrCreateDefaultInstructionPrompt = async () => {\n const params = {\n knowledge_client_mail_generate_setting: {\n default_instruction_prompt: instructionPromptValue,\n },\n };\n const url = `/${props.current_client.code}/settings/knowledge_client_mail_generate_setting`;\n await axios\n .post(url, params)\n .then((res) => {\n setUpdateSuccessMessage(t(\"mailGenerateSetting.success\"));\n })\n .catch((error) => {\n setUpdateErrorMessage(error.response.data.messege.join(\"\\n\"));\n });\n };\n\n useEffect(() => {\n props.current_client && setDefaultInstructionPrompt();\n }, []);\n\n return (\n <>\n
    \n
    \n {updateSuccessMessage && (\n
    \n
    {updateSuccessMessage}
    \n
    \n )}\n {updateErrorMessage && (\n
    \n
    {updateErrorMessage}
    \n
    \n )}\n
    \n
    \n
    {props.title}
    \n
    \n
    \n
    \n \n
    \n
    \n {props.chatLinkageApps?.length > 0 ? (\n <>\n {props.chatLinkageApps?.map((service, i) => (\n
    \n
    \n \n
    \n
    \n {service.service_name}\n {service.is_linked && (\n
    {service.workspace_name}
    \n )}\n
    \n\n {\n toggleProcedurePopup(service.service_code, false);\n }}\n >\n
    \n {\n toggleProcedurePopup(service.service_code, true);\n }}\n style={{ cursor: \"pointer\" }}\n >\n \n \n {t(\"usageProcedure\")}\n \n
    \n {useSlackProcedurePopup && service.service_code === \"slack\" ? (\n \n ) : useTeamsProcedurePopup && service.service_code === \"teams\" ? (\n \n ) : useChatworkProcedurePopup && service.service_code === \"chatwork\" ? (\n \n ) : null}\n
    \n {service.is_linked ? (\n
    \n {disconnectConfirmGetters[service.service_code] && (\n
    \n
    \n

    {t(\"disconnectConfirm\")}

    \n
    \n
    \n \n
    \n
    \n )}\n {\n if (window.confirm(t(\"disconnectConfirm\"))) {\n deleteChatLinkage(service);\n }\n }}\n className={`${SearchFormStyle.yoomKnowledgeSettingContentItemAddDoneBtn}`}\n disabled={disabledFlag}\n onMouseEnter={() => disconnectConfirmSetters[service.service_code](true)}\n onMouseLeave={() => disconnectConfirmSetters[service.service_code](false)}\n >\n \n \n {t(\"connected\")}\n \n \n
    {t(\"disconnectConform\")}
    \n
    \n ) : (\n handleChatLinkageClick(service.url)}\n >\n {t(\"connect\")}\n
    \n )}\n
    \n
    \n ))}\n \n ) : (\n <>\n
    \n
    \n \n
    \n
    {t(\"chromeExtension\")}
    \n
    openWindow()}>\n {t(\"install\")}\n \n
    \n
    \n
    \n {showDescriptionDefaultInstructionPrompt && (\n
    \n
    \n
    \n
    \n {t(\"mailGenerateSetting.descriptionDefaultInstructionPrompt\")}\n
    \n
    \n
    \n
    \n )}\n setShowDescriptionDefaultInstructionPrompt(true)}\n onMouseLeave={() => setShowDescriptionDefaultInstructionPrompt(false)}\n >\n \n {t(\"mailGenerateSetting.defaultInstructionPrompt\")}\n \n \n
    \n setInstructionPromptValue(e.target.value)}\n value={instructionPromptValue}\n >\n updateOrCreateDefaultInstructionPrompt()}\n >\n {t(\"mailGenerateSetting.submit\")}\n \n \n \n )}\n \n \n \n );\n};\n\nIntegrationComponent.propTypes = {\n chatLinkageApps: PropTypes.array,\n updateChatLinkageAppStatus: PropTypes.func,\n chat_linkage_procedure: PropTypes.object,\n title: PropTypes.string,\n content: PropTypes.string,\n image_path: PropTypes.string,\n current_client: PropTypes.object,\n};\n","// @ts-nocheck\nimport React, { useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport style from \"./KnowledgeBaseIntegrationView.module.scss\";\nimport { IntegrationComponent } from \"./IntegrationComponent\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const KnowledgeBaseIntegrationView = (props) => {\n const [chatLinkageApps, setChatLinkageApps] = useState(props.chatLinkageApps || []);\n const { t } = useTranslation(\"translation\", { keyPrefix: \"KnowledgeBaseIntegrationView\" });\n\n const updateChatLinkageAppStatus = (linkageStatus, serviceCode, newUrl, workspaceName) => {\n setChatLinkageApps((prevApps) => {\n return prevApps.map((app) => {\n if (app.service_code === serviceCode) {\n return {\n ...app,\n is_linked: linkageStatus,\n url: newUrl,\n workspace_name: workspaceName,\n };\n }\n return app;\n });\n });\n };\n\n return (\n <>\n
    \n
    \n

    {t(\"title\")}

    \n

    {t(\"subtitle\")}

    \n
    \n \n {chatLinkageApps?.length > 0 && props.isViewChatLinkageApps ? (\n \n ) : null}\n
    \n \n );\n};\n\nKnowledgeBaseIntegrationView.propTypes = {\n chatLinkageApps: PropTypes.array,\n chat_linkage_procedure: PropTypes.object,\n isViewChatLinkageApps: PropTypes.bool,\n current_client: PropTypes.object,\n};\n","import ReactOnRails from \"react-on-rails\";\nimport { SearchForm } from \"../../components/templates/knowledges/SearchForm\";\nimport { SettingModal } from \"../../components/templates/knowledges/SettingModal\";\nimport { KnowledgeBaseShareView } from \"../../components/templates/knowledges/KnowledgeBaseShareView\";\nimport { KnowledgeBaseSearchLogView } from \"../../components/templates/knowledges/KnowledgeBaseSearchLogView\";\nimport { KnowledgeBaseSearchLogDetailView } from \"../../components/templates/knowledges/KnowledgeBaseSearchLogDetailView\";\nimport { KnowledgeSourceReadView } from \"../../components/templates/knowledges/KnowledgeSourceReadView\";\nimport { KnowledgeBaseIntegrationView } from \"../../components/templates/knowledges/KnowledgeBaseIntegrationView\";\nimport { LoadBtn } from \"../../components/common/LoadBtn/LoadBtn\";\n\nReactOnRails.register({\n SearchForm,\n SettingModal,\n KnowledgeBaseShareView,\n KnowledgeBaseSearchLogView,\n KnowledgeBaseSearchLogDetailView,\n KnowledgeSourceReadView,\n KnowledgeBaseIntegrationView,\n LoadBtn,\n});\n"],"names":["n","r","i","s","a","c","o","l","e","t","u","f","h","p","d","v","x","g","node","checkLength","base","children","child","isValidElement","data","source","target","newTarget","i18nOptions","stringNode","childrenArray","keepArray","childIndex","childPropsCount","shouldKeepChild","childChildren","content","format","clone","keys","value","targetString","i18n","combinedTOpts","shouldUnescape","emptyChildrenButNeedsHandling","keep","getData","childs","ast","HTML","opts","renderInner","rootReactNode","mappedChildren","mapAST","pushTranslatedJSX","inner","mem","isVoid","cloneElement","Children","props","createElement","reactNode","astNode","reactNodes","translationContent","tmp","isElement","isValidTranslationWithChildren","isEmptyTransWithHTML","isKnownComponent","wrapTextNodes","result","Trans","_ref","count","parent","i18nKey","context","tOptions","values","defaults","components","ns","i18nFromProps","tFromProps","additionalProps","k","reactI18nextOptions","namespaces","nodeAsString","defaultValue","hashTransKey","key","interpolationOverride","translation","comp","Componentized","Fragment","useAsParent","i18nFromContext","defaultNSFromContext","useContext","TransWithoutContext","state","nextProps","updater","prevState","nextState","prevProps","Component","prototype","foundWillMountName","foundWillReceivePropsName","foundWillUpdateName","componentName","newApiName","componentDidUpdate","maybeSnapshot","snapshot","loaderColor","loaderSize","styleColor","style","jsxs","jsx","PropTypes","global","factory","exports","this","adapters","logger","_adapters$logger","_len","messages","_key","_typeof","obj","classCallCheck","instance","Constructor","createClass","defineProperties","descriptor","protoProps","staticProps","now","secondsSince","time","clamp","number","min","max","ConnectionMonitor","connection","_this","_constructor$pollInte","multiplier","interval","_this2","INTERNAL","message_types","protocols","supportedProtocols","indexOf","Connection","consumer","allowReconnect","error","states","eventName","handler","event","_JSON$parse","identifier","message","reason","reconnect","type","extend","object","properties","Subscription","params","mixin","action","SubscriptionGuarantor","subscriptions","subscription","Subscriptions","channelName","channel","callbackName","_this3","args","_len2","_key2","_this4","command","Consumer","url","createWebSocketURL","createConsumer","getConfig","name","element","knowledge","moment","b","j","m","module","csvExportErrorMessage","setShowCsvExportModal","setCsvExportErrorMessage","closeCsvExportModalRef","useRef","handleCsvExportModalClose","knowledges","totalHits","handleShow","newKnowledgeCount","startAnimationFlag","setStartAnimationFlag","client","knowledgeBaseId","initialQuery","handleShowKnowledgeCreate","closeRef","isPopup","setIsPopup","useState","showCsvExportModal","axiosInstance","onClickOuterClose","handleCsvExport","csvExport","res","blob","filename","saveAs","err","useEffect","search","qaSearch","setConversationQuestions","conversationSearch","loading","setLoading","sendFlag","setSendFlag","focusFlag","setFocusFlag","setResponseText","setResultKnowledges","searchCountLimitExceededFlag","isConversationPage","setConversationText","setConversationAnswers","setConversationResultKnowledge","setThreadId","setConversationLoading","sendFunc","text","chatCancelFunc","setText","useAutoResize","initialValue","setValue","textareaRef","textarea","resizeTextarea","resultKnowledges","displayCount","setDisplayCount","moreReadFlag","setMoreReadFlag","moreReadRelatedKnowledge","responseText","iconPath","qaFinished","handleRatingImgClick","searchLogRatingValue","isConversationThread","isQaSearchError","requiredActionMessage","handleClose","knowledgeClientCode","detailKnowledge","deleteKnowledge","detailErrMessage","handleShowKnowledgeEdit","isKnowledgeEditable","fetchMailKnowledgeThreads","extention","_a","knowledgeSourcePreviewPath","_b","convertUrlsToLinks","urlRegex","replacedText","DOMPurify","copyShowKnowledgeDetailUrl","currentUrl","isCreating","validationErrors","handleCloseKnowledgeCreate","createKnowledge","questionText","setQuestionText","questionTextareaRef","answerText","setAnswerText","sourceLinkText","setSourceLinkText","sourceLinkTextareaRef","isUpdating","handleCloseKnowledgeEdit","updateKnowledge","thread","index","conversationText","conversationQuestions","conversationLoading","inputRef","isFocus","setIsFocus","handleFocus","handleBlur","handleInputChange","setKnowledges","setDetailKnowledge","setTotalHits","initLoading","setInitLoading","show","setShow","setNewKnowledgeCount","KnowledgeQaChannelFlag","setKnowledgeQaChannelFlag","setDetailErrMessage","showKnowledgeCreate","setShowKnowledgeCreate","isCreatingKnowledge","setIsCreatingKnowledge","showKnowledgeEdit","setShowKnowledgeEdit","isUpdatingKnowledge","setIsUpdatingKnowledge","knowledgeValidationErrors","setKnowledgeValidationErrors","showMailKnowledgeThreads","setShowMailKnowledgeThreads","mailKnowledgeThreads","setMailKnowledgeThreads","showDefaultMailKnowledgeThread","setShowDefaultMailKnowledgeThread","queryText","setQueryText","setSearchLogRatingValue","conversationSearchLogRatingValues","setConversationSearchLogRatingValues","searchLogIds","setSearchLogIds","setQaFinished","threadId","conversationAnswers","conversationResultKnowledge","setIsQaSearchError","setRequiredActionMessage","scrollButton","knowledgeBasePath","id","fetchDetailKnowledge","handleCloseMailKnowledgeThreads","newRating","updateSearchLog","handleConversationRatingImgClick","prevArray","newArray","initFlag","prevResultKnowledges","prevKnowledges","prevTotalHits","question","answer","sourceLink","createSearchLog","query","rating","observer","entries","entry","observeconversationSearchForm","conversationSearchForm","beforeText","beforeKnowledge","beforeCount","queryParams","knowledgeId","isMailKnowledge","authentificationToken","setPageCategory","setMemberListSuccessMessage","disabledFlag","setDisabledFlag","addMemberErrorMessages","setAddMemberErrorMessages","inviteTextRef","addMember","response","targetMember","editMemberRole","memberListSuccessMessage","setTargetMember","memberListErrorMessages","clientMembers","setClientMembers","canReadMore","setCanReadMore","memberSearchQuery","setMemberSearchQuery","searchTimer","setSearchTimer","getClientMembers","limit","offset","readMore","onInputSearchQuery","newQuery","newTimer","member","currentKnowledgeLicenseCount","nextKnowledgeNextMonthLicenseCount","setTotalKnowledgeLicenseCount","totalKnowledgeLicenseCount","clientMembersCount","licenseChangeSuccessMessage","licenseChangeErrorMessage","contractType","minimumLicenseCount","prevCount","myChatLinkageMembers","myDataSourceApps","isAppManagable","setSelectServiceInfo","setMyAppConnectSuccessMessage","myAppConnectSuccessMessage","updateChatLinkageMemberStatus","filterMyApp","updateErrorMessage","setUpdateErrorMessage","deleteChatLinkageMember","path","serviceCode","updateMyDataSourceApps","dataSorurse","chat_linkage","dataSourse","knowledgeClientId","knowledgeClientName","updateKnowledgeClientName","knowledgeClientIconPath","updateIconPath","updateSuccessMessage","setUpdateSuccessMessage","formData","setFormData","fileInputRef","handleFileChange","file","img","handleImageClick","rollbackIcon","defaultIconPath","clientInfoUpdate","form","newIconPath","selectServiceInfo","id_check_info","connectIdFormRef","connectChatLinkage","textWithLink","id_info_message","link_text","linkedMessage","partnerUpdateKnowledgeLicensePath","setCurrentKnowledgeLicenseCount","setLicenseChangeSuccessMessage","setLicenseChangeErrorMessage","setNextKnowledgeNextMonthLicenseCount","directSellUpdateKnowledgeLicensePath","setPaymentSuccessMessage","setPaymentErrorMessages","paymentErrorMessages","directSellContractPeriod","directSellNextContractPeriod","nextMonthYear","currentDate","year","month","currentMonthYear","knowledgeLicenseChangeForPartner","knowledgeLicenseChangeForDirectSell","setMemberListErrorMessages","setClientMembersCount","deleteLicenseFlag","setDeleteLicenseFlag","memberDelete","newClientMembers","codes","csvUrl","baseUrl","joinedParam","code","className","formName","externalOnClick","disabled","parentLoading","requiredCheck","isloading","buttonClick","locationFlg","requiredItems","item","isForcedTwoFactorAuth","isLoading","setIsLoading","isOtpRequiredForLogin","setIsOtpRequiredForLogin","isOtpSuccess","setIsOtpSuccess","setCodes","qrCode","setQrCode","setMessage","isError","setIsError","setParentLoading","otpAttemptRef","submit","invalidateTwoFactorAuth","refreshRecoveryCode","getEditMemberModal","confirmMessage","secureIps","setSecureIps","formList","setFormList","handleChange","handleAdd","handleSubmit","handleRemove","deleteSecureIp","secureIpId","secureIp","record","idx","isForced","setIsForced","isForcedTwoFactorAuthRef","twoFactorSettingChanged","setTwoFactorSettingChanged","currentPlanPeriodInfo","setPageNumber","isCanceled","_c","billingPortal","isRequestLoading","currentPaymentInfo","currentPlanInfo","learningQuantityInfo","setChangePlanInfo","pageNumber","paymentSuccessMessage","setMinimumLicenseCount","setCurrentPlanPeriodInfo","setCurrentPaymentInfo","nextSchedule","setNextSchedule","changeScheduleSuccessMessage","setChangeScheduleSuccessMessage","inProgress","setInProgress","setIsRequestLoading","setIsCanceled","currentDisplayKnowledgeLicenseCount","setCurrentDisplayKnowledgeLicenseCount","getCurrentPeriodPlan","getCurrentPaymentInfo","getNextSchedule","cancelNextSchedule","initConnect","changePlanInfo","setCurrentPlanInfo","setPaymentPageNumber","previewPlanInfo","setPreviewPlanInfo","isUpgrade","setIsUpgrade","isPreviewLoading","setIsPreviewLoading","isDisabled","setIsDisabled","handleUpdatePlan","updateLearningQuantity","updatePlan","getPreviewPlan","backPaymentPage","_d","_e","_f","cancelPlan","i18keyPrefix","commonTranslation","ApiPath","changeableFields","llmModelSetting","setLlmModelSetting","modelOptions","setModelOptions","recommendedModels","setRecommendedModels","updateFailedMessage","setUpdateFailedMessage","validationErrorMessages","setValidationErrorMessages","setIsUpdating","fetchModelOptions","fetchLlmModelSetting","pageCategory","paymentPageNumber","setMyDataSourceApps","setMyChatLinkageMembers","setKnowledgeClientIconPath","setKnowledgeClientName","handleIconPathUpdate","handleKnowledgeClientNameUpdate","newName","extractedParams","linkageStatus","newUrl","uid","prevMembers","myApp","prevApps","app","extractChatLinkageMember","filteredMember","lastCategory","setUnreadableMembers","readableMembers","setReadableMembers","showForm","setShowForm","selectedMembers","setSelectedMembers","notSelectedMembers","setNotSelectedMembers","inviteButtonEnabled","setInviteButtonEnabled","selectionEnabled","setSelectionEnabled","canReadMoreNotSelectedMembers","setCanReadMoreNotSelectedMembers","timer","setTimer","handleSelectionEnabled","getNotSelectedMembers","offsetNumber","searchNotSelectedMembers","unselectMember","targetId","newNotSelectedMembers","selectMember","isAlreadySelected","inviteMembers","knowledgeClientMemberIds","selectedMember","unreadableMembers","readableTotalCount","setReadableTotalCount","isInputting","setIsInputting","isOnSearch","setIsOnSearch","canReadMoreReadableMembers","setCanReadMoreReadableMembers","canReadMoreUnreadableMembers","setCanReadMoreUnreadableMembers","searchRef","searchMembers","getReadableMembers","getUnreadableMembers","inviteMember","unreadableMember","removeMember","sharedMember","delay","debouncedValue","setDebouncedValue","ratingFormRef","searchLogs","setSearchLogs","canReadMoreSearchLog","setCanReadMoreSearchLog","searchLogQuey","setSearchLogQuey","focusingRatingForm","setFocusingRatingForm","selectedRatingValue","setSelectedRatingValue","selectedStartTerm","setSelectedStartTerm","selectedEndTerm","setSelectedEndTerm","debouncedQuery","queryRatingInputRef","queryStartTermInputRef","queryEndTermInputRef","ratingOptions","handleClickRatingOption","getSearchLogs","raging","start_term","end_term","exportSearchLog","onClickOuterRatingForm","clearTerm","option","log","knowledgeLoading","setKnowledgeLoading","showDetailModal","setShowDetailModal","showCreateModal","setShowCreateModal","showEditModal","setShowEditModal","KnowledgeBasePath","handleShowDetailModal","handleCloseDetailModal","handleCloseCreateModal","handleShowEditModal","handleCloseEditModal","root","__unused_webpack_module","assert","bytesToString","createValidAbsoluteUrl","getModificationDate","getUuid","getVerbosityLevel","info","isArrayBuffer","isArrayEqual","normalizeUnicode","objectFromMap","objectSize","setVerbosityLevel","shadow","string32","stringToBytes","stringToPDFString","stringToUTF8String","unreachable","utf8StringToString","warn","isNodeJS","IDENTITY_MATRIX","FONT_IDENTITY_MATRIX","MAX_IMAGE_SIZE_TO_CACHE","LINE_FACTOR","LINE_DESCENT_FACTOR","BASELINE_FACTOR","RenderingIntentFlag","AnnotationMode","AnnotationEditorPrefix","AnnotationEditorType","AnnotationEditorParamsType","PermissionFlag","TextRenderingMode","ImageKind","AnnotationType","AnnotationReplyType","AnnotationFlag","AnnotationFieldFlag","AnnotationBorderStyleType","AnnotationActionEventType","DocumentActionEventType","PageActionEventType","VerbosityLevel","CMapCompressionType","OPS","PasswordResponses","verbosity","level","msg","cond","_isValidProtocol","options","dots","absoluteUrl","prop","nonSerializable","BaseException","PasswordException","UnknownErrorException","details","InvalidPDFException","MissingPDFException","UnexpectedResponseException","status","FormatError","AbortException","bytes","length","MAX_ARGUMENT_COUNT","strBuf","chunkEnd","chunk","str","map","isLittleEndian","buffer8","isEvalSupported","FeatureTest","hexNumbers","Util","transform","minMax","temp","m1","m2","xt","yt","p1","p2","p3","p4","transpose","first","second","sx","sy","rect","rect1","rect2","xLow","xHigh","yLow","yHigh","x0","y0","x1","y1","x2","y2","x3","y3","tvalues","bounds","t1","t2","b2ac","sqrtb2ac","mt","jlen","PDFStringTranslateTable","encoding","decoder","buffer","ex","ii","arr1","arr2","date","PromiseCapability","__privateAdd","_settled","resolve","reject","__privateSet","__privateGet","NormalizeRegex","NormalizationMap","_","buf","AnnotationPrefix","src","task","docId","httpHeaders","withCredentials","password","rangeTransport","rangeChunkSize","worker","docBaseUrl","cMapUrl","cMapPacked","CMapReaderFactory","standardFontDataUrl","StandardFontDataFactory","ignoreErrors","maxImageSize","isOffscreenCanvasSupported","canvasMaxAreaInBytes","disableFontFace","fontExtraProperties","enableXfa","ownerDocument","disableRange","disableStream","disableAutoFetch","pdfBug","useSystemFonts","useWorkerFetch","canvasFactory","filterFactory","styleElement","transportFactory","workerParams","fetchDocParams","transportParams","workerIdPromise","networkStreamPromise","networkStream","workerId","messageHandler","transport","val","_PDFDocumentLoadingTask","__privateWrapper","_docId","initialData","progressiveDone","contentDispositionFilename","listener","begin","loaded","total","end","pdfInfo","js","jsArr","ref","keepLoadedFonts","pageIndex","pageInfo","_tryCleanup","_abortDelayedCleanup","_delayedCleanupTimeout","_pendingCleanup","scale","rotation","offsetX","offsetY","dontFlip","intent","intentArgs","canvasContext","viewport","annotationMode","background","optionalContentConfigPromise","annotationCanvasMap","pageColors","printAnnotationStorage","__privateMethod","abortDelayedCleanup_fn","intentState","intentPrint","complete","internalRenderTask","tryCleanup_fn","renderTask","transparency","optionalContentConfig","operatorListChanged","opListTask","includeMarkedContent","disableNormalization","textContent","xfa","readableStream","pump","reader","done","waitOn","resetStats","success","cacheKey","operatorListChunk","renderingIntent","annotationStorageSerializable","transfers","force","curCacheKey","curIntentState","delayed","renderTasks","operatorList","_listeners","_deferred","transfer","require","pdfjsFilePath","otherUrl","other","wrapper","port","_workerPorts","workerSrc","terminateEarly","onWorkerError","sendTest","testObj","WorkerMessageHandler","workerHandler","cachedPort","loadingTask","_cacheSimpleMethod","_methodPromises","_pageCache","_pagePromises","_passwordCapability","isOpList","page","terminated","sink","evt","readyReason","headersCapability","fullReader","rangeReader","exception","updatePassword","exportedData","exportedError","inspectFont","font","imageData","pageProxy","width","height","cachedPromise","promise","cacheSimpleMethod_fn","results","_ensureObj","_objs","objId","callback","ensureObj_fn","_internalRenderTask","extraDelay","separateAnnots","_InternalRenderTask","objs","commonObjs","useRequestAnimationFrame","_canvasInUse","__w_pdfjs_require__","_util","_editor","_murmurhash","SerializableEmpty","AnnotationStorage","_setModified","_modified","_storage","modified","setModified_fn","PrintAnnotationStorage","hash","hasBitmap","serialized","_serializable","_tools","_display_utils","_AnnotationEditor","parameters","_translate","_getBaseTranslation","_getRotationMatrix","_createResizers","_resizerPointerdown","_resizerPointermove","_setAltTextButtonState","_setUpDragSession","_altText","_altTextDecorative","_altTextButton","_altTextTooltip","_altTextTooltipTimeout","_keepAspectRatio","_resizersDiv","_boundFocusin","_boundFocusout","_hasBeenClicked","_isEditing","_isInEditMode","__publicField","_isDraggable","_zIndex","pageWidth","pageHeight","pageX","pageY","editor","fakeEditor","FakeEditor","l10n","_type","_value","mime","y","tx","ty","translate_fn","parentWidth","parentHeight","bx","by","getBaseTranslation_fn","_rotatePoint","rotatePoint_fn","parentScale","scaledWidth","scaledHeight","widthPercent","heightPercent","altText","setAltTextButtonState_fn","decorative","isMac","setUpDragSession_fn","shiftX","shiftY","isForCopying","uiManager","createResizers_fn","aspectRatio","AnnotationEditor","_borderLineWidth","angle","getRotationMatrix_fn","classes","div","resizerPointerdown_fn","boundResizerPointermove","resizerPointermove_fn","savedDraggable","pointerMoveOptions","savedX","savedY","savedWidth","savedHeight","savedParentCursor","savedCursor","pointerUpCallback","newX","newY","newWidth","newHeight","minWidth","minHeight","round","rotationMatrix","transf","invRotationMatrix","invTransf","getPoint","getOpposite","isDiagonal","isHorizontal","w","point","oppositePoint","transfOppositePoint","oppositeX","oppositeY","ratioX","ratioY","deltaX","deltaY","oldDiag","button","tooltip","DELAY_TO_SHOW_TOOLTIP","isSelected","pointerMoveCallback","bindEvents","opacityToHex","names","opacity","IdManager","_id","_ImageManager","_get","_baseId","_cache","svg","ctx","image","lastModified","size","get_fn","ImageManager","rawData","mustRemoveAspectRatioPromise","fileReader","imageElement","imagePromise","CommandManager","maxSize","_commands","_locked","_maxSize","_position","cmd","undo","mustExec","overwriteIfSameType","keepUndo","save","next","KeyboardManager","callbacks","_serialize","isMacKey","self","serialize_fn","bubbles","checker","_ColorManager","colors","color","rgb","RGB","ColorManager","_AnnotationEditorUIManager","container","viewer","altTextManager","eventBus","pdfDocument","_addFocusManager","_removeFocusManager","_addKeyboardManager","_removeKeyboardManager","_addCopyPasteListeners","_removeCopyPasteListeners","_dispatchUpdateStates","_dispatchUpdateUI","_enableAll","_disableAll","_addEditorToLayer","_isEmpty","_selectEditors","_activeEditor","_allEditors","_allLayers","_altTextManager","_annotationStorage","_commandManager","_currentPageIndex","_deletedAnnotationsElementIds","_draggingEditors","_editorTypes","_editorsToRescale","_filterFactory","_idManager","_isEnabled","_isWaiting","_lastActiveElement","_mode","_selectedEditors","_pageColors","_boundBlur","_boundFocus","_boundCopy","_boundCut","_boundPaste","_boundKeydown","_boundOnEditingAction","_boundOnPageChanging","_boundOnScaleChanging","_boundOnRotationChanging","_previousStates","_translation","_translationTimeoutId","_container","_viewer","proto","arrowChecker","activeElement","small","big","removeKeyboardManager_fn","removeFocusManager_fn","layer","layerX","layerY","pagesRotation","lastEditor","lastActiveElement","addKeyboardManager_fn","addCopyPasteListeners_fn","removeCopyPasteListeners_fn","editors","clipboardData","editorType","newEditors","deserializedEditor","addEditorToLayer_fn","selectEditors_fn","isEditing","addFocusManager_fn","dispatchUpdateStates_fn","isEmpty_fn","types","dispatchUpdateUI_fn","mode","editId","disableAll_fn","enableAll_fn","mustWait","annotationElementId","ed","noCommit","totalX","totalY","TIME_TO_WAIT","mustBeAddedInUndoStack","move","newPageIndex","savedPageIndex","AnnotationEditorUIManager","deprecated","getColorValues","getCurrentTransform","getCurrentTransformInverse","getFilenameFromUrl","getPdfFilenameFromUrl","getRGB","getXfaPageViewport","isDataScheme","isPdfFile","isValidFetchUrl","loadScript","noContextMenu","setLayerDimensions","_base_factory","SVG_NS","_PixelsPerInch","PixelsPerInch","DOMFilterFactory","_defs","_addGrayConversion","_createFilter","_appendFeFunc","_addTransferMapConversion","_getRGB","__cache","__defs","_document","_hcmFilter","_hcmKey","_hcmUrl","_hcmHighlightFilter","_hcmHighlightKey","_hcmHighlightUrl","maps","cache_get","tableR","tableG","tableB","mapR","mapG","mapB","bufferR","bufferG","bufferB","filter","createFilter_fn","addTransferMapConversion_fn","fgColor","bgColor","fgRGB","getRGB_fn","bgRGB","defs_get","table","addGrayConversion_fn","getSteps","start","arr","newFgColor","newBgColor","fgGray","bgGray","newFgRGB","newBgRGB","fg","bg","step","newStart","newStep","prev","keepHCM","feColorMatrix","appendFeFunc_fn","feComponentTransfer","func","feFunc","rTable","gTable","bTable","DOMCanvasFactory","canvas","fetchData","asTypedArray","request","DOMCMapReaderFactory","compressionType","DOMStandardFontDataFactory","DOMSVGFactory","PageViewport","viewBox","centerX","centerY","rotateA","rotateB","rotateC","rotateD","offsetCanvasX","offsetCanvasY","topLeft","bottomRight","RenderingCancelledException","onlyStripPath","defaultFilename","reURI","reFilename","splitURI","suggestedFilename","StatTimer","outBuf","longest","protocol","removeScriptElement","script","pdfDateStringRegex","PDFDateString","input","matches","day","hour","minute","universalTimeRelation","offsetHour","offsetMinute","xfaPage","colorRGB","span","computedColor","mustFlip","mustRotate","useRound","widthStr","heightStr","BaseFilterFactory","BaseCanvasFactory","canvasAndContext","BaseCMapReaderFactory","isCompressed","BaseStandardFontDataFactory","BaseSVGFactory","skipDimensions","SEED","MASK_HIGH","MASK_LOW","MurmurHash3_64","seed","blockCounts","tailLength","dataUint32","k1","k2","h1","h2","C1","C2","C1_LOW","C2_LOW","FontLoader","_systemFonts","nativeFontFace","rule","styleSheet","loadedName","fontFace","hasFonts","supported","completeRequest","loadingRequests","otherRequest","testFont","int32","spliceString","remove","insert","chunk1","chunk2","called","isFontReady","loadTestFontId","CFF_CHECKSUM_OFFSET","XXXX_VALUE","checksum","FontFaceObject","translatedData","css","character","cmds","jsBuf","current","require$$0","NodeFilterFactory","NodeCanvasFactory","require$$1","NodeCMapReaderFactory","NodeStandardFontDataFactory","_pattern_helper","_image_utils","MIN_FONT_SIZE","MAX_FONT_SIZE","MAX_GROUP_SIZE","EXECUTION_TIME","EXECUTION_STEPS","MAX_SIZE_TO_COMPILE","FULL_CHUNK_HEIGHT","mirrorContextOperations","destCtx","cp1x","cp1y","cp2x","cp2y","CachedCanvases","canvasEntry","drawImageAtIntegerCoords","srcImg","srcX","srcY","srcW","srcH","destX","destY","destW","destH","tlX","rTlX","tlY","rTlY","brX","rWidth","brY","rHeight","scaleX","scaleY","compileType3Glyph","imgData","POINT_TO_PROCESS_LIMIT","POINT_TYPES","width1","points","j0","lineSize","pos","elem","mask","sum","steps","p0","pp","CanvasExtraState","box","pathType","xStrokePad","yStrokePad","intersect","putBinaryImageData","partialChunkHeight","fullChunks","totalChunks","chunkImgData","srcPos","destPos","dest","thisChunkHeight","elemsInThisChunk","srcLength","dest32","dest32DataLength","fullSrcDiff","white","black","srcDiff","kEnd","kEndUnrolled","srcByte","putBinaryImageMask","copyCtxState","sourceCtx","property","resetCtxToDefault","composeSMaskBackdrop","r0","g0","b0","alpha","alpha_","composeSMaskAlpha","maskData","layerData","transferMap","composeSMaskLuminosity","genericComposeSMask","maskCtx","layerCtx","subtype","backdrop","layerOffsetX","layerOffsetY","maskOffsetX","maskOffsetY","hasBackdrop","composeFn","chunkSize","row","chunkHeight","composeSMask","smask","layerBox","layerWidth","layerHeight","getImageSmoothingEnabled","interpolate","actualScale","LINE_CAP_STYLES","LINE_JOIN_STYLES","NORMAL_CLIP","EO_CLIP","_CanvasGraphics","canvasCtx","markedContentStack","_restoreInitialState","_drawFilter","fallback","savedFillStyle","transparentCanvas","executionStartIdx","continueCallback","stepper","argsArray","fnArray","argsArrayLen","chunkOperations","endTime","fnId","depObjId","objsPool","restoreInitialState_fn","cache","drawFilter_fn","inverseTransform","widthScale","heightScale","paintWidth","paintHeight","tmpCanvasId","tmpCanvas","tmpCtx","fillColor","isPatternFill","currentTransform","scaled","maskCanvas","mainKey","cachedImage","maskToCanvas","cord1","cord2","drawnWidth","drawnHeight","fillCanvas","fillCtx","inverse","dashArray","dashPhase","flatness","inSMaskMode","cacheId","scratchCanvas","dirtyBox","suspendedCtx","old","ops","startX","startY","isScalingMatrix","minMaxForBezier","xw","yh","consumePath","strokeColor","needRestore","paths","spacing","leading","fontRefName","fontObj","typeface","bold","italic","browserFontSize","rise","patternTransform","textRenderingMode","fontSize","fillStrokeMode","isAddToPathSet","patternFill","addToPath","enabled","glyphs","fontSizeScale","charSpacing","wordSpacing","fontDirection","textHScale","glyphsLength","vertical","spacingDir","defaultVMetrics","widthAdvanceScale","simpleFillText","pattern","lineWidth","chars","glyph","restoreNeeded","accent","scaledX","scaledY","vmetric","vx","vy","measuredWidth","characterScaleX","scaledAccentX","scaledAccentY","charWidth","fontMatrix","isTextInvisible","spacingLength","xWidth","yWidth","llx","lly","urx","ury","IR","baseTransform","canvasGraphicsFactory","matrix","inv","bbox","group","currentCtx","canvasBounds","groupCtx","currentMtx","hasOwnCanvas","viewportScale","canvasWidth","canvasHeight","skewX","skewY","positions","trans","images","bitmap","imgToPaint","tag","clipBox","isEmpty","absDet","normX","normY","scaledLineWidth","scaledXLineWidth","scaledYLineWidth","baseArea","saveRestore","dashes","CanvasGraphics","hcmFilterId","savedFilter","op","getShadingPattern","PathType","applyBoundingBox","region","BaseShadingPattern","RadialAxialShadingPattern","grad","colorStop","owner","ownerBBox","domMatrix","drawTriangle","c1","c2","c3","coords","rowSize","c1r","c1g","c1b","c2r","c2g","c2b","c3r","c3g","c3b","minY","maxY","xa","car","cag","cab","xb","cbr","cbg","cbb","x1_","x2_","drawFigure","figure","ps","cs","verticesPerRow","rows","cols","q","MeshShadingPattern","combinedScale","backgroundColor","cachedCanvases","boundsWidth","boundsHeight","paddedWidth","paddedHeight","matrixScale","temporaryPatternCanvas","DummyShadingPattern","PaintType","_TilingPattern","xstep","ystep","paintType","tilingType","curMatrixScale","dimx","dimy","graphics","adjustedX0","adjustedY0","adjustedX1","adjustedY1","realOutputSize","bboxWidth","bboxHeight","cssColor","TilingPattern","convertBlackAndWhiteToRGBA","convertToRGBA","grayToRGBA","convertRGBToRGBA","nonBlackColor","inverseDecode","zeroMapping","oneMapping","widthInSource","widthRemainder","len32","src32","s1","s2","s3","jj","GlobalWorkerOptions","CallbackKind","StreamKind","wrapReason","MessageHandler","sourceName","targetName","comObj","_createStreamSink","_processStreamMessage","_deleteStreamController","processStreamMessage_fn","callbackId","capability","cbSourceName","cbTargetName","createStreamSink_fn","actionName","ah","queueingStrategy","streamId","controller","startCapability","pullCapability","cancelCapability","streamSink","lastDesiredSize","streamController","deleteStreamController_fn","Metadata","parsedData","_metadataMap","_data","OptionalContentGroup","_visible","internal","visible","OptionalContentConfig","_evaluateVisibilityExpression","_cachedGetHash","_groups","_initialHash","_order","on","off","evaluateVisibilityExpression_fn","array","operator","PDFDataTransportStream","pdfDataRangeTransport","found","queuedChunks","PDFDataTransportStreamReader","PDFDataTransportStreamRangeReader","stream","requestCapability","_network_utils","createFetchOptions","headers","abortController","createHeaders","getArrayBuffer","PDFFetchStream","PDFFetchStreamReader","PDFFetchStreamRangeReader","getResponseHeader","allowRangeRequests","suggestedLength","createResponseStatusError","extractFilenameFromHeader","validateRangeRequestCapabilities","validateResponseStatus","_content_disposition","isHttp","returnValues","contentDisposition","getFilenameFromContentDispositionHeader","needsEncodingFixup","toParamRegExp","rfc2616unquote","rfc5987decode","rfc2047decode","fixupEncoding","rfc2231getparam","attributePattern","flags","textdecode","contentDispositionStr","match","iter","quot","part","parts","quotindex","extvalue","encodingend","charset","hex","OK_RESPONSE","PARTIAL_CONTENT_RESPONSE","xhr","NetworkManager","listeners","xhrId","pendingRequest","xhrStatus","rangeHeader","PDFNetworkStream","PDFNetworkStreamFullRequestReader","PDFNetworkStreamRangeRequestReader","manager","fullRequestXhrId","fullRequestXhr","fileUriRegex","parseUrl","sourceUrl","require$$2","parsedUrl","PDFNodeStream","PDFNodeStreamFsFullReader","PDFNodeStreamFullReader","PDFNodeStreamFsRangeReader","PDFNodeStreamRangeReader","BaseFullReader","BaseRangeReader","createRequestOptions","handleResponse","http","require$$3","https","require$$4","fs","stat","SVG_DEFAULTS","XML_NS","XLINK_NS","createObjectURL","contentType","forceDataSchema","digits","b1","b2","b3","d1","d2","d3","d4","convertImgDataToPng","PNG_HEADER","CHUNK_WRAPPER_SIZE","crcTable","crc32","crc","writePngChunk","body","len","adler32","deflateSync","literals","deflateSyncUncompressed","output","maxBlockLength","deflateBlocks","idat","pi","adler","encode","kind","isMask","bitDepth","colorType","offsetLiterals","offsetBytes","ihdr","pngLength","SVGExtraState","opListToTree","opList","opTree","opListElement","pf","pm","clipCount","maskCount","shadingCount","SVGGraphics","items","transformMatrix","svgElement","operatorIdMapping","opTreeElement","fn","lineWidthScale","textMatrix","strokeAlpha","fillAlpha","tilingId","tx0","ty0","tx1","ty1","xscale","yscale","txstep","tystep","tiling","shadingId","colorStops","gradient","point0","point1","focalPoint","circlePoint","focalRadius","circleRadius","stop","clipId","clipPath","clipElement","textRise","imgSrc","cliprect","imgEl","definitions","rootGroup","clipGroup","XfaText","walk","renderTextLayer","updateTextLayer","MAX_TEXT_DIVS_TO_RENDER","DEFAULT_FONT_SIZE","DEFAULT_FONT_ASCENT","ascentCache","getCtx","getAscent","fontFamily","cachedAscent","metrics","ascent","descent","ratio","pixels","appendText","geom","styles","textDiv","textDivProperties","fontHeight","fontAscent","left","top","scaleFactorStr","divStyle","shouldScaleText","absScaleX","absScaleY","layout","prevFontSize","prevFontFamily","render","textDivs","TextLayerRenderTask","textContentSource","textContentItemsStr","styleCache","br","visibility","scaleFactor","mustRescale","_freetext","_ink","_stamp","_AnnotationEditorLayer","accessibilityManager","annotationLayer","_createNewEditor","_createAndAddNewEditor","_getCenterPoint","_cleanup","_accessibilityManager","_allowClick","_annotationLayer","_boundPointerup","_boundPointerdown","_editors","_hadPointerDown","_isCleaningUp","_isDisabling","_uiManager","editorTypes","cleanup_fn","isCommitting","createAndAddNewEditor_fn","annotationElementIds","editables","editable","hiddenAnnotationIds","getCenterPoint_fn","createNewEditor_fn","AnnotationEditorLayer","isCentered","_annotation_layer","_FreeTextEditor","_updateFontSize","_updateColor","_extractText","_setEditorDimensions","_setContent","_hasElementChanged","_cheatInitialRect","_boundEditorDivBlur","_boundEditorDivFocus","_boundEditorDivInput","_boundEditorDivKeydown","_color","_content","_editorDivId","_fontSize","_initialData","updateFontSize_fn","updateColor_fn","cheatInitialRect_fn","savedText","newText","extractText_fn","setContent_fn","setEditorDimensions_fn","baseX","baseY","position","posX","posY","fontColor","textPosition","padding","hasElementChanged_fn","FreeTextEditor","setFontsize","savedFontsize","savedColor","divs","currentLayer","savedDisplay","line","_annotation_storage","_scripting_utils","_displayL10n_utils","_xfa_layer","DEFAULT_TAB_INDEX","GetElementsByNameSet","getRectDims","AnnotationElementFactory","LinkAnnotationElement","TextAnnotationElement","TextWidgetAnnotationElement","RadioButtonWidgetAnnotationElement","CheckboxWidgetAnnotationElement","PushButtonWidgetAnnotationElement","ChoiceWidgetAnnotationElement","SignatureWidgetAnnotationElement","WidgetAnnotationElement","PopupAnnotationElement","FreeTextAnnotationElement","LineAnnotationElement","SquareAnnotationElement","CircleAnnotationElement","PolylineAnnotationElement","CaretAnnotationElement","InkAnnotationElement","PolygonAnnotationElement","HighlightAnnotationElement","UnderlineAnnotationElement","SquigglyAnnotationElement","StrikeOutAnnotationElement","StampAnnotationElement","FileAttachmentAnnotationElement","AnnotationElement","_AnnotationElement","isRenderable","ignoreBorder","createQuadrilaterals","_hasBorder","titleObj","contentsObj","richText","horizontalRadius","verticalRadius","radius","borderColor","elementWidth","elementHeight","setColor","jsName","styleName","colorArray","display","hidden","actions","jsEvent","commonActions","storedData","detail","eventProxy","quadPoints","rectBlX","rectBlY","rectTrX","rectTrY","trX","trY","blX","blY","svgBuffer","borderWidth","svgFactory","defs","rectWidth","rectHeight","popup","skipId","fields","fieldObj","exportValues","exportValue","domElement","triggers","_setInternalLink","_bindSetOCGState","linkService","link","isBound","bindSetOCGState_fn","destination","setInternalLink_fn","attachment","resetForm","otherClickAction","resetFormFields","resetFormRefs","include","allFields","fieldIds","fieldName","field","storage","allIds","isWin","elementData","baseName","valueGetter","getter","TEXT_ALIGNMENT","computedFontSize","BORDER_SIZE","roundToOneDecimal","numberOfLines","lineHeight","isRequired","keyInStorage","maxLen","fieldFormattedValues","blurListener","formattedValue","charLimit","commitKey","_blurListener","selectionStart","selectionEnd","selStart","selEnd","combWidth","checked","checkbox","curChecked","radio","pdfButtonValue","linkElement","selectElement","addAnEmptyEntry","optionElement","removeEmptyEntry","noneOptionElement","getValue","isExport","multiple","selectedValues","getItems","displayValue","selectChild","indices","elements","PopupElement","elementIds","modificationDate","parentRect","open","_keyDown","_toggle","_show","_hide","_dateTimePromise","_boundKeyDown","keyDown_fn","_boundHide","hide_fn","_boundShow","show_fn","_boundToggle","toggle_fn","_contentsObj","_elements","_parent","_parentRect","_pinned","_popup","_rect","_richText","_titleObj","_wasVisible","dateObject","view","baseColor","header","title","localized","contents","useParentRect","normalizedRect","HORIZONTAL_SPACE_AFTER_ANNOTATION","popupLeft","popupTop","dir","lines","lineSpan","_line","_square","square","_circle","circle","_polyline","coordinate","polyline","_polylines","inkList","_download","_trigger","trigger","download_fn","AnnotationLayer","_appendElement","_setAnnotationCanvasMap","_annotationCanvasMap","_editableAnnotations","annotations","popupToElements","elementParams","isPopupAnnotation","rendered","appendElement_fn","setAnnotationCanvasMap_fn","contentElement","firstChild","makeColorComp","scaleAndClamp","ColorConverters","G","getL10nFallback","DEFAULT_L10N_STRINGS","formatL10nValue","all","NullL10n","_xfa_text","XfaLayer","html","attributes","isHTMLAnchorElement","rootHtml","stack","rootDiv","childHtml","el","_InkEditor","_updateThickness","_updateOpacity","_getInitialBBox","_setStroke","_startDrawing","_draw","_endPath","_stopDrawing","_drawPoints","_makeBezierCurve","_generateBezierPoints","_redraw","_endDrawing","_createCanvas","_createObserver","_setCanvasDims","_setScaleFactor","_updateTransform","_serializePaths","_getBbox","_getPadding","_fitToContent","_baseHeight","_baseWidth","_boundCanvasPointermove","_boundCanvasPointerleave","_boundCanvasPointerup","_boundCanvasPointerdown","_currentPath2D","_disableEditing","_hasSomethingToDraw","_isCanvasInitialized","_observer","_realWidth","_realHeight","_requestFrameCallback","updateThickness_fn","updateOpacity_fn","createCanvas_fn","createObserver_fn","setCanvasDims_fn","fitToContent_fn","startDrawing_fn","draw_fn","endDrawing_fn","getInitialBBox_fn","redraw_fn","roundedWidth","roundedHeight","setScaleFactor_fn","bezier","_fromPDFCoordinates","fromPDFCoordinates_fn","p10","p11","p20","p21","p30","p31","path2D","_buildPath2D","buildPath2D_fn","getBbox_fn","serializePaths_fn","InkEditor","thickness","savedThickness","savedOpacity","parentRotation","setStroke_fn","drawPoints_fn","lastX","lastY","currentPath","makeBezierCurve_fn","endPath_fn","lastPoint","stopDrawing_fn","generateBezierPoints_fn","xy","lastPoints","prevX","prevY","bezierPoints","control1","control2","updateTransform_fn","getPadding_fn","scaleFactorW","scaleFactorH","_toPDFCoordinates","toPDFCoordinates_fn","p40","p41","xMin","xMax","yMin","yMax","firstTime","prevTranslationX","prevTranslationY","unscaledPadding","_StampEditor","_getBitmapFetched","_getBitmapDone","_getBitmap","_setDimensions","_scaleBitmap","_drawBitmap","_serializeBitmap","_bitmap","_bitmapId","_bitmapPromise","_bitmapUrl","_bitmapFile","_canvas","_resizeTimeoutId","_isSvg","_hasBeenAddedInUndoStack","getBitmap_fn","bitmapUrl","bitmapId","isSvg","accessibilityData","serializeBitmap_fn","area","prevData","StampEditor","getBitmapFetched_fn","fromId","getBitmapDone_fn","MAX_RATIO","factor","drawBitmap_fn","setDimensions_fn","scaleBitmap_fn","bitmapWidth","bitmapHeight","prevWidth","prevHeight","offscreen","toUrl","moduleId","cachedModule","_annotation_editor_layer","_worker_options","_api","_text_layer","pdfjsModule['default']","ReactPropTypesSecret","shim","propName","location","propFullName","secret","getShim","ReactPropTypes","propTypesModule","to","from","pack","ar","getArgs","eventProps","eventHandler","isCancelled","wrappedPromise","clsx","isProduction","condition","provided","createContext","pdfViewer","externalLinkRel","externalLinkTarget","explicitDest","destRef","newWindow","isBrowser","variable","dataURI","headersString","dataString","runningTask","useReducer","PDFDataRangeTransport","pdfjs","isPageIndex","pdf","numPages","isPageNumber","thisArg","_arguments","P","generator","adopt","fulfilled","rejected","__rest","forwardRef","Document","imageResourcesPath","noData","onItemClick","onLoadErrorProps","onLoadProgress","onLoadSuccessProps","onPassword","onSourceErrorProps","onSourceSuccessProps","renderMode","rotate","otherProps","sourceState","sourceDispatch","sourceError","pdfState","pdfDispatch","pdfError","pages","useImperativeHandle","onSourceSuccess","onSourceError","resetSource","findDocumentSource","useCallback","otherParams","fileByteString","cancellable","makeCancellable","nextSource","onLoadSuccess","onLoadError","resetDocument","loadDocument","documentInitParams","destroyable","nextPdf","setupLinkService","registerPage","unregisterPage","childContext","useMemo","renderChildren","renderContent","isFunctionOrNode","inputRefs","_i","filteredInputRefs","firstRef","role","htmlRole","childAttributes","pageContext","onGetStructTreeErrorProps","onGetStructTreeSuccessProps","structTreeState","structTreeDispatch","structTree","structTreeError","customTextRenderer","resetAnnotations","loadStructTree","nextStructTree","mergedProps","_className","canvasBackground","devicePixelRatio","onRenderErrorProps","onRenderSuccessProps","renderForms","canvasRef","canvasElement","onRenderSuccess","onRenderError","renderViewport","drawPageOnCanvas","renderContext","cleanup","svgState","svgDispatch","svgError","resetSVG","renderSVG","nextSvg","drawPageOnContainer","TextLayer","onGetTextError","onGetTextSuccess","onRenderTextLayerError","onRenderTextLayerSuccess","textContentState","textContentDispatch","textContentError","layerElement","endElement","resetTextContent","loadTextContent","nextTextContent","onMouseDown","onMouseUp","layerChildren","itemIndex","useLayoutEffect","documentContext","onGetAnnotationsErrorProps","onGetAnnotationsSuccessProps","onRenderAnnotationLayerErrorProps","onRenderAnnotationLayerSuccessProps","annotationsState","annotationsDispatch","annotationsError","loadAnnotations","nextAnnotations","renderAnnotationLayer","clonedViewport","annotationLayerParameters","renderParameters","Page","_enableRegisterUnregisterPage","CustomRenderer","onGetTextErrorProps","onGetTextSuccessProps","onRenderTextLayerErrorProps","onRenderTextLayerSuccessProps","pageIndexProps","pageNumberProps","renderAnnotationLayerProps","renderTextLayerProps","rotateProps","scaleProps","pageState","pageDispatch","pageError","pageElement","pageScale","scaleWithDefault","hook","resetPage","loadPage","nextPage","pageKey","pageKeyNoScale","renderMainLayer","hint","prim","arg","toPrimitive","toPropertyKey","call","assertThisInitialized","subClass","superClass","setPrototypeOf","cellCount","cellSize","computeMetadataCallback","computeMetadataCallbackProps","nextCellsCount","nextCellSize","nextScrollToIndex","scrollToIndex","updateScrollOffsetForScrollToIndex","excluded","sourceKeys","objectWithoutPropertiesLoose","sourceSymbolKeys","CellSizeAndPositionManager","cellSizeGetter","estimatedCellSize","_ref2","lastMeasuredCellSizeAndPosition","totalSizeOfMeasuredCells","numUnmeasuredCells","totalSizeOfUnmeasuredCells","_ref3","_ref3$align","align","containerSize","currentOffset","targetIndex","datum","maxOffset","minOffset","idealOffset","totalSize","high","low","middle","lastMeasuredIndex","isChrome","getMaxElementSize","ScalingCellSizeAndPositionManager","_ref$maxScrollSize","maxScrollSize","safeTotalSize","offsetPercentage","_ref4","_ref5","_ref6","_ref7","requireAllKeys","cachedIndices","allInitialized","indexChanged","cachedValue","SCROLL_DIRECTION_FORWARD","defaultOverscanIndicesGetter","overscanCellsCount","scrollDirection","startIndex","stopIndex","cellSizeAndPositionManager","previousCellsCount","previousCellSize","previousScrollToAlignment","previousScrollToIndex","previousSize","scrollOffset","scrollToAlignment","sizeJustIncreasedFromZero","updateScrollIndexCallback","hasScrollToIndex","sizeHasChanged","cellCache","cellRenderer","columnSizeAndPositionManager","columnStartIndex","columnStopIndex","deferredMeasurementCache","horizontalOffsetAdjustment","isScrolling","isScrollingOptOut","rowSizeAndPositionManager","rowStartIndex","rowStopIndex","verticalOffsetAdjustment","visibleColumnIndices","visibleRowIndices","renderedCells","areOffsetsAdjusted","canCacheStyle","rowIndex","rowDatum","columnIndex","columnDatum","isVisible","cellRendererParams","renderedCell","cancelAnimationTimeout","frame","requestAnimationTimeout","timeout","_class","_temp","ownKeys","enumerableOnly","symbols","sym","_objectSpread","DEFAULT_SCROLLING_RESET_TIME_INTERVAL","SCROLL_POSITION_CHANGE_REASONS","renderNull","_React$PureComponent","Grid","onSectionRendered","_ref$alignment","alignment","_ref$columnIndex","_ref$rowIndex","offsetProps","_ref2$scrollLeft","scrollLeftParam","_ref2$scrollTop","scrollTopParam","_this$props","autoHeight","autoWidth","instanceProps","scrollbarSize","totalRowsHeight","totalColumnsWidth","scrollLeft","scrollTop","scrollDirectionHorizontal","scrollDirectionVertical","newState","_this$props2","columnCount","rowCount","_ref4$columnIndex","_ref4$rowIndex","_this$props3","scrollToColumn","scrollToRow","_this$props4","getScrollbarSize","stateUpdate","sizeIsBiggerThanZero","_this$props5","_this$state","scrollPositionChangeReason","columnOrRowCountJustIncreasedFromZero","_this$props6","autoContainerWidth","containerProps","containerRole","containerStyle","noContentRenderer","tabIndex","_this$state2","needToResetStyleCache","gridStyle","verticalScrollBarSize","horizontalScrollBarSize","childrenToDisplay","showNoContentRenderer","React.createElement","cellRangeRenderer","overscanColumnCount","overscanIndicesGetter","overscanRowCount","overscanColumnIndices","overscanRowIndices","scrollingResetTimeInterval","_this3$props","onScroll","onScrollbarPresenceChange","_ref8","maybeStateA","maybeStateB","_ref9","finalColumn","scrollBarSize","calculatedScrollLeft","finalRow","calculatedScrollTop","React.PureComponent","ArrowKeyStepper","_getPrototypeOf2","_this$_getScrollState","scrollToColumnPrevious","scrollToRowPrevious","_this$_getScrollState2","_this$_getScrollState3","isControlled","onScrollToChange","nonce","hostWindow","_window","attachEvent","requestFrame","raf","cancelFrame","cancel","resetTriggers","expand","contract","expandChild","checkTriggers","scrollListener","animation","keyframeprefix","animationstartevent","domPrefixes","startEvents","pfx","elm","animationName","animationKeyframes","animationStyle","createStyles","doc","head","addResizeListener","elementStyle","resizeTriggersHtml","staticPolicy","removeResizeListener","_React$Component","AutoSizer","disableHeight","disableWidth","onResize","win","paddingLeft","paddingRight","paddingTop","paddingBottom","autoSizer","outerStyle","childParams","React.Component","CellMeasurer","_this$props$columnInd","_this$props$rowIndex","_this$_getCellMeasure","findDOMNode","styleWidth","styleHeight","_this$props2$columnIn","_this$props2$rowIndex","_this$_getCellMeasure2","IS_SCROLLING_TIMEOUT","CollectionView","cellLayoutManager","scrollToCell","scrollPosition","isScrollingChange","_cellLayoutManager$ge","totalHeight","totalWidth","_cellLayoutManager$ge2","horizontalOverscanSize","verticalOverscanSize","_this$state3","_cellLayoutManager$ge3","right","bottom","collectionStyle","Section","SectionManager","sectionSize","section","sectionXStart","sectionXStop","sectionYStart","sectionYStop","sections","sectionX","sectionY","cellMetadatum","cellSizeAndPositionGetter","cellMetadata","sectionManager","_ref$align","cellOffset","Collection","_calculateSizeAndPositionData","cellIndex","cellGroupRenderer","cellRendererProps","arrayLikeToArray","minLen","arrayWithoutHoles","iterableToArray","unsupportedIterableToArray","nonIterableSpread","InfiniteLoader","autoReload","unloadedRanges","loadMoreRows","unloadedRange","isRowLoaded","minimumBatchSize","threshold","squashedUnloadedRanges","registeredChild","lastRenderedStartIndex","lastRenderedStopIndex","rangeStartIndex","rangeStopIndex","potentialStopIndex","_index","firstUnloadedRange","_index2","component","currentIndex","recomputeSize","List","rowRenderer","widthDescriptor","clientHeight","scrollHeight","rowOverscanStartIndex","rowOverscanStopIndex","onRowsRendered","_this$Grid$getOffsetF","_ref6$columnIndex","_ref6$rowIndex","noRowsRenderer","classNames","accessibilityOverscanIndicesGetter","_s","_x","_r","_arr","_n","arrayWithHoles","iterableToArrayLimit","nonIterableRest","mid","leftPoints","rightPoints","intervals","ntree","weight","rw","lw","hi","cb","lo","pts","leftIntervals","rightIntervals","centerIntervals","get","PositionCache","createIntervalTree","defaultCellHeight","unmeasuredCellCount","renderCallback","columnSizeMap","columnHeight","Masonry","eventScrollTop","cellMeasurerCache","keyMapper","overscanByPixels","rowDirection","estimateTotalHeight","shortestColumnSize","measuredCellCount","_style","batchSize","estimatedColumnCount","onCellsRendered","cellPositioner","_cellPositioner","CellMeasurerCacheDecorator","_params$columnIndexOf","columnIndexOffset","_params$rowIndexOffse","rowIndexOffset","MultiGrid","rest","fixedRowCount","fixedColumnCount","columnWidth","showHorizontalScrollbar","scrollInfo","horizontal","showVerticalScrollbar","rowHeight","_fixedColumnCount","_fixedRowCount","_ref7$columnIndex","_ref7$rowIndex","_ref8$columnIndex","_ref8$rowIndex","adjustedColumnIndex","adjustedRowIndex","_this$props7","_this$props8","_this$state4","topGridHeight","leftGridWidth","resetAll","_this$props9","enableFixedColumnScroll","enableFixedRowScroll","styleBottomLeftGrid","styleBottomRightGrid","styleTopLeftGrid","styleTopRightGrid","sizeChange","leftSizeChange","topSizeChange","hideBottomLeftGridScrollbar","additionalRowCount","gridWidth","bottomLeftGrid","hideTopRightGridScrollbar","_this$state5","additionalColumnCount","additionalHeight","gridHeight","topRightGrid","dataKey","rowData","cellData","columns","sortDirection","label","sortBy","showSortIndicator","onRowClick","onRowDoubleClick","onRowMouseOut","onRowMouseOver","onRowRightClick","a11yProps","Column","Table","_ref3$columnIndex","_ref3$rowIndex","_Grid","clientWidth","offsetWidth","disableHeader","gridClassName","headerHeight","headerRowRenderer","rowClassName","rowStyle","scrollbarWidth","availableRowsHeight","rowClass","rowStyleObject","React.Children","column","flexStyles","onColumnClick","_column$props","cellDataGetter","columnData","onClick","headerClassName","headerStyle","onHeaderClick","sort","_column$props2","defaultSortDirection","disableSort","headerRenderer","sortEnabled","renderedHeader","headerOnClick","headerOnKeyDown","headerTabIndex","headerAriaSort","headerAriaLabel","isFirstTimeSort","newSortDirection","onKeyDown","rowGetter","flattenedStyle","customStyle","flexValue","maximumTimeout","isWindow","getBoundingBox","scrollElement","innerHeight","innerWidth","containerElement","elementRect","containerRect","_elementRect","_containerRect","getWindow","WindowScroller","thisNode","ReactDOM.findDOMNode","dimensions","prevScrollElement","totalPages","setTotalPages","currentPageNum","setCurrentPageNum","initialPage","isPositionData","setIsPositionData","polygonList","setPolygonList","setPageHeight","setPageWidth","isPdfLoading","setIsPdfLoading","errMessage","setErrMessage","downloadErrMessage","setDownloadErrMessage","listRef","loadingStop","getPageHeight","currentPageHeight","getPageWidth","num","handleScroll","currentPage","scrollToPage","handlePdfDownload","tempPolygonList","polygon","showDescriptionDefaultInstructionPrompt","setShowDescriptionDefaultInstructionPrompt","useSlackProcedurePopup","setUseSlackProcedurePopup","useTeamsProcedurePopup","setUseTeamsProcedurePopup","useChatworkProcedurePopup","setUseChatworkProcedurePopup","showSlackDisconnectConfirm","setShowSlackDisconnectConfirm","showTeamsDisconnectConfirm","setShowTeamsDisconnectConfirm","showChatworkDisconnectConfirm","setShowChatworkDisconnectConfirm","instructionPromptValue","setInstructionPromptValue","disconnectConfirmSetters","disconnectConfirmGetters","openWindow","toggleProcedurePopup","isShow","handleChatLinkageClick","deleteChatLinkage","service","setDefaultInstructionPrompt","updateOrCreateDefaultInstructionPrompt","chatLinkageApps","setChatLinkageApps","updateChatLinkageAppStatus","workspaceName","ReactOnRails"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,6,9,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151]}