From 85f8c54a912054697c0bdaeaea3caa48400669d8 Mon Sep 17 00:00:00 2001 From: jonathang4 Date: Fri, 30 May 2025 18:37:00 +0800 Subject: [PATCH] init --- .dockerignore | 9 + .gitignore | 135 +- Dockerfile | 21 + LICENSE | 674 + README.md | 5 +- configs/dev/service.yml | 6 + configs/dev/system.yml | 14 + doc/example-0.png | Bin 0 -> 459267 bytes doc/example-1.jpeg | Bin 0 -> 315036 bytes libs.d.ts | 0 package.json | 51 + public/welcome.html | 10 + src/api/consts/exceptions.ts | 14 + src/api/controllers/chat.ts | 227 + src/api/controllers/core.ts | 292 + src/api/controllers/images.ts | 484 + src/api/controllers/upload.ts | 417 + src/api/controllers/video.ts | 201 + src/api/routes/chat.ts | 36 + src/api/routes/images.ts | 58 + src/api/routes/index.ts | 33 + src/api/routes/models.ts | 21 + src/api/routes/ping.ts | 6 + src/api/routes/token.ts | 39 + src/api/routes/upload.ts | 139 + src/api/routes/video.ts | 49 + src/daemon.ts | 82 + src/index.ts | 32 + src/lib/config.ts | 14 + src/lib/configs/service-config.ts | 68 + src/lib/configs/system-config.ts | 84 + src/lib/consts/exceptions.ts | 5 + src/lib/environment.ts | 44 + src/lib/exceptions/APIException.ts | 14 + src/lib/exceptions/Exception.ts | 47 + src/lib/http-status-codes.ts | 61 + src/lib/initialize.ts | 28 + src/lib/interfaces/ICompletionMessage.ts | 4 + src/lib/logger.ts | 184 + src/lib/request/Request.ts | 72 + src/lib/response/Body.ts | 41 + src/lib/response/FailureBody.ts | 31 + src/lib/response/Response.ts | 63 + src/lib/response/SuccessfulBody.ts | 19 + src/lib/server.ts | 173 + src/lib/util.ts | 307 + temp/1.txt | 38 + temp/2.txt | 1350 + temp/3.txt | 961 + temp/3013.265ac0fd.js | 79430 +++++++++++++++++++++ temp/lib-uploader.2.js | 13553 ++++ temp/lib-uploader.3.js | 480 + temp/lib-uploader.4.js | 926 + temp/lib-uploader.c1f2476f.js | 9898 +++ temp/sha256_test.html | 210 + temp/test-uploader.html | 21 + temp/uploadres.json | 51 + tsconfig.json | 16 + vercel.json | 27 + yarn.lock | 1563 + 60 files changed, 112706 insertions(+), 132 deletions(-) create mode 100644 .dockerignore create mode 100644 Dockerfile create mode 100644 LICENSE create mode 100644 configs/dev/service.yml create mode 100644 configs/dev/system.yml create mode 100644 doc/example-0.png create mode 100644 doc/example-1.jpeg create mode 100644 libs.d.ts create mode 100644 package.json create mode 100644 public/welcome.html create mode 100644 src/api/consts/exceptions.ts create mode 100644 src/api/controllers/chat.ts create mode 100644 src/api/controllers/core.ts create mode 100644 src/api/controllers/images.ts create mode 100644 src/api/controllers/upload.ts create mode 100644 src/api/controllers/video.ts create mode 100644 src/api/routes/chat.ts create mode 100644 src/api/routes/images.ts create mode 100644 src/api/routes/index.ts create mode 100644 src/api/routes/models.ts create mode 100644 src/api/routes/ping.ts create mode 100644 src/api/routes/token.ts create mode 100644 src/api/routes/upload.ts create mode 100644 src/api/routes/video.ts create mode 100644 src/daemon.ts create mode 100644 src/index.ts create mode 100644 src/lib/config.ts create mode 100644 src/lib/configs/service-config.ts create mode 100644 src/lib/configs/system-config.ts create mode 100644 src/lib/consts/exceptions.ts create mode 100644 src/lib/environment.ts create mode 100644 src/lib/exceptions/APIException.ts create mode 100644 src/lib/exceptions/Exception.ts create mode 100644 src/lib/http-status-codes.ts create mode 100644 src/lib/initialize.ts create mode 100644 src/lib/interfaces/ICompletionMessage.ts create mode 100644 src/lib/logger.ts create mode 100644 src/lib/request/Request.ts create mode 100644 src/lib/response/Body.ts create mode 100644 src/lib/response/FailureBody.ts create mode 100644 src/lib/response/Response.ts create mode 100644 src/lib/response/SuccessfulBody.ts create mode 100644 src/lib/server.ts create mode 100644 src/lib/util.ts create mode 100644 temp/1.txt create mode 100644 temp/2.txt create mode 100644 temp/3.txt create mode 100644 temp/3013.265ac0fd.js create mode 100644 temp/lib-uploader.2.js create mode 100644 temp/lib-uploader.3.js create mode 100644 temp/lib-uploader.4.js create mode 100644 temp/lib-uploader.c1f2476f.js create mode 100644 temp/sha256_test.html create mode 100644 temp/test-uploader.html create mode 100644 temp/uploadres.json create mode 100644 tsconfig.json create mode 100644 vercel.json create mode 100644 yarn.lock diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..d525fd0 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,9 @@ +logs +dist +doc +node_modules +.vscode +.git +.gitignore +README.md +*.tar.gz \ No newline at end of file diff --git a/.gitignore b/.gitignore index ceaea36..6ac2f14 100644 --- a/.gitignore +++ b/.gitignore @@ -1,132 +1,5 @@ -# ---> Node -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -lerna-debug.log* -.pnpm-debug.log* - -# Diagnostic reports (https://nodejs.org/api/report.html) -report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json - -# Runtime data -pids -*.pid -*.seed -*.pid.lock - -# Directory for instrumented libs generated by jscoverage/JSCover -lib-cov - -# Coverage directory used by tools like istanbul -coverage -*.lcov - -# nyc test coverage -.nyc_output - -# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) -.grunt - -# Bower dependency directory (https://bower.io/) -bower_components - -# node-waf configuration -.lock-wscript - -# Compiled binary addons (https://nodejs.org/api/addons.html) -build/Release - -# Dependency directories +dist/ node_modules/ -jspm_packages/ - -# Snowpack dependency directory (https://snowpack.dev/) -web_modules/ - -# TypeScript cache -*.tsbuildinfo - -# Optional npm cache directory -.npm - -# Optional eslint cache -.eslintcache - -# Optional stylelint cache -.stylelintcache - -# Microbundle cache -.rpt2_cache/ -.rts2_cache_cjs/ -.rts2_cache_es/ -.rts2_cache_umd/ - -# Optional REPL history -.node_repl_history - -# Output of 'npm pack' -*.tgz - -# Yarn Integrity file -.yarn-integrity - -# dotenv environment variable files -.env -.env.development.local -.env.test.local -.env.production.local -.env.local - -# parcel-bundler cache (https://parceljs.org/) -.cache -.parcel-cache - -# Next.js build output -.next -out - -# Nuxt.js build / generate output -.nuxt -dist - -# Gatsby files -.cache/ -# Comment in the public line in if your project uses Gatsby and not Next.js -# https://nextjs.org/blog/next-9-1#public-directory-support -# public - -# vuepress build output -.vuepress/dist - -# vuepress v2.x temp and cache directory -.temp -.cache - -# Docusaurus cache and generated files -.docusaurus - -# Serverless directories -.serverless/ - -# FuseBox cache -.fusebox/ - -# DynamoDB Local files -.dynamodb/ - -# TernJS port file -.tern-port - -# Stores VSCode versions used for testing VSCode extensions -.vscode-test - -# yarn v2 -.yarn/cache -.yarn/unplugged -.yarn/build-state.yml -.yarn/install-state.gz -.pnp.* - +logs/ +.vercel +package-lock.json \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..f7ef083 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,21 @@ +FROM node:20.19-slim AS BUILD_IMAGE + +WORKDIR /app + +COPY . /app + +RUN yarn install --registry https://registry.npmmirror.com/ --ignore-engines && yarn run build + +FROM node:20.19-slim + +COPY --from=BUILD_IMAGE /app/configs /app/configs +COPY --from=BUILD_IMAGE /app/package.json /app/package.json +COPY --from=BUILD_IMAGE /app/dist /app/dist +COPY --from=BUILD_IMAGE /app/public /app/public +COPY --from=BUILD_IMAGE /app/node_modules /app/node_modules + +WORKDIR /app + +EXPOSE 8000 + +CMD ["npm", "start"] \ No newline at end of file diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..f288702 --- /dev/null +++ b/LICENSE @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/README.md b/README.md index a3d3e80..9cbdcac 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,6 @@ # jimeng-free-api -即梦api服务 \ No newline at end of file +即梦api服务 + +### 参考自 +即梦接口转 API [kimi-free-api](https://github.com/LLM-Red-Team/jimeng-free-api) \ No newline at end of file diff --git a/configs/dev/service.yml b/configs/dev/service.yml new file mode 100644 index 0000000..5eb193e --- /dev/null +++ b/configs/dev/service.yml @@ -0,0 +1,6 @@ +# 服务名称 +name: jimeng-free-api +# 服务绑定主机地址 +host: '0.0.0.0' +# 服务绑定端口 +port: 3302 \ No newline at end of file diff --git a/configs/dev/system.yml b/configs/dev/system.yml new file mode 100644 index 0000000..dca6170 --- /dev/null +++ b/configs/dev/system.yml @@ -0,0 +1,14 @@ +# 是否开启请求日志 +requestLog: true +# 临时目录路径 +tmpDir: ./tmp +# 日志目录路径 +logDir: ./logs +# 日志写入间隔(毫秒) +logWriteInterval: 200 +# 日志文件有效期(毫秒) +logFileExpires: 2626560000 +# 公共目录路径 +publicDir: ./public +# 临时文件有效期(毫秒) +tmpFileExpires: 86400000 \ No newline at end of file diff --git a/doc/example-0.png b/doc/example-0.png new file mode 100644 index 0000000000000000000000000000000000000000..3969a94638703a5130b941a61d3d00115a898590 GIT binary patch literal 459267 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%0DYSd^T}l*nIkDt4kQ2*H6VAyGg}> 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 W!2S~V!0U?VyTo@qZ!y36G4o$vQ)%%4 literal 0 HcmV?d00001 diff --git a/doc/example-1.jpeg b/doc/example-1.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..c1019426efa39f0cb03475cb0e973ded75b38b63 GIT binary patch literal 315036 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 z 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.>p+Nn$!0CNr>DoWg4*evzG4P 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

    cbzMaeg59M)$hXYgSiR8f3=j?K4FzTe`MM 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 + + + + 🚀 服务已启动 + + +

    jimeng-free-api已启动!
    请通过LobeChat / NextChat / Dify等客户端或OpenAI SDK接入!

    + + \ No newline at end of file diff --git a/src/api/consts/exceptions.ts b/src/api/consts/exceptions.ts new file mode 100644 index 0000000..5908b67 --- /dev/null +++ b/src/api/consts/exceptions.ts @@ -0,0 +1,14 @@ +export default { + API_TEST: [-9999, 'API异常错误'], + API_REQUEST_PARAMS_INVALID: [-2000, '请求参数非法'], + API_REQUEST_FAILED: [-2001, '请求失败'], + API_TOKEN_EXPIRES: [-2002, 'Token已失效'], + API_FILE_URL_INVALID: [-2003, '远程文件URL非法'], + API_FILE_EXECEEDS_SIZE: [-2004, '远程文件超出大小'], + API_CHAT_STREAM_PUSHING: [-2005, '已有对话流正在输出'], + API_CONTENT_FILTERED: [-2006, '内容由于合规问题已被阻止生成'], + API_IMAGE_GENERATION_FAILED: [-2007, '图像生成失败'], + API_VIDEO_GENERATION_FAILED: [-2008, '视频生成失败'], + API_IMAGE_GENERATION_INSUFFICIENT_POINTS: [-2009, '即梦积分不足'], + API_IMAGE_URL: [-2010, '即梦积分不足'], +} \ No newline at end of file diff --git a/src/api/controllers/chat.ts b/src/api/controllers/chat.ts new file mode 100644 index 0000000..a866265 --- /dev/null +++ b/src/api/controllers/chat.ts @@ -0,0 +1,227 @@ +import _ from "lodash"; +import { PassThrough } from "stream"; + +import APIException from "@/lib/exceptions/APIException.ts"; +import EX from "@/api/consts/exceptions.ts"; +import logger from "@/lib/logger.ts"; +import util from "@/lib/util.ts"; +import { generateImages, DEFAULT_MODEL } from "./images.ts"; + +// 最大重试次数 +const MAX_RETRY_COUNT = 3; +// 重试延迟 +const RETRY_DELAY = 5000; + +/** + * 解析模型 + * + * @param model 模型名称 + * @returns 模型信息 + */ +function parseModel(model: string) { + const [_model, size] = model.split(":"); + const [_, width, height] = /(\d+)[\W\w](\d+)/.exec(size) ?? []; + return { + model: _model, + width: size ? Math.ceil(parseInt(width) / 2) * 2 : 1024, + height: size ? Math.ceil(parseInt(height) / 2) * 2 : 1024, + }; +} + +/** + * 同步对话补全 + * + * @param messages 参考gpt系列消息格式,多轮对话请完整提供上下文 + * @param refreshToken 用于刷新access_token的refresh_token + * @param assistantId 智能体ID,默认使用jimeng原版 + * @param retryCount 重试次数 + */ +export async function createCompletion( + messages: any[], + refreshToken: string, + _model = DEFAULT_MODEL, + retryCount = 0 +) { + return (async () => { + if (messages.length === 0) + throw new APIException(EX.API_REQUEST_PARAMS_INVALID, "消息不能为空"); + + const { model, width, height } = parseModel(_model); + logger.info(messages); + + const imageUrls = await generateImages( + model, + messages[messages.length - 1].content, + { + width, + height, + }, + refreshToken + ); + + return { + id: util.uuid(), + model: _model || model, + object: "chat.completion", + choices: [ + { + index: 0, + message: { + role: "assistant", + content: imageUrls.reduce( + (acc, url, i) => acc + `![image_${i}](${url})\n`, + "" + ), + }, + finish_reason: "stop", + }, + ], + usage: { prompt_tokens: 1, completion_tokens: 1, total_tokens: 2 }, + created: util.unixTimestamp(), + }; + })().catch((err) => { + if (retryCount < MAX_RETRY_COUNT) { + logger.error(`Response error: ${err.stack}`); + logger.warn(`Try again after ${RETRY_DELAY / 1000}s...`); + return (async () => { + await new Promise((resolve) => setTimeout(resolve, RETRY_DELAY)); + return createCompletion(messages, refreshToken, _model, retryCount + 1); + })(); + } + throw err; + }); +} + +/** + * 流式对话补全 + * + * @param messages 参考gpt系列消息格式,多轮对话请完整提供上下文 + * @param refreshToken 用于刷新access_token的refresh_token + * @param assistantId 智能体ID,默认使用jimeng原版 + * @param retryCount 重试次数 + */ +export async function createCompletionStream( + messages: any[], + refreshToken: string, + _model = DEFAULT_MODEL, + retryCount = 0 +) { + return (async () => { + const { model, width, height } = parseModel(_model); + logger.info(messages); + + const stream = new PassThrough(); + + if (messages.length === 0) { + logger.warn("消息为空,返回空流"); + stream.end("data: [DONE]\n\n"); + return stream; + } + + stream.write( + "data: " + + JSON.stringify({ + id: util.uuid(), + model: _model || model, + object: "chat.completion.chunk", + choices: [ + { + index: 0, + delta: { role: "assistant", content: "🎨 图像生成中,请稍候..." }, + finish_reason: null, + }, + ], + }) + + "\n\n" + ); + + generateImages( + model, + messages[messages.length - 1].content, + { width, height }, + refreshToken + ) + .then((imageUrls) => { + for (let i = 0; i < imageUrls.length; i++) { + const url = imageUrls[i]; + stream.write( + "data: " + + JSON.stringify({ + id: util.uuid(), + model: _model || model, + object: "chat.completion.chunk", + choices: [ + { + index: i + 1, + delta: { + role: "assistant", + content: `![image_${i}](${url})\n`, + }, + finish_reason: i < imageUrls.length - 1 ? null : "stop", + }, + ], + }) + + "\n\n" + ); + } + stream.write( + "data: " + + JSON.stringify({ + id: util.uuid(), + model: _model || model, + object: "chat.completion.chunk", + choices: [ + { + index: imageUrls.length + 1, + delta: { + role: "assistant", + content: "图像生成完成!", + }, + finish_reason: "stop", + }, + ], + }) + + "\n\n" + ); + stream.end("data: [DONE]\n\n"); + }) + .catch((err) => { + stream.write( + "data: " + + JSON.stringify({ + id: util.uuid(), + model: _model || model, + object: "chat.completion.chunk", + choices: [ + { + index: 1, + delta: { + role: "assistant", + content: `生成图片失败: ${err.message}`, + }, + finish_reason: "stop", + }, + ], + }) + + "\n\n" + ); + stream.end("data: [DONE]\n\n"); + }); + return stream; + })().catch((err) => { + if (retryCount < MAX_RETRY_COUNT) { + logger.error(`Response error: ${err.stack}`); + logger.warn(`Try again after ${RETRY_DELAY / 1000}s...`); + return (async () => { + await new Promise((resolve) => setTimeout(resolve, RETRY_DELAY)); + return createCompletionStream( + messages, + refreshToken, + _model, + retryCount + 1 + ); + })(); + } + throw err; + }); +} diff --git a/src/api/controllers/core.ts b/src/api/controllers/core.ts new file mode 100644 index 0000000..8a69c8a --- /dev/null +++ b/src/api/controllers/core.ts @@ -0,0 +1,292 @@ +import { PassThrough } from "stream"; +import path from "path"; +import _ from "lodash"; +import mime from "mime"; +import axios, { AxiosRequestConfig, AxiosResponse } from "axios"; + +import APIException from "@/lib/exceptions/APIException.ts"; +import EX from "@/api/consts/exceptions.ts"; +import { createParser } from "eventsource-parser"; +import logger from "@/lib/logger.ts"; +import util from "@/lib/util.ts"; + +// 模型名称 +const MODEL_NAME = "jimeng"; +// 默认的AgentID +const DEFAULT_ASSISTANT_ID = "513695"; +// 版本号 +const VERSION_CODE = "5.8.0"; +// 平台代码 +const PLATFORM_CODE = "7"; +// 设备ID +const DEVICE_ID = Math.random() * 999999999999999999 + 7000000000000000000; +// WebID +const WEB_ID = Math.random() * 999999999999999999 + 7000000000000000000; +// 用户ID +const USER_ID = util.uuid(false); +// 最大重试次数 +const MAX_RETRY_COUNT = 3; +// 重试延迟 +const RETRY_DELAY = 5000; +// 伪装headers +const FAKE_HEADERS = { + Accept: "application/json, text/plain, */*", + "Accept-Encoding": "gzip, deflate, br, zstd", + "Accept-language": "zh-CN,zh;q=0.9", + "Cache-control": "no-cache", + "Last-event-id": "undefined", + Appid: DEFAULT_ASSISTANT_ID, + Appvr: VERSION_CODE, + Origin: "https://jimeng.jianying.com", + Pragma: "no-cache", + Priority: "u=1, i", + Referer: "https://jimeng.jianying.com", + Pf: PLATFORM_CODE, + "Sec-Ch-Ua": + '"Google Chrome";v="131", "Chromium";v="131", "Not_A Brand";v="24"', + "Sec-Ch-Ua-Mobile": "?0", + "Sec-Ch-Ua-Platform": '"Windows"', + "Sec-Fetch-Dest": "empty", + "Sec-Fetch-Mode": "cors", + "Sec-Fetch-Site": "same-origin", + "User-Agent": + "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", +}; +// 文件最大大小 +const FILE_MAX_SIZE = 100 * 1024 * 1024; + +/** + * 获取缓存中的access_token + * + * 目前jimeng的access_token是固定的,暂无刷新功能 + * + * @param refreshToken 用于刷新access_token的refresh_token + */ +export async function acquireToken(refreshToken: string): Promise { + return refreshToken; +} + +/** + * 生成cookie + */ +export function generateCookie(refreshToken: string) { + return [ + `_tea_web_id=${WEB_ID}`, + `is_staff_user=false`, + `store-region=cn-gd`, + `store-region-src=uid`, + `sid_guard=${refreshToken}%7C${util.unixTimestamp()}%7C5184000%7CMon%2C+03-Feb-2025+08%3A17%3A09+GMT`, + `uid_tt=${USER_ID}`, + `uid_tt_ss=${USER_ID}`, + `sid_tt=${refreshToken}`, + `sessionid=${refreshToken}`, + `sessionid_ss=${refreshToken}`, + `sid_tt=${refreshToken}` + ].join("; "); +} + +/** + * 获取积分信息 + * + * @param refreshToken 用于刷新access_token的refresh_token + */ +export async function getCredit(refreshToken: string) { + const { + credit: { gift_credit, purchase_credit, vip_credit } + } = await request("POST", "/commerce/v1/benefits/user_credit", refreshToken, { + data: {}, + headers: { + // Cookie: 'x-web-secsdk-uid=ef44bd0d-0cf6-448c-b517-fd1b5a7267ba; s_v_web_id=verify_m4b1lhlu_DI8qKRlD_7mJJ_4eqx_9shQ_s8eS2QLAbc4n; passport_csrf_token=86f3619c0c4a9c13f24117f71dc18524; passport_csrf_token_default=86f3619c0c4a9c13f24117f71dc18524; n_mh=9-mIeuD4wZnlYrrOvfzG3MuT6aQmCUtmr8FxV8Kl8xY; sid_guard=a7eb745aec44bb3186dbc2083ea9e1a6%7C1733386629%7C5184000%7CMon%2C+03-Feb-2025+08%3A17%3A09+GMT; uid_tt=59a46c7d3f34bda9588b93590cca2e12; uid_tt_ss=59a46c7d3f34bda9588b93590cca2e12; sid_tt=a7eb745aec44bb3186dbc2083ea9e1a6; sessionid=a7eb745aec44bb3186dbc2083ea9e1a6; sessionid_ss=a7eb745aec44bb3186dbc2083ea9e1a6; is_staff_user=false; sid_ucp_v1=1.0.0-KGRiOGY2ODQyNWU1OTk3NzRhYTE2ZmZhYmFjNjdmYjY3NzRmZGRiZTgKHgjToPCw0cwbEIXDxboGGJ-tHyAMMITDxboGOAhAJhoCaGwiIGE3ZWI3NDVhZWM0NGJiMzE4NmRiYzIwODNlYTllMWE2; ssid_ucp_v1=1.0.0-KGRiOGY2ODQyNWU1OTk3NzRhYTE2ZmZhYmFjNjdmYjY3NzRmZGRiZTgKHgjToPCw0cwbEIXDxboGGJ-tHyAMMITDxboGOAhAJhoCaGwiIGE3ZWI3NDVhZWM0NGJiMzE4NmRiYzIwODNlYTllMWE2; store-region=cn-gd; store-region-src=uid; user_spaces_idc={"7444764277623653426":"lf"}; ttwid=1|cxHJViEev1mfkjntdMziir8SwbU8uPNVSaeh9QpEUs8|1733966961|d8d52f5f56607427691be4ac44253f7870a34d25dd05a01b4d89b8a7c5ea82ad; _tea_web_id=7444838473275573797; fpk1=fa6c6a4d9ba074b90003896f36b6960066521c1faec6a60bdcb69ec8ddf85e8360b4c0704412848ec582b2abca73d57a; odin_tt=efe9dc150207879b88509e651a1c4af4e7ffb4cfcb522425a75bd72fbf894eda570bbf7ffb551c8b1de0aa2bfa0bd1be6c4157411ecdcf4464fcaf8dd6657d66', + Referer: "https://jimeng.jianying.com/ai-tool/image/generate", + // "Device-Time": 1733966964, + // Sign: "f3dbb824b378abea7c03cbb152b3a365" + } + }); + logger.info(`\n积分信息: \n赠送积分: ${gift_credit}, 购买积分: ${purchase_credit}, VIP积分: ${vip_credit}`); + return { + giftCredit: gift_credit, + purchaseCredit: purchase_credit, + vipCredit: vip_credit, + totalCredit: gift_credit + purchase_credit + vip_credit + } +} + +/** + * 接收今日积分 + * + * @param refreshToken 用于刷新access_token的refresh_token + */ +export async function receiveCredit(refreshToken: string) { + logger.info("正在收取今日积分...") + const { cur_total_credits, receive_quota } = await request("POST", "/commerce/v1/benefits/credit_receive", refreshToken, { + data: { + time_zone: "Asia/Shanghai" + }, + headers: { + Referer: "https://jimeng.jianying.com/ai-tool/image/generate" + } + }); + logger.info(`\n今日${receive_quota}积分收取成功\n剩余积分: ${cur_total_credits}`); + return cur_total_credits; +} + +/** + * 请求jimeng + * + * @param method 请求方法 + * @param uri 请求路径 + * @param params 请求参数 + * @param headers 请求头 + */ +export async function request( + method: string, + uri: string, + refreshToken: string, + options: AxiosRequestConfig = {}, + host: string= "", + region: string= "", +) { + const token = await acquireToken(refreshToken); + const deviceTime = util.unixTimestamp(); + const sign = util.md5( + `9e2c|${uri.slice(-7)}|${PLATFORM_CODE}|${VERSION_CODE}|${deviceTime}||11ac` + ); + const response = await axios.request({ + method, + url: `${host||'https://jimeng.jianying.com'}${uri}`, + params: { + aid: DEFAULT_ASSISTANT_ID, + device_platform: "web", + region: region||"CN", + web_id: WEB_ID, + ...(options.params || {}), + }, + headers: { + ...FAKE_HEADERS, + Cookie: generateCookie(token), + "Device-Time": deviceTime, + Sign: sign, + "Sign-Ver": "1", + ...(options.headers || {}), + }, + timeout: 15000, + validateStatus: () => true, + ..._.omit(options, "params", "headers"), + }); + // 流式响应直接返回response + if (options.responseType == "stream") return response; + return checkResult(response); +} + +/** + * 预检查文件URL有效性 + * + * @param fileUrl 文件URL + */ +export async function checkFileUrl(fileUrl: string) { + if (util.isBASE64Data(fileUrl)) return; + const result = await axios.head(fileUrl, { + timeout: 15000, + validateStatus: () => true, + }); + if (result.status >= 400) + throw new APIException( + EX.API_FILE_URL_INVALID, + `File ${fileUrl} is not valid: [${result.status}] ${result.statusText}` + ); + // 检查文件大小 + if (result.headers && result.headers["content-length"]) { + const fileSize = parseInt(result.headers["content-length"], 10); + if (fileSize > FILE_MAX_SIZE) + throw new APIException( + EX.API_FILE_EXECEEDS_SIZE, + `File ${fileUrl} is not valid` + ); + } +} + +/** + * 上传文件 + * + * @param fileUrl 文件URL + * @param refreshToken 用于刷新access_token的refresh_token + * @param isVideoImage 是否是用于视频图像 + */ +export async function uploadFile( + fileUrl: string, + refreshToken: string, + isVideoImage: boolean = false +) { + // 预检查远程文件URL可用性 + await checkFileUrl(fileUrl); + + let filename, fileData, mimeType; + // 如果是BASE64数据则直接转换为Buffer + if (util.isBASE64Data(fileUrl)) { + mimeType = util.extractBASE64DataFormat(fileUrl); + const ext = mime.getExtension(mimeType); + filename = `${util.uuid()}.${ext}`; + fileData = Buffer.from(util.removeBASE64DataHeader(fileUrl), "base64"); + } + // 下载文件到内存,如果您的服务器内存很小,建议考虑改造为流直传到下一个接口上,避免停留占用内存 + else { + filename = path.basename(fileUrl); + ({ data: fileData } = await axios.get(fileUrl, { + responseType: "arraybuffer", + // 100M限制 + maxContentLength: FILE_MAX_SIZE, + // 60秒超时 + timeout: 60000, + })); + } + + // 获取文件的MIME类型 + mimeType = mimeType || mime.getType(filename); + + // 待开发 +} + +/** + * 检查请求结果 + * + * @param result 结果 + */ +export function checkResult(result: AxiosResponse) { + const { ret, errmsg, data } = result.data; + if (!_.isFinite(Number(ret))) return result.data; + if (ret === '0') return data; + if (ret === '5000') + throw new APIException(EX.API_IMAGE_GENERATION_INSUFFICIENT_POINTS, `[无法生成图像]: 即梦积分可能不足,${errmsg}`); + throw new APIException(EX.API_REQUEST_FAILED, `[请求jimeng失败]: ${errmsg}`); +} + +/** + * Token切分 + * + * @param authorization 认证字符串 + */ +export function tokenSplit(authorization: string) { + return authorization.replace("Bearer ", "").split(","); +} + +/** + * 获取Token存活状态 + */ +export async function getTokenLiveStatus(refreshToken: string) { + const result = await request( + "POST", + "/passport/account/info/v2", + refreshToken, + { + params: { + account_sdk_source: "web", + }, + } + ); + try { + const { user_id } = checkResult(result); + return !!user_id; + } catch (err) { + return false; + } +} \ No newline at end of file diff --git a/src/api/controllers/images.ts b/src/api/controllers/images.ts new file mode 100644 index 0000000..a9054e3 --- /dev/null +++ b/src/api/controllers/images.ts @@ -0,0 +1,484 @@ +import _ from "lodash"; + +import APIException from "@/lib/exceptions/APIException.ts"; +import EX from "@/api/consts/exceptions.ts"; +import util from "@/lib/util.ts"; +import { getCredit, receiveCredit, request } from "./core.ts"; +import logger from "@/lib/logger.ts"; + +const DEFAULT_ASSISTANT_ID = "513695"; +export const DEFAULT_MODEL = "jimeng-3.0"; +const DRAFT_VERSION = "3.0.2"; +const MODEL_MAP = { + "jimeng-3.0": "high_aes_general_v30l:general_v3.0_18b", + "jimeng-2.1": "high_aes_general_v21_L:general_v2.1_L", + "jimeng-2.0-pro": "high_aes_general_v20_L:general_v2.0_L", + "jimeng-2.0": "high_aes_general_v20:general_v2.0", + "jimeng-1.4": "high_aes_general_v14:general_v1.4", + "jimeng-xl-pro": "text2img_xl_sft", +}; + +export function getModel(model: string) { + return MODEL_MAP[model] || MODEL_MAP[DEFAULT_MODEL]; +} + +export async function generateImages( + _model: string, + prompt: string, + { + width = 1024, + height = 1024, + sampleStrength = 0.5, + negativePrompt = "", + }: { + width?: number; + height?: number; + sampleStrength?: number; + negativePrompt?: string; + }, + refreshToken: string +) { + const model = getModel(_model); + logger.info(`使用模型: ${_model} 映射模型: ${model} ${width}x${height} 精细度: ${sampleStrength}`); + + const { totalCredit } = await getCredit(refreshToken); + if (totalCredit <= 0) + await receiveCredit(refreshToken); + + const componentId = util.uuid(); + const { aigc_data } = await request( + "post", + "/mweb/v1/aigc_draft/generate", + refreshToken, + { + params: { + babi_param: encodeURIComponent( + JSON.stringify({ + scenario: "image_video_generation", + feature_key: "aigc_to_image", + feature_entrance: "to_image", + feature_entrance_detail: "to_image-" + model, + }) + ), + }, + data: { + extend: { + root_model: model, + template_id: "", + }, + submit_id: util.uuid(), + metrics_extra: JSON.stringify({ + templateId: "", + generateCount: 1, + promptSource: "custom", + templateSource: "", + lastRequestId: "", + originRequestId: "", + }), + draft_content: JSON.stringify({ + type: "draft", + id: util.uuid(), + min_version: DRAFT_VERSION, + is_from_tsn: true, + version: DRAFT_VERSION, + main_component_id: componentId, + component_list: [ + { + type: "image_base_component", + id: componentId, + min_version: DRAFT_VERSION, + generate_type: "generate", + aigc_mode: "workbench", + abilities: { + type: "", + id: util.uuid(), + generate: { + type: "", + id: util.uuid(), + core_param: { + type: "", + id: util.uuid(), + model, + prompt, + negative_prompt: negativePrompt, + seed: Math.floor(Math.random() * 100000000) + 2500000000, + sample_strength: sampleStrength, + image_ratio: 1, + large_image_info: { + type: "", + id: util.uuid(), + height, + width, + }, + }, + history_option: { + type: "", + id: util.uuid(), + }, + }, + }, + }, + ], + }), + http_common_info: { + aid: Number(DEFAULT_ASSISTANT_ID), + }, + }, + } + ); + const historyId = aigc_data.history_record_id; + if (!historyId) + throw new APIException(EX.API_IMAGE_GENERATION_FAILED, "记录ID不存在"); + let status = 20, failCode, item_list = []; + while (status === 20) { + await new Promise((resolve) => setTimeout(resolve, 1000)); + const result = await request("post", "/mweb/v1/get_history_by_ids", refreshToken, { + data: { + history_ids: [historyId], + image_info: { + width: 2048, + height: 2048, + format: "webp", + image_scene_list: [ + { + scene: "smart_crop", + width: 360, + height: 360, + uniq_key: "smart_crop-w:360-h:360", + format: "webp", + }, + { + scene: "smart_crop", + width: 480, + height: 480, + uniq_key: "smart_crop-w:480-h:480", + format: "webp", + }, + { + scene: "smart_crop", + width: 720, + height: 720, + uniq_key: "smart_crop-w:720-h:720", + format: "webp", + }, + { + scene: "smart_crop", + width: 720, + height: 480, + uniq_key: "smart_crop-w:720-h:480", + format: "webp", + }, + { + scene: "smart_crop", + width: 360, + height: 240, + uniq_key: "smart_crop-w:360-h:240", + format: "webp", + }, + { + scene: "smart_crop", + width: 240, + height: 320, + uniq_key: "smart_crop-w:240-h:320", + format: "webp", + }, + { + scene: "smart_crop", + width: 480, + height: 640, + uniq_key: "smart_crop-w:480-h:640", + format: "webp", + }, + { + scene: "normal", + width: 2400, + height: 2400, + uniq_key: "2400", + format: "webp", + }, + { + scene: "normal", + width: 1080, + height: 1080, + uniq_key: "1080", + format: "webp", + }, + { + scene: "normal", + width: 720, + height: 720, + uniq_key: "720", + format: "webp", + }, + { + scene: "normal", + width: 480, + height: 480, + uniq_key: "480", + format: "webp", + }, + { + scene: "normal", + width: 360, + height: 360, + uniq_key: "360", + format: "webp", + }, + ], + }, + http_common_info: { + aid: Number(DEFAULT_ASSISTANT_ID), + }, + }, + }); + if (!result[historyId]) + throw new APIException(EX.API_IMAGE_GENERATION_FAILED, "记录不存在"); + status = result[historyId].status; + failCode = result[historyId].fail_code; + item_list = result[historyId].item_list; + } + if (status === 30) { + if (failCode === '2038') + throw new APIException(EX.API_CONTENT_FILTERED); + else + throw new APIException(EX.API_IMAGE_GENERATION_FAILED); + } + return item_list.map((item) => { + if(!item?.image?.large_images?.[0]?.image_url) + return item?.common_attr?.cover_url || null; + return item.image.large_images[0].image_url; + }); +} + +export async function uploadImages( + _model: string, + prompt: string, + { + width = 1024, + height = 1024, + sampleStrength = 0.5, + negativePrompt = "", + }: { + width?: number; + height?: number; + sampleStrength?: number; + negativePrompt?: string; + }, + refreshToken: string +) { + const model = getModel(_model); + logger.info(`使用模型: ${_model} 映射模型: ${model} ${width}x${height} 精细度: ${sampleStrength}`); + + const { totalCredit } = await getCredit(refreshToken); + if (totalCredit <= 0) + await receiveCredit(refreshToken); + + const componentId = util.uuid(); + const { aigc_data } = await request( + "post", + "/mweb/v1/get_upload_token", + refreshToken, + { + params: { + babi_param: encodeURIComponent( + JSON.stringify({ + scenario: "image_video_generation", + feature_key: "aigc_to_image", + feature_entrance: "to_image", + feature_entrance_detail: "to_image-" + model, + }) + ), + }, + data: { + extend: { + root_model: model, + template_id: "", + }, + submit_id: util.uuid(), + metrics_extra: JSON.stringify({ + templateId: "", + generateCount: 1, + promptSource: "custom", + templateSource: "", + lastRequestId: "", + originRequestId: "", + }), + draft_content: JSON.stringify({ + type: "draft", + id: util.uuid(), + min_version: DRAFT_VERSION, + is_from_tsn: true, + version: DRAFT_VERSION, + main_component_id: componentId, + component_list: [ + { + type: "image_base_component", + id: componentId, + min_version: DRAFT_VERSION, + generate_type: "generate", + aigc_mode: "workbench", + abilities: { + type: "", + id: util.uuid(), + generate: { + type: "", + id: util.uuid(), + core_param: { + type: "", + id: util.uuid(), + model, + prompt, + negative_prompt: negativePrompt, + seed: Math.floor(Math.random() * 100000000) + 2500000000, + sample_strength: sampleStrength, + image_ratio: 1, + large_image_info: { + type: "", + id: util.uuid(), + height, + width, + }, + }, + history_option: { + type: "", + id: util.uuid(), + }, + }, + }, + }, + ], + }), + http_common_info: { + aid: Number(DEFAULT_ASSISTANT_ID), + }, + }, + } + ); + const historyId = aigc_data.history_record_id; + if (!historyId) + throw new APIException(EX.API_IMAGE_GENERATION_FAILED, "记录ID不存在"); + let status = 20, failCode, item_list = []; + while (status === 20) { + await new Promise((resolve) => setTimeout(resolve, 1000)); + const result = await request("post", "/mweb/v1/get_history_by_ids", refreshToken, { + data: { + history_ids: [historyId], + image_info: { + width: 2048, + height: 2048, + format: "webp", + image_scene_list: [ + { + scene: "smart_crop", + width: 360, + height: 360, + uniq_key: "smart_crop-w:360-h:360", + format: "webp", + }, + { + scene: "smart_crop", + width: 480, + height: 480, + uniq_key: "smart_crop-w:480-h:480", + format: "webp", + }, + { + scene: "smart_crop", + width: 720, + height: 720, + uniq_key: "smart_crop-w:720-h:720", + format: "webp", + }, + { + scene: "smart_crop", + width: 720, + height: 480, + uniq_key: "smart_crop-w:720-h:480", + format: "webp", + }, + { + scene: "smart_crop", + width: 360, + height: 240, + uniq_key: "smart_crop-w:360-h:240", + format: "webp", + }, + { + scene: "smart_crop", + width: 240, + height: 320, + uniq_key: "smart_crop-w:240-h:320", + format: "webp", + }, + { + scene: "smart_crop", + width: 480, + height: 640, + uniq_key: "smart_crop-w:480-h:640", + format: "webp", + }, + { + scene: "normal", + width: 2400, + height: 2400, + uniq_key: "2400", + format: "webp", + }, + { + scene: "normal", + width: 1080, + height: 1080, + uniq_key: "1080", + format: "webp", + }, + { + scene: "normal", + width: 720, + height: 720, + uniq_key: "720", + format: "webp", + }, + { + scene: "normal", + width: 480, + height: 480, + uniq_key: "480", + format: "webp", + }, + { + scene: "normal", + width: 360, + height: 360, + uniq_key: "360", + format: "webp", + }, + ], + }, + http_common_info: { + aid: Number(DEFAULT_ASSISTANT_ID), + }, + }, + }); + if (!result[historyId]) + throw new APIException(EX.API_IMAGE_GENERATION_FAILED, "记录不存在"); + status = result[historyId].status; + failCode = result[historyId].fail_code; + item_list = result[historyId].item_list; + } + if (status === 30) { + if (failCode === '2038') + throw new APIException(EX.API_CONTENT_FILTERED); + else + throw new APIException(EX.API_IMAGE_GENERATION_FAILED); + } + return item_list.map((item) => { + if(!item?.image?.large_images?.[0]?.image_url) + return item?.common_attr?.cover_url || null; + return item.image.large_images[0].image_url; + }); +} + +export default { + generateImages, + uploadImages, +}; diff --git a/src/api/controllers/upload.ts b/src/api/controllers/upload.ts new file mode 100644 index 0000000..484330b --- /dev/null +++ b/src/api/controllers/upload.ts @@ -0,0 +1,417 @@ +import _ from "lodash"; +import crypto from "crypto"; +import zlib from "zlib"; + +import APIException from "@/lib/exceptions/APIException.ts"; +import EX from "@/api/consts/exceptions.ts"; +import util from "@/lib/util.ts"; +import { getCredit, receiveCredit, request, checkResult } from "./core.ts"; +import logger from "@/lib/logger.ts"; +import axios, { AxiosRequestConfig, AxiosResponse } from "axios"; + +const DEFAULT_ASSISTANT_ID = "513695"; +const DRAFT_VERSION = "3.0.2"; + +const constant = { + "algorithm": "AWS4-HMAC-SHA256", + "v4Identifier": "aws4_request", + "dateHeader": "X-Amz-Date", + "tokenHeader": "x-amz-security-token", + "contentSha256Header": "X-Amz-Content-Sha256", + "kDatePrefix": "AWS4" +} +const ff = [ + "authorization", + "content-type", + "content-length", + "user-agent", + "presigned-expires", + "expect", + "x-amzn-trace-id" +] +// 伪装headers +const FAKE_HEADERS = { + // authorization: "AWS4-HMAC-SHA256 Credential=AKTPNTcwMWUwZmE2ODNhNDk3OWE1M2ViNjU1ZDllNjcyMWI/20250529/cn-north-1/imagex/aws4_request, SignedHeaders=x-amz-date;x-amz-security-token, Signature=ca3fb22fa6b1940e45d7c744964d06af50053b3eb1105ae0b840027001190845", + "accept": "*/*", + "accept-encoding": "gzip, deflate, br, zstd", + "accept-language": "zh-CN,zh;q=0.9", + "cache-control": "no-cache", + "last-event-id": "undefined", + "origin": "https://jimeng.jianying.com", + "priority": "u=1, i", + "referer": "https://jimeng.jianying.com", + "sec-ch-ua":'"Google Chrome";v="131", "Chromium";v="131", "Not_A Brand";v="24"', + "sec-ch-ua-mobile": "?0", + "sec-ch-ua-platform": '"Windows"', + "sec-fetch-dest": "empty", + "sec-fetch-mode": "cors", + "sec-fetch-site": "cors-site", + "user-agent": + "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", +}; +const hostStr = "https://imagex.bytedanceapi.com/"; +const regionStr = "cn-north-1"; +const serviceNameStr = "imagex"; + + +// const te = { +// "accessKeyId": "AKTPMTZjYTJkNWMzOWY1NDYxMmFlMmRlNDUxZTc3ODI4Yzk", +// "secretAccessKey": "gWRJ+a7OLWDH+rsGUYNCSlV2r1zltBu+KNvO9TuLgzG+jrFv4ClLyVH/awi1Q3Uq", +// "sessionToken": "STS2eyJMVEFjY2Vzc0tleUlEIjoiQUtMVFpUQm1ZbVl4TlRsa1ptVmpOREJqWVRrM09UUTNZbU5pTmprMk1EUXdaV00iLCJBY2Nlc3NLZXlJRCI6IkFLVFBNVFpqWVRKa05XTXpPV1kxTkRZeE1tRmxNbVJsTkRVeFpUYzNPREk0WXprIiwiU2lnbmVkU2VjcmV0QWNjZXNzS2V5IjoiN25ZU0o3T0FCMGZubHlKSENBbzcrOTMyV1FPbkUxck00ZnRuNHpPcVc2Unc1NTJJSWRnY3E1YkF6dWd0VUZaRTZPSzhUa3JBb2c3TW9GV3UzeWplZjV2Y3I2cndUWWM4dklYMzdiZ1BuSWM9IiwiRXhwaXJlZFRpbWUiOjE3NDg1OTEzMDksIlBvbGljeVN0cmluZyI6IntcIlN0YXRlbWVudFwiOlt7XCJFZmZlY3RcIjpcIkFsbG93XCIsXCJBY3Rpb25cIjpbXCJ2b2Q6QXBwbHlVcGxvYWRcIixcInZvZDpBcHBseVVwbG9hZElubmVyXCIsXCJ2b2Q6Q29tbWl0VXBsb2FkXCIsXCJ2b2Q6Q29tbWl0VXBsb2FkSW5uZXJcIixcInZvZDpHZXRVcGxvYWRDYW5kaWRhdGVzXCIsXCJJbWFnZVg6QXBwbHlJbWFnZVVwbG9hZFwiLFwiSW1hZ2VYOkNvbW1pdEltYWdlVXBsb2FkXCIsXCJJbWFnZVg6QXBwbHlVcGxvYWRJbWFnZUZpbGVcIixcIkltYWdlWDpDb21taXRVcGxvYWRJbWFnZUZpbGVcIl0sXCJSZXNvdXJjZVwiOltcIipcIl0sXCJDb25kaXRpb25cIjpcIntcXFwiUFNNXFxcIjpcXFwidmlkZW9jdXQubXdlYi5hcGlcXFwifVwifV19IiwiU2lnbmF0dXJlIjoiZTkyNGRmY2Q2ZjE4OTM1NTg5ZjBjYzk5NDc3MjkxZjU5MDk5NGE0ZGZmMGU1Mjc5YjkwZTk1NmUwY2Q0MWFlMiJ9" +// } +// const tq = { +// "Action": "ApplyImageUpload", +// "Version": "2018-08-01", +// "ServiceId": "tb4s082cfz", +// "FileSize": 1930510, +// "s": "5sohmgy6e1p" +// } +// const ttt = "20250530T064830Z"; + +function toQueryString(any) { + var e = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : {}; + return Object.keys(e).map(function(t) { + return "".concat(t, "=").concat(encodeURIComponent(e[t])) + }).join("&") +} +function iso8601(e) { + return void 0 === e && (e = new Date), + e.toISOString().replace(/\.\d{3}Z$/, "Z") +} + +function createScope(e, t, r) { + return [e.substr(0, 8), t, r, constant.v4Identifier].join("/") +} +function credentialString(e) { + return createScope(e.substr(0, 8), regionStr, serviceNameStr) +} +function p1(str: any): string { // Changed 'e' to 'str' and added 'any' type for broader compatibility initially + let s = String(str); // Ensure it's a string, as query params can be numbers (e.g., FileSize) + // encodeURIComponent does not encode: A-Z a-z 0-9 - _ . ! ~ * ' ( ) + // AWS Signature V4 requires specific encoding for certain characters (RFC3986). + // Notably, '*' should be %2A. '!' ' ( ) ' should also be percent-encoded. + // '~' is allowed unencoded by RFC3986. + return encodeURIComponent(s).replace(/[!'()*]/g, function (c) { + return '%' + c.charCodeAt(0).toString(16).toUpperCase(); + }); +} +function help(e) { + return Object.keys(e).sort().map(function(t) { + var r = e[t]; + if (null != r) { + var n = p1(t); + if (n) + return Array.isArray(r) ? "".concat(n, "=").concat(r.map(p1).sort().join("&".concat(n, "="))) : "".concat(n, "=").concat(p1(r)) + } + }).filter(function(e) { + return e + }).join("&") +} +function isSignableHeader(e) { + return 0 === e.toLowerCase().indexOf("x-amz-") || 0 > ff.indexOf(e) +} +function canonicalHeaderValues(e) { + return e.replace(/\s+/g, " ").replace(/^\s+|\s+$/g, "") +} +function canonicalHeaders(headers) { + var t = []; + Object.keys(headers).forEach(function(r) { + t.push([r, headers[r]]) + }), + t.sort(function(e, t) { + return e[0].toLowerCase() < t[0].toLowerCase() ? -1 : 1 + }); + var r = []; + return t.forEach((t)=>{ + var n = t[0].toLowerCase(); + if (isSignableHeader(n)) { + var i = t[1]; + if (null == i || "function" != typeof i.toString) + throw Error("Header ".concat(n, " contains invalid value")); + r.push("".concat(n, ":").concat(canonicalHeaderValues(i.toString()))) + } + }), + r.join("\n") +} +function canonicalString(query, headers) { + var e = [] + , t = "/"; + return e.push("get".toUpperCase()), + e.push(t), + e.push(help(query) || ""), + e.push("".concat(canonicalHeaders(headers), "\n")), + e.push(signedHeaders(headers)), + e.push(hexEncodedHash("")), + e.join("\n") +} +function signedHeaders(headers) { + var t = []; + return Object.keys(headers).forEach((r)=>{ + r = r.toLowerCase(), + isSignableHeader(r) && t.push(r) + }), + t.sort().join(";") +} +function stringToSign(e, query, headers) { + let cs = canonicalString(query, headers); + // console.log(""); + // console.log("cs", cs); + let cs2 = hexEncodedHash(cs); + // console.log(""); + // console.log("cs2", cs2); + // console.log(""); + var t = []; + return t.push(constant.algorithm), + t.push(e), + t.push(credentialString(e)), + t.push(cs2), + t.join("\n") +} + +// Overloads for hmac to provide better type inference. Note: message is first, key is second. +function hmac(message: string, key: string, encoding: crypto.BinaryToTextEncoding): string; +function hmac(message: string, key: string): crypto.BinaryLike; +function hmac(message: string, key: crypto.BinaryLike, encoding: crypto.BinaryToTextEncoding): string; +function hmac(message: string, key: crypto.BinaryLike): crypto.BinaryLike; +function hmac(message: string, key: crypto.KeyObject, encoding: crypto.BinaryToTextEncoding): string; +function hmac(message: string, key: crypto.KeyObject): crypto.BinaryLike; +// Implementation +function hmac(message: string, key: crypto.BinaryLike | crypto.KeyObject, encoding?: crypto.BinaryToTextEncoding): string | Buffer | crypto.BinaryLike { + const hash = crypto.createHmac('sha256', key).update(message, 'utf-8'); + if (encoding) { + return hash.digest(encoding); + } + return hash.digest(); // Returns Buffer by default +} +function hexEncodedHash(k:string) { + return crypto.createHash("sha256").update(k, 'utf-8').digest("hex"); +} + +function getSigningKey(secretAccessKey: string, dateStamp: string, regionName: string, serviceName: string): crypto.BinaryLike { + const kSecret = "AWS4" + secretAccessKey; // kSecret is string + // Corrected parameter order: hmac(message, key) + const kDate: crypto.BinaryLike = hmac(dateStamp, kSecret); // hmac(string, string) -> Buffer + const kRegion: crypto.BinaryLike = hmac(regionName, kDate); // hmac(string, Buffer) -> Buffer + const kService: crypto.BinaryLike = hmac(serviceName, kRegion); // hmac(string, Buffer) -> Buffer + const kSigning: crypto.BinaryLike = hmac(constant.v4Identifier, kService); // hmac(string, Buffer) -> Buffer + return kSigning; +} + +function signature(secretAccessKey:string, amzDate:string, query: any, headers: any): string { + const dateStamp = amzDate.substring(0, 8); // Extract YYYYMMDD from YYYYMMDDTHHMMSSZ + const signingKey: crypto.BinaryLike = getSigningKey(secretAccessKey, dateStamp, regionStr, serviceNameStr); + const stringToSignValue = stringToSign(amzDate, query, headers); + // The final signature must be a hex string. + // Corrected parameter order: hmac(message, key, encoding) + return hmac(stringToSignValue, signingKey, 'hex'); +} + +function authorizationSign(accessKeyId, secretAccessKey, t, query, headers) { + var s = signature(secretAccessKey, t, query, headers); + // console.log("signature", s); + var r = [] + , n = credentialString(t); + return r.push("".concat(constant.algorithm, " Credential=").concat(accessKeyId, "/").concat(n)), + r.push("SignedHeaders=".concat(signedHeaders(headers))), + r.push("Signature=".concat(s)), + r.join(", ") +} + +/** + * 请求jimeng + * + * @param method 请求方法 + * @param uri 请求路径 + * @param params 请求参数 + * @param headers 请求头 + */ +async function requestUpload( + method: string, + uri: string, + data: any, // Added data parameter for request body + options: AxiosRequestConfig = {}, + host: string= "", +) { + let h = { + ...(options.headers || {}), + } + // console.log("requestUpload headers", h); + // return "" + const response = await axios.request({ + method, + url: `${host||'https://jimeng.jianying.com'}${uri}`, + data, // Use the new data parameter for the request body + params: { + ...(options.params || {}), + }, + headers: h, + timeout: 15000, + validateStatus: () => true, + ..._.omit(options, "params", "headers"), + }); + // 流式响应直接返回response + if (options.responseType == "stream") return response; + // console.log("response", response); + return checkResult(response); +} + +export async function getUploadToken(refreshToken: string){ + const res = await request( + "post", + "/mweb/v1/get_upload_token", + refreshToken, + { + params: {}, + data: { + scene: 2, + }, + } + ); + // console.log("get_upload_token", res); + return res; +} + +export async function getUploadService( + access_key_id:string, + secret_access_key:string, + session_token:string, + space_name:string, + upload_domain:string, + file_size:number, +){ + // console.log("access_key_id", access_key_id); + // console.log("secret_access_key", secret_access_key); + // console.log("session_token", session_token); + // console.log("space_name", space_name); + // console.log("upload_domain", upload_domain); + // console.log("file_size", file_size); + // console.log(""); + + let query = { + Action: "ApplyImageUpload", + Version: "2018-08-01", + ServiceId: space_name, + FileSize: file_size, + // s :Math.random().toString(36).substring(2) + s :"skloxwd3qfb" + }; + + // query = tq; + + // console.log("query",query); + // console.log(""); + let url = ""+toQueryString(query); + let time = new Date(); + let t = iso8601(time); + var r = t.replace(/[:\-]|\.\d{3}/g, ""); + // var r = "20250530T055559Z"; + // var r = ttt; + // console.log("r", r); + let headers = { + // "x-amz-security-token": te.sessionToken, + "x-amz-security-token": session_token, + "x-amz-date": r, + }; + let authorization = authorizationSign( + // te.accessKeyId, + // te.secretAccessKey, + access_key_id, + secret_access_key, + r, + query, + headers); + // console.log("url", url); + // console.log("authorization", authorization); + // console.log("headers", headers); + return await requestUpload( + "get", + "?"+url, + null, + { + headers: { + ...FAKE_HEADERS, + ...headers, + "authorization": authorization, + }, + }, `https://${upload_domain}/`); +} + +export function calculateCrc32Hex(data) { + // 计算 CRC32 值,Node.js 的 zlib.crc32 返回无符号整数 + //@ts-ignore + const crc32Value = zlib.crc32(data); + + // 将无符号整数转换为十六进制字符串 + // 使用 >>> 0 确保是无符号操作,尽管 zlib.crc32 已经返回无符号 + // 使用 toString(16) 转换为十六进制 + let hexString = (crc32Value >>> 0).toString(16); + + // 补零以确保是 8 位十六进制字符串(如果需要的话,取决于具体的格式要求) + // Python 的 hex()[2:] 对于 32 位整数会输出 8 位十六进制(不包括 0x) + while (hexString.length < 8) { + hexString = '0' + hexString; + } + + return hexString; +} + + +// 伪装headers +const FAKE_OSS_HEADERS = { + "accept": "*/*", + "accept-encoding": "gzip, deflate, br, zstd", + "accept-language": "zh-CN,zh;q=0.9", + "cache-control": "no-cache", + "last-event-id": "undefined", + "origin": "https://jimeng.jianying.com", + "priority": "u=1, i", + "referer": "https://jimeng.jianying.com", + "sec-ch-ua":'"Google Chrome";v="131", "Chromium";v="131", "Not_A Brand";v="24"', + "sec-ch-ua-mobile": "?0", + "sec-ch-ua-platform": '"Windows"', + "sec-fetch-dest": "empty", + "sec-fetch-mode": "cors", + "sec-fetch-site": "cors-site", + "user-agent": + "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36", +}; +export async function sendFile(url:string, crc32:string, authorization:string, fileBuffer:any){ + let headers = { + "content-type": "application/octet-stream", + "content-disposition": 'attachment; filename="undefined"', + "content-crc32": crc32, + "authorization": authorization, + } + return await requestUpload( + "post", + "", + fileBuffer, // data is the second param + { + headers: { + ...FAKE_OSS_HEADERS, + ...headers, + "authorization": authorization, + }, + }, url); +} + + +export async function uploadImages( + _model: string, + prompt: string, + { + width = 1024, + height = 1024, + sampleStrength = 0.5, + negativePrompt = "", + }: { + width?: number; + height?: number; + sampleStrength?: number; + negativePrompt?: string; + }, + refreshToken: string +) { + +} + diff --git a/src/api/controllers/video.ts b/src/api/controllers/video.ts new file mode 100644 index 0000000..f634afa --- /dev/null +++ b/src/api/controllers/video.ts @@ -0,0 +1,201 @@ +import _ from "lodash"; + +import APIException from "@/lib/exceptions/APIException.ts"; +import EX from "@/api/consts/exceptions.ts"; +import util from "@/lib/util.ts"; +import { getCredit, receiveCredit, request } from "./core.ts"; +import logger from "@/lib/logger.ts"; + +const DEFAULT_ASSISTANT_ID = "513695"; +export const DEFAULT_MODEL = "jimeng-v-3.0"; +const DRAFT_VERSION = "3.0.5"; +const DRAFT_V_VERSION = "1.0.0"; +const MODEL_MAP = { + "jimeng-v-3.0": "dreamina_ic_generate_video_model_vgfm_3.0", +}; + +export function getModel(model: string) { + return MODEL_MAP[model] || MODEL_MAP[DEFAULT_MODEL]; +} + +export async function generateVideo( + _model: string, + prompt: string, + { + width = 512, + height = 512, + imgURL = "", + duration = 5000, + }: { + width: number; + height: number; + imgURL: string; + duration: number; + }, + refreshToken: string +) { + if(!imgURL){ + throw new APIException(EX.API_REQUEST_PARAMS_INVALID); + return; + } + const model = getModel(_model); + logger.info(`使用模型: ${_model} : ${model} 参考图片尺寸: ${width}x${height} 图片地址 ${imgURL} 持续时间: ${duration} 提示词: ${prompt}`); + + const { totalCredit } = await getCredit(refreshToken); + if (totalCredit <= 0) + await receiveCredit(refreshToken); + + const componentId = util.uuid(); + const originSubmitId = util.uuid(); + const { aigc_data } = await request( + "post", + "/mweb/v1/aigc_draft/generate", + refreshToken, + { + params: { + babi_param: encodeURIComponent( + JSON.stringify({ + scenario: "image_video_generation", + feature_key: "text_to_video", + feature_entrance: "to_video", + feature_entrance_detail: "to_image-text_to_video", + }) + ), + }, + data: { + extend: { + m_video_commerce_info: { + resource_id: "generate_video", + resource_id_type: "str", + resource_sub_type: "aigc", + benefit_type: "basic_video_operation_vgfm_v_three" + }, + root_model: model, + template_id: "", + history_option: {}, + }, + submit_id: util.uuid(), + metrics_extra: JSON.stringify({ + promptSource: "custom", + originSubmitId: originSubmitId, + isDefaultSeed: 1, + originTemplateId: "", + imageNameMapping: {}, + }), + draft_content: JSON.stringify({ + type: "draft", + id: util.uuid(), + min_version: DRAFT_VERSION, + min_features: [], + is_from_tsn: true, + version: "3.2.2", + main_component_id: componentId, + component_list: [ + { + type: "video_base_component", + id: componentId, + min_version: DRAFT_V_VERSION, + generate_type: "gen_video", + aigc_mode: "workbench", + metadata: { + type: "", + id: util.uuid(), + created_platform: 3, + created_platform_version: "", + created_time_in_ms: Date.now(), + created_did: "", + }, + abilities: { + type: "", + id: util.uuid(), + gen_video:{ + type: "", + id: util.uuid(), + text_to_video_params:{ + type: "", + id: util.uuid(), + video_gen_inputs:[ + { + type: "", + id: util.uuid(), + min_version: DRAFT_V_VERSION, + prompt: prompt, + first_frame_image:{ + type: "image", + id: util.uuid(), + source_from: "upload", + platform_type: 1, + name: "", + image_uri: imgURL, + width: width, + height: height, + format: "", + uri: imgURL, + }, + video_mode:2, + fps:24, + duration_ms:duration, + } + ], + video_aspect_ratio:"9:16", + seed: Math.floor(Math.random() * 100000000) + 2500000000, + model_req_key: model, + }, + video_task_extra:{ + promptSource: "custom", + originSubmitId: originSubmitId, + isDefaultSeed: 1, + originTemplateId: "", + imageNameMapping: {}, + } + }, + }, + process_type:1, + }, + ], + }), + http_common_info: { + aid: Number(DEFAULT_ASSISTANT_ID), + }, + }, + } + ); + const historyId = aigc_data.history_record_id; + if (!historyId) + throw new APIException(EX.API_IMAGE_GENERATION_FAILED, "记录ID不存在"); + let status = 20, failCode, item_list = []; + //https://jimeng.jianying.com/mweb/v1/get_history_by_ids? + // + while (status === 20) { + await new Promise((resolve) => setTimeout(resolve, 1000)); + const result = await request("post", "/mweb/v1/get_history_by_ids", refreshToken, { + data: { + history_ids: [historyId], + http_common_info: { + aid: Number(DEFAULT_ASSISTANT_ID), + }, + }, + }); + if (!result[historyId]) + throw new APIException(EX.API_IMAGE_GENERATION_FAILED, "记录不存在"); + status = result[historyId].status; + failCode = result[historyId].fail_code; + item_list = result[historyId].item_list; + } + if (status === 30) { + if (failCode === '2038') + throw new APIException(EX.API_CONTENT_FILTERED); + else + throw new APIException(EX.API_IMAGE_GENERATION_FAILED); + } + return item_list.map((item) => { + if(!item?.video?.transcoded_video?.origin?.video_url) + // return item?.common_attr?.cover_url || null; + return null; + return item.video.transcoded_video.origin.video_url; + }); +} + +export default { + generateVideo, +}; diff --git a/src/api/routes/chat.ts b/src/api/routes/chat.ts new file mode 100644 index 0000000..405f21b --- /dev/null +++ b/src/api/routes/chat.ts @@ -0,0 +1,36 @@ +import _ from 'lodash'; + +import Request from '@/lib/request/Request.ts'; +import Response from '@/lib/response/Response.ts'; +import { tokenSplit } from '@/api/controllers/core.ts'; +import { createCompletion, createCompletionStream } from '@/api/controllers/chat.ts'; + +export default { + + prefix: '/v1/chat', + + post: { + + '/completions': async (request: Request) => { + request + .validate('body.model', v => _.isUndefined(v) || _.isString(v)) + .validate('body.messages', _.isArray) + .validate('headers.authorization', _.isString) + // refresh_token切分 + const tokens = tokenSplit(request.headers.authorization); + // 随机挑选一个refresh_token + const token = _.sample(tokens); + const { model, messages, stream } = request.body; + if (stream) { + const stream = await createCompletionStream(messages, token, model); + return new Response(stream, { + type: "text/event-stream" + }); + } + else + return await createCompletion(messages, token, model); + } + + } + +} \ No newline at end of file diff --git a/src/api/routes/images.ts b/src/api/routes/images.ts new file mode 100644 index 0000000..cc398db --- /dev/null +++ b/src/api/routes/images.ts @@ -0,0 +1,58 @@ +import _ from "lodash"; + +import Request from "@/lib/request/Request.ts"; +import { generateImages } from "@/api/controllers/images.ts"; +import { tokenSplit } from "@/api/controllers/core.ts"; +import util from "@/lib/util.ts"; + +export default { + prefix: "/v1/images", + + post: { + "/generations": async (request: Request) => { + request + .validate("body.model", v => _.isUndefined(v) || _.isString(v)) + .validate("body.prompt", _.isString) + .validate("body.negative_prompt", v => _.isUndefined(v) || _.isString(v)) + .validate("body.width", v => _.isUndefined(v) || _.isFinite(v)) + .validate("body.height", v => _.isUndefined(v) || _.isFinite(v)) + .validate("body.sample_strength", v => _.isUndefined(v) || _.isFinite(v)) + .validate("body.response_format", v => _.isUndefined(v) || _.isString(v)) + .validate("headers.authorization", _.isString); + // refresh_token切分 + const tokens = tokenSplit(request.headers.authorization); + // 随机挑选一个refresh_token + const token = _.sample(tokens); + const { + model, + prompt, + negative_prompt: negativePrompt, + width, + height, + sample_strength: sampleStrength, + response_format, + } = request.body; + const responseFormat = _.defaultTo(response_format, "url"); + const imageUrls = await generateImages(model, prompt, { + width, + height, + sampleStrength, + negativePrompt, + }, token); + let data = []; + if (responseFormat == "b64_json") { + data = ( + await Promise.all(imageUrls.map((url) => util.fetchFileBASE64(url))) + ).map((b64) => ({ b64_json: b64 })); + } else { + data = imageUrls.map((url) => ({ + url, + })); + } + return { + created: util.unixTimestamp(), + data, + }; + }, + }, +}; diff --git a/src/api/routes/index.ts b/src/api/routes/index.ts new file mode 100644 index 0000000..03de020 --- /dev/null +++ b/src/api/routes/index.ts @@ -0,0 +1,33 @@ +import fs from 'fs-extra'; + +import Response from '@/lib/response/Response.ts'; +import images from "./images.ts"; +import chat from "./chat.ts"; +import ping from "./ping.ts"; +import token from './token.js'; +// import models from './models.ts'; +import upload from './upload.ts'; +import video from './video.ts'; + +export default [ + { + get: { + '/': async () => { + const content = await fs.readFile('public/welcome.html'); + return new Response(content, { + type: 'html', + headers: { + Expires: '-1' + } + }); + } + } + }, + images, + chat, + ping, + token, + // models, + video, + upload +]; \ No newline at end of file diff --git a/src/api/routes/models.ts b/src/api/routes/models.ts new file mode 100644 index 0000000..2761bb5 --- /dev/null +++ b/src/api/routes/models.ts @@ -0,0 +1,21 @@ +import _ from 'lodash'; + +export default { + + prefix: '/v1', + + get: { + '/models': async () => { + return { + "data": [ + { + "id": "jimeng", + "object": "model", + "owned_by": "jimeng-free-api" + } + ] + }; + } + + } +} \ No newline at end of file diff --git a/src/api/routes/ping.ts b/src/api/routes/ping.ts new file mode 100644 index 0000000..dc9af72 --- /dev/null +++ b/src/api/routes/ping.ts @@ -0,0 +1,6 @@ +export default { + prefix: '/ping', + get: { + '': async () => "pong" + } +} \ No newline at end of file diff --git a/src/api/routes/token.ts b/src/api/routes/token.ts new file mode 100644 index 0000000..9cc0b3f --- /dev/null +++ b/src/api/routes/token.ts @@ -0,0 +1,39 @@ +import _ from 'lodash'; + +import Request from '@/lib/request/Request.ts'; +import Response from '@/lib/response/Response.ts'; +import { getTokenLiveStatus, getCredit, tokenSplit } from '@/api/controllers/core.ts'; +import logger from '@/lib/logger.ts'; + +export default { + + prefix: '/token', + + post: { + + '/check': async (request: Request) => { + request + .validate('body.token', _.isString) + const live = await getTokenLiveStatus(request.body.token); + return { + live + } + }, + + '/points': async (request: Request) => { + request + .validate('headers.authorization', _.isString) + // refresh_token切分 + const tokens = tokenSplit(request.headers.authorization); + const points = await Promise.all(tokens.map(async (token) => { + return { + token, + points: await getCredit(token) + } + })) + return points; + } + + } + +} \ No newline at end of file diff --git a/src/api/routes/upload.ts b/src/api/routes/upload.ts new file mode 100644 index 0000000..b495486 --- /dev/null +++ b/src/api/routes/upload.ts @@ -0,0 +1,139 @@ +import _ from "lodash"; +import fs from "fs"; +import { imageSize } from 'image-size'; + +import Request from "@/lib/request/Request.ts"; +import { getUploadToken, getUploadService, uploadImages, calculateCrc32Hex, sendFile } from "@/api/controllers/upload.ts"; +import { tokenSplit } from "@/api/controllers/core.ts"; +import util from "@/lib/util.ts"; +export default { + prefix: "/v1/upload", + + post: { + "/images": async (request: Request) => { + request + // .validate("body.model", v => _.isUndefined(v) || _.isString(v)) + // .validate("body.prompt", _.isString) + // .validate("body.negative_prompt", v => _.isUndefined(v) || _.isString(v)) + // .validate("body.width", v => _.isUndefined(v) || _.isFinite(v)) + // .validate("body.height", v => _.isUndefined(v) || _.isFinite(v)) + // .validate("body.sample_strength", v => _.isUndefined(v) || _.isFinite(v)) + // .validate("body.response_format", v => _.isUndefined(v) || _.isString(v)) + .validate("headers.authorization", _.isString); + const imageFile = request.files['image']||null; + // console.log(imageFile); + // refresh_token切分 + const tokens = tokenSplit(request.headers.authorization); + // 随机挑选一个refresh_token + const token = _.sample(tokens); + // const { + // model, + // prompt, + // negative_prompt: negativePrompt, + // width, + // height, + // sample_strength: sampleStrength, + // response_format, + // } = request.body; + // const responseFormat = _.defaultTo(response_format, "url"); + //获取oss授权信息 + const uploadInfo = await getUploadToken(token); + let file_size = 0; + let fileBuffer = null; + if (imageFile) { + file_size = imageFile.size; + // console.log("imageFile.filepath", imageFile.filepath); + fileBuffer = await fs.promises.readFile(imageFile.filepath); + } + if (file_size <= 0){ + return { + error: { + message: "请上传图片", + type: "invalid_request_error", + param: null, + code: "invalid_image_size", + }, + } + } + let crc32 = ""; + let dimensions = null; + if(fileBuffer){ + dimensions = imageSize(fileBuffer); + if ((dimensions.width*dimensions.height) < (100*100)){ + return { + error: { + message: "图片尺寸小于100x100", + type: "invalid_request_error", + param: null, + code: "invalid_image_size", + }, + } + } + crc32 = calculateCrc32Hex(fileBuffer); + // console.log("crc32", crc32); + } + //预上传请求 + let upres = await getUploadService( + uploadInfo.access_key_id, + uploadInfo.secret_access_key, + uploadInfo.session_token, + uploadInfo.space_name, + uploadInfo.upload_domain, + // te.accessKeyId, + // te.secretAccessKey, + // te.sessionToken, + // "tb4s082cfz", + // "imagex.bytedanceapi.com", + file_size, + ); + //发送图片 + if(upres && upres.ResponseMetadata){ + let resData = upres.ResponseMetadata; + // console.log("upres", resData); + if(resData.Error){ + return { + error: { + message: resData.Error.Message, + type: "图片服务返回错误", + param: null, + code: "invalid_request_error", + }, + } + } + } + let Result = upres.Result; + // console.log("Result", Result); + let UploadHost = Result.UploadAddress.UploadHosts[0]; + let StoreUri = Result.UploadAddress.StoreInfos[0].StoreUri; + let UploadID = Result.UploadAddress.StoreInfos[0].UploadID; + let Auth = Result.UploadAddress.StoreInfos[0].Auth; + let url = `https://${UploadHost}/upload/v1/${StoreUri}`; + // content-crc32: b7a66685 + // console.log("url", url); + // console.log("UploadID", UploadID); + // console.log("Auth", Auth); + let fres = await sendFile(url, crc32, Auth, fileBuffer); + // console.log("fres", fres); + if(!fres || fres.message != "Success"){ + return { + error: { + message: fres?(fres.message||'upload 请求失败'):'upload 请求失败', + type: "图片上传失败", + param: null, + code: fres?(fres.code||505):505, + }, + } + } + //上传结束 + return { + created: util.unixTimestamp(), + data:{ + imgURI:StoreUri, + fileSize:file_size, + width:dimensions.width, + height:dimensions.height, + }, + }; + }, + }, +}; diff --git a/src/api/routes/video.ts b/src/api/routes/video.ts new file mode 100644 index 0000000..d7794ba --- /dev/null +++ b/src/api/routes/video.ts @@ -0,0 +1,49 @@ +import _ from "lodash"; + +import Request from "@/lib/request/Request.ts"; +import { generateVideo } from "@/api/controllers/video.ts"; +import { tokenSplit } from "@/api/controllers/core.ts"; +import util from "@/lib/util.ts"; + +export default { + prefix: "/v1/video", + + post: { + "/generations": async (request: Request) => { + request + .validate("body.model", v => _.isUndefined(v) || _.isString(v)) + .validate("body.prompt", _.isString) + .validate("body.image", v => _.isUndefined(v) || _.isString(v)) + .validate("body.width", v => _.isUndefined(v) || _.isFinite(v)) + .validate("body.height", v => _.isUndefined(v) || _.isFinite(v)) + .validate("body.duration", v => _.isUndefined(v) || _.isFinite(v)) + .validate("headers.authorization", _.isString); + // refresh_token切分 + const tokens = tokenSplit(request.headers.authorization); + // 随机挑选一个refresh_token + const token = _.sample(tokens); + const { + model, + prompt, + width, + height, + image, + duration, + } = request.body; + const imageUrls = await generateVideo(model, prompt, { + width, + height, + imgURL:image, + duration:duration*1000, + }, token); + let data = []; + data = imageUrls.map((url) => ({ + url, + })); + return { + created: util.unixTimestamp(), + data, + }; + }, + }, +}; diff --git a/src/daemon.ts b/src/daemon.ts new file mode 100644 index 0000000..0c5fe69 --- /dev/null +++ b/src/daemon.ts @@ -0,0 +1,82 @@ +/** + * 守护进程 + */ + +import process from 'process'; +import path from 'path'; +import { spawn } from 'child_process'; + +import fs from 'fs-extra'; +import { format as dateFormat } from 'date-fns'; +import 'colors'; + +const CRASH_RESTART_LIMIT = 600; //进程崩溃重启次数限制 +const CRASH_RESTART_DELAY = 5000; //进程崩溃重启延迟 +const LOG_PATH = path.resolve("./logs/daemon.log"); //守护进程日志路径 +let crashCount = 0; //进程崩溃次数 +let currentProcess; //当前运行进程 + +/** + * 写入守护进程日志 + */ +function daemonLog(value, color?: string) { + try { + const head = `[daemon][${dateFormat(new Date(), "yyyy-MM-dd HH:mm:ss.SSS")}] `; + value = head + value; + console.log(color ? value[color] : value); + fs.ensureDirSync(path.dirname(LOG_PATH)); + fs.appendFileSync(LOG_PATH, value + "\n"); + } + catch(err) { + console.error("daemon log write error:", err); + } +} + +daemonLog(`daemon pid: ${process.pid}`); + +function createProcess() { + const childProcess = spawn("node", ["index.js", ...process.argv.slice(2)]); //启动子进程 + childProcess.stdout.pipe(process.stdout, { end: false }); //将子进程输出管道到当前进程输出 + childProcess.stderr.pipe(process.stderr, { end: false }); //将子进程错误输出管道到当前进程输出 + currentProcess = childProcess; //更新当前进程 + daemonLog(`process(${childProcess.pid}) has started`); + childProcess.on("error", err => daemonLog(`process(${childProcess.pid}) error: ${err.stack}`, "red")); + childProcess.on("close", code => { + if(code === 0) //进程正常退出 + daemonLog(`process(${childProcess.pid}) has exited`); + else if(code === 2) //进程已被杀死 + daemonLog(`process(${childProcess.pid}) has been killed!`, "bgYellow"); + else if(code === 3) { //进程主动重启 + daemonLog(`process(${childProcess.pid}) has restart`, "yellow"); + createProcess(); //重新创建进程 + } + else { //进程发生崩溃 + if(crashCount++ < CRASH_RESTART_LIMIT) { //进程崩溃次数未达重启次数上限前尝试重启 + daemonLog(`process(${childProcess.pid}) has crashed! delay ${CRASH_RESTART_DELAY}ms try restarting...(${crashCount})`, "bgRed"); + setTimeout(() => createProcess(), CRASH_RESTART_DELAY); //延迟指定时长后再重启 + } + else //进程已崩溃,且无法重启 + daemonLog(`process(${childProcess.pid}) has crashed! unable to restart`, "bgRed"); + } + }); //子进程关闭监听 +} + +process.on("exit", code => { + if(code === 0) + daemonLog("daemon process exited"); + else if(code === 2) + daemonLog("daemon process has been killed!"); +}); //守护进程退出事件 + +process.on("SIGTERM", () => { + daemonLog("received kill signal", "yellow"); + currentProcess && currentProcess.kill("SIGINT"); + process.exit(2); +}); //kill退出守护进程 + +process.on("SIGINT", () => { + currentProcess && currentProcess.kill("SIGINT"); + process.exit(0); +}); //主动退出守护进程 + +createProcess(); //创建进程 diff --git a/src/index.ts b/src/index.ts new file mode 100644 index 0000000..67618d2 --- /dev/null +++ b/src/index.ts @@ -0,0 +1,32 @@ +"use strict"; + +import environment from "@/lib/environment.ts"; +import config from "@/lib/config.ts"; +import "@/lib/initialize.ts"; +import server from "@/lib/server.ts"; +import routes from "@/api/routes/index.ts"; +import logger from "@/lib/logger.ts"; + +const startupTime = performance.now(); + +(async () => { + logger.header(); + + logger.info("<<<< jimeng free server >>>>"); + logger.info("Version:", environment.package.version); + logger.info("Process id:", process.pid); + logger.info("Environment:", environment.env); + logger.info("Service name:", config.service.name); + + server.attachRoutes(routes); + await server.listen(); + + config.service.bindAddress && + logger.success("Service bind address:", config.service.bindAddress); +})() + .then(() => + logger.success( + `Service startup completed (${Math.floor(performance.now() - startupTime)}ms)` + ) + ) + .catch((err) => console.error(err)); diff --git a/src/lib/config.ts b/src/lib/config.ts new file mode 100644 index 0000000..b6072d2 --- /dev/null +++ b/src/lib/config.ts @@ -0,0 +1,14 @@ +import serviceConfig from "./configs/service-config.ts"; +import systemConfig from "./configs/system-config.ts"; + +class Config { + + /** 服务配置 */ + service = serviceConfig; + + /** 系统配置 */ + system = systemConfig; + +} + +export default new Config(); \ No newline at end of file diff --git a/src/lib/configs/service-config.ts b/src/lib/configs/service-config.ts new file mode 100644 index 0000000..3419a8f --- /dev/null +++ b/src/lib/configs/service-config.ts @@ -0,0 +1,68 @@ +import path from 'path'; + +import fs from 'fs-extra'; +import yaml from 'yaml'; +import _ from 'lodash'; + +import environment from '../environment.ts'; +import util from '../util.ts'; + +const CONFIG_PATH = path.join(path.resolve(), 'configs/', environment.env, "/service.yml"); + +/** + * 服务配置 + */ +export class ServiceConfig { + + /** 服务名称 */ + name: string; + /** @type {string} 服务绑定主机地址 */ + host; + /** @type {number} 服务绑定端口 */ + port; + /** @type {string} 服务路由前缀 */ + urlPrefix; + /** @type {string} 服务绑定地址(外部访问地址) */ + bindAddress; + + constructor(options?: any) { + const { name, host, port, urlPrefix, bindAddress } = options || {}; + this.name = _.defaultTo(name, 'jimeng-free-api'); + this.host = _.defaultTo(host, '0.0.0.0'); + this.port = _.defaultTo(port, 5566); + this.urlPrefix = _.defaultTo(urlPrefix, ''); + this.bindAddress = bindAddress; + } + + get addressHost() { + if(this.bindAddress) return this.bindAddress; + const ipAddresses = util.getIPAddressesByIPv4(); + for(let ipAddress of ipAddresses) { + if(ipAddress === this.host) + return ipAddress; + } + return ipAddresses[0] || "127.0.0.1"; + } + + get address() { + return `${this.addressHost}:${this.port}`; + } + + get pageDirUrl() { + return `http://127.0.0.1:${this.port}/page`; + } + + get publicDirUrl() { + return `http://127.0.0.1:${this.port}/public`; + } + + static load() { + const external = _.pickBy(environment, (v, k) => ["name", "host", "port"].includes(k) && !_.isUndefined(v)); + if(!fs.pathExistsSync(CONFIG_PATH)) return new ServiceConfig(external); + const data = yaml.parse(fs.readFileSync(CONFIG_PATH).toString()); + return new ServiceConfig({ ...data, ...external }); + } + +} + +export default ServiceConfig.load(); \ No newline at end of file diff --git a/src/lib/configs/system-config.ts b/src/lib/configs/system-config.ts new file mode 100644 index 0000000..7c589a6 --- /dev/null +++ b/src/lib/configs/system-config.ts @@ -0,0 +1,84 @@ +import path from 'path'; + +import fs from 'fs-extra'; +import yaml from 'yaml'; +import _ from 'lodash'; + +import environment from '../environment.ts'; + +const CONFIG_PATH = path.join(path.resolve(), 'configs/', environment.env, "/system.yml"); + +/** + * 系统配置 + */ +export class SystemConfig { + + /** 是否开启请求日志 */ + requestLog: boolean; + /** 临时目录路径 */ + tmpDir: string; + /** 日志目录路径 */ + logDir: string; + /** 日志写入间隔(毫秒) */ + logWriteInterval: number; + /** 日志文件有效期(毫秒) */ + logFileExpires: number; + /** 公共目录路径 */ + publicDir: string; + /** 临时文件有效期(毫秒) */ + tmpFileExpires: number; + /** 请求体配置 */ + requestBody: any; + /** 是否调试模式 */ + debug: boolean; + + constructor(options?: any) { + const { requestLog, tmpDir, logDir, logWriteInterval, logFileExpires, publicDir, tmpFileExpires, requestBody, debug } = options || {}; + this.requestLog = _.defaultTo(requestLog, false); + this.tmpDir = _.defaultTo(tmpDir, './tmp'); + this.logDir = _.defaultTo(logDir, './logs'); + this.logWriteInterval = _.defaultTo(logWriteInterval, 200); + this.logFileExpires = _.defaultTo(logFileExpires, 2626560000); + this.publicDir = _.defaultTo(publicDir, './public'); + this.tmpFileExpires = _.defaultTo(tmpFileExpires, 86400000); + this.requestBody = Object.assign(requestBody || {}, { + enableTypes: ['json', 'form', 'text', 'xml'], + encoding: 'utf-8', + formLimit: '100mb', + jsonLimit: '100mb', + textLimit: '100mb', + xmlLimit: '100mb', + formidable: { + maxFileSize: '100mb' + }, + multipart: true, + parsedMethods: ['POST', 'PUT', 'PATCH'] + }); + this.debug = _.defaultTo(debug, true); + } + + get rootDirPath() { + return path.resolve(); + } + + get tmpDirPath() { + return path.resolve(this.tmpDir); + } + + get logDirPath() { + return path.resolve(this.logDir); + } + + get publicDirPath() { + return path.resolve(this.publicDir); + } + + static load() { + if (!fs.pathExistsSync(CONFIG_PATH)) return new SystemConfig(); + const data = yaml.parse(fs.readFileSync(CONFIG_PATH).toString()); + return new SystemConfig(data); + } + +} + +export default SystemConfig.load(); \ No newline at end of file diff --git a/src/lib/consts/exceptions.ts b/src/lib/consts/exceptions.ts new file mode 100644 index 0000000..7a9b788 --- /dev/null +++ b/src/lib/consts/exceptions.ts @@ -0,0 +1,5 @@ +export default { + SYSTEM_ERROR: [-1000, '系统异常'], + SYSTEM_REQUEST_VALIDATION_ERROR: [-1001, '请求参数校验错误'], + SYSTEM_NOT_ROUTE_MATCHING: [-1002, '无匹配的路由'] +} as Record \ No newline at end of file diff --git a/src/lib/environment.ts b/src/lib/environment.ts new file mode 100644 index 0000000..6e52a84 --- /dev/null +++ b/src/lib/environment.ts @@ -0,0 +1,44 @@ +import path from 'path'; + +import fs from 'fs-extra'; +import minimist from 'minimist'; +import _ from 'lodash'; + +const cmdArgs = minimist(process.argv.slice(2)); //获取命令行参数 +const envVars = process.env; //获取环境变量 + +class Environment { + + /** 命令行参数 */ + cmdArgs: any; + /** 环境变量 */ + envVars: any; + /** 环境名称 */ + env?: string; + /** 服务名称 */ + name?: string; + /** 服务地址 */ + host?: string; + /** 服务端口 */ + port?: number; + /** 包参数 */ + package: any; + + constructor(options: any = {}) { + const { cmdArgs, envVars, package: _package } = options; + this.cmdArgs = cmdArgs; + this.envVars = envVars; + this.env = _.defaultTo(cmdArgs.env || envVars.SERVER_ENV, 'dev'); + this.name = cmdArgs.name || envVars.SERVER_NAME || undefined; + this.host = cmdArgs.host || envVars.SERVER_HOST || undefined; + this.port = Number(cmdArgs.port || envVars.SERVER_PORT) ? Number(cmdArgs.port || envVars.SERVER_PORT) : undefined; + this.package = _package; + } + +} + +export default new Environment({ + cmdArgs, + envVars, + package: JSON.parse(fs.readFileSync(path.join(path.resolve(), "package.json")).toString()) +}); \ No newline at end of file diff --git a/src/lib/exceptions/APIException.ts b/src/lib/exceptions/APIException.ts new file mode 100644 index 0000000..515c806 --- /dev/null +++ b/src/lib/exceptions/APIException.ts @@ -0,0 +1,14 @@ +import Exception from './Exception.js'; + +export default class APIException extends Exception { + + /** + * 构造异常 + * + * @param {[number, string]} exception 异常 + */ + constructor(exception: (string | number)[], errmsg?: string) { + super(exception, errmsg); + } + +} \ No newline at end of file diff --git a/src/lib/exceptions/Exception.ts b/src/lib/exceptions/Exception.ts new file mode 100644 index 0000000..ef0372f --- /dev/null +++ b/src/lib/exceptions/Exception.ts @@ -0,0 +1,47 @@ +import assert from 'assert'; + +import _ from 'lodash'; + +export default class Exception extends Error { + + /** 错误码 */ + errcode: number; + /** 错误消息 */ + errmsg: string; + /** 数据 */ + data: any; + /** HTTP状态码 */ + httpStatusCode: number; + + /** + * 构造异常 + * + * @param exception 异常 + * @param _errmsg 异常消息 + */ + constructor(exception: (string | number)[], _errmsg?: string) { + assert(_.isArray(exception), 'Exception must be Array'); + const [errcode, errmsg] = exception as [number, string]; + assert(_.isFinite(errcode), 'Exception errcode invalid'); + assert(_.isString(errmsg), 'Exception errmsg invalid'); + super(_errmsg || errmsg); + this.errcode = errcode; + this.errmsg = _errmsg || errmsg; + } + + compare(exception: (string | number)[]) { + const [errcode] = exception as [number, string]; + return this.errcode == errcode; + } + + setHTTPStatusCode(value: number) { + this.httpStatusCode = value; + return this; + } + + setData(value: any) { + this.data = _.defaultTo(value, null); + return this; + } + +} \ No newline at end of file diff --git a/src/lib/http-status-codes.ts b/src/lib/http-status-codes.ts new file mode 100644 index 0000000..cc0c571 --- /dev/null +++ b/src/lib/http-status-codes.ts @@ -0,0 +1,61 @@ +export default { + + CONTINUE: 100, //客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝。客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应。服务器必须在请求完成后向客户端发送一个最终响应 + SWITCHING_PROTOCOLS: 101, //服务器已经理解了客户端的请求,并将通过Upgrade 消息头通知客户端采用不同的协议来完成这个请求。在发送完这个响应最后的空行后,服务器将会切换到在Upgrade 消息头中定义的那些协议。只有在切换新的协议更有好处的时候才应该采取类似措施。例如,切换到新的HTTP 版本比旧版本更有优势,或者切换到一个实时且同步的协议以传送利用此类特性的资源 + PROCESSING: 102, //处理将被继续执行 + + OK: 200, //请求已成功,请求所希望的响应头或数据体将随此响应返回 + CREATED: 201, //请求已经被实现,而且有一个新的资源已经依据请求的需要而建立,且其 URI 已经随Location 头信息返回。假如需要的资源无法及时建立的话,应当返回 '202 Accepted' + ACCEPTED: 202, //服务器已接受请求,但尚未处理。正如它可能被拒绝一样,最终该请求可能会也可能不会被执行。在异步操作的场合下,没有比发送这个状态码更方便的做法了。返回202状态码的响应的目的是允许服务器接受其他过程的请求(例如某个每天只执行一次的基于批处理的操作),而不必让客户端一直保持与服务器的连接直到批处理操作全部完成。在接受请求处理并返回202状态码的响应应当在返回的实体中包含一些指示处理当前状态的信息,以及指向处理状态监视器或状态预测的指针,以便用户能够估计操作是否已经完成 + NON_AUTHORITATIVE_INFO: 203, //服务器已成功处理了请求,但返回的实体头部元信息不是在原始服务器上有效的确定集合,而是来自本地或者第三方的拷贝。当前的信息可能是原始版本的子集或者超集。例如,包含资源的元数据可能导致原始服务器知道元信息的超级。使用此状态码不是必须的,而且只有在响应不使用此状态码便会返回200 OK的情况下才是合适的 + NO_CONTENT: 204, //服务器成功处理了请求,但不需要返回任何实体内容,并且希望返回更新了的元信息。响应可能通过实体头部的形式,返回新的或更新后的元信息。如果存在这些头部信息,则应当与所请求的变量相呼应。如果客户端是浏览器的话,那么用户浏览器应保留发送了该请求的页面,而不产生任何文档视图上的变化,即使按照规范新的或更新后的元信息应当被应用到用户浏览器活动视图中的文档。由于204响应被禁止包含任何消息体,因此它始终以消息头后的第一个空行结尾 + RESET_CONTENT: 205, //服务器成功处理了请求,且没有返回任何内容。但是与204响应不同,返回此状态码的响应要求请求者重置文档视图。该响应主要是被用于接受用户输入后,立即重置表单,以便用户能够轻松地开始另一次输入。与204响应一样,该响应也被禁止包含任何消息体,且以消息头后的第一个空行结束 + PARTIAL_CONTENT: 206, //服务器已经成功处理了部分 GET 请求。类似于FlashGet或者迅雷这类的HTTP下载工具都是使用此类响应实现断点续传或者将一个大文档分解为多个下载段同时下载。该请求必须包含 Range 头信息来指示客户端希望得到的内容范围,并且可能包含 If-Range 来作为请求条件。响应必须包含如下的头部域:Content-Range 用以指示本次响应中返回的内容的范围;如果是Content-Type为multipart/byteranges的多段下载,则每一段multipart中都应包含Content-Range域用以指示本段的内容范围。假如响应中包含Content-Length,那么它的数值必须匹配它返回的内容范围的真实字节数。Date和ETag或Content-Location,假如同样的请求本应该返回200响应。Expires, Cache-Control,和/或 Vary,假如其值可能与之前相同变量的其他响应对应的值不同的话。假如本响应请求使用了 If-Range 强缓存验证,那么本次响应不应该包含其他实体头;假如本响应的请求使用了 If-Range 弱缓存验证,那么本次响应禁止包含其他实体头;这避免了缓存的实体内容和更新了的实体头信息之间的不一致。否则,本响应就应当包含所有本应该返回200响应中应当返回的所有实体头部域。假如 ETag 或 Latest-Modified 头部不能精确匹配的话,则客户端缓存应禁止将206响应返回的内容与之前任何缓存过的内容组合在一起。任何不支持 Range 以及 Content-Range 头的缓存都禁止缓存206响应返回的内容 + MULTIPLE_STATUS: 207, //代表之后的消息体将是一个XML消息,并且可能依照之前子请求数量的不同,包含一系列独立的响应代码 + + MULTIPLE_CHOICES: 300, //被请求的资源有一系列可供选择的回馈信息,每个都有自己特定的地址和浏览器驱动的商议信息。用户或浏览器能够自行选择一个首选的地址进行重定向。除非这是一个HEAD请求,否则该响应应当包括一个资源特性及地址的列表的实体,以便用户或浏览器从中选择最合适的重定向地址。这个实体的格式由Content-Type定义的格式所决定。浏览器可能根据响应的格式以及浏览器自身能力,自动作出最合适的选择。当然,RFC 2616规范并没有规定这样的自动选择该如何进行。如果服务器本身已经有了首选的回馈选择,那么在Location中应当指明这个回馈的 URI;浏览器可能会将这个 Location 值作为自动重定向的地址。此外,除非额外指定,否则这个响应也是可缓存的 + MOVED_PERMANENTLY: 301, //被请求的资源已永久移动到新位置,并且将来任何对此资源的引用都应该使用本响应返回的若干个URI之一。如果可能,拥有链接编辑功能的客户端应当自动把请求的地址修改为从服务器反馈回来的地址。除非额外指定,否则这个响应也是可缓存的。新的永久性的URI应当在响应的Location域中返回。除非这是一个HEAD请求,否则响应的实体中应当包含指向新的URI的超链接及简短说明。如果这不是一个GET或者HEAD请求,因此浏览器禁止自动进行重定向,除非得到用户的确认,因为请求的条件可能因此发生变化。注意:对于某些使用 HTTP/1.0 协议的浏览器,当它们发送的POST请求得到了一个301响应的话,接下来的重定向请求将会变成GET方式 + FOUND: 302, //请求的资源现在临时从不同的URI响应请求。由于这样的重定向是临时的,客户端应当继续向原有地址发送以后的请求。只有在Cache-Control或Expires中进行了指定的情况下,这个响应才是可缓存的。新的临时性的URI应当在响应的 Location 域中返回。除非这是一个HEAD请求,否则响应的实体中应当包含指向新的URI的超链接及简短说明。如果这不是一个GET或者HEAD请求,那么浏览器禁止自动进行重定向,除非得到用户的确认,因为请求的条件可能因此发生变化。注意:虽然RFC 1945和RFC 2068规范不允许客户端在重定向时改变请求的方法,但是很多现存的浏览器将302响应视作为303响应,并且使用GET方式访问在Location中规定的URI,而无视原先请求的方法。状态码303和307被添加了进来,用以明确服务器期待客户端进行何种反应 + SEE_OTHER: 303, //对应当前请求的响应可以在另一个URI上被找到,而且客户端应当采用 GET 的方式访问那个资源。这个方法的存在主要是为了允许由脚本激活的POST请求输出重定向到一个新的资源。这个新的 URI 不是原始资源的替代引用。同时,303响应禁止被缓存。当然,第二个请求(重定向)可能被缓存。新的 URI 应当在响应的Location域中返回。除非这是一个HEAD请求,否则响应的实体中应当包含指向新的URI的超链接及简短说明。注意:许多 HTTP/1.1 版以前的浏览器不能正确理解303状态。如果需要考虑与这些浏览器之间的互动,302状态码应该可以胜任,因为大多数的浏览器处理302响应时的方式恰恰就是上述规范要求客户端处理303响应时应当做的 + NOT_MODIFIED: 304, //如果客户端发送了一个带条件的GET请求且该请求已被允许,而文档的内容(自上次访问以来或者根据请求的条件)并没有改变,则服务器应当返回这个状态码。304响应禁止包含消息体,因此始终以消息头后的第一个空行结尾。该响应必须包含以下的头信息:Date,除非这个服务器没有时钟。假如没有时钟的服务器也遵守这些规则,那么代理服务器以及客户端可以自行将Date字段添加到接收到的响应头中去(正如RFC 2068中规定的一样),缓存机制将会正常工作。ETag或 Content-Location,假如同样的请求本应返回200响应。Expires, Cache-Control,和/或Vary,假如其值可能与之前相同变量的其他响应对应的值不同的话。假如本响应请求使用了强缓存验证,那么本次响应不应该包含其他实体头;否则(例如,某个带条件的 GET 请求使用了弱缓存验证),本次响应禁止包含其他实体头;这避免了缓存了的实体内容和更新了的实体头信息之间的不一致。假如某个304响应指明了当前某个实体没有缓存,那么缓存系统必须忽视这个响应,并且重复发送不包含限制条件的请求。假如接收到一个要求更新某个缓存条目的304响应,那么缓存系统必须更新整个条目以反映所有在响应中被更新的字段的值 + USE_PROXY: 305, //被请求的资源必须通过指定的代理才能被访问。Location域中将给出指定的代理所在的URI信息,接收者需要重复发送一个单独的请求,通过这个代理才能访问相应资源。只有原始服务器才能建立305响应。注意:RFC 2068中没有明确305响应是为了重定向一个单独的请求,而且只能被原始服务器建立。忽视这些限制可能导致严重的安全后果 + UNUSED: 306, //在最新版的规范中,306状态码已经不再被使用 + TEMPORARY_REDIRECT: 307, //请求的资源现在临时从不同的URI 响应请求。由于这样的重定向是临时的,客户端应当继续向原有地址发送以后的请求。只有在Cache-Control或Expires中进行了指定的情况下,这个响应才是可缓存的。新的临时性的URI 应当在响应的Location域中返回。除非这是一个HEAD请求,否则响应的实体中应当包含指向新的URI 的超链接及简短说明。因为部分浏览器不能识别307响应,因此需要添加上述必要信息以便用户能够理解并向新的 URI 发出访问请求。如果这不是一个GET或者HEAD请求,那么浏览器禁止自动进行重定向,除非得到用户的确认,因为请求的条件可能因此发生变化 + + BAD_REQUEST: 400, //1.语义有误,当前请求无法被服务器理解。除非进行修改,否则客户端不应该重复提交这个请求 2.请求参数有误 + UNAUTHORIZED: 401, //当前请求需要用户验证。该响应必须包含一个适用于被请求资源的 WWW-Authenticate 信息头用以询问用户信息。客户端可以重复提交一个包含恰当的 Authorization 头信息的请求。如果当前请求已经包含了 Authorization 证书,那么401响应代表着服务器验证已经拒绝了那些证书。如果401响应包含了与前一个响应相同的身份验证询问,且浏览器已经至少尝试了一次验证,那么浏览器应当向用户展示响应中包含的实体信息,因为这个实体信息中可能包含了相关诊断信息。参见RFC 2617 + PAYMENT_REQUIRED: 402, //该状态码是为了将来可能的需求而预留的 + FORBIDDEN: 403, //服务器已经理解请求,但是拒绝执行它。与401响应不同的是,身份验证并不能提供任何帮助,而且这个请求也不应该被重复提交。如果这不是一个HEAD请求,而且服务器希望能够讲清楚为何请求不能被执行,那么就应该在实体内描述拒绝的原因。当然服务器也可以返回一个404响应,假如它不希望让客户端获得任何信息 + NOT_FOUND: 404, //请求失败,请求所希望得到的资源未被在服务器上发现。没有信息能够告诉用户这个状况到底是暂时的还是永久的。假如服务器知道情况的话,应当使用410状态码来告知旧资源因为某些内部的配置机制问题,已经永久的不可用,而且没有任何可以跳转的地址。404这个状态码被广泛应用于当服务器不想揭示到底为何请求被拒绝或者没有其他适合的响应可用的情况下 + METHOD_NOT_ALLOWED: 405, //请求行中指定的请求方法不能被用于请求相应的资源。该响应必须返回一个Allow 头信息用以表示出当前资源能够接受的请求方法的列表。鉴于PUT,DELETE方法会对服务器上的资源进行写操作,因而绝大部分的网页服务器都不支持或者在默认配置下不允许上述请求方法,对于此类请求均会返回405错误 + NO_ACCEPTABLE: 406, //请求的资源的内容特性无法满足请求头中的条件,因而无法生成响应实体。除非这是一个 HEAD 请求,否则该响应就应当返回一个包含可以让用户或者浏览器从中选择最合适的实体特性以及地址列表的实体。实体的格式由Content-Type头中定义的媒体类型决定。浏览器可以根据格式及自身能力自行作出最佳选择。但是,规范中并没有定义任何作出此类自动选择的标准 + PROXY_AUTHENTICATION_REQUIRED: 407, //与401响应类似,只不过客户端必须在代理服务器上进行身份验证。代理服务器必须返回一个Proxy-Authenticate用以进行身份询问。客户端可以返回一个Proxy-Authorization信息头用以验证。参见RFC 2617 + REQUEST_TIMEOUT: 408, //请求超时。客户端没有在服务器预备等待的时间内完成一个请求的发送。客户端可以随时再次提交这一请求而无需进行任何更改 + CONFLICT: 409, //由于和被请求的资源的当前状态之间存在冲突,请求无法完成。这个代码只允许用在这样的情况下才能被使用:用户被认为能够解决冲突,并且会重新提交新的请求。该响应应当包含足够的信息以便用户发现冲突的源头。冲突通常发生于对PUT请求的处理中。例如,在采用版本检查的环境下,某次PUT提交的对特定资源的修改请求所附带的版本信息与之前的某个(第三方)请求向冲突,那么此时服务器就应该返回一个409错误,告知用户请求无法完成。此时,响应实体中很可能会包含两个冲突版本之间的差异比较,以便用户重新提交归并以后的新版本 + GONE: 410, //被请求的资源在服务器上已经不再可用,而且没有任何已知的转发地址。这样的状况应当被认为是永久性的。如果可能,拥有链接编辑功能的客户端应当在获得用户许可后删除所有指向这个地址的引用。如果服务器不知道或者无法确定这个状况是否是永久的,那么就应该使用404状态码。除非额外说明,否则这个响应是可缓存的。410响应的目的主要是帮助网站管理员维护网站,通知用户该资源已经不再可用,并且服务器拥有者希望所有指向这个资源的远端连接也被删除。这类事件在限时、增值服务中很普遍。同样,410响应也被用于通知客户端在当前服务器站点上,原本属于某个个人的资源已经不再可用。当然,是否需要把所有永久不可用的资源标记为'410 Gone',以及是否需要保持此标记多长时间,完全取决于服务器拥有者 + LENGTH_REQUIRED: 411, //服务器拒绝在没有定义Content-Length头的情况下接受请求。在添加了表明请求消息体长度的有效Content-Length头之后,客户端可以再次提交该请求 + PRECONDITION_FAILED: 412, //服务器在验证在请求的头字段中给出先决条件时,没能满足其中的一个或多个。这个状态码允许客户端在获取资源时在请求的元信息(请求头字段数据)中设置先决条件,以此避免该请求方法被应用到其希望的内容以外的资源上 + REQUEST_ENTITY_TOO_LARGE: 413, //服务器拒绝处理当前请求,因为该请求提交的实体数据大小超过了服务器愿意或者能够处理的范围。此种情况下,服务器可以关闭连接以免客户端继续发送此请求。如果这个状况是临时的,服务器应当返回一个 Retry-After 的响应头,以告知客户端可以在多少时间以后重新尝试 + REQUEST_URI_TOO_LONG: 414, //请求的URI长度超过了服务器能够解释的长度,因此服务器拒绝对该请求提供服务。这比较少见,通常的情况包括:本应使用POST方法的表单提交变成了GET方法,导致查询字符串(Query String)过长。重定向URI “黑洞”,例如每次重定向把旧的URI作为新的URI的一部分,导致在若干次重定向后URI超长。客户端正在尝试利用某些服务器中存在的安全漏洞攻击服务器。这类服务器使用固定长度的缓冲读取或操作请求的URI,当GET后的参数超过某个数值后,可能会产生缓冲区溢出,导致任意代码被执行[1]。没有此类漏洞的服务器,应当返回414状态码 + UNSUPPORTED_MEDIA_TYPE: 415, //对于当前请求的方法和所请求的资源,请求中提交的实体并不是服务器中所支持的格式,因此请求被拒绝 + REQUESTED_RANGE_NOT_SATISFIABLE: 416, //如果请求中包含了Range请求头,并且Range中指定的任何数据范围都与当前资源的可用范围不重合,同时请求中又没有定义If-Range请求头,那么服务器就应当返回416状态码。假如Range使用的是字节范围,那么这种情况就是指请求指定的所有数据范围的首字节位置都超过了当前资源的长度。服务器也应当在返回416状态码的同时,包含一个Content-Range实体头,用以指明当前资源的长度。这个响应也被禁止使用multipart/byteranges作为其 Content-Type + EXPECTION_FAILED: 417, //在请求头Expect中指定的预期内容无法被服务器满足,或者这个服务器是一个代理服务器,它有明显的证据证明在当前路由的下一个节点上,Expect的内容无法被满足 + TOO_MANY_CONNECTIONS: 421, //从当前客户端所在的IP地址到服务器的连接数超过了服务器许可的最大范围。通常,这里的IP地址指的是从服务器上看到的客户端地址(比如用户的网关或者代理服务器地址)。在这种情况下,连接数的计算可能涉及到不止一个终端用户 + UNPROCESSABLE_ENTITY: 422, //请求格式正确,但是由于含有语义错误,无法响应 + FAILED_DEPENDENCY: 424, //由于之前的某个请求发生的错误,导致当前请求失败,例如PROPPATCH + UNORDERED_COLLECTION: 425, //在WebDav Advanced Collections 草案中定义,但是未出现在《WebDAV 顺序集协议》(RFC 3658)中 + UPGRADE_REQUIRED: 426, //客户端应当切换到TLS/1.0 + RETRY_WITH: 449, //由微软扩展,代表请求应当在执行完适当的操作后进行重试 + + INTERNAL_SERVER_ERROR: 500, //服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理。一般来说,这个问题都会在服务器的程序码出错时出现 + NOT_IMPLEMENTED: 501, //服务器不支持当前请求所需要的某个功能。当服务器无法识别请求的方法,并且无法支持其对任何资源的请求 + BAD_GATEWAY: 502, //作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应 + SERVICE_UNAVAILABLE: 503, //由于临时的服务器维护或者过载,服务器当前无法处理请求。这个状况是临时的,并且将在一段时间以后恢复。如果能够预计延迟时间,那么响应中可以包含一个 Retry-After 头用以标明这个延迟时间。如果没有给出这个 Retry-After 信息,那么客户端应当以处理500响应的方式处理它。注意:503状态码的存在并不意味着服务器在过载的时候必须使用它。某些服务器只不过是希望拒绝客户端的连接 + GATEWAY_TIMEOUT: 504, //作为网关或者代理工作的服务器尝试执行请求时,未能及时从上游服务器(URI标识出的服务器,例如HTTP、FTP、LDAP)或者辅助服务器(例如DNS)收到响应。注意:某些代理服务器在DNS查询超时时会返回400或者500错误 + HTTP_VERSION_NOT_SUPPORTED: 505, //服务器不支持,或者拒绝支持在请求中使用的HTTP版本。这暗示着服务器不能或不愿使用与客户端相同的版本。响应中应当包含一个描述了为何版本不被支持以及服务器支持哪些协议的实体 + VARIANT_ALSO_NEGOTIATES: 506, //服务器存在内部配置错误:被请求的协商变元资源被配置为在透明内容协商中使用自己,因此在一个协商处理中不是一个合适的重点 + INSUFFICIENT_STORAGE: 507, //服务器无法存储完成请求所必须的内容。这个状况被认为是临时的 + BANDWIDTH_LIMIT_EXCEEDED: 509, //服务器达到带宽限制。这不是一个官方的状态码,但是仍被广泛使用 + NOT_EXTENDED: 510 //获取资源所需要的策略并没有没满足 + +}; \ No newline at end of file diff --git a/src/lib/initialize.ts b/src/lib/initialize.ts new file mode 100644 index 0000000..953d224 --- /dev/null +++ b/src/lib/initialize.ts @@ -0,0 +1,28 @@ +import logger from './logger.js'; + +// 允许无限量的监听器 +process.setMaxListeners(Infinity); +// 输出未捕获异常 +process.on("uncaughtException", (err, origin) => { + logger.error(`An unhandled error occurred: ${origin}`, err); +}); +// 输出未处理的Promise.reject +process.on("unhandledRejection", (_, promise) => { + promise.catch(err => logger.error("An unhandled rejection occurred:", err)); +}); +// 输出系统警告信息 +process.on("warning", warning => logger.warn("System warning: ", warning)); +// 进程退出监听 +process.on("exit", () => { + logger.info("Service exit"); + logger.footer(); +}); +// 进程被kill +process.on("SIGTERM", () => { + logger.warn("received kill signal"); + process.exit(2); +}); +// Ctrl-C进程退出 +process.on("SIGINT", () => { + process.exit(0); +}); \ No newline at end of file diff --git a/src/lib/interfaces/ICompletionMessage.ts b/src/lib/interfaces/ICompletionMessage.ts new file mode 100644 index 0000000..5aad345 --- /dev/null +++ b/src/lib/interfaces/ICompletionMessage.ts @@ -0,0 +1,4 @@ +export default interface ICompletionMessage { + role: 'system' | 'assistant' | 'user' | 'function'; + content: string; +} \ No newline at end of file diff --git a/src/lib/logger.ts b/src/lib/logger.ts new file mode 100644 index 0000000..32cb3a6 --- /dev/null +++ b/src/lib/logger.ts @@ -0,0 +1,184 @@ +import path from 'path'; +import _util from 'util'; + +import 'colors'; +import _ from 'lodash'; +import fs from 'fs-extra'; +import { format as dateFormat } from 'date-fns'; + +import config from './config.ts'; +import util from './util.ts'; + +const isVercelEnv = process.env.VERCEL; + +class LogWriter { + + #buffers = []; + + constructor() { + !isVercelEnv && fs.ensureDirSync(config.system.logDirPath); + !isVercelEnv && this.work(); + } + + push(content) { + const buffer = Buffer.from(content); + this.#buffers.push(buffer); + } + + writeSync(buffer) { + !isVercelEnv && fs.appendFileSync(path.join(config.system.logDirPath, `/${util.getDateString()}.log`), buffer); + } + + async write(buffer) { + !isVercelEnv && await fs.appendFile(path.join(config.system.logDirPath, `/${util.getDateString()}.log`), buffer); + } + + flush() { + if(!this.#buffers.length) return; + !isVercelEnv && fs.appendFileSync(path.join(config.system.logDirPath, `/${util.getDateString()}.log`), Buffer.concat(this.#buffers)); + } + + work() { + if (!this.#buffers.length) return setTimeout(this.work.bind(this), config.system.logWriteInterval); + const buffer = Buffer.concat(this.#buffers); + this.#buffers = []; + this.write(buffer) + .finally(() => setTimeout(this.work.bind(this), config.system.logWriteInterval)) + .catch(err => console.error("Log write error:", err)); + } + +} + +class LogText { + + /** @type {string} 日志级别 */ + level; + /** @type {string} 日志文本 */ + text; + /** @type {string} 日志来源 */ + source; + /** @type {Date} 日志发生时间 */ + time = new Date(); + + constructor(level, ...params) { + this.level = level; + this.text = _util.format.apply(null, params); + this.source = this.#getStackTopCodeInfo(); + } + + #getStackTopCodeInfo() { + const unknownInfo = { name: "unknown", codeLine: 0, codeColumn: 0 }; + const stackArray = new Error().stack.split("\n"); + const text = stackArray[4]; + if (!text) + return unknownInfo; + const match = text.match(/at (.+) \((.+)\)/) || text.match(/at (.+)/); + if (!match || !_.isString(match[2] || match[1])) + return unknownInfo; + const temp = match[2] || match[1]; + const _match = temp.match(/([a-zA-Z0-9_\-\.]+)\:(\d+)\:(\d+)$/); + if (!_match) + return unknownInfo; + const [, scriptPath, codeLine, codeColumn] = _match as any; + return { + name: scriptPath ? scriptPath.replace(/.js$/, "") : "unknown", + path: scriptPath || null, + codeLine: parseInt(codeLine || 0), + codeColumn: parseInt(codeColumn || 0) + }; + } + + toString() { + return `[${dateFormat(this.time, "yyyy-MM-dd HH:mm:ss.SSS")}][${this.level}][${this.source.name}<${this.source.codeLine},${this.source.codeColumn}>] ${this.text}`; + } + +} + +class Logger { + + /** @type {Object} 系统配置 */ + config = {}; + /** @type {Object} 日志级别映射 */ + static Level = { + Success: "success", + Info: "info", + Log: "log", + Debug: "debug", + Warning: "warning", + Error: "error", + Fatal: "fatal" + }; + /** @type {Object} 日志级别文本颜色樱色 */ + static LevelColor = { + [Logger.Level.Success]: "green", + [Logger.Level.Info]: "brightCyan", + [Logger.Level.Debug]: "white", + [Logger.Level.Warning]: "brightYellow", + [Logger.Level.Error]: "brightRed", + [Logger.Level.Fatal]: "red" + }; + #writer; + + constructor() { + this.#writer = new LogWriter(); + } + + header() { + this.#writer.writeSync(Buffer.from(`\n\n===================== LOG START ${dateFormat(new Date(), "yyyy-MM-dd HH:mm:ss.SSS")} =====================\n\n`)); + } + + footer() { + this.#writer.flush(); //将未写入文件的日志缓存写入 + this.#writer.writeSync(Buffer.from(`\n\n===================== LOG END ${dateFormat(new Date(), "yyyy-MM-dd HH:mm:ss.SSS")} =====================\n\n`)); + } + + success(...params) { + const content = new LogText(Logger.Level.Success, ...params).toString(); + console.info(content[Logger.LevelColor[Logger.Level.Success]]); + this.#writer.push(content + "\n"); + } + + info(...params) { + const content = new LogText(Logger.Level.Info, ...params).toString(); + console.info(content[Logger.LevelColor[Logger.Level.Info]]); + this.#writer.push(content + "\n"); + } + + log(...params) { + const content = new LogText(Logger.Level.Log, ...params).toString(); + console.log(content[Logger.LevelColor[Logger.Level.Log]]); + this.#writer.push(content + "\n"); + } + + debug(...params) { + if(!config.system.debug) return; //非调试模式忽略debug + const content = new LogText(Logger.Level.Debug, ...params).toString(); + console.debug(content[Logger.LevelColor[Logger.Level.Debug]]); + this.#writer.push(content + "\n"); + } + + warn(...params) { + const content = new LogText(Logger.Level.Warning, ...params).toString(); + console.warn(content[Logger.LevelColor[Logger.Level.Warning]]); + this.#writer.push(content + "\n"); + } + + error(...params) { + const content = new LogText(Logger.Level.Error, ...params).toString(); + console.error(content[Logger.LevelColor[Logger.Level.Error]]); + this.#writer.push(content); + } + + fatal(...params) { + const content = new LogText(Logger.Level.Fatal, ...params).toString(); + console.error(content[Logger.LevelColor[Logger.Level.Fatal]]); + this.#writer.push(content); + } + + destory() { + this.#writer.destory(); + } + +} + +export default new Logger(); \ No newline at end of file diff --git a/src/lib/request/Request.ts b/src/lib/request/Request.ts new file mode 100644 index 0000000..86ab1ab --- /dev/null +++ b/src/lib/request/Request.ts @@ -0,0 +1,72 @@ +import _ from 'lodash'; + +import APIException from '@/lib/exceptions/APIException.ts'; +import EX from '@/api/consts/exceptions.ts'; +import logger from '@/lib/logger.ts'; +import util from '@/lib/util.ts'; + +export interface RequestOptions { + time?: number; +} + +export default class Request { + + /** 请求方法 */ + method: string; + /** 请求URL */ + url: string; + /** 请求路径 */ + path: string; + /** 请求载荷类型 */ + type: string; + /** 请求headers */ + headers: any; + /** 请求原始查询字符串 */ + search: string; + /** 请求查询参数 */ + query: any; + /** 请求URL参数 */ + params: any; + /** 请求载荷 */ + body: any; + /** 上传的文件 */ + files: any[]; + /** 客户端IP地址 */ + remoteIP: string | null; + /** 请求接受时间戳(毫秒) */ + time: number; + + constructor(ctx, options: RequestOptions = {}) { + const { time } = options; + this.method = ctx.request.method; + this.url = ctx.request.url; + this.path = ctx.request.path; + this.type = ctx.request.type; + this.headers = ctx.request.headers || {}; + this.search = ctx.request.search; + this.query = ctx.query || {}; + this.params = ctx.params || {}; + this.body = ctx.request.body || {}; + this.files = ctx.request.files || {}; + this.remoteIP = this.headers["X-Real-IP"] || this.headers["x-real-ip"] || this.headers["X-Forwarded-For"] || this.headers["x-forwarded-for"] || ctx.ip || null; + this.time = Number(_.defaultTo(time, util.timestamp())); + } + + validate(key: string, fn?: Function, message?: string) { + try { + const value = _.get(this, key); + if (fn) { + if (fn(value) === false) + throw `[Mismatch] -> ${fn}`; + } + else if (_.isUndefined(value)) + throw '[Undefined]'; + } + catch (err) { + logger.warn(`Params ${key} invalid:`, err); + throw new APIException(EX.API_REQUEST_PARAMS_INVALID, message || `Params ${key} invalid`); + } + return this; + } + +} \ No newline at end of file diff --git a/src/lib/response/Body.ts b/src/lib/response/Body.ts new file mode 100644 index 0000000..9cf8574 --- /dev/null +++ b/src/lib/response/Body.ts @@ -0,0 +1,41 @@ +import _ from 'lodash'; + +export interface BodyOptions { + code?: number; + message?: string; + data?: any; + statusCode?: number; +} + +export default class Body { + + /** 状态码 */ + code: number; + /** 状态消息 */ + message: string; + /** 载荷 */ + data: any; + /** HTTP状态码 */ + statusCode: number; + + constructor(options: BodyOptions = {}) { + const { code, message, data, statusCode } = options; + this.code = Number(_.defaultTo(code, 0)); + this.message = _.defaultTo(message, 'OK'); + this.data = _.defaultTo(data, null); + this.statusCode = Number(_.defaultTo(statusCode, 200)); + } + + toObject() { + return { + code: this.code, + message: this.message, + data: this.data + }; + } + + static isInstance(value) { + return value instanceof Body; + } + +} \ No newline at end of file diff --git a/src/lib/response/FailureBody.ts b/src/lib/response/FailureBody.ts new file mode 100644 index 0000000..33d7fb9 --- /dev/null +++ b/src/lib/response/FailureBody.ts @@ -0,0 +1,31 @@ +import _ from 'lodash'; + +import Body from './Body.ts'; +import Exception from '../exceptions/Exception.ts'; +import APIException from '../exceptions/APIException.ts'; +import EX from '../consts/exceptions.ts'; +import HTTP_STATUS_CODES from '../http-status-codes.ts'; + +export default class FailureBody extends Body { + + constructor(error: APIException | Exception | Error, _data?: any) { + let errcode, errmsg, data = _data, httpStatusCode = HTTP_STATUS_CODES.OK;; + if(_.isString(error)) + error = new Exception(EX.SYSTEM_ERROR, error); + else if(error instanceof APIException || error instanceof Exception) + ({ errcode, errmsg, data, httpStatusCode } = error); + else if(_.isError(error)) + ({ errcode, errmsg, data, httpStatusCode } = new Exception(EX.SYSTEM_ERROR, error.message)); + super({ + code: errcode || -1, + message: errmsg || 'Internal error', + data, + statusCode: httpStatusCode + }); + } + + static isInstance(value) { + return value instanceof FailureBody; + } + +} \ No newline at end of file diff --git a/src/lib/response/Response.ts b/src/lib/response/Response.ts new file mode 100644 index 0000000..816397d --- /dev/null +++ b/src/lib/response/Response.ts @@ -0,0 +1,63 @@ +import mime from 'mime'; +import _ from 'lodash'; + +import Body from './Body.ts'; +import util from '../util.ts'; + +export interface ResponseOptions { + statusCode?: number; + type?: string; + headers?: Record; + redirect?: string; + body?: any; + size?: number; + time?: number; +} + +export default class Response { + + /** 响应HTTP状态码 */ + statusCode: number; + /** 响应内容类型 */ + type: string; + /** 响应headers */ + headers: Record; + /** 重定向目标 */ + redirect: string; + /** 响应载荷 */ + body: any; + /** 响应载荷大小 */ + size: number; + /** 响应时间戳 */ + time: number; + + constructor(body: any, options: ResponseOptions = {}) { + const { statusCode, type, headers, redirect, size, time } = options; + this.statusCode = Number(_.defaultTo(statusCode, Body.isInstance(body) ? body.statusCode : undefined)) + this.type = type; + this.headers = headers; + this.redirect = redirect; + this.size = size; + this.time = Number(_.defaultTo(time, util.timestamp())); + this.body = body; + } + + injectTo(ctx) { + this.redirect && ctx.redirect(this.redirect); + this.statusCode && (ctx.status = this.statusCode); + this.type && (ctx.type = mime.getType(this.type) || this.type); + const headers = this.headers || {}; + if(this.size && !headers["Content-Length"] && !headers["content-length"]) + headers["Content-Length"] = this.size; + ctx.set(headers); + if(Body.isInstance(this.body)) + ctx.body = this.body.toObject(); + else + ctx.body = this.body; + } + + static isInstance(value) { + return value instanceof Response; + } + +} \ No newline at end of file diff --git a/src/lib/response/SuccessfulBody.ts b/src/lib/response/SuccessfulBody.ts new file mode 100644 index 0000000..639d0d8 --- /dev/null +++ b/src/lib/response/SuccessfulBody.ts @@ -0,0 +1,19 @@ +import _ from 'lodash'; + +import Body from './Body.ts'; + +export default class SuccessfulBody extends Body { + + constructor(data: any, message?: string) { + super({ + code: 0, + message: _.defaultTo(message, "OK"), + data + }); + } + + static isInstance(value) { + return value instanceof SuccessfulBody; + } + +} \ No newline at end of file diff --git a/src/lib/server.ts b/src/lib/server.ts new file mode 100644 index 0000000..8c0e46a --- /dev/null +++ b/src/lib/server.ts @@ -0,0 +1,173 @@ +import Koa from 'koa'; +import KoaRouter from 'koa-router'; +import koaRange from 'koa-range'; +import koaCors from "koa2-cors"; +import koaBody from 'koa-body'; +import _ from 'lodash'; + +import Exception from './exceptions/Exception.ts'; +import Request from './request/Request.ts'; +import Response from './response/Response.js'; +import FailureBody from './response/FailureBody.ts'; +import EX from './consts/exceptions.ts'; +import logger from './logger.ts'; +import config from './config.ts'; + +class Server { + + app; + router; + + constructor() { + this.app = new Koa(); + this.app.use(koaCors()); + // 范围请求支持 + this.app.use(koaRange); + this.router = new KoaRouter({ prefix: config.service.urlPrefix }); + // 前置处理异常拦截 + this.app.use(async (ctx: any, next: Function) => { + if(ctx.request.type === "application/xml" || ctx.request.type === "application/ssml+xml") + ctx.req.headers["content-type"] = "text/xml"; + try { await next() } + catch (err) { + logger.error(err); + const failureBody = new FailureBody(err); + new Response(failureBody).injectTo(ctx); + } + }); + // 载荷解析器支持 + this.app.use(koaBody(_.clone(config.system.requestBody))); + this.app.on("error", (err: any) => { + // 忽略连接重试、中断、管道、取消错误 + if (["ECONNRESET", "ECONNABORTED", "EPIPE", "ECANCELED"].includes(err.code)) return; + logger.error(err); + }); + logger.success("Server initialized"); + } + + /** + * 附加路由 + * + * @param routes 路由列表 + */ + attachRoutes(routes: any[]) { + routes.forEach((route: any) => { + const prefix = route.prefix || ""; + for (let method in route) { + if(method === "prefix") continue; + if (!_.isObject(route[method])) { + logger.warn(`Router ${prefix} ${method} invalid`); + continue; + } + for (let uri in route[method]) { + this.router[method](`${prefix}${uri}`, async ctx => { + const { request, response } = await this.#requestProcessing(ctx, route[method][uri]); + if(response != null && config.system.requestLog) + logger.info(`<- ${request.method} ${request.url} ${response.time - request.time}ms`); + }); + } + } + logger.info(`Route ${config.service.urlPrefix || ""}${prefix} attached`); + }); + this.app.use(this.router.routes()); + this.app.use((ctx: any) => { + const request = new Request(ctx); + logger.debug(`-> ${ctx.request.method} ${ctx.request.url} request is not supported - ${request.remoteIP || "unknown"}`); + // const failureBody = new FailureBody(new Exception(EX.SYSTEM_NOT_ROUTE_MATCHING, "Request is not supported")); + // const response = new Response(failureBody); + const message = `[请求有误]: 正确请求为 POST -> /v1/chat/completions,当前请求为 ${ctx.request.method} -> ${ctx.request.url} 请纠正`; + logger.warn(message); + const failureBody = new FailureBody(new Error(message)); + const response = new Response(failureBody); + response.injectTo(ctx); + if(config.system.requestLog) + logger.info(`<- ${request.method} ${request.url} ${response.time - request.time}ms`); + }); + } + + /** + * 请求处理 + * + * @param ctx 上下文 + * @param routeFn 路由方法 + */ + #requestProcessing(ctx: any, routeFn: Function): Promise { + return new Promise(resolve => { + const request = new Request(ctx); + try { + if(config.system.requestLog) + logger.info(`-> ${request.method} ${request.url}`); + routeFn(request) + .then(response => { + try { + if(!Response.isInstance(response)) { + const _response = new Response(response); + _response.injectTo(ctx); + return resolve({ request, response: _response }); + } + response.injectTo(ctx); + resolve({ request, response }); + } + catch(err) { + logger.error(err); + const failureBody = new FailureBody(err); + const response = new Response(failureBody); + response.injectTo(ctx); + resolve({ request, response }); + } + }) + .catch(err => { + try { + logger.error(err); + const failureBody = new FailureBody(err); + const response = new Response(failureBody); + response.injectTo(ctx); + resolve({ request, response }); + } + catch(err) { + logger.error(err); + const failureBody = new FailureBody(err); + const response = new Response(failureBody); + response.injectTo(ctx); + resolve({ request, response }); + } + }); + } + catch(err) { + logger.error(err); + const failureBody = new FailureBody(err); + const response = new Response(failureBody); + response.injectTo(ctx); + resolve({ request, response }); + } + }); + } + + /** + * 监听端口 + */ + async listen() { + const host = config.service.host; + const port = config.service.port; + await Promise.all([ + new Promise((resolve, reject) => { + if(host === "0.0.0.0" || host === "localhost" || host === "127.0.0.1") + return resolve(null); + this.app.listen(port, "localhost", err => { + if(err) return reject(err); + resolve(null); + }); + }), + new Promise((resolve, reject) => { + this.app.listen(port, host, err => { + if(err) return reject(err); + resolve(null); + }); + }) + ]); + logger.success(`Server listening on port ${port} (${host})`); + } + +} + +export default new Server(); \ No newline at end of file diff --git a/src/lib/util.ts b/src/lib/util.ts new file mode 100644 index 0000000..0f3fd16 --- /dev/null +++ b/src/lib/util.ts @@ -0,0 +1,307 @@ +import os from "os"; +import path from "path"; +import crypto from "crypto"; +import { Readable, Writable } from "stream"; + +import "colors"; +import mime from "mime"; +import axios from "axios"; +import fs from "fs-extra"; +import { v1 as uuid } from "uuid"; +import { format as dateFormat } from "date-fns"; +import CRC32 from "crc-32"; +import randomstring from "randomstring"; +import _ from "lodash"; +import { CronJob } from "cron"; + +import HTTP_STATUS_CODE from "./http-status-codes.ts"; + +const autoIdMap = new Map(); + +const util = { + is2DArrays(value: any) { + return ( + _.isArray(value) && + (!value[0] || (_.isArray(value[0]) && _.isArray(value[value.length - 1]))) + ); + }, + + uuid: (separator = true) => (separator ? uuid() : uuid().replace(/\-/g, "")), + + autoId: (prefix = "") => { + let index = autoIdMap.get(prefix); + if (index > 999999) index = 0; //超过最大数字则重置为0 + autoIdMap.set(prefix, (index || 0) + 1); + return `${prefix}${index || 1}`; + }, + + ignoreJSONParse(value: string) { + const result = _.attempt(() => JSON.parse(value)); + if (_.isError(result)) return null; + return result; + }, + + generateRandomString(options: any): string { + return randomstring.generate(options); + }, + + getResponseContentType(value: any): string | null { + return value.headers + ? value.headers["content-type"] || value.headers["Content-Type"] + : null; + }, + + mimeToExtension(value: string) { + let extension = mime.getExtension(value); + if (extension == "mpga") return "mp3"; + return extension; + }, + + extractURLExtension(value: string) { + const extname = path.extname(new URL(value).pathname); + return extname.substring(1).toLowerCase(); + }, + + createCronJob(cronPatterns: any, callback?: Function) { + if (!_.isFunction(callback)) + throw new Error("callback must be an Function"); + return new CronJob( + cronPatterns, + () => callback(), + null, + false, + "Asia/Shanghai" + ); + }, + + getDateString(format = "yyyy-MM-dd", date = new Date()) { + return dateFormat(date, format); + }, + + getIPAddressesByIPv4(): string[] { + const interfaces = os.networkInterfaces(); + const addresses = []; + for (let name in interfaces) { + const networks = interfaces[name]; + const results = networks.filter( + (network) => + network.family === "IPv4" && + network.address !== "127.0.0.1" && + !network.internal + ); + if (results[0] && results[0].address) addresses.push(results[0].address); + } + return addresses; + }, + + getMACAddressesByIPv4(): string[] { + const interfaces = os.networkInterfaces(); + const addresses = []; + for (let name in interfaces) { + const networks = interfaces[name]; + const results = networks.filter( + (network) => + network.family === "IPv4" && + network.address !== "127.0.0.1" && + !network.internal + ); + if (results[0] && results[0].mac) addresses.push(results[0].mac); + } + return addresses; + }, + + generateSSEData(event?: string, data?: string, retry?: number) { + return `event: ${event || "message"}\ndata: ${(data || "") + .replace(/\n/g, "\\n") + .replace(/\s/g, "\\s")}\nretry: ${retry || 3000}\n\n`; + }, + + buildDataBASE64(type, ext, buffer) { + return `data:${type}/${ext.replace("jpg", "jpeg")};base64,${buffer.toString( + "base64" + )}`; + }, + + isLinux() { + return os.platform() !== "win32"; + }, + + isIPAddress(value) { + return ( + _.isString(value) && + (/^((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)$/.test( + value + ) || + /\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*/.test( + value + )) + ); + }, + + isPort(value) { + return _.isNumber(value) && value > 0 && value < 65536; + }, + + isReadStream(value): boolean { + return ( + value && + (value instanceof Readable || "readable" in value || value.readable) + ); + }, + + isWriteStream(value): boolean { + return ( + value && + (value instanceof Writable || "writable" in value || value.writable) + ); + }, + + isHttpStatusCode(value) { + return _.isNumber(value) && Object.values(HTTP_STATUS_CODE).includes(value); + }, + + isURL(value) { + return !_.isUndefined(value) && /^(http|https)/.test(value); + }, + + isSrc(value) { + return !_.isUndefined(value) && /^\/.+\.[0-9a-zA-Z]+(\?.+)?$/.test(value); + }, + + isBASE64(value) { + return !_.isUndefined(value) && /^[a-zA-Z0-9\/\+]+(=?)+$/.test(value); + }, + + isBASE64Data(value) { + return /^data:/.test(value); + }, + + extractBASE64DataFormat(value): string | null { + const match = value.trim().match(/^data:(.+);base64,/); + if (!match) return null; + return match[1]; + }, + + removeBASE64DataHeader(value): string { + return value.replace(/^data:(.+);base64,/, ""); + }, + + isDataString(value): boolean { + return /^(base64|json):/.test(value); + }, + + isStringNumber(value) { + return _.isFinite(Number(value)); + }, + + isUnixTimestamp(value) { + return /^[0-9]{10}$/.test(`${value}`); + }, + + isTimestamp(value) { + return /^[0-9]{13}$/.test(`${value}`); + }, + + isEmail(value) { + return /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/.test( + value + ); + }, + + isAsyncFunction(value) { + return Object.prototype.toString.call(value) === "[object AsyncFunction]"; + }, + + async isAPNG(filePath) { + let head; + const readStream = fs.createReadStream(filePath, { start: 37, end: 40 }); + const readPromise = new Promise((resolve, reject) => { + readStream.once("end", resolve); + readStream.once("error", reject); + }); + readStream.once("data", (data) => (head = data)); + await readPromise; + return head.compare(Buffer.from([0x61, 0x63, 0x54, 0x4c])) === 0; + }, + + unixTimestamp() { + return parseInt(`${Date.now() / 1000}`); + }, + + timestamp() { + return Date.now(); + }, + + urlJoin(...values) { + let url = ""; + for (let i = 0; i < values.length; i++) + url += `${i > 0 ? "/" : ""}${values[i] + .replace(/^\/*/, "") + .replace(/\/*$/, "")}`; + return url; + }, + + millisecondsToHmss(milliseconds) { + if (_.isString(milliseconds)) return milliseconds; + milliseconds = parseInt(milliseconds); + const sec = Math.floor(milliseconds / 1000); + const hours = Math.floor(sec / 3600); + const minutes = Math.floor((sec - hours * 3600) / 60); + const seconds = sec - hours * 3600 - minutes * 60; + const ms = (milliseconds % 60000) - seconds * 1000; + return `${hours > 9 ? hours : "0" + hours}:${ + minutes > 9 ? minutes : "0" + minutes + }:${seconds > 9 ? seconds : "0" + seconds}.${ms}`; + }, + + millisecondsToTimeString(milliseconds) { + if (milliseconds < 1000) return `${milliseconds}ms`; + if (milliseconds < 60000) + return `${parseFloat((milliseconds / 1000).toFixed(2))}s`; + return `${Math.floor(milliseconds / 1000 / 60)}m${Math.floor( + (milliseconds / 1000) % 60 + )}s`; + }, + + rgbToHex(r, g, b): string { + return ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1); + }, + + hexToRgb(hex) { + const value = parseInt(hex.replace(/^#/, ""), 16); + return [(value >> 16) & 255, (value >> 8) & 255, value & 255]; + }, + + md5(value) { + return crypto.createHash("md5").update(value).digest("hex"); + }, + + crc32(value) { + return _.isBuffer(value) ? CRC32.buf(value) : CRC32.str(value); + }, + + arrayParse(value): any[] { + return _.isArray(value) ? value : [value]; + }, + + booleanParse(value) { + return value === "true" || value === true ? true : false; + }, + + encodeBASE64(value) { + return Buffer.from(value).toString("base64"); + }, + + decodeBASE64(value) { + return Buffer.from(value, "base64").toString(); + }, + + async fetchFileBASE64(url: string) { + const result = await axios.get(url, { + responseType: "arraybuffer", + }); + return result.data.toString("base64"); + }, +}; + +export default util; diff --git a/temp/1.txt b/temp/1.txt new file mode 100644 index 0000000..9c32d30 --- /dev/null +++ b/temp/1.txt @@ -0,0 +1,38 @@ +fd240d0ec5a3cc1537b0aa8776e7f911 + + +Bearer fd240d0ec5a3cc1537b0aa8776e7f911 + +{ + "model": "jimeng-3.0", + "prompt": "高达在宇宙中飞行", + "negativePrompt": "", + "width": 1024, + "height": 1024, + "sample_strength": 0.5 +} + +"GET +/ +Action=ApplyImageUpload&FileSize=2603128&ServiceId=tb4s082cfz&Version=2018-08-01&s=odorxpjp67n +x-amz-date:20250529T162653Z +x-amz-security-token:STS2eyJMVEFjY2Vzc0tleUlEIjoiQUtMVFpUQm1ZbVl4TlRsa1ptVmpOREJqWVRrM09UUTNZbU5pTmprMk1EUXdaV00iLCJBY2Nlc3NLZXlJRCI6IkFLVFBPVGN3WkRnNVpXTTFPVEV6TkdFek9UbGhOMkkzWTJKaE5HSXdORGM0TURZIiwiU2lnbmVkU2VjcmV0QWNjZXNzS2V5IjoiVDhFMTd4QmdzVEJheHRHWHlGenhOcXlySnZWb0g3TFFETG44UENQa0czd0VOaVc1OUFGU1VRRDIyTGdHenhkcGlUc1JJMmdtd3Rqd1B2YWRza2VwYVhMV1Z0Vi9rUEQxVEwza2pYcitZSVU9IiwiRXhwaXJlZFRpbWUiOjE3NDg1Mzk2MTEsIlBvbGljeVN0cmluZyI6IntcIlN0YXRlbWVudFwiOlt7XCJFZmZlY3RcIjpcIkFsbG93XCIsXCJBY3Rpb25cIjpbXCJ2b2Q6QXBwbHlVcGxvYWRcIixcInZvZDpBcHBseVVwbG9hZElubmVyXCIsXCJ2b2Q6Q29tbWl0VXBsb2FkXCIsXCJ2b2Q6Q29tbWl0VXBsb2FkSW5uZXJcIixcInZvZDpHZXRVcGxvYWRDYW5kaWRhdGVzXCIsXCJJbWFnZVg6QXBwbHlJbWFnZVVwbG9hZFwiLFwiSW1hZ2VYOkNvbW1pdEltYWdlVXBsb2FkXCIsXCJJbWFnZVg6QXBwbHlVcGxvYWRJbWFnZUZpbGVcIixcIkltYWdlWDpDb21taXRVcGxvYWRJbWFnZUZpbGVcIl0sXCJSZXNvdXJjZVwiOltcIipcIl0sXCJDb25kaXRpb25cIjpcIntcXFwiUFNNXFxcIjpcXFwidmlkZW9jdXQubXdlYi5hcGlcXFwifVwifV19IiwiU2lnbmF0dXJlIjoiMmJiYjdjODQ2NWE2NDhhNGVmMWQ0MTZiYzQ3ZGQ4NjJmMDMyNWM1MDIwNmZkNDI2MGJlZmZjNzM2N2E5YmNhOCJ9 + +x-amz-date;x-amz-security-token +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + +def generateAuthorization(secretAccessKey, region, service, canonical_querystring, amz_date, SessionToken, date_stamp, AccessKeyID): + signing_key = getSignatureKey(secretAccessKey, date_stamp, region, service) + canonical_headers = 'x-amz-date:' + amz_date + '\n' + 'x-amz-security-token:' + SessionToken + '\n' + canonical_request = "GET" + '\n' + + "/" + '\n' + canonical_querystring + + '\n' + canonical_headers + + '\n' + 'x-amz-date;x-amz-security-token' + + '\n' + hashlib.sha256("".encode("utf-8")).hexdigest() + algorithm = 'AWS4-HMAC-SHA256' + credential_scope = date_stamp + '/' + region + '/' + service + '/' + 'aws4_request' + string_to_sign = algorithm + '\n' + amz_date + '\n' + credential_scope + '\n' + + hashlib.sha256(canonical_request.encode("utf-8")).hexdigest() + Signature = hmac.new(signing_key, string_to_sign.encode("utf-8"), hashlib.sha256).hexdigest() + data = f"AWS4-HMAC-SHA256 Credential={AccessKeyID}/{date_stamp}/{region}/{service}/aws4_request, SignedHeaders=x-amz-date;x-amz-security-token, Signature={Signature}" + return data diff --git a/temp/2.txt b/temp/2.txt new file mode 100644 index 0000000..e6ca076 --- /dev/null +++ b/temp/2.txt @@ -0,0 +1,1350 @@ + +https://jimeng.jianying.com/mweb/v1/aigc_draft/generate +// aid=513695 +// babi_param=%7B%22 +// scenario%22%3A%22 +// image_video_generation%22%2C%22 +// feature_key%22%3A%22 +// image_to_video%22%2C%22 +// feature_entrance%22%3A%22 +// to_video%22%2C%22feature_entrance_detail%22%3A%22 +// to_video-image_to_video%22%7D& +// +// device_platform=web +// region=CN +// web_id=7507264079104116243 +// da_version=3.2.2 +// aigc_features=app_lip_sync +// msToken=9YwKweocKiJCvBPqNt5frfMnoU8wxE0oFLvCnj0nJS-u8VRuJdi-BmlXNWvrKWgmwiax1TBGK6g3GYpr7APU2dYeoeovaKJbsVO-ojtHfMPQEdt2r3ZL61lG7RxXtzKb&a_bogus=D7MD6c2pMsR1pTaRf7kz9SVxeMj0YWRNgZENy1PTX0LW + +{ + "extend": { + "m_video_commerce_info": { + "resource_id": "generate_video", + "resource_id_type": "str", + "resource_sub_type": "aigc", + "benefit_type": "basic_video_operation_vgfm_v_three" + }, + "template_id": "", + "root_model": "dreamina_ic_generate_video_model_vgfm_3.0", + "history_option": {} + }, + "submit_id": "76f707b3-31cd-49b9-9dbc-dcaad969dfa7", + "metrics_extra": "{ + \"promptSource\":\"custom\", + \"originSubmitId\":\"3f4876d4-3a14-4ee5-af06-38861de91523\", + \"isDefaultSeed\":1, + \"originTemplateId\":\"\", + \"imageNameMapping\":{} + }", + "draft_content": "{ + \"type\":\"draft\", + \"id\":\"88fd1f60-59d6-53fd-6261-428138029663\", + \"min_version\":\"3.0.5\", + \"min_features\":[], + \"is_from_tsn\":true, + \"version\":\"3.2.2\", + \"main_component_id\":\"c4edcc19-9592-9bff-b626-bcdde184bf37\", + \"component_list\":[ + {\"type\":\"video_base_component\", + \"metadata\":{ + \"type\":\"\", + \"id\":\"b0df8c80-1da7-b473-21bb-0e787bc97210\", + \"created_platform\":3, + \"created_platform_version\":\"\", + \"created_time_in_ms\":\"1748507812067\", + \"created_did\":\"\" + }, + \"abilities\":{ + \"type\":\"\", + \"id\":\"cce730db-70d0-4bdc-fc58-a552de3cc4c7\", + \"gen_video\":{ + \"type\":\"\", + \"id\":\"fc6671be-b9cf-6cd1-3e79-7d16eae6df64\", + \"text_to_video_params\":{ + \"type\":\"\", + \"id\":\"c6e3ed58-5078-e943-31d7-f59a11d295c5\", + \"video_gen_inputs\":[ + {\"type\":\"\", + \"id\":\"49a1958f-3ce0-9044-9e77-37ff75e674c5\", + \"min_version\":\"3.0.5\", + \"prompt\":\"让角色动起来\", + \"first_frame_image\":{ + \"type\":\"image\", + \"id\":\"e26a482f-36aa-6009-2013-aa056b25582c\", + \"source_from\":\"upload\", + \"platform_type\":1, + \"name\":\"\", + \"image_uri\":\"tos-cn-i-tb4s082cfz/6565cbcec74540d18ff1e9622d470fd3\", + \"width\":1080, + \"height\":1920, + \"format\":\"\", + \"uri\":\"tos-cn-i-tb4s082cfz/6565cbcec74540d18ff1e9622d470fd3\" + }, + \"video_mode\":2, + \"fps\":24, + \"duration_ms\":5000} + ], + \"video_aspect_ratio\":\"9:16\", + \"seed\":3588707305, + \"model_req_key\":\"dreamina_ic_generate_video_model_vgfm_3.0\" + }, + \"video_task_extra\":\"{ + \\\"promptSource\\\":\\\"custom\\\", + \\\"originSubmitId\\\": + \\\"3f4876d4-3a14-4ee5-af06-38861de91523\\\", + \\\"isDefaultSeed\\\":1, + \\\"originTemplateId\\\":\\\"\\\", + \\\"imageNameMapping\\\":{}}\"}}, + \"process_type\":1}]}" +} + +POST +{ + "ret": "0", + "errmsg": "success", + "systime": "1748506824", + "logid": "20250529162024082F3F2AF6DE945BD955", + "data": { + "aigc_data": { + "generate_type": 10, + "history_record_id": "18878778707970", + "origin_history_record_id": null, + "created_time": 1748506825.188, + "item_list": null, + "origin_item_list": null, + "task": { + "task_id": "0", + "submit_id": "52c50f46-0d7d-4eb6-baa3-06a24815f435", + "aid": 0, + "status": 0, + "finish_time": 0, + "history_id": "0", + "task_payload": null, + "original_input": null, + "req_first_frame_image": null, + "ai_gen_prompt": "", + "priority": 0, + "lip_sync_info": null, + "multi_size_first_frame_image": null, + "multi_size_end_frame_image": null, + "process_flows": null, + "create_time": 0, + "aigc_image_params": null, + "ref_item": null + }, + "mode": "workbench", + "asset_option": null, + "uid": "4476817135373291", + "aigc_flow": { + "version": "3.0.5" + }, + "status": 20, + "history_group_key_md5": "7d3c756d2f51828eec8ba8403af4b071", + "history_group_key": "generate_video#tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c", + "draft_content": "{\"type\":\"draft\",\"id\":\"f8976d69-21bb-ee78-e1dd-fb6d36bff81d\",\"min_version\":\"3.0.5\",\"min_features\":[],\"is_from_tsn\":true,\"version\":\"3.2.2\",\"main_component_id\":\"9baea85f-ae3a-d748-4bff-2faeccd47237\",\"component_list\":[{\"type\":\"video_base_component\",\"id\":\"9baea85f-ae3a-d748-4bff-2faeccd47237\",\"min_version\":\"1.0.0\",\"metadata\":{\"type\":\"\",\"id\":\"cb5f9f28-61f9-4757-7f35-cdd58b52107d\",\"created_platform\":3,\"created_platform_version\":\"\",\"created_time_in_ms\":\"1748506825030\",\"created_did\":\"\"},\"generate_type\":\"gen_video\",\"aigc_mode\":\"workbench\",\"abilities\":{\"type\":\"\",\"id\":\"923ed1be-bd2b-3f46-9515-dd8b736a7dbe\",\"gen_video\":{\"type\":\"\",\"id\":\"cc0356e2-a50b-2634-b9bf-2a806513973b\",\"text_to_video_params\":{\"type\":\"\",\"id\":\"6f167d0f-78c4-dd7f-8987-89d601fd00fc\",\"video_gen_inputs\":[{\"type\":\"\",\"id\":\"6d778a6f-246e-1a97-c1e4-5787486acff0\",\"min_version\":\"3.0.5\",\"prompt\":\"汽车变形成高达\",\"first_frame_image\":{\"type\":\"image\",\"id\":\"c6f9b3fd-f702-33b7-a8ae-6c7330bd8a46\",\"source_from\":\"upload\",\"platform_type\":1,\"name\":\"\",\"image_uri\":\"tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c\",\"width\":3840,\"height\":2160,\"format\":\"\",\"uri\":\"tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c\"},\"video_mode\":2,\"fps\":24,\"duration_ms\":5000}],\"video_aspect_ratio\":\"16:9\",\"seed\":844630714,\"model_req_key\":\"dreamina_ic_generate_video_model_vgfm_3.0\"},\"video_task_extra\":\"{\\\"promptSource\\\":\\\"custom\\\",\\\"originSubmitId\\\":\\\"d265691e-80d8-4649-a788-d2dd24ae75fc\\\",\\\"isDefaultSeed\\\":1,\\\"originTemplateId\\\":\\\"\\\",\\\"imageNameMapping\\\":{}}\"}},\"process_type\":1}]}", + "resources": [ + { + "key": "tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c", + "type": "image", + "name": "", + "platform": 1, + "image_info": { + "image_uri": "tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c", + "image_url": "https://p26-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:0:0.image?lk3s=8e790bc3\u0026x-expires=1780042825\u0026x-signature=tRW4eUs7rgNtjBqLGo88s8PQbjg%3D", + "width": 3840, + "height": 2160, + "format": "jpeg", + "cover_url_map": { + "1080": "https://p9-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:1080:607.webp?lk3s=8e790bc3\u0026x-expires=1780042825\u0026x-signature=hNGZg6OKr%2FQhFwSoXwCn5glquh0%3D", + "2400": "https://p3-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:2400:1350.webp?lk3s=8e790bc3\u0026x-expires=1780042825\u0026x-signature=rmj8m3lVRlG3lewN1qHn%2Bol70Ic%3D", + "360": "https://p3-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:360:202.webp?lk3s=8e790bc3\u0026x-expires=1780042825\u0026x-signature=sglpf5rWGDQ4Hwg9nuHZumT2g88%3D", + "480": "https://p9-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:480:270.webp?lk3s=8e790bc3\u0026x-expires=1780042825\u0026x-signature=a06uXrB6Ohe2d3lVMDMPUuxn6P8%3D", + "720": "https://p3-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:720:405.webp?lk3s=8e790bc3\u0026x-expires=1780042825\u0026x-signature=H%2FKiFMczvwDQk%2BeTFDbpljd%2FPf0%3D" + }, + "smart_crop_loc": null + } + } + ], + "submit_id": "52c50f46-0d7d-4eb6-baa3-06a24815f435", + "capflow_id": "cdb14dd4_a236_4e40_8ba2_132fc7d76246", + "metrics_extra": "{\"promptSource\":\"custom\",\"originSubmitId\":\"d265691e-80d8-4649-a788-d2dd24ae75fc\",\"isDefaultSeed\":1,\"originTemplateId\":\"\",\"imageNameMapping\":{}}", + "generate_id": "20250529162024082F3F2AF6DE945BD955", + "model_info": { + "icon_url": "https://p3-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/new_video_30~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780042825\u0026x-signature=2V6A0qal%2B00oS6nkk4hkrnguxn0%3D", + "model_name_starling_key": "video_3", + "model_tip_starling_key": "new_default_model_beginner_friendly", + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "model_name": "视频 3.0", + "commercial_config": { + "commerce_info_map": { + "basic": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + }, + "retry": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + } + } + }, + "video_model_options": [ + { + "key": "resolution", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "720p", + "1080p" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "input_media_type", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "prompt", + "first_frame" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "frames", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 120, + 240 + ], + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "fps", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 24 + ], + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "video_aspect_ratio", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "21:9", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 1 + }, + "forbidden_display": false + } + ] + }, + "forecast_generate_cost": 38, + "forecast_queue_cost": 31, + "fail_starling_key": "", + "fail_starling_message": "", + "min_feats": null + }, + "fail_code": "", + "fail_starling_key": "", + "fail_starling_message": "" + } +} + + +https://jimeng.jianying.com/mweb/v1/get_history_by_ids +// aid=513695 +// device_platform=web +// region=CN +// web_id=7507264079104116243 +// da_version=3.2.2 +// aigc_features=app_lip_sync +// msToken=9YwKweocKiJCvBPqNt5frfMnoU8wxE0oFLvCnj0nJS-u8VRuJdi-BmlXNWvrKWgmwiax1TBGK6g3GYpr7APU2dYeoeovaKJbsVO-ojtHfMPQEdt2r3ZL61lG7RxXtzKb&a_bogus=QXMxgc2pMsR1Gq-Rfwkz9Sc-esb0YWRQgZENy1KBWtLi + + +POST + +{ + "ret": "0", + "errmsg": "success", + "systime": "1748506882", + "logid": "202505291621221565F6EAB5B9BD729A03", + "data": { + "18878778707970": { + "generate_type": 10, + "history_record_id": "18878778707970", + "origin_history_record_id": null, + "created_time": 1748506825.188, + "item_list": [ + { + "common_attr": { + "id": "7509779606430289187", + "effect_id": "7509779606430289187", + "effect_type": 53, + "title": "", + "description": "", + "cover_url": "https://p3-sign.douyinpic.com/tos-cn-p-148450/owhAHkjJYA7BXE4PA1agPePxDRgi4Gi0QE5I3k~tplv-noop.image?dy_q=1748506882\u0026l=202505291621221565F6EAB5B9BD729A03\u0026x-expires=1749111687\u0026x-signature=Mg131gutJD%2FEuW9ky926HZpU3VA%3D", + "item_urls": [ + "" + ], + "md5": "", + "create_time": 1748506882, + "status": 102, + "review_info": { + "review_status": 1, + "review_code_list": [] + }, + "aspect_ratio": 0, + "publish_source": "user_post_mweb_item", + "collection_ids": [], + "extra": "", + "has_published": false, + "cover_url_map": {}, + "local_item_id": "7509779606430289187", + "update_time": 0, + "cover_uri": "tos-cn-p-148450/owhAHkjJYA7BXE4PA1agPePxDRgi4Gi0QE5I3k", + "smart_crop_loc": null, + "cover_height": 0, + "cover_width": 0 + }, + "author": null, + "video": { + "video_id": "v03870g10004d0s1hu7og65o28vfehsg", + "duration": 6, + "origin_video": null, + "transcoded_video": { + "origin": { + "vid": "", + "fps": 24, + "width": 1248, + "height": 704, + "duration": 0, + "video_url": "https://v9-artist.vlabvod.com/53e38010cce4c3990fe31e64ee1d9b90/68415387/video/tos/cn/tos-cn-v-148450/o0ChDQGYczDeHQevgSYPG2xIAkgLgOQdBRAkfH/?a=4066\u0026ch=0\u0026cr=0\u0026dr=0\u0026er=0\u0026cd=0%7C0%7C0%7C0\u0026br=6639\u0026bt=6639\u0026cs=0\u0026ds=12\u0026ft=5QYTUxhhe6BMyqqCL0kJD12Nzj\u0026mime_type=video_mp4\u0026qs=0\u0026rc=PDg5M2k3ZDw4OzdnOWZpZ0BpamtpO3I5cng0MzczNDM7M0A0NDZeMi1gXi8xX2EwXjAuYSNwYnMvMmQ0ZXBhLS1kNDBzcw%3D%3D\u0026btag=c0000e00008000\u0026dy_q=1748506882\u0026feature_id=7bed9f9dfbb915a044e5d473759ce9df\u0026l=202505291621221565F6EAB5B9BD729A03", + "cover_url": "", + "format": "mp4", + "definition": "origin", + "logo_type": "", + "encryption_key": "", + "md5": "691717f8be9a81677b5b17059a0234df", + "size": 4263575, + "video_id": "" + } + }, + "video_size_type": 1, + "cover_uri": "tos-cn-p-148450/owhAHkjJYA7BXE4PA1agPePxDRgi4Gi0QE5I3k", + "transcode_status": 1, + "duration_ms": 5042, + "thumb": { + "detail_infos": [ + { + "frame_count": 5, + "image_width": 1280, + "image_height": 720, + "uri": "tos-cn-p-148450/oQfOkeDgdAiDGnJgEvgIkxCGYBcLg0fPQHHSYT", + "url": "https://p3-sign.douyinpic.com/tos-cn-p-148450/oQfOkeDgdAiDGnJgEvgIkxCGYBcLg0fPQHHSYT~tplv-noop.image?dy_q=1748506882\u0026l=202505291621221565F6EAB5B9BD729A03\u0026x-expires=1749111687\u0026x-signature=xU0sSASfrDNyVSux%2FKcCh2frx%2B4%3D" + } + ], + "thumb_common_info": { + "single_frame_width": 320, + "single_frame_height": 180, + "total_set_num": 5 + } + }, + "watermark_type": 1, + "cover_url": "https://p3-sign.douyinpic.com/tos-cn-p-148450/owhAHkjJYA7BXE4PA1agPePxDRgi4Gi0QE5I3k~tplv-noop.image?dy_q=1748506882\u0026l=202505291621221565F6EAB5B9BD729A03\u0026x-expires=1749111687\u0026x-signature=Mg131gutJD%2FEuW9ky926HZpU3VA%3D", + "duration_info": "{\"play_info_duration\":5.017,\"v_duration\":5.042,\"a_duration\":0}", + "vda_status": 10, + "video_model": "{\"status\":10,\"message\":\"success\",\"enable_ssl\":true,\"auto_definition\":\"360p\",\"enable_adaptive\":false,\"video_id\":\"v03870g10004d0s1hu7og65o28vfehsg\",\"video_duration\":5.017,\"media_type\":\"video\",\"url_expire\":1748510487,\"big_thumbs\":[{\"img_num\":5,\"uri\":\"tos-cn-p-148450/oQfOkeDgdAiDGnJgEvgIkxCGYBcLg0fPQHHSYT\",\"img_url\":\"https://p3-sign.douyinpic.com/tos-cn-p-148450/oQfOkeDgdAiDGnJgEvgIkxCGYBcLg0fPQHHSYT~tplv-noop.image?dy_q=1748506882\u0026l=202505291621221565F6EAB5B9BD729A03\u0026x-expires=1748510487\u0026x-signature=l7g%2Fvksv%2FqJMLzF2HOPU4QB4ocA%3D\",\"img_urls\":[\"https://p3-sign.douyinpic.com/tos-cn-p-148450/oQfOkeDgdAiDGnJgEvgIkxCGYBcLg0fPQHHSYT~tplv-noop.image?dy_q=1748506882\u0026l=202505291621221565F6EAB5B9BD729A03\u0026x-expires=1748510487\u0026x-signature=l7g%2Fvksv%2FqJMLzF2HOPU4QB4ocA%3D\"],\"img_x_size\":320,\"img_y_size\":180,\"img_x_len\":4,\"img_y_len\":4,\"duration\":5.041667,\"interval\":1,\"fext\":\"jpeg\"}],\"fallback_api\":\"https://vas-lf-x.snssdk.com/video/fplay/1/907a8f00cffd4a12ce07cd2b5c0b19ec/v03870g10004d0s1hu7og65o28vfehsg?aid=0\u0026device_platform=unknown\u0026force_fids=NzU3OQ%3D%3D\u0026imp=false\u0026key_seed=WcKT6WeA%2BiB%2BKHOTdclvrfJQy%2Fe5xrD%2FPdVmwgpZVno%3D\u0026logo_type=default\u0026multi_rate_audios=true\u0026stream_type=normal\u0026vps=6\",\"video_list\":{\"video_1\":{\"definition\":\"origin\",\"quality\":\"normal\",\"vtype\":\"mp4\",\"vwidth\":1248,\"vheight\":704,\"bitrate\":6798604,\"real_bitrate\":6798604,\"fps\":24,\"codec_type\":\"h264\",\"size\":4263575,\"main_url\":\"aHR0cHM6Ly92My1kZWZhdWx0LjM2NXlnLmNvbS8wNjMyZDQ0YWQ1MDkwNjI0MjEwNmZlZDgyYWE1YjcyYy82ODM4MjcxNy92aWRlby90b3MvY24vdG9zLWNuLXYtMTQ4NDUwL28wQ2hEUUdZY3pEZUhRZXZnU1lQRzJ4SUFrZ0xnT1FkQlJBa2ZILz9hPTAmY2g9MCZjcj0wJmRyPTAmZXI9MCZscj1kZWZhdWx0JmNkPTAlN0MwJTdDMCU3QzAmYnI9NjYzOSZidD02NjM5JmNzPTAmZHM9MTImZnQ9T2kucGk3N0pXSDZCTU1kR21fcjBQRDFJTiZtaW1lX3R5cGU9dmlkZW9fbXA0JnFzPTAmcmM9UERnNU0yazNaRHc0T3pkbk9XWnBaMEJwYW10cE8zSTVjbmcwTXpjek5ETTdNMEEwTkRaZU1pMWdYaTh4WDJFd1hqQXVZU053WW5Ndk1tUTBaWEJoTFMxa05EQnpjdyUzRCUzRCZidGFnPWMwMDAwZTAwMDA4MDAwJmR5X3E9MTc0ODUwNjg4MiZmZWF0dXJlX2lkPTdiZWQ5ZjlkZmJiOTE1YTA0NGU1ZDQ3Mzc1OWNlOWRmJmw9MjAyNTA1MjkxNjIxMjIxNTY1RjZFQUI1QjlCRDcyOUEwMw==\",\"backup_url_1\":\"aHR0cHM6Ly92OS1kZWZhdWx0LjM2NXlnLmNvbS81NDA0YTUxZWMxMmNkNDQ1OTY0NzhkMGRmYjViOWQ0ZS82ODM4MjcxNy92aWRlby90b3MvY24vdG9zLWNuLXYtMTQ4NDUwL28wQ2hEUUdZY3pEZUhRZXZnU1lQRzJ4SUFrZ0xnT1FkQlJBa2ZILz9hPTAmY2g9MCZjcj0wJmRyPTAmZXI9MCZscj1kZWZhdWx0JmNkPTAlN0MwJTdDMCU3QzAmYnI9NjYzOSZidD02NjM5JmNzPTAmZHM9MTImZnQ9T2kucGk3N0pXSDZCTU1kR21fcjBQRDFJTiZtaW1lX3R5cGU9dmlkZW9fbXA0JnFzPTAmcmM9UERnNU0yazNaRHc0T3pkbk9XWnBaMEJwYW10cE8zSTVjbmcwTXpjek5ETTdNMEEwTkRaZU1pMWdYaTh4WDJFd1hqQXVZU053WW5Ndk1tUTBaWEJoTFMxa05EQnpjdyUzRCUzRCZidGFnPWMwMDAwZTAwMDA4MDAwJmR5X3E9MTc0ODUwNjg4MiZmZWF0dXJlX2lkPTdiZWQ5ZjlkZmJiOTE1YTA0NGU1ZDQ3Mzc1OWNlOWRmJmw9MjAyNTA1MjkxNjIxMjIxNTY1RjZFQUI1QjlCRDcyOUEwMw==\",\"file_id\":\"1d3fac36ddb44825a9ca045fa0967579\",\"quality_type\":0,\"encryption_method\":\"\",\"audio_channels\":\"0.0\",\"feature_id\":\"7bed9f9dfbb915a044e5d473759ce9df\",\"gear_des_key\":\"0:MP4|1:normal|2:h264|4:origin|5:normal\",\"audio_sample_rate\":\"0\",\"url_expire\":1748510487,\"preload_size\":327680,\"preload_interval\":60,\"preload_min_step\":5,\"preload_max_step\":10,\"file_hash\":\"691717f8be9a81677b5b17059a0234df\"}},\"popularity_level\":0,\"has_embedded_subtitle\":false,\"poster_url\":\"https://p3-sign.douyinpic.com/tos-cn-p-148450/owhAHkjJYA7BXE4PA1agPePxDRgi4Gi0QE5I3k~tplv-noop.image?dy_q=1748506882\u0026l=202505291621221565F6EAB5B9BD729A03\u0026x-expires=1748510487\u0026x-signature=9o%2BuiP%2BVOmsKfd2Hi98YjMIKvb4%3D\",\"key_seed\":\"WcKT6WeA+iB+KHOTdclvrfJQy/e5xrD/PdVmwgpZVno=\"}", + "has_audio": false, + "is_mute": false + }, + "aigc_image_params": { + "generate_type": 10, + "first_generate_type": 10, + "text2video_params": { + "video_gen_inputs": [ + { + "prompt": "汽车变形成高达", + "first_frame_image": { + "image_uri": "tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c", + "image_url": "https://p3-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:0:0.webp?lk3s=43402efa\u0026x-expires=1750896000\u0026x-signature=w7ItpVt4shrB59KbBGD6PBs2DUA%3D\u0026format=.webp", + "width": 3840, + "height": 2160, + "format": "webp", + "cover_url_map": { + "1080": "https://p3-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:1080:1080.webp?lk3s=8e790bc3\u0026x-expires=1750896000\u0026x-signature=zCc3NuQyOq5eO%2FCUYRQ6WcZFRG0%3D", + "2400": "https://p3-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:2400:2400.webp?lk3s=8e790bc3\u0026x-expires=1750896000\u0026x-signature=I2JJIaAdYugAxUY%2BRtqeDH5WdNQ%3D", + "360": "https://p9-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:360:360.webp?lk3s=8e790bc3\u0026x-expires=1750896000\u0026x-signature=JGcSMTpgxGaUUC1G2xxKMD9Ip1o%3D", + "480": "https://p3-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:480:480.webp?lk3s=8e790bc3\u0026x-expires=1750896000\u0026x-signature=dt1qnpfhlD24%2Fc3kofO5JQz5hrE%3D", + "720": "https://p3-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:720:720.webp?lk3s=8e790bc3\u0026x-expires=1750896000\u0026x-signature=GOgr6ufkkSTi6%2BnvrcHmBRv9gpU%3D" + }, + "smart_crop_loc": null + }, + "lens_motion_type": "", + "motion_speed": "", + "vid": "", + "ending_control": "", + "pre_task_id": "0", + "audio_vid": "", + "video_mode": 2, + "fps": 24, + "duration_ms": 5000, + "template_id": "0" + } + ], + "video_aspect_ratio": "16:9", + "seed": 844630714, + "task_scene": "", + "priority": 0, + "video_gen_inputs_extra": [ + {} + ], + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "model_config": { + "icon_url": "https://p3-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/new_video_30~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780042882\u0026x-signature=5nEvPygnlRGDBwOy3ZXGOSYW5Rg%3D", + "model_name_starling_key": "video_3", + "model_tip_starling_key": "new_default_model_beginner_friendly", + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "is_new_model": false, + "sample_steps": null, + "blend_enable": null, + "feats": [ + "support_first_image" + ], + "model_name": "视频 3.0", + "model_tip": "响应精准,支持多镜头和运镜", + "feature_key": "dreamina_video_3", + "duration_option": [ + 5, + 10 + ], + "lens_motion_type_option": null, + "motion_speed_option": null, + "camera_strength_option": null, + "video_aspect_ratio_option": [ + "21:9", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ], + "commercial_config": { + "commerce_info_map": { + "basic": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + }, + "retry": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + } + } + }, + "fps": 24, + "extra": {}, + "feats_cant_combine": null, + "model_bg_prompt_starling_key": "" + }, + "video_model_config": { + "icon": { + "image_uri": "tos-cn-i-3jr8j4ixpe/new_video_30", + "image_url": "https://p3-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/new_video_30~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780042882\u0026x-signature=5nEvPygnlRGDBwOy3ZXGOSYW5Rg%3D", + "width": 0, + "height": 0, + "format": "webp", + "smart_crop_loc": null + }, + "model_name": "视频 3.0", + "model_name_starling_key": "video_3", + "model_tip": "响应精准,支持多镜头和运镜", + "model_tip_starling_key": "new_default_model_beginner_friendly", + "feature_key": "dreamina_video_3", + "icon_tag": "new", + "options": [ + { + "key": "resolution", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "720p", + "1080p" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "input_media_type", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "prompt", + "first_frame" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "frames", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 120, + 240 + ], + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "fps", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 24 + ], + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "video_aspect_ratio", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "21:9", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 1 + }, + "forbidden_display": false + } + ], + "commercial_config": { + "default": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + }, + "format": "{resolution}", + "format_conf": { + "1080p": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three_1080", + "amount": 0 + }, + "720p": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + } + } + }, + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "extra": { + "pop_icon": { + "image_uri": "tos-cn-i-3jr8j4ixpe/vgfm_lite_cover", + "image_url": "https://p3-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/vgfm_lite_cover~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780042882\u0026x-signature=xzfZM06AbHmhp80eI3bji%2FfB4sQ%3D", + "width": 0, + "height": 0, + "format": "webp", + "smart_crop_loc": null + }, + "model_source": "by Seedance 1.0" + }, + "model_status": 0 + } + }, + "template_id": "0", + "insta_drag_params": { + "origin_item_id": null + }, + "hide_ref_images": false + }, + "statistic": { + "feedback_status": 0 + }, + "category_id_list": [], + "aigc_flow": { + "version": "0.1.2" + }, + "aigc_draft": { + "version": "3.0.5", + "uri": "aigc-draft/4653128595202", + "content": "", + "update_time": 0, + "last_preview_time": 0, + "resource_type": "", + "public_uri": "", + "variables": [], + "resource_width": 0, + "resource_height": 0, + "node_keys": [], + "cost": 0 + }, + "gen_result_data": { + "result_code": 0, + "result_msg": "Success" + }, + "extra": { + "template_type": "video", + "ai_feature": "image_generate_video" + }, + "ai_feature": { + "features": [ + { + "type": "image_generate_video" + } + ], + "is_merged": true + }, + "sharing_info": { + "share_status": 2 + }, + "metadata_param": "{\"effect_id\":\"gen_video\",\"effect_type\":\"tool\"}" + } + ], + "origin_item_list": [], + "task": { + "task_id": "4654465595650", + "submit_id": "52c50f46-0d7d-4eb6-baa3-06a24815f435", + "aid": 0, + "status": 50, + "finish_time": 1748506882, + "history_id": "18878778707970", + "task_payload": null, + "first_frame_image": { + "image_uri": "tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c", + "image_url": "https://p26-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:2048:2048.jpg?lk3s=ad9f132c\u0026x-expires=1780042856\u0026x-signature=QJFH2PRJAe7BYKVt%2BaE%2BokKogn8%3D", + "width": 3840, + "height": 2160, + "format": "", + "smart_crop_loc": null + }, + "original_input": { + "video_gen_inputs": [ + { + "prompt": "汽车变形成高达", + "first_frame_image": { + "image_uri": "tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c", + "image_url": "https://p26-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:2048:2048.jpg?lk3s=ad9f132c\u0026x-expires=1780042856\u0026x-signature=QJFH2PRJAe7BYKVt%2BaE%2BokKogn8%3D", + "width": 3840, + "height": 2160, + "format": "", + "smart_crop_loc": null + }, + "lens_motion_type": "", + "motion_speed": "", + "vid": "", + "ending_control": "", + "pre_task_id": "0", + "audio_vid": "", + "video_mode": 2, + "fps": 24, + "duration_ms": 5000, + "template_id": "0" + } + ], + "video_aspect_ratio": "16:9", + "seed": 844630714, + "task_scene": "", + "priority": 0, + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "model_config": { + "icon_url": "https://p6-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/new_video_30~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780042883\u0026x-signature=Egnnt5OutNswrPdIl7xTJ3KCllE%3D", + "model_name_starling_key": "video_3", + "model_tip_starling_key": "new_default_model_beginner_friendly", + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "is_new_model": false, + "sample_steps": null, + "blend_enable": null, + "feats": [ + "support_first_image" + ], + "model_name": "视频 3.0", + "model_tip": "响应精准,支持多镜头和运镜", + "feature_key": "dreamina_video_3", + "duration_option": [ + 5, + 10 + ], + "lens_motion_type_option": null, + "motion_speed_option": null, + "camera_strength_option": null, + "video_aspect_ratio_option": [ + "21:9", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ], + "commercial_config": { + "commerce_info_map": { + "basic": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + }, + "retry": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + } + } + }, + "fps": 24, + "extra": {}, + "feats_cant_combine": null, + "model_bg_prompt_starling_key": "" + }, + "video_model_config": { + "icon": { + "image_uri": "tos-cn-i-3jr8j4ixpe/new_video_30", + "image_url": "https://p6-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/new_video_30~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780042883\u0026x-signature=Egnnt5OutNswrPdIl7xTJ3KCllE%3D", + "width": 0, + "height": 0, + "format": "webp", + "smart_crop_loc": null + }, + "model_name": "视频 3.0", + "model_name_starling_key": "video_3", + "model_tip": "响应精准,支持多镜头和运镜", + "model_tip_starling_key": "new_default_model_beginner_friendly", + "feature_key": "dreamina_video_3", + "icon_tag": "new", + "options": [ + { + "key": "resolution", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "720p", + "1080p" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "input_media_type", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "prompt", + "first_frame" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "frames", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 120, + 240 + ], + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "fps", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 24 + ], + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "video_aspect_ratio", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "21:9", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 1 + }, + "forbidden_display": false + } + ], + "commercial_config": { + "default": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + }, + "format": "{resolution}", + "format_conf": { + "1080p": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three_1080", + "amount": 0 + }, + "720p": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + } + } + }, + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "extra": { + "pop_icon": { + "image_uri": "tos-cn-i-3jr8j4ixpe/vgfm_lite_cover", + "image_url": "https://p3-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/vgfm_lite_cover~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780042883\u0026x-signature=Fo0XjfXG3AI7A9Ypb%2BZd%2FnrNEfg%3D", + "width": 0, + "height": 0, + "format": "webp", + "smart_crop_loc": null + }, + "model_source": "by Seedance 1.0" + }, + "model_status": 0 + } + }, + "req_first_frame_image": null, + "ai_gen_prompt": "", + "priority": 0, + "lip_sync_info": { + "lip_sync_extra": "", + "lip_sync_video_url": "", + "lip_sync_audio_url": "", + "labcv_task_id": "" + }, + "multi_size_first_frame_image": null, + "multi_size_end_frame_image": null, + "process_flows": [ + { + "task_id": "4654465595650", + "cur_process_flows": [ + 1 + ], + "history_id": "18878778707970" + } + ], + "create_time": 0, + "aigc_image_params": { + "generate_type": 10, + "first_generate_type": 10, + "text2video_params": { + "video_gen_inputs": [ + { + "prompt": "汽车变形成高达", + "first_frame_image": { + "image_uri": "tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c", + "image_url": "https://p3-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:0:0.webp?lk3s=43402efa\u0026x-expires=1750896000\u0026x-signature=w7ItpVt4shrB59KbBGD6PBs2DUA%3D\u0026format=.webp", + "width": 3840, + "height": 2160, + "format": "webp", + "cover_url_map": { + "1080": "https://p3-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:1080:1080.webp?lk3s=8e790bc3\u0026x-expires=1750896000\u0026x-signature=zCc3NuQyOq5eO%2FCUYRQ6WcZFRG0%3D", + "2400": "https://p3-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:2400:2400.webp?lk3s=8e790bc3\u0026x-expires=1750896000\u0026x-signature=I2JJIaAdYugAxUY%2BRtqeDH5WdNQ%3D", + "360": "https://p9-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:360:360.webp?lk3s=8e790bc3\u0026x-expires=1750896000\u0026x-signature=JGcSMTpgxGaUUC1G2xxKMD9Ip1o%3D", + "480": "https://p3-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:480:480.webp?lk3s=8e790bc3\u0026x-expires=1750896000\u0026x-signature=dt1qnpfhlD24%2Fc3kofO5JQz5hrE%3D", + "720": "https://p3-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:720:720.webp?lk3s=8e790bc3\u0026x-expires=1750896000\u0026x-signature=GOgr6ufkkSTi6%2BnvrcHmBRv9gpU%3D" + }, + "smart_crop_loc": null + }, + "lens_motion_type": "", + "motion_speed": "", + "vid": "", + "ending_control": "", + "pre_task_id": "0", + "audio_vid": "", + "video_mode": 2, + "fps": 24, + "duration_ms": 5000, + "template_id": "0" + } + ], + "video_aspect_ratio": "16:9", + "seed": 844630714, + "task_scene": "", + "priority": 0, + "video_gen_inputs_extra": [ + {} + ], + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "model_config": { + "icon_url": "https://p3-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/new_video_30~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780042882\u0026x-signature=5nEvPygnlRGDBwOy3ZXGOSYW5Rg%3D", + "model_name_starling_key": "video_3", + "model_tip_starling_key": "new_default_model_beginner_friendly", + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "is_new_model": false, + "sample_steps": null, + "blend_enable": null, + "feats": [ + "support_first_image" + ], + "model_name": "视频 3.0", + "model_tip": "响应精准,支持多镜头和运镜", + "feature_key": "dreamina_video_3", + "duration_option": [ + 5, + 10 + ], + "lens_motion_type_option": null, + "motion_speed_option": null, + "camera_strength_option": null, + "video_aspect_ratio_option": [ + "21:9", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ], + "commercial_config": { + "commerce_info_map": { + "basic": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + }, + "retry": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + } + } + }, + "fps": 24, + "extra": {}, + "feats_cant_combine": null, + "model_bg_prompt_starling_key": "" + }, + "video_model_config": { + "icon": { + "image_uri": "tos-cn-i-3jr8j4ixpe/new_video_30", + "image_url": "https://p3-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/new_video_30~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780042882\u0026x-signature=5nEvPygnlRGDBwOy3ZXGOSYW5Rg%3D", + "width": 0, + "height": 0, + "format": "webp", + "smart_crop_loc": null + }, + "model_name": "视频 3.0", + "model_name_starling_key": "video_3", + "model_tip": "响应精准,支持多镜头和运镜", + "model_tip_starling_key": "new_default_model_beginner_friendly", + "feature_key": "dreamina_video_3", + "icon_tag": "new", + "options": [ + { + "key": "resolution", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "720p", + "1080p" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "input_media_type", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "prompt", + "first_frame" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "frames", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 120, + 240 + ], + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "fps", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 24 + ], + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "video_aspect_ratio", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "21:9", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 1 + }, + "forbidden_display": false + } + ], + "commercial_config": { + "default": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + }, + "format": "{resolution}", + "format_conf": { + "1080p": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three_1080", + "amount": 0 + }, + "720p": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + } + } + }, + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "extra": { + "pop_icon": { + "image_uri": "tos-cn-i-3jr8j4ixpe/vgfm_lite_cover", + "image_url": "https://p3-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/vgfm_lite_cover~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780042882\u0026x-signature=xzfZM06AbHmhp80eI3bji%2FfB4sQ%3D", + "width": 0, + "height": 0, + "format": "webp", + "smart_crop_loc": null + }, + "model_source": "by Seedance 1.0" + }, + "model_status": 0 + } + }, + "template_id": "0", + "insta_drag_params": { + "origin_item_id": null + }, + "hide_ref_images": false + }, + "ref_item": null, + "resp_ret": { + "ret": "0" + } + }, + "mode": "workbench", + "asset_option": { + "has_favorited": false + }, + "uid": "4476817135373291", + "aigc_flow": { + "version": "3.0.5" + }, + "status": 50, + "history_group_key_md5": "7d3c756d2f51828eec8ba8403af4b071", + "history_group_key": "generate_video#tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c", + "draft_content": "{\"type\":\"draft\",\"id\":\"f8976d69-21bb-ee78-e1dd-fb6d36bff81d\",\"min_version\":\"3.0.5\",\"min_features\":[],\"is_from_tsn\":true,\"version\":\"3.0.5\",\"main_component_id\":\"9baea85f-ae3a-d748-4bff-2faeccd47237\",\"component_list\":[{\"type\":\"video_base_component\",\"id\":\"9baea85f-ae3a-d748-4bff-2faeccd47237\",\"min_version\":\"1.0.0\",\"gen_type\":10,\"metadata\":{\"type\":\"\",\"id\":\"cb5f9f28-61f9-4757-7f35-cdd58b52107d\",\"created_platform\":3,\"created_platform_version\":\"\",\"created_time_in_ms\":\"1748506825030\",\"created_did\":\"\"},\"generate_type\":\"gen_video\",\"aigc_mode\":\"workbench\",\"abilities\":{\"type\":\"\",\"id\":\"923ed1be-bd2b-3f46-9515-dd8b736a7dbe\",\"gen_video\":{\"type\":\"\",\"id\":\"cc0356e2-a50b-2634-b9bf-2a806513973b\",\"text_to_video_params\":{\"type\":\"\",\"id\":\"6f167d0f-78c4-dd7f-8987-89d601fd00fc\",\"video_gen_inputs\":[{\"type\":\"\",\"id\":\"6d778a6f-246e-1a97-c1e4-5787486acff0\",\"min_version\":\"3.0.5\",\"prompt\":\"汽车变形成高达\",\"first_frame_image\":{\"type\":\"image\",\"id\":\"c6f9b3fd-f702-33b7-a8ae-6c7330bd8a46\",\"source_from\":\"upload\",\"platform_type\":1,\"name\":\"\",\"image_uri\":\"tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c\",\"width\":3840,\"height\":2160,\"format\":\"\",\"uri\":\"tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c\"},\"video_mode\":2,\"fps\":24,\"duration_ms\":5000}],\"video_aspect_ratio\":\"16:9\",\"seed\":844630714,\"model_req_key\":\"dreamina_ic_generate_video_model_vgfm_3.0\"},\"video_task_extra\":\"{\\\"promptSource\\\":\\\"custom\\\",\\\"originSubmitId\\\":\\\"d265691e-80d8-4649-a788-d2dd24ae75fc\\\",\\\"isDefaultSeed\\\":1,\\\"originTemplateId\\\":\\\"\\\",\\\"imageNameMapping\\\":{}}\"}},\"process_type\":1}]}", + "resources": [ + { + "key": "tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c", + "type": "image", + "name": "", + "platform": 1, + "image_info": { + "image_uri": "tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c", + "image_url": "https://p26-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:0:0.image?lk3s=8e790bc3\u0026x-expires=1780042882\u0026x-signature=bJAQNI8mZCGVPmj%2FdwM9Ekt70ac%3D", + "width": 3840, + "height": 2160, + "format": "jpeg", + "cover_url_map": { + "1080": "https://p3-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:1080:607.webp?lk3s=8e790bc3\u0026x-expires=1780042882\u0026x-signature=qaRYuFAH7L1Lj%2BewwkGZlyaxuXg%3D", + "2400": "https://p3-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:2400:1350.webp?lk3s=8e790bc3\u0026x-expires=1780042882\u0026x-signature=D9DNQ%2FctojA82CQ63qG7M3WJbsc%3D", + "360": "https://p9-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:360:202.webp?lk3s=8e790bc3\u0026x-expires=1780042882\u0026x-signature=tSKXXxANX233jHiVY55wbvuMRn8%3D", + "480": "https://p9-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:480:270.webp?lk3s=8e790bc3\u0026x-expires=1780042882\u0026x-signature=N43dmozEQFKVZFQ6nOHZsodQ8bY%3D", + "720": "https://p26-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:720:405.webp?lk3s=8e790bc3\u0026x-expires=1780042882\u0026x-signature=aO9JuqH3zDUVOzAXlM%2BxDcqeKSY%3D" + }, + "smart_crop_loc": null + } + } + ], + "task_rets": [ + { + "image_info": { + "image_uri": "tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c", + "image_url": "https://p9-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:3840:2160.webp?lk3s=8e790bc3\u0026x-expires=1780042883\u0026x-signature=awT7%2B7x5AWwZnXUpeaXFB3E2DWg%3D", + "width": 3840, + "height": 2160, + "format": "webp", + "cover_url_map": { + "1080": "https://p3-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:1080:607.webp?lk3s=8e790bc3\u0026x-expires=1780042883\u0026x-signature=4jcxHwKbEFlvl6tS59JC6N1F9WU%3D", + "2400": "https://p9-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:2400:1350.webp?lk3s=8e790bc3\u0026x-expires=1780042883\u0026x-signature=X%2BKh6lyvv9dhyv8vMJiG%2B3ka%2B68%3D", + "360": "https://p9-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:360:202.webp?lk3s=8e790bc3\u0026x-expires=1780042883\u0026x-signature=Gr5h3%2BcFB7W4XFA388RLRlOUD%2B8%3D", + "480": "https://p26-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:480:270.webp?lk3s=8e790bc3\u0026x-expires=1780042883\u0026x-signature=zCPev6lElKn0UneRrZixkCl8%2FyA%3D", + "720": "https://p26-dreamina-sign.byteimg.com/tos-cn-i-tb4s082cfz/6f7cd264fe234ff49b7e1ca2621c075c~tplv-tb4s082cfz-resize:720:405.webp?lk3s=8e790bc3\u0026x-expires=1780042883\u0026x-signature=7V%2B7n16QUw7FxZ0YpQ5OP2PsZeI%3D" + } + } + } + ], + "fail_code": "0", + "submit_id": "52c50f46-0d7d-4eb6-baa3-06a24815f435", + "capflow_id": "cdb14dd4_a236_4e40_8ba2_132fc7d76246", + "metrics_extra": "{\"promptSource\":\"custom\",\"originSubmitId\":\"d265691e-80d8-4649-a788-d2dd24ae75fc\",\"isDefaultSeed\":1,\"originTemplateId\":\"\",\"imageNameMapping\":{}}", + "fail_msg": "Success", + "generate_id": "20250529162024082F3F2AF6DE945BD955", + "finish_time": 1748506882, + "model_info": { + "icon_url": "https://p3-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/new_video_30~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780042882\u0026x-signature=5nEvPygnlRGDBwOy3ZXGOSYW5Rg%3D", + "model_name_starling_key": "video_3", + "model_tip_starling_key": "new_default_model_beginner_friendly", + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "model_name": "视频 3.0", + "commercial_config": { + "commerce_info_map": { + "basic": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + }, + "retry": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + } + } + }, + "video_model_options": [ + { + "key": "resolution", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "720p", + "1080p" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "input_media_type", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "prompt", + "first_frame" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "frames", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 120, + 240 + ], + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "fps", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 24 + ], + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "video_aspect_ratio", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "21:9", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 1 + }, + "forbidden_display": false + } + ] + }, + "forecast_generate_cost": 38, + "forecast_queue_cost": 31, + "fail_starling_key": "", + "fail_starling_message": "", + "min_feats": null, + "lip_sync_info": { + "lip_sync_extra": "", + "lip_sync_video_url": "", + "lip_sync_audio_url": "", + "labcv_task_id": "" + } + } + } +} \ No newline at end of file diff --git a/temp/3.txt b/temp/3.txt new file mode 100644 index 0000000..d8e7e83 --- /dev/null +++ b/temp/3.txt @@ -0,0 +1,961 @@ +{ + "ret": "0", + "errmsg": "success", + "systime": "1748504868", + "logid": "20250529154748307F1240F9F4DA62E3EE", + "data": { + "18763140978434": { + "generate_type": 10, + "history_record_id": "18763140978434", + "origin_history_record_id": null, + "created_time": 1748504839.742, + "item_list": [ + { + "common_attr": { + "id": "7509771059025956130", + "effect_id": "7509771059025956130", + "effect_type": 53, + "title": "", + "description": "", + "cover_url": "https://p3-sign.douyinpic.com/tos-cn-p-148450/oYQvoRhUp4BIwITW4EwGJia0hBRDEiEaEgwdU~tplv-noop.image?dy_q=1748504868\u0026l=20250529154748307F1240F9F4DA62E3EE\u0026x-expires=1749109673\u0026x-signature=K%2FzjpuY%2FXBKVEN0dRqsJfmZqkQo%3D", + "item_urls": [ + "" + ], + "md5": "", + "create_time": 1748504867, + "status": 102, + "review_info": { + "review_status": 1, + "review_code_list": [] + }, + "aspect_ratio": 0, + "publish_source": "user_post_mweb_item", + "collection_ids": [], + "extra": "", + "has_published": false, + "cover_url_map": {}, + "local_item_id": "7509771059025956130", + "update_time": 0, + "cover_uri": "tos-cn-p-148450/oYQvoRhUp4BIwITW4EwGJia0hBRDEiEaEgwdU", + "smart_crop_loc": null, + "cover_height": 0, + "cover_width": 0 + }, + "author": null, + "video": { + "video_id": "v0d870g10004d0s126nog65ka2e2imgg", + "duration": 6, + "origin_video": null, + "transcoded_video": { + "origin": { + "vid": "", + "fps": 24, + "width": 1248, + "height": 704, + "duration": 0, + "video_url": "https://v3-artist.vlabvod.com/76e24e6998b9ec1041ec7a4fef016bda/68414ba9/video/tos/cn/tos-cn-v-148450/o8ED4IN8ahWJgpTREJwEQoAtwGURivhIBQ0iE/?a=4066\u0026ch=0\u0026cr=0\u0026dr=0\u0026er=0\u0026cd=0%7C0%7C0%7C0\u0026br=6777\u0026bt=6777\u0026cs=0\u0026ds=12\u0026ft=5QYTUxhhe6BMyq.fL0kJD12Nzj\u0026mime_type=video_mp4\u0026qs=0\u0026rc=NWlnOjg3Ojg8OmU4Zjw1aEBpanA1NW45cjk0MzczNDM7M0BeNV4zMV5gXmAxYTRfXjEzYSNkZmJeMmRrL3BhLS1kNGFzcw%3D%3D\u0026btag=c0000e00008000\u0026dy_q=1748504868\u0026feature_id=7bed9f9dfbb915a044e5d473759ce9df\u0026l=20250529154748307F1240F9F4DA62E3EE", + "cover_url": "", + "format": "mp4", + "definition": "origin", + "logo_type": "", + "encryption_key": "", + "md5": "66e785209c4994ee420249eb8fc6b9fc", + "size": 4352073, + "video_id": "" + } + }, + "video_size_type": 1, + "cover_uri": "tos-cn-p-148450/oYQvoRhUp4BIwITW4EwGJia0hBRDEiEaEgwdU", + "transcode_status": 1, + "duration_ms": 5042, + "thumb": { + "detail_infos": [ + { + "frame_count": 5, + "image_width": 1280, + "image_height": 720, + "uri": "tos-cn-p-148450/ooQH4FooBBetAhD3QfChyNCgETETCOoaS8ESBR", + "url": "https://p3-sign.douyinpic.com/tos-cn-p-148450/ooQH4FooBBetAhD3QfChyNCgETETCOoaS8ESBR~tplv-noop.image?dy_q=1748504868\u0026l=20250529154748307F1240F9F4DA62E3EE\u0026x-expires=1749109673\u0026x-signature=WDLlIRpUJJe8ASqg5dz57DFtLiA%3D" + } + ], + "thumb_common_info": { + "single_frame_width": 320, + "single_frame_height": 180, + "total_set_num": 5 + } + }, + "watermark_type": 1, + "cover_url": "https://p3-sign.douyinpic.com/tos-cn-p-148450/oYQvoRhUp4BIwITW4EwGJia0hBRDEiEaEgwdU~tplv-noop.image?dy_q=1748504868\u0026l=20250529154748307F1240F9F4DA62E3EE\u0026x-expires=1749109673\u0026x-signature=K%2FzjpuY%2FXBKVEN0dRqsJfmZqkQo%3D", + "duration_info": "{\"play_info_duration\":5.017,\"v_duration\":5.042,\"a_duration\":0}", + "vda_status": 10, + "video_model": "{\"status\":10,\"message\":\"success\",\"enable_ssl\":true,\"auto_definition\":\"360p\",\"enable_adaptive\":false,\"video_id\":\"v0d870g10004d0s126nog65ka2e2imgg\",\"video_duration\":5.017,\"media_type\":\"video\",\"url_expire\":1748508473,\"big_thumbs\":[{\"img_num\":5,\"uri\":\"tos-cn-p-148450/ooQH4FooBBetAhD3QfChyNCgETETCOoaS8ESBR\",\"img_url\":\"https://p3-sign.douyinpic.com/tos-cn-p-148450/ooQH4FooBBetAhD3QfChyNCgETETCOoaS8ESBR~tplv-noop.image?dy_q=1748504868\u0026l=20250529154748307F1240F9F4DA62E3EE\u0026x-expires=1748508473\u0026x-signature=OmtZ1qy2eiRPQNT%2FMchiBPhEws0%3D\",\"img_urls\":[\"https://p3-sign.douyinpic.com/tos-cn-p-148450/ooQH4FooBBetAhD3QfChyNCgETETCOoaS8ESBR~tplv-noop.image?dy_q=1748504868\u0026l=20250529154748307F1240F9F4DA62E3EE\u0026x-expires=1748508473\u0026x-signature=OmtZ1qy2eiRPQNT%2FMchiBPhEws0%3D\"],\"img_x_size\":320,\"img_y_size\":180,\"img_x_len\":4,\"img_y_len\":4,\"duration\":5.041667,\"interval\":1,\"fext\":\"jpeg\"}],\"fallback_api\":\"https://vas-lf-x.snssdk.com/video/fplay/1/402cc26a443693774b62ed9a6ffd505f/v0d870g10004d0s126nog65ka2e2imgg?aid=0\u0026device_platform=unknown\u0026force_fids=OGZhMg%3D%3D\u0026imp=false\u0026key_seed=tXHBjl9vBONus9KXjsHFA4EIp%2BEJtjjnTLOGeQehyac%3D\u0026logo_type=default\u0026multi_rate_audios=true\u0026stream_type=normal\u0026vps=6\",\"video_list\":{\"video_1\":{\"definition\":\"origin\",\"quality\":\"normal\",\"vtype\":\"mp4\",\"vwidth\":1248,\"vheight\":704,\"bitrate\":6939721,\"real_bitrate\":6939721,\"fps\":24,\"codec_type\":\"h264\",\"size\":4352073,\"main_url\":\"aHR0cHM6Ly92MjYtZGVmYXVsdC4zNjV5Zy5jb20vNTRmY2I0MzZkOTY1OTk5OTI2M2UyMzRmY2JjZTMxNDEvNjgzODFmMzkvdmlkZW8vdG9zL2NuL3Rvcy1jbi12LTE0ODQ1MC9vOEVENElOOGFoV0pncFRSRUp3RVFvQXR3R1VSaXZoSUJRMGlFLz9hPTAmY2g9MCZjcj0wJmRyPTAmZXI9MCZscj1kZWZhdWx0JmNkPTAlN0MwJTdDMCU3QzAmYnI9Njc3NyZidD02Nzc3JmNzPTAmZHM9MTImZnQ9T2kucGk3N0pXSDZCTXN4R21fcjBQRDFJTiZtaW1lX3R5cGU9dmlkZW9fbXA0JnFzPTAmcmM9Tldsbk9qZzNPamc4T21VNFpqdzFhRUJwYW5BMU5XNDVjamswTXpjek5ETTdNMEJlTlY0ek1WNWdYbUF4WVRSZlhqRXpZU05rWm1KZU1tUnJMM0JoTFMxa05HRnpjdyUzRCUzRCZidGFnPWMwMDAwZTAwMDA4MDAwJmR5X3E9MTc0ODUwNDg2OCZmZWF0dXJlX2lkPTdiZWQ5ZjlkZmJiOTE1YTA0NGU1ZDQ3Mzc1OWNlOWRmJmw9MjAyNTA1MjkxNTQ3NDgzMDdGMTI0MEY5RjREQTYyRTNFRQ==\",\"backup_url_1\":\"aHR0cHM6Ly92MTEtZGVmYXVsdC4zNjV5Zy5jb20vNWU0NmU2N2ViMjViNTU4MDFiYTA5YmRkYjM1YzY3ZjIvNjgzODFmMzkvdmlkZW8vdG9zL2NuL3Rvcy1jbi12LTE0ODQ1MC9vOEVENElOOGFoV0pncFRSRUp3RVFvQXR3R1VSaXZoSUJRMGlFLz9hPTAmY2g9MCZjcj0wJmRyPTAmZXI9MCZscj1kZWZhdWx0JmNkPTAlN0MwJTdDMCU3QzAmYnI9Njc3NyZidD02Nzc3JmNzPTAmZHM9MTImZnQ9T2kucGk3N0pXSDZCTXN4R21fcjBQRDFJTiZtaW1lX3R5cGU9dmlkZW9fbXA0JnFzPTAmcmM9Tldsbk9qZzNPamc4T21VNFpqdzFhRUJwYW5BMU5XNDVjamswTXpjek5ETTdNMEJlTlY0ek1WNWdYbUF4WVRSZlhqRXpZU05rWm1KZU1tUnJMM0JoTFMxa05HRnpjdyUzRCUzRCZidGFnPWMwMDAwZTAwMDA4MDAwJmR5X3E9MTc0ODUwNDg2OCZmZWF0dXJlX2lkPTdiZWQ5ZjlkZmJiOTE1YTA0NGU1ZDQ3Mzc1OWNlOWRmJmw9MjAyNTA1MjkxNTQ3NDgzMDdGMTI0MEY5RjREQTYyRTNFRQ==\",\"file_id\":\"6e42a9bc75db47c9a5c7a44567ad8fa2\",\"quality_type\":0,\"encryption_method\":\"\",\"audio_channels\":\"0.0\",\"feature_id\":\"7bed9f9dfbb915a044e5d473759ce9df\",\"gear_des_key\":\"0:MP4|1:normal|2:h264|4:origin|5:normal\",\"audio_sample_rate\":\"0\",\"url_expire\":1748508473,\"preload_size\":327680,\"preload_interval\":60,\"preload_min_step\":5,\"preload_max_step\":10,\"file_hash\":\"66e785209c4994ee420249eb8fc6b9fc\"}},\"popularity_level\":0,\"has_embedded_subtitle\":false,\"poster_url\":\"https://p3-sign.douyinpic.com/tos-cn-p-148450/oYQvoRhUp4BIwITW4EwGJia0hBRDEiEaEgwdU~tplv-noop.image?dy_q=1748504868\u0026l=20250529154748307F1240F9F4DA62E3EE\u0026x-expires=1748508473\u0026x-signature=Rg9kPF9NJtoikYamVTdtO2AI1N8%3D\",\"key_seed\":\"tXHBjl9vBONus9KXjsHFA4EIp+EJtjjnTLOGeQehyac=\"}", + "has_audio": false, + "is_mute": false + }, + "aigc_image_params": { + "generate_type": 10, + "first_generate_type": 10, + "text2video_params": { + "video_gen_inputs": [ + { + "prompt": "高达大战eva初号机", + "lens_motion_type": "", + "motion_speed": "", + "vid": "", + "ending_control": "", + "pre_task_id": "0", + "audio_vid": "", + "video_mode": 2, + "fps": 24, + "duration_ms": 5000, + "template_id": "0" + } + ], + "video_aspect_ratio": "16:9", + "seed": 1787401630, + "task_scene": "", + "priority": 0, + "video_gen_inputs_extra": [ + {} + ], + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "model_config": { + "icon_url": "https://p9-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/new_video_30~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780040868\u0026x-signature=JwzxSH1o0tLfhGzFr2MSVXsqA20%3D", + "model_name_starling_key": "video_3", + "model_tip_starling_key": "new_default_model_beginner_friendly", + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "is_new_model": false, + "sample_steps": null, + "blend_enable": null, + "feats": [ + "support_first_image" + ], + "model_name": "视频 3.0", + "model_tip": "响应精准,支持多镜头和运镜", + "feature_key": "dreamina_video_3", + "duration_option": [ + 5, + 10 + ], + "lens_motion_type_option": null, + "motion_speed_option": null, + "camera_strength_option": null, + "video_aspect_ratio_option": [ + "21:9", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ], + "commercial_config": { + "commerce_info_map": { + "basic": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + }, + "retry": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + } + } + }, + "fps": 24, + "extra": {}, + "feats_cant_combine": null, + "model_bg_prompt_starling_key": "" + }, + "video_model_config": { + "icon": { + "image_uri": "tos-cn-i-3jr8j4ixpe/new_video_30", + "image_url": "https://p9-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/new_video_30~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780040868\u0026x-signature=JwzxSH1o0tLfhGzFr2MSVXsqA20%3D", + "width": 0, + "height": 0, + "format": "webp", + "smart_crop_loc": null + }, + "model_name": "视频 3.0", + "model_name_starling_key": "video_3", + "model_tip": "响应精准,支持多镜头和运镜", + "model_tip_starling_key": "new_default_model_beginner_friendly", + "feature_key": "dreamina_video_3", + "icon_tag": "new", + "options": [ + { + "key": "resolution", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "720p", + "1080p" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "input_media_type", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "prompt", + "first_frame" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "frames", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 120, + 240 + ], + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "fps", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 24 + ], + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "video_aspect_ratio", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "21:9", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 1 + }, + "forbidden_display": false + } + ], + "commercial_config": { + "default": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + }, + "format": "{resolution}", + "format_conf": { + "1080p": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three_1080", + "amount": 0 + }, + "720p": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + } + } + }, + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "extra": { + "pop_icon": { + "image_uri": "tos-cn-i-3jr8j4ixpe/vgfm_lite_cover", + "image_url": "https://p9-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/vgfm_lite_cover~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780040868\u0026x-signature=srxEpaLESvQNRYdDwFmVPLWNZ9w%3D", + "width": 0, + "height": 0, + "format": "webp", + "smart_crop_loc": null + }, + "model_source": "by Seedance 1.0" + }, + "model_status": 0 + } + }, + "template_id": "0", + "insta_drag_params": { + "origin_item_id": null + }, + "hide_ref_images": false + }, + "statistic": { + "feedback_status": 0 + }, + "category_id_list": [], + "aigc_flow": { + "version": "0.1.2" + }, + "aigc_draft": { + "version": "3.0.5", + "uri": "aigc-draft/4652100572930", + "content": "", + "update_time": 0, + "last_preview_time": 0, + "resource_type": "", + "public_uri": "", + "variables": [], + "resource_width": 0, + "resource_height": 0, + "node_keys": [], + "cost": 0 + }, + "gen_result_data": { + "result_code": 0, + "result_msg": "Success" + }, + "extra": { + "template_type": "video", + "ai_feature": "text_generate_video" + }, + "ai_feature": { + "features": [ + { + "type": "text_generate_video" + } + ], + "is_merged": true + }, + "sharing_info": { + "share_status": 2 + }, + "metadata_param": "{\"effect_id\":\"gen_video\",\"effect_type\":\"tool\"}" + } + ], + "origin_item_list": [], + "task": { + "task_id": "4647703308546", + "submit_id": "daed2f59-ebc0-467e-a31c-c6e44e25cdc6", + "aid": 0, + "status": 50, + "finish_time": 1748504868, + "history_id": "18763140978434", + "task_payload": null, + "original_input": { + "video_gen_inputs": [ + { + "prompt": "高达大战eva初号机", + "lens_motion_type": "", + "motion_speed": "", + "vid": "", + "ending_control": "", + "pre_task_id": "0", + "audio_vid": "", + "video_mode": 2, + "fps": 24, + "duration_ms": 5000, + "template_id": "0" + } + ], + "video_aspect_ratio": "16:9", + "seed": 1787401630, + "task_scene": "", + "priority": 0, + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "model_config": { + "icon_url": "https://p3-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/new_video_30~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780040868\u0026x-signature=xxJ56UEOiCBHwKLd7PqATVSieFc%3D", + "model_name_starling_key": "video_3", + "model_tip_starling_key": "new_default_model_beginner_friendly", + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "is_new_model": false, + "sample_steps": null, + "blend_enable": null, + "feats": [ + "support_first_image" + ], + "model_name": "视频 3.0", + "model_tip": "响应精准,支持多镜头和运镜", + "feature_key": "dreamina_video_3", + "duration_option": [ + 5, + 10 + ], + "lens_motion_type_option": null, + "motion_speed_option": null, + "camera_strength_option": null, + "video_aspect_ratio_option": [ + "21:9", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ], + "commercial_config": { + "commerce_info_map": { + "basic": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + }, + "retry": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + } + } + }, + "fps": 24, + "extra": {}, + "feats_cant_combine": null, + "model_bg_prompt_starling_key": "" + }, + "video_model_config": { + "icon": { + "image_uri": "tos-cn-i-3jr8j4ixpe/new_video_30", + "image_url": "https://p3-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/new_video_30~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780040868\u0026x-signature=xxJ56UEOiCBHwKLd7PqATVSieFc%3D", + "width": 0, + "height": 0, + "format": "webp", + "smart_crop_loc": null + }, + "model_name": "视频 3.0", + "model_name_starling_key": "video_3", + "model_tip": "响应精准,支持多镜头和运镜", + "model_tip_starling_key": "new_default_model_beginner_friendly", + "feature_key": "dreamina_video_3", + "icon_tag": "new", + "options": [ + { + "key": "resolution", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "720p", + "1080p" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "input_media_type", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "prompt", + "first_frame" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "frames", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 120, + 240 + ], + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "fps", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 24 + ], + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "video_aspect_ratio", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "21:9", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 1 + }, + "forbidden_display": false + } + ], + "commercial_config": { + "default": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + }, + "format": "{resolution}", + "format_conf": { + "1080p": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three_1080", + "amount": 0 + }, + "720p": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + } + } + }, + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "extra": { + "pop_icon": { + "image_uri": "tos-cn-i-3jr8j4ixpe/vgfm_lite_cover", + "image_url": "https://p6-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/vgfm_lite_cover~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780040868\u0026x-signature=tVwWqcvYaTkXH0ijjKE9VWVn%2FAE%3D", + "width": 0, + "height": 0, + "format": "webp", + "smart_crop_loc": null + }, + "model_source": "by Seedance 1.0" + }, + "model_status": 0 + } + }, + "req_first_frame_image": null, + "ai_gen_prompt": "", + "priority": 0, + "lip_sync_info": { + "lip_sync_extra": "", + "lip_sync_video_url": "", + "lip_sync_audio_url": "", + "labcv_task_id": "" + }, + "multi_size_first_frame_image": null, + "multi_size_end_frame_image": null, + "process_flows": [ + { + "task_id": "4647703308546", + "cur_process_flows": [ + 1 + ], + "history_id": "18763140978434" + } + ], + "create_time": 0, + "aigc_image_params": { + "generate_type": 10, + "first_generate_type": 10, + "text2video_params": { + "video_gen_inputs": [ + { + "prompt": "高达大战eva初号机", + "lens_motion_type": "", + "motion_speed": "", + "vid": "", + "ending_control": "", + "pre_task_id": "0", + "audio_vid": "", + "video_mode": 2, + "fps": 24, + "duration_ms": 5000, + "template_id": "0" + } + ], + "video_aspect_ratio": "16:9", + "seed": 1787401630, + "task_scene": "", + "priority": 0, + "video_gen_inputs_extra": [ + {} + ], + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "model_config": { + "icon_url": "https://p9-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/new_video_30~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780040868\u0026x-signature=JwzxSH1o0tLfhGzFr2MSVXsqA20%3D", + "model_name_starling_key": "video_3", + "model_tip_starling_key": "new_default_model_beginner_friendly", + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "is_new_model": false, + "sample_steps": null, + "blend_enable": null, + "feats": [ + "support_first_image" + ], + "model_name": "视频 3.0", + "model_tip": "响应精准,支持多镜头和运镜", + "feature_key": "dreamina_video_3", + "duration_option": [ + 5, + 10 + ], + "lens_motion_type_option": null, + "motion_speed_option": null, + "camera_strength_option": null, + "video_aspect_ratio_option": [ + "21:9", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ], + "commercial_config": { + "commerce_info_map": { + "basic": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + }, + "retry": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + } + } + }, + "fps": 24, + "extra": {}, + "feats_cant_combine": null, + "model_bg_prompt_starling_key": "" + }, + "video_model_config": { + "icon": { + "image_uri": "tos-cn-i-3jr8j4ixpe/new_video_30", + "image_url": "https://p9-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/new_video_30~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780040868\u0026x-signature=JwzxSH1o0tLfhGzFr2MSVXsqA20%3D", + "width": 0, + "height": 0, + "format": "webp", + "smart_crop_loc": null + }, + "model_name": "视频 3.0", + "model_name_starling_key": "video_3", + "model_tip": "响应精准,支持多镜头和运镜", + "model_tip_starling_key": "new_default_model_beginner_friendly", + "feature_key": "dreamina_video_3", + "icon_tag": "new", + "options": [ + { + "key": "resolution", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "720p", + "1080p" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "input_media_type", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "prompt", + "first_frame" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "frames", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 120, + 240 + ], + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "fps", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 24 + ], + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "video_aspect_ratio", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "21:9", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 1 + }, + "forbidden_display": false + } + ], + "commercial_config": { + "default": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + }, + "format": "{resolution}", + "format_conf": { + "1080p": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three_1080", + "amount": 0 + }, + "720p": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + } + } + }, + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "extra": { + "pop_icon": { + "image_uri": "tos-cn-i-3jr8j4ixpe/vgfm_lite_cover", + "image_url": "https://p9-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/vgfm_lite_cover~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780040868\u0026x-signature=srxEpaLESvQNRYdDwFmVPLWNZ9w%3D", + "width": 0, + "height": 0, + "format": "webp", + "smart_crop_loc": null + }, + "model_source": "by Seedance 1.0" + }, + "model_status": 0 + } + }, + "template_id": "0", + "insta_drag_params": { + "origin_item_id": null + }, + "hide_ref_images": false + }, + "ref_item": null, + "resp_ret": { + "ret": "0" + } + }, + "mode": "workbench", + "asset_option": { + "has_favorited": false + }, + "uid": "4476817135373291", + "aigc_flow": { + "version": "3.0.5" + }, + "status": 50, + "history_group_key_md5": "1de0cb9377711654f790d75bfa42c115", + "history_group_key": "generate_video#高达大战eva初号机", + "draft_content": "{\"type\":\"draft\",\"id\":\"919f1ac7-9459-3750-0660-eba50aa7f37c\",\"min_version\":\"3.0.5\",\"min_features\":[],\"is_from_tsn\":true,\"version\":\"3.0.5\",\"main_component_id\":\"554271af-f6f1-9b2f-eab2-ce7cb2f2c06f\",\"component_list\":[{\"type\":\"video_base_component\",\"id\":\"554271af-f6f1-9b2f-eab2-ce7cb2f2c06f\",\"min_version\":\"1.0.0\",\"gen_type\":10,\"metadata\":{\"type\":\"\",\"id\":\"a3bc124b-29f8-a01d-4745-7f21fd6f9f7a\",\"created_platform\":3,\"created_platform_version\":\"\",\"created_time_in_ms\":\"1748504839676\",\"created_did\":\"\"},\"generate_type\":\"gen_video\",\"aigc_mode\":\"workbench\",\"abilities\":{\"type\":\"\",\"id\":\"e0b8fac3-add3-ae9a-01be-e40ea8a316de\",\"gen_video\":{\"type\":\"\",\"id\":\"9a8b908b-40b5-7621-66bb-d01a9d60ad5c\",\"text_to_video_params\":{\"type\":\"\",\"id\":\"5b19e7d3-9892-995a-4aee-dd0a5ad92f28\",\"video_gen_inputs\":[{\"type\":\"\",\"id\":\"a6fa509f-8f3c-f8e0-17da-b2b4faf67b45\",\"min_version\":\"3.0.5\",\"prompt\":\"高达大战eva初号机\",\"video_mode\":2,\"fps\":24,\"duration_ms\":5000}],\"video_aspect_ratio\":\"16:9\",\"seed\":1787401630,\"model_req_key\":\"dreamina_ic_generate_video_model_vgfm_3.0\"},\"video_task_extra\":\"{\\\"promptSource\\\":\\\"custom\\\",\\\"originSubmitId\\\":\\\"685b0c61-af75-410f-ba9c-76f4624be7e7\\\",\\\"isDefaultSeed\\\":1,\\\"originTemplateId\\\":\\\"\\\",\\\"imageNameMapping\\\":{}}\"}},\"process_type\":1}]}", + "fail_code": "0", + "submit_id": "daed2f59-ebc0-467e-a31c-c6e44e25cdc6", + "capflow_id": "8abf7180_84c0_49fe_96b7_f40c515127e3", + "metrics_extra": "{\"promptSource\":\"custom\",\"originSubmitId\":\"685b0c61-af75-410f-ba9c-76f4624be7e7\",\"isDefaultSeed\":1,\"originTemplateId\":\"\",\"imageNameMapping\":{}}", + "fail_msg": "Success", + "generate_id": "20250529154719AB298A2D9B3B486C5B92", + "finish_time": 1748504868, + "model_info": { + "icon_url": "https://p6-heycan-hgt-sign.byteimg.com/tos-cn-i-3jr8j4ixpe/new_video_30~tplv-3jr8j4ixpe-resize:0:0.webp?lk3s=8e790bc3\u0026x-expires=1780040868\u0026x-signature=42cZHRrHmXNXEbl3kte8urdepnw%3D", + "model_name_starling_key": "video_3", + "model_tip_starling_key": "new_default_model_beginner_friendly", + "model_req_key": "dreamina_ic_generate_video_model_vgfm_3.0", + "model_name": "视频 3.0", + "commercial_config": { + "commerce_info_map": { + "basic": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + }, + "retry": { + "resource_sub_type": "aigc", + "resource_id_type": "str", + "resource_id": "generate_video", + "benefit_type": "basic_video_operation_vgfm_v_three", + "amount": 0 + } + } + }, + "video_model_options": [ + { + "key": "resolution", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "720p", + "1080p" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "input_media_type", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "prompt", + "first_frame" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "frames", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 120, + 240 + ], + "default_val_idx": 0 + }, + "forbidden_display": false + }, + { + "key": "fps", + "value_type": "enum", + "enum_val": { + "enum_type": "int", + "string_value": null, + "double_value": null, + "int_value": [ + 24 + ], + "default_val_idx": 0 + }, + "forbidden_display": true + }, + { + "key": "video_aspect_ratio", + "value_type": "enum", + "enum_val": { + "enum_type": "string", + "string_value": [ + "21:9", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ], + "double_value": null, + "int_value": null, + "default_val_idx": 1 + }, + "forbidden_display": false + } + ] + }, + "forecast_generate_cost": 37, + "forecast_queue_cost": 0, + "fail_starling_key": "", + "fail_starling_message": "", + "min_feats": null, + "lip_sync_info": { + "lip_sync_extra": "", + "lip_sync_video_url": "", + "lip_sync_audio_url": "", + "labcv_task_id": "" + } + } + } +} \ No newline at end of file diff --git a/temp/3013.265ac0fd.js b/temp/3013.265ac0fd.js new file mode 100644 index 0000000..03928d2 --- /dev/null +++ b/temp/3013.265ac0fd.js @@ -0,0 +1,79430 @@ +/*! For license information please see 3013.265ac0fd.js.LICENSE.txt */ +(self.__LOADABLE_LOADED_CHUNKS__ = self.__LOADABLE_LOADED_CHUNKS__ || []).push([ + ["3013"], + { + 487059: function (e, t, i) { + "use strict"; + var n, r, a; + i.d(t, { + Kr: function () { + return c; + }, + U_: function () { + return n; + }, + hR: function () { + return s; + }, + hm: function () { + return r; + }, + j7: function () { + return l; + }, + vJ: function () { + return o; + }, + }), + !(function (e) { + (e.CurveHSL = "curve-hsl"), + (e.VoiceChange = "voice-change"), + (e.ShootProject = "shoot-project"), + (e.ManualFigure = "manual-figure"), + (e.LiveshortenPanEntertainment = "liveshorten-pan-entertainment"), + (e.FaceProp = "face-prop"), + (e.Beauty2 = "beauty2"), + (e.SkeletonBody = "skeleton-body"), + (e.TextTemplate = "text-template"), + (e.ShootProp = "shoot-prop"), + (e.Shoot = "shoot"), + (e.Play = "play"), + (e.SystemFonts = "system-fonts"), + (e.Beauty = "beauty"), + (e.Flower2 = "flower2"), + (e.Filter2 = "filter2"), + (e.Bubble2 = "bubble2"), + (e.Default = "default"), + (e.Effects = "effects2"), + (e.Tone = "tone"), + (e.Filter = "filter"), + (e.Canvas = "canvas"), + (e.Bubble = "bubble"), + (e.Flower = "flower"), + (e.SubtitleTemplate = "subtitle-templates"), + (e.ObjectLock = "camera_tracking"), + (e.Video = "video"), + (e.Transitions = "transitions"), + (e.Mix = "mix"), + (e.Sticker = "sticker"), + (e.Text = "text"), + (e.Insert = "insert"), + (e.Fonts = "fonts"), + (e.Videomask = "videomask"), + (e.Curvespeed = "curvespeed"), + (e.Integration = "integration"), + (e.Iosemojinew = "iosemojinew"), + (e.Emoji = "emoji"), + (e.Emojiandroid = "emojiandroid"), + (e.Emojiios = "emojiios"), + (e.AutoBeautyShape = "auto-beauty"), + (e.AutoBeauty = "auto-beauty2"), + (e.AutoBeautyBody = "auto-beauty3"), + (e.AutoBeautyMakeup = "makeup"), + (e.Graffiti = "graffiti"), + (e.SmartColorAdjust = "smart_color_adjust"), + (e.TextGlow = "text_glow"), + (e.CC4BGsEdit = "cc4b_gs_edit"), + (e.Shape = "shape"), + (e.ShapeAnimation = "shape-animation"), + (e.PathAnimation = "path-animation"), + (e.CurveAdjustPreset = "curve_adjust_preset"), + (e.AiavatarMask = "aiavatarmask"), + (e.ColorMatch = "color_match"), + (e.SmartRelight = "smart-relight"), + (e.ToolbarFonts = ""), + (e.MattingStroke = "matting_stroke"); + })(n || (n = {})), + !(function (e) { + (e.SaleDesign = "sales-design"), + (e.SalesSticker = "sales-sticker"), + (e.SalesFont = "fonts"), + (e.SalesTextTemplate = "sales-text-template"), + (e.Svg = "svg"), + (e.SalesFrame = "sales-frame"), + (e.SalesFilter = "sales-filter"), + (e.SalesImageEffect = "sales-image-effect"), + (e.YkImage = "yk-image"), + (e.AIBackground = "ai_background"), + (e.SalesTextPreset = "sales-text-preset"), + (e.SalesTextGlow = "sales-text-glow"), + (e.SalesGrid = "sales-grid"), + (e.SalesRetouchFace = "sales-beauty-face"), + (e.SalesRetouchReshape = "sales-beauty-reshape"), + (e.SalesRetouchBody = "sales-beauty-body"), + (e.SalesRetouchMakeup = "sales-beauty-makeup"), + (e.LokiTemplate = "loki-template"), + (e.EcomAIBackground = "ecom-ai_background"), + (e.PhotoDreamina = "dreamina"), + (e.FlowerTextMarketing = "flower_text_marketing"), + (e.TextTemplateMarketing = "text_template_marketing"), + (e.FontMarketing = "font_marketing"); + })(r || (r = {})), + !(function (e) { + (e.CNSalesSticker = "cn-sales-sticker"), + (e.CNSalesFont = "cn-fonts"), + (e.CNSalesTextTemplate = "cn-sales-text-template"); + })(a || (a = {})); + let o = { + "sales-design": "sales-design", + "sales-sticker": "sales-sticker", + fonts: "fonts", + "sales-image-effect": "sales-image-effect", + "sales-beauty-body": "sales-beauty-body", + "sales-beauty-face": "sales-beauty-face", + "sales-beauty-reshape": "sales-beauty-reshape", + "sales-beauty-makeup": "sales-beauty-makeup", + "sales-filter": "sales-filter", + "sales-frame": "sales-frame", + svg: "svg", + "sales-text-glow": "sales-text-glow", + "sales-text-template": "sales-text-template", + text_template_marketing: "text_template_marketing", + font_marketing: "fonts", + }, + s = { + text: "text", + fonts: "fonts", + flower: "flower", + default: "default", + sticker: "sticker", + "shape-animation": "shape-animation", + }, + l = { + text: "text", + fonts: "fonts", + flower: "flower", + default: "default", + sticker: "sticker", + "shape-animation": "shape-animation", + }, + c = { + "curve-hsl": "curve-hsl", + "voice-change": "voice-change", + "shoot-project": "shoot-project", + "manual-figure": "manual-figure", + "liveshorten-pan-entertainment": "liveshorten-pan-entertainment", + "face-prop": "face-prop", + beauty2: "beauty2", + "skeleton-body": "skeleton-body", + "text-template": "text-template", + "shoot-prop": "shoot-prop", + shoot: "shoot", + play: "play", + "system-fonts": "system-fonts", + beauty: "beauty", + flower2: "flower2", + filter2: "filter2", + bubble2: "bubble2", + default: "default", + effects2: "effects2", + tone: "tone", + filter: "filter", + canvas: "canvas", + bubble: "bubble", + flower: "flower", + video: "video", + transitions: "transitions", + mix: "mix", + sticker: "sticker", + text: "text", + insert: "insert", + fonts: "fonts", + videomask: "videomask", + curvespeed: "curvespeed", + integration: "integration", + iosemojinew: "iosemojinew", + emoji: "emoji", + emojiandroid: "emojiandroid", + emojiios: "emojiios", + "auto-beauty": "auto-beauty", + "auto-beauty2": "auto-beauty2", + "auto-beauty3": "auto-beauty3", + makeup: "makeup", + graffiti: "graffiti", + smart_color_adjust: "smart_color_adjust", + text_glow: "text_glow", + cc4b_gs_edit: "cc4b_gs_edit", + shape: "shape", + "shape-animation": "shape-animation", + "path-animation": "path-animation", + curve_adjust_preset: "curve_adjust_preset", + aiavatarmask: "aiavatarmask", + }; + }, + 810413: function (e, t, i) { + "use strict"; + i.d(t, { + AF: function () { + return n; + }, + }); + let n = 548669; + }, + 815112: function (e, t) { + "use strict"; + t.Z = { + promptWithImgWrapperHeight: "24px", + promptWithImgWrapperWidth: "123px", + promptSeedIconSize: "12px", + videoPromptPaddingVertical: "12px", + videoControlsHeight: "32px", + videoPaddingTop: "20px", + videoMarginBottom: "28px", + generateListPadding: "24px", + generateListDateWidth: "46px", + videoContainerPaddingRight: "86px", + feedCarouselHeight: "220px", + videoFeedHeaderHeight: "45px", + generatePanelMarginLeft: "16px", + masonryGap: "8px", + generationEntryHeight: "172px", + generationEntryMarginBottom: "16px", + videoMenuItemWidth: "184px", + videoMenuWidth: "160px", + exploreFeedTabHeight: "32px", + exploreFeedTabPaddingBottom: "20px", + headerHeight: "76px", + exploreFeedCategoryHeight: "32px", + exploreFeedCategoryPaddingBottom: "16px", + videoMoreWidth: "16px", + generateListPaddingTop: "4px", + videoFailPaddingH: "12px", + videoFailPaddingV: "8px", + videoFailIconMargin: "8px", + videoFailIconSize: "16px", + personalMarginTop: "100px", + personalProfileHeight: "250px", + personalProfileWidthLarge: "360px", + personalProfileWidthSmall: "320px", + personalProfileWidthBreakPoint: "1536px", + personalScrollHeaderGap: "24px", + storyEditorPadding: "8px", + storyExSmallScreenWidth: "1146px", + storySmallScreenWidth: "1280px", + storyMiddleScreenWidth: "1280px", + storyLargeScreenWidth: "1280px", + storyExLargeScreenWidth: "1536px", + storySmallPromptWidth: "240px", + storyMiddlePromptWidth: "280px", + storyLargePromptWidth: "320px", + pageIconColor: "#8f9ca5", + videoRelaxProcessingHeight: "68px", + timelineLargeGap: "16px", + timelineThumbnailHeightTime: "125px", + timelineScrollWidth: "6px", + timelineInsertSegmentBtnWidth: "16px", + characterGenerateModalPanelWidth: "280px", + characterGenerateModalHeaderHeight: "48px", + largestScreenWidth: "1920px", + largeContainerWidth: "1650px", + smallScreenWidth: "1024px", + scrollBarWidth: "2px", + "largeScreenGenerate-Width": "1398px", + largeScreenGenerateWidth: "1398px", + middleScreenGenerateWidth: "1366px", + smallestScreenGenerateWidth: "1024px", + generateVideoCardMaxWidth: "526px", + generateVideoCardMinWidth: "383px", + generateCardMarginLeft: "12px", + generateCardSideBarWidth: "24px", + generateCardHoverButtonSize: "28px", + generateCardBgmButtonWidth: "68px", + storyboardContainerPadding: "16px", + storyboardGap: "4px", + generateContainerAnimationDuration: ".5s", + videoPromptTabHeight: "36px", + videoPromptTabMarginBottom: "8px", + agentChatMinHeight: "132px", + promptTabHeight: "44px", + contextMenu: "contextMenu-UrULv8", + contextMenuDivide: "contextMenuDivide-TSc7DW", + rotating: "rotating-M0Gk_b", + }; + }, + 331730: function (e, t) { + "use strict"; + t.Z = { menu: "menu-SDQR5C", menuItem: "menuItem-CEBGRb" }; + }, + 570878: function (e, t) { + "use strict"; + t.Z = { + graphicToolIconActive: "graphicToolIconActive-xsS5fZ", + graphicToolIconHover: "graphicToolIconHover-V1S3Gf", + paintStandardButton: "paintStandardButton-VgxmId", + closeBtn: "closeBtn-k9tzKH", + paintStandardButtonIcon: "paintStandardButtonIcon-Vd4HqF", + }; + }, + 79532: function (e, t) { + "use strict"; + t.Z = { + promptWithImgWrapperHeight: "24px", + promptWithImgWrapperWidth: "123px", + promptSeedIconSize: "12px", + videoPromptPaddingVertical: "12px", + videoControlsHeight: "32px", + videoPaddingTop: "20px", + videoMarginBottom: "28px", + generateListPadding: "24px", + generateListDateWidth: "46px", + videoContainerPaddingRight: "86px", + feedCarouselHeight: "220px", + videoFeedHeaderHeight: "45px", + generatePanelMarginLeft: "16px", + masonryGap: "8px", + generationEntryHeight: "172px", + generationEntryMarginBottom: "16px", + videoMenuItemWidth: "184px", + videoMenuWidth: "160px", + exploreFeedTabHeight: "32px", + exploreFeedTabPaddingBottom: "20px", + headerHeight: "76px", + exploreFeedCategoryHeight: "32px", + exploreFeedCategoryPaddingBottom: "16px", + videoMoreWidth: "16px", + generateListPaddingTop: "4px", + videoFailPaddingH: "12px", + videoFailPaddingV: "8px", + videoFailIconMargin: "8px", + videoFailIconSize: "16px", + personalMarginTop: "100px", + personalProfileHeight: "250px", + personalProfileWidthLarge: "360px", + personalProfileWidthSmall: "320px", + personalProfileWidthBreakPoint: "1536px", + personalScrollHeaderGap: "24px", + storyEditorPadding: "8px", + storyExSmallScreenWidth: "1146px", + storySmallScreenWidth: "1280px", + storyMiddleScreenWidth: "1280px", + storyLargeScreenWidth: "1280px", + storyExLargeScreenWidth: "1536px", + storySmallPromptWidth: "240px", + storyMiddlePromptWidth: "280px", + storyLargePromptWidth: "320px", + pageIconColor: "#8f9ca5", + videoRelaxProcessingHeight: "68px", + timelineLargeGap: "16px", + timelineThumbnailHeightTime: "125px", + timelineScrollWidth: "6px", + timelineInsertSegmentBtnWidth: "16px", + characterGenerateModalPanelWidth: "280px", + characterGenerateModalHeaderHeight: "48px", + largestScreenWidth: "1920px", + largeContainerWidth: "1650px", + smallScreenWidth: "1024px", + scrollBarWidth: "2px", + "largeScreenGenerate-Width": "1398px", + largeScreenGenerateWidth: "1398px", + middleScreenGenerateWidth: "1366px", + smallestScreenGenerateWidth: "1024px", + generateVideoCardMaxWidth: "526px", + generateVideoCardMinWidth: "383px", + generateCardMarginLeft: "12px", + generateCardSideBarWidth: "24px", + generateCardHoverButtonSize: "28px", + generateCardBgmButtonWidth: "68px", + storyboardContainerPadding: "16px", + storyboardGap: "4px", + generateContainerAnimationDuration: ".5s", + videoPromptTabHeight: "36px", + videoPromptTabMarginBottom: "8px", + agentChatMinHeight: "132px", + promptTabHeight: "44px", + textLabelContainer: "textLabelContainer-f3FvpQ", + textLabel: "textLabel-PPnrOg", + forceInputIcon: "forceInputIcon-zHuVo_", + rotating: "rotating-AQMLNQ", + }; + }, + 53453: function (e, t, i) { + var n = t; + (n.bignum = i(984826)), + (n.define = i(10938).define), + (n.base = i(701926)), + (n.constants = i(585202)), + (n.decoders = i(897128)), + (n.encoders = i(20815)); + }, + 10938: function (e, t, i) { + var n = i(53453), + r = i(32016); + function a(e, t) { + (this.name = e), + (this.body = t), + (this.decoders = {}), + (this.encoders = {}); + } + (t.define = function (e, t) { + return new a(e, t); + }), + (a.prototype._createNamed = function (e) { + var t; + try { + t = i(185608).runInThisContext( + "(function " + + this.name + + "(entity) {\n this._initNamed(entity);\n})" + ); + } catch (e) { + t = function (e) { + this._initNamed(e); + }; + } + return ( + r(t, e), + (t.prototype._initNamed = function (t) { + e.call(this, t); + }), + new t(this) + ); + }), + (a.prototype._getDecoder = function (e) { + return ( + (e = e || "der"), + !this.decoders.hasOwnProperty(e) && + (this.decoders[e] = this._createNamed(n.decoders[e])), + this.decoders[e] + ); + }), + (a.prototype.decode = function (e, t, i) { + return this._getDecoder(t).decode(e, i); + }), + (a.prototype._getEncoder = function (e) { + return ( + (e = e || "der"), + !this.encoders.hasOwnProperty(e) && + (this.encoders[e] = this._createNamed(n.encoders[e])), + this.encoders[e] + ); + }), + (a.prototype.encode = function (e, t, i) { + return this._getEncoder(t).encode(e, i); + }); + }, + 987090: function (e, t, i) { + var n = i(32016), + r = i(701926).Reporter, + a = i(966465).Buffer; + function o(e, t) { + if ((r.call(this, t), !a.isBuffer(e))) { + this.error("Input not Buffer"); + return; + } + (this.base = e), (this.offset = 0), (this.length = e.length); + } + function s(e, t) { + if (Array.isArray(e)) + (this.length = 0), + (this.value = e.map(function (e) { + return ( + !(e instanceof s) && (e = new s(e, t)), + (this.length += e.length), + e + ); + }, this)); + else if ("number" == typeof e) { + if (!(0 <= e && e <= 255)) + return t.error("non-byte EncoderBuffer value"); + (this.value = e), (this.length = 1); + } else if ("string" == typeof e) + (this.value = e), (this.length = a.byteLength(e)); + else { + if (!a.isBuffer(e)) return t.error("Unsupported type: " + typeof e); + (this.value = e), (this.length = e.length); + } + } + n(o, r), + (t.DecoderBuffer = o), + (o.prototype.save = function () { + return { offset: this.offset, reporter: r.prototype.save.call(this) }; + }), + (o.prototype.restore = function (e) { + var t = new o(this.base); + return ( + (t.offset = e.offset), + (t.length = this.offset), + (this.offset = e.offset), + r.prototype.restore.call(this, e.reporter), + t + ); + }), + (o.prototype.isEmpty = function () { + return this.offset === this.length; + }), + (o.prototype.readUInt8 = function (e) { + return this.offset + 1 <= this.length + ? this.base.readUInt8(this.offset++, !0) + : this.error(e || "DecoderBuffer overrun"); + }), + (o.prototype.skip = function (e, t) { + if (!(this.offset + e <= this.length)) + return this.error(t || "DecoderBuffer overrun"); + var i = new o(this.base); + return ( + (i._reporterState = this._reporterState), + (i.offset = this.offset), + (i.length = this.offset + e), + (this.offset += e), + i + ); + }), + (o.prototype.raw = function (e) { + return this.base.slice(e ? e.offset : this.offset, this.length); + }), + (t.EncoderBuffer = s), + (s.prototype.join = function (e, t) { + return (!e && (e = new a(this.length)), + !t && (t = 0), + 0 === this.length) + ? e + : (Array.isArray(this.value) + ? this.value.forEach(function (i) { + i.join(e, t), (t += i.length); + }) + : ("number" == typeof this.value + ? (e[t] = this.value) + : "string" == typeof this.value + ? e.write(this.value, t) + : a.isBuffer(this.value) && this.value.copy(e, t), + (t += this.length)), + e); + }); + }, + 701926: function (e, t, i) { + var n = t; + (n.Reporter = i(188555).Reporter), + (n.DecoderBuffer = i(987090).DecoderBuffer), + (n.EncoderBuffer = i(987090).EncoderBuffer), + (n.Node = i(311588)); + }, + 311588: function (e, t, i) { + var n = i(701926).Reporter, + r = i(701926).EncoderBuffer, + a = i(701926).DecoderBuffer, + o = i(422555), + s = [ + "seq", + "seqof", + "set", + "setof", + "objid", + "bool", + "gentime", + "utctime", + "null_", + "enum", + "int", + "objDesc", + "bitstr", + "bmpstr", + "charstr", + "genstr", + "graphstr", + "ia5str", + "iso646str", + "numstr", + "octstr", + "printstr", + "t61str", + "unistr", + "utf8str", + "videostr", + ], + l = [ + "key", + "obj", + "use", + "optional", + "explicit", + "implicit", + "def", + "choice", + "any", + "contains", + ].concat(s), + c = [ + "_peekTag", + "_decodeTag", + "_use", + "_decodeStr", + "_decodeObjid", + "_decodeTime", + "_decodeNull", + "_decodeInt", + "_decodeBool", + "_decodeList", + "_encodeComposite", + "_encodeStr", + "_encodeObjid", + "_encodeTime", + "_encodeNull", + "_encodeInt", + "_encodeBool", + ]; + function d(e, t) { + var i = {}; + (this._baseState = i), + (i.enc = e), + (i.parent = t || null), + (i.children = null), + (i.tag = null), + (i.args = null), + (i.reverseArgs = null), + (i.choice = null), + (i.optional = !1), + (i.any = !1), + (i.obj = !1), + (i.use = null), + (i.useDecoder = null), + (i.key = null), + (i.default = null), + (i.explicit = null), + (i.implicit = null), + (i.contains = null), + !i.parent && ((i.children = []), this._wrap()); + } + e.exports = d; + var u = [ + "enc", + "parent", + "children", + "tag", + "args", + "reverseArgs", + "choice", + "optional", + "any", + "obj", + "use", + "alteredUse", + "key", + "default", + "explicit", + "implicit", + "contains", + ]; + (d.prototype.clone = function () { + var e = this._baseState, + t = {}; + u.forEach(function (i) { + t[i] = e[i]; + }); + var i = new this.constructor(t.parent); + return (i._baseState = t), i; + }), + (d.prototype._wrap = function () { + var e = this._baseState; + l.forEach(function (t) { + this[t] = function () { + var i = new this.constructor(this); + return e.children.push(i), i[t].apply(i, arguments); + }; + }, this); + }), + (d.prototype._init = function (e) { + var t = this._baseState; + o(null === t.parent), + e.call(this), + (t.children = t.children.filter(function (e) { + return e._baseState.parent === this; + }, this)), + o.equal(t.children.length, 1, "Root node can have only one child"); + }), + (d.prototype._useArgs = function (e) { + var t = this._baseState, + i = e.filter(function (e) { + return e instanceof this.constructor; + }, this); + (e = e.filter(function (e) { + return !(e instanceof this.constructor); + }, this)), + 0 !== i.length && + (o(null === t.children), + (t.children = i), + i.forEach(function (e) { + e._baseState.parent = this; + }, this)), + 0 !== e.length && + (o(null === t.args), + (t.args = e), + (t.reverseArgs = e.map(function (e) { + if ("object" != typeof e || e.constructor !== Object) return e; + var t = {}; + return ( + Object.keys(e).forEach(function (i) { + i == (0 | i) && (i |= 0), (t[e[i]] = i); + }), + t + ); + }))); + }), + c.forEach(function (e) { + d.prototype[e] = function () { + throw Error( + e + " not implemented for encoding: " + this._baseState.enc + ); + }; + }), + s.forEach(function (e) { + d.prototype[e] = function () { + var t = this._baseState, + i = Array.prototype.slice.call(arguments); + return o(null === t.tag), (t.tag = e), this._useArgs(i), this; + }; + }), + (d.prototype.use = function (e) { + o(e); + var t = this._baseState; + return o(null === t.use), (t.use = e), this; + }), + (d.prototype.optional = function () { + return (this._baseState.optional = !0), this; + }), + (d.prototype.def = function (e) { + var t = this._baseState; + return ( + o(null === t.default), (t.default = e), (t.optional = !0), this + ); + }), + (d.prototype.explicit = function (e) { + var t = this._baseState; + return ( + o(null === t.explicit && null === t.implicit), + (t.explicit = e), + this + ); + }), + (d.prototype.implicit = function (e) { + var t = this._baseState; + return ( + o(null === t.explicit && null === t.implicit), + (t.implicit = e), + this + ); + }), + (d.prototype.obj = function () { + var e = this._baseState, + t = Array.prototype.slice.call(arguments); + return (e.obj = !0), 0 !== t.length && this._useArgs(t), this; + }), + (d.prototype.key = function (e) { + var t = this._baseState; + return o(null === t.key), (t.key = e), this; + }), + (d.prototype.any = function () { + return (this._baseState.any = !0), this; + }), + (d.prototype.choice = function (e) { + var t = this._baseState; + return ( + o(null === t.choice), + (t.choice = e), + this._useArgs( + Object.keys(e).map(function (t) { + return e[t]; + }) + ), + this + ); + }), + (d.prototype.contains = function (e) { + var t = this._baseState; + return o(null === t.use), (t.contains = e), this; + }), + (d.prototype._decode = function (e, t) { + var i, + n = this._baseState; + if (null === n.parent) + return e.wrapResult(n.children[0]._decode(e, t)); + var r = n.default, + o = !0, + s = null; + if ((null !== n.key && (s = e.enterKey(n.key)), n.optional)) { + var l = null; + if ( + (null !== n.explicit + ? (l = n.explicit) + : null !== n.implicit + ? (l = n.implicit) + : null !== n.tag && (l = n.tag), + null !== l || n.any) + ) { + if (((o = this._peekTag(e, l, n.any)), e.isError(o))) return o; + } else { + var c = e.save(); + try { + null === n.choice + ? this._decodeGeneric(n.tag, e, t) + : this._decodeChoice(e, t), + (o = !0); + } catch (e) { + o = !1; + } + e.restore(c); + } + } + if ((n.obj && o && (i = e.enterObject()), o)) { + if (null !== n.explicit) { + var d = this._decodeTag(e, n.explicit); + if (e.isError(d)) return d; + e = d; + } + var u = e.offset; + if (null === n.use && null === n.choice) { + if (n.any) var c = e.save(); + var f = this._decodeTag( + e, + null !== n.implicit ? n.implicit : n.tag, + n.any + ); + if (e.isError(f)) return f; + n.any ? (r = e.raw(c)) : (e = f); + } + if ( + (t && + t.track && + null !== n.tag && + t.track(e.path(), u, e.length, "tagged"), + t && + t.track && + null !== n.tag && + t.track(e.path(), e.offset, e.length, "content"), + n.any || + (r = + null === n.choice + ? this._decodeGeneric(n.tag, e, t) + : this._decodeChoice(e, t)), + e.isError(r)) + ) + return r; + if ( + (!n.any && + null === n.choice && + null !== n.children && + n.children.forEach(function (i) { + i._decode(e, t); + }), + n.contains && ("octstr" === n.tag || "bitstr" === n.tag)) + ) { + var h = new a(r); + r = this._getUse(n.contains, e._reporterState.obj)._decode(h, t); + } + } + return ( + n.obj && o && (r = e.leaveObject(i)), + null !== n.key && (null !== r || !0 === o) + ? e.leaveKey(s, n.key, r) + : null !== s && e.exitKey(s), + r + ); + }), + (d.prototype._decodeGeneric = function (e, t, i) { + var n = this._baseState; + if ("seq" === e || "set" === e) return null; + if ("seqof" === e || "setof" === e) + return this._decodeList(t, e, n.args[0], i); + if (/str$/.test(e)) return this._decodeStr(t, e, i); + if ("objid" === e && n.args) + return this._decodeObjid(t, n.args[0], n.args[1], i); + else if ("objid" === e) return this._decodeObjid(t, null, null, i); + else if ("gentime" === e || "utctime" === e) + return this._decodeTime(t, e, i); + else if ("null_" === e) return this._decodeNull(t, i); + else if ("bool" === e) return this._decodeBool(t, i); + else if ("objDesc" === e) return this._decodeStr(t, e, i); + else if ("int" === e || "enum" === e) + return this._decodeInt(t, n.args && n.args[0], i); + return null !== n.use + ? this._getUse(n.use, t._reporterState.obj)._decode(t, i) + : t.error("unknown tag: " + e); + }), + (d.prototype._getUse = function (e, t) { + var i = this._baseState; + return ( + (i.useDecoder = this._use(e, t)), + o(null === i.useDecoder._baseState.parent), + (i.useDecoder = i.useDecoder._baseState.children[0]), + i.implicit !== i.useDecoder._baseState.implicit && + ((i.useDecoder = i.useDecoder.clone()), + (i.useDecoder._baseState.implicit = i.implicit)), + i.useDecoder + ); + }), + (d.prototype._decodeChoice = function (e, t) { + var i = this._baseState, + n = null, + r = !1; + return (Object.keys(i.choice).some(function (a) { + var o = e.save(), + s = i.choice[a]; + try { + var l = s._decode(e, t); + if (e.isError(l)) return !1; + (n = { type: a, value: l }), (r = !0); + } catch (t) { + return e.restore(o), !1; + } + return !0; + }, this), + r) + ? n + : e.error("Choice not matched"); + }), + (d.prototype._createEncoderBuffer = function (e) { + return new r(e, this.reporter); + }), + (d.prototype._encode = function (e, t, i) { + var n = this._baseState; + if (null !== n.default && n.default === e) return; + var r = this._encodeValue(e, t, i); + if (void 0 !== r) { + if (!this._skipDefault(r, t, i)) return r; + } + }), + (d.prototype._encodeValue = function (e, t, i) { + var r, + a = this._baseState; + if (null === a.parent) return a.children[0]._encode(e, t || new n()); + var r = null; + if (((this.reporter = t), a.optional && void 0 === e)) { + if (null === a.default) return; + e = a.default; + } + var o = null, + s = !1; + if (a.any) r = this._createEncoderBuffer(e); + else if (a.choice) r = this._encodeChoice(e, t); + else if (a.contains) + (o = this._getUse(a.contains, i)._encode(e, t)), (s = !0); + else if (a.children) + (o = a.children + .map(function (i) { + if ("null_" === i._baseState.tag) return i._encode(null, t, e); + if (null === i._baseState.key) + return t.error("Child should have a key"); + var n = t.enterKey(i._baseState.key); + if ("object" != typeof e) + return t.error("Child expected, but input is not object"); + var r = i._encode(e[i._baseState.key], t, e); + return t.leaveKey(n), r; + }, this) + .filter(function (e) { + return e; + })), + (o = this._createEncoderBuffer(o)); + else if ("seqof" === a.tag || "setof" === a.tag) { + if (!(a.args && 1 === a.args.length)) + return t.error("Too many args for : " + a.tag); + if (!Array.isArray(e)) + return t.error("seqof/setof, but data is not Array"); + var l = this.clone(); + (l._baseState.implicit = null), + (o = this._createEncoderBuffer( + e.map(function (i) { + var n = this._baseState; + return this._getUse(n.args[0], e)._encode(i, t); + }, l) + )); + } else + null !== a.use + ? (r = this._getUse(a.use, i)._encode(e, t)) + : ((o = this._encodePrimitive(a.tag, e)), (s = !0)); + if (!a.any && null === a.choice) { + var c = null !== a.implicit ? a.implicit : a.tag, + d = null === a.implicit ? "universal" : "context"; + null === c + ? null === a.use && + t.error("Tag could be omitted only for .use()") + : null === a.use && (r = this._encodeComposite(c, s, d, o)); + } + return ( + null !== a.explicit && + (r = this._encodeComposite(a.explicit, !1, "context", r)), + r + ); + }), + (d.prototype._encodeChoice = function (e, t) { + var i = this._baseState, + n = i.choice[e.type]; + return ( + !n && + o( + !1, + e.type + + " not found in " + + JSON.stringify(Object.keys(i.choice)) + ), + n._encode(e.value, t) + ); + }), + (d.prototype._encodePrimitive = function (e, t) { + var i = this._baseState; + if (/str$/.test(e)) return this._encodeStr(t, e); + if ("objid" === e && i.args) + return this._encodeObjid(t, i.reverseArgs[0], i.args[1]); + if ("objid" === e) return this._encodeObjid(t, null, null); + else if ("gentime" === e || "utctime" === e) + return this._encodeTime(t, e); + else if ("null_" === e) return this._encodeNull(); + else if ("int" === e || "enum" === e) + return this._encodeInt(t, i.args && i.reverseArgs[0]); + else if ("bool" === e) return this._encodeBool(t); + else if ("objDesc" === e) return this._encodeStr(t, e); + else throw Error("Unsupported tag: " + e); + }), + (d.prototype._isNumstr = function (e) { + return /^[0-9 ]*$/.test(e); + }), + (d.prototype._isPrintstr = function (e) { + return /^[A-Za-z0-9 '\(\)\+,\-\.\/:=\?]*$/.test(e); + }); + }, + 188555: function (e, t, i) { + var n = i(32016); + function r(e) { + this._reporterState = { + obj: null, + path: [], + options: e || {}, + errors: [], + }; + } + function a(e, t) { + (this.path = e), this.rethrow(t); + } + (t.Reporter = r), + (r.prototype.isError = function (e) { + return e instanceof a; + }), + (r.prototype.save = function () { + var e = this._reporterState; + return { obj: e.obj, pathLen: e.path.length }; + }), + (r.prototype.restore = function (e) { + var t = this._reporterState; + (t.obj = e.obj), (t.path = t.path.slice(0, e.pathLen)); + }), + (r.prototype.enterKey = function (e) { + return this._reporterState.path.push(e); + }), + (r.prototype.exitKey = function (e) { + var t = this._reporterState; + t.path = t.path.slice(0, e - 1); + }), + (r.prototype.leaveKey = function (e, t, i) { + var n = this._reporterState; + this.exitKey(e), null !== n.obj && (n.obj[t] = i); + }), + (r.prototype.path = function () { + return this._reporterState.path.join("/"); + }), + (r.prototype.enterObject = function () { + var e = this._reporterState, + t = e.obj; + return (e.obj = {}), t; + }), + (r.prototype.leaveObject = function (e) { + var t = this._reporterState, + i = t.obj; + return (t.obj = e), i; + }), + (r.prototype.error = function (e) { + var t, + i = this._reporterState, + n = e instanceof a; + if ( + ((t = n + ? e + : new a( + i.path + .map(function (e) { + return "[" + JSON.stringify(e) + "]"; + }) + .join(""), + e.message || e, + e.stack + )), + !i.options.partial) + ) + throw t; + return !n && i.errors.push(t), t; + }), + (r.prototype.wrapResult = function (e) { + var t = this._reporterState; + return t.options.partial + ? { result: this.isError(e) ? null : e, errors: t.errors } + : e; + }), + n(a, Error), + (a.prototype.rethrow = function (e) { + if ( + ((this.message = e + " at: " + (this.path || "(shallow)")), + Error.captureStackTrace && Error.captureStackTrace(this, a), + !this.stack) + ) + try { + throw Error(this.message); + } catch (e) { + this.stack = e.stack; + } + return this; + }); + }, + 994440: function (e, t, i) { + var n = i(585202); + (t.tagClass = { + 0: "universal", + 1: "application", + 2: "context", + 3: "private", + }), + (t.tagClassByName = n._reverse(t.tagClass)), + (t.tag = { + 0: "end", + 1: "bool", + 2: "int", + 3: "bitstr", + 4: "octstr", + 5: "null_", + 6: "objid", + 7: "objDesc", + 8: "external", + 9: "real", + 10: "enum", + 11: "embed", + 12: "utf8str", + 13: "relativeOid", + 16: "seq", + 17: "set", + 18: "numstr", + 19: "printstr", + 20: "t61str", + 21: "videostr", + 22: "ia5str", + 23: "utctime", + 24: "gentime", + 25: "graphstr", + 26: "iso646str", + 27: "genstr", + 28: "unistr", + 29: "charstr", + 30: "bmpstr", + }), + (t.tagByName = n._reverse(t.tag)); + }, + 585202: function (e, t, i) { + var n = t; + (n._reverse = function (e) { + var t = {}; + return ( + Object.keys(e).forEach(function (i) { + (0 | i) == i && (i |= 0), (t[e[i]] = i); + }), + t + ); + }), + (n.der = i(994440)); + }, + 821712: function (e, t, i) { + var n = i(32016), + r = i(53453), + a = r.base, + o = r.bignum, + s = r.constants.der; + function l(e) { + (this.enc = "der"), + (this.name = e.name), + (this.entity = e), + (this.tree = new c()), + this.tree._init(e.body); + } + function c(e) { + a.Node.call(this, "der", e); + } + function d(e, t) { + var i = e.readUInt8(t); + if (e.isError(i)) return i; + var n = s.tagClass[i >> 6], + r = (32 & i) == 0; + if ((31 & i) == 31) { + var a = i; + for (i = 0; (128 & a) == 128; ) { + if (((a = e.readUInt8(t)), e.isError(a))) return a; + (i <<= 7), (i |= 127 & a); + } + } else i &= 31; + var o = s.tag[i]; + return { cls: n, primitive: r, tag: i, tagStr: o }; + } + function u(e, t, i) { + var n = e.readUInt8(i); + if (e.isError(n)) return n; + if (!t && 128 === n) return null; + if ((128 & n) == 0) return n; + var r = 127 & n; + if (r > 4) return e.error("length octect is too long"); + n = 0; + for (var a = 0; a < r; a++) { + n <<= 8; + var o = e.readUInt8(i); + if (e.isError(o)) return o; + n |= o; + } + return n; + } + (e.exports = l), + (l.prototype.decode = function (e, t) { + return ( + !(e instanceof a.DecoderBuffer) && (e = new a.DecoderBuffer(e, t)), + this.tree._decode(e, t) + ); + }), + n(c, a.Node), + (c.prototype._peekTag = function (e, t, i) { + if (e.isEmpty()) return !1; + var n = e.save(), + r = d(e, 'Failed to peek tag: "' + t + '"'); + return e.isError(r) + ? r + : (e.restore(n), + r.tag === t || r.tagStr === t || r.tagStr + "of" === t || i); + }), + (c.prototype._decodeTag = function (e, t, i) { + var n = d(e, 'Failed to decode tag of "' + t + '"'); + if (e.isError(n)) return n; + var r = u(e, n.primitive, 'Failed to get length of "' + t + '"'); + if (e.isError(r)) return r; + if (!i && n.tag !== t && n.tagStr !== t && n.tagStr + "of" !== t) + return e.error('Failed to match tag: "' + t + '"'); + if (n.primitive || null !== r) + return e.skip(r, 'Failed to match body of: "' + t + '"'); + var a = e.save(), + o = this._skipUntilEnd( + e, + 'Failed to skip indefinite length body: "' + this.tag + '"' + ); + return e.isError(o) + ? o + : ((r = e.offset - a.offset), + e.restore(a), + e.skip(r, 'Failed to match body of: "' + t + '"')); + }), + (c.prototype._skipUntilEnd = function (e, t) { + for (;;) { + var i, + n = d(e, t); + if (e.isError(n)) return n; + var r = u(e, n.primitive, t); + if (e.isError(r)) return r; + if ( + ((i = + n.primitive || null !== r + ? e.skip(r) + : this._skipUntilEnd(e, t)), + e.isError(i)) + ) + return i; + if ("end" === n.tagStr) break; + } + }), + (c.prototype._decodeList = function (e, t, i, n) { + for (var r = []; !e.isEmpty(); ) { + var a = this._peekTag(e, "end"); + if (e.isError(a)) return a; + var o = i.decode(e, "der", n); + if (e.isError(o) && a) break; + r.push(o); + } + return r; + }), + (c.prototype._decodeStr = function (e, t) { + if ("bitstr" === t) { + var i = e.readUInt8(); + return e.isError(i) ? i : { unused: i, data: e.raw() }; + } + if ("bmpstr" === t) { + var n = e.raw(); + if (n.length % 2 == 1) + return e.error("Decoding of string type: bmpstr length mismatch"); + for (var r = "", a = 0; a < n.length / 2; a++) + r += String.fromCharCode(n.readUInt16BE(2 * a)); + return r; + } + if ("numstr" === t) { + var o = e.raw().toString("ascii"); + return this._isNumstr(o) + ? o + : e.error( + "Decoding of string type: numstr unsupported characters" + ); + } else if ("octstr" === t) return e.raw(); + else if ("objDesc" === t) return e.raw(); + else if ("printstr" === t) { + var s = e.raw().toString("ascii"); + return this._isPrintstr(s) + ? s + : e.error( + "Decoding of string type: printstr unsupported characters" + ); + } else if (/str$/.test(t)) return e.raw().toString(); + else return e.error("Decoding of string type: " + t + " unsupported"); + }), + (c.prototype._decodeObjid = function (e, t, i) { + for (var n, r = [], a = 0; !e.isEmpty(); ) { + var o = e.readUInt8(); + (a <<= 7), (a |= 127 & o), (128 & o) == 0 && (r.push(a), (a = 0)); + } + 128 & o && r.push(a); + var s = (r[0] / 40) | 0, + l = r[0] % 40; + if (((n = i ? r : [s, l].concat(r.slice(1))), t)) { + var c = t[n.join(" ")]; + void 0 === c && (c = t[n.join(".")]), void 0 !== c && (n = c); + } + return n; + }), + (c.prototype._decodeTime = function (e, t) { + var i = e.raw().toString(); + if ("gentime" === t) { + var n = 0 | i.slice(0, 4), + r = 0 | i.slice(4, 6), + a = 0 | i.slice(6, 8), + o = 0 | i.slice(8, 10), + s = 0 | i.slice(10, 12), + l = 0 | i.slice(12, 14); + } else { + if ("utctime" !== t) + return e.error("Decoding " + t + " time is not supported yet"); + var n = 0 | i.slice(0, 2), + r = 0 | i.slice(2, 4), + a = 0 | i.slice(4, 6), + o = 0 | i.slice(6, 8), + s = 0 | i.slice(8, 10), + l = 0 | i.slice(10, 12); + n = n < 70 ? 2e3 + n : 1900 + n; + } + return Date.UTC(n, r - 1, a, o, s, l, 0); + }), + (c.prototype._decodeNull = function (e) { + return null; + }), + (c.prototype._decodeBool = function (e) { + var t = e.readUInt8(); + return e.isError(t) ? t : 0 !== t; + }), + (c.prototype._decodeInt = function (e, t) { + var i = new o(e.raw()); + return t && (i = t[i.toString(10)] || i), i; + }), + (c.prototype._use = function (e, t) { + return ( + "function" == typeof e && (e = e(t)), e._getDecoder("der").tree + ); + }); + }, + 897128: function (e, t, i) { + var n = t; + (n.der = i(821712)), (n.pem = i(19682)); + }, + 19682: function (e, t, i) { + var n = i(32016), + r = i(966465).Buffer, + a = i(821712); + function o(e) { + a.call(this, e), (this.enc = "pem"); + } + n(o, a), + (e.exports = o), + (o.prototype.decode = function (e, t) { + for ( + var i = e.toString().split(/[\r\n]+/g), + n = t.label.toUpperCase(), + o = /^-----(BEGIN|END) ([^-]+)-----$/, + s = -1, + l = -1, + c = 0; + c < i.length; + c++ + ) { + var d = i[c].match(o); + if (null !== d) { + if (d[2] === n) { + if (-1 === s) { + if ("BEGIN" !== d[1]) break; + s = c; + } else { + if ("END" !== d[1]) break; + l = c; + break; + } + } + } + } + if (-1 === s || -1 === l) + throw Error("PEM section not found for: " + n); + var u = i.slice(s + 1, l).join(""); + u.replace(/[^a-z0-9\+\/=]+/gi, ""); + var f = new r(u, "base64"); + return a.prototype.decode.call(this, f, t); + }); + }, + 128884: function (e, t, i) { + var n = i(32016), + r = i(966465).Buffer, + a = i(53453), + o = a.base, + s = a.constants.der; + function l(e) { + (this.enc = "der"), + (this.name = e.name), + (this.entity = e), + (this.tree = new c()), + this.tree._init(e.body); + } + function c(e) { + o.Node.call(this, "der", e); + } + function d(e) { + return e < 10 ? "0" + e : e; + } + function u(e, t, i, n) { + var r; + if ( + ("seqof" === e ? (e = "seq") : "setof" === e && (e = "set"), + s.tagByName.hasOwnProperty(e)) + ) + r = s.tagByName[e]; + else { + if ("number" != typeof e || (0 | e) !== e) + return n.error("Unknown tag: " + e); + r = e; + } + return r >= 31 + ? n.error("Multi-octet tag encoding unsupported") + : (!t && (r |= 32), (r |= s.tagClassByName[i || "universal"] << 6)); + } + (e.exports = l), + (l.prototype.encode = function (e, t) { + return this.tree._encode(e, t).join(); + }), + n(c, o.Node), + (c.prototype._encodeComposite = function (e, t, i, n) { + var a = u(e, t, i, this.reporter); + if (n.length < 128) { + var o = new r(2); + return ( + (o[0] = a), (o[1] = n.length), this._createEncoderBuffer([o, n]) + ); + } + for (var s = 1, l = n.length; l >= 256; l >>= 8) s++; + var o = new r(2 + s); + (o[0] = a), (o[1] = 128 | s); + for (var l = 1 + s, c = n.length; c > 0; l--, c >>= 8) o[l] = 255 & c; + return this._createEncoderBuffer([o, n]); + }), + (c.prototype._encodeStr = function (e, t) { + if ("bitstr" === t) + return this._createEncoderBuffer([0 | e.unused, e.data]); + if ("bmpstr" === t) { + for (var i = new r(2 * e.length), n = 0; n < e.length; n++) + i.writeUInt16BE(e.charCodeAt(n), 2 * n); + return this._createEncoderBuffer(i); + } + if ("numstr" === t) + return this._isNumstr(e) + ? this._createEncoderBuffer(e) + : this.reporter.error( + "Encoding of string type: numstr supports only digits and space" + ); + else if ("printstr" === t) + return this._isPrintstr(e) + ? this._createEncoderBuffer(e) + : this.reporter.error( + "Encoding of string type: printstr supports only latin upper and lower case letters, digits, space, apostrophe, left and rigth parenthesis, plus sign, comma, hyphen, dot, slash, colon, equal sign, question mark" + ); + else if (/str$/.test(t)) return this._createEncoderBuffer(e); + else if ("objDesc" === t) return this._createEncoderBuffer(e); + else + return this.reporter.error( + "Encoding of string type: " + t + " unsupported" + ); + }), + (c.prototype._encodeObjid = function (e, t, i) { + if ("string" == typeof e) { + if (!t) + return this.reporter.error( + "string objid given, but no values map found" + ); + if (!t.hasOwnProperty(e)) + return this.reporter.error("objid not found in values map"); + e = t[e].split(/[\s\.]+/g); + for (var n = 0; n < e.length; n++) e[n] |= 0; + } else if (Array.isArray(e)) { + e = e.slice(); + for (var n = 0; n < e.length; n++) e[n] |= 0; + } + if (!Array.isArray(e)) + return this.reporter.error( + "objid() should be either array or string, got: " + + JSON.stringify(e) + ); + if (!i) { + if (e[1] >= 40) + return this.reporter.error("Second objid identifier OOB"); + e.splice(0, 2, 40 * e[0] + e[1]); + } + for (var a = 0, n = 0; n < e.length; n++) { + var o = e[n]; + for (a++; o >= 128; o >>= 7) a++; + } + for ( + var s = new r(a), l = s.length - 1, n = e.length - 1; + n >= 0; + n-- + ) { + var o = e[n]; + for (s[l--] = 127 & o; (o >>= 7) > 0; ) s[l--] = 128 | (127 & o); + } + return this._createEncoderBuffer(s); + }), + (c.prototype._encodeTime = function (e, t) { + var i, + n = new Date(e); + return ( + "gentime" === t + ? (i = [ + d(n.getFullYear()), + d(n.getUTCMonth() + 1), + d(n.getUTCDate()), + d(n.getUTCHours()), + d(n.getUTCMinutes()), + d(n.getUTCSeconds()), + "Z", + ].join("")) + : "utctime" === t + ? (i = [ + d(n.getFullYear() % 100), + d(n.getUTCMonth() + 1), + d(n.getUTCDate()), + d(n.getUTCHours()), + d(n.getUTCMinutes()), + d(n.getUTCSeconds()), + "Z", + ].join("")) + : this.reporter.error( + "Encoding " + t + " time is not supported yet" + ), + this._encodeStr(i, "octstr") + ); + }), + (c.prototype._encodeNull = function () { + return this._createEncoderBuffer(""); + }), + (c.prototype._encodeInt = function (e, t) { + if ("string" == typeof e) { + if (!t) + return this.reporter.error( + "String int or enum given, but no values map" + ); + if (!t.hasOwnProperty(e)) + return this.reporter.error( + "Values map doesn't contain: " + JSON.stringify(e) + ); + e = t[e]; + } + if ("number" != typeof e && !r.isBuffer(e)) { + var i = e.toArray(); + !e.sign && 128 & i[0] && i.unshift(0), (e = new r(i)); + } + if (r.isBuffer(e)) { + var n = e.length; + 0 === e.length && n++; + var a = new r(n); + return ( + e.copy(a), + 0 === e.length && (a[0] = 0), + this._createEncoderBuffer(a) + ); + } + if (e < 128) return this._createEncoderBuffer(e); + if (e < 256) return this._createEncoderBuffer([0, e]); + for (var n = 1, o = e; o >= 256; o >>= 8) n++; + for (var a = Array(n), o = a.length - 1; o >= 0; o--) + (a[o] = 255 & e), (e >>= 8); + return ( + 128 & a[0] && a.unshift(0), this._createEncoderBuffer(new r(a)) + ); + }), + (c.prototype._encodeBool = function (e) { + return this._createEncoderBuffer(e ? 255 : 0); + }), + (c.prototype._use = function (e, t) { + return ( + "function" == typeof e && (e = e(t)), e._getEncoder("der").tree + ); + }), + (c.prototype._skipDefault = function (e, t, i) { + var n, + r = this._baseState; + if (null === r.default) return !1; + var a = e.join(); + if ( + (void 0 === r.defaultBuffer && + (r.defaultBuffer = this._encodeValue(r.default, t, i).join()), + a.length !== r.defaultBuffer.length) + ) + return !1; + for (n = 0; n < a.length; n++) + if (a[n] !== r.defaultBuffer[n]) return !1; + return !0; + }); + }, + 20815: function (e, t, i) { + var n = t; + (n.der = i(128884)), (n.pem = i(871382)); + }, + 871382: function (e, t, i) { + var n = i(32016), + r = i(128884); + function a(e) { + r.call(this, e), (this.enc = "pem"); + } + n(a, r), + (e.exports = a), + (a.prototype.encode = function (e, t) { + for ( + var i = r.prototype.encode.call(this, e).toString("base64"), + n = ["-----BEGIN " + t.label + "-----"], + a = 0; + a < i.length; + a += 64 + ) + n.push(i.slice(a, a + 64)); + return n.push("-----END " + t.label + "-----"), n.join("\n"); + }); + }, + 984826: function (e, t, i) { + !(function (e, t) { + "use strict"; + function n(e, t) { + if (!e) throw Error(t || "Assertion failed"); + } + function r(e, t) { + e.super_ = t; + var i = function () {}; + (i.prototype = t.prototype), + (e.prototype = new i()), + (e.prototype.constructor = e); + } + function a(e, t, i) { + if (a.isBN(e)) return e; + (this.negative = 0), + (this.words = null), + (this.length = 0), + (this.red = null), + null !== e && + (("le" === t || "be" === t) && ((i = t), (t = 10)), + this._init(e || 0, t || 10, i || "be")); + } + "object" == typeof e ? (e.exports = a) : (t.BN = a), + (a.BN = a), + (a.wordSize = 26); + try { + c = + "undefined" != typeof window && void 0 !== window.Buffer + ? window.Buffer + : i(678244).Buffer; + } catch (e) {} + function o(e, t) { + var i = e.charCodeAt(t); + return i >= 65 && i <= 70 + ? i - 55 + : i >= 97 && i <= 102 + ? i - 87 + : (i - 48) & 15; + } + function s(e, t, i) { + var n = o(e, i); + return i - 1 >= t && (n |= o(e, i - 1) << 4), n; + } + function l(e, t, i, n) { + for (var r = 0, a = Math.min(e.length, i), o = t; o < a; o++) { + var s = e.charCodeAt(o) - 48; + (r *= n), + s >= 49 + ? (r += s - 49 + 10) + : s >= 17 + ? (r += s - 17 + 10) + : (r += s); + } + return r; + } + (a.isBN = function (e) { + return ( + e instanceof a || + (null !== e && + "object" == typeof e && + e.constructor.wordSize === a.wordSize && + Array.isArray(e.words)) + ); + }), + (a.max = function (e, t) { + return e.cmp(t) > 0 ? e : t; + }), + (a.min = function (e, t) { + return 0 > e.cmp(t) ? e : t; + }), + (a.prototype._init = function (e, t, i) { + if ("number" == typeof e) return this._initNumber(e, t, i); + if ("object" == typeof e) return this._initArray(e, t, i); + "hex" === t && (t = 16), + n(t === (0 | t) && t >= 2 && t <= 36), + (e = e.toString().replace(/\s+/g, "")); + var r = 0; + "-" === e[0] && (r++, (this.negative = 1)), + r < e.length && + (16 === t + ? this._parseHex(e, r, i) + : (this._parseBase(e, t, r), + "le" === i && this._initArray(this.toArray(), t, i))); + }), + (a.prototype._initNumber = function (e, t, i) { + e < 0 && ((this.negative = 1), (e = -e)), + e < 0x4000000 + ? ((this.words = [0x3ffffff & e]), (this.length = 1)) + : e < 0x10000000000000 + ? ((this.words = [0x3ffffff & e, (e / 0x4000000) & 0x3ffffff]), + (this.length = 2)) + : (n(e < 0x20000000000000), + (this.words = [ + 0x3ffffff & e, + (e / 0x4000000) & 0x3ffffff, + 1, + ]), + (this.length = 3)), + "le" === i && this._initArray(this.toArray(), t, i); + }), + (a.prototype._initArray = function (e, t, i) { + if ((n("number" == typeof e.length), e.length <= 0)) + return (this.words = [0]), (this.length = 1), this; + (this.length = Math.ceil(e.length / 3)), + (this.words = Array(this.length)); + for (var r, a, o = 0; o < this.length; o++) this.words[o] = 0; + var s = 0; + if ("be" === i) + for (o = e.length - 1, r = 0; o >= 0; o -= 3) + (a = e[o] | (e[o - 1] << 8) | (e[o - 2] << 16)), + (this.words[r] |= (a << s) & 0x3ffffff), + (this.words[r + 1] = (a >>> (26 - s)) & 0x3ffffff), + (s += 24) >= 26 && ((s -= 26), r++); + else if ("le" === i) + for (o = 0, r = 0; o < e.length; o += 3) + (a = e[o] | (e[o + 1] << 8) | (e[o + 2] << 16)), + (this.words[r] |= (a << s) & 0x3ffffff), + (this.words[r + 1] = (a >>> (26 - s)) & 0x3ffffff), + (s += 24) >= 26 && ((s -= 26), r++); + return this.strip(); + }), + (a.prototype._parseHex = function (e, t, i) { + (this.length = Math.ceil((e.length - t) / 6)), + (this.words = Array(this.length)); + for (var n, r = 0; r < this.length; r++) this.words[r] = 0; + var a = 0, + o = 0; + if ("be" === i) + for (r = e.length - 1; r >= t; r -= 2) + (n = s(e, t, r) << a), + (this.words[o] |= 0x3ffffff & n), + a >= 18 + ? ((a -= 18), (o += 1), (this.words[o] |= n >>> 26)) + : (a += 8); + else + for ( + r = (e.length - t) % 2 == 0 ? t + 1 : t; + r < e.length; + r += 2 + ) + (n = s(e, t, r) << a), + (this.words[o] |= 0x3ffffff & n), + a >= 18 + ? ((a -= 18), (o += 1), (this.words[o] |= n >>> 26)) + : (a += 8); + this.strip(); + }), + (a.prototype._parseBase = function (e, t, i) { + (this.words = [0]), (this.length = 1); + for (var n = 0, r = 1; r <= 0x3ffffff; r *= t) n++; + n--, (r = (r / t) | 0); + for ( + var a = e.length - i, + o = a % n, + s = Math.min(a, a - o) + i, + c = 0, + d = i; + d < s; + d += n + ) + (c = l(e, d, d + n, t)), + this.imuln(r), + this.words[0] + c < 0x4000000 + ? (this.words[0] += c) + : this._iaddn(c); + if (0 !== o) { + var u = 1; + for (c = l(e, d, e.length, t), d = 0; d < o; d++) u *= t; + this.imuln(u), + this.words[0] + c < 0x4000000 + ? (this.words[0] += c) + : this._iaddn(c); + } + this.strip(); + }), + (a.prototype.copy = function (e) { + e.words = Array(this.length); + for (var t = 0; t < this.length; t++) e.words[t] = this.words[t]; + (e.length = this.length), + (e.negative = this.negative), + (e.red = this.red); + }), + (a.prototype.clone = function () { + var e = new a(null); + return this.copy(e), e; + }), + (a.prototype._expand = function (e) { + for (; this.length < e; ) this.words[this.length++] = 0; + return this; + }), + (a.prototype.strip = function () { + for (; this.length > 1 && 0 === this.words[this.length - 1]; ) + this.length--; + return this._normSign(); + }), + (a.prototype._normSign = function () { + return ( + 1 === this.length && 0 === this.words[0] && (this.negative = 0), + this + ); + }), + (a.prototype.inspect = function () { + return (this.red ? ""; + }); + var c, + d = [ + "", + "0", + "00", + "000", + "0000", + "00000", + "000000", + "0000000", + "00000000", + "000000000", + "0000000000", + "00000000000", + "000000000000", + "0000000000000", + "00000000000000", + "000000000000000", + "0000000000000000", + "00000000000000000", + "000000000000000000", + "0000000000000000000", + "00000000000000000000", + "000000000000000000000", + "0000000000000000000000", + "00000000000000000000000", + "000000000000000000000000", + "0000000000000000000000000", + ], + u = [ + 0, 0, 25, 16, 12, 11, 10, 9, 8, 8, 7, 7, 7, 7, 6, 6, 6, 6, 6, 6, 6, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + ], + f = [ + 0, 0, 0x2000000, 0x290d741, 0x1000000, 0x2e90edd, 0x39aa400, + 0x267bf47, 0x1000000, 0x290d741, 1e7, 0x12959c3, 0x222c000, + 0x3bd7765, 7529536, 0xadcea1, 0x1000000, 0x1704f61, 0x206fc40, + 0x2cddcf9, 64e6, 4084101, 5153632, 6436343, 7962624, 9765625, + 0xb54ba0, 0xdaf26b, 0x1069c00, 0x138f9ad, 243e5, 0x1b4d89f, + 0x2000000, 0x25528a1, 0x2b54a20, 0x3216b93, 0x39aa400, + ]; + function h(e) { + for (var t = Array(e.bitLength()), i = 0; i < t.length; i++) { + var n = (i / 26) | 0, + r = i % 26; + t[i] = (e.words[n] & (1 << r)) >>> r; + } + return t; + } + function p(e, t, i) { + i.negative = t.negative ^ e.negative; + var n = (e.length + t.length) | 0; + (i.length = n), (n = (n - 1) | 0); + var r = 0 | e.words[0], + a = 0 | t.words[0], + o = r * a, + s = 0x3ffffff & o, + l = (o / 0x4000000) | 0; + i.words[0] = s; + for (var c = 1; c < n; c++) { + for ( + var d = l >>> 26, + u = 0x3ffffff & l, + f = Math.min(c, t.length - 1), + h = Math.max(0, c - e.length + 1); + h <= f; + h++ + ) { + var p = (c - h) | 0; + (r = 0 | e.words[p]), + (d += ((o = r * (a = 0 | t.words[h]) + u) / 0x4000000) | 0), + (u = 0x3ffffff & o); + } + (i.words[c] = 0 | u), (l = 0 | d); + } + return 0 !== l ? (i.words[c] = 0 | l) : i.length--, i.strip(); + } + (a.prototype.toString = function (e, t) { + if (((t = 0 | t || 1), 16 === (e = e || 10) || "hex" === e)) { + i = ""; + for (var i, r = 0, a = 0, o = 0; o < this.length; o++) { + var s = this.words[o], + l = (((s << r) | a) & 0xffffff).toString(16); + (i = + 0 != (a = (s >>> (24 - r)) & 0xffffff) || o !== this.length - 1 + ? d[6 - l.length] + l + i + : l + i), + (r += 2) >= 26 && ((r -= 26), o--); + } + for (0 !== a && (i = a.toString(16) + i); i.length % t != 0; ) + i = "0" + i; + return 0 !== this.negative && (i = "-" + i), i; + } + if (e === (0 | e) && e >= 2 && e <= 36) { + var c = u[e], + h = f[e]; + i = ""; + var p = this.clone(); + for (p.negative = 0; !p.isZero(); ) { + var v = p.modn(h).toString(e); + i = (p = p.idivn(h)).isZero() ? v + i : d[c - v.length] + v + i; + } + for (this.isZero() && (i = "0" + i); i.length % t != 0; ) + i = "0" + i; + return 0 !== this.negative && (i = "-" + i), i; + } + n(!1, "Base should be between 2 and 36"); + }), + (a.prototype.toNumber = function () { + var e = this.words[0]; + return ( + 2 === this.length + ? (e += 0x4000000 * this.words[1]) + : 3 === this.length && 1 === this.words[2] + ? (e += 0x10000000000000 + 0x4000000 * this.words[1]) + : this.length > 2 && + n(!1, "Number can only safely store up to 53 bits"), + 0 !== this.negative ? -e : e + ); + }), + (a.prototype.toJSON = function () { + return this.toString(16); + }), + (a.prototype.toBuffer = function (e, t) { + return n(void 0 !== c), this.toArrayLike(c, e, t); + }), + (a.prototype.toArray = function (e, t) { + return this.toArrayLike(Array, e, t); + }), + (a.prototype.toArrayLike = function (e, t, i) { + var r, + a, + o = this.byteLength(), + s = i || Math.max(1, o); + n(o <= s, "byte array longer than desired length"), + n(s > 0, "Requested array length <= 0"), + this.strip(); + var l = "le" === t, + c = new e(s), + d = this.clone(); + if (l) { + for (a = 0; !d.isZero(); a++) + (r = d.andln(255)), d.iushrn(8), (c[a] = r); + for (; a < s; a++) c[a] = 0; + } else { + for (a = 0; a < s - o; a++) c[a] = 0; + for (a = 0; !d.isZero(); a++) + (r = d.andln(255)), d.iushrn(8), (c[s - a - 1] = r); + } + return c; + }), + Math.clz32 + ? (a.prototype._countBits = function (e) { + return 32 - Math.clz32(e); + }) + : (a.prototype._countBits = function (e) { + var t = e, + i = 0; + return ( + t >= 4096 && ((i += 13), (t >>>= 13)), + t >= 64 && ((i += 7), (t >>>= 7)), + t >= 8 && ((i += 4), (t >>>= 4)), + t >= 2 && ((i += 2), (t >>>= 2)), + i + t + ); + }), + (a.prototype._zeroBits = function (e) { + if (0 === e) return 26; + var t = e, + i = 0; + return ( + (8191 & t) == 0 && ((i += 13), (t >>>= 13)), + (127 & t) == 0 && ((i += 7), (t >>>= 7)), + (15 & t) == 0 && ((i += 4), (t >>>= 4)), + (3 & t) == 0 && ((i += 2), (t >>>= 2)), + (1 & t) == 0 && i++, + i + ); + }), + (a.prototype.bitLength = function () { + var e = this.words[this.length - 1], + t = this._countBits(e); + return (this.length - 1) * 26 + t; + }), + (a.prototype.zeroBits = function () { + if (this.isZero()) return 0; + for (var e = 0, t = 0; t < this.length; t++) { + var i = this._zeroBits(this.words[t]); + if (((e += i), 26 !== i)) break; + } + return e; + }), + (a.prototype.byteLength = function () { + return Math.ceil(this.bitLength() / 8); + }), + (a.prototype.toTwos = function (e) { + return 0 !== this.negative + ? this.abs().inotn(e).iaddn(1) + : this.clone(); + }), + (a.prototype.fromTwos = function (e) { + return this.testn(e - 1) + ? this.notn(e).iaddn(1).ineg() + : this.clone(); + }), + (a.prototype.isNeg = function () { + return 0 !== this.negative; + }), + (a.prototype.neg = function () { + return this.clone().ineg(); + }), + (a.prototype.ineg = function () { + return !this.isZero() && (this.negative ^= 1), this; + }), + (a.prototype.iuor = function (e) { + for (; this.length < e.length; ) this.words[this.length++] = 0; + for (var t = 0; t < e.length; t++) + this.words[t] = this.words[t] | e.words[t]; + return this.strip(); + }), + (a.prototype.ior = function (e) { + return n((this.negative | e.negative) == 0), this.iuor(e); + }), + (a.prototype.or = function (e) { + return this.length > e.length + ? this.clone().ior(e) + : e.clone().ior(this); + }), + (a.prototype.uor = function (e) { + return this.length > e.length + ? this.clone().iuor(e) + : e.clone().iuor(this); + }), + (a.prototype.iuand = function (e) { + var t; + t = this.length > e.length ? e : this; + for (var i = 0; i < t.length; i++) + this.words[i] = this.words[i] & e.words[i]; + return (this.length = t.length), this.strip(); + }), + (a.prototype.iand = function (e) { + return n((this.negative | e.negative) == 0), this.iuand(e); + }), + (a.prototype.and = function (e) { + return this.length > e.length + ? this.clone().iand(e) + : e.clone().iand(this); + }), + (a.prototype.uand = function (e) { + return this.length > e.length + ? this.clone().iuand(e) + : e.clone().iuand(this); + }), + (a.prototype.iuxor = function (e) { + this.length > e.length + ? ((t = this), (i = e)) + : ((t = e), (i = this)); + for (var t, i, n = 0; n < i.length; n++) + this.words[n] = t.words[n] ^ i.words[n]; + if (this !== t) + for (; n < t.length; n++) this.words[n] = t.words[n]; + return (this.length = t.length), this.strip(); + }), + (a.prototype.ixor = function (e) { + return n((this.negative | e.negative) == 0), this.iuxor(e); + }), + (a.prototype.xor = function (e) { + return this.length > e.length + ? this.clone().ixor(e) + : e.clone().ixor(this); + }), + (a.prototype.uxor = function (e) { + return this.length > e.length + ? this.clone().iuxor(e) + : e.clone().iuxor(this); + }), + (a.prototype.inotn = function (e) { + n("number" == typeof e && e >= 0); + var t = 0 | Math.ceil(e / 26), + i = e % 26; + this._expand(t), i > 0 && t--; + for (var r = 0; r < t; r++) + this.words[r] = 0x3ffffff & ~this.words[r]; + return ( + i > 0 && + (this.words[r] = ~this.words[r] & (0x3ffffff >> (26 - i))), + this.strip() + ); + }), + (a.prototype.notn = function (e) { + return this.clone().inotn(e); + }), + (a.prototype.setn = function (e, t) { + n("number" == typeof e && e >= 0); + var i = (e / 26) | 0, + r = e % 26; + return ( + this._expand(i + 1), + t + ? (this.words[i] = this.words[i] | (1 << r)) + : (this.words[i] = this.words[i] & ~(1 << r)), + this.strip() + ); + }), + (a.prototype.iadd = function (e) { + if (0 !== this.negative && 0 === e.negative) + return ( + (this.negative = 0), + (t = this.isub(e)), + (this.negative ^= 1), + this._normSign() + ); + if (0 === this.negative && 0 !== e.negative) + return ( + (e.negative = 0), + (t = this.isub(e)), + (e.negative = 1), + t._normSign() + ); + this.length > e.length + ? ((i = this), (n = e)) + : ((i = e), (n = this)); + for (var t, i, n, r = 0, a = 0; a < n.length; a++) + (t = (0 | i.words[a]) + (0 | n.words[a]) + r), + (this.words[a] = 0x3ffffff & t), + (r = t >>> 26); + for (; 0 !== r && a < i.length; a++) + (t = (0 | i.words[a]) + r), + (this.words[a] = 0x3ffffff & t), + (r = t >>> 26); + if (((this.length = i.length), 0 !== r)) + (this.words[this.length] = r), this.length++; + else if (i !== this) + for (; a < i.length; a++) this.words[a] = i.words[a]; + return this; + }), + (a.prototype.add = function (e) { + var t; + return 0 !== e.negative && 0 === this.negative + ? ((e.negative = 0), (t = this.sub(e)), (e.negative ^= 1), t) + : 0 === e.negative && 0 !== this.negative + ? ((this.negative = 0), (t = e.sub(this)), (this.negative = 1), t) + : this.length > e.length + ? this.clone().iadd(e) + : e.clone().iadd(this); + }), + (a.prototype.isub = function (e) { + if (0 !== e.negative) { + e.negative = 0; + var t, + i, + n = this.iadd(e); + return (e.negative = 1), n._normSign(); + } + if (0 !== this.negative) + return ( + (this.negative = 0), + this.iadd(e), + (this.negative = 1), + this._normSign() + ); + var r = this.cmp(e); + if (0 === r) + return ( + (this.negative = 0), + (this.length = 1), + (this.words[0] = 0), + this + ); + r > 0 ? ((t = this), (i = e)) : ((t = e), (i = this)); + for (var a = 0, o = 0; o < i.length; o++) + (a = (n = (0 | t.words[o]) - (0 | i.words[o]) + a) >> 26), + (this.words[o] = 0x3ffffff & n); + for (; 0 !== a && o < t.length; o++) + (a = (n = (0 | t.words[o]) + a) >> 26), + (this.words[o] = 0x3ffffff & n); + if (0 === a && o < t.length && t !== this) + for (; o < t.length; o++) this.words[o] = t.words[o]; + return ( + (this.length = Math.max(this.length, o)), + t !== this && (this.negative = 1), + this.strip() + ); + }), + (a.prototype.sub = function (e) { + return this.clone().isub(e); + }); + var v = function (e, t, i) { + var n, + r, + a, + o = e.words, + s = t.words, + l = i.words, + c = 0, + d = 0 | o[0], + u = 8191 & d, + f = d >>> 13, + h = 0 | o[1], + p = 8191 & h, + v = h >>> 13, + m = 0 | o[2], + g = 8191 & m, + _ = m >>> 13, + y = 0 | o[3], + b = 8191 & y, + I = y >>> 13, + w = 0 | o[4], + x = 8191 & w, + S = w >>> 13, + M = 0 | o[5], + C = 8191 & M, + T = M >>> 13, + A = 0 | o[6], + k = 8191 & A, + P = A >>> 13, + E = 0 | o[7], + D = 8191 & E, + R = E >>> 13, + N = 0 | o[8], + L = 8191 & N, + j = N >>> 13, + O = 0 | o[9], + B = 8191 & O, + F = O >>> 13, + U = 0 | s[0], + G = 8191 & U, + z = U >>> 13, + V = 0 | s[1], + W = 8191 & V, + Z = V >>> 13, + K = 0 | s[2], + H = 8191 & K, + q = K >>> 13, + J = 0 | s[3], + Y = 8191 & J, + Q = J >>> 13, + X = 0 | s[4], + $ = 8191 & X, + ee = X >>> 13, + et = 0 | s[5], + ei = 8191 & et, + en = et >>> 13, + er = 0 | s[6], + ea = 8191 & er, + eo = er >>> 13, + es = 0 | s[7], + el = 8191 & es, + ec = es >>> 13, + ed = 0 | s[8], + eu = 8191 & ed, + ef = ed >>> 13, + eh = 0 | s[9], + ep = 8191 & eh, + ev = eh >>> 13; + (i.negative = e.negative ^ t.negative), + (i.length = 19), + (n = Math.imul(u, G)), + (r = ((r = Math.imul(u, z)) + Math.imul(f, G)) | 0); + var em = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = ((((a = Math.imul(f, z)) + (r >>> 13)) | 0) + (em >>> 26)) | 0), + (em &= 0x3ffffff), + (n = Math.imul(p, G)), + (r = ((r = Math.imul(p, z)) + Math.imul(v, G)) | 0), + (a = Math.imul(v, z)), + (n = (n + Math.imul(u, W)) | 0), + (r = ((r = (r + Math.imul(u, Z)) | 0) + Math.imul(f, W)) | 0); + var eg = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, Z)) | 0) + (r >>> 13)) | 0) + + (eg >>> 26)) | + 0), + (eg &= 0x3ffffff), + (n = Math.imul(g, G)), + (r = ((r = Math.imul(g, z)) + Math.imul(_, G)) | 0), + (a = Math.imul(_, z)), + (n = (n + Math.imul(p, W)) | 0), + (r = ((r = (r + Math.imul(p, Z)) | 0) + Math.imul(v, W)) | 0), + (a = (a + Math.imul(v, Z)) | 0), + (n = (n + Math.imul(u, H)) | 0), + (r = ((r = (r + Math.imul(u, q)) | 0) + Math.imul(f, H)) | 0); + var e_ = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, q)) | 0) + (r >>> 13)) | 0) + + (e_ >>> 26)) | + 0), + (e_ &= 0x3ffffff), + (n = Math.imul(b, G)), + (r = ((r = Math.imul(b, z)) + Math.imul(I, G)) | 0), + (a = Math.imul(I, z)), + (n = (n + Math.imul(g, W)) | 0), + (r = ((r = (r + Math.imul(g, Z)) | 0) + Math.imul(_, W)) | 0), + (a = (a + Math.imul(_, Z)) | 0), + (n = (n + Math.imul(p, H)) | 0), + (r = ((r = (r + Math.imul(p, q)) | 0) + Math.imul(v, H)) | 0), + (a = (a + Math.imul(v, q)) | 0), + (n = (n + Math.imul(u, Y)) | 0), + (r = ((r = (r + Math.imul(u, Q)) | 0) + Math.imul(f, Y)) | 0); + var ey = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, Q)) | 0) + (r >>> 13)) | 0) + + (ey >>> 26)) | + 0), + (ey &= 0x3ffffff), + (n = Math.imul(x, G)), + (r = ((r = Math.imul(x, z)) + Math.imul(S, G)) | 0), + (a = Math.imul(S, z)), + (n = (n + Math.imul(b, W)) | 0), + (r = ((r = (r + Math.imul(b, Z)) | 0) + Math.imul(I, W)) | 0), + (a = (a + Math.imul(I, Z)) | 0), + (n = (n + Math.imul(g, H)) | 0), + (r = ((r = (r + Math.imul(g, q)) | 0) + Math.imul(_, H)) | 0), + (a = (a + Math.imul(_, q)) | 0), + (n = (n + Math.imul(p, Y)) | 0), + (r = ((r = (r + Math.imul(p, Q)) | 0) + Math.imul(v, Y)) | 0), + (a = (a + Math.imul(v, Q)) | 0), + (n = (n + Math.imul(u, $)) | 0), + (r = ((r = (r + Math.imul(u, ee)) | 0) + Math.imul(f, $)) | 0); + var eb = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, ee)) | 0) + (r >>> 13)) | 0) + + (eb >>> 26)) | + 0), + (eb &= 0x3ffffff), + (n = Math.imul(C, G)), + (r = ((r = Math.imul(C, z)) + Math.imul(T, G)) | 0), + (a = Math.imul(T, z)), + (n = (n + Math.imul(x, W)) | 0), + (r = ((r = (r + Math.imul(x, Z)) | 0) + Math.imul(S, W)) | 0), + (a = (a + Math.imul(S, Z)) | 0), + (n = (n + Math.imul(b, H)) | 0), + (r = ((r = (r + Math.imul(b, q)) | 0) + Math.imul(I, H)) | 0), + (a = (a + Math.imul(I, q)) | 0), + (n = (n + Math.imul(g, Y)) | 0), + (r = ((r = (r + Math.imul(g, Q)) | 0) + Math.imul(_, Y)) | 0), + (a = (a + Math.imul(_, Q)) | 0), + (n = (n + Math.imul(p, $)) | 0), + (r = ((r = (r + Math.imul(p, ee)) | 0) + Math.imul(v, $)) | 0), + (a = (a + Math.imul(v, ee)) | 0), + (n = (n + Math.imul(u, ei)) | 0), + (r = ((r = (r + Math.imul(u, en)) | 0) + Math.imul(f, ei)) | 0); + var eI = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, en)) | 0) + (r >>> 13)) | 0) + + (eI >>> 26)) | + 0), + (eI &= 0x3ffffff), + (n = Math.imul(k, G)), + (r = ((r = Math.imul(k, z)) + Math.imul(P, G)) | 0), + (a = Math.imul(P, z)), + (n = (n + Math.imul(C, W)) | 0), + (r = ((r = (r + Math.imul(C, Z)) | 0) + Math.imul(T, W)) | 0), + (a = (a + Math.imul(T, Z)) | 0), + (n = (n + Math.imul(x, H)) | 0), + (r = ((r = (r + Math.imul(x, q)) | 0) + Math.imul(S, H)) | 0), + (a = (a + Math.imul(S, q)) | 0), + (n = (n + Math.imul(b, Y)) | 0), + (r = ((r = (r + Math.imul(b, Q)) | 0) + Math.imul(I, Y)) | 0), + (a = (a + Math.imul(I, Q)) | 0), + (n = (n + Math.imul(g, $)) | 0), + (r = ((r = (r + Math.imul(g, ee)) | 0) + Math.imul(_, $)) | 0), + (a = (a + Math.imul(_, ee)) | 0), + (n = (n + Math.imul(p, ei)) | 0), + (r = ((r = (r + Math.imul(p, en)) | 0) + Math.imul(v, ei)) | 0), + (a = (a + Math.imul(v, en)) | 0), + (n = (n + Math.imul(u, ea)) | 0), + (r = ((r = (r + Math.imul(u, eo)) | 0) + Math.imul(f, ea)) | 0); + var ew = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, eo)) | 0) + (r >>> 13)) | 0) + + (ew >>> 26)) | + 0), + (ew &= 0x3ffffff), + (n = Math.imul(D, G)), + (r = ((r = Math.imul(D, z)) + Math.imul(R, G)) | 0), + (a = Math.imul(R, z)), + (n = (n + Math.imul(k, W)) | 0), + (r = ((r = (r + Math.imul(k, Z)) | 0) + Math.imul(P, W)) | 0), + (a = (a + Math.imul(P, Z)) | 0), + (n = (n + Math.imul(C, H)) | 0), + (r = ((r = (r + Math.imul(C, q)) | 0) + Math.imul(T, H)) | 0), + (a = (a + Math.imul(T, q)) | 0), + (n = (n + Math.imul(x, Y)) | 0), + (r = ((r = (r + Math.imul(x, Q)) | 0) + Math.imul(S, Y)) | 0), + (a = (a + Math.imul(S, Q)) | 0), + (n = (n + Math.imul(b, $)) | 0), + (r = ((r = (r + Math.imul(b, ee)) | 0) + Math.imul(I, $)) | 0), + (a = (a + Math.imul(I, ee)) | 0), + (n = (n + Math.imul(g, ei)) | 0), + (r = ((r = (r + Math.imul(g, en)) | 0) + Math.imul(_, ei)) | 0), + (a = (a + Math.imul(_, en)) | 0), + (n = (n + Math.imul(p, ea)) | 0), + (r = ((r = (r + Math.imul(p, eo)) | 0) + Math.imul(v, ea)) | 0), + (a = (a + Math.imul(v, eo)) | 0), + (n = (n + Math.imul(u, el)) | 0), + (r = ((r = (r + Math.imul(u, ec)) | 0) + Math.imul(f, el)) | 0); + var ex = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, ec)) | 0) + (r >>> 13)) | 0) + + (ex >>> 26)) | + 0), + (ex &= 0x3ffffff), + (n = Math.imul(L, G)), + (r = ((r = Math.imul(L, z)) + Math.imul(j, G)) | 0), + (a = Math.imul(j, z)), + (n = (n + Math.imul(D, W)) | 0), + (r = ((r = (r + Math.imul(D, Z)) | 0) + Math.imul(R, W)) | 0), + (a = (a + Math.imul(R, Z)) | 0), + (n = (n + Math.imul(k, H)) | 0), + (r = ((r = (r + Math.imul(k, q)) | 0) + Math.imul(P, H)) | 0), + (a = (a + Math.imul(P, q)) | 0), + (n = (n + Math.imul(C, Y)) | 0), + (r = ((r = (r + Math.imul(C, Q)) | 0) + Math.imul(T, Y)) | 0), + (a = (a + Math.imul(T, Q)) | 0), + (n = (n + Math.imul(x, $)) | 0), + (r = ((r = (r + Math.imul(x, ee)) | 0) + Math.imul(S, $)) | 0), + (a = (a + Math.imul(S, ee)) | 0), + (n = (n + Math.imul(b, ei)) | 0), + (r = ((r = (r + Math.imul(b, en)) | 0) + Math.imul(I, ei)) | 0), + (a = (a + Math.imul(I, en)) | 0), + (n = (n + Math.imul(g, ea)) | 0), + (r = ((r = (r + Math.imul(g, eo)) | 0) + Math.imul(_, ea)) | 0), + (a = (a + Math.imul(_, eo)) | 0), + (n = (n + Math.imul(p, el)) | 0), + (r = ((r = (r + Math.imul(p, ec)) | 0) + Math.imul(v, el)) | 0), + (a = (a + Math.imul(v, ec)) | 0), + (n = (n + Math.imul(u, eu)) | 0), + (r = ((r = (r + Math.imul(u, ef)) | 0) + Math.imul(f, eu)) | 0); + var eS = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, ef)) | 0) + (r >>> 13)) | 0) + + (eS >>> 26)) | + 0), + (eS &= 0x3ffffff), + (n = Math.imul(B, G)), + (r = ((r = Math.imul(B, z)) + Math.imul(F, G)) | 0), + (a = Math.imul(F, z)), + (n = (n + Math.imul(L, W)) | 0), + (r = ((r = (r + Math.imul(L, Z)) | 0) + Math.imul(j, W)) | 0), + (a = (a + Math.imul(j, Z)) | 0), + (n = (n + Math.imul(D, H)) | 0), + (r = ((r = (r + Math.imul(D, q)) | 0) + Math.imul(R, H)) | 0), + (a = (a + Math.imul(R, q)) | 0), + (n = (n + Math.imul(k, Y)) | 0), + (r = ((r = (r + Math.imul(k, Q)) | 0) + Math.imul(P, Y)) | 0), + (a = (a + Math.imul(P, Q)) | 0), + (n = (n + Math.imul(C, $)) | 0), + (r = ((r = (r + Math.imul(C, ee)) | 0) + Math.imul(T, $)) | 0), + (a = (a + Math.imul(T, ee)) | 0), + (n = (n + Math.imul(x, ei)) | 0), + (r = ((r = (r + Math.imul(x, en)) | 0) + Math.imul(S, ei)) | 0), + (a = (a + Math.imul(S, en)) | 0), + (n = (n + Math.imul(b, ea)) | 0), + (r = ((r = (r + Math.imul(b, eo)) | 0) + Math.imul(I, ea)) | 0), + (a = (a + Math.imul(I, eo)) | 0), + (n = (n + Math.imul(g, el)) | 0), + (r = ((r = (r + Math.imul(g, ec)) | 0) + Math.imul(_, el)) | 0), + (a = (a + Math.imul(_, ec)) | 0), + (n = (n + Math.imul(p, eu)) | 0), + (r = ((r = (r + Math.imul(p, ef)) | 0) + Math.imul(v, eu)) | 0), + (a = (a + Math.imul(v, ef)) | 0), + (n = (n + Math.imul(u, ep)) | 0), + (r = ((r = (r + Math.imul(u, ev)) | 0) + Math.imul(f, ep)) | 0); + var eM = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, ev)) | 0) + (r >>> 13)) | 0) + + (eM >>> 26)) | + 0), + (eM &= 0x3ffffff), + (n = Math.imul(B, W)), + (r = ((r = Math.imul(B, Z)) + Math.imul(F, W)) | 0), + (a = Math.imul(F, Z)), + (n = (n + Math.imul(L, H)) | 0), + (r = ((r = (r + Math.imul(L, q)) | 0) + Math.imul(j, H)) | 0), + (a = (a + Math.imul(j, q)) | 0), + (n = (n + Math.imul(D, Y)) | 0), + (r = ((r = (r + Math.imul(D, Q)) | 0) + Math.imul(R, Y)) | 0), + (a = (a + Math.imul(R, Q)) | 0), + (n = (n + Math.imul(k, $)) | 0), + (r = ((r = (r + Math.imul(k, ee)) | 0) + Math.imul(P, $)) | 0), + (a = (a + Math.imul(P, ee)) | 0), + (n = (n + Math.imul(C, ei)) | 0), + (r = ((r = (r + Math.imul(C, en)) | 0) + Math.imul(T, ei)) | 0), + (a = (a + Math.imul(T, en)) | 0), + (n = (n + Math.imul(x, ea)) | 0), + (r = ((r = (r + Math.imul(x, eo)) | 0) + Math.imul(S, ea)) | 0), + (a = (a + Math.imul(S, eo)) | 0), + (n = (n + Math.imul(b, el)) | 0), + (r = ((r = (r + Math.imul(b, ec)) | 0) + Math.imul(I, el)) | 0), + (a = (a + Math.imul(I, ec)) | 0), + (n = (n + Math.imul(g, eu)) | 0), + (r = ((r = (r + Math.imul(g, ef)) | 0) + Math.imul(_, eu)) | 0), + (a = (a + Math.imul(_, ef)) | 0), + (n = (n + Math.imul(p, ep)) | 0), + (r = ((r = (r + Math.imul(p, ev)) | 0) + Math.imul(v, ep)) | 0); + var eC = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(v, ev)) | 0) + (r >>> 13)) | 0) + + (eC >>> 26)) | + 0), + (eC &= 0x3ffffff), + (n = Math.imul(B, H)), + (r = ((r = Math.imul(B, q)) + Math.imul(F, H)) | 0), + (a = Math.imul(F, q)), + (n = (n + Math.imul(L, Y)) | 0), + (r = ((r = (r + Math.imul(L, Q)) | 0) + Math.imul(j, Y)) | 0), + (a = (a + Math.imul(j, Q)) | 0), + (n = (n + Math.imul(D, $)) | 0), + (r = ((r = (r + Math.imul(D, ee)) | 0) + Math.imul(R, $)) | 0), + (a = (a + Math.imul(R, ee)) | 0), + (n = (n + Math.imul(k, ei)) | 0), + (r = ((r = (r + Math.imul(k, en)) | 0) + Math.imul(P, ei)) | 0), + (a = (a + Math.imul(P, en)) | 0), + (n = (n + Math.imul(C, ea)) | 0), + (r = ((r = (r + Math.imul(C, eo)) | 0) + Math.imul(T, ea)) | 0), + (a = (a + Math.imul(T, eo)) | 0), + (n = (n + Math.imul(x, el)) | 0), + (r = ((r = (r + Math.imul(x, ec)) | 0) + Math.imul(S, el)) | 0), + (a = (a + Math.imul(S, ec)) | 0), + (n = (n + Math.imul(b, eu)) | 0), + (r = ((r = (r + Math.imul(b, ef)) | 0) + Math.imul(I, eu)) | 0), + (a = (a + Math.imul(I, ef)) | 0), + (n = (n + Math.imul(g, ep)) | 0), + (r = ((r = (r + Math.imul(g, ev)) | 0) + Math.imul(_, ep)) | 0); + var eT = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(_, ev)) | 0) + (r >>> 13)) | 0) + + (eT >>> 26)) | + 0), + (eT &= 0x3ffffff), + (n = Math.imul(B, Y)), + (r = ((r = Math.imul(B, Q)) + Math.imul(F, Y)) | 0), + (a = Math.imul(F, Q)), + (n = (n + Math.imul(L, $)) | 0), + (r = ((r = (r + Math.imul(L, ee)) | 0) + Math.imul(j, $)) | 0), + (a = (a + Math.imul(j, ee)) | 0), + (n = (n + Math.imul(D, ei)) | 0), + (r = ((r = (r + Math.imul(D, en)) | 0) + Math.imul(R, ei)) | 0), + (a = (a + Math.imul(R, en)) | 0), + (n = (n + Math.imul(k, ea)) | 0), + (r = ((r = (r + Math.imul(k, eo)) | 0) + Math.imul(P, ea)) | 0), + (a = (a + Math.imul(P, eo)) | 0), + (n = (n + Math.imul(C, el)) | 0), + (r = ((r = (r + Math.imul(C, ec)) | 0) + Math.imul(T, el)) | 0), + (a = (a + Math.imul(T, ec)) | 0), + (n = (n + Math.imul(x, eu)) | 0), + (r = ((r = (r + Math.imul(x, ef)) | 0) + Math.imul(S, eu)) | 0), + (a = (a + Math.imul(S, ef)) | 0), + (n = (n + Math.imul(b, ep)) | 0), + (r = ((r = (r + Math.imul(b, ev)) | 0) + Math.imul(I, ep)) | 0); + var eA = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(I, ev)) | 0) + (r >>> 13)) | 0) + + (eA >>> 26)) | + 0), + (eA &= 0x3ffffff), + (n = Math.imul(B, $)), + (r = ((r = Math.imul(B, ee)) + Math.imul(F, $)) | 0), + (a = Math.imul(F, ee)), + (n = (n + Math.imul(L, ei)) | 0), + (r = ((r = (r + Math.imul(L, en)) | 0) + Math.imul(j, ei)) | 0), + (a = (a + Math.imul(j, en)) | 0), + (n = (n + Math.imul(D, ea)) | 0), + (r = ((r = (r + Math.imul(D, eo)) | 0) + Math.imul(R, ea)) | 0), + (a = (a + Math.imul(R, eo)) | 0), + (n = (n + Math.imul(k, el)) | 0), + (r = ((r = (r + Math.imul(k, ec)) | 0) + Math.imul(P, el)) | 0), + (a = (a + Math.imul(P, ec)) | 0), + (n = (n + Math.imul(C, eu)) | 0), + (r = ((r = (r + Math.imul(C, ef)) | 0) + Math.imul(T, eu)) | 0), + (a = (a + Math.imul(T, ef)) | 0), + (n = (n + Math.imul(x, ep)) | 0), + (r = ((r = (r + Math.imul(x, ev)) | 0) + Math.imul(S, ep)) | 0); + var ek = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(S, ev)) | 0) + (r >>> 13)) | 0) + + (ek >>> 26)) | + 0), + (ek &= 0x3ffffff), + (n = Math.imul(B, ei)), + (r = ((r = Math.imul(B, en)) + Math.imul(F, ei)) | 0), + (a = Math.imul(F, en)), + (n = (n + Math.imul(L, ea)) | 0), + (r = ((r = (r + Math.imul(L, eo)) | 0) + Math.imul(j, ea)) | 0), + (a = (a + Math.imul(j, eo)) | 0), + (n = (n + Math.imul(D, el)) | 0), + (r = ((r = (r + Math.imul(D, ec)) | 0) + Math.imul(R, el)) | 0), + (a = (a + Math.imul(R, ec)) | 0), + (n = (n + Math.imul(k, eu)) | 0), + (r = ((r = (r + Math.imul(k, ef)) | 0) + Math.imul(P, eu)) | 0), + (a = (a + Math.imul(P, ef)) | 0), + (n = (n + Math.imul(C, ep)) | 0), + (r = ((r = (r + Math.imul(C, ev)) | 0) + Math.imul(T, ep)) | 0); + var eP = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(T, ev)) | 0) + (r >>> 13)) | 0) + + (eP >>> 26)) | + 0), + (eP &= 0x3ffffff), + (n = Math.imul(B, ea)), + (r = ((r = Math.imul(B, eo)) + Math.imul(F, ea)) | 0), + (a = Math.imul(F, eo)), + (n = (n + Math.imul(L, el)) | 0), + (r = ((r = (r + Math.imul(L, ec)) | 0) + Math.imul(j, el)) | 0), + (a = (a + Math.imul(j, ec)) | 0), + (n = (n + Math.imul(D, eu)) | 0), + (r = ((r = (r + Math.imul(D, ef)) | 0) + Math.imul(R, eu)) | 0), + (a = (a + Math.imul(R, ef)) | 0), + (n = (n + Math.imul(k, ep)) | 0), + (r = ((r = (r + Math.imul(k, ev)) | 0) + Math.imul(P, ep)) | 0); + var eE = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(P, ev)) | 0) + (r >>> 13)) | 0) + + (eE >>> 26)) | + 0), + (eE &= 0x3ffffff), + (n = Math.imul(B, el)), + (r = ((r = Math.imul(B, ec)) + Math.imul(F, el)) | 0), + (a = Math.imul(F, ec)), + (n = (n + Math.imul(L, eu)) | 0), + (r = ((r = (r + Math.imul(L, ef)) | 0) + Math.imul(j, eu)) | 0), + (a = (a + Math.imul(j, ef)) | 0), + (n = (n + Math.imul(D, ep)) | 0), + (r = ((r = (r + Math.imul(D, ev)) | 0) + Math.imul(R, ep)) | 0); + var eD = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(R, ev)) | 0) + (r >>> 13)) | 0) + + (eD >>> 26)) | + 0), + (eD &= 0x3ffffff), + (n = Math.imul(B, eu)), + (r = ((r = Math.imul(B, ef)) + Math.imul(F, eu)) | 0), + (a = Math.imul(F, ef)), + (n = (n + Math.imul(L, ep)) | 0), + (r = ((r = (r + Math.imul(L, ev)) | 0) + Math.imul(j, ep)) | 0); + var eR = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(j, ev)) | 0) + (r >>> 13)) | 0) + + (eR >>> 26)) | + 0), + (eR &= 0x3ffffff), + (n = Math.imul(B, ep)), + (r = ((r = Math.imul(B, ev)) + Math.imul(F, ep)) | 0); + var eN = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + return ( + (c = + ((((a = Math.imul(F, ev)) + (r >>> 13)) | 0) + (eN >>> 26)) | 0), + (eN &= 0x3ffffff), + (l[0] = em), + (l[1] = eg), + (l[2] = e_), + (l[3] = ey), + (l[4] = eb), + (l[5] = eI), + (l[6] = ew), + (l[7] = ex), + (l[8] = eS), + (l[9] = eM), + (l[10] = eC), + (l[11] = eT), + (l[12] = eA), + (l[13] = ek), + (l[14] = eP), + (l[15] = eE), + (l[16] = eD), + (l[17] = eR), + (l[18] = eN), + 0 !== c && ((l[19] = c), i.length++), + i + ); + }; + function m(e, t, i) { + (i.negative = t.negative ^ e.negative), + (i.length = e.length + t.length); + for (var n = 0, r = 0, a = 0; a < i.length - 1; a++) { + var o = r; + r = 0; + for ( + var s = 0x3ffffff & n, + l = Math.min(a, t.length - 1), + c = Math.max(0, a - e.length + 1); + c <= l; + c++ + ) { + var d = a - c, + u = (0 | e.words[d]) * (0 | t.words[c]), + f = 0x3ffffff & u; + (o = (o + ((u / 0x4000000) | 0)) | 0), + (s = 0x3ffffff & (f = (f + s) | 0)), + (r += (o = (o + (f >>> 26)) | 0) >>> 26), + (o &= 0x3ffffff); + } + (i.words[a] = s), (n = o), (o = r); + } + return 0 !== n ? (i.words[a] = n) : i.length--, i.strip(); + } + function g(e, t, i) { + return new _().mulp(e, t, i); + } + function _(e, t) { + (this.x = e), (this.y = t); + } + !Math.imul && (v = p), + (a.prototype.mulTo = function (e, t) { + var i, + n = this.length + e.length; + return (i = + 10 === this.length && 10 === e.length + ? v(this, e, t) + : n < 63 + ? p(this, e, t) + : n < 1024 + ? m(this, e, t) + : g(this, e, t)); + }), + (_.prototype.makeRBT = function (e) { + for ( + var t = Array(e), i = a.prototype._countBits(e) - 1, n = 0; + n < e; + n++ + ) + t[n] = this.revBin(n, i, e); + return t; + }), + (_.prototype.revBin = function (e, t, i) { + if (0 === e || e === i - 1) return e; + for (var n = 0, r = 0; r < t; r++) + (n |= (1 & e) << (t - r - 1)), (e >>= 1); + return n; + }), + (_.prototype.permute = function (e, t, i, n, r, a) { + for (var o = 0; o < a; o++) (n[o] = t[e[o]]), (r[o] = i[e[o]]); + }), + (_.prototype.transform = function (e, t, i, n, r, a) { + this.permute(a, e, t, i, n, r); + for (var o = 1; o < r; o <<= 1) { + for ( + var s = o << 1, + l = Math.cos((2 * Math.PI) / s), + c = Math.sin((2 * Math.PI) / s), + d = 0; + d < r; + d += s + ) { + for (var u = l, f = c, h = 0; h < o; h++) { + var p = i[d + h], + v = n[d + h], + m = i[d + h + o], + g = n[d + h + o], + _ = u * m - f * g; + (g = u * g + f * m), + (m = _), + (i[d + h] = p + m), + (n[d + h] = v + g), + (i[d + h + o] = p - m), + (n[d + h + o] = v - g), + h !== s && + ((_ = l * u - c * f), (f = l * f + c * u), (u = _)); + } + } + } + }), + (_.prototype.guessLen13b = function (e, t) { + var i = 1 | Math.max(t, e), + n = 1 & i, + r = 0; + for (i = (i / 2) | 0; i; i >>>= 1) r++; + return 1 << (r + 1 + n); + }), + (_.prototype.conjugate = function (e, t, i) { + if (!(i <= 1)) + for (var n = 0; n < i / 2; n++) { + var r = e[n]; + (e[n] = e[i - n - 1]), + (e[i - n - 1] = r), + (r = t[n]), + (t[n] = -t[i - n - 1]), + (t[i - n - 1] = -r); + } + }), + (_.prototype.normalize13b = function (e, t) { + for (var i = 0, n = 0; n < t / 2; n++) { + var r = + 8192 * Math.round(e[2 * n + 1] / t) + + Math.round(e[2 * n] / t) + + i; + (e[n] = 0x3ffffff & r), + (i = r < 0x4000000 ? 0 : (r / 0x4000000) | 0); + } + return e; + }), + (_.prototype.convert13b = function (e, t, i, r) { + for (var a = 0, o = 0; o < t; o++) + (a += 0 | e[o]), + (i[2 * o] = 8191 & a), + (a >>>= 13), + (i[2 * o + 1] = 8191 & a), + (a >>>= 13); + for (o = 2 * t; o < r; ++o) i[o] = 0; + n(0 === a), n((-8192 & a) == 0); + }), + (_.prototype.stub = function (e) { + for (var t = Array(e), i = 0; i < e; i++) t[i] = 0; + return t; + }), + (_.prototype.mulp = function (e, t, i) { + var n = 2 * this.guessLen13b(e.length, t.length), + r = this.makeRBT(n), + a = this.stub(n), + o = Array(n), + s = Array(n), + l = Array(n), + c = Array(n), + d = Array(n), + u = Array(n), + f = i.words; + (f.length = n), + this.convert13b(e.words, e.length, o, n), + this.convert13b(t.words, t.length, c, n), + this.transform(o, a, s, l, n, r), + this.transform(c, a, d, u, n, r); + for (var h = 0; h < n; h++) { + var p = s[h] * d[h] - l[h] * u[h]; + (l[h] = s[h] * u[h] + l[h] * d[h]), (s[h] = p); + } + return ( + this.conjugate(s, l, n), + this.transform(s, l, f, a, n, r), + this.conjugate(f, a, n), + this.normalize13b(f, n), + (i.negative = e.negative ^ t.negative), + (i.length = e.length + t.length), + i.strip() + ); + }), + (a.prototype.mul = function (e) { + var t = new a(null); + return (t.words = Array(this.length + e.length)), this.mulTo(e, t); + }), + (a.prototype.mulf = function (e) { + var t = new a(null); + return (t.words = Array(this.length + e.length)), g(this, e, t); + }), + (a.prototype.imul = function (e) { + return this.clone().mulTo(e, this); + }), + (a.prototype.imuln = function (e) { + n("number" == typeof e), n(e < 0x4000000); + for (var t = 0, i = 0; i < this.length; i++) { + var r = (0 | this.words[i]) * e, + a = (0x3ffffff & r) + (0x3ffffff & t); + (t >>= 26), + (t += ((r / 0x4000000) | 0) + (a >>> 26)), + (this.words[i] = 0x3ffffff & a); + } + return 0 !== t && ((this.words[i] = t), this.length++), this; + }), + (a.prototype.muln = function (e) { + return this.clone().imuln(e); + }), + (a.prototype.sqr = function () { + return this.mul(this); + }), + (a.prototype.isqr = function () { + return this.imul(this.clone()); + }), + (a.prototype.pow = function (e) { + var t = h(e); + if (0 === t.length) return new a(1); + for ( + var i = this, n = 0; + n < t.length && 0 === t[n]; + n++, i = i.sqr() + ); + if (++n < t.length) + for (var r = i.sqr(); n < t.length; n++, r = r.sqr()) + 0 !== t[n] && (i = i.mul(r)); + return i; + }), + (a.prototype.iushln = function (e) { + n("number" == typeof e && e >= 0); + var t, + i = e % 26, + r = (e - i) / 26, + a = (0x3ffffff >>> (26 - i)) << (26 - i); + if (0 !== i) { + var o = 0; + for (t = 0; t < this.length; t++) { + var s = this.words[t] & a, + l = ((0 | this.words[t]) - s) << i; + (this.words[t] = l | o), (o = s >>> (26 - i)); + } + o && ((this.words[t] = o), this.length++); + } + if (0 !== r) { + for (t = this.length - 1; t >= 0; t--) + this.words[t + r] = this.words[t]; + for (t = 0; t < r; t++) this.words[t] = 0; + this.length += r; + } + return this.strip(); + }), + (a.prototype.ishln = function (e) { + return n(0 === this.negative), this.iushln(e); + }), + (a.prototype.iushrn = function (e, t, i) { + n("number" == typeof e && e >= 0), + (r = t ? (t - (t % 26)) / 26 : 0); + var r, + a = e % 26, + o = Math.min((e - a) / 26, this.length), + s = 0x3ffffff ^ ((0x3ffffff >>> a) << a), + l = i; + if (((r -= o), (r = Math.max(0, r)), l)) { + for (var c = 0; c < o; c++) l.words[c] = this.words[c]; + l.length = o; + } + if (0 === o); + else if (this.length > o) + for (this.length -= o, c = 0; c < this.length; c++) + this.words[c] = this.words[c + o]; + else (this.words[0] = 0), (this.length = 1); + var d = 0; + for (c = this.length - 1; c >= 0 && (0 !== d || c >= r); c--) { + var u = 0 | this.words[c]; + (this.words[c] = (d << (26 - a)) | (u >>> a)), (d = u & s); + } + return ( + l && 0 !== d && (l.words[l.length++] = d), + 0 === this.length && ((this.words[0] = 0), (this.length = 1)), + this.strip() + ); + }), + (a.prototype.ishrn = function (e, t, i) { + return n(0 === this.negative), this.iushrn(e, t, i); + }), + (a.prototype.shln = function (e) { + return this.clone().ishln(e); + }), + (a.prototype.ushln = function (e) { + return this.clone().iushln(e); + }), + (a.prototype.shrn = function (e) { + return this.clone().ishrn(e); + }), + (a.prototype.ushrn = function (e) { + return this.clone().iushrn(e); + }), + (a.prototype.testn = function (e) { + n("number" == typeof e && e >= 0); + var t = e % 26, + i = (e - t) / 26, + r = 1 << t; + return !(this.length <= i) && !!(this.words[i] & r); + }), + (a.prototype.imaskn = function (e) { + n("number" == typeof e && e >= 0); + var t = e % 26, + i = (e - t) / 26; + if ( + (n( + 0 === this.negative, + "imaskn works only with positive numbers" + ), + this.length <= i) + ) + return this; + if ( + (0 !== t && i++, + (this.length = Math.min(i, this.length)), + 0 !== t) + ) { + var r = 0x3ffffff ^ ((0x3ffffff >>> t) << t); + this.words[this.length - 1] &= r; + } + return this.strip(); + }), + (a.prototype.maskn = function (e) { + return this.clone().imaskn(e); + }), + (a.prototype.iaddn = function (e) { + if ((n("number" == typeof e), n(e < 0x4000000), e < 0)) + return this.isubn(-e); + if (0 !== this.negative) + return 1 === this.length && (0 | this.words[0]) < e + ? ((this.words[0] = e - (0 | this.words[0])), + (this.negative = 0), + this) + : ((this.negative = 0), + this.isubn(e), + (this.negative = 1), + this); + return this._iaddn(e); + }), + (a.prototype._iaddn = function (e) { + this.words[0] += e; + for (var t = 0; t < this.length && this.words[t] >= 0x4000000; t++) + (this.words[t] -= 0x4000000), + t === this.length - 1 + ? (this.words[t + 1] = 1) + : this.words[t + 1]++; + return (this.length = Math.max(this.length, t + 1)), this; + }), + (a.prototype.isubn = function (e) { + if ((n("number" == typeof e), n(e < 0x4000000), e < 0)) + return this.iaddn(-e); + if (0 !== this.negative) + return ( + (this.negative = 0), this.iaddn(e), (this.negative = 1), this + ); + if (((this.words[0] -= e), 1 === this.length && this.words[0] < 0)) + (this.words[0] = -this.words[0]), (this.negative = 1); + else + for (var t = 0; t < this.length && this.words[t] < 0; t++) + (this.words[t] += 0x4000000), (this.words[t + 1] -= 1); + return this.strip(); + }), + (a.prototype.addn = function (e) { + return this.clone().iaddn(e); + }), + (a.prototype.subn = function (e) { + return this.clone().isubn(e); + }), + (a.prototype.iabs = function () { + return (this.negative = 0), this; + }), + (a.prototype.abs = function () { + return this.clone().iabs(); + }), + (a.prototype._ishlnsubmul = function (e, t, i) { + var r, + a, + o = e.length + i; + this._expand(o); + var s = 0; + for (r = 0; r < e.length; r++) { + a = (0 | this.words[r + i]) + s; + var l = (0 | e.words[r]) * t; + (a -= 0x3ffffff & l), + (s = (a >> 26) - ((l / 0x4000000) | 0)), + (this.words[r + i] = 0x3ffffff & a); + } + for (; r < this.length - i; r++) + (s = (a = (0 | this.words[r + i]) + s) >> 26), + (this.words[r + i] = 0x3ffffff & a); + if (0 === s) return this.strip(); + for (n(-1 === s), s = 0, r = 0; r < this.length; r++) + (s = (a = -(0 | this.words[r]) + s) >> 26), + (this.words[r] = 0x3ffffff & a); + return (this.negative = 1), this.strip(); + }), + (a.prototype._wordDiv = function (e, t) { + var i, + n = this.length - e.length, + r = this.clone(), + o = e, + s = 0 | o.words[o.length - 1]; + 0 != (n = 26 - this._countBits(s)) && + ((o = o.ushln(n)), r.iushln(n), (s = 0 | o.words[o.length - 1])); + var l = r.length - o.length; + if ("mod" !== t) { + ((i = new a(null)).length = l + 1), (i.words = Array(i.length)); + for (var c = 0; c < i.length; c++) i.words[c] = 0; + } + var d = r.clone()._ishlnsubmul(o, 1, l); + 0 === d.negative && ((r = d), i && (i.words[l] = 1)); + for (var u = l - 1; u >= 0; u--) { + var f = + (0 | r.words[o.length + u]) * 0x4000000 + + (0 | r.words[o.length + u - 1]); + for ( + f = Math.min((f / s) | 0, 0x3ffffff), r._ishlnsubmul(o, f, u); + 0 !== r.negative; + + ) + f--, + (r.negative = 0), + r._ishlnsubmul(o, 1, u), + !r.isZero() && (r.negative ^= 1); + i && (i.words[u] = f); + } + return ( + i && i.strip(), + r.strip(), + "div" !== t && 0 !== n && r.iushrn(n), + { div: i || null, mod: r } + ); + }), + (a.prototype.divmod = function (e, t, i) { + var r, o, s; + if ((n(!e.isZero()), this.isZero())) + return { div: new a(0), mod: new a(0) }; + if (0 !== this.negative && 0 === e.negative) + return ( + (s = this.neg().divmod(e, t)), + "mod" !== t && (r = s.div.neg()), + "div" !== t && + ((o = s.mod.neg()), i && 0 !== o.negative && o.iadd(e)), + { div: r, mod: o } + ); + if (0 === this.negative && 0 !== e.negative) + return ( + (s = this.divmod(e.neg(), t)), + "mod" !== t && (r = s.div.neg()), + { div: r, mod: s.mod } + ); + if ((this.negative & e.negative) != 0) + return ( + (s = this.neg().divmod(e.neg(), t)), + "div" !== t && + ((o = s.mod.neg()), i && 0 !== o.negative && o.isub(e)), + { div: s.div, mod: o } + ); + if (e.length > this.length || 0 > this.cmp(e)) + return { div: new a(0), mod: this }; + if (1 === e.length) + return "div" === t + ? { div: this.divn(e.words[0]), mod: null } + : "mod" === t + ? { div: null, mod: new a(this.modn(e.words[0])) } + : { + div: this.divn(e.words[0]), + mod: new a(this.modn(e.words[0])), + }; + return this._wordDiv(e, t); + }), + (a.prototype.div = function (e) { + return this.divmod(e, "div", !1).div; + }), + (a.prototype.mod = function (e) { + return this.divmod(e, "mod", !1).mod; + }), + (a.prototype.umod = function (e) { + return this.divmod(e, "mod", !0).mod; + }), + (a.prototype.divRound = function (e) { + var t = this.divmod(e); + if (t.mod.isZero()) return t.div; + var i = 0 !== t.div.negative ? t.mod.isub(e) : t.mod, + n = e.ushrn(1), + r = e.andln(1), + a = i.cmp(n); + return a < 0 || (1 === r && 0 === a) + ? t.div + : 0 !== t.div.negative + ? t.div.isubn(1) + : t.div.iaddn(1); + }), + (a.prototype.modn = function (e) { + n(e <= 0x3ffffff); + for (var t = 0x4000000 % e, i = 0, r = this.length - 1; r >= 0; r--) + i = (t * i + (0 | this.words[r])) % e; + return i; + }), + (a.prototype.idivn = function (e) { + n(e <= 0x3ffffff); + for (var t = 0, i = this.length - 1; i >= 0; i--) { + var r = (0 | this.words[i]) + 0x4000000 * t; + (this.words[i] = (r / e) | 0), (t = r % e); + } + return this.strip(); + }), + (a.prototype.divn = function (e) { + return this.clone().idivn(e); + }), + (a.prototype.egcd = function (e) { + n(0 === e.negative), n(!e.isZero()); + var t = this, + i = e.clone(); + t = 0 !== t.negative ? t.umod(e) : t.clone(); + for ( + var r = new a(1), o = new a(0), s = new a(0), l = new a(1), c = 0; + t.isEven() && i.isEven(); + + ) + t.iushrn(1), i.iushrn(1), ++c; + for (var d = i.clone(), u = t.clone(); !t.isZero(); ) { + for ( + var f = 0, h = 1; + (t.words[0] & h) == 0 && f < 26; + ++f, h <<= 1 + ); + if (f > 0) + for (t.iushrn(f); f-- > 0; ) + (r.isOdd() || o.isOdd()) && (r.iadd(d), o.isub(u)), + r.iushrn(1), + o.iushrn(1); + for ( + var p = 0, v = 1; + (i.words[0] & v) == 0 && p < 26; + ++p, v <<= 1 + ); + if (p > 0) + for (i.iushrn(p); p-- > 0; ) + (s.isOdd() || l.isOdd()) && (s.iadd(d), l.isub(u)), + s.iushrn(1), + l.iushrn(1); + t.cmp(i) >= 0 + ? (t.isub(i), r.isub(s), o.isub(l)) + : (i.isub(t), s.isub(r), l.isub(o)); + } + return { a: s, b: l, gcd: i.iushln(c) }; + }), + (a.prototype._invmp = function (e) { + n(0 === e.negative), n(!e.isZero()); + var t, + i = this, + r = e.clone(); + i = 0 !== i.negative ? i.umod(e) : i.clone(); + for ( + var o = new a(1), s = new a(0), l = r.clone(); + i.cmpn(1) > 0 && r.cmpn(1) > 0; + + ) { + for ( + var c = 0, d = 1; + (i.words[0] & d) == 0 && c < 26; + ++c, d <<= 1 + ); + if (c > 0) + for (i.iushrn(c); c-- > 0; ) + o.isOdd() && o.iadd(l), o.iushrn(1); + for ( + var u = 0, f = 1; + (r.words[0] & f) == 0 && u < 26; + ++u, f <<= 1 + ); + if (u > 0) + for (r.iushrn(u); u-- > 0; ) + s.isOdd() && s.iadd(l), s.iushrn(1); + i.cmp(r) >= 0 ? (i.isub(r), o.isub(s)) : (r.isub(i), s.isub(o)); + } + return 0 > (t = 0 === i.cmpn(1) ? o : s).cmpn(0) && t.iadd(e), t; + }), + (a.prototype.gcd = function (e) { + if (this.isZero()) return e.abs(); + if (e.isZero()) return this.abs(); + var t = this.clone(), + i = e.clone(); + (t.negative = 0), (i.negative = 0); + for (var n = 0; t.isEven() && i.isEven(); n++) + t.iushrn(1), i.iushrn(1); + for (;;) { + for (; t.isEven(); ) t.iushrn(1); + for (; i.isEven(); ) i.iushrn(1); + var r = t.cmp(i); + if (r < 0) { + var a = t; + (t = i), (i = a); + } else if (0 === r || 0 === i.cmpn(1)) break; + t.isub(i); + } + return i.iushln(n); + }), + (a.prototype.invm = function (e) { + return this.egcd(e).a.umod(e); + }), + (a.prototype.isEven = function () { + return (1 & this.words[0]) == 0; + }), + (a.prototype.isOdd = function () { + return (1 & this.words[0]) == 1; + }), + (a.prototype.andln = function (e) { + return this.words[0] & e; + }), + (a.prototype.bincn = function (e) { + n("number" == typeof e); + var t = e % 26, + i = (e - t) / 26, + r = 1 << t; + if (this.length <= i) + return this._expand(i + 1), (this.words[i] |= r), this; + for (var a = r, o = i; 0 !== a && o < this.length; o++) { + var s = 0 | this.words[o]; + (s += a), (a = s >>> 26), (s &= 0x3ffffff), (this.words[o] = s); + } + return 0 !== a && ((this.words[o] = a), this.length++), this; + }), + (a.prototype.isZero = function () { + return 1 === this.length && 0 === this.words[0]; + }), + (a.prototype.cmpn = function (e) { + var t, + i = e < 0; + if (0 !== this.negative && !i) return -1; + if (0 === this.negative && i) return 1; + if ((this.strip(), this.length > 1)) t = 1; + else { + i && (e = -e), n(e <= 0x3ffffff, "Number is too big"); + var r = 0 | this.words[0]; + t = r === e ? 0 : r < e ? -1 : 1; + } + return 0 !== this.negative ? 0 | -t : t; + }), + (a.prototype.cmp = function (e) { + if (0 !== this.negative && 0 === e.negative) return -1; + if (0 === this.negative && 0 !== e.negative) return 1; + var t = this.ucmp(e); + return 0 !== this.negative ? 0 | -t : t; + }), + (a.prototype.ucmp = function (e) { + if (this.length > e.length) return 1; + if (this.length < e.length) return -1; + for (var t = 0, i = this.length - 1; i >= 0; i--) { + var n = 0 | this.words[i], + r = 0 | e.words[i]; + if (n !== r) { + n < r ? (t = -1) : n > r && (t = 1); + break; + } + } + return t; + }), + (a.prototype.gtn = function (e) { + return 1 === this.cmpn(e); + }), + (a.prototype.gt = function (e) { + return 1 === this.cmp(e); + }), + (a.prototype.gten = function (e) { + return this.cmpn(e) >= 0; + }), + (a.prototype.gte = function (e) { + return this.cmp(e) >= 0; + }), + (a.prototype.ltn = function (e) { + return -1 === this.cmpn(e); + }), + (a.prototype.lt = function (e) { + return -1 === this.cmp(e); + }), + (a.prototype.lten = function (e) { + return 0 >= this.cmpn(e); + }), + (a.prototype.lte = function (e) { + return 0 >= this.cmp(e); + }), + (a.prototype.eqn = function (e) { + return 0 === this.cmpn(e); + }), + (a.prototype.eq = function (e) { + return 0 === this.cmp(e); + }), + (a.red = function (e) { + return new M(e); + }), + (a.prototype.toRed = function (e) { + return ( + n(!this.red, "Already a number in reduction context"), + n(0 === this.negative, "red works only with positives"), + e.convertTo(this)._forceRed(e) + ); + }), + (a.prototype.fromRed = function () { + return ( + n( + this.red, + "fromRed works only with numbers in reduction context" + ), + this.red.convertFrom(this) + ); + }), + (a.prototype._forceRed = function (e) { + return (this.red = e), this; + }), + (a.prototype.forceRed = function (e) { + return ( + n(!this.red, "Already a number in reduction context"), + this._forceRed(e) + ); + }), + (a.prototype.redAdd = function (e) { + return ( + n(this.red, "redAdd works only with red numbers"), + this.red.add(this, e) + ); + }), + (a.prototype.redIAdd = function (e) { + return ( + n(this.red, "redIAdd works only with red numbers"), + this.red.iadd(this, e) + ); + }), + (a.prototype.redSub = function (e) { + return ( + n(this.red, "redSub works only with red numbers"), + this.red.sub(this, e) + ); + }), + (a.prototype.redISub = function (e) { + return ( + n(this.red, "redISub works only with red numbers"), + this.red.isub(this, e) + ); + }), + (a.prototype.redShl = function (e) { + return ( + n(this.red, "redShl works only with red numbers"), + this.red.shl(this, e) + ); + }), + (a.prototype.redMul = function (e) { + return ( + n(this.red, "redMul works only with red numbers"), + this.red._verify2(this, e), + this.red.mul(this, e) + ); + }), + (a.prototype.redIMul = function (e) { + return ( + n(this.red, "redMul works only with red numbers"), + this.red._verify2(this, e), + this.red.imul(this, e) + ); + }), + (a.prototype.redSqr = function () { + return ( + n(this.red, "redSqr works only with red numbers"), + this.red._verify1(this), + this.red.sqr(this) + ); + }), + (a.prototype.redISqr = function () { + return ( + n(this.red, "redISqr works only with red numbers"), + this.red._verify1(this), + this.red.isqr(this) + ); + }), + (a.prototype.redSqrt = function () { + return ( + n(this.red, "redSqrt works only with red numbers"), + this.red._verify1(this), + this.red.sqrt(this) + ); + }), + (a.prototype.redInvm = function () { + return ( + n(this.red, "redInvm works only with red numbers"), + this.red._verify1(this), + this.red.invm(this) + ); + }), + (a.prototype.redNeg = function () { + return ( + n(this.red, "redNeg works only with red numbers"), + this.red._verify1(this), + this.red.neg(this) + ); + }), + (a.prototype.redPow = function (e) { + return ( + n(this.red && !e.red, "redPow(normalNum)"), + this.red._verify1(this), + this.red.pow(this, e) + ); + }); + var y = { k256: null, p224: null, p192: null, p25519: null }; + function b(e, t) { + (this.name = e), + (this.p = new a(t, 16)), + (this.n = this.p.bitLength()), + (this.k = new a(1).iushln(this.n).isub(this.p)), + (this.tmp = this._tmp()); + } + function I() { + b.call( + this, + "k256", + "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f" + ); + } + function w() { + b.call( + this, + "p224", + "ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001" + ); + } + function x() { + b.call( + this, + "p192", + "ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff" + ); + } + function S() { + b.call( + this, + "25519", + "7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed" + ); + } + function M(e) { + if ("string" == typeof e) { + var t = a._prime(e); + (this.m = t.p), (this.prime = t); + } else + n(e.gtn(1), "modulus must be greater than 1"), + (this.m = e), + (this.prime = null); + } + function C(e) { + M.call(this, e), + (this.shift = this.m.bitLength()), + this.shift % 26 != 0 && (this.shift += 26 - (this.shift % 26)), + (this.r = new a(1).iushln(this.shift)), + (this.r2 = this.imod(this.r.sqr())), + (this.rinv = this.r._invmp(this.m)), + (this.minv = this.rinv.mul(this.r).isubn(1).div(this.m)), + (this.minv = this.minv.umod(this.r)), + (this.minv = this.r.sub(this.minv)); + } + (b.prototype._tmp = function () { + var e = new a(null); + return (e.words = Array(Math.ceil(this.n / 13))), e; + }), + (b.prototype.ireduce = function (e) { + var t, + i = e; + do + this.split(i, this.tmp), + (t = (i = (i = this.imulK(i)).iadd(this.tmp)).bitLength()); + while (t > this.n); + var n = t < this.n ? -1 : i.ucmp(this.p); + return ( + 0 === n + ? ((i.words[0] = 0), (i.length = 1)) + : n > 0 + ? i.isub(this.p) + : void 0 !== i.strip + ? i.strip() + : i._strip(), + i + ); + }), + (b.prototype.split = function (e, t) { + e.iushrn(this.n, 0, t); + }), + (b.prototype.imulK = function (e) { + return e.imul(this.k); + }), + r(I, b), + (I.prototype.split = function (e, t) { + for (var i = 4194303, n = Math.min(e.length, 9), r = 0; r < n; r++) + t.words[r] = e.words[r]; + if (((t.length = n), e.length <= 9)) { + (e.words[0] = 0), (e.length = 1); + return; + } + var a = e.words[9]; + for (r = 10, t.words[t.length++] = a & i; r < e.length; r++) { + var o = 0 | e.words[r]; + (e.words[r - 10] = ((o & i) << 4) | (a >>> 22)), (a = o); + } + (a >>>= 22), + (e.words[r - 10] = a), + 0 === a && e.length > 10 ? (e.length -= 10) : (e.length -= 9); + }), + (I.prototype.imulK = function (e) { + (e.words[e.length] = 0), + (e.words[e.length + 1] = 0), + (e.length += 2); + for (var t = 0, i = 0; i < e.length; i++) { + var n = 0 | e.words[i]; + (t += 977 * n), + (e.words[i] = 0x3ffffff & t), + (t = 64 * n + ((t / 0x4000000) | 0)); + } + return ( + 0 === e.words[e.length - 1] && + (e.length--, 0 === e.words[e.length - 1] && e.length--), + e + ); + }), + r(w, b), + r(x, b), + r(S, b), + (S.prototype.imulK = function (e) { + for (var t = 0, i = 0; i < e.length; i++) { + var n = (0 | e.words[i]) * 19 + t, + r = 0x3ffffff & n; + (n >>>= 26), (e.words[i] = r), (t = n); + } + return 0 !== t && (e.words[e.length++] = t), e; + }), + (a._prime = function (e) { + var t; + if (y[e]) return y[e]; + if ("k256" === e) t = new I(); + else if ("p224" === e) t = new w(); + else if ("p192" === e) t = new x(); + else if ("p25519" === e) t = new S(); + else throw Error("Unknown prime " + e); + return (y[e] = t), t; + }), + (M.prototype._verify1 = function (e) { + n(0 === e.negative, "red works only with positives"), + n(e.red, "red works only with red numbers"); + }), + (M.prototype._verify2 = function (e, t) { + n((e.negative | t.negative) == 0, "red works only with positives"), + n(e.red && e.red === t.red, "red works only with red numbers"); + }), + (M.prototype.imod = function (e) { + return this.prime + ? this.prime.ireduce(e)._forceRed(this) + : e.umod(this.m)._forceRed(this); + }), + (M.prototype.neg = function (e) { + return e.isZero() ? e.clone() : this.m.sub(e)._forceRed(this); + }), + (M.prototype.add = function (e, t) { + this._verify2(e, t); + var i = e.add(t); + return i.cmp(this.m) >= 0 && i.isub(this.m), i._forceRed(this); + }), + (M.prototype.iadd = function (e, t) { + this._verify2(e, t); + var i = e.iadd(t); + return i.cmp(this.m) >= 0 && i.isub(this.m), i; + }), + (M.prototype.sub = function (e, t) { + this._verify2(e, t); + var i = e.sub(t); + return 0 > i.cmpn(0) && i.iadd(this.m), i._forceRed(this); + }), + (M.prototype.isub = function (e, t) { + this._verify2(e, t); + var i = e.isub(t); + return 0 > i.cmpn(0) && i.iadd(this.m), i; + }), + (M.prototype.shl = function (e, t) { + return this._verify1(e), this.imod(e.ushln(t)); + }), + (M.prototype.imul = function (e, t) { + return this._verify2(e, t), this.imod(e.imul(t)); + }), + (M.prototype.mul = function (e, t) { + return this._verify2(e, t), this.imod(e.mul(t)); + }), + (M.prototype.isqr = function (e) { + return this.imul(e, e.clone()); + }), + (M.prototype.sqr = function (e) { + return this.mul(e, e); + }), + (M.prototype.sqrt = function (e) { + if (e.isZero()) return e.clone(); + var t = this.m.andln(3); + if ((n(t % 2 == 1), 3 === t)) { + var i = this.m.add(new a(1)).iushrn(2); + return this.pow(e, i); + } + for ( + var r = this.m.subn(1), o = 0; + !r.isZero() && 0 === r.andln(1); + + ) + o++, r.iushrn(1); + n(!r.isZero()); + var s = new a(1).toRed(this), + l = s.redNeg(), + c = this.m.subn(1).iushrn(1), + d = this.m.bitLength(); + for ( + d = new a(2 * d * d).toRed(this); + 0 !== this.pow(d, c).cmp(l); + + ) + d.redIAdd(l); + for ( + var u = this.pow(d, r), + f = this.pow(e, r.addn(1).iushrn(1)), + h = this.pow(e, r), + p = o; + 0 !== h.cmp(s); + + ) { + for (var v = h, m = 0; 0 !== v.cmp(s); m++) v = v.redSqr(); + n(m < p); + var g = this.pow(u, new a(1).iushln(p - m - 1)); + (f = f.redMul(g)), (u = g.redSqr()), (h = h.redMul(u)), (p = m); + } + return f; + }), + (M.prototype.invm = function (e) { + var t = e._invmp(this.m); + return 0 !== t.negative + ? ((t.negative = 0), this.imod(t).redNeg()) + : this.imod(t); + }), + (M.prototype.pow = function (e, t) { + if (t.isZero()) return new a(1).toRed(this); + if (0 === t.cmpn(1)) return e.clone(); + var i = 4, + n = Array(16); + (n[0] = new a(1).toRed(this)), (n[1] = e); + for (var r = 2; r < n.length; r++) n[r] = this.mul(n[r - 1], e); + var o = n[0], + s = 0, + l = 0, + c = t.bitLength() % 26; + for (0 === c && (c = 26), r = t.length - 1; r >= 0; r--) { + for (var d = t.words[r], u = c - 1; u >= 0; u--) { + var f = (d >> u) & 1; + if ((o !== n[0] && (o = this.sqr(o)), 0 === f && 0 === s)) { + l = 0; + continue; + } + (s <<= 1), + (s |= f), + (++l === i || (0 === r && 0 === u)) && + ((o = this.mul(o, n[s])), (l = 0), (s = 0)); + } + c = 26; + } + return o; + }), + (M.prototype.convertTo = function (e) { + var t = e.umod(this.m); + return t === e ? t.clone() : t; + }), + (M.prototype.convertFrom = function (e) { + var t = e.clone(); + return (t.red = null), t; + }), + (a.mont = function (e) { + return new C(e); + }), + r(C, M), + (C.prototype.convertTo = function (e) { + return this.imod(e.ushln(this.shift)); + }), + (C.prototype.convertFrom = function (e) { + var t = this.imod(e.mul(this.rinv)); + return (t.red = null), t; + }), + (C.prototype.imul = function (e, t) { + if (e.isZero() || t.isZero()) + return (e.words[0] = 0), (e.length = 1), e; + var i = e.imul(t), + n = i + .maskn(this.shift) + .mul(this.minv) + .imaskn(this.shift) + .mul(this.m), + r = i.isub(n).iushrn(this.shift), + a = r; + return ( + r.cmp(this.m) >= 0 + ? (a = r.isub(this.m)) + : 0 > r.cmpn(0) && (a = r.iadd(this.m)), + a._forceRed(this) + ); + }), + (C.prototype.mul = function (e, t) { + if (e.isZero() || t.isZero()) return new a(0)._forceRed(this); + var i = e.mul(t), + n = i + .maskn(this.shift) + .mul(this.minv) + .imaskn(this.shift) + .mul(this.m), + r = i.isub(n).iushrn(this.shift), + o = r; + return ( + r.cmp(this.m) >= 0 + ? (o = r.isub(this.m)) + : 0 > r.cmpn(0) && (o = r.iadd(this.m)), + o._forceRed(this) + ); + }), + (C.prototype.invm = function (e) { + return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this); + }); + })((e = i.nmd(e)), this); + }, + 937385: function (e, t, i) { + !(function (e, t) { + "use strict"; + function n(e, t) { + if (!e) throw Error(t || "Assertion failed"); + } + function r(e, t) { + e.super_ = t; + var i = function () {}; + (i.prototype = t.prototype), + (e.prototype = new i()), + (e.prototype.constructor = e); + } + function a(e, t, i) { + if (a.isBN(e)) return e; + (this.negative = 0), + (this.words = null), + (this.length = 0), + (this.red = null), + null !== e && + (("le" === t || "be" === t) && ((i = t), (t = 10)), + this._init(e || 0, t || 10, i || "be")); + } + "object" == typeof e ? (e.exports = a) : (t.BN = a), + (a.BN = a), + (a.wordSize = 26); + try { + u = + "undefined" != typeof window && void 0 !== window.Buffer + ? window.Buffer + : i(639416).Buffer; + } catch (e) {} + function o(e, t) { + var i = e.charCodeAt(t); + if (i >= 48 && i <= 57) return i - 48; + if (i >= 65 && i <= 70) return i - 55; + if (i >= 97 && i <= 102) return i - 87; + else n(!1, "Invalid character in " + e); + } + function s(e, t, i) { + var n = o(e, i); + return i - 1 >= t && (n |= o(e, i - 1) << 4), n; + } + function l(e, t, i, r) { + for (var a = 0, o = 0, s = Math.min(e.length, i), l = t; l < s; l++) { + var c = e.charCodeAt(l) - 48; + (a *= r), + (o = c >= 49 ? c - 49 + 10 : c >= 17 ? c - 17 + 10 : c), + n(c >= 0 && o < r, "Invalid character"), + (a += o); + } + return a; + } + function c(e, t) { + (e.words = t.words), + (e.length = t.length), + (e.negative = t.negative), + (e.red = t.red); + } + if ( + ((a.isBN = function (e) { + return ( + e instanceof a || + (null !== e && + "object" == typeof e && + e.constructor.wordSize === a.wordSize && + Array.isArray(e.words)) + ); + }), + (a.max = function (e, t) { + return e.cmp(t) > 0 ? e : t; + }), + (a.min = function (e, t) { + return 0 > e.cmp(t) ? e : t; + }), + (a.prototype._init = function (e, t, i) { + if ("number" == typeof e) return this._initNumber(e, t, i); + if ("object" == typeof e) return this._initArray(e, t, i); + "hex" === t && (t = 16), + n(t === (0 | t) && t >= 2 && t <= 36), + (e = e.toString().replace(/\s+/g, "")); + var r = 0; + "-" === e[0] && (r++, (this.negative = 1)), + r < e.length && + (16 === t + ? this._parseHex(e, r, i) + : (this._parseBase(e, t, r), + "le" === i && this._initArray(this.toArray(), t, i))); + }), + (a.prototype._initNumber = function (e, t, i) { + e < 0 && ((this.negative = 1), (e = -e)), + e < 0x4000000 + ? ((this.words = [0x3ffffff & e]), (this.length = 1)) + : e < 0x10000000000000 + ? ((this.words = [0x3ffffff & e, (e / 0x4000000) & 0x3ffffff]), + (this.length = 2)) + : (n(e < 0x20000000000000), + (this.words = [ + 0x3ffffff & e, + (e / 0x4000000) & 0x3ffffff, + 1, + ]), + (this.length = 3)), + "le" === i && this._initArray(this.toArray(), t, i); + }), + (a.prototype._initArray = function (e, t, i) { + if ((n("number" == typeof e.length), e.length <= 0)) + return (this.words = [0]), (this.length = 1), this; + (this.length = Math.ceil(e.length / 3)), + (this.words = Array(this.length)); + for (var r, a, o = 0; o < this.length; o++) this.words[o] = 0; + var s = 0; + if ("be" === i) + for (o = e.length - 1, r = 0; o >= 0; o -= 3) + (a = e[o] | (e[o - 1] << 8) | (e[o - 2] << 16)), + (this.words[r] |= (a << s) & 0x3ffffff), + (this.words[r + 1] = (a >>> (26 - s)) & 0x3ffffff), + (s += 24) >= 26 && ((s -= 26), r++); + else if ("le" === i) + for (o = 0, r = 0; o < e.length; o += 3) + (a = e[o] | (e[o + 1] << 8) | (e[o + 2] << 16)), + (this.words[r] |= (a << s) & 0x3ffffff), + (this.words[r + 1] = (a >>> (26 - s)) & 0x3ffffff), + (s += 24) >= 26 && ((s -= 26), r++); + return this._strip(); + }), + (a.prototype._parseHex = function (e, t, i) { + (this.length = Math.ceil((e.length - t) / 6)), + (this.words = Array(this.length)); + for (var n, r = 0; r < this.length; r++) this.words[r] = 0; + var a = 0, + o = 0; + if ("be" === i) + for (r = e.length - 1; r >= t; r -= 2) + (n = s(e, t, r) << a), + (this.words[o] |= 0x3ffffff & n), + a >= 18 + ? ((a -= 18), (o += 1), (this.words[o] |= n >>> 26)) + : (a += 8); + else + for ( + r = (e.length - t) % 2 == 0 ? t + 1 : t; + r < e.length; + r += 2 + ) + (n = s(e, t, r) << a), + (this.words[o] |= 0x3ffffff & n), + a >= 18 + ? ((a -= 18), (o += 1), (this.words[o] |= n >>> 26)) + : (a += 8); + this._strip(); + }), + (a.prototype._parseBase = function (e, t, i) { + (this.words = [0]), (this.length = 1); + for (var n = 0, r = 1; r <= 0x3ffffff; r *= t) n++; + n--, (r = (r / t) | 0); + for ( + var a = e.length - i, + o = a % n, + s = Math.min(a, a - o) + i, + c = 0, + d = i; + d < s; + d += n + ) + (c = l(e, d, d + n, t)), + this.imuln(r), + this.words[0] + c < 0x4000000 + ? (this.words[0] += c) + : this._iaddn(c); + if (0 !== o) { + var u = 1; + for (c = l(e, d, e.length, t), d = 0; d < o; d++) u *= t; + this.imuln(u), + this.words[0] + c < 0x4000000 + ? (this.words[0] += c) + : this._iaddn(c); + } + this._strip(); + }), + (a.prototype.copy = function (e) { + e.words = Array(this.length); + for (var t = 0; t < this.length; t++) e.words[t] = this.words[t]; + (e.length = this.length), + (e.negative = this.negative), + (e.red = this.red); + }), + (a.prototype._move = function (e) { + c(e, this); + }), + (a.prototype.clone = function () { + var e = new a(null); + return this.copy(e), e; + }), + (a.prototype._expand = function (e) { + for (; this.length < e; ) this.words[this.length++] = 0; + return this; + }), + (a.prototype._strip = function () { + for (; this.length > 1 && 0 === this.words[this.length - 1]; ) + this.length--; + return this._normSign(); + }), + (a.prototype._normSign = function () { + return ( + 1 === this.length && 0 === this.words[0] && (this.negative = 0), + this + ); + }), + "undefined" != typeof Symbol && "function" == typeof Symbol.for) + ) + try { + a.prototype[Symbol.for("nodejs.util.inspect.custom")] = d; + } catch (e) { + a.prototype.inspect = d; + } + else a.prototype.inspect = d; + function d() { + return (this.red ? ""; + } + var u, + f = [ + "", + "0", + "00", + "000", + "0000", + "00000", + "000000", + "0000000", + "00000000", + "000000000", + "0000000000", + "00000000000", + "000000000000", + "0000000000000", + "00000000000000", + "000000000000000", + "0000000000000000", + "00000000000000000", + "000000000000000000", + "0000000000000000000", + "00000000000000000000", + "000000000000000000000", + "0000000000000000000000", + "00000000000000000000000", + "000000000000000000000000", + "0000000000000000000000000", + ], + h = [ + 0, 0, 25, 16, 12, 11, 10, 9, 8, 8, 7, 7, 7, 7, 6, 6, 6, 6, 6, 6, 6, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + ], + p = [ + 0, 0, 0x2000000, 0x290d741, 0x1000000, 0x2e90edd, 0x39aa400, + 0x267bf47, 0x1000000, 0x290d741, 1e7, 0x12959c3, 0x222c000, + 0x3bd7765, 7529536, 0xadcea1, 0x1000000, 0x1704f61, 0x206fc40, + 0x2cddcf9, 64e6, 4084101, 5153632, 6436343, 7962624, 9765625, + 0xb54ba0, 0xdaf26b, 0x1069c00, 0x138f9ad, 243e5, 0x1b4d89f, + 0x2000000, 0x25528a1, 0x2b54a20, 0x3216b93, 0x39aa400, + ]; + (a.prototype.toString = function (e, t) { + if (((t = 0 | t || 1), 16 === (e = e || 10) || "hex" === e)) { + i = ""; + for (var i, r = 0, a = 0, o = 0; o < this.length; o++) { + var s = this.words[o], + l = (((s << r) | a) & 0xffffff).toString(16); + (a = (s >>> (24 - r)) & 0xffffff), + (r += 2) >= 26 && ((r -= 26), o--), + (i = + 0 !== a || o !== this.length - 1 + ? f[6 - l.length] + l + i + : l + i); + } + for (0 !== a && (i = a.toString(16) + i); i.length % t != 0; ) + i = "0" + i; + return 0 !== this.negative && (i = "-" + i), i; + } + if (e === (0 | e) && e >= 2 && e <= 36) { + var c = h[e], + d = p[e]; + i = ""; + var u = this.clone(); + for (u.negative = 0; !u.isZero(); ) { + var v = u.modrn(d).toString(e); + i = (u = u.idivn(d)).isZero() ? v + i : f[c - v.length] + v + i; + } + for (this.isZero() && (i = "0" + i); i.length % t != 0; ) + i = "0" + i; + return 0 !== this.negative && (i = "-" + i), i; + } + n(!1, "Base should be between 2 and 36"); + }), + (a.prototype.toNumber = function () { + var e = this.words[0]; + return ( + 2 === this.length + ? (e += 0x4000000 * this.words[1]) + : 3 === this.length && 1 === this.words[2] + ? (e += 0x10000000000000 + 0x4000000 * this.words[1]) + : this.length > 2 && + n(!1, "Number can only safely store up to 53 bits"), + 0 !== this.negative ? -e : e + ); + }), + (a.prototype.toJSON = function () { + return this.toString(16, 2); + }), + u && + (a.prototype.toBuffer = function (e, t) { + return this.toArrayLike(u, e, t); + }), + (a.prototype.toArray = function (e, t) { + return this.toArrayLike(Array, e, t); + }); + var v = function (e, t) { + return e.allocUnsafe ? e.allocUnsafe(t) : new e(t); + }; + function m(e) { + for (var t = Array(e.bitLength()), i = 0; i < t.length; i++) { + var n = (i / 26) | 0, + r = i % 26; + t[i] = (e.words[n] >>> r) & 1; + } + return t; + } + function g(e, t, i) { + i.negative = t.negative ^ e.negative; + var n = (e.length + t.length) | 0; + (i.length = n), (n = (n - 1) | 0); + var r = 0 | e.words[0], + a = 0 | t.words[0], + o = r * a, + s = 0x3ffffff & o, + l = (o / 0x4000000) | 0; + i.words[0] = s; + for (var c = 1; c < n; c++) { + for ( + var d = l >>> 26, + u = 0x3ffffff & l, + f = Math.min(c, t.length - 1), + h = Math.max(0, c - e.length + 1); + h <= f; + h++ + ) { + var p = (c - h) | 0; + (r = 0 | e.words[p]), + (d += ((o = r * (a = 0 | t.words[h]) + u) / 0x4000000) | 0), + (u = 0x3ffffff & o); + } + (i.words[c] = 0 | u), (l = 0 | d); + } + return 0 !== l ? (i.words[c] = 0 | l) : i.length--, i._strip(); + } + (a.prototype.toArrayLike = function (e, t, i) { + this._strip(); + var r = this.byteLength(), + a = i || Math.max(1, r); + n(r <= a, "byte array longer than desired length"), + n(a > 0, "Requested array length <= 0"); + var o = v(e, a); + return this["_toArrayLike" + ("le" === t ? "LE" : "BE")](o, r), o; + }), + (a.prototype._toArrayLikeLE = function (e, t) { + for (var i = 0, n = 0, r = 0, a = 0; r < this.length; r++) { + var o = (this.words[r] << a) | n; + (e[i++] = 255 & o), + i < e.length && (e[i++] = (o >> 8) & 255), + i < e.length && (e[i++] = (o >> 16) & 255), + 6 === a + ? (i < e.length && (e[i++] = (o >> 24) & 255), + (n = 0), + (a = 0)) + : ((n = o >>> 24), (a += 2)); + } + if (i < e.length) for (e[i++] = n; i < e.length; ) e[i++] = 0; + }), + (a.prototype._toArrayLikeBE = function (e, t) { + for ( + var i = e.length - 1, n = 0, r = 0, a = 0; + r < this.length; + r++ + ) { + var o = (this.words[r] << a) | n; + (e[i--] = 255 & o), + i >= 0 && (e[i--] = (o >> 8) & 255), + i >= 0 && (e[i--] = (o >> 16) & 255), + 6 === a + ? (i >= 0 && (e[i--] = (o >> 24) & 255), (n = 0), (a = 0)) + : ((n = o >>> 24), (a += 2)); + } + if (i >= 0) for (e[i--] = n; i >= 0; ) e[i--] = 0; + }), + Math.clz32 + ? (a.prototype._countBits = function (e) { + return 32 - Math.clz32(e); + }) + : (a.prototype._countBits = function (e) { + var t = e, + i = 0; + return ( + t >= 4096 && ((i += 13), (t >>>= 13)), + t >= 64 && ((i += 7), (t >>>= 7)), + t >= 8 && ((i += 4), (t >>>= 4)), + t >= 2 && ((i += 2), (t >>>= 2)), + i + t + ); + }), + (a.prototype._zeroBits = function (e) { + if (0 === e) return 26; + var t = e, + i = 0; + return ( + (8191 & t) == 0 && ((i += 13), (t >>>= 13)), + (127 & t) == 0 && ((i += 7), (t >>>= 7)), + (15 & t) == 0 && ((i += 4), (t >>>= 4)), + (3 & t) == 0 && ((i += 2), (t >>>= 2)), + (1 & t) == 0 && i++, + i + ); + }), + (a.prototype.bitLength = function () { + var e = this.words[this.length - 1], + t = this._countBits(e); + return (this.length - 1) * 26 + t; + }), + (a.prototype.zeroBits = function () { + if (this.isZero()) return 0; + for (var e = 0, t = 0; t < this.length; t++) { + var i = this._zeroBits(this.words[t]); + if (((e += i), 26 !== i)) break; + } + return e; + }), + (a.prototype.byteLength = function () { + return Math.ceil(this.bitLength() / 8); + }), + (a.prototype.toTwos = function (e) { + return 0 !== this.negative + ? this.abs().inotn(e).iaddn(1) + : this.clone(); + }), + (a.prototype.fromTwos = function (e) { + return this.testn(e - 1) + ? this.notn(e).iaddn(1).ineg() + : this.clone(); + }), + (a.prototype.isNeg = function () { + return 0 !== this.negative; + }), + (a.prototype.neg = function () { + return this.clone().ineg(); + }), + (a.prototype.ineg = function () { + return !this.isZero() && (this.negative ^= 1), this; + }), + (a.prototype.iuor = function (e) { + for (; this.length < e.length; ) this.words[this.length++] = 0; + for (var t = 0; t < e.length; t++) + this.words[t] = this.words[t] | e.words[t]; + return this._strip(); + }), + (a.prototype.ior = function (e) { + return n((this.negative | e.negative) == 0), this.iuor(e); + }), + (a.prototype.or = function (e) { + return this.length > e.length + ? this.clone().ior(e) + : e.clone().ior(this); + }), + (a.prototype.uor = function (e) { + return this.length > e.length + ? this.clone().iuor(e) + : e.clone().iuor(this); + }), + (a.prototype.iuand = function (e) { + var t; + t = this.length > e.length ? e : this; + for (var i = 0; i < t.length; i++) + this.words[i] = this.words[i] & e.words[i]; + return (this.length = t.length), this._strip(); + }), + (a.prototype.iand = function (e) { + return n((this.negative | e.negative) == 0), this.iuand(e); + }), + (a.prototype.and = function (e) { + return this.length > e.length + ? this.clone().iand(e) + : e.clone().iand(this); + }), + (a.prototype.uand = function (e) { + return this.length > e.length + ? this.clone().iuand(e) + : e.clone().iuand(this); + }), + (a.prototype.iuxor = function (e) { + this.length > e.length + ? ((t = this), (i = e)) + : ((t = e), (i = this)); + for (var t, i, n = 0; n < i.length; n++) + this.words[n] = t.words[n] ^ i.words[n]; + if (this !== t) + for (; n < t.length; n++) this.words[n] = t.words[n]; + return (this.length = t.length), this._strip(); + }), + (a.prototype.ixor = function (e) { + return n((this.negative | e.negative) == 0), this.iuxor(e); + }), + (a.prototype.xor = function (e) { + return this.length > e.length + ? this.clone().ixor(e) + : e.clone().ixor(this); + }), + (a.prototype.uxor = function (e) { + return this.length > e.length + ? this.clone().iuxor(e) + : e.clone().iuxor(this); + }), + (a.prototype.inotn = function (e) { + n("number" == typeof e && e >= 0); + var t = 0 | Math.ceil(e / 26), + i = e % 26; + this._expand(t), i > 0 && t--; + for (var r = 0; r < t; r++) + this.words[r] = 0x3ffffff & ~this.words[r]; + return ( + i > 0 && + (this.words[r] = ~this.words[r] & (0x3ffffff >> (26 - i))), + this._strip() + ); + }), + (a.prototype.notn = function (e) { + return this.clone().inotn(e); + }), + (a.prototype.setn = function (e, t) { + n("number" == typeof e && e >= 0); + var i = (e / 26) | 0, + r = e % 26; + return ( + this._expand(i + 1), + t + ? (this.words[i] = this.words[i] | (1 << r)) + : (this.words[i] = this.words[i] & ~(1 << r)), + this._strip() + ); + }), + (a.prototype.iadd = function (e) { + if (0 !== this.negative && 0 === e.negative) + return ( + (this.negative = 0), + (t = this.isub(e)), + (this.negative ^= 1), + this._normSign() + ); + if (0 === this.negative && 0 !== e.negative) + return ( + (e.negative = 0), + (t = this.isub(e)), + (e.negative = 1), + t._normSign() + ); + this.length > e.length + ? ((i = this), (n = e)) + : ((i = e), (n = this)); + for (var t, i, n, r = 0, a = 0; a < n.length; a++) + (t = (0 | i.words[a]) + (0 | n.words[a]) + r), + (this.words[a] = 0x3ffffff & t), + (r = t >>> 26); + for (; 0 !== r && a < i.length; a++) + (t = (0 | i.words[a]) + r), + (this.words[a] = 0x3ffffff & t), + (r = t >>> 26); + if (((this.length = i.length), 0 !== r)) + (this.words[this.length] = r), this.length++; + else if (i !== this) + for (; a < i.length; a++) this.words[a] = i.words[a]; + return this; + }), + (a.prototype.add = function (e) { + var t; + return 0 !== e.negative && 0 === this.negative + ? ((e.negative = 0), (t = this.sub(e)), (e.negative ^= 1), t) + : 0 === e.negative && 0 !== this.negative + ? ((this.negative = 0), (t = e.sub(this)), (this.negative = 1), t) + : this.length > e.length + ? this.clone().iadd(e) + : e.clone().iadd(this); + }), + (a.prototype.isub = function (e) { + if (0 !== e.negative) { + e.negative = 0; + var t, + i, + n = this.iadd(e); + return (e.negative = 1), n._normSign(); + } + if (0 !== this.negative) + return ( + (this.negative = 0), + this.iadd(e), + (this.negative = 1), + this._normSign() + ); + var r = this.cmp(e); + if (0 === r) + return ( + (this.negative = 0), + (this.length = 1), + (this.words[0] = 0), + this + ); + r > 0 ? ((t = this), (i = e)) : ((t = e), (i = this)); + for (var a = 0, o = 0; o < i.length; o++) + (a = (n = (0 | t.words[o]) - (0 | i.words[o]) + a) >> 26), + (this.words[o] = 0x3ffffff & n); + for (; 0 !== a && o < t.length; o++) + (a = (n = (0 | t.words[o]) + a) >> 26), + (this.words[o] = 0x3ffffff & n); + if (0 === a && o < t.length && t !== this) + for (; o < t.length; o++) this.words[o] = t.words[o]; + return ( + (this.length = Math.max(this.length, o)), + t !== this && (this.negative = 1), + this._strip() + ); + }), + (a.prototype.sub = function (e) { + return this.clone().isub(e); + }); + var _ = function (e, t, i) { + var n, + r, + a, + o = e.words, + s = t.words, + l = i.words, + c = 0, + d = 0 | o[0], + u = 8191 & d, + f = d >>> 13, + h = 0 | o[1], + p = 8191 & h, + v = h >>> 13, + m = 0 | o[2], + g = 8191 & m, + _ = m >>> 13, + y = 0 | o[3], + b = 8191 & y, + I = y >>> 13, + w = 0 | o[4], + x = 8191 & w, + S = w >>> 13, + M = 0 | o[5], + C = 8191 & M, + T = M >>> 13, + A = 0 | o[6], + k = 8191 & A, + P = A >>> 13, + E = 0 | o[7], + D = 8191 & E, + R = E >>> 13, + N = 0 | o[8], + L = 8191 & N, + j = N >>> 13, + O = 0 | o[9], + B = 8191 & O, + F = O >>> 13, + U = 0 | s[0], + G = 8191 & U, + z = U >>> 13, + V = 0 | s[1], + W = 8191 & V, + Z = V >>> 13, + K = 0 | s[2], + H = 8191 & K, + q = K >>> 13, + J = 0 | s[3], + Y = 8191 & J, + Q = J >>> 13, + X = 0 | s[4], + $ = 8191 & X, + ee = X >>> 13, + et = 0 | s[5], + ei = 8191 & et, + en = et >>> 13, + er = 0 | s[6], + ea = 8191 & er, + eo = er >>> 13, + es = 0 | s[7], + el = 8191 & es, + ec = es >>> 13, + ed = 0 | s[8], + eu = 8191 & ed, + ef = ed >>> 13, + eh = 0 | s[9], + ep = 8191 & eh, + ev = eh >>> 13; + (i.negative = e.negative ^ t.negative), + (i.length = 19), + (n = Math.imul(u, G)), + (r = ((r = Math.imul(u, z)) + Math.imul(f, G)) | 0); + var em = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = ((((a = Math.imul(f, z)) + (r >>> 13)) | 0) + (em >>> 26)) | 0), + (em &= 0x3ffffff), + (n = Math.imul(p, G)), + (r = ((r = Math.imul(p, z)) + Math.imul(v, G)) | 0), + (a = Math.imul(v, z)), + (n = (n + Math.imul(u, W)) | 0), + (r = ((r = (r + Math.imul(u, Z)) | 0) + Math.imul(f, W)) | 0); + var eg = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, Z)) | 0) + (r >>> 13)) | 0) + + (eg >>> 26)) | + 0), + (eg &= 0x3ffffff), + (n = Math.imul(g, G)), + (r = ((r = Math.imul(g, z)) + Math.imul(_, G)) | 0), + (a = Math.imul(_, z)), + (n = (n + Math.imul(p, W)) | 0), + (r = ((r = (r + Math.imul(p, Z)) | 0) + Math.imul(v, W)) | 0), + (a = (a + Math.imul(v, Z)) | 0), + (n = (n + Math.imul(u, H)) | 0), + (r = ((r = (r + Math.imul(u, q)) | 0) + Math.imul(f, H)) | 0); + var e_ = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, q)) | 0) + (r >>> 13)) | 0) + + (e_ >>> 26)) | + 0), + (e_ &= 0x3ffffff), + (n = Math.imul(b, G)), + (r = ((r = Math.imul(b, z)) + Math.imul(I, G)) | 0), + (a = Math.imul(I, z)), + (n = (n + Math.imul(g, W)) | 0), + (r = ((r = (r + Math.imul(g, Z)) | 0) + Math.imul(_, W)) | 0), + (a = (a + Math.imul(_, Z)) | 0), + (n = (n + Math.imul(p, H)) | 0), + (r = ((r = (r + Math.imul(p, q)) | 0) + Math.imul(v, H)) | 0), + (a = (a + Math.imul(v, q)) | 0), + (n = (n + Math.imul(u, Y)) | 0), + (r = ((r = (r + Math.imul(u, Q)) | 0) + Math.imul(f, Y)) | 0); + var ey = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, Q)) | 0) + (r >>> 13)) | 0) + + (ey >>> 26)) | + 0), + (ey &= 0x3ffffff), + (n = Math.imul(x, G)), + (r = ((r = Math.imul(x, z)) + Math.imul(S, G)) | 0), + (a = Math.imul(S, z)), + (n = (n + Math.imul(b, W)) | 0), + (r = ((r = (r + Math.imul(b, Z)) | 0) + Math.imul(I, W)) | 0), + (a = (a + Math.imul(I, Z)) | 0), + (n = (n + Math.imul(g, H)) | 0), + (r = ((r = (r + Math.imul(g, q)) | 0) + Math.imul(_, H)) | 0), + (a = (a + Math.imul(_, q)) | 0), + (n = (n + Math.imul(p, Y)) | 0), + (r = ((r = (r + Math.imul(p, Q)) | 0) + Math.imul(v, Y)) | 0), + (a = (a + Math.imul(v, Q)) | 0), + (n = (n + Math.imul(u, $)) | 0), + (r = ((r = (r + Math.imul(u, ee)) | 0) + Math.imul(f, $)) | 0); + var eb = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, ee)) | 0) + (r >>> 13)) | 0) + + (eb >>> 26)) | + 0), + (eb &= 0x3ffffff), + (n = Math.imul(C, G)), + (r = ((r = Math.imul(C, z)) + Math.imul(T, G)) | 0), + (a = Math.imul(T, z)), + (n = (n + Math.imul(x, W)) | 0), + (r = ((r = (r + Math.imul(x, Z)) | 0) + Math.imul(S, W)) | 0), + (a = (a + Math.imul(S, Z)) | 0), + (n = (n + Math.imul(b, H)) | 0), + (r = ((r = (r + Math.imul(b, q)) | 0) + Math.imul(I, H)) | 0), + (a = (a + Math.imul(I, q)) | 0), + (n = (n + Math.imul(g, Y)) | 0), + (r = ((r = (r + Math.imul(g, Q)) | 0) + Math.imul(_, Y)) | 0), + (a = (a + Math.imul(_, Q)) | 0), + (n = (n + Math.imul(p, $)) | 0), + (r = ((r = (r + Math.imul(p, ee)) | 0) + Math.imul(v, $)) | 0), + (a = (a + Math.imul(v, ee)) | 0), + (n = (n + Math.imul(u, ei)) | 0), + (r = ((r = (r + Math.imul(u, en)) | 0) + Math.imul(f, ei)) | 0); + var eI = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, en)) | 0) + (r >>> 13)) | 0) + + (eI >>> 26)) | + 0), + (eI &= 0x3ffffff), + (n = Math.imul(k, G)), + (r = ((r = Math.imul(k, z)) + Math.imul(P, G)) | 0), + (a = Math.imul(P, z)), + (n = (n + Math.imul(C, W)) | 0), + (r = ((r = (r + Math.imul(C, Z)) | 0) + Math.imul(T, W)) | 0), + (a = (a + Math.imul(T, Z)) | 0), + (n = (n + Math.imul(x, H)) | 0), + (r = ((r = (r + Math.imul(x, q)) | 0) + Math.imul(S, H)) | 0), + (a = (a + Math.imul(S, q)) | 0), + (n = (n + Math.imul(b, Y)) | 0), + (r = ((r = (r + Math.imul(b, Q)) | 0) + Math.imul(I, Y)) | 0), + (a = (a + Math.imul(I, Q)) | 0), + (n = (n + Math.imul(g, $)) | 0), + (r = ((r = (r + Math.imul(g, ee)) | 0) + Math.imul(_, $)) | 0), + (a = (a + Math.imul(_, ee)) | 0), + (n = (n + Math.imul(p, ei)) | 0), + (r = ((r = (r + Math.imul(p, en)) | 0) + Math.imul(v, ei)) | 0), + (a = (a + Math.imul(v, en)) | 0), + (n = (n + Math.imul(u, ea)) | 0), + (r = ((r = (r + Math.imul(u, eo)) | 0) + Math.imul(f, ea)) | 0); + var ew = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, eo)) | 0) + (r >>> 13)) | 0) + + (ew >>> 26)) | + 0), + (ew &= 0x3ffffff), + (n = Math.imul(D, G)), + (r = ((r = Math.imul(D, z)) + Math.imul(R, G)) | 0), + (a = Math.imul(R, z)), + (n = (n + Math.imul(k, W)) | 0), + (r = ((r = (r + Math.imul(k, Z)) | 0) + Math.imul(P, W)) | 0), + (a = (a + Math.imul(P, Z)) | 0), + (n = (n + Math.imul(C, H)) | 0), + (r = ((r = (r + Math.imul(C, q)) | 0) + Math.imul(T, H)) | 0), + (a = (a + Math.imul(T, q)) | 0), + (n = (n + Math.imul(x, Y)) | 0), + (r = ((r = (r + Math.imul(x, Q)) | 0) + Math.imul(S, Y)) | 0), + (a = (a + Math.imul(S, Q)) | 0), + (n = (n + Math.imul(b, $)) | 0), + (r = ((r = (r + Math.imul(b, ee)) | 0) + Math.imul(I, $)) | 0), + (a = (a + Math.imul(I, ee)) | 0), + (n = (n + Math.imul(g, ei)) | 0), + (r = ((r = (r + Math.imul(g, en)) | 0) + Math.imul(_, ei)) | 0), + (a = (a + Math.imul(_, en)) | 0), + (n = (n + Math.imul(p, ea)) | 0), + (r = ((r = (r + Math.imul(p, eo)) | 0) + Math.imul(v, ea)) | 0), + (a = (a + Math.imul(v, eo)) | 0), + (n = (n + Math.imul(u, el)) | 0), + (r = ((r = (r + Math.imul(u, ec)) | 0) + Math.imul(f, el)) | 0); + var ex = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, ec)) | 0) + (r >>> 13)) | 0) + + (ex >>> 26)) | + 0), + (ex &= 0x3ffffff), + (n = Math.imul(L, G)), + (r = ((r = Math.imul(L, z)) + Math.imul(j, G)) | 0), + (a = Math.imul(j, z)), + (n = (n + Math.imul(D, W)) | 0), + (r = ((r = (r + Math.imul(D, Z)) | 0) + Math.imul(R, W)) | 0), + (a = (a + Math.imul(R, Z)) | 0), + (n = (n + Math.imul(k, H)) | 0), + (r = ((r = (r + Math.imul(k, q)) | 0) + Math.imul(P, H)) | 0), + (a = (a + Math.imul(P, q)) | 0), + (n = (n + Math.imul(C, Y)) | 0), + (r = ((r = (r + Math.imul(C, Q)) | 0) + Math.imul(T, Y)) | 0), + (a = (a + Math.imul(T, Q)) | 0), + (n = (n + Math.imul(x, $)) | 0), + (r = ((r = (r + Math.imul(x, ee)) | 0) + Math.imul(S, $)) | 0), + (a = (a + Math.imul(S, ee)) | 0), + (n = (n + Math.imul(b, ei)) | 0), + (r = ((r = (r + Math.imul(b, en)) | 0) + Math.imul(I, ei)) | 0), + (a = (a + Math.imul(I, en)) | 0), + (n = (n + Math.imul(g, ea)) | 0), + (r = ((r = (r + Math.imul(g, eo)) | 0) + Math.imul(_, ea)) | 0), + (a = (a + Math.imul(_, eo)) | 0), + (n = (n + Math.imul(p, el)) | 0), + (r = ((r = (r + Math.imul(p, ec)) | 0) + Math.imul(v, el)) | 0), + (a = (a + Math.imul(v, ec)) | 0), + (n = (n + Math.imul(u, eu)) | 0), + (r = ((r = (r + Math.imul(u, ef)) | 0) + Math.imul(f, eu)) | 0); + var eS = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, ef)) | 0) + (r >>> 13)) | 0) + + (eS >>> 26)) | + 0), + (eS &= 0x3ffffff), + (n = Math.imul(B, G)), + (r = ((r = Math.imul(B, z)) + Math.imul(F, G)) | 0), + (a = Math.imul(F, z)), + (n = (n + Math.imul(L, W)) | 0), + (r = ((r = (r + Math.imul(L, Z)) | 0) + Math.imul(j, W)) | 0), + (a = (a + Math.imul(j, Z)) | 0), + (n = (n + Math.imul(D, H)) | 0), + (r = ((r = (r + Math.imul(D, q)) | 0) + Math.imul(R, H)) | 0), + (a = (a + Math.imul(R, q)) | 0), + (n = (n + Math.imul(k, Y)) | 0), + (r = ((r = (r + Math.imul(k, Q)) | 0) + Math.imul(P, Y)) | 0), + (a = (a + Math.imul(P, Q)) | 0), + (n = (n + Math.imul(C, $)) | 0), + (r = ((r = (r + Math.imul(C, ee)) | 0) + Math.imul(T, $)) | 0), + (a = (a + Math.imul(T, ee)) | 0), + (n = (n + Math.imul(x, ei)) | 0), + (r = ((r = (r + Math.imul(x, en)) | 0) + Math.imul(S, ei)) | 0), + (a = (a + Math.imul(S, en)) | 0), + (n = (n + Math.imul(b, ea)) | 0), + (r = ((r = (r + Math.imul(b, eo)) | 0) + Math.imul(I, ea)) | 0), + (a = (a + Math.imul(I, eo)) | 0), + (n = (n + Math.imul(g, el)) | 0), + (r = ((r = (r + Math.imul(g, ec)) | 0) + Math.imul(_, el)) | 0), + (a = (a + Math.imul(_, ec)) | 0), + (n = (n + Math.imul(p, eu)) | 0), + (r = ((r = (r + Math.imul(p, ef)) | 0) + Math.imul(v, eu)) | 0), + (a = (a + Math.imul(v, ef)) | 0), + (n = (n + Math.imul(u, ep)) | 0), + (r = ((r = (r + Math.imul(u, ev)) | 0) + Math.imul(f, ep)) | 0); + var eM = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(f, ev)) | 0) + (r >>> 13)) | 0) + + (eM >>> 26)) | + 0), + (eM &= 0x3ffffff), + (n = Math.imul(B, W)), + (r = ((r = Math.imul(B, Z)) + Math.imul(F, W)) | 0), + (a = Math.imul(F, Z)), + (n = (n + Math.imul(L, H)) | 0), + (r = ((r = (r + Math.imul(L, q)) | 0) + Math.imul(j, H)) | 0), + (a = (a + Math.imul(j, q)) | 0), + (n = (n + Math.imul(D, Y)) | 0), + (r = ((r = (r + Math.imul(D, Q)) | 0) + Math.imul(R, Y)) | 0), + (a = (a + Math.imul(R, Q)) | 0), + (n = (n + Math.imul(k, $)) | 0), + (r = ((r = (r + Math.imul(k, ee)) | 0) + Math.imul(P, $)) | 0), + (a = (a + Math.imul(P, ee)) | 0), + (n = (n + Math.imul(C, ei)) | 0), + (r = ((r = (r + Math.imul(C, en)) | 0) + Math.imul(T, ei)) | 0), + (a = (a + Math.imul(T, en)) | 0), + (n = (n + Math.imul(x, ea)) | 0), + (r = ((r = (r + Math.imul(x, eo)) | 0) + Math.imul(S, ea)) | 0), + (a = (a + Math.imul(S, eo)) | 0), + (n = (n + Math.imul(b, el)) | 0), + (r = ((r = (r + Math.imul(b, ec)) | 0) + Math.imul(I, el)) | 0), + (a = (a + Math.imul(I, ec)) | 0), + (n = (n + Math.imul(g, eu)) | 0), + (r = ((r = (r + Math.imul(g, ef)) | 0) + Math.imul(_, eu)) | 0), + (a = (a + Math.imul(_, ef)) | 0), + (n = (n + Math.imul(p, ep)) | 0), + (r = ((r = (r + Math.imul(p, ev)) | 0) + Math.imul(v, ep)) | 0); + var eC = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(v, ev)) | 0) + (r >>> 13)) | 0) + + (eC >>> 26)) | + 0), + (eC &= 0x3ffffff), + (n = Math.imul(B, H)), + (r = ((r = Math.imul(B, q)) + Math.imul(F, H)) | 0), + (a = Math.imul(F, q)), + (n = (n + Math.imul(L, Y)) | 0), + (r = ((r = (r + Math.imul(L, Q)) | 0) + Math.imul(j, Y)) | 0), + (a = (a + Math.imul(j, Q)) | 0), + (n = (n + Math.imul(D, $)) | 0), + (r = ((r = (r + Math.imul(D, ee)) | 0) + Math.imul(R, $)) | 0), + (a = (a + Math.imul(R, ee)) | 0), + (n = (n + Math.imul(k, ei)) | 0), + (r = ((r = (r + Math.imul(k, en)) | 0) + Math.imul(P, ei)) | 0), + (a = (a + Math.imul(P, en)) | 0), + (n = (n + Math.imul(C, ea)) | 0), + (r = ((r = (r + Math.imul(C, eo)) | 0) + Math.imul(T, ea)) | 0), + (a = (a + Math.imul(T, eo)) | 0), + (n = (n + Math.imul(x, el)) | 0), + (r = ((r = (r + Math.imul(x, ec)) | 0) + Math.imul(S, el)) | 0), + (a = (a + Math.imul(S, ec)) | 0), + (n = (n + Math.imul(b, eu)) | 0), + (r = ((r = (r + Math.imul(b, ef)) | 0) + Math.imul(I, eu)) | 0), + (a = (a + Math.imul(I, ef)) | 0), + (n = (n + Math.imul(g, ep)) | 0), + (r = ((r = (r + Math.imul(g, ev)) | 0) + Math.imul(_, ep)) | 0); + var eT = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(_, ev)) | 0) + (r >>> 13)) | 0) + + (eT >>> 26)) | + 0), + (eT &= 0x3ffffff), + (n = Math.imul(B, Y)), + (r = ((r = Math.imul(B, Q)) + Math.imul(F, Y)) | 0), + (a = Math.imul(F, Q)), + (n = (n + Math.imul(L, $)) | 0), + (r = ((r = (r + Math.imul(L, ee)) | 0) + Math.imul(j, $)) | 0), + (a = (a + Math.imul(j, ee)) | 0), + (n = (n + Math.imul(D, ei)) | 0), + (r = ((r = (r + Math.imul(D, en)) | 0) + Math.imul(R, ei)) | 0), + (a = (a + Math.imul(R, en)) | 0), + (n = (n + Math.imul(k, ea)) | 0), + (r = ((r = (r + Math.imul(k, eo)) | 0) + Math.imul(P, ea)) | 0), + (a = (a + Math.imul(P, eo)) | 0), + (n = (n + Math.imul(C, el)) | 0), + (r = ((r = (r + Math.imul(C, ec)) | 0) + Math.imul(T, el)) | 0), + (a = (a + Math.imul(T, ec)) | 0), + (n = (n + Math.imul(x, eu)) | 0), + (r = ((r = (r + Math.imul(x, ef)) | 0) + Math.imul(S, eu)) | 0), + (a = (a + Math.imul(S, ef)) | 0), + (n = (n + Math.imul(b, ep)) | 0), + (r = ((r = (r + Math.imul(b, ev)) | 0) + Math.imul(I, ep)) | 0); + var eA = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(I, ev)) | 0) + (r >>> 13)) | 0) + + (eA >>> 26)) | + 0), + (eA &= 0x3ffffff), + (n = Math.imul(B, $)), + (r = ((r = Math.imul(B, ee)) + Math.imul(F, $)) | 0), + (a = Math.imul(F, ee)), + (n = (n + Math.imul(L, ei)) | 0), + (r = ((r = (r + Math.imul(L, en)) | 0) + Math.imul(j, ei)) | 0), + (a = (a + Math.imul(j, en)) | 0), + (n = (n + Math.imul(D, ea)) | 0), + (r = ((r = (r + Math.imul(D, eo)) | 0) + Math.imul(R, ea)) | 0), + (a = (a + Math.imul(R, eo)) | 0), + (n = (n + Math.imul(k, el)) | 0), + (r = ((r = (r + Math.imul(k, ec)) | 0) + Math.imul(P, el)) | 0), + (a = (a + Math.imul(P, ec)) | 0), + (n = (n + Math.imul(C, eu)) | 0), + (r = ((r = (r + Math.imul(C, ef)) | 0) + Math.imul(T, eu)) | 0), + (a = (a + Math.imul(T, ef)) | 0), + (n = (n + Math.imul(x, ep)) | 0), + (r = ((r = (r + Math.imul(x, ev)) | 0) + Math.imul(S, ep)) | 0); + var ek = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(S, ev)) | 0) + (r >>> 13)) | 0) + + (ek >>> 26)) | + 0), + (ek &= 0x3ffffff), + (n = Math.imul(B, ei)), + (r = ((r = Math.imul(B, en)) + Math.imul(F, ei)) | 0), + (a = Math.imul(F, en)), + (n = (n + Math.imul(L, ea)) | 0), + (r = ((r = (r + Math.imul(L, eo)) | 0) + Math.imul(j, ea)) | 0), + (a = (a + Math.imul(j, eo)) | 0), + (n = (n + Math.imul(D, el)) | 0), + (r = ((r = (r + Math.imul(D, ec)) | 0) + Math.imul(R, el)) | 0), + (a = (a + Math.imul(R, ec)) | 0), + (n = (n + Math.imul(k, eu)) | 0), + (r = ((r = (r + Math.imul(k, ef)) | 0) + Math.imul(P, eu)) | 0), + (a = (a + Math.imul(P, ef)) | 0), + (n = (n + Math.imul(C, ep)) | 0), + (r = ((r = (r + Math.imul(C, ev)) | 0) + Math.imul(T, ep)) | 0); + var eP = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(T, ev)) | 0) + (r >>> 13)) | 0) + + (eP >>> 26)) | + 0), + (eP &= 0x3ffffff), + (n = Math.imul(B, ea)), + (r = ((r = Math.imul(B, eo)) + Math.imul(F, ea)) | 0), + (a = Math.imul(F, eo)), + (n = (n + Math.imul(L, el)) | 0), + (r = ((r = (r + Math.imul(L, ec)) | 0) + Math.imul(j, el)) | 0), + (a = (a + Math.imul(j, ec)) | 0), + (n = (n + Math.imul(D, eu)) | 0), + (r = ((r = (r + Math.imul(D, ef)) | 0) + Math.imul(R, eu)) | 0), + (a = (a + Math.imul(R, ef)) | 0), + (n = (n + Math.imul(k, ep)) | 0), + (r = ((r = (r + Math.imul(k, ev)) | 0) + Math.imul(P, ep)) | 0); + var eE = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(P, ev)) | 0) + (r >>> 13)) | 0) + + (eE >>> 26)) | + 0), + (eE &= 0x3ffffff), + (n = Math.imul(B, el)), + (r = ((r = Math.imul(B, ec)) + Math.imul(F, el)) | 0), + (a = Math.imul(F, ec)), + (n = (n + Math.imul(L, eu)) | 0), + (r = ((r = (r + Math.imul(L, ef)) | 0) + Math.imul(j, eu)) | 0), + (a = (a + Math.imul(j, ef)) | 0), + (n = (n + Math.imul(D, ep)) | 0), + (r = ((r = (r + Math.imul(D, ev)) | 0) + Math.imul(R, ep)) | 0); + var eD = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(R, ev)) | 0) + (r >>> 13)) | 0) + + (eD >>> 26)) | + 0), + (eD &= 0x3ffffff), + (n = Math.imul(B, eu)), + (r = ((r = Math.imul(B, ef)) + Math.imul(F, eu)) | 0), + (a = Math.imul(F, ef)), + (n = (n + Math.imul(L, ep)) | 0), + (r = ((r = (r + Math.imul(L, ev)) | 0) + Math.imul(j, ep)) | 0); + var eR = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + (c = + ((((a = (a + Math.imul(j, ev)) | 0) + (r >>> 13)) | 0) + + (eR >>> 26)) | + 0), + (eR &= 0x3ffffff), + (n = Math.imul(B, ep)), + (r = ((r = Math.imul(B, ev)) + Math.imul(F, ep)) | 0); + var eN = (((c + n) | 0) + ((8191 & r) << 13)) | 0; + return ( + (c = + ((((a = Math.imul(F, ev)) + (r >>> 13)) | 0) + (eN >>> 26)) | 0), + (eN &= 0x3ffffff), + (l[0] = em), + (l[1] = eg), + (l[2] = e_), + (l[3] = ey), + (l[4] = eb), + (l[5] = eI), + (l[6] = ew), + (l[7] = ex), + (l[8] = eS), + (l[9] = eM), + (l[10] = eC), + (l[11] = eT), + (l[12] = eA), + (l[13] = ek), + (l[14] = eP), + (l[15] = eE), + (l[16] = eD), + (l[17] = eR), + (l[18] = eN), + 0 !== c && ((l[19] = c), i.length++), + i + ); + }; + function y(e, t, i) { + (i.negative = t.negative ^ e.negative), + (i.length = e.length + t.length); + for (var n = 0, r = 0, a = 0; a < i.length - 1; a++) { + var o = r; + r = 0; + for ( + var s = 0x3ffffff & n, + l = Math.min(a, t.length - 1), + c = Math.max(0, a - e.length + 1); + c <= l; + c++ + ) { + var d = a - c, + u = (0 | e.words[d]) * (0 | t.words[c]), + f = 0x3ffffff & u; + (o = (o + ((u / 0x4000000) | 0)) | 0), + (s = 0x3ffffff & (f = (f + s) | 0)), + (r += (o = (o + (f >>> 26)) | 0) >>> 26), + (o &= 0x3ffffff); + } + (i.words[a] = s), (n = o), (o = r); + } + return 0 !== n ? (i.words[a] = n) : i.length--, i._strip(); + } + function b(e, t, i) { + return y(e, t, i); + } + function I(e, t) { + (this.x = e), (this.y = t); + } + !Math.imul && (_ = g), + (a.prototype.mulTo = function (e, t) { + var i, + n = this.length + e.length; + return (i = + 10 === this.length && 10 === e.length + ? _(this, e, t) + : n < 63 + ? g(this, e, t) + : n < 1024 + ? y(this, e, t) + : b(this, e, t)); + }), + (I.prototype.makeRBT = function (e) { + for ( + var t = Array(e), i = a.prototype._countBits(e) - 1, n = 0; + n < e; + n++ + ) + t[n] = this.revBin(n, i, e); + return t; + }), + (I.prototype.revBin = function (e, t, i) { + if (0 === e || e === i - 1) return e; + for (var n = 0, r = 0; r < t; r++) + (n |= (1 & e) << (t - r - 1)), (e >>= 1); + return n; + }), + (I.prototype.permute = function (e, t, i, n, r, a) { + for (var o = 0; o < a; o++) (n[o] = t[e[o]]), (r[o] = i[e[o]]); + }), + (I.prototype.transform = function (e, t, i, n, r, a) { + this.permute(a, e, t, i, n, r); + for (var o = 1; o < r; o <<= 1) { + for ( + var s = o << 1, + l = Math.cos((2 * Math.PI) / s), + c = Math.sin((2 * Math.PI) / s), + d = 0; + d < r; + d += s + ) { + for (var u = l, f = c, h = 0; h < o; h++) { + var p = i[d + h], + v = n[d + h], + m = i[d + h + o], + g = n[d + h + o], + _ = u * m - f * g; + (g = u * g + f * m), + (m = _), + (i[d + h] = p + m), + (n[d + h] = v + g), + (i[d + h + o] = p - m), + (n[d + h + o] = v - g), + h !== s && + ((_ = l * u - c * f), (f = l * f + c * u), (u = _)); + } + } + } + }), + (I.prototype.guessLen13b = function (e, t) { + var i = 1 | Math.max(t, e), + n = 1 & i, + r = 0; + for (i = (i / 2) | 0; i; i >>>= 1) r++; + return 1 << (r + 1 + n); + }), + (I.prototype.conjugate = function (e, t, i) { + if (!(i <= 1)) + for (var n = 0; n < i / 2; n++) { + var r = e[n]; + (e[n] = e[i - n - 1]), + (e[i - n - 1] = r), + (r = t[n]), + (t[n] = -t[i - n - 1]), + (t[i - n - 1] = -r); + } + }), + (I.prototype.normalize13b = function (e, t) { + for (var i = 0, n = 0; n < t / 2; n++) { + var r = + 8192 * Math.round(e[2 * n + 1] / t) + + Math.round(e[2 * n] / t) + + i; + (e[n] = 0x3ffffff & r), + (i = r < 0x4000000 ? 0 : (r / 0x4000000) | 0); + } + return e; + }), + (I.prototype.convert13b = function (e, t, i, r) { + for (var a = 0, o = 0; o < t; o++) + (a += 0 | e[o]), + (i[2 * o] = 8191 & a), + (a >>>= 13), + (i[2 * o + 1] = 8191 & a), + (a >>>= 13); + for (o = 2 * t; o < r; ++o) i[o] = 0; + n(0 === a), n((-8192 & a) == 0); + }), + (I.prototype.stub = function (e) { + for (var t = Array(e), i = 0; i < e; i++) t[i] = 0; + return t; + }), + (I.prototype.mulp = function (e, t, i) { + var n = 2 * this.guessLen13b(e.length, t.length), + r = this.makeRBT(n), + a = this.stub(n), + o = Array(n), + s = Array(n), + l = Array(n), + c = Array(n), + d = Array(n), + u = Array(n), + f = i.words; + (f.length = n), + this.convert13b(e.words, e.length, o, n), + this.convert13b(t.words, t.length, c, n), + this.transform(o, a, s, l, n, r), + this.transform(c, a, d, u, n, r); + for (var h = 0; h < n; h++) { + var p = s[h] * d[h] - l[h] * u[h]; + (l[h] = s[h] * u[h] + l[h] * d[h]), (s[h] = p); + } + return ( + this.conjugate(s, l, n), + this.transform(s, l, f, a, n, r), + this.conjugate(f, a, n), + this.normalize13b(f, n), + (i.negative = e.negative ^ t.negative), + (i.length = e.length + t.length), + i._strip() + ); + }), + (a.prototype.mul = function (e) { + var t = new a(null); + return (t.words = Array(this.length + e.length)), this.mulTo(e, t); + }), + (a.prototype.mulf = function (e) { + var t = new a(null); + return (t.words = Array(this.length + e.length)), b(this, e, t); + }), + (a.prototype.imul = function (e) { + return this.clone().mulTo(e, this); + }), + (a.prototype.imuln = function (e) { + var t = e < 0; + t && (e = -e), n("number" == typeof e), n(e < 0x4000000); + for (var i = 0, r = 0; r < this.length; r++) { + var a = (0 | this.words[r]) * e, + o = (0x3ffffff & a) + (0x3ffffff & i); + (i >>= 26), + (i += ((a / 0x4000000) | 0) + (o >>> 26)), + (this.words[r] = 0x3ffffff & o); + } + return ( + 0 !== i && ((this.words[r] = i), this.length++), + t ? this.ineg() : this + ); + }), + (a.prototype.muln = function (e) { + return this.clone().imuln(e); + }), + (a.prototype.sqr = function () { + return this.mul(this); + }), + (a.prototype.isqr = function () { + return this.imul(this.clone()); + }), + (a.prototype.pow = function (e) { + var t = m(e); + if (0 === t.length) return new a(1); + for ( + var i = this, n = 0; + n < t.length && 0 === t[n]; + n++, i = i.sqr() + ); + if (++n < t.length) + for (var r = i.sqr(); n < t.length; n++, r = r.sqr()) + 0 !== t[n] && (i = i.mul(r)); + return i; + }), + (a.prototype.iushln = function (e) { + n("number" == typeof e && e >= 0); + var t, + i = e % 26, + r = (e - i) / 26, + a = (0x3ffffff >>> (26 - i)) << (26 - i); + if (0 !== i) { + var o = 0; + for (t = 0; t < this.length; t++) { + var s = this.words[t] & a, + l = ((0 | this.words[t]) - s) << i; + (this.words[t] = l | o), (o = s >>> (26 - i)); + } + o && ((this.words[t] = o), this.length++); + } + if (0 !== r) { + for (t = this.length - 1; t >= 0; t--) + this.words[t + r] = this.words[t]; + for (t = 0; t < r; t++) this.words[t] = 0; + this.length += r; + } + return this._strip(); + }), + (a.prototype.ishln = function (e) { + return n(0 === this.negative), this.iushln(e); + }), + (a.prototype.iushrn = function (e, t, i) { + n("number" == typeof e && e >= 0), + (r = t ? (t - (t % 26)) / 26 : 0); + var r, + a = e % 26, + o = Math.min((e - a) / 26, this.length), + s = 0x3ffffff ^ ((0x3ffffff >>> a) << a), + l = i; + if (((r -= o), (r = Math.max(0, r)), l)) { + for (var c = 0; c < o; c++) l.words[c] = this.words[c]; + l.length = o; + } + if (0 === o); + else if (this.length > o) + for (this.length -= o, c = 0; c < this.length; c++) + this.words[c] = this.words[c + o]; + else (this.words[0] = 0), (this.length = 1); + var d = 0; + for (c = this.length - 1; c >= 0 && (0 !== d || c >= r); c--) { + var u = 0 | this.words[c]; + (this.words[c] = (d << (26 - a)) | (u >>> a)), (d = u & s); + } + return ( + l && 0 !== d && (l.words[l.length++] = d), + 0 === this.length && ((this.words[0] = 0), (this.length = 1)), + this._strip() + ); + }), + (a.prototype.ishrn = function (e, t, i) { + return n(0 === this.negative), this.iushrn(e, t, i); + }), + (a.prototype.shln = function (e) { + return this.clone().ishln(e); + }), + (a.prototype.ushln = function (e) { + return this.clone().iushln(e); + }), + (a.prototype.shrn = function (e) { + return this.clone().ishrn(e); + }), + (a.prototype.ushrn = function (e) { + return this.clone().iushrn(e); + }), + (a.prototype.testn = function (e) { + n("number" == typeof e && e >= 0); + var t = e % 26, + i = (e - t) / 26, + r = 1 << t; + return !(this.length <= i) && !!(this.words[i] & r); + }), + (a.prototype.imaskn = function (e) { + n("number" == typeof e && e >= 0); + var t = e % 26, + i = (e - t) / 26; + if ( + (n( + 0 === this.negative, + "imaskn works only with positive numbers" + ), + this.length <= i) + ) + return this; + if ( + (0 !== t && i++, + (this.length = Math.min(i, this.length)), + 0 !== t) + ) { + var r = 0x3ffffff ^ ((0x3ffffff >>> t) << t); + this.words[this.length - 1] &= r; + } + return this._strip(); + }), + (a.prototype.maskn = function (e) { + return this.clone().imaskn(e); + }), + (a.prototype.iaddn = function (e) { + if ((n("number" == typeof e), n(e < 0x4000000), e < 0)) + return this.isubn(-e); + if (0 !== this.negative) + return 1 === this.length && (0 | this.words[0]) <= e + ? ((this.words[0] = e - (0 | this.words[0])), + (this.negative = 0), + this) + : ((this.negative = 0), + this.isubn(e), + (this.negative = 1), + this); + return this._iaddn(e); + }), + (a.prototype._iaddn = function (e) { + this.words[0] += e; + for (var t = 0; t < this.length && this.words[t] >= 0x4000000; t++) + (this.words[t] -= 0x4000000), + t === this.length - 1 + ? (this.words[t + 1] = 1) + : this.words[t + 1]++; + return (this.length = Math.max(this.length, t + 1)), this; + }), + (a.prototype.isubn = function (e) { + if ((n("number" == typeof e), n(e < 0x4000000), e < 0)) + return this.iaddn(-e); + if (0 !== this.negative) + return ( + (this.negative = 0), this.iaddn(e), (this.negative = 1), this + ); + if (((this.words[0] -= e), 1 === this.length && this.words[0] < 0)) + (this.words[0] = -this.words[0]), (this.negative = 1); + else + for (var t = 0; t < this.length && this.words[t] < 0; t++) + (this.words[t] += 0x4000000), (this.words[t + 1] -= 1); + return this._strip(); + }), + (a.prototype.addn = function (e) { + return this.clone().iaddn(e); + }), + (a.prototype.subn = function (e) { + return this.clone().isubn(e); + }), + (a.prototype.iabs = function () { + return (this.negative = 0), this; + }), + (a.prototype.abs = function () { + return this.clone().iabs(); + }), + (a.prototype._ishlnsubmul = function (e, t, i) { + var r, + a, + o = e.length + i; + this._expand(o); + var s = 0; + for (r = 0; r < e.length; r++) { + a = (0 | this.words[r + i]) + s; + var l = (0 | e.words[r]) * t; + (a -= 0x3ffffff & l), + (s = (a >> 26) - ((l / 0x4000000) | 0)), + (this.words[r + i] = 0x3ffffff & a); + } + for (; r < this.length - i; r++) + (s = (a = (0 | this.words[r + i]) + s) >> 26), + (this.words[r + i] = 0x3ffffff & a); + if (0 === s) return this._strip(); + for (n(-1 === s), s = 0, r = 0; r < this.length; r++) + (s = (a = -(0 | this.words[r]) + s) >> 26), + (this.words[r] = 0x3ffffff & a); + return (this.negative = 1), this._strip(); + }), + (a.prototype._wordDiv = function (e, t) { + var i, + n = this.length - e.length, + r = this.clone(), + o = e, + s = 0 | o.words[o.length - 1]; + 0 != (n = 26 - this._countBits(s)) && + ((o = o.ushln(n)), r.iushln(n), (s = 0 | o.words[o.length - 1])); + var l = r.length - o.length; + if ("mod" !== t) { + ((i = new a(null)).length = l + 1), (i.words = Array(i.length)); + for (var c = 0; c < i.length; c++) i.words[c] = 0; + } + var d = r.clone()._ishlnsubmul(o, 1, l); + 0 === d.negative && ((r = d), i && (i.words[l] = 1)); + for (var u = l - 1; u >= 0; u--) { + var f = + (0 | r.words[o.length + u]) * 0x4000000 + + (0 | r.words[o.length + u - 1]); + for ( + f = Math.min((f / s) | 0, 0x3ffffff), r._ishlnsubmul(o, f, u); + 0 !== r.negative; + + ) + f--, + (r.negative = 0), + r._ishlnsubmul(o, 1, u), + !r.isZero() && (r.negative ^= 1); + i && (i.words[u] = f); + } + return ( + i && i._strip(), + r._strip(), + "div" !== t && 0 !== n && r.iushrn(n), + { div: i || null, mod: r } + ); + }), + (a.prototype.divmod = function (e, t, i) { + var r, o, s; + if ((n(!e.isZero()), this.isZero())) + return { div: new a(0), mod: new a(0) }; + if (0 !== this.negative && 0 === e.negative) + return ( + (s = this.neg().divmod(e, t)), + "mod" !== t && (r = s.div.neg()), + "div" !== t && + ((o = s.mod.neg()), i && 0 !== o.negative && o.iadd(e)), + { div: r, mod: o } + ); + if (0 === this.negative && 0 !== e.negative) + return ( + (s = this.divmod(e.neg(), t)), + "mod" !== t && (r = s.div.neg()), + { div: r, mod: s.mod } + ); + if ((this.negative & e.negative) != 0) + return ( + (s = this.neg().divmod(e.neg(), t)), + "div" !== t && + ((o = s.mod.neg()), i && 0 !== o.negative && o.isub(e)), + { div: s.div, mod: o } + ); + if (e.length > this.length || 0 > this.cmp(e)) + return { div: new a(0), mod: this }; + if (1 === e.length) + return "div" === t + ? { div: this.divn(e.words[0]), mod: null } + : "mod" === t + ? { div: null, mod: new a(this.modrn(e.words[0])) } + : { + div: this.divn(e.words[0]), + mod: new a(this.modrn(e.words[0])), + }; + return this._wordDiv(e, t); + }), + (a.prototype.div = function (e) { + return this.divmod(e, "div", !1).div; + }), + (a.prototype.mod = function (e) { + return this.divmod(e, "mod", !1).mod; + }), + (a.prototype.umod = function (e) { + return this.divmod(e, "mod", !0).mod; + }), + (a.prototype.divRound = function (e) { + var t = this.divmod(e); + if (t.mod.isZero()) return t.div; + var i = 0 !== t.div.negative ? t.mod.isub(e) : t.mod, + n = e.ushrn(1), + r = e.andln(1), + a = i.cmp(n); + return a < 0 || (1 === r && 0 === a) + ? t.div + : 0 !== t.div.negative + ? t.div.isubn(1) + : t.div.iaddn(1); + }), + (a.prototype.modrn = function (e) { + var t = e < 0; + t && (e = -e), n(e <= 0x3ffffff); + for (var i = 0x4000000 % e, r = 0, a = this.length - 1; a >= 0; a--) + r = (i * r + (0 | this.words[a])) % e; + return t ? -r : r; + }), + (a.prototype.modn = function (e) { + return this.modrn(e); + }), + (a.prototype.idivn = function (e) { + var t = e < 0; + t && (e = -e), n(e <= 0x3ffffff); + for (var i = 0, r = this.length - 1; r >= 0; r--) { + var a = (0 | this.words[r]) + 0x4000000 * i; + (this.words[r] = (a / e) | 0), (i = a % e); + } + return this._strip(), t ? this.ineg() : this; + }), + (a.prototype.divn = function (e) { + return this.clone().idivn(e); + }), + (a.prototype.egcd = function (e) { + n(0 === e.negative), n(!e.isZero()); + var t = this, + i = e.clone(); + t = 0 !== t.negative ? t.umod(e) : t.clone(); + for ( + var r = new a(1), o = new a(0), s = new a(0), l = new a(1), c = 0; + t.isEven() && i.isEven(); + + ) + t.iushrn(1), i.iushrn(1), ++c; + for (var d = i.clone(), u = t.clone(); !t.isZero(); ) { + for ( + var f = 0, h = 1; + (t.words[0] & h) == 0 && f < 26; + ++f, h <<= 1 + ); + if (f > 0) + for (t.iushrn(f); f-- > 0; ) + (r.isOdd() || o.isOdd()) && (r.iadd(d), o.isub(u)), + r.iushrn(1), + o.iushrn(1); + for ( + var p = 0, v = 1; + (i.words[0] & v) == 0 && p < 26; + ++p, v <<= 1 + ); + if (p > 0) + for (i.iushrn(p); p-- > 0; ) + (s.isOdd() || l.isOdd()) && (s.iadd(d), l.isub(u)), + s.iushrn(1), + l.iushrn(1); + t.cmp(i) >= 0 + ? (t.isub(i), r.isub(s), o.isub(l)) + : (i.isub(t), s.isub(r), l.isub(o)); + } + return { a: s, b: l, gcd: i.iushln(c) }; + }), + (a.prototype._invmp = function (e) { + n(0 === e.negative), n(!e.isZero()); + var t, + i = this, + r = e.clone(); + i = 0 !== i.negative ? i.umod(e) : i.clone(); + for ( + var o = new a(1), s = new a(0), l = r.clone(); + i.cmpn(1) > 0 && r.cmpn(1) > 0; + + ) { + for ( + var c = 0, d = 1; + (i.words[0] & d) == 0 && c < 26; + ++c, d <<= 1 + ); + if (c > 0) + for (i.iushrn(c); c-- > 0; ) + o.isOdd() && o.iadd(l), o.iushrn(1); + for ( + var u = 0, f = 1; + (r.words[0] & f) == 0 && u < 26; + ++u, f <<= 1 + ); + if (u > 0) + for (r.iushrn(u); u-- > 0; ) + s.isOdd() && s.iadd(l), s.iushrn(1); + i.cmp(r) >= 0 ? (i.isub(r), o.isub(s)) : (r.isub(i), s.isub(o)); + } + return 0 > (t = 0 === i.cmpn(1) ? o : s).cmpn(0) && t.iadd(e), t; + }), + (a.prototype.gcd = function (e) { + if (this.isZero()) return e.abs(); + if (e.isZero()) return this.abs(); + var t = this.clone(), + i = e.clone(); + (t.negative = 0), (i.negative = 0); + for (var n = 0; t.isEven() && i.isEven(); n++) + t.iushrn(1), i.iushrn(1); + for (;;) { + for (; t.isEven(); ) t.iushrn(1); + for (; i.isEven(); ) i.iushrn(1); + var r = t.cmp(i); + if (r < 0) { + var a = t; + (t = i), (i = a); + } else if (0 === r || 0 === i.cmpn(1)) break; + t.isub(i); + } + return i.iushln(n); + }), + (a.prototype.invm = function (e) { + return this.egcd(e).a.umod(e); + }), + (a.prototype.isEven = function () { + return (1 & this.words[0]) == 0; + }), + (a.prototype.isOdd = function () { + return (1 & this.words[0]) == 1; + }), + (a.prototype.andln = function (e) { + return this.words[0] & e; + }), + (a.prototype.bincn = function (e) { + n("number" == typeof e); + var t = e % 26, + i = (e - t) / 26, + r = 1 << t; + if (this.length <= i) + return this._expand(i + 1), (this.words[i] |= r), this; + for (var a = r, o = i; 0 !== a && o < this.length; o++) { + var s = 0 | this.words[o]; + (s += a), (a = s >>> 26), (s &= 0x3ffffff), (this.words[o] = s); + } + return 0 !== a && ((this.words[o] = a), this.length++), this; + }), + (a.prototype.isZero = function () { + return 1 === this.length && 0 === this.words[0]; + }), + (a.prototype.cmpn = function (e) { + var t, + i = e < 0; + if (0 !== this.negative && !i) return -1; + if (0 === this.negative && i) return 1; + if ((this._strip(), this.length > 1)) t = 1; + else { + i && (e = -e), n(e <= 0x3ffffff, "Number is too big"); + var r = 0 | this.words[0]; + t = r === e ? 0 : r < e ? -1 : 1; + } + return 0 !== this.negative ? 0 | -t : t; + }), + (a.prototype.cmp = function (e) { + if (0 !== this.negative && 0 === e.negative) return -1; + if (0 === this.negative && 0 !== e.negative) return 1; + var t = this.ucmp(e); + return 0 !== this.negative ? 0 | -t : t; + }), + (a.prototype.ucmp = function (e) { + if (this.length > e.length) return 1; + if (this.length < e.length) return -1; + for (var t = 0, i = this.length - 1; i >= 0; i--) { + var n = 0 | this.words[i], + r = 0 | e.words[i]; + if (n !== r) { + n < r ? (t = -1) : n > r && (t = 1); + break; + } + } + return t; + }), + (a.prototype.gtn = function (e) { + return 1 === this.cmpn(e); + }), + (a.prototype.gt = function (e) { + return 1 === this.cmp(e); + }), + (a.prototype.gten = function (e) { + return this.cmpn(e) >= 0; + }), + (a.prototype.gte = function (e) { + return this.cmp(e) >= 0; + }), + (a.prototype.ltn = function (e) { + return -1 === this.cmpn(e); + }), + (a.prototype.lt = function (e) { + return -1 === this.cmp(e); + }), + (a.prototype.lten = function (e) { + return 0 >= this.cmpn(e); + }), + (a.prototype.lte = function (e) { + return 0 >= this.cmp(e); + }), + (a.prototype.eqn = function (e) { + return 0 === this.cmpn(e); + }), + (a.prototype.eq = function (e) { + return 0 === this.cmp(e); + }), + (a.red = function (e) { + return new A(e); + }), + (a.prototype.toRed = function (e) { + return ( + n(!this.red, "Already a number in reduction context"), + n(0 === this.negative, "red works only with positives"), + e.convertTo(this)._forceRed(e) + ); + }), + (a.prototype.fromRed = function () { + return ( + n( + this.red, + "fromRed works only with numbers in reduction context" + ), + this.red.convertFrom(this) + ); + }), + (a.prototype._forceRed = function (e) { + return (this.red = e), this; + }), + (a.prototype.forceRed = function (e) { + return ( + n(!this.red, "Already a number in reduction context"), + this._forceRed(e) + ); + }), + (a.prototype.redAdd = function (e) { + return ( + n(this.red, "redAdd works only with red numbers"), + this.red.add(this, e) + ); + }), + (a.prototype.redIAdd = function (e) { + return ( + n(this.red, "redIAdd works only with red numbers"), + this.red.iadd(this, e) + ); + }), + (a.prototype.redSub = function (e) { + return ( + n(this.red, "redSub works only with red numbers"), + this.red.sub(this, e) + ); + }), + (a.prototype.redISub = function (e) { + return ( + n(this.red, "redISub works only with red numbers"), + this.red.isub(this, e) + ); + }), + (a.prototype.redShl = function (e) { + return ( + n(this.red, "redShl works only with red numbers"), + this.red.shl(this, e) + ); + }), + (a.prototype.redMul = function (e) { + return ( + n(this.red, "redMul works only with red numbers"), + this.red._verify2(this, e), + this.red.mul(this, e) + ); + }), + (a.prototype.redIMul = function (e) { + return ( + n(this.red, "redMul works only with red numbers"), + this.red._verify2(this, e), + this.red.imul(this, e) + ); + }), + (a.prototype.redSqr = function () { + return ( + n(this.red, "redSqr works only with red numbers"), + this.red._verify1(this), + this.red.sqr(this) + ); + }), + (a.prototype.redISqr = function () { + return ( + n(this.red, "redISqr works only with red numbers"), + this.red._verify1(this), + this.red.isqr(this) + ); + }), + (a.prototype.redSqrt = function () { + return ( + n(this.red, "redSqrt works only with red numbers"), + this.red._verify1(this), + this.red.sqrt(this) + ); + }), + (a.prototype.redInvm = function () { + return ( + n(this.red, "redInvm works only with red numbers"), + this.red._verify1(this), + this.red.invm(this) + ); + }), + (a.prototype.redNeg = function () { + return ( + n(this.red, "redNeg works only with red numbers"), + this.red._verify1(this), + this.red.neg(this) + ); + }), + (a.prototype.redPow = function (e) { + return ( + n(this.red && !e.red, "redPow(normalNum)"), + this.red._verify1(this), + this.red.pow(this, e) + ); + }); + var w = { k256: null, p224: null, p192: null, p25519: null }; + function x(e, t) { + (this.name = e), + (this.p = new a(t, 16)), + (this.n = this.p.bitLength()), + (this.k = new a(1).iushln(this.n).isub(this.p)), + (this.tmp = this._tmp()); + } + function S() { + x.call( + this, + "k256", + "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f" + ); + } + function M() { + x.call( + this, + "p224", + "ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001" + ); + } + function C() { + x.call( + this, + "p192", + "ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff" + ); + } + function T() { + x.call( + this, + "25519", + "7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed" + ); + } + function A(e) { + if ("string" == typeof e) { + var t = a._prime(e); + (this.m = t.p), (this.prime = t); + } else + n(e.gtn(1), "modulus must be greater than 1"), + (this.m = e), + (this.prime = null); + } + function k(e) { + A.call(this, e), + (this.shift = this.m.bitLength()), + this.shift % 26 != 0 && (this.shift += 26 - (this.shift % 26)), + (this.r = new a(1).iushln(this.shift)), + (this.r2 = this.imod(this.r.sqr())), + (this.rinv = this.r._invmp(this.m)), + (this.minv = this.rinv.mul(this.r).isubn(1).div(this.m)), + (this.minv = this.minv.umod(this.r)), + (this.minv = this.r.sub(this.minv)); + } + (x.prototype._tmp = function () { + var e = new a(null); + return (e.words = Array(Math.ceil(this.n / 13))), e; + }), + (x.prototype.ireduce = function (e) { + var t, + i = e; + do + this.split(i, this.tmp), + (t = (i = (i = this.imulK(i)).iadd(this.tmp)).bitLength()); + while (t > this.n); + var n = t < this.n ? -1 : i.ucmp(this.p); + return ( + 0 === n + ? ((i.words[0] = 0), (i.length = 1)) + : n > 0 + ? i.isub(this.p) + : void 0 !== i.strip + ? i.strip() + : i._strip(), + i + ); + }), + (x.prototype.split = function (e, t) { + e.iushrn(this.n, 0, t); + }), + (x.prototype.imulK = function (e) { + return e.imul(this.k); + }), + r(S, x), + (S.prototype.split = function (e, t) { + for (var i = 4194303, n = Math.min(e.length, 9), r = 0; r < n; r++) + t.words[r] = e.words[r]; + if (((t.length = n), e.length <= 9)) { + (e.words[0] = 0), (e.length = 1); + return; + } + var a = e.words[9]; + for (r = 10, t.words[t.length++] = a & i; r < e.length; r++) { + var o = 0 | e.words[r]; + (e.words[r - 10] = ((o & i) << 4) | (a >>> 22)), (a = o); + } + (a >>>= 22), + (e.words[r - 10] = a), + 0 === a && e.length > 10 ? (e.length -= 10) : (e.length -= 9); + }), + (S.prototype.imulK = function (e) { + (e.words[e.length] = 0), + (e.words[e.length + 1] = 0), + (e.length += 2); + for (var t = 0, i = 0; i < e.length; i++) { + var n = 0 | e.words[i]; + (t += 977 * n), + (e.words[i] = 0x3ffffff & t), + (t = 64 * n + ((t / 0x4000000) | 0)); + } + return ( + 0 === e.words[e.length - 1] && + (e.length--, 0 === e.words[e.length - 1] && e.length--), + e + ); + }), + r(M, x), + r(C, x), + r(T, x), + (T.prototype.imulK = function (e) { + for (var t = 0, i = 0; i < e.length; i++) { + var n = (0 | e.words[i]) * 19 + t, + r = 0x3ffffff & n; + (n >>>= 26), (e.words[i] = r), (t = n); + } + return 0 !== t && (e.words[e.length++] = t), e; + }), + (a._prime = function (e) { + var t; + if (w[e]) return w[e]; + if ("k256" === e) t = new S(); + else if ("p224" === e) t = new M(); + else if ("p192" === e) t = new C(); + else if ("p25519" === e) t = new T(); + else throw Error("Unknown prime " + e); + return (w[e] = t), t; + }), + (A.prototype._verify1 = function (e) { + n(0 === e.negative, "red works only with positives"), + n(e.red, "red works only with red numbers"); + }), + (A.prototype._verify2 = function (e, t) { + n((e.negative | t.negative) == 0, "red works only with positives"), + n(e.red && e.red === t.red, "red works only with red numbers"); + }), + (A.prototype.imod = function (e) { + return this.prime + ? this.prime.ireduce(e)._forceRed(this) + : (c(e, e.umod(this.m)._forceRed(this)), e); + }), + (A.prototype.neg = function (e) { + return e.isZero() ? e.clone() : this.m.sub(e)._forceRed(this); + }), + (A.prototype.add = function (e, t) { + this._verify2(e, t); + var i = e.add(t); + return i.cmp(this.m) >= 0 && i.isub(this.m), i._forceRed(this); + }), + (A.prototype.iadd = function (e, t) { + this._verify2(e, t); + var i = e.iadd(t); + return i.cmp(this.m) >= 0 && i.isub(this.m), i; + }), + (A.prototype.sub = function (e, t) { + this._verify2(e, t); + var i = e.sub(t); + return 0 > i.cmpn(0) && i.iadd(this.m), i._forceRed(this); + }), + (A.prototype.isub = function (e, t) { + this._verify2(e, t); + var i = e.isub(t); + return 0 > i.cmpn(0) && i.iadd(this.m), i; + }), + (A.prototype.shl = function (e, t) { + return this._verify1(e), this.imod(e.ushln(t)); + }), + (A.prototype.imul = function (e, t) { + return this._verify2(e, t), this.imod(e.imul(t)); + }), + (A.prototype.mul = function (e, t) { + return this._verify2(e, t), this.imod(e.mul(t)); + }), + (A.prototype.isqr = function (e) { + return this.imul(e, e.clone()); + }), + (A.prototype.sqr = function (e) { + return this.mul(e, e); + }), + (A.prototype.sqrt = function (e) { + if (e.isZero()) return e.clone(); + var t = this.m.andln(3); + if ((n(t % 2 == 1), 3 === t)) { + var i = this.m.add(new a(1)).iushrn(2); + return this.pow(e, i); + } + for ( + var r = this.m.subn(1), o = 0; + !r.isZero() && 0 === r.andln(1); + + ) + o++, r.iushrn(1); + n(!r.isZero()); + var s = new a(1).toRed(this), + l = s.redNeg(), + c = this.m.subn(1).iushrn(1), + d = this.m.bitLength(); + for ( + d = new a(2 * d * d).toRed(this); + 0 !== this.pow(d, c).cmp(l); + + ) + d.redIAdd(l); + for ( + var u = this.pow(d, r), + f = this.pow(e, r.addn(1).iushrn(1)), + h = this.pow(e, r), + p = o; + 0 !== h.cmp(s); + + ) { + for (var v = h, m = 0; 0 !== v.cmp(s); m++) v = v.redSqr(); + n(m < p); + var g = this.pow(u, new a(1).iushln(p - m - 1)); + (f = f.redMul(g)), (u = g.redSqr()), (h = h.redMul(u)), (p = m); + } + return f; + }), + (A.prototype.invm = function (e) { + var t = e._invmp(this.m); + return 0 !== t.negative + ? ((t.negative = 0), this.imod(t).redNeg()) + : this.imod(t); + }), + (A.prototype.pow = function (e, t) { + if (t.isZero()) return new a(1).toRed(this); + if (0 === t.cmpn(1)) return e.clone(); + var i = 4, + n = Array(16); + (n[0] = new a(1).toRed(this)), (n[1] = e); + for (var r = 2; r < n.length; r++) n[r] = this.mul(n[r - 1], e); + var o = n[0], + s = 0, + l = 0, + c = t.bitLength() % 26; + for (0 === c && (c = 26), r = t.length - 1; r >= 0; r--) { + for (var d = t.words[r], u = c - 1; u >= 0; u--) { + var f = (d >> u) & 1; + if ((o !== n[0] && (o = this.sqr(o)), 0 === f && 0 === s)) { + l = 0; + continue; + } + (s <<= 1), + (s |= f), + (++l === i || (0 === r && 0 === u)) && + ((o = this.mul(o, n[s])), (l = 0), (s = 0)); + } + c = 26; + } + return o; + }), + (A.prototype.convertTo = function (e) { + var t = e.umod(this.m); + return t === e ? t.clone() : t; + }), + (A.prototype.convertFrom = function (e) { + var t = e.clone(); + return (t.red = null), t; + }), + (a.mont = function (e) { + return new k(e); + }), + r(k, A), + (k.prototype.convertTo = function (e) { + return this.imod(e.ushln(this.shift)); + }), + (k.prototype.convertFrom = function (e) { + var t = this.imod(e.mul(this.rinv)); + return (t.red = null), t; + }), + (k.prototype.imul = function (e, t) { + if (e.isZero() || t.isZero()) + return (e.words[0] = 0), (e.length = 1), e; + var i = e.imul(t), + n = i + .maskn(this.shift) + .mul(this.minv) + .imaskn(this.shift) + .mul(this.m), + r = i.isub(n).iushrn(this.shift), + a = r; + return ( + r.cmp(this.m) >= 0 + ? (a = r.isub(this.m)) + : 0 > r.cmpn(0) && (a = r.iadd(this.m)), + a._forceRed(this) + ); + }), + (k.prototype.mul = function (e, t) { + if (e.isZero() || t.isZero()) return new a(0)._forceRed(this); + var i = e.mul(t), + n = i + .maskn(this.shift) + .mul(this.minv) + .imaskn(this.shift) + .mul(this.m), + r = i.isub(n).iushrn(this.shift), + o = r; + return ( + r.cmp(this.m) >= 0 + ? (o = r.isub(this.m)) + : 0 > r.cmpn(0) && (o = r.iadd(this.m)), + o._forceRed(this) + ); + }), + (k.prototype.invm = function (e) { + return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this); + }); + })((e = i.nmd(e)), this); + }, + 462810: function (e, t, i) { + var n; + function r(e) { + this.rand = e; + } + if ( + ((e.exports = function (e) { + return !n && (n = new r(null)), n.generate(e); + }), + (e.exports.Rand = r), + (r.prototype.generate = function (e) { + return this._rand(e); + }), + (r.prototype._rand = function (e) { + if (this.rand.getBytes) return this.rand.getBytes(e); + for (var t = new Uint8Array(e), i = 0; i < t.length; i++) + t[i] = this.rand.getByte(); + return t; + }), + "object" == typeof self) + ) + self.crypto && self.crypto.getRandomValues + ? (r.prototype._rand = function (e) { + var t = new Uint8Array(e); + return self.crypto.getRandomValues(t), t; + }) + : self.msCrypto && self.msCrypto.getRandomValues + ? (r.prototype._rand = function (e) { + var t = new Uint8Array(e); + return self.msCrypto.getRandomValues(t), t; + }) + : "object" == typeof window && + (r.prototype._rand = function () { + throw Error("Not implemented yet"); + }); + else + try { + var a = i(285499); + if ("function" != typeof a.randomBytes) throw Error("Not supported"); + r.prototype._rand = function (e) { + return a.randomBytes(e); + }; + } catch (e) {} + }, + 869298: function (e, t, i) { + var n = i(140860).Buffer; + function r(e) { + !n.isBuffer(e) && (e = n.from(e)); + for (var t = (e.length / 4) | 0, i = Array(t), r = 0; r < t; r++) + i[r] = e.readUInt32BE(4 * r); + return i; + } + function a(e) { + for (var t = 0; t < e.length; e++) e[t] = 0; + } + function o(e, t, i, n, r) { + for ( + var a, + o, + s, + l, + c = i[0], + d = i[1], + u = i[2], + f = i[3], + h = e[0] ^ t[0], + p = e[1] ^ t[1], + v = e[2] ^ t[2], + m = e[3] ^ t[3], + g = 4, + _ = 1; + _ < r; + _++ + ) + (a = + c[h >>> 24] ^ + d[(p >>> 16) & 255] ^ + u[(v >>> 8) & 255] ^ + f[255 & m] ^ + t[g++]), + (o = + c[p >>> 24] ^ + d[(v >>> 16) & 255] ^ + u[(m >>> 8) & 255] ^ + f[255 & h] ^ + t[g++]), + (s = + c[v >>> 24] ^ + d[(m >>> 16) & 255] ^ + u[(h >>> 8) & 255] ^ + f[255 & p] ^ + t[g++]), + (l = + c[m >>> 24] ^ + d[(h >>> 16) & 255] ^ + u[(p >>> 8) & 255] ^ + f[255 & v] ^ + t[g++]), + (h = a), + (p = o), + (v = s), + (m = l); + return ( + (a = + ((n[h >>> 24] << 24) | + (n[(p >>> 16) & 255] << 16) | + (n[(v >>> 8) & 255] << 8) | + n[255 & m]) ^ + t[g++]), + (o = + ((n[p >>> 24] << 24) | + (n[(v >>> 16) & 255] << 16) | + (n[(m >>> 8) & 255] << 8) | + n[255 & h]) ^ + t[g++]), + (s = + ((n[v >>> 24] << 24) | + (n[(m >>> 16) & 255] << 16) | + (n[(h >>> 8) & 255] << 8) | + n[255 & p]) ^ + t[g++]), + (l = + ((n[m >>> 24] << 24) | + (n[(h >>> 16) & 255] << 16) | + (n[(p >>> 8) & 255] << 8) | + n[255 & v]) ^ + t[g++]), + [(a >>>= 0), (o >>>= 0), (s >>>= 0), (l >>>= 0)] + ); + } + var s = [0, 1, 2, 4, 8, 16, 32, 64, 128, 27, 54], + l = (function () { + for (var e = Array(256), t = 0; t < 256; t++) + t < 128 ? (e[t] = t << 1) : (e[t] = (t << 1) ^ 283); + for ( + var i = [], + n = [], + r = [[], [], [], []], + a = [[], [], [], []], + o = 0, + s = 0, + l = 0; + l < 256; + ++l + ) { + var c = s ^ (s << 1) ^ (s << 2) ^ (s << 3) ^ (s << 4); + (c = (c >>> 8) ^ (255 & c) ^ 99), (i[o] = c), (n[c] = o); + var d = e[o], + u = e[d], + f = e[u], + h = (257 * e[c]) ^ (0x1010100 * c); + (r[0][o] = (h << 24) | (h >>> 8)), + (r[1][o] = (h << 16) | (h >>> 16)), + (r[2][o] = (h << 8) | (h >>> 24)), + (r[3][o] = h), + (h = (0x1010101 * f) ^ (65537 * u) ^ (257 * d) ^ (0x1010100 * o)), + (a[0][c] = (h << 24) | (h >>> 8)), + (a[1][c] = (h << 16) | (h >>> 16)), + (a[2][c] = (h << 8) | (h >>> 24)), + (a[3][c] = h), + 0 === o + ? (o = s = 1) + : ((o = d ^ e[e[e[f ^ d]]]), (s ^= e[e[s]])); + } + return { SBOX: i, INV_SBOX: n, SUB_MIX: r, INV_SUB_MIX: a }; + })(); + function c(e) { + (this._key = r(e)), this._reset(); + } + (c.blockSize = 16), + (c.keySize = 32), + (c.prototype.blockSize = c.blockSize), + (c.prototype.keySize = c.keySize), + (c.prototype._reset = function () { + for ( + var e = this._key, + t = e.length, + i = t + 6, + n = (i + 1) * 4, + r = [], + a = 0; + a < t; + a++ + ) + r[a] = e[a]; + for (a = t; a < n; a++) { + var o = r[a - 1]; + a % t == 0 + ? ((o = (o << 8) | (o >>> 24)), + (o = + ((l.SBOX[o >>> 24] << 24) | + (l.SBOX[(o >>> 16) & 255] << 16) | + (l.SBOX[(o >>> 8) & 255] << 8) | + l.SBOX[255 & o]) ^ + (s[(a / t) | 0] << 24))) + : t > 6 && + a % t == 4 && + (o = + (l.SBOX[o >>> 24] << 24) | + (l.SBOX[(o >>> 16) & 255] << 16) | + (l.SBOX[(o >>> 8) & 255] << 8) | + l.SBOX[255 & o]), + (r[a] = r[a - t] ^ o); + } + for (var c = [], d = 0; d < n; d++) { + var u = n - d, + f = r[u - (d % 4 ? 0 : 4)]; + d < 4 || u <= 4 + ? (c[d] = f) + : (c[d] = + l.INV_SUB_MIX[0][l.SBOX[f >>> 24]] ^ + l.INV_SUB_MIX[1][l.SBOX[(f >>> 16) & 255]] ^ + l.INV_SUB_MIX[2][l.SBOX[(f >>> 8) & 255]] ^ + l.INV_SUB_MIX[3][l.SBOX[255 & f]]); + } + (this._nRounds = i), + (this._keySchedule = r), + (this._invKeySchedule = c); + }), + (c.prototype.encryptBlockRaw = function (e) { + return o( + (e = r(e)), + this._keySchedule, + l.SUB_MIX, + l.SBOX, + this._nRounds + ); + }), + (c.prototype.encryptBlock = function (e) { + var t = this.encryptBlockRaw(e), + i = n.allocUnsafe(16); + return ( + i.writeUInt32BE(t[0], 0), + i.writeUInt32BE(t[1], 4), + i.writeUInt32BE(t[2], 8), + i.writeUInt32BE(t[3], 12), + i + ); + }), + (c.prototype.decryptBlock = function (e) { + var t = (e = r(e))[1]; + (e[1] = e[3]), (e[3] = t); + var i = o( + e, + this._invKeySchedule, + l.INV_SUB_MIX, + l.INV_SBOX, + this._nRounds + ), + a = n.allocUnsafe(16); + return ( + a.writeUInt32BE(i[0], 0), + a.writeUInt32BE(i[3], 4), + a.writeUInt32BE(i[2], 8), + a.writeUInt32BE(i[1], 12), + a + ); + }), + (c.prototype.scrub = function () { + a(this._keySchedule), a(this._invKeySchedule), a(this._key); + }), + (e.exports.AES = c); + }, + 176135: function (e, t, i) { + var n = i(869298), + r = i(140860).Buffer, + a = i(23420), + o = i(32016), + s = i(901422), + l = i(355595), + c = i(662440); + function d(e, t) { + var i = 0; + e.length !== t.length && i++; + for (var n = Math.min(e.length, t.length), r = 0; r < n; ++r) + i += e[r] ^ t[r]; + return i; + } + function u(e, t, i) { + if (12 === t.length) + return ( + (e._finID = r.concat([t, r.from([0, 0, 0, 1])])), + r.concat([t, r.from([0, 0, 0, 2])]) + ); + var n = new s(i), + a = t.length, + o = a % 16; + n.update(t), + o && ((o = 16 - o), n.update(r.alloc(o, 0))), + n.update(r.alloc(8, 0)); + var l = 8 * a, + d = r.alloc(8); + d.writeUIntBE(l, 0, 8), n.update(d), (e._finID = n.state); + var u = r.from(e._finID); + return c(u), u; + } + function f(e, t, i, o) { + a.call(this); + var l = r.alloc(4, 0); + this._cipher = new n.AES(t); + var c = this._cipher.encryptBlock(l); + (this._ghash = new s(c)), + (i = u(this, i, c)), + (this._prev = r.from(i)), + (this._cache = r.allocUnsafe(0)), + (this._secCache = r.allocUnsafe(0)), + (this._decrypt = o), + (this._alen = 0), + (this._len = 0), + (this._mode = e), + (this._authTag = null), + (this._called = !1); + } + o(f, a), + (f.prototype._update = function (e) { + if (!this._called && this._alen) { + var t = 16 - (this._alen % 16); + t < 16 && ((t = r.alloc(t, 0)), this._ghash.update(t)); + } + this._called = !0; + var i = this._mode.encrypt(this, e); + return ( + this._decrypt ? this._ghash.update(e) : this._ghash.update(i), + (this._len += e.length), + i + ); + }), + (f.prototype._final = function () { + if (this._decrypt && !this._authTag) + throw Error("Unsupported state or unable to authenticate data"); + var e = l( + this._ghash.final(8 * this._alen, 8 * this._len), + this._cipher.encryptBlock(this._finID) + ); + if (this._decrypt && d(e, this._authTag)) + throw Error("Unsupported state or unable to authenticate data"); + (this._authTag = e), this._cipher.scrub(); + }), + (f.prototype.getAuthTag = function () { + if (this._decrypt || !r.isBuffer(this._authTag)) + throw Error("Attempting to get auth tag in unsupported state"); + return this._authTag; + }), + (f.prototype.setAuthTag = function (e) { + if (!this._decrypt) + throw Error("Attempting to set auth tag in unsupported state"); + this._authTag = e; + }), + (f.prototype.setAAD = function (e) { + if (this._called) + throw Error("Attempting to set AAD in unsupported state"); + this._ghash.update(e), (this._alen += e.length); + }), + (e.exports = f); + }, + 652217: function (e, t, i) { + var n = i(336744), + r = i(981966), + a = i(641601); + function o() { + return Object.keys(a); + } + (t.createCipher = t.Cipher = n.createCipher), + (t.createCipheriv = t.Cipheriv = n.createCipheriv), + (t.createDecipher = t.Decipher = r.createDecipher), + (t.createDecipheriv = t.Decipheriv = r.createDecipheriv), + (t.listCiphers = t.getCiphers = o); + }, + 981966: function (e, t, i) { + var n = i(176135), + r = i(140860).Buffer, + a = i(675464), + o = i(922539), + s = i(23420), + l = i(869298), + c = i(948881); + function d(e, t, i) { + s.call(this), + (this._cache = new u()), + (this._last = void 0), + (this._cipher = new l.AES(t)), + (this._prev = r.from(i)), + (this._mode = e), + (this._autopadding = !0); + } + function u() { + this.cache = r.allocUnsafe(0); + } + function f(e) { + var t = e[15]; + if (t < 1 || t > 16) throw Error("unable to decrypt data"); + for (var i = -1; ++i < t; ) + if (e[i + (16 - t)] !== t) throw Error("unable to decrypt data"); + if (16 !== t) return e.slice(0, 16 - t); + } + function h(e, t, i) { + var s = a[e.toLowerCase()]; + if (!s) throw TypeError("invalid suite type"); + if ( + ("string" == typeof i && (i = r.from(i)), + "GCM" !== s.mode && i.length !== s.iv) + ) + throw TypeError("invalid iv length " + i.length); + if (("string" == typeof t && (t = r.from(t)), t.length !== s.key / 8)) + throw TypeError("invalid key length " + t.length); + return "stream" === s.type + ? new o(s.module, t, i, !0) + : "auth" === s.type + ? new n(s.module, t, i, !0) + : new d(s.module, t, i); + } + function p(e, t) { + var i = a[e.toLowerCase()]; + if (!i) throw TypeError("invalid suite type"); + var n = c(t, !1, i.key, i.iv); + return h(e, n.key, n.iv); + } + i(32016)(d, s), + (d.prototype._update = function (e) { + this._cache.add(e); + for (var t, i, n = []; (t = this._cache.get(this._autopadding)); ) + (i = this._mode.decrypt(this, t)), n.push(i); + return r.concat(n); + }), + (d.prototype._final = function () { + var e = this._cache.flush(); + if (this._autopadding) return f(this._mode.decrypt(this, e)); + if (e) throw Error("data not multiple of block length"); + }), + (d.prototype.setAutoPadding = function (e) { + return (this._autopadding = !!e), this; + }), + (u.prototype.add = function (e) { + this.cache = r.concat([this.cache, e]); + }), + (u.prototype.get = function (e) { + var t; + if (e) { + if (this.cache.length > 16) + return ( + (t = this.cache.slice(0, 16)), + (this.cache = this.cache.slice(16)), + t + ); + } else if (this.cache.length >= 16) + return ( + (t = this.cache.slice(0, 16)), + (this.cache = this.cache.slice(16)), + t + ); + return null; + }), + (u.prototype.flush = function () { + if (this.cache.length) return this.cache; + }), + (t.createDecipher = p), + (t.createDecipheriv = h); + }, + 336744: function (e, t, i) { + var n = i(675464), + r = i(176135), + a = i(140860).Buffer, + o = i(922539), + s = i(23420), + l = i(869298), + c = i(948881); + function d(e, t, i) { + s.call(this), + (this._cache = new f()), + (this._cipher = new l.AES(t)), + (this._prev = a.from(i)), + (this._mode = e), + (this._autopadding = !0); + } + i(32016)(d, s), + (d.prototype._update = function (e) { + this._cache.add(e); + for (var t, i, n = []; (t = this._cache.get()); ) + (i = this._mode.encrypt(this, t)), n.push(i); + return a.concat(n); + }); + var u = a.alloc(16, 16); + function f() { + this.cache = a.allocUnsafe(0); + } + function h(e, t, i) { + var s = n[e.toLowerCase()]; + if (!s) throw TypeError("invalid suite type"); + if (("string" == typeof t && (t = a.from(t)), t.length !== s.key / 8)) + throw TypeError("invalid key length " + t.length); + if ( + ("string" == typeof i && (i = a.from(i)), + "GCM" !== s.mode && i.length !== s.iv) + ) + throw TypeError("invalid iv length " + i.length); + return "stream" === s.type + ? new o(s.module, t, i) + : "auth" === s.type + ? new r(s.module, t, i) + : new d(s.module, t, i); + } + function p(e, t) { + var i = n[e.toLowerCase()]; + if (!i) throw TypeError("invalid suite type"); + var r = c(t, !1, i.key, i.iv); + return h(e, r.key, r.iv); + } + (d.prototype._final = function () { + var e = this._cache.flush(); + if (this._autopadding) + return (e = this._mode.encrypt(this, e)), this._cipher.scrub(), e; + if (!e.equals(u)) + throw ( + (this._cipher.scrub(), Error("data not multiple of block length")) + ); + }), + (d.prototype.setAutoPadding = function (e) { + return (this._autopadding = !!e), this; + }), + (f.prototype.add = function (e) { + this.cache = a.concat([this.cache, e]); + }), + (f.prototype.get = function () { + if (this.cache.length > 15) { + var e = this.cache.slice(0, 16); + return (this.cache = this.cache.slice(16)), e; + } + return null; + }), + (f.prototype.flush = function () { + for ( + var e = 16 - this.cache.length, t = a.allocUnsafe(e), i = -1; + ++i < e; + + ) + t.writeUInt8(e, i); + return a.concat([this.cache, t]); + }), + (t.createCipheriv = h), + (t.createCipher = p); + }, + 901422: function (e, t, i) { + var n = i(140860).Buffer, + r = n.alloc(16, 0); + function a(e) { + return [ + e.readUInt32BE(0), + e.readUInt32BE(4), + e.readUInt32BE(8), + e.readUInt32BE(12), + ]; + } + function o(e) { + var t = n.allocUnsafe(16); + return ( + t.writeUInt32BE(e[0] >>> 0, 0), + t.writeUInt32BE(e[1] >>> 0, 4), + t.writeUInt32BE(e[2] >>> 0, 8), + t.writeUInt32BE(e[3] >>> 0, 12), + t + ); + } + function s(e) { + (this.h = e), + (this.state = n.alloc(16, 0)), + (this.cache = n.allocUnsafe(0)); + } + (s.prototype.ghash = function (e) { + for (var t = -1; ++t < e.length; ) this.state[t] ^= e[t]; + this._multiply(); + }), + (s.prototype._multiply = function () { + for (var e, t, i = a(this.h), n = [0, 0, 0, 0], r = -1; ++r < 128; ) { + for ( + (this.state[~~(r / 8)] & (1 << (7 - (r % 8)))) != 0 && + ((n[0] ^= i[0]), + (n[1] ^= i[1]), + (n[2] ^= i[2]), + (n[3] ^= i[3])), + t = (1 & i[3]) != 0, + e = 3; + e > 0; + e-- + ) + i[e] = (i[e] >>> 1) | ((1 & i[e - 1]) << 31); + (i[0] = i[0] >>> 1), t && (i[0] = -0x1f000000 ^ i[0]); + } + this.state = o(n); + }), + (s.prototype.update = function (e) { + var t; + for ( + this.cache = n.concat([this.cache, e]); + this.cache.length >= 16; + + ) + (t = this.cache.slice(0, 16)), + (this.cache = this.cache.slice(16)), + this.ghash(t); + }), + (s.prototype.final = function (e, t) { + return ( + this.cache.length && this.ghash(n.concat([this.cache, r], 16)), + this.ghash(o([0, e, 0, t])), + this.state + ); + }), + (e.exports = s); + }, + 662440: function (e) { + function t(e) { + for (var t, i = e.length; i--; ) + if (255 === (t = e.readUInt8(i))) e.writeUInt8(0, i); + else { + t++, e.writeUInt8(t, i); + break; + } + } + e.exports = t; + }, + 113781: function (e, t, i) { + var n = i(355595); + (t.encrypt = function (e, t) { + var i = n(t, e._prev); + return (e._prev = e._cipher.encryptBlock(i)), e._prev; + }), + (t.decrypt = function (e, t) { + var i = e._prev; + return (e._prev = t), n(e._cipher.decryptBlock(t), i); + }); + }, + 735287: function (e, t, i) { + var n = i(140860).Buffer, + r = i(355595); + function a(e, t, i) { + var a = t.length, + o = r(t, e._cache); + return ( + (e._cache = e._cache.slice(a)), + (e._prev = n.concat([e._prev, i ? t : o])), + o + ); + } + t.encrypt = function (e, t, i) { + for (var r, o = n.allocUnsafe(0); t.length; ) + if ( + (0 === e._cache.length && + ((e._cache = e._cipher.encryptBlock(e._prev)), + (e._prev = n.allocUnsafe(0))), + e._cache.length <= t.length) + ) + (r = e._cache.length), + (o = n.concat([o, a(e, t.slice(0, r), i)])), + (t = t.slice(r)); + else { + o = n.concat([o, a(e, t, i)]); + break; + } + return o; + }; + }, + 222386: function (e, t, i) { + var n = i(140860).Buffer; + function r(e, t, i) { + for (var n, r, o, s = -1, l = 8, c = 0; ++s < l; ) + (n = e._cipher.encryptBlock(e._prev)), + (r = t & (1 << (7 - s)) ? 128 : 0), + (c += (128 & (o = n[0] ^ r)) >> s % 8), + (e._prev = a(e._prev, i ? r : o)); + return c; + } + function a(e, t) { + var i = e.length, + r = -1, + a = n.allocUnsafe(e.length); + for (e = n.concat([e, n.from([t])]); ++r < i; ) + a[r] = (e[r] << 1) | (e[r + 1] >> 7); + return a; + } + t.encrypt = function (e, t, i) { + for (var a = t.length, o = n.allocUnsafe(a), s = -1; ++s < a; ) + o[s] = r(e, t[s], i); + return o; + }; + }, + 409789: function (e, t, i) { + var n = i(140860).Buffer; + function r(e, t, i) { + var r = e._cipher.encryptBlock(e._prev)[0] ^ t; + return (e._prev = n.concat([e._prev.slice(1), n.from([i ? t : r])])), r; + } + t.encrypt = function (e, t, i) { + for (var a = t.length, o = n.allocUnsafe(a), s = -1; ++s < a; ) + o[s] = r(e, t[s], i); + return o; + }; + }, + 868937: function (e, t, i) { + var n = i(355595), + r = i(140860).Buffer, + a = i(662440); + function o(e) { + var t = e._cipher.encryptBlockRaw(e._prev); + return a(e._prev), t; + } + var s = 16; + t.encrypt = function (e, t) { + var i = Math.ceil(t.length / s), + a = e._cache.length; + e._cache = r.concat([e._cache, r.allocUnsafe(i * s)]); + for (var l = 0; l < i; l++) { + var c = o(e), + d = a + l * s; + e._cache.writeUInt32BE(c[0], d + 0), + e._cache.writeUInt32BE(c[1], d + 4), + e._cache.writeUInt32BE(c[2], d + 8), + e._cache.writeUInt32BE(c[3], d + 12); + } + var u = e._cache.slice(0, t.length); + return (e._cache = e._cache.slice(t.length)), n(t, u); + }; + }, + 507714: function (e, t) { + (t.encrypt = function (e, t) { + return e._cipher.encryptBlock(t); + }), + (t.decrypt = function (e, t) { + return e._cipher.decryptBlock(t); + }); + }, + 675464: function (e, t, i) { + var n = { + ECB: i(507714), + CBC: i(113781), + CFB: i(735287), + CFB8: i(409789), + CFB1: i(222386), + OFB: i(82760), + CTR: i(868937), + GCM: i(868937), + }, + r = i(641601); + for (var a in r) r[a].module = n[r[a].mode]; + e.exports = r; + }, + 82760: function (e, t, i) { + var n = i(966465).Buffer, + r = i(355595); + function a(e) { + return (e._prev = e._cipher.encryptBlock(e._prev)), e._prev; + } + t.encrypt = function (e, t) { + for (; e._cache.length < t.length; ) + e._cache = n.concat([e._cache, a(e)]); + var i = e._cache.slice(0, t.length); + return (e._cache = e._cache.slice(t.length)), r(t, i); + }; + }, + 922539: function (e, t, i) { + var n = i(869298), + r = i(140860).Buffer, + a = i(23420); + function o(e, t, i, o) { + a.call(this), + (this._cipher = new n.AES(t)), + (this._prev = r.from(i)), + (this._cache = r.allocUnsafe(0)), + (this._secCache = r.allocUnsafe(0)), + (this._decrypt = o), + (this._mode = e); + } + i(32016)(o, a), + (o.prototype._update = function (e) { + return this._mode.encrypt(this, e, this._decrypt); + }), + (o.prototype._final = function () { + this._cipher.scrub(); + }), + (e.exports = o); + }, + 731600: function (e, t, i) { + var n = i(169923), + r = i(652217), + a = i(675464), + o = i(203708), + s = i(948881); + function l(e, t) { + if (a[(e = e.toLowerCase())]) (i = a[e].key), (n = a[e].iv); + else if (o[e]) (i = 8 * o[e].key), (n = o[e].iv); + else throw TypeError("invalid suite type"); + var i, + n, + r = s(t, !1, i, n); + return d(e, r.key, r.iv); + } + function c(e, t) { + if (a[(e = e.toLowerCase())]) (i = a[e].key), (n = a[e].iv); + else if (o[e]) (i = 8 * o[e].key), (n = o[e].iv); + else throw TypeError("invalid suite type"); + var i, + n, + r = s(t, !1, i, n); + return u(e, r.key, r.iv); + } + function d(e, t, i) { + if (a[(e = e.toLowerCase())]) return r.createCipheriv(e, t, i); + if (o[e]) return new n({ key: t, iv: i, mode: e }); + throw TypeError("invalid suite type"); + } + function u(e, t, i) { + if (a[(e = e.toLowerCase())]) return r.createDecipheriv(e, t, i); + if (o[e]) return new n({ key: t, iv: i, mode: e, decrypt: !0 }); + throw TypeError("invalid suite type"); + } + function f() { + return Object.keys(o).concat(r.getCiphers()); + } + (t.createCipher = t.Cipher = l), + (t.createCipheriv = t.Cipheriv = d), + (t.createDecipher = t.Decipher = c), + (t.createDecipheriv = t.Decipheriv = u), + (t.listCiphers = t.getCiphers = f); + }, + 169923: function (e, t, i) { + var n = i(23420), + r = i(445624), + a = i(32016), + o = i(140860).Buffer, + s = { + "des-ede3-cbc": r.CBC.instantiate(r.EDE), + "des-ede3": r.EDE, + "des-ede-cbc": r.CBC.instantiate(r.EDE), + "des-ede": r.EDE, + "des-cbc": r.CBC.instantiate(r.DES), + "des-ecb": r.DES, + }; + function l(e) { + n.call(this); + var t, + i = e.mode.toLowerCase(), + r = s[i]; + t = e.decrypt ? "decrypt" : "encrypt"; + var a = e.key; + !o.isBuffer(a) && (a = o.from(a)), + ("des-ede" === i || "des-ede-cbc" === i) && + (a = o.concat([a, a.slice(0, 8)])); + var l = e.iv; + !o.isBuffer(l) && (l = o.from(l)), + (this._des = r.create({ key: a, iv: l, type: t })); + } + (s.des = s["des-cbc"]), + (s.des3 = s["des-ede3-cbc"]), + (e.exports = l), + a(l, n), + (l.prototype._update = function (e) { + return o.from(this._des.update(e)); + }), + (l.prototype._final = function () { + return o.from(this._des.final()); + }); + }, + 203708: function (e, t) { + (t["des-ecb"] = { key: 8, iv: 0 }), + (t["des-cbc"] = t.des = { key: 8, iv: 8 }), + (t["des-ede3-cbc"] = t.des3 = { key: 24, iv: 8 }), + (t["des-ede3"] = { key: 24, iv: 0 }), + (t["des-ede-cbc"] = { key: 16, iv: 8 }), + (t["des-ede"] = { key: 16, iv: 0 }); + }, + 134558: function (e, t, i) { + var n = i(966465).Buffer, + r = i(937385), + a = i(203960); + function o(e) { + var t = s(e); + return { + blinder: t + .toRed(r.mont(e.modulus)) + .redPow(new r(e.publicExponent)) + .fromRed(), + unblinder: t.invm(e.modulus), + }; + } + function s(e) { + var t, + i = e.modulus.byteLength(); + do t = new r(a(i)); + while (t.cmp(e.modulus) >= 0 || !t.umod(e.prime1) || !t.umod(e.prime2)); + return t; + } + function l(e, t) { + var i = o(t), + a = t.modulus.byteLength(), + s = new r(e).mul(i.blinder).umod(t.modulus), + l = s.toRed(r.mont(t.prime1)), + c = s.toRed(r.mont(t.prime2)), + d = t.coefficient, + u = t.prime1, + f = t.prime2, + h = l.redPow(t.exponent1).fromRed(), + p = c.redPow(t.exponent2).fromRed(), + v = h.isub(p).imul(d).umod(u).imul(f); + return p + .iadd(v) + .imul(i.unblinder) + .umod(t.modulus) + .toArrayLike(n, "be", a); + } + (l.getr = s), (e.exports = l); + }, + 339515: function (e, t, i) { + "use strict"; + e.exports = i(773777); + }, + 182620: function (e, t, i) { + "use strict"; + var n = i(140860).Buffer, + r = i(669683), + a = i(324727), + o = i(32016), + s = i(872902), + l = i(812435), + c = i(773777); + function d(e) { + a.Writable.call(this); + var t = c[e]; + if (!t) throw Error("Unknown message digest"); + (this._hashType = t.hash), + (this._hash = r(t.hash)), + (this._tag = t.id), + (this._signType = t.sign); + } + function u(e) { + a.Writable.call(this); + var t = c[e]; + if (!t) throw Error("Unknown message digest"); + (this._hash = r(t.hash)), (this._tag = t.id), (this._signType = t.sign); + } + function f(e) { + return new d(e); + } + function h(e) { + return new u(e); + } + Object.keys(c).forEach(function (e) { + (c[e].id = n.from(c[e].id, "hex")), (c[e.toLowerCase()] = c[e]); + }), + o(d, a.Writable), + (d.prototype._write = function (e, t, i) { + this._hash.update(e), i(); + }), + (d.prototype.update = function (e, t) { + return ( + this._hash.update("string" == typeof e ? n.from(e, t) : e), this + ); + }), + (d.prototype.sign = function (e, t) { + this.end(); + var i = s( + this._hash.digest(), + e, + this._hashType, + this._signType, + this._tag + ); + return t ? i.toString(t) : i; + }), + o(u, a.Writable), + (u.prototype._write = function (e, t, i) { + this._hash.update(e), i(); + }), + (u.prototype.update = function (e, t) { + return ( + this._hash.update("string" == typeof e ? n.from(e, t) : e), this + ); + }), + (u.prototype.verify = function (e, t, i) { + var r = "string" == typeof t ? n.from(t, i) : t; + return ( + this.end(), l(r, this._hash.digest(), e, this._signType, this._tag) + ); + }), + (e.exports = { Sign: f, Verify: h, createSign: f, createVerify: h }); + }, + 872902: function (e, t, i) { + "use strict"; + var n = i(140860).Buffer, + r = i(193790), + a = i(134558), + o = i(506434).ec, + s = i(937385), + l = i(189939), + c = i(963079), + d = 1; + function u(e, t, i, r, o) { + var s = l(t); + if (s.curve) { + if ("ecdsa" !== r && "ecdsa/rsa" !== r) + throw Error("wrong private key type"); + return f(e, s); + } + if ("dsa" === s.type) { + if ("dsa" !== r) throw Error("wrong private key type"); + return h(e, s, i); + } + if ("rsa" !== r && "ecdsa/rsa" !== r) + throw Error("wrong private key type"); + if (void 0 !== t.padding && t.padding !== d) + throw Error("illegal or unsupported padding mode"); + e = n.concat([o, e]); + for ( + var c = s.modulus.byteLength(), u = [0, 1]; + e.length + u.length + 1 < c; + + ) + u.push(255); + u.push(0); + for (var p = -1; ++p < e.length; ) u.push(e[p]); + return a(u, s); + } + function f(e, t) { + var i = c[t.curve.join(".")]; + if (!i) throw Error("unknown curve " + t.curve.join(".")); + var r = new o(i).keyFromPrivate(t.privateKey).sign(e); + return n.from(r.toDER()); + } + function h(e, t, i) { + for ( + var n, + r = t.params.priv_key, + a = t.params.p, + o = t.params.q, + l = t.params.g, + c = new s(0), + d = m(e, o).mod(o), + u = !1, + f = v(r, o, e, i); + !1 === u; + + ) + (c = y(l, (n = _(o, f, i)), a, o)), + 0 === + (u = n + .invm(o) + .imul(d.add(r.mul(c))) + .mod(o)).cmpn(0) && ((u = !1), (c = new s(0))); + return p(c, u); + } + function p(e, t) { + (e = e.toArray()), + (t = t.toArray()), + 128 & e[0] && (e = [0].concat(e)), + 128 & t[0] && (t = [0].concat(t)); + var i = [48, e.length + t.length + 4, 2, e.length]; + return (i = i.concat(e, [2, t.length], t)), n.from(i); + } + function v(e, t, i, a) { + if ((e = n.from(e.toArray())).length < t.byteLength()) { + var o = n.alloc(t.byteLength() - e.length); + e = n.concat([o, e]); + } + var s = i.length, + l = g(i, t), + c = n.alloc(s); + c.fill(1); + var d = n.alloc(s); + return ( + (d = r(a, d) + .update(c) + .update(n.from([0])) + .update(e) + .update(l) + .digest()), + (c = r(a, d).update(c).digest()), + (d = r(a, d) + .update(c) + .update(n.from([1])) + .update(e) + .update(l) + .digest()), + (c = r(a, d).update(c).digest()), + { k: d, v: c } + ); + } + function m(e, t) { + var i = new s(e), + n = (e.length << 3) - t.bitLength(); + return n > 0 && i.ishrn(n), i; + } + function g(e, t) { + e = (e = m(e, t)).mod(t); + var i = n.from(e.toArray()); + if (i.length < t.byteLength()) { + var r = n.alloc(t.byteLength() - i.length); + i = n.concat([r, i]); + } + return i; + } + function _(e, t, i) { + var a, o; + do { + for (a = n.alloc(0); 8 * a.length < e.bitLength(); ) + (t.v = r(i, t.k).update(t.v).digest()), (a = n.concat([a, t.v])); + (o = m(a, e)), + (t.k = r(i, t.k) + .update(t.v) + .update(n.from([0])) + .digest()), + (t.v = r(i, t.k).update(t.v).digest()); + } while (-1 !== o.cmp(e)); + return o; + } + function y(e, t, i, n) { + return e.toRed(s.mont(i)).redPow(t).fromRed().mod(n); + } + (e.exports = u), (e.exports.getKey = v), (e.exports.makeKey = _); + }, + 812435: function (e, t, i) { + "use strict"; + var n = i(140860).Buffer, + r = i(937385), + a = i(506434).ec, + o = i(189939), + s = i(963079); + function l(e, t, i, a, s) { + var l = o(i); + if ("ec" === l.type) { + if ("ecdsa" !== a && "ecdsa/rsa" !== a) + throw Error("wrong public key type"); + return c(e, t, l); + } + if ("dsa" === l.type) { + if ("dsa" !== a) throw Error("wrong public key type"); + return d(e, t, l); + } + if ("rsa" !== a && "ecdsa/rsa" !== a) + throw Error("wrong public key type"); + t = n.concat([s, t]); + for ( + var u = l.modulus.byteLength(), f = [1], h = 0; + t.length + f.length + 2 < u; + + ) + f.push(255), (h += 1); + f.push(0); + for (var p = -1; ++p < t.length; ) f.push(t[p]); + f = n.from(f); + var v = r.mont(l.modulus); + (e = (e = new r(e).toRed(v)).redPow(new r(l.publicExponent))), + (e = n.from(e.fromRed().toArray())); + var m = h < 8 ? 1 : 0; + for ( + u = Math.min(e.length, f.length), + e.length !== f.length && (m = 1), + p = -1; + ++p < u; + + ) + m |= e[p] ^ f[p]; + return 0 === m; + } + function c(e, t, i) { + var n = s[i.data.algorithm.curve.join(".")]; + if (!n) + throw Error("unknown curve " + i.data.algorithm.curve.join(".")); + var r = new a(n), + o = i.data.subjectPrivateKey.data; + return r.verify(t, e, o); + } + function d(e, t, i) { + var n = i.data.p, + a = i.data.q, + s = i.data.g, + l = i.data.pub_key, + c = o.signature.decode(e, "der"), + d = c.s, + f = c.r; + u(d, a), u(f, a); + var h = r.mont(n), + p = d.invm(a); + return ( + 0 === + s + .toRed(h) + .redPow(new r(t).mul(p).mod(a)) + .fromRed() + .mul(l.toRed(h).redPow(f.mul(p).mod(a)).fromRed()) + .mod(n) + .mod(a) + .cmp(f) + ); + } + function u(e, t) { + if (0 >= e.cmpn(0) || e.cmp(t) >= 0) throw Error("invalid sig"); + } + e.exports = l; + }, + 355595: function (e, t, i) { + var n = i(966465).Buffer; + e.exports = function (e, t) { + for ( + var i = Math.min(e.length, t.length), r = new n(i), a = 0; + a < i; + ++a + ) + r[a] = e[a] ^ t[a]; + return r; + }; + }, + 23420: function (e, t, i) { + var n = i(140860).Buffer, + r = i(328266).Transform, + a = i(450251).StringDecoder; + function o(e) { + r.call(this), + (this.hashMode = "string" == typeof e), + this.hashMode + ? (this[e] = this._finalOrDigest) + : (this.final = this._finalOrDigest), + this._final && ((this.__final = this._final), (this._final = null)), + (this._decoder = null), + (this._encoding = null); + } + i(32016)(o, r), + (o.prototype.update = function (e, t, i) { + "string" == typeof e && (e = n.from(e, t)); + var r = this._update(e); + return this.hashMode ? this : (i && (r = this._toString(r, i)), r); + }), + (o.prototype.setAutoPadding = function () {}), + (o.prototype.getAuthTag = function () { + throw Error("trying to get auth tag in unsupported state"); + }), + (o.prototype.setAuthTag = function () { + throw Error("trying to set auth tag in unsupported state"); + }), + (o.prototype.setAAD = function () { + throw Error("trying to set aad in unsupported state"); + }), + (o.prototype._transform = function (e, t, i) { + var n; + try { + this.hashMode ? this._update(e) : this.push(this._update(e)); + } catch (e) { + n = e; + } finally { + i(n); + } + }), + (o.prototype._flush = function (e) { + var t; + try { + this.push(this.__final()); + } catch (e) { + t = e; + } + e(t); + }), + (o.prototype._finalOrDigest = function (e) { + var t = this.__final() || n.alloc(0); + return e && (t = this._toString(t, e, !0)), t; + }), + (o.prototype._toString = function (e, t, i) { + if ( + (!this._decoder && + ((this._decoder = new a(t)), (this._encoding = t)), + this._encoding !== t) + ) + throw Error("can't switch encodings"); + var n = this._decoder.write(e); + return i && (n += this._decoder.end()), n; + }), + (e.exports = o); + }, + 975952: function (e, t, i) { + function n(e) { + return Array.isArray ? Array.isArray(e) : "[object Array]" === g(e); + } + function r(e) { + return "boolean" == typeof e; + } + function a(e) { + return null === e; + } + function o(e) { + return null == e; + } + function s(e) { + return "number" == typeof e; + } + function l(e) { + return "string" == typeof e; + } + function c(e) { + return "symbol" == typeof e; + } + function d(e) { + return void 0 === e; + } + function u(e) { + return "[object RegExp]" === g(e); + } + function f(e) { + return "object" == typeof e && null !== e; + } + function h(e) { + return "[object Date]" === g(e); + } + function p(e) { + return "[object Error]" === g(e) || e instanceof Error; + } + function v(e) { + return "function" == typeof e; + } + function m(e) { + return ( + null === e || + "boolean" == typeof e || + "number" == typeof e || + "string" == typeof e || + "symbol" == typeof e || + void 0 === e + ); + } + function g(e) { + return Object.prototype.toString.call(e); + } + (t.isArray = n), + (t.isBoolean = r), + (t.isNull = a), + (t.isNullOrUndefined = o), + (t.isNumber = s), + (t.isString = l), + (t.isSymbol = c), + (t.isUndefined = d), + (t.isRegExp = u), + (t.isObject = f), + (t.isDate = h), + (t.isError = p), + (t.isFunction = v), + (t.isPrimitive = m), + (t.isBuffer = i(966465).Buffer.isBuffer); + }, + 41518: function (e, t, i) { + var n = i(966465).Buffer, + r = i(506434), + a = i(984826); + e.exports = function (e) { + return new s(e); + }; + var o = { + secp256k1: { name: "secp256k1", byteLength: 32 }, + secp224r1: { name: "p224", byteLength: 28 }, + prime256v1: { name: "p256", byteLength: 32 }, + prime192v1: { name: "p192", byteLength: 24 }, + ed25519: { name: "ed25519", byteLength: 32 }, + secp384r1: { name: "p384", byteLength: 48 }, + secp521r1: { name: "p521", byteLength: 66 }, + }; + function s(e) { + (this.curveType = o[e]), + !this.curveType && (this.curveType = { name: e }), + (this.curve = new r.ec(this.curveType.name)), + (this.keys = void 0); + } + function l(e, t, i) { + !Array.isArray(e) && (e = e.toArray()); + var r = new n(e); + if (i && r.length < i) { + var a = new n(i - r.length); + a.fill(0), (r = n.concat([a, r])); + } + return t ? r.toString(t) : r; + } + (o.p224 = o.secp224r1), + (o.p256 = o.secp256r1 = o.prime256v1), + (o.p192 = o.secp192r1 = o.prime192v1), + (o.p384 = o.secp384r1), + (o.p521 = o.secp521r1), + (s.prototype.generateKeys = function (e, t) { + return (this.keys = this.curve.genKeyPair()), this.getPublicKey(e, t); + }), + (s.prototype.computeSecret = function (e, t, i) { + return ( + (t = t || "utf8"), + !n.isBuffer(e) && (e = new n(e, t)), + l( + this.curve + .keyFromPublic(e) + .getPublic() + .mul(this.keys.getPrivate()) + .getX(), + i, + this.curveType.byteLength + ) + ); + }), + (s.prototype.getPublicKey = function (e, t) { + var i = this.keys.getPublic("compressed" === t, !0); + return ( + "hybrid" === t && (i[i.length - 1] % 2 ? (i[0] = 7) : (i[0] = 6)), + l(i, e) + ); + }), + (s.prototype.getPrivateKey = function (e) { + return l(this.keys.getPrivate(), e); + }), + (s.prototype.setPublicKey = function (e, t) { + return ( + (t = t || "utf8"), + !n.isBuffer(e) && (e = new n(e, t)), + this.keys._importPublic(e), + this + ); + }), + (s.prototype.setPrivateKey = function (e, t) { + (t = t || "utf8"), !n.isBuffer(e) && (e = new n(e, t)); + var i = new a(e); + return ( + (i = i.toString(16)), + (this.keys = this.curve.genKeyPair()), + this.keys._importPrivate(i), + this + ); + }); + }, + 669683: function (e, t, i) { + "use strict"; + var n = i(32016), + r = i(317511), + a = i(866818), + o = i(673664), + s = i(23420); + function l(e) { + s.call(this, "digest"), (this._hash = e); + } + n(l, s), + (l.prototype._update = function (e) { + this._hash.update(e); + }), + (l.prototype._final = function () { + return this._hash.digest(); + }), + (e.exports = function (e) { + return "md5" === (e = e.toLowerCase()) + ? new r() + : "rmd160" === e || "ripemd160" === e + ? new a() + : new l(o(e)); + }); + }, + 318042: function (e, t, i) { + var n = i(317511); + e.exports = function (e) { + return new n().update(e).digest(); + }; + }, + 193790: function (e, t, i) { + "use strict"; + var n = i(32016), + r = i(724779), + a = i(23420), + o = i(140860).Buffer, + s = i(318042), + l = i(866818), + c = i(673664), + d = o.alloc(128); + function u(e, t) { + a.call(this, "digest"), "string" == typeof t && (t = o.from(t)); + var i = "sha512" === e || "sha384" === e ? 128 : 64; + (this._alg = e), + (this._key = t), + t.length > i + ? (t = ("rmd160" === e ? new l() : c(e)).update(t).digest()) + : t.length < i && (t = o.concat([t, d], i)); + for ( + var n = (this._ipad = o.allocUnsafe(i)), + r = (this._opad = o.allocUnsafe(i)), + s = 0; + s < i; + s++ + ) + (n[s] = 54 ^ t[s]), (r[s] = 92 ^ t[s]); + (this._hash = "rmd160" === e ? new l() : c(e)), this._hash.update(n); + } + n(u, a), + (u.prototype._update = function (e) { + this._hash.update(e); + }), + (u.prototype._final = function () { + var e = this._hash.digest(); + return ("rmd160" === this._alg ? new l() : c(this._alg)) + .update(this._opad) + .update(e) + .digest(); + }), + (e.exports = function (e, t) { + return "rmd160" === (e = e.toLowerCase()) || "ripemd160" === e + ? new u("rmd160", t) + : "md5" === e + ? new r(s, t) + : new u(e, t); + }); + }, + 724779: function (e, t, i) { + "use strict"; + var n = i(32016), + r = i(140860).Buffer, + a = i(23420), + o = r.alloc(128), + s = 64; + function l(e, t) { + a.call(this, "digest"), + "string" == typeof t && (t = r.from(t)), + (this._alg = e), + (this._key = t), + t.length > s ? (t = e(t)) : t.length < s && (t = r.concat([t, o], s)); + for ( + var i = (this._ipad = r.allocUnsafe(s)), + n = (this._opad = r.allocUnsafe(s)), + l = 0; + l < s; + l++ + ) + (i[l] = 54 ^ t[l]), (n[l] = 92 ^ t[l]); + this._hash = [i]; + } + n(l, a), + (l.prototype._update = function (e) { + this._hash.push(e); + }), + (l.prototype._final = function () { + var e = this._alg(r.concat(this._hash)); + return this._alg(r.concat([this._opad, e])); + }), + (e.exports = l); + }, + 909854: function (e) { + !(function (t, i) { + e.exports = i(); + })(0, function () { + function e(a, o) { + if (!(this instanceof e)) return new e(a, o); + var s = Math.pow(10, (o = Object.assign({}, i, o)).precision); + (this.intValue = a = t(a, o)), + (this.value = a / s), + (o.increment = o.increment || 1 / s), + (o.groups = o.useVedic ? r : n), + (this.s = o), + (this.p = s); + } + function t(t, i) { + var n = + !(2 < arguments.length) || + void 0 === arguments[2] || + arguments[2], + r = i.decimal, + a = i.errorOnInvalid, + o = i.fromCents, + s = Math.pow(10, i.precision), + l = t instanceof e; + if (l && o) return t.intValue; + if ("number" == typeof t || l) r = l ? t.value : t; + else if ("string" == typeof t) + (a = RegExp("[^-\\d" + r + "]", "g")), + (r = RegExp("\\" + r, "g")), + (r = + (r = t + .replace(/\((.*)\)/, "-$1") + .replace(a, "") + .replace(r, ".")) || 0); + else { + if (a) throw Error("Invalid Input"); + r = 0; + } + return o || (r = (r * s).toFixed(4)), n ? Math.round(r) : r; + } + var i = { + symbol: "$", + separator: ",", + decimal: ".", + errorOnInvalid: !1, + precision: 2, + pattern: "!#", + negativePattern: "-!#", + format: function (e, t) { + var i = t.pattern, + n = t.negativePattern, + r = t.symbol, + a = t.separator, + o = t.decimal; + t = t.groups; + var s = ("" + e).replace(/^-/, "").split("."), + l = s[0]; + return ( + (s = s[1]), + (0 <= e.value ? i : n) + .replace("!", r) + .replace("#", l.replace(t, "$1" + a) + (s ? o + s : "")) + ); + }, + fromCents: !1, + }, + n = /(\d)(?=(\d{3})+\b)/g, + r = /(\d)(?=(\d\d)+\d\b)/g; + return ( + (e.prototype = { + add: function (i) { + var n = this.s, + r = this.p; + return e((this.intValue + t(i, n)) / (n.fromCents ? 1 : r), n); + }, + subtract: function (i) { + var n = this.s, + r = this.p; + return e((this.intValue - t(i, n)) / (n.fromCents ? 1 : r), n); + }, + multiply: function (t) { + var i = this.s; + return e( + (this.intValue * t) / + (i.fromCents ? 1 : Math.pow(10, i.precision)), + i + ); + }, + divide: function (i) { + var n = this.s; + return e(this.intValue / t(i, n, !1), n); + }, + distribute: function (t) { + var i = this.intValue, + n = this.p, + r = this.s, + a = [], + o = Math[0 <= i ? "floor" : "ceil"](i / t), + s = Math.abs(i - o * t); + for (n = r.fromCents ? 1 : n; 0 !== t; t--) { + var l = e(o / n, r); + 0 < s-- && (l = l[0 <= i ? "add" : "subtract"](1 / n)), + a.push(l); + } + return a; + }, + dollars: function () { + return ~~this.value; + }, + cents: function () { + return ~~(this.intValue % this.p); + }, + format: function (e) { + var t = this.s; + return "function" == typeof e + ? e(this, t) + : t.format(this, Object.assign({}, t, e)); + }, + toString: function () { + var e = this.s, + t = e.increment; + return (Math.round(this.intValue / this.p / t) * t).toFixed( + e.precision + ); + }, + toJSON: function () { + return this.value; + }, + }), + e + ); + }); + }, + 445624: function (e, t, i) { + "use strict"; + (t.utils = i(757426)), + (t.Cipher = i(150852)), + (t.DES = i(103722)), + (t.CBC = i(834068)), + (t.EDE = i(621099)); + }, + 834068: function (e, t, i) { + "use strict"; + var n = i(422555), + r = i(32016), + a = {}; + function o(e) { + n.equal(e.length, 8, "Invalid IV length"), (this.iv = Array(8)); + for (var t = 0; t < this.iv.length; t++) this.iv[t] = e[t]; + } + function s(e) { + function t(t) { + e.call(this, t), this._cbcInit(); + } + r(t, e); + for (var i = Object.keys(a), n = 0; n < i.length; n++) { + var o = i[n]; + t.prototype[o] = a[o]; + } + return ( + (t.create = function (e) { + return new t(e); + }), + t + ); + } + (t.instantiate = s), + (a._cbcInit = function () { + var e = new o(this.options.iv); + this._cbcState = e; + }), + (a._update = function (e, t, i, n) { + var r = this._cbcState, + a = this.constructor.super_.prototype, + o = r.iv; + if ("encrypt" === this.type) { + for (var s = 0; s < this.blockSize; s++) o[s] ^= e[t + s]; + a._update.call(this, o, 0, i, n); + for (var s = 0; s < this.blockSize; s++) o[s] = i[n + s]; + } else { + a._update.call(this, e, t, i, n); + for (var s = 0; s < this.blockSize; s++) i[n + s] ^= o[s]; + for (var s = 0; s < this.blockSize; s++) o[s] = e[t + s]; + } + }); + }, + 150852: function (e, t, i) { + "use strict"; + var n = i(422555); + function r(e) { + (this.options = e), + (this.type = this.options.type), + (this.blockSize = 8), + this._init(), + (this.buffer = Array(this.blockSize)), + (this.bufferOff = 0), + (this.padding = !1 !== e.padding); + } + (e.exports = r), + (r.prototype._init = function () {}), + (r.prototype.update = function (e) { + return 0 === e.length + ? [] + : "decrypt" === this.type + ? this._updateDecrypt(e) + : this._updateEncrypt(e); + }), + (r.prototype._buffer = function (e, t) { + for ( + var i = Math.min(this.buffer.length - this.bufferOff, e.length - t), + n = 0; + n < i; + n++ + ) + this.buffer[this.bufferOff + n] = e[t + n]; + return (this.bufferOff += i), i; + }), + (r.prototype._flushBuffer = function (e, t) { + return ( + this._update(this.buffer, 0, e, t), + (this.bufferOff = 0), + this.blockSize + ); + }), + (r.prototype._updateEncrypt = function (e) { + var t = 0, + i = 0, + n = Array( + (((this.bufferOff + e.length) / this.blockSize) | 0) * + this.blockSize + ); + 0 !== this.bufferOff && + ((t += this._buffer(e, t)), + this.bufferOff === this.buffer.length && + (i += this._flushBuffer(n, i))); + for ( + var r = e.length - ((e.length - t) % this.blockSize); + t < r; + t += this.blockSize + ) + this._update(e, t, n, i), (i += this.blockSize); + for (; t < e.length; t++, this.bufferOff++) + this.buffer[this.bufferOff] = e[t]; + return n; + }), + (r.prototype._updateDecrypt = function (e) { + for ( + var t = 0, + i = 0, + n = Math.ceil((this.bufferOff + e.length) / this.blockSize) - 1, + r = Array(n * this.blockSize); + n > 0; + n-- + ) + (t += this._buffer(e, t)), (i += this._flushBuffer(r, i)); + return (t += this._buffer(e, t)), r; + }), + (r.prototype.final = function (e) { + var t, i; + return (e && (t = this.update(e)), + (i = + "encrypt" === this.type + ? this._finalEncrypt() + : this._finalDecrypt()), + t) + ? t.concat(i) + : i; + }), + (r.prototype._pad = function (e, t) { + if (0 === t) return !1; + for (; t < e.length; ) e[t++] = 0; + return !0; + }), + (r.prototype._finalEncrypt = function () { + if (!this._pad(this.buffer, this.bufferOff)) return []; + var e = Array(this.blockSize); + return this._update(this.buffer, 0, e, 0), e; + }), + (r.prototype._unpad = function (e) { + return e; + }), + (r.prototype._finalDecrypt = function () { + n.equal(this.bufferOff, this.blockSize, "Not enough data to decrypt"); + var e = Array(this.blockSize); + return this._flushBuffer(e, 0), this._unpad(e); + }); + }, + 103722: function (e, t, i) { + "use strict"; + var n = i(422555), + r = i(32016), + a = i(757426), + o = i(150852); + function s() { + (this.tmp = [, ,]), (this.keys = null); + } + function l(e) { + o.call(this, e); + var t = new s(); + (this._desState = t), this.deriveKeys(t, e.key); + } + r(l, o), + (e.exports = l), + (l.create = function (e) { + return new l(e); + }); + var c = [1, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1]; + (l.prototype.deriveKeys = function (e, t) { + (e.keys = Array(32)), + n.equal(t.length, this.blockSize, "Invalid key length"); + var i = a.readUInt32BE(t, 0), + r = a.readUInt32BE(t, 4); + a.pc1(i, r, e.tmp, 0), (i = e.tmp[0]), (r = e.tmp[1]); + for (var o = 0; o < e.keys.length; o += 2) { + var s = c[o >>> 1]; + (i = a.r28shl(i, s)), (r = a.r28shl(r, s)), a.pc2(i, r, e.keys, o); + } + }), + (l.prototype._update = function (e, t, i, n) { + var r = this._desState, + o = a.readUInt32BE(e, t), + s = a.readUInt32BE(e, t + 4); + a.ip(o, s, r.tmp, 0), + (o = r.tmp[0]), + (s = r.tmp[1]), + "encrypt" === this.type + ? this._encrypt(r, o, s, r.tmp, 0) + : this._decrypt(r, o, s, r.tmp, 0), + (o = r.tmp[0]), + (s = r.tmp[1]), + a.writeUInt32BE(i, o, n), + a.writeUInt32BE(i, s, n + 4); + }), + (l.prototype._pad = function (e, t) { + if (!1 === this.padding) return !1; + for (var i = e.length - t, n = t; n < e.length; n++) e[n] = i; + return !0; + }), + (l.prototype._unpad = function (e) { + if (!1 === this.padding) return e; + for (var t = e[e.length - 1], i = e.length - t; i < e.length; i++) + n.equal(e[i], t); + return e.slice(0, e.length - t); + }), + (l.prototype._encrypt = function (e, t, i, n, r) { + for (var o = t, s = i, l = 0; l < e.keys.length; l += 2) { + var c = e.keys[l], + d = e.keys[l + 1]; + a.expand(s, e.tmp, 0), (c ^= e.tmp[0]), (d ^= e.tmp[1]); + var u = a.substitute(c, d), + f = a.permute(u), + h = s; + (s = (o ^ f) >>> 0), (o = h); + } + a.rip(s, o, n, r); + }), + (l.prototype._decrypt = function (e, t, i, n, r) { + for (var o = i, s = t, l = e.keys.length - 2; l >= 0; l -= 2) { + var c = e.keys[l], + d = e.keys[l + 1]; + a.expand(o, e.tmp, 0), (c ^= e.tmp[0]), (d ^= e.tmp[1]); + var u = a.substitute(c, d), + f = a.permute(u), + h = o; + (o = (s ^ f) >>> 0), (s = h); + } + a.rip(o, s, n, r); + }); + }, + 621099: function (e, t, i) { + "use strict"; + var n = i(422555), + r = i(32016), + a = i(150852), + o = i(103722); + function s(e, t) { + n.equal(t.length, 24, "Invalid key length"); + var i = t.slice(0, 8), + r = t.slice(8, 16), + a = t.slice(16, 24); + "encrypt" === e + ? (this.ciphers = [ + o.create({ type: "encrypt", key: i }), + o.create({ type: "decrypt", key: r }), + o.create({ type: "encrypt", key: a }), + ]) + : (this.ciphers = [ + o.create({ type: "decrypt", key: a }), + o.create({ type: "encrypt", key: r }), + o.create({ type: "decrypt", key: i }), + ]); + } + function l(e) { + a.call(this, e); + var t = new s(this.type, this.options.key); + this._edeState = t; + } + r(l, a), + (e.exports = l), + (l.create = function (e) { + return new l(e); + }), + (l.prototype._update = function (e, t, i, n) { + var r = this._edeState; + r.ciphers[0]._update(e, t, i, n), + r.ciphers[1]._update(i, n, i, n), + r.ciphers[2]._update(i, n, i, n); + }), + (l.prototype._pad = o.prototype._pad), + (l.prototype._unpad = o.prototype._unpad); + }, + 757426: function (e, t) { + "use strict"; + (t.readUInt32BE = function (e, t) { + return ( + ((e[0 + t] << 24) | (e[1 + t] << 16) | (e[2 + t] << 8) | e[3 + t]) >>> + 0 + ); + }), + (t.writeUInt32BE = function (e, t, i) { + (e[0 + i] = t >>> 24), + (e[1 + i] = (t >>> 16) & 255), + (e[2 + i] = (t >>> 8) & 255), + (e[3 + i] = 255 & t); + }), + (t.ip = function (e, t, i, n) { + for (var r = 0, a = 0, o = 6; o >= 0; o -= 2) { + for (var s = 0; s <= 24; s += 8) + (r <<= 1), (r |= (t >>> (s + o)) & 1); + for (var s = 0; s <= 24; s += 8) + (r <<= 1), (r |= (e >>> (s + o)) & 1); + } + for (var o = 6; o >= 0; o -= 2) { + for (var s = 1; s <= 25; s += 8) + (a <<= 1), (a |= (t >>> (s + o)) & 1); + for (var s = 1; s <= 25; s += 8) + (a <<= 1), (a |= (e >>> (s + o)) & 1); + } + (i[n + 0] = r >>> 0), (i[n + 1] = a >>> 0); + }), + (t.rip = function (e, t, i, n) { + for (var r = 0, a = 0, o = 0; o < 4; o++) + for (var s = 24; s >= 0; s -= 8) + (r <<= 1), + (r |= (t >>> (s + o)) & 1), + (r <<= 1), + (r |= (e >>> (s + o)) & 1); + for (var o = 4; o < 8; o++) + for (var s = 24; s >= 0; s -= 8) + (a <<= 1), + (a |= (t >>> (s + o)) & 1), + (a <<= 1), + (a |= (e >>> (s + o)) & 1); + (i[n + 0] = r >>> 0), (i[n + 1] = a >>> 0); + }), + (t.pc1 = function (e, t, i, n) { + for (var r = 0, a = 0, o = 7; o >= 5; o--) { + for (var s = 0; s <= 24; s += 8) + (r <<= 1), (r |= (t >> (s + o)) & 1); + for (var s = 0; s <= 24; s += 8) + (r <<= 1), (r |= (e >> (s + o)) & 1); + } + for (var s = 0; s <= 24; s += 8) (r <<= 1), (r |= (t >> (s + o)) & 1); + for (var o = 1; o <= 3; o++) { + for (var s = 0; s <= 24; s += 8) + (a <<= 1), (a |= (t >> (s + o)) & 1); + for (var s = 0; s <= 24; s += 8) + (a <<= 1), (a |= (e >> (s + o)) & 1); + } + for (var s = 0; s <= 24; s += 8) (a <<= 1), (a |= (e >> (s + o)) & 1); + (i[n + 0] = r >>> 0), (i[n + 1] = a >>> 0); + }), + (t.r28shl = function (e, t) { + return ((e << t) & 0xfffffff) | (e >>> (28 - t)); + }); + var i = [ + 14, 11, 17, 4, 27, 23, 25, 0, 13, 22, 7, 18, 5, 9, 16, 24, 2, 20, 12, + 21, 1, 8, 15, 26, 15, 4, 25, 19, 9, 1, 26, 16, 5, 11, 23, 8, 12, 7, 17, + 0, 22, 3, 10, 14, 6, 20, 27, 24, + ]; + (t.pc2 = function (e, t, n, r) { + for (var a = 0, o = 0, s = i.length >>> 1, l = 0; l < s; l++) + (a <<= 1), (a |= (e >>> i[l]) & 1); + for (var l = s; l < i.length; l++) (o <<= 1), (o |= (t >>> i[l]) & 1); + (n[r + 0] = a >>> 0), (n[r + 1] = o >>> 0); + }), + (t.expand = function (e, t, i) { + var n = 0, + r = 0; + n = ((1 & e) << 5) | (e >>> 27); + for (var a = 23; a >= 15; a -= 4) (n <<= 6), (n |= (e >>> a) & 63); + for (var a = 11; a >= 3; a -= 4) (r |= (e >>> a) & 63), (r <<= 6); + (r |= ((31 & e) << 1) | (e >>> 31)), + (t[i + 0] = n >>> 0), + (t[i + 1] = r >>> 0); + }); + var n = [ + 14, 0, 4, 15, 13, 7, 1, 4, 2, 14, 15, 2, 11, 13, 8, 1, 3, 10, 10, 6, 6, + 12, 12, 11, 5, 9, 9, 5, 0, 3, 7, 8, 4, 15, 1, 12, 14, 8, 8, 2, 13, 4, 6, + 9, 2, 1, 11, 7, 15, 5, 12, 11, 9, 3, 7, 14, 3, 10, 10, 0, 5, 6, 0, 13, + 15, 3, 1, 13, 8, 4, 14, 7, 6, 15, 11, 2, 3, 8, 4, 14, 9, 12, 7, 0, 2, 1, + 13, 10, 12, 6, 0, 9, 5, 11, 10, 5, 0, 13, 14, 8, 7, 10, 11, 1, 10, 3, 4, + 15, 13, 4, 1, 2, 5, 11, 8, 6, 12, 7, 6, 12, 9, 0, 3, 5, 2, 14, 15, 9, + 10, 13, 0, 7, 9, 0, 14, 9, 6, 3, 3, 4, 15, 6, 5, 10, 1, 2, 13, 8, 12, 5, + 7, 14, 11, 12, 4, 11, 2, 15, 8, 1, 13, 1, 6, 10, 4, 13, 9, 0, 8, 6, 15, + 9, 3, 8, 0, 7, 11, 4, 1, 15, 2, 14, 12, 3, 5, 11, 10, 5, 14, 2, 7, 12, + 7, 13, 13, 8, 14, 11, 3, 5, 0, 6, 6, 15, 9, 0, 10, 3, 1, 4, 2, 7, 8, 2, + 5, 12, 11, 1, 12, 10, 4, 14, 15, 9, 10, 3, 6, 15, 9, 0, 0, 6, 12, 10, + 11, 1, 7, 13, 13, 8, 15, 9, 1, 4, 3, 5, 14, 11, 5, 12, 2, 7, 8, 2, 4, + 14, 2, 14, 12, 11, 4, 2, 1, 12, 7, 4, 10, 7, 11, 13, 6, 1, 8, 5, 5, 0, + 3, 15, 15, 10, 13, 3, 0, 9, 14, 8, 9, 6, 4, 11, 2, 8, 1, 12, 11, 7, 10, + 1, 13, 14, 7, 2, 8, 13, 15, 6, 9, 15, 12, 0, 5, 9, 6, 10, 3, 4, 0, 5, + 14, 3, 12, 10, 1, 15, 10, 4, 15, 2, 9, 7, 2, 12, 6, 9, 8, 5, 0, 6, 13, + 1, 3, 13, 4, 14, 14, 0, 7, 11, 5, 3, 11, 8, 9, 4, 14, 3, 15, 2, 5, 12, + 2, 9, 8, 5, 12, 15, 3, 10, 7, 11, 0, 14, 4, 1, 10, 7, 1, 6, 13, 0, 11, + 8, 6, 13, 4, 13, 11, 0, 2, 11, 14, 7, 15, 4, 0, 9, 8, 1, 13, 10, 3, 14, + 12, 3, 9, 5, 7, 12, 5, 2, 10, 15, 6, 8, 1, 6, 1, 6, 4, 11, 11, 13, 13, + 8, 12, 1, 3, 4, 7, 10, 14, 7, 10, 9, 15, 5, 6, 0, 8, 15, 0, 14, 5, 2, 9, + 3, 2, 12, 13, 1, 2, 15, 8, 13, 4, 8, 6, 10, 15, 3, 11, 7, 1, 4, 10, 12, + 9, 5, 3, 6, 14, 11, 5, 0, 0, 14, 12, 9, 7, 2, 7, 2, 11, 1, 4, 14, 1, 7, + 9, 4, 12, 10, 14, 8, 2, 13, 0, 15, 6, 12, 10, 9, 13, 0, 15, 3, 3, 5, 5, + 6, 8, 11, + ]; + t.substitute = function (e, t) { + for (var i = 0, r = 0; r < 4; r++) { + var a = (e >>> (18 - 6 * r)) & 63, + o = n[64 * r + a]; + (i <<= 4), (i |= o); + } + for (var r = 0; r < 4; r++) { + var a = (t >>> (18 - 6 * r)) & 63, + o = n[256 + 64 * r + a]; + (i <<= 4), (i |= o); + } + return i >>> 0; + }; + var r = [ + 16, 25, 12, 11, 3, 20, 4, 15, 31, 17, 9, 6, 27, 14, 1, 22, 30, 24, 8, + 18, 0, 5, 29, 23, 13, 19, 2, 26, 10, 21, 28, 7, + ]; + (t.permute = function (e) { + for (var t = 0, i = 0; i < r.length; i++) + (t <<= 1), (t |= (e >>> r[i]) & 1); + return t >>> 0; + }), + (t.padSplit = function (e, t, i) { + for (var n = e.toString(2); n.length < t; ) n = "0" + n; + for (var r = [], a = 0; a < t; a += i) r.push(n.slice(a, a + i)); + return r.join(" "); + }); + }, + 785091: function (e, t, i) { + var n = i(966465).Buffer, + r = i(686927), + a = i(895968), + o = i(249111); + function s(e) { + return new o(new n(a[e].prime, "hex"), new n(a[e].gen, "hex")); + } + var l = { binary: !0, hex: !0, base64: !0 }; + function c(e, t, i, a) { + return n.isBuffer(t) || void 0 === l[t] + ? c(e, "binary", t, i) + : ((t = t || "binary"), + (a = a || "binary"), + (i = i || new n([2])), + !n.isBuffer(i) && (i = new n(i, a)), + "number" == typeof e) + ? new o(r(e, i), i, !0) + : (!n.isBuffer(e) && (e = new n(e, t)), new o(e, i, !0)); + } + (t.DiffieHellmanGroup = + t.createDiffieHellmanGroup = + t.getDiffieHellman = + s), + (t.createDiffieHellman = t.DiffieHellman = c); + }, + 249111: function (e, t, i) { + var n = i(966465).Buffer, + r = i(984826), + a = new (i(350724))(), + o = new r(24), + s = new r(11), + l = new r(10), + c = new r(3), + d = new r(7), + u = i(686927), + f = i(203960); + function h(e, t) { + return ( + (t = t || "utf8"), + !n.isBuffer(e) && (e = new n(e, t)), + (this._pub = new r(e)), + this + ); + } + function p(e, t) { + return ( + (t = t || "utf8"), + !n.isBuffer(e) && (e = new n(e, t)), + (this._priv = new r(e)), + this + ); + } + e.exports = g; + var v = {}; + function m(e, t) { + var i, + n = t.toString("hex"), + r = [n, e.toString(16)].join("_"); + if (r in v) return v[r]; + var f = 0; + if (e.isEven() || !u.simpleSieve || !u.fermatTest(e) || !a.test(e)) + return ( + (f += 1), + "02" === n || "05" === n ? (f += 8) : (f += 4), + (v[r] = f), + f + ); + switch ((!a.test(e.shrn(1)) && (f += 2), n)) { + case "02": + e.mod(o).cmp(s) && (f += 8); + break; + case "05": + (i = e.mod(l)).cmp(c) && i.cmp(d) && (f += 8); + break; + default: + f += 4; + } + return (v[r] = f), f; + } + function g(e, t, i) { + this.setGenerator(t), + (this.__prime = new r(e)), + (this._prime = r.mont(this.__prime)), + (this._primeLen = e.length), + (this._pub = void 0), + (this._priv = void 0), + (this._primeCode = void 0), + i + ? ((this.setPublicKey = h), (this.setPrivateKey = p)) + : (this._primeCode = 8); + } + function _(e, t) { + var i = new n(e.toArray()); + return t ? i.toString(t) : i; + } + Object.defineProperty(g.prototype, "verifyError", { + enumerable: !0, + get: function () { + return ( + "number" != typeof this._primeCode && + (this._primeCode = m(this.__prime, this.__gen)), + this._primeCode + ); + }, + }), + (g.prototype.generateKeys = function () { + return ( + !this._priv && (this._priv = new r(f(this._primeLen))), + (this._pub = this._gen + .toRed(this._prime) + .redPow(this._priv) + .fromRed()), + this.getPublicKey() + ); + }), + (g.prototype.computeSecret = function (e) { + var t = new n( + (e = (e = new r(e)).toRed(this._prime)) + .redPow(this._priv) + .fromRed() + .toArray() + ), + i = this.getPrime(); + if (t.length < i.length) { + var a = new n(i.length - t.length); + a.fill(0), (t = n.concat([a, t])); + } + return t; + }), + (g.prototype.getPublicKey = function (e) { + return _(this._pub, e); + }), + (g.prototype.getPrivateKey = function (e) { + return _(this._priv, e); + }), + (g.prototype.getPrime = function (e) { + return _(this.__prime, e); + }), + (g.prototype.getGenerator = function (e) { + return _(this._gen, e); + }), + (g.prototype.setGenerator = function (e, t) { + return ( + (t = t || "utf8"), + !n.isBuffer(e) && (e = new n(e, t)), + (this.__gen = e), + (this._gen = new r(e)), + this + ); + }); + }, + 686927: function (e, t, i) { + var n = i(203960); + (e.exports = _), (_.simpleSieve = m), (_.fermatTest = g); + var r = i(984826), + a = new r(24), + o = new (i(350724))(), + s = new r(1), + l = new r(2), + c = new r(5); + new r(16), new r(8); + var d = new r(10), + u = new r(3); + new r(7); + var f = new r(11), + h = new r(4); + new r(12); + var p = null; + function v() { + if (null !== p) return p; + var e = 1048576, + t = []; + t[0] = 2; + for (var i = 1, n = 3; n < e; n += 2) { + for ( + var r = Math.ceil(Math.sqrt(n)), a = 0; + a < i && t[a] <= r && n % t[a] != 0; + a++ + ); + (i === a || !(t[a] <= r)) && (t[i++] = n); + } + return (p = t), t; + } + function m(e) { + for (var t = v(), i = 0; i < t.length; i++) + if (0 === e.modn(t[i])) { + if (0 !== e.cmpn(t[i])) return !1; + break; + } + return !0; + } + function g(e) { + var t = r.mont(e); + return 0 === l.toRed(t).redPow(e.subn(1)).fromRed().cmpn(1); + } + function _(e, t) { + var i, p; + if (e < 16) + return 2 === t || 5 === t ? new r([140, 123]) : new r([140, 39]); + for (t = new r(t); ; ) { + for (i = new r(n(Math.ceil(e / 8))); i.bitLength() > e; ) i.ishrn(1); + if ((i.isEven() && i.iadd(s), !i.testn(1) && i.iadd(l), t.cmp(l))) { + if (!t.cmp(c)) for (; i.mod(d).cmp(u); ) i.iadd(h); + } else for (; i.mod(a).cmp(f); ) i.iadd(h); + if ( + m((p = i.shrn(1))) && + m(i) && + g(p) && + g(i) && + o.test(p) && + o.test(i) + ) + return i; + } + } + }, + 506434: function (e, t, i) { + "use strict"; + var n = t; + (n.version = i(172353).i8), + (n.utils = i(252372)), + (n.rand = i(462810)), + (n.curve = i(774784)), + (n.curves = i(244043)), + (n.ec = i(983272)), + (n.eddsa = i(180800)); + }, + 105634: function (e, t, i) { + "use strict"; + var n = i(984826), + r = i(252372), + a = r.getNAF, + o = r.getJSF, + s = r.assert; + function l(e, t) { + (this.type = e), + (this.p = new n(t.p, 16)), + (this.red = t.prime ? n.red(t.prime) : n.mont(this.p)), + (this.zero = new n(0).toRed(this.red)), + (this.one = new n(1).toRed(this.red)), + (this.two = new n(2).toRed(this.red)), + (this.n = t.n && new n(t.n, 16)), + (this.g = t.g && this.pointFromJSON(t.g, t.gRed)), + (this._wnafT1 = [, , , ,]), + (this._wnafT2 = [, , , ,]), + (this._wnafT3 = [, , , ,]), + (this._wnafT4 = [, , , ,]), + (this._bitLength = this.n ? this.n.bitLength() : 0); + var i = this.n && this.p.div(this.n); + !i || i.cmpn(100) > 0 + ? (this.redN = null) + : ((this._maxwellTrick = !0), (this.redN = this.n.toRed(this.red))); + } + function c(e, t) { + (this.curve = e), (this.type = t), (this.precomputed = null); + } + (e.exports = l), + (l.prototype.point = function () { + throw Error("Not implemented"); + }), + (l.prototype.validate = function () { + throw Error("Not implemented"); + }), + (l.prototype._fixedNafMul = function (e, t) { + s(e.precomputed); + var i, + n, + r = e._getDoubles(), + o = a(t, 1, this._bitLength), + l = (1 << (r.step + 1)) - (r.step % 2 == 0 ? 2 : 1); + l /= 3; + var c = []; + for (i = 0; i < o.length; i += r.step) { + n = 0; + for (var d = i + r.step - 1; d >= i; d--) n = (n << 1) + o[d]; + c.push(n); + } + for ( + var u = this.jpoint(null, null, null), + f = this.jpoint(null, null, null), + h = l; + h > 0; + h-- + ) { + for (i = 0; i < c.length; i++) + (n = c[i]) === h + ? (f = f.mixedAdd(r.points[i])) + : n === -h && (f = f.mixedAdd(r.points[i].neg())); + u = u.add(f); + } + return u.toP(); + }), + (l.prototype._wnafMul = function (e, t) { + var i = 4, + n = e._getNAFPoints(i); + i = n.wnd; + for ( + var r = n.points, + o = a(t, i, this._bitLength), + l = this.jpoint(null, null, null), + c = o.length - 1; + c >= 0; + c-- + ) { + for (var d = 0; c >= 0 && 0 === o[c]; c--) d++; + if ((c >= 0 && d++, (l = l.dblp(d)), c < 0)) break; + var u = o[c]; + s(0 !== u), + (l = + "affine" === e.type + ? u > 0 + ? l.mixedAdd(r[(u - 1) >> 1]) + : l.mixedAdd(r[(-u - 1) >> 1].neg()) + : u > 0 + ? l.add(r[(u - 1) >> 1]) + : l.add(r[(-u - 1) >> 1].neg())); + } + return "affine" === e.type ? l.toP() : l; + }), + (l.prototype._wnafMulAdd = function (e, t, i, n, r) { + var s, + l, + c, + d = this._wnafT1, + u = this._wnafT2, + f = this._wnafT3, + h = 0; + for (s = 0; s < n; s++) { + var p = (c = t[s])._getNAFPoints(e); + (d[s] = p.wnd), (u[s] = p.points); + } + for (s = n - 1; s >= 1; s -= 2) { + var v = s - 1, + m = s; + if (1 !== d[v] || 1 !== d[m]) { + (f[v] = a(i[v], d[v], this._bitLength)), + (f[m] = a(i[m], d[m], this._bitLength)), + (h = Math.max(f[v].length, h)), + (h = Math.max(f[m].length, h)); + continue; + } + var g = [t[v], null, null, t[m]]; + 0 === t[v].y.cmp(t[m].y) + ? ((g[1] = t[v].add(t[m])), + (g[2] = t[v].toJ().mixedAdd(t[m].neg()))) + : 0 === t[v].y.cmp(t[m].y.redNeg()) + ? ((g[1] = t[v].toJ().mixedAdd(t[m])), + (g[2] = t[v].add(t[m].neg()))) + : ((g[1] = t[v].toJ().mixedAdd(t[m])), + (g[2] = t[v].toJ().mixedAdd(t[m].neg()))); + var _ = [-3, -1, -5, -7, 0, 7, 5, 1, 3], + y = o(i[v], i[m]); + for ( + l = 0, + h = Math.max(y[0].length, h), + f[v] = Array(h), + f[m] = Array(h); + l < h; + l++ + ) { + var b = 0 | y[0][l], + I = 0 | y[1][l]; + (f[v][l] = _[(b + 1) * 3 + (I + 1)]), (f[m][l] = 0), (u[v] = g); + } + } + var w = this.jpoint(null, null, null), + x = this._wnafT4; + for (s = h; s >= 0; s--) { + for (var S = 0; s >= 0; ) { + var M = !0; + for (l = 0; l < n; l++) + (x[l] = 0 | f[l][s]), 0 !== x[l] && (M = !1); + if (!M) break; + S++, s--; + } + if ((s >= 0 && S++, (w = w.dblp(S)), s < 0)) break; + for (l = 0; l < n; l++) { + var C = x[l]; + if (0 !== C) { + C > 0 + ? (c = u[l][(C - 1) >> 1]) + : C < 0 && (c = u[l][(-C - 1) >> 1].neg()); + w = "affine" === c.type ? w.mixedAdd(c) : w.add(c); + } + } + } + for (s = 0; s < n; s++) u[s] = null; + return r ? w : w.toP(); + }), + (l.BasePoint = c), + (c.prototype.eq = function () { + throw Error("Not implemented"); + }), + (c.prototype.validate = function () { + return this.curve.validate(this); + }), + (l.prototype.decodePoint = function (e, t) { + e = r.toArray(e, t); + var i = this.p.byteLength(); + if ((4 === e[0] || 6 === e[0] || 7 === e[0]) && e.length - 1 == 2 * i) + return ( + 6 === e[0] + ? s(e[e.length - 1] % 2 == 0) + : 7 === e[0] && s(e[e.length - 1] % 2 == 1), + this.point(e.slice(1, 1 + i), e.slice(1 + i, 1 + 2 * i)) + ); + if ((2 === e[0] || 3 === e[0]) && e.length - 1 === i) + return this.pointFromX(e.slice(1, 1 + i), 3 === e[0]); + throw Error("Unknown point format"); + }), + (c.prototype.encodeCompressed = function (e) { + return this.encode(e, !0); + }), + (c.prototype._encode = function (e) { + var t = this.curve.p.byteLength(), + i = this.getX().toArray("be", t); + return e + ? [this.getY().isEven() ? 2 : 3].concat(i) + : [4].concat(i, this.getY().toArray("be", t)); + }), + (c.prototype.encode = function (e, t) { + return r.encode(this._encode(t), e); + }), + (c.prototype.precompute = function (e) { + if (this.precomputed) return this; + var t = { doubles: null, naf: null, beta: null }; + return ( + (t.naf = this._getNAFPoints(8)), + (t.doubles = this._getDoubles(4, e)), + (t.beta = this._getBeta()), + (this.precomputed = t), + this + ); + }), + (c.prototype._hasDoubles = function (e) { + if (!this.precomputed) return !1; + var t = this.precomputed.doubles; + return ( + !!t && t.points.length >= Math.ceil((e.bitLength() + 1) / t.step) + ); + }), + (c.prototype._getDoubles = function (e, t) { + if (this.precomputed && this.precomputed.doubles) + return this.precomputed.doubles; + for (var i = [this], n = this, r = 0; r < t; r += e) { + for (var a = 0; a < e; a++) n = n.dbl(); + i.push(n); + } + return { step: e, points: i }; + }), + (c.prototype._getNAFPoints = function (e) { + if (this.precomputed && this.precomputed.naf) + return this.precomputed.naf; + for ( + var t = [this], + i = (1 << e) - 1, + n = 1 === i ? null : this.dbl(), + r = 1; + r < i; + r++ + ) + t[r] = t[r - 1].add(n); + return { wnd: e, points: t }; + }), + (c.prototype._getBeta = function () { + return null; + }), + (c.prototype.dblp = function (e) { + for (var t = this, i = 0; i < e; i++) t = t.dbl(); + return t; + }); + }, + 438800: function (e, t, i) { + "use strict"; + var n = i(252372), + r = i(984826), + a = i(32016), + o = i(105634), + s = n.assert; + function l(e) { + (this.twisted = (0 | e.a) != 1), + (this.mOneA = this.twisted && (0 | e.a) == -1), + (this.extended = this.mOneA), + o.call(this, "edwards", e), + (this.a = new r(e.a, 16).umod(this.red.m)), + (this.a = this.a.toRed(this.red)), + (this.c = new r(e.c, 16).toRed(this.red)), + (this.c2 = this.c.redSqr()), + (this.d = new r(e.d, 16).toRed(this.red)), + (this.dd = this.d.redAdd(this.d)), + s(!this.twisted || 0 === this.c.fromRed().cmpn(1)), + (this.oneC = (0 | e.c) == 1); + } + function c(e, t, i, n, a) { + o.BasePoint.call(this, e, "projective"), + null === t && null === i && null === n + ? ((this.x = this.curve.zero), + (this.y = this.curve.one), + (this.z = this.curve.one), + (this.t = this.curve.zero), + (this.zOne = !0)) + : ((this.x = new r(t, 16)), + (this.y = new r(i, 16)), + (this.z = n ? new r(n, 16) : this.curve.one), + (this.t = a && new r(a, 16)), + !this.x.red && (this.x = this.x.toRed(this.curve.red)), + !this.y.red && (this.y = this.y.toRed(this.curve.red)), + !this.z.red && (this.z = this.z.toRed(this.curve.red)), + this.t && !this.t.red && (this.t = this.t.toRed(this.curve.red)), + (this.zOne = this.z === this.curve.one), + this.curve.extended && + !this.t && + ((this.t = this.x.redMul(this.y)), + !this.zOne && (this.t = this.t.redMul(this.z.redInvm())))); + } + a(l, o), + (e.exports = l), + (l.prototype._mulA = function (e) { + return this.mOneA ? e.redNeg() : this.a.redMul(e); + }), + (l.prototype._mulC = function (e) { + return this.oneC ? e : this.c.redMul(e); + }), + (l.prototype.jpoint = function (e, t, i, n) { + return this.point(e, t, i, n); + }), + (l.prototype.pointFromX = function (e, t) { + !(e = new r(e, 16)).red && (e = e.toRed(this.red)); + var i = e.redSqr(), + n = this.c2.redSub(this.a.redMul(i)), + a = this.one.redSub(this.c2.redMul(this.d).redMul(i)), + o = n.redMul(a.redInvm()), + s = o.redSqrt(); + if (0 !== s.redSqr().redSub(o).cmp(this.zero)) + throw Error("invalid point"); + var l = s.fromRed().isOdd(); + return ((t && !l) || (!t && l)) && (s = s.redNeg()), this.point(e, s); + }), + (l.prototype.pointFromY = function (e, t) { + !(e = new r(e, 16)).red && (e = e.toRed(this.red)); + var i = e.redSqr(), + n = i.redSub(this.c2), + a = i.redMul(this.d).redMul(this.c2).redSub(this.a), + o = n.redMul(a.redInvm()); + if (0 === o.cmp(this.zero)) { + if (!t) return this.point(this.zero, e); + throw Error("invalid point"); + } + var s = o.redSqrt(); + if (0 !== s.redSqr().redSub(o).cmp(this.zero)) + throw Error("invalid point"); + return ( + s.fromRed().isOdd() !== t && (s = s.redNeg()), this.point(s, e) + ); + }), + (l.prototype.validate = function (e) { + if (e.isInfinity()) return !0; + e.normalize(); + var t = e.x.redSqr(), + i = e.y.redSqr(), + n = t.redMul(this.a).redAdd(i), + r = this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(i))); + return 0 === n.cmp(r); + }), + a(c, o.BasePoint), + (l.prototype.pointFromJSON = function (e) { + return c.fromJSON(this, e); + }), + (l.prototype.point = function (e, t, i, n) { + return new c(this, e, t, i, n); + }), + (c.fromJSON = function (e, t) { + return new c(e, t[0], t[1], t[2]); + }), + (c.prototype.inspect = function () { + return this.isInfinity() + ? "" + : ""; + }), + (c.prototype.isInfinity = function () { + return ( + 0 === this.x.cmpn(0) && + (0 === this.y.cmp(this.z) || + (this.zOne && 0 === this.y.cmp(this.curve.c))) + ); + }), + (c.prototype._extDbl = function () { + var e = this.x.redSqr(), + t = this.y.redSqr(), + i = this.z.redSqr(); + i = i.redIAdd(i); + var n = this.curve._mulA(e), + r = this.x.redAdd(this.y).redSqr().redISub(e).redISub(t), + a = n.redAdd(t), + o = a.redSub(i), + s = n.redSub(t), + l = r.redMul(o), + c = a.redMul(s), + d = r.redMul(s), + u = o.redMul(a); + return this.curve.point(l, c, u, d); + }), + (c.prototype._projDbl = function () { + var e, + t, + i, + n, + r, + a, + o = this.x.redAdd(this.y).redSqr(), + s = this.x.redSqr(), + l = this.y.redSqr(); + if (this.curve.twisted) { + var c = (n = this.curve._mulA(s)).redAdd(l); + this.zOne + ? ((e = o.redSub(s).redSub(l).redMul(c.redSub(this.curve.two))), + (t = c.redMul(n.redSub(l))), + (i = c.redSqr().redSub(c).redSub(c))) + : ((r = this.z.redSqr()), + (a = c.redSub(r).redISub(r)), + (e = o.redSub(s).redISub(l).redMul(a)), + (t = c.redMul(n.redSub(l))), + (i = c.redMul(a))); + } else + (n = s.redAdd(l)), + (r = this.curve._mulC(this.z).redSqr()), + (a = n.redSub(r).redSub(r)), + (e = this.curve._mulC(o.redISub(n)).redMul(a)), + (t = this.curve._mulC(n).redMul(s.redISub(l))), + (i = n.redMul(a)); + return this.curve.point(e, t, i); + }), + (c.prototype.dbl = function () { + return this.isInfinity() + ? this + : this.curve.extended + ? this._extDbl() + : this._projDbl(); + }), + (c.prototype._extAdd = function (e) { + var t = this.y.redSub(this.x).redMul(e.y.redSub(e.x)), + i = this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)), + n = this.t.redMul(this.curve.dd).redMul(e.t), + r = this.z.redMul(e.z.redAdd(e.z)), + a = i.redSub(t), + o = r.redSub(n), + s = r.redAdd(n), + l = i.redAdd(t), + c = a.redMul(o), + d = s.redMul(l), + u = a.redMul(l), + f = o.redMul(s); + return this.curve.point(c, d, f, u); + }), + (c.prototype._projAdd = function (e) { + var t, + i, + n = this.z.redMul(e.z), + r = n.redSqr(), + a = this.x.redMul(e.x), + o = this.y.redMul(e.y), + s = this.curve.d.redMul(a).redMul(o), + l = r.redSub(s), + c = r.redAdd(s), + d = this.x + .redAdd(this.y) + .redMul(e.x.redAdd(e.y)) + .redISub(a) + .redISub(o), + u = n.redMul(l).redMul(d); + return ( + this.curve.twisted + ? ((t = n.redMul(c).redMul(o.redSub(this.curve._mulA(a)))), + (i = l.redMul(c))) + : ((t = n.redMul(c).redMul(o.redSub(a))), + (i = this.curve._mulC(l).redMul(c))), + this.curve.point(u, t, i) + ); + }), + (c.prototype.add = function (e) { + return this.isInfinity() + ? e + : e.isInfinity() + ? this + : this.curve.extended + ? this._extAdd(e) + : this._projAdd(e); + }), + (c.prototype.mul = function (e) { + return this._hasDoubles(e) + ? this.curve._fixedNafMul(this, e) + : this.curve._wnafMul(this, e); + }), + (c.prototype.mulAdd = function (e, t, i) { + return this.curve._wnafMulAdd(1, [this, t], [e, i], 2, !1); + }), + (c.prototype.jmulAdd = function (e, t, i) { + return this.curve._wnafMulAdd(1, [this, t], [e, i], 2, !0); + }), + (c.prototype.normalize = function () { + if (this.zOne) return this; + var e = this.z.redInvm(); + return ( + (this.x = this.x.redMul(e)), + (this.y = this.y.redMul(e)), + this.t && (this.t = this.t.redMul(e)), + (this.z = this.curve.one), + (this.zOne = !0), + this + ); + }), + (c.prototype.neg = function () { + return this.curve.point( + this.x.redNeg(), + this.y, + this.z, + this.t && this.t.redNeg() + ); + }), + (c.prototype.getX = function () { + return this.normalize(), this.x.fromRed(); + }), + (c.prototype.getY = function () { + return this.normalize(), this.y.fromRed(); + }), + (c.prototype.eq = function (e) { + return ( + this === e || + (0 === this.getX().cmp(e.getX()) && 0 === this.getY().cmp(e.getY())) + ); + }), + (c.prototype.eqXToP = function (e) { + var t = e.toRed(this.curve.red).redMul(this.z); + if (0 === this.x.cmp(t)) return !0; + for (var i = e.clone(), n = this.curve.redN.redMul(this.z); ; ) { + if ((i.iadd(this.curve.n), i.cmp(this.curve.p) >= 0)) return !1; + if ((t.redIAdd(n), 0 === this.x.cmp(t))) return !0; + } + }), + (c.prototype.toP = c.prototype.normalize), + (c.prototype.mixedAdd = c.prototype.add); + }, + 774784: function (e, t, i) { + "use strict"; + var n = t; + (n.base = i(105634)), + (n.short = i(777879)), + (n.mont = i(604458)), + (n.edwards = i(438800)); + }, + 604458: function (e, t, i) { + "use strict"; + var n = i(984826), + r = i(32016), + a = i(105634), + o = i(252372); + function s(e) { + a.call(this, "mont", e), + (this.a = new n(e.a, 16).toRed(this.red)), + (this.b = new n(e.b, 16).toRed(this.red)), + (this.i4 = new n(4).toRed(this.red).redInvm()), + (this.two = new n(2).toRed(this.red)), + (this.a24 = this.i4.redMul(this.a.redAdd(this.two))); + } + function l(e, t, i) { + a.BasePoint.call(this, e, "projective"), + null === t && null === i + ? ((this.x = this.curve.one), (this.z = this.curve.zero)) + : ((this.x = new n(t, 16)), + (this.z = new n(i, 16)), + !this.x.red && (this.x = this.x.toRed(this.curve.red)), + !this.z.red && (this.z = this.z.toRed(this.curve.red))); + } + r(s, a), + (e.exports = s), + (s.prototype.validate = function (e) { + var t = e.normalize().x, + i = t.redSqr(), + n = i.redMul(t).redAdd(i.redMul(this.a)).redAdd(t); + return 0 === n.redSqrt().redSqr().cmp(n); + }), + r(l, a.BasePoint), + (s.prototype.decodePoint = function (e, t) { + return this.point(o.toArray(e, t), 1); + }), + (s.prototype.point = function (e, t) { + return new l(this, e, t); + }), + (s.prototype.pointFromJSON = function (e) { + return l.fromJSON(this, e); + }), + (l.prototype.precompute = function () {}), + (l.prototype._encode = function () { + return this.getX().toArray("be", this.curve.p.byteLength()); + }), + (l.fromJSON = function (e, t) { + return new l(e, t[0], t[1] || e.one); + }), + (l.prototype.inspect = function () { + return this.isInfinity() + ? "" + : ""; + }), + (l.prototype.isInfinity = function () { + return 0 === this.z.cmpn(0); + }), + (l.prototype.dbl = function () { + var e = this.x.redAdd(this.z).redSqr(), + t = this.x.redSub(this.z).redSqr(), + i = e.redSub(t), + n = e.redMul(t), + r = i.redMul(t.redAdd(this.curve.a24.redMul(i))); + return this.curve.point(n, r); + }), + (l.prototype.add = function () { + throw Error("Not supported on Montgomery curve"); + }), + (l.prototype.diffAdd = function (e, t) { + var i = this.x.redAdd(this.z), + n = this.x.redSub(this.z), + r = e.x.redAdd(e.z), + a = e.x.redSub(e.z).redMul(i), + o = r.redMul(n), + s = t.z.redMul(a.redAdd(o).redSqr()), + l = t.x.redMul(a.redISub(o).redSqr()); + return this.curve.point(s, l); + }), + (l.prototype.mul = function (e) { + for ( + var t = e.clone(), + i = this, + n = this.curve.point(null, null), + r = this, + a = []; + 0 !== t.cmpn(0); + t.iushrn(1) + ) + a.push(t.andln(1)); + for (var o = a.length - 1; o >= 0; o--) + 0 === a[o] + ? ((i = i.diffAdd(n, r)), (n = n.dbl())) + : ((n = i.diffAdd(n, r)), (i = i.dbl())); + return n; + }), + (l.prototype.mulAdd = function () { + throw Error("Not supported on Montgomery curve"); + }), + (l.prototype.jumlAdd = function () { + throw Error("Not supported on Montgomery curve"); + }), + (l.prototype.eq = function (e) { + return 0 === this.getX().cmp(e.getX()); + }), + (l.prototype.normalize = function () { + return ( + (this.x = this.x.redMul(this.z.redInvm())), + (this.z = this.curve.one), + this + ); + }), + (l.prototype.getX = function () { + return this.normalize(), this.x.fromRed(); + }); + }, + 777879: function (e, t, i) { + "use strict"; + var n = i(252372), + r = i(984826), + a = i(32016), + o = i(105634), + s = n.assert; + function l(e) { + o.call(this, "short", e), + (this.a = new r(e.a, 16).toRed(this.red)), + (this.b = new r(e.b, 16).toRed(this.red)), + (this.tinv = this.two.redInvm()), + (this.zeroA = 0 === this.a.fromRed().cmpn(0)), + (this.threeA = 0 === this.a.fromRed().sub(this.p).cmpn(-3)), + (this.endo = this._getEndomorphism(e)), + (this._endoWnafT1 = [, , , ,]), + (this._endoWnafT2 = [, , , ,]); + } + function c(e, t, i, n) { + o.BasePoint.call(this, e, "affine"), + null === t && null === i + ? ((this.x = null), (this.y = null), (this.inf = !0)) + : ((this.x = new r(t, 16)), + (this.y = new r(i, 16)), + n && + (this.x.forceRed(this.curve.red), + this.y.forceRed(this.curve.red)), + !this.x.red && (this.x = this.x.toRed(this.curve.red)), + !this.y.red && (this.y = this.y.toRed(this.curve.red)), + (this.inf = !1)); + } + function d(e, t, i, n) { + o.BasePoint.call(this, e, "jacobian"), + null === t && null === i && null === n + ? ((this.x = this.curve.one), + (this.y = this.curve.one), + (this.z = new r(0))) + : ((this.x = new r(t, 16)), + (this.y = new r(i, 16)), + (this.z = new r(n, 16))), + !this.x.red && (this.x = this.x.toRed(this.curve.red)), + !this.y.red && (this.y = this.y.toRed(this.curve.red)), + !this.z.red && (this.z = this.z.toRed(this.curve.red)), + (this.zOne = this.z === this.curve.one); + } + a(l, o), + (e.exports = l), + (l.prototype._getEndomorphism = function (e) { + if (this.zeroA && this.g && this.n && 1 === this.p.modn(3)) { + if (e.beta) t = new r(e.beta, 16).toRed(this.red); + else { + var t, + i, + n, + a = this._getEndoRoots(this.p); + t = (t = 0 > a[0].cmp(a[1]) ? a[0] : a[1]).toRed(this.red); + } + if (e.lambda) i = new r(e.lambda, 16); + else { + var o = this._getEndoRoots(this.n); + 0 === this.g.mul(o[0]).x.cmp(this.g.x.redMul(t)) + ? (i = o[0]) + : ((i = o[1]), + s(0 === this.g.mul(i).x.cmp(this.g.x.redMul(t)))); + } + return ( + (n = e.basis + ? e.basis.map(function (e) { + return { a: new r(e.a, 16), b: new r(e.b, 16) }; + }) + : this._getEndoBasis(i)), + { beta: t, lambda: i, basis: n } + ); + } + }), + (l.prototype._getEndoRoots = function (e) { + var t = e === this.p ? this.red : r.mont(e), + i = new r(2).toRed(t).redInvm(), + n = i.redNeg(), + a = new r(3).toRed(t).redNeg().redSqrt().redMul(i); + return [n.redAdd(a).fromRed(), n.redSub(a).fromRed()]; + }), + (l.prototype._getEndoBasis = function (e) { + for ( + var t, + i, + n, + a, + o, + s, + l, + c, + d, + u = this.n.ushrn(Math.floor(this.n.bitLength() / 2)), + f = e, + h = this.n.clone(), + p = new r(1), + v = new r(0), + m = new r(0), + g = new r(1), + _ = 0; + 0 !== f.cmpn(0); + + ) { + var y = h.div(f); + (c = h.sub(y.mul(f))), (d = m.sub(y.mul(p))); + var b = g.sub(y.mul(v)); + if (!n && 0 > c.cmp(u)) + (t = l.neg()), (i = p), (n = c.neg()), (a = d); + else if (n && 2 == ++_) break; + (l = c), (h = f), (f = c), (m = p), (p = d), (g = v), (v = b); + } + (o = c.neg()), (s = d); + var I = n.sqr().add(a.sqr()); + return ( + o.sqr().add(s.sqr()).cmp(I) >= 0 && ((o = t), (s = i)), + n.negative && ((n = n.neg()), (a = a.neg())), + o.negative && ((o = o.neg()), (s = s.neg())), + [ + { a: n, b: a }, + { a: o, b: s }, + ] + ); + }), + (l.prototype._endoSplit = function (e) { + var t = this.endo.basis, + i = t[0], + n = t[1], + r = n.b.mul(e).divRound(this.n), + a = i.b.neg().mul(e).divRound(this.n), + o = r.mul(i.a), + s = a.mul(n.a), + l = r.mul(i.b), + c = a.mul(n.b); + return { k1: e.sub(o).sub(s), k2: l.add(c).neg() }; + }), + (l.prototype.pointFromX = function (e, t) { + !(e = new r(e, 16)).red && (e = e.toRed(this.red)); + var i = e + .redSqr() + .redMul(e) + .redIAdd(e.redMul(this.a)) + .redIAdd(this.b), + n = i.redSqrt(); + if (0 !== n.redSqr().redSub(i).cmp(this.zero)) + throw Error("invalid point"); + var a = n.fromRed().isOdd(); + return ((t && !a) || (!t && a)) && (n = n.redNeg()), this.point(e, n); + }), + (l.prototype.validate = function (e) { + if (e.inf) return !0; + var t = e.x, + i = e.y, + n = this.a.redMul(t), + r = t.redSqr().redMul(t).redIAdd(n).redIAdd(this.b); + return 0 === i.redSqr().redISub(r).cmpn(0); + }), + (l.prototype._endoWnafMulAdd = function (e, t, i) { + for ( + var n = this._endoWnafT1, r = this._endoWnafT2, a = 0; + a < e.length; + a++ + ) { + var o = this._endoSplit(t[a]), + s = e[a], + l = s._getBeta(); + o.k1.negative && (o.k1.ineg(), (s = s.neg(!0))), + o.k2.negative && (o.k2.ineg(), (l = l.neg(!0))), + (n[2 * a] = s), + (n[2 * a + 1] = l), + (r[2 * a] = o.k1), + (r[2 * a + 1] = o.k2); + } + for ( + var c = this._wnafMulAdd(1, n, r, 2 * a, i), d = 0; + d < 2 * a; + d++ + ) + (n[d] = null), (r[d] = null); + return c; + }), + a(c, o.BasePoint), + (l.prototype.point = function (e, t, i) { + return new c(this, e, t, i); + }), + (l.prototype.pointFromJSON = function (e, t) { + return c.fromJSON(this, e, t); + }), + (c.prototype._getBeta = function () { + if (this.curve.endo) { + var e = this.precomputed; + if (e && e.beta) return e.beta; + var t = this.curve.point( + this.x.redMul(this.curve.endo.beta), + this.y + ); + if (e) { + var i = this.curve, + n = function (e) { + return i.point(e.x.redMul(i.endo.beta), e.y); + }; + (e.beta = t), + (t.precomputed = { + beta: null, + naf: e.naf && { wnd: e.naf.wnd, points: e.naf.points.map(n) }, + doubles: e.doubles && { + step: e.doubles.step, + points: e.doubles.points.map(n), + }, + }); + } + return t; + } + }), + (c.prototype.toJSON = function () { + return this.precomputed + ? [ + this.x, + this.y, + this.precomputed && { + doubles: this.precomputed.doubles && { + step: this.precomputed.doubles.step, + points: this.precomputed.doubles.points.slice(1), + }, + naf: this.precomputed.naf && { + wnd: this.precomputed.naf.wnd, + points: this.precomputed.naf.points.slice(1), + }, + }, + ] + : [this.x, this.y]; + }), + (c.fromJSON = function (e, t, i) { + "string" == typeof t && (t = JSON.parse(t)); + var n = e.point(t[0], t[1], i); + if (!t[2]) return n; + function r(t) { + return e.point(t[0], t[1], i); + } + var a = t[2]; + return ( + (n.precomputed = { + beta: null, + doubles: a.doubles && { + step: a.doubles.step, + points: [n].concat(a.doubles.points.map(r)), + }, + naf: a.naf && { + wnd: a.naf.wnd, + points: [n].concat(a.naf.points.map(r)), + }, + }), + n + ); + }), + (c.prototype.inspect = function () { + return this.isInfinity() + ? "" + : ""; + }), + (c.prototype.isInfinity = function () { + return this.inf; + }), + (c.prototype.add = function (e) { + if (this.inf) return e; + if (e.inf) return this; + if (this.eq(e)) return this.dbl(); + if (this.neg().eq(e) || 0 === this.x.cmp(e.x)) + return this.curve.point(null, null); + var t = this.y.redSub(e.y); + 0 !== t.cmpn(0) && (t = t.redMul(this.x.redSub(e.x).redInvm())); + var i = t.redSqr().redISub(this.x).redISub(e.x), + n = t.redMul(this.x.redSub(i)).redISub(this.y); + return this.curve.point(i, n); + }), + (c.prototype.dbl = function () { + if (this.inf) return this; + var e = this.y.redAdd(this.y); + if (0 === e.cmpn(0)) return this.curve.point(null, null); + var t = this.curve.a, + i = this.x.redSqr(), + n = e.redInvm(), + r = i.redAdd(i).redIAdd(i).redIAdd(t).redMul(n), + a = r.redSqr().redISub(this.x.redAdd(this.x)), + o = r.redMul(this.x.redSub(a)).redISub(this.y); + return this.curve.point(a, o); + }), + (c.prototype.getX = function () { + return this.x.fromRed(); + }), + (c.prototype.getY = function () { + return this.y.fromRed(); + }), + (c.prototype.mul = function (e) { + if (((e = new r(e, 16)), this.isInfinity())) return this; + if (this._hasDoubles(e)) return this.curve._fixedNafMul(this, e); + if (this.curve.endo) return this.curve._endoWnafMulAdd([this], [e]); + else return this.curve._wnafMul(this, e); + }), + (c.prototype.mulAdd = function (e, t, i) { + var n = [this, t], + r = [e, i]; + return this.curve.endo + ? this.curve._endoWnafMulAdd(n, r) + : this.curve._wnafMulAdd(1, n, r, 2); + }), + (c.prototype.jmulAdd = function (e, t, i) { + var n = [this, t], + r = [e, i]; + return this.curve.endo + ? this.curve._endoWnafMulAdd(n, r, !0) + : this.curve._wnafMulAdd(1, n, r, 2, !0); + }), + (c.prototype.eq = function (e) { + return ( + this === e || + (this.inf === e.inf && + (this.inf || (0 === this.x.cmp(e.x) && 0 === this.y.cmp(e.y)))) + ); + }), + (c.prototype.neg = function (e) { + if (this.inf) return this; + var t = this.curve.point(this.x, this.y.redNeg()); + if (e && this.precomputed) { + var i = this.precomputed, + n = function (e) { + return e.neg(); + }; + t.precomputed = { + naf: i.naf && { wnd: i.naf.wnd, points: i.naf.points.map(n) }, + doubles: i.doubles && { + step: i.doubles.step, + points: i.doubles.points.map(n), + }, + }; + } + return t; + }), + (c.prototype.toJ = function () { + return this.inf + ? this.curve.jpoint(null, null, null) + : this.curve.jpoint(this.x, this.y, this.curve.one); + }), + a(d, o.BasePoint), + (l.prototype.jpoint = function (e, t, i) { + return new d(this, e, t, i); + }), + (d.prototype.toP = function () { + if (this.isInfinity()) return this.curve.point(null, null); + var e = this.z.redInvm(), + t = e.redSqr(), + i = this.x.redMul(t), + n = this.y.redMul(t).redMul(e); + return this.curve.point(i, n); + }), + (d.prototype.neg = function () { + return this.curve.jpoint(this.x, this.y.redNeg(), this.z); + }), + (d.prototype.add = function (e) { + if (this.isInfinity()) return e; + if (e.isInfinity()) return this; + var t = e.z.redSqr(), + i = this.z.redSqr(), + n = this.x.redMul(t), + r = e.x.redMul(i), + a = this.y.redMul(t.redMul(e.z)), + o = e.y.redMul(i.redMul(this.z)), + s = n.redSub(r), + l = a.redSub(o); + if (0 === s.cmpn(0)) + return 0 !== l.cmpn(0) + ? this.curve.jpoint(null, null, null) + : this.dbl(); + var c = s.redSqr(), + d = c.redMul(s), + u = n.redMul(c), + f = l.redSqr().redIAdd(d).redISub(u).redISub(u), + h = l.redMul(u.redISub(f)).redISub(a.redMul(d)), + p = this.z.redMul(e.z).redMul(s); + return this.curve.jpoint(f, h, p); + }), + (d.prototype.mixedAdd = function (e) { + if (this.isInfinity()) return e.toJ(); + if (e.isInfinity()) return this; + var t = this.z.redSqr(), + i = this.x, + n = e.x.redMul(t), + r = this.y, + a = e.y.redMul(t).redMul(this.z), + o = i.redSub(n), + s = r.redSub(a); + if (0 === o.cmpn(0)) + return 0 !== s.cmpn(0) + ? this.curve.jpoint(null, null, null) + : this.dbl(); + var l = o.redSqr(), + c = l.redMul(o), + d = i.redMul(l), + u = s.redSqr().redIAdd(c).redISub(d).redISub(d), + f = s.redMul(d.redISub(u)).redISub(r.redMul(c)), + h = this.z.redMul(o); + return this.curve.jpoint(u, f, h); + }), + (d.prototype.dblp = function (e) { + if (0 === e || this.isInfinity()) return this; + if (!e) return this.dbl(); + if (this.curve.zeroA || this.curve.threeA) { + var t, + i = this; + for (t = 0; t < e; t++) i = i.dbl(); + return i; + } + var n = this.curve.a, + r = this.curve.tinv, + a = this.x, + o = this.y, + s = this.z, + l = s.redSqr().redSqr(), + c = o.redAdd(o); + for (t = 0; t < e; t++) { + var d = a.redSqr(), + u = c.redSqr(), + f = u.redSqr(), + h = d.redAdd(d).redIAdd(d).redIAdd(n.redMul(l)), + p = a.redMul(u), + v = h.redSqr().redISub(p.redAdd(p)), + m = p.redISub(v), + g = h.redMul(m); + g = g.redIAdd(g).redISub(f); + var _ = c.redMul(s); + t + 1 < e && (l = l.redMul(f)), (a = v), (s = _), (c = g); + } + return this.curve.jpoint(a, c.redMul(r), s); + }), + (d.prototype.dbl = function () { + return this.isInfinity() + ? this + : this.curve.zeroA + ? this._zeroDbl() + : this.curve.threeA + ? this._threeDbl() + : this._dbl(); + }), + (d.prototype._zeroDbl = function () { + if (this.zOne) { + var e, + t, + i, + n = this.x.redSqr(), + r = this.y.redSqr(), + a = r.redSqr(), + o = this.x.redAdd(r).redSqr().redISub(n).redISub(a); + o = o.redIAdd(o); + var s = n.redAdd(n).redIAdd(n), + l = s.redSqr().redISub(o).redISub(o), + c = a.redIAdd(a); + (c = (c = c.redIAdd(c)).redIAdd(c)), + (e = l), + (t = s.redMul(o.redISub(l)).redISub(c)), + (i = this.y.redAdd(this.y)); + } else { + var d = this.x.redSqr(), + u = this.y.redSqr(), + f = u.redSqr(), + h = this.x.redAdd(u).redSqr().redISub(d).redISub(f); + h = h.redIAdd(h); + var p = d.redAdd(d).redIAdd(d), + v = p.redSqr(), + m = f.redIAdd(f); + (m = (m = m.redIAdd(m)).redIAdd(m)), + (e = v.redISub(h).redISub(h)), + (t = p.redMul(h.redISub(e)).redISub(m)), + (i = (i = this.y.redMul(this.z)).redIAdd(i)); + } + return this.curve.jpoint(e, t, i); + }), + (d.prototype._threeDbl = function () { + if (this.zOne) { + var e, + t, + i, + n = this.x.redSqr(), + r = this.y.redSqr(), + a = r.redSqr(), + o = this.x.redAdd(r).redSqr().redISub(n).redISub(a); + o = o.redIAdd(o); + var s = n.redAdd(n).redIAdd(n).redIAdd(this.curve.a), + l = s.redSqr().redISub(o).redISub(o); + e = l; + var c = a.redIAdd(a); + (c = (c = c.redIAdd(c)).redIAdd(c)), + (t = s.redMul(o.redISub(l)).redISub(c)), + (i = this.y.redAdd(this.y)); + } else { + var d = this.z.redSqr(), + u = this.y.redSqr(), + f = this.x.redMul(u), + h = this.x.redSub(d).redMul(this.x.redAdd(d)); + h = h.redAdd(h).redIAdd(h); + var p = f.redIAdd(f), + v = (p = p.redIAdd(p)).redAdd(p); + (e = h.redSqr().redISub(v)), + (i = this.y.redAdd(this.z).redSqr().redISub(u).redISub(d)); + var m = u.redSqr(); + (m = (m = (m = m.redIAdd(m)).redIAdd(m)).redIAdd(m)), + (t = h.redMul(p.redISub(e)).redISub(m)); + } + return this.curve.jpoint(e, t, i); + }), + (d.prototype._dbl = function () { + var e = this.curve.a, + t = this.x, + i = this.y, + n = this.z, + r = n.redSqr().redSqr(), + a = t.redSqr(), + o = i.redSqr(), + s = a.redAdd(a).redIAdd(a).redIAdd(e.redMul(r)), + l = t.redAdd(t), + c = (l = l.redIAdd(l)).redMul(o), + d = s.redSqr().redISub(c.redAdd(c)), + u = c.redISub(d), + f = o.redSqr(); + f = (f = (f = f.redIAdd(f)).redIAdd(f)).redIAdd(f); + var h = s.redMul(u).redISub(f), + p = i.redAdd(i).redMul(n); + return this.curve.jpoint(d, h, p); + }), + (d.prototype.trpl = function () { + if (!this.curve.zeroA) return this.dbl().add(this); + var e = this.x.redSqr(), + t = this.y.redSqr(), + i = this.z.redSqr(), + n = t.redSqr(), + r = e.redAdd(e).redIAdd(e), + a = r.redSqr(), + o = this.x.redAdd(t).redSqr().redISub(e).redISub(n), + s = (o = (o = (o = o.redIAdd(o)).redAdd(o).redIAdd(o)).redISub( + a + )).redSqr(), + l = n.redIAdd(n); + l = (l = (l = l.redIAdd(l)).redIAdd(l)).redIAdd(l); + var c = r.redIAdd(o).redSqr().redISub(a).redISub(s).redISub(l), + d = t.redMul(c); + d = (d = d.redIAdd(d)).redIAdd(d); + var u = this.x.redMul(s).redISub(d); + u = (u = u.redIAdd(u)).redIAdd(u); + var f = this.y.redMul(c.redMul(l.redISub(c)).redISub(o.redMul(s))); + f = (f = (f = f.redIAdd(f)).redIAdd(f)).redIAdd(f); + var h = this.z.redAdd(o).redSqr().redISub(i).redISub(s); + return this.curve.jpoint(u, f, h); + }), + (d.prototype.mul = function (e, t) { + return (e = new r(e, t)), this.curve._wnafMul(this, e); + }), + (d.prototype.eq = function (e) { + if ("affine" === e.type) return this.eq(e.toJ()); + if (this === e) return !0; + var t = this.z.redSqr(), + i = e.z.redSqr(); + if (0 !== this.x.redMul(i).redISub(e.x.redMul(t)).cmpn(0)) return !1; + var n = t.redMul(this.z), + r = i.redMul(e.z); + return 0 === this.y.redMul(r).redISub(e.y.redMul(n)).cmpn(0); + }), + (d.prototype.eqXToP = function (e) { + var t = this.z.redSqr(), + i = e.toRed(this.curve.red).redMul(t); + if (0 === this.x.cmp(i)) return !0; + for (var n = e.clone(), r = this.curve.redN.redMul(t); ; ) { + if ((n.iadd(this.curve.n), n.cmp(this.curve.p) >= 0)) return !1; + if ((i.redIAdd(r), 0 === this.x.cmp(i))) return !0; + } + }), + (d.prototype.inspect = function () { + return this.isInfinity() + ? "" + : ""; + }), + (d.prototype.isInfinity = function () { + return 0 === this.z.cmpn(0); + }); + }, + 244043: function (e, t, i) { + "use strict"; + var n, + r = t, + a = i(917474), + o = i(774784), + s = i(252372).assert; + function l(e) { + "short" === e.type + ? (this.curve = new o.short(e)) + : "edwards" === e.type + ? (this.curve = new o.edwards(e)) + : (this.curve = new o.mont(e)), + (this.g = this.curve.g), + (this.n = this.curve.n), + (this.hash = e.hash), + s(this.g.validate(), "Invalid curve"), + s(this.g.mul(this.n).isInfinity(), "Invalid curve, G*N != O"); + } + function c(e, t) { + Object.defineProperty(r, e, { + configurable: !0, + enumerable: !0, + get: function () { + var i = new l(t); + return ( + Object.defineProperty(r, e, { + configurable: !0, + enumerable: !0, + value: i, + }), + i + ); + }, + }); + } + (r.PresetCurve = l), + c("p192", { + type: "short", + prime: "p192", + p: "ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff", + a: "ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc", + b: "64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1", + n: "ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831", + hash: a.sha256, + gRed: !1, + g: [ + "188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012", + "07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811", + ], + }), + c("p224", { + type: "short", + prime: "p224", + p: "ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001", + a: "ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe", + b: "b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4", + n: "ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d", + hash: a.sha256, + gRed: !1, + g: [ + "b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21", + "bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34", + ], + }), + c("p256", { + type: "short", + prime: null, + p: "ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff", + a: "ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc", + b: "5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b", + n: "ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551", + hash: a.sha256, + gRed: !1, + g: [ + "6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296", + "4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5", + ], + }), + c("p384", { + type: "short", + prime: null, + p: "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff", + a: "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc", + b: "b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef", + n: "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973", + hash: a.sha384, + gRed: !1, + g: [ + "aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7", + "3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f", + ], + }), + c("p521", { + type: "short", + prime: null, + p: "000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff", + a: "000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc", + b: "00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00", + n: "000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409", + hash: a.sha512, + gRed: !1, + g: [ + "000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66", + "00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650", + ], + }), + c("curve25519", { + type: "mont", + prime: "p25519", + p: "7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed", + a: "76d06", + b: "1", + n: "1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed", + hash: a.sha256, + gRed: !1, + g: ["9"], + }), + c("ed25519", { + type: "edwards", + prime: "p25519", + p: "7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed", + a: "-1", + c: "1", + d: "52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3", + n: "1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed", + hash: a.sha256, + gRed: !1, + g: [ + "216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a", + "6666666666666666666666666666666666666666666666666666666666666658", + ], + }); + try { + n = i(830948); + } catch (e) { + n = void 0; + } + c("secp256k1", { + type: "short", + prime: "k256", + p: "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f", + a: "0", + b: "7", + n: "ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141", + h: "1", + hash: a.sha256, + beta: "7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee", + lambda: + "5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72", + basis: [ + { + a: "3086d221a7d46bcde86c90e49284eb15", + b: "-e4437ed6010e88286f547fa90abfe4c3", + }, + { + a: "114ca50f7a8e2f3f657c1108d9d44cfd8", + b: "3086d221a7d46bcde86c90e49284eb15", + }, + ], + gRed: !1, + g: [ + "79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798", + "483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8", + n, + ], + }); + }, + 983272: function (e, t, i) { + "use strict"; + var n = i(984826), + r = i(458436), + a = i(252372), + o = i(244043), + s = i(462810), + l = a.assert, + c = i(679289), + d = i(35971); + function u(e) { + if (!(this instanceof u)) return new u(e); + "string" == typeof e && + (l(Object.prototype.hasOwnProperty.call(o, e), "Unknown curve " + e), + (e = o[e])), + e instanceof o.PresetCurve && (e = { curve: e }), + (this.curve = e.curve.curve), + (this.n = this.curve.n), + (this.nh = this.n.ushrn(1)), + (this.g = this.curve.g), + (this.g = e.curve.g), + this.g.precompute(e.curve.n.bitLength() + 1), + (this.hash = e.hash || e.curve.hash); + } + (e.exports = u), + (u.prototype.keyPair = function (e) { + return new c(this, e); + }), + (u.prototype.keyFromPrivate = function (e, t) { + return c.fromPrivate(this, e, t); + }), + (u.prototype.keyFromPublic = function (e, t) { + return c.fromPublic(this, e, t); + }), + (u.prototype.genKeyPair = function (e) { + !e && (e = {}); + for ( + var t = new r({ + hash: this.hash, + pers: e.pers, + persEnc: e.persEnc || "utf8", + entropy: e.entropy || s(this.hash.hmacStrength), + entropyEnc: (e.entropy && e.entropyEnc) || "utf8", + nonce: this.n.toArray(), + }), + i = this.n.byteLength(), + a = this.n.sub(new n(2)); + ; + + ) { + var o = new n(t.generate(i)); + if (!(o.cmp(a) > 0)) return o.iaddn(1), this.keyFromPrivate(o); + } + }), + (u.prototype._truncateToN = function (e, t) { + var i = 8 * e.byteLength() - this.n.bitLength(); + return (i > 0 && (e = e.ushrn(i)), !t && e.cmp(this.n) >= 0) + ? e.sub(this.n) + : e; + }), + (u.prototype.sign = function (e, t, i, a) { + "object" == typeof i && ((a = i), (i = null)), + !a && (a = {}), + (t = this.keyFromPrivate(t, i)), + (e = this._truncateToN(new n(e, 16))); + for ( + var o = this.n.byteLength(), + s = t.getPrivate().toArray("be", o), + l = e.toArray("be", o), + c = new r({ + hash: this.hash, + entropy: s, + nonce: l, + pers: a.pers, + persEnc: a.persEnc || "utf8", + }), + u = this.n.sub(new n(1)), + f = 0; + ; + f++ + ) { + var h = a.k ? a.k(f) : new n(c.generate(this.n.byteLength())); + if (0 >= (h = this._truncateToN(h, !0)).cmpn(1) || h.cmp(u) >= 0) + continue; + var p = this.g.mul(h); + if (p.isInfinity()) continue; + var v = p.getX(), + m = v.umod(this.n); + if (0 !== m.cmpn(0)) { + var g = h.invm(this.n).mul(m.mul(t.getPrivate()).iadd(e)); + if (0 !== (g = g.umod(this.n)).cmpn(0)) { + var _ = (p.getY().isOdd() ? 1 : 0) | (0 !== v.cmp(m) ? 2 : 0); + return ( + a.canonical && + g.cmp(this.nh) > 0 && + ((g = this.n.sub(g)), (_ ^= 1)), + new d({ r: m, s: g, recoveryParam: _ }) + ); + } + } + } + }), + (u.prototype.verify = function (e, t, i, r) { + (e = this._truncateToN(new n(e, 16))), (i = this.keyFromPublic(i, r)); + var a, + o = (t = new d(t, "hex")).r, + s = t.s; + if ( + 0 > o.cmpn(1) || + o.cmp(this.n) >= 0 || + 0 > s.cmpn(1) || + s.cmp(this.n) >= 0 + ) + return !1; + var l = s.invm(this.n), + c = l.mul(e).umod(this.n), + u = l.mul(o).umod(this.n); + if (!this.curve._maxwellTrick) + return ( + !(a = this.g.mulAdd(c, i.getPublic(), u)).isInfinity() && + 0 === a.getX().umod(this.n).cmp(o) + ); + return ( + !(a = this.g.jmulAdd(c, i.getPublic(), u)).isInfinity() && + a.eqXToP(o) + ); + }), + (u.prototype.recoverPubKey = function (e, t, i, r) { + l((3 & i) === i, "The recovery param is more than two bits"), + (t = new d(t, r)); + var a = this.n, + o = new n(e), + s = t.r, + c = t.s, + u = 1 & i, + f = i >> 1; + if (s.cmp(this.curve.p.umod(this.curve.n)) >= 0 && f) + throw Error("Unable to find sencond key candinate"); + s = f + ? this.curve.pointFromX(s.add(this.curve.n), u) + : this.curve.pointFromX(s, u); + var h = t.r.invm(a), + p = a.sub(o).mul(h).umod(a), + v = c.mul(h).umod(a); + return this.g.mulAdd(p, s, v); + }), + (u.prototype.getKeyRecoveryParam = function (e, t, i, n) { + if (null !== (t = new d(t, n)).recoveryParam) return t.recoveryParam; + for (var r, a = 0; a < 4; a++) { + try { + r = this.recoverPubKey(e, t, a); + } catch (e) { + continue; + } + if (r.eq(i)) return a; + } + throw Error("Unable to find valid recovery factor"); + }); + }, + 679289: function (e, t, i) { + "use strict"; + var n = i(984826), + r = i(252372).assert; + function a(e, t) { + (this.ec = e), + (this.priv = null), + (this.pub = null), + t.priv && this._importPrivate(t.priv, t.privEnc), + t.pub && this._importPublic(t.pub, t.pubEnc); + } + (e.exports = a), + (a.fromPublic = function (e, t, i) { + return t instanceof a ? t : new a(e, { pub: t, pubEnc: i }); + }), + (a.fromPrivate = function (e, t, i) { + return t instanceof a ? t : new a(e, { priv: t, privEnc: i }); + }), + (a.prototype.validate = function () { + var e = this.getPublic(); + return e.isInfinity() + ? { result: !1, reason: "Invalid public key" } + : e.validate() + ? e.mul(this.ec.curve.n).isInfinity() + ? { result: !0, reason: null } + : { result: !1, reason: "Public key * N != O" } + : { result: !1, reason: "Public key is not a point" }; + }), + (a.prototype.getPublic = function (e, t) { + return ("string" == typeof e && ((t = e), (e = null)), + !this.pub && (this.pub = this.ec.g.mul(this.priv)), + t) + ? this.pub.encode(t, e) + : this.pub; + }), + (a.prototype.getPrivate = function (e) { + return "hex" === e ? this.priv.toString(16, 2) : this.priv; + }), + (a.prototype._importPrivate = function (e, t) { + (this.priv = new n(e, t || 16)), + (this.priv = this.priv.umod(this.ec.curve.n)); + }), + (a.prototype._importPublic = function (e, t) { + if (e.x || e.y) { + "mont" === this.ec.curve.type + ? r(e.x, "Need x coordinate") + : ("short" === this.ec.curve.type || + "edwards" === this.ec.curve.type) && + r(e.x && e.y, "Need both x and y coordinate"), + (this.pub = this.ec.curve.point(e.x, e.y)); + return; + } + this.pub = this.ec.curve.decodePoint(e, t); + }), + (a.prototype.derive = function (e) { + return ( + !e.validate() && r(e.validate(), "public point not validated"), + e.mul(this.priv).getX() + ); + }), + (a.prototype.sign = function (e, t, i) { + return this.ec.sign(e, this, t, i); + }), + (a.prototype.verify = function (e, t) { + return this.ec.verify(e, t, this); + }), + (a.prototype.inspect = function () { + return ( + "" + ); + }); + }, + 35971: function (e, t, i) { + "use strict"; + var n = i(984826), + r = i(252372), + a = r.assert; + function o(e, t) { + if (e instanceof o) return e; + !this._importDER(e, t) && + (a(e.r && e.s, "Signature without r or s"), + (this.r = new n(e.r, 16)), + (this.s = new n(e.s, 16)), + void 0 === e.recoveryParam + ? (this.recoveryParam = null) + : (this.recoveryParam = e.recoveryParam)); + } + function s() { + this.place = 0; + } + function l(e, t) { + var i = e[t.place++]; + if (!(128 & i)) return i; + var n = 15 & i; + if (0 === n || n > 4) return !1; + for (var r = 0, a = 0, o = t.place; a < n; a++, o++) + (r <<= 8), (r |= e[o]), (r >>>= 0); + return !(r <= 127) && ((t.place = o), r); + } + function c(e) { + for (var t = 0, i = e.length - 1; !e[t] && !(128 & e[t + 1]) && t < i; ) + t++; + return 0 === t ? e : e.slice(t); + } + function d(e, t) { + if (t < 128) { + e.push(t); + return; + } + var i = 1 + ((Math.log(t) / Math.LN2) >>> 3); + for (e.push(128 | i); --i; ) e.push((t >>> (i << 3)) & 255); + e.push(t); + } + (e.exports = o), + (o.prototype._importDER = function (e, t) { + e = r.toArray(e, t); + var i = new s(); + if (48 !== e[i.place++]) return !1; + var a = l(e, i); + if (!1 === a || a + i.place !== e.length || 2 !== e[i.place++]) + return !1; + var o = l(e, i); + if (!1 === o) return !1; + var c = e.slice(i.place, o + i.place); + if (((i.place += o), 2 !== e[i.place++])) return !1; + var d = l(e, i); + if (!1 === d || e.length !== d + i.place) return !1; + var u = e.slice(i.place, d + i.place); + if (0 === c[0]) { + if (!(128 & c[1])) return !1; + c = c.slice(1); + } + if (0 === u[0]) { + if (!(128 & u[1])) return !1; + u = u.slice(1); + } + return ( + (this.r = new n(c)), + (this.s = new n(u)), + (this.recoveryParam = null), + !0 + ); + }), + (o.prototype.toDER = function (e) { + var t = this.r.toArray(), + i = this.s.toArray(); + for ( + 128 & t[0] && (t = [0].concat(t)), + 128 & i[0] && (i = [0].concat(i)), + t = c(t), + i = c(i); + !i[0] && !(128 & i[1]); + + ) + i = i.slice(1); + var n = [2]; + d(n, t.length), (n = n.concat(t)).push(2), d(n, i.length); + var a = n.concat(i), + o = [48]; + return d(o, a.length), (o = o.concat(a)), r.encode(o, e); + }); + }, + 180800: function (e, t, i) { + "use strict"; + var n = i(917474), + r = i(244043), + a = i(252372), + o = a.assert, + s = a.parseBytes, + l = i(151010), + c = i(976501); + function d(e) { + if ( + (o("ed25519" === e, "only tested with ed25519 so far"), + !(this instanceof d)) + ) + return new d(e); + (e = r[e].curve), + (this.curve = e), + (this.g = e.g), + this.g.precompute(e.n.bitLength() + 1), + (this.pointClass = e.point().constructor), + (this.encodingLength = Math.ceil(e.n.bitLength() / 8)), + (this.hash = n.sha512); + } + (e.exports = d), + (d.prototype.sign = function (e, t) { + e = s(e); + var i = this.keyFromSecret(t), + n = this.hashInt(i.messagePrefix(), e), + r = this.g.mul(n), + a = this.encodePoint(r), + o = this.hashInt(a, i.pubBytes(), e).mul(i.priv()), + l = n.add(o).umod(this.curve.n); + return this.makeSignature({ R: r, S: l, Rencoded: a }); + }), + (d.prototype.verify = function (e, t, i) { + (e = s(e)), (t = this.makeSignature(t)); + var n = this.keyFromPublic(i), + r = this.hashInt(t.Rencoded(), n.pubBytes(), e), + a = this.g.mul(t.S()); + return t.R().add(n.pub().mul(r)).eq(a); + }), + (d.prototype.hashInt = function () { + for (var e = this.hash(), t = 0; t < arguments.length; t++) + e.update(arguments[t]); + return a.intFromLE(e.digest()).umod(this.curve.n); + }), + (d.prototype.keyFromPublic = function (e) { + return l.fromPublic(this, e); + }), + (d.prototype.keyFromSecret = function (e) { + return l.fromSecret(this, e); + }), + (d.prototype.makeSignature = function (e) { + return e instanceof c ? e : new c(this, e); + }), + (d.prototype.encodePoint = function (e) { + var t = e.getY().toArray("le", this.encodingLength); + return (t[this.encodingLength - 1] |= e.getX().isOdd() ? 128 : 0), t; + }), + (d.prototype.decodePoint = function (e) { + var t = (e = a.parseBytes(e)).length - 1, + i = e.slice(0, t).concat(-129 & e[t]), + n = (128 & e[t]) != 0, + r = a.intFromLE(i); + return this.curve.pointFromY(r, n); + }), + (d.prototype.encodeInt = function (e) { + return e.toArray("le", this.encodingLength); + }), + (d.prototype.decodeInt = function (e) { + return a.intFromLE(e); + }), + (d.prototype.isPoint = function (e) { + return e instanceof this.pointClass; + }); + }, + 151010: function (e, t, i) { + "use strict"; + var n = i(252372), + r = n.assert, + a = n.parseBytes, + o = n.cachedProperty; + function s(e, t) { + (this.eddsa = e), + (this._secret = a(t.secret)), + e.isPoint(t.pub) ? (this._pub = t.pub) : (this._pubBytes = a(t.pub)); + } + (s.fromPublic = function (e, t) { + return t instanceof s ? t : new s(e, { pub: t }); + }), + (s.fromSecret = function (e, t) { + return t instanceof s ? t : new s(e, { secret: t }); + }), + (s.prototype.secret = function () { + return this._secret; + }), + o(s, "pubBytes", function () { + return this.eddsa.encodePoint(this.pub()); + }), + o(s, "pub", function () { + return this._pubBytes + ? this.eddsa.decodePoint(this._pubBytes) + : this.eddsa.g.mul(this.priv()); + }), + o(s, "privBytes", function () { + var e = this.eddsa, + t = this.hash(), + i = e.encodingLength - 1, + n = t.slice(0, e.encodingLength); + return (n[0] &= 248), (n[i] &= 127), (n[i] |= 64), n; + }), + o(s, "priv", function () { + return this.eddsa.decodeInt(this.privBytes()); + }), + o(s, "hash", function () { + return this.eddsa.hash().update(this.secret()).digest(); + }), + o(s, "messagePrefix", function () { + return this.hash().slice(this.eddsa.encodingLength); + }), + (s.prototype.sign = function (e) { + return ( + r(this._secret, "KeyPair can only verify"), this.eddsa.sign(e, this) + ); + }), + (s.prototype.verify = function (e, t) { + return this.eddsa.verify(e, t, this); + }), + (s.prototype.getSecret = function (e) { + return ( + r(this._secret, "KeyPair is public only"), + n.encode(this.secret(), e) + ); + }), + (s.prototype.getPublic = function (e) { + return n.encode(this.pubBytes(), e); + }), + (e.exports = s); + }, + 976501: function (e, t, i) { + "use strict"; + var n = i(984826), + r = i(252372), + a = r.assert, + o = r.cachedProperty, + s = r.parseBytes; + function l(e, t) { + (this.eddsa = e), + "object" != typeof t && (t = s(t)), + Array.isArray(t) && + (t = { + R: t.slice(0, e.encodingLength), + S: t.slice(e.encodingLength), + }), + a(t.R && t.S, "Signature without R or S"), + e.isPoint(t.R) && (this._R = t.R), + t.S instanceof n && (this._S = t.S), + (this._Rencoded = Array.isArray(t.R) ? t.R : t.Rencoded), + (this._Sencoded = Array.isArray(t.S) ? t.S : t.Sencoded); + } + o(l, "S", function () { + return this.eddsa.decodeInt(this.Sencoded()); + }), + o(l, "R", function () { + return this.eddsa.decodePoint(this.Rencoded()); + }), + o(l, "Rencoded", function () { + return this.eddsa.encodePoint(this.R()); + }), + o(l, "Sencoded", function () { + return this.eddsa.encodeInt(this.S()); + }), + (l.prototype.toBytes = function () { + return this.Rencoded().concat(this.Sencoded()); + }), + (l.prototype.toHex = function () { + return r.encode(this.toBytes(), "hex").toUpperCase(); + }), + (e.exports = l); + }, + 830948: function (e) { + e.exports = { + doubles: { + step: 4, + points: [ + [ + "e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a", + "f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821", + ], + [ + "8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508", + "11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf", + ], + [ + "175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739", + "d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695", + ], + [ + "363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640", + "4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9", + ], + [ + "8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c", + "4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36", + ], + [ + "723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda", + "96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f", + ], + [ + "eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa", + "5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999", + ], + [ + "100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0", + "cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09", + ], + [ + "e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d", + "9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d", + ], + [ + "feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d", + "e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088", + ], + [ + "da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1", + "9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d", + ], + [ + "53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0", + "5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8", + ], + [ + "8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047", + "10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a", + ], + [ + "385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862", + "283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453", + ], + [ + "6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7", + "7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160", + ], + [ + "3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd", + "56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0", + ], + [ + "85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83", + "7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6", + ], + [ + "948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a", + "53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589", + ], + [ + "6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8", + "bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17", + ], + [ + "e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d", + "4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda", + ], + [ + "e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725", + "7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd", + ], + [ + "213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754", + "4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2", + ], + [ + "4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c", + "17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6", + ], + [ + "fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6", + "6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f", + ], + [ + "76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39", + "c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01", + ], + [ + "c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891", + "893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3", + ], + [ + "d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b", + "febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f", + ], + [ + "b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03", + "2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7", + ], + [ + "e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d", + "eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78", + ], + [ + "a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070", + "7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1", + ], + [ + "90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4", + "e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150", + ], + [ + "8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da", + "662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82", + ], + [ + "e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11", + "1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc", + ], + [ + "8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e", + "efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b", + ], + [ + "e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41", + "2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51", + ], + [ + "b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef", + "67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45", + ], + [ + "d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8", + "db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120", + ], + [ + "324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d", + "648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84", + ], + [ + "4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96", + "35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d", + ], + [ + "9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd", + "ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d", + ], + [ + "6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5", + "9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8", + ], + [ + "a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266", + "40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8", + ], + [ + "7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71", + "34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac", + ], + [ + "928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac", + "c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f", + ], + [ + "85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751", + "1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962", + ], + [ + "ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e", + "493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907", + ], + [ + "827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241", + "c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec", + ], + [ + "eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3", + "be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d", + ], + [ + "e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f", + "4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414", + ], + [ + "1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19", + "aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd", + ], + [ + "146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be", + "b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0", + ], + [ + "fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9", + "6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811", + ], + [ + "da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2", + "8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1", + ], + [ + "a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13", + "7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c", + ], + [ + "174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c", + "ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73", + ], + [ + "959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba", + "2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd", + ], + [ + "d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151", + "e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405", + ], + [ + "64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073", + "d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589", + ], + [ + "8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458", + "38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e", + ], + [ + "13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b", + "69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27", + ], + [ + "bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366", + "d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1", + ], + [ + "8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa", + "40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482", + ], + [ + "8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0", + "620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945", + ], + [ + "dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787", + "7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573", + ], + [ + "f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e", + "ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82", + ], + ], + }, + naf: { + wnd: 7, + points: [ + [ + "f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9", + "388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672", + ], + [ + "2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4", + "d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6", + ], + [ + "5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc", + "6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da", + ], + [ + "acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe", + "cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37", + ], + [ + "774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb", + "d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b", + ], + [ + "f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8", + "ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81", + ], + [ + "d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e", + "581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58", + ], + [ + "defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34", + "4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77", + ], + [ + "2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c", + "85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a", + ], + [ + "352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5", + "321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c", + ], + [ + "2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f", + "2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67", + ], + [ + "9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714", + "73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402", + ], + [ + "daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729", + "a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55", + ], + [ + "c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db", + "2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482", + ], + [ + "6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4", + "e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82", + ], + [ + "1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5", + "b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396", + ], + [ + "605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479", + "2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49", + ], + [ + "62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d", + "80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf", + ], + [ + "80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f", + "1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a", + ], + [ + "7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb", + "d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7", + ], + [ + "d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9", + "eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933", + ], + [ + "49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963", + "758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a", + ], + [ + "77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74", + "958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6", + ], + [ + "f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530", + "e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37", + ], + [ + "463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b", + "5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e", + ], + [ + "f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247", + "cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6", + ], + [ + "caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1", + "cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476", + ], + [ + "2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120", + "4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40", + ], + [ + "7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435", + "91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61", + ], + [ + "754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18", + "673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683", + ], + [ + "e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8", + "59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5", + ], + [ + "186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb", + "3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b", + ], + [ + "df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f", + "55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417", + ], + [ + "5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143", + "efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868", + ], + [ + "290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba", + "e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a", + ], + [ + "af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45", + "f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6", + ], + [ + "766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a", + "744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996", + ], + [ + "59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e", + "c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e", + ], + [ + "f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8", + "e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d", + ], + [ + "7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c", + "30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2", + ], + [ + "948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519", + "e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e", + ], + [ + "7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab", + "100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437", + ], + [ + "3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca", + "ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311", + ], + [ + "d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf", + "8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4", + ], + [ + "1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610", + "68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575", + ], + [ + "733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4", + "f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d", + ], + [ + "15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c", + "d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d", + ], + [ + "a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940", + "edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629", + ], + [ + "e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980", + "a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06", + ], + [ + "311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3", + "66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374", + ], + [ + "34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf", + "9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee", + ], + [ + "f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63", + "4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1", + ], + [ + "d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448", + "fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b", + ], + [ + "32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf", + "5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661", + ], + [ + "7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5", + "8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6", + ], + [ + "ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6", + "8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e", + ], + [ + "16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5", + "5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d", + ], + [ + "eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99", + "f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc", + ], + [ + "78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51", + "f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4", + ], + [ + "494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5", + "42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c", + ], + [ + "a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5", + "204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b", + ], + [ + "c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997", + "4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913", + ], + [ + "841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881", + "73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154", + ], + [ + "5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5", + "39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865", + ], + [ + "36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66", + "d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc", + ], + [ + "336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726", + "ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224", + ], + [ + "8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede", + "6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e", + ], + [ + "1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94", + "60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6", + ], + [ + "85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31", + "3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511", + ], + [ + "29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51", + "b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b", + ], + [ + "a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252", + "ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2", + ], + [ + "4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5", + "cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c", + ], + [ + "d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b", + "6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3", + ], + [ + "ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4", + "322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d", + ], + [ + "af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f", + "6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700", + ], + [ + "e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889", + "2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4", + ], + [ + "591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246", + "b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196", + ], + [ + "11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984", + "998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4", + ], + [ + "3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a", + "b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257", + ], + [ + "cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030", + "bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13", + ], + [ + "c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197", + "6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096", + ], + [ + "c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593", + "c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38", + ], + [ + "a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef", + "21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f", + ], + [ + "347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38", + "60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448", + ], + [ + "da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a", + "49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a", + ], + [ + "c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111", + "5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4", + ], + [ + "4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502", + "7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437", + ], + [ + "3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea", + "be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7", + ], + [ + "cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26", + "8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d", + ], + [ + "b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986", + "39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a", + ], + [ + "d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e", + "62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54", + ], + [ + "48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4", + "25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77", + ], + [ + "dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda", + "ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517", + ], + [ + "6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859", + "cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10", + ], + [ + "e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f", + "f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125", + ], + [ + "eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c", + "6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e", + ], + [ + "13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942", + "fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1", + ], + [ + "ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a", + "1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2", + ], + [ + "b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80", + "5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423", + ], + [ + "ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d", + "438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8", + ], + [ + "8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1", + "cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758", + ], + [ + "52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63", + "c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375", + ], + [ + "e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352", + "6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d", + ], + [ + "7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193", + "ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec", + ], + [ + "5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00", + "9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0", + ], + [ + "32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58", + "ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c", + ], + [ + "e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7", + "d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4", + ], + [ + "8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8", + "c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f", + ], + [ + "4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e", + "67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649", + ], + [ + "3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d", + "cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826", + ], + [ + "674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b", + "299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5", + ], + [ + "d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f", + "f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87", + ], + [ + "30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6", + "462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b", + ], + [ + "be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297", + "62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc", + ], + [ + "93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a", + "7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c", + ], + [ + "b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c", + "ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f", + ], + [ + "d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52", + "4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a", + ], + [ + "d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb", + "bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46", + ], + [ + "463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065", + "bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f", + ], + [ + "7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917", + "603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03", + ], + [ + "74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9", + "cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08", + ], + [ + "30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3", + "553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8", + ], + [ + "9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57", + "712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373", + ], + [ + "176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66", + "ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3", + ], + [ + "75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8", + "9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8", + ], + [ + "809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721", + "9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1", + ], + [ + "1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180", + "4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9", + ], + ], + }, + }; + }, + 252372: function (e, t, i) { + "use strict"; + var n = t, + r = i(984826), + a = i(422555), + o = i(354845); + function s(e, t, i) { + var n = Array(Math.max(e.bitLength(), i) + 1); + for (o = 0; o < n.length; o += 1) n[o] = 0; + var r = 1 << (t + 1), + a = e.clone(); + for (o = 0; o < n.length; o++) { + var o, + s, + l = a.andln(r - 1); + a.isOdd() + ? ((s = l > (r >> 1) - 1 ? (r >> 1) - l : l), a.isubn(s)) + : (s = 0), + (n[o] = s), + a.iushrn(1); + } + return n; + } + function l(e, t) { + var i = [[], []]; + (e = e.clone()), (t = t.clone()); + for (var n = 0, r = 0; e.cmpn(-n) > 0 || t.cmpn(-r) > 0; ) { + var a, + o, + s, + l = (e.andln(3) + n) & 3, + c = (t.andln(3) + r) & 3; + 3 === l && (l = -1), + 3 === c && (c = -1), + (o = + (1 & l) == 0 + ? 0 + : (3 == (a = (e.andln(7) + n) & 7) || 5 === a) && 2 === c + ? -l + : l), + i[0].push(o), + (s = + (1 & c) == 0 + ? 0 + : (3 == (a = (t.andln(7) + r) & 7) || 5 === a) && 2 === l + ? -c + : c), + i[1].push(s), + 2 * n === o + 1 && (n = 1 - n), + 2 * r === s + 1 && (r = 1 - r), + e.iushrn(1), + t.iushrn(1); + } + return i; + } + function c(e, t, i) { + var n = "_" + t; + e.prototype[t] = function () { + return void 0 !== this[n] ? this[n] : (this[n] = i.call(this)); + }; + } + function d(e) { + return "string" == typeof e ? n.toArray(e, "hex") : e; + } + function u(e) { + return new r(e, "hex", "le"); + } + (n.assert = a), + (n.toArray = o.toArray), + (n.zero2 = o.zero2), + (n.toHex = o.toHex), + (n.encode = o.encode), + (n.getNAF = s), + (n.getJSF = l), + (n.cachedProperty = c), + (n.parseBytes = d), + (n.intFromLE = u); + }, + 122582: function (e) { + function t() { + (this._events = this._events || {}), + (this._maxListeners = this._maxListeners || void 0); + } + function i(e) { + return "function" == typeof e; + } + function n(e) { + return "number" == typeof e; + } + function r(e) { + return "object" == typeof e && null !== e; + } + function a(e) { + return void 0 === e; + } + (e.exports = t), + (t.EventEmitter = t), + (t.prototype._events = void 0), + (t.prototype._maxListeners = void 0), + (t.defaultMaxListeners = 10), + (t.prototype.setMaxListeners = function (e) { + if (!n(e) || e < 0 || isNaN(e)) + throw TypeError("n must be a positive number"); + return (this._maxListeners = e), this; + }), + (t.prototype.emit = function (e) { + var t, n, o, s, l, c; + if ( + (!this._events && (this._events = {}), + "error" === e && + (!this._events.error || + (r(this._events.error) && !this._events.error.length))) + ) { + if (((t = arguments[1]), t instanceof Error)) throw t; + var d = Error('Uncaught, unspecified "error" event. (' + t + ")"); + throw ((d.context = t), d); + } + if (a((n = this._events[e]))) return !1; + if (i(n)) + switch (arguments.length) { + case 1: + n.call(this); + break; + case 2: + n.call(this, arguments[1]); + break; + case 3: + n.call(this, arguments[1], arguments[2]); + break; + default: + (s = Array.prototype.slice.call(arguments, 1)), + n.apply(this, s); + } + else if (r(n)) + for ( + l = 0, + s = Array.prototype.slice.call(arguments, 1), + o = (c = n.slice()).length; + l < o; + l++ + ) + c[l].apply(this, s); + return !0; + }), + (t.prototype.addListener = function (e, n) { + var o; + if (!i(n)) throw TypeError("listener must be a function"); + return ( + !this._events && (this._events = {}), + this._events.newListener && + this.emit("newListener", e, i(n.listener) ? n.listener : n), + this._events[e] + ? r(this._events[e]) + ? this._events[e].push(n) + : (this._events[e] = [this._events[e], n]) + : (this._events[e] = n), + r(this._events[e]) && + !this._events[e].warned && + (o = a(this._maxListeners) + ? t.defaultMaxListeners + : this._maxListeners) && + o > 0 && + this._events[e].length > o && + ((this._events[e].warned = !0), + console.error( + "(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.", + this._events[e].length + ), + "function" == typeof console.trace && console.trace()), + this + ); + }), + (t.prototype.on = t.prototype.addListener), + (t.prototype.once = function (e, t) { + if (!i(t)) throw TypeError("listener must be a function"); + var n = !1; + function r() { + this.removeListener(e, r), + !n && ((n = !0), t.apply(this, arguments)); + } + return (r.listener = t), this.on(e, r), this; + }), + (t.prototype.removeListener = function (e, t) { + var n, a, o, s; + if (!i(t)) throw TypeError("listener must be a function"); + if (!this._events || !this._events[e]) return this; + if ( + ((o = (n = this._events[e]).length), + (a = -1), + n === t || (i(n.listener) && n.listener === t)) + ) + delete this._events[e], + this._events.removeListener && this.emit("removeListener", e, t); + else if (r(n)) { + for (s = o; s-- > 0; ) + if (n[s] === t || (n[s].listener && n[s].listener === t)) { + a = s; + break; + } + if (a < 0) return this; + 1 === n.length + ? ((n.length = 0), delete this._events[e]) + : n.splice(a, 1), + this._events.removeListener && this.emit("removeListener", e, t); + } + return this; + }), + (t.prototype.removeAllListeners = function (e) { + var t, n; + if (!this._events) return this; + if (!this._events.removeListener) + return ( + 0 == arguments.length + ? (this._events = {}) + : this._events[e] && delete this._events[e], + this + ); + if (0 == arguments.length) { + for (t in this._events) + "removeListener" !== t && this.removeAllListeners(t); + return ( + this.removeAllListeners("removeListener"), + (this._events = {}), + this + ); + } + if (i((n = this._events[e]))) this.removeListener(e, n); + else if (n) + for (; n.length; ) this.removeListener(e, n[n.length - 1]); + return delete this._events[e], this; + }), + (t.prototype.listeners = function (e) { + var t; + return (t = + this._events && this._events[e] + ? i(this._events[e]) + ? [this._events[e]] + : this._events[e].slice() + : []); + }), + (t.prototype.listenerCount = function (e) { + if (this._events) { + var t = this._events[e]; + if (i(t)) return 1; + if (t) return t.length; + } + return 0; + }), + (t.listenerCount = function (e, t) { + return e.listenerCount(t); + }); + }, + 948881: function (e, t, i) { + var n = i(140860).Buffer, + r = i(317511); + function a(e, t, i, a) { + if ( + (!n.isBuffer(e) && (e = n.from(e, "binary")), + t && (!n.isBuffer(t) && (t = n.from(t, "binary")), 8 !== t.length)) + ) + throw RangeError("salt should be Buffer with 8 byte length"); + for ( + var o = i / 8, s = n.alloc(o), l = n.alloc(a || 0), c = n.alloc(0); + o > 0 || a > 0; + + ) { + var d = new r(); + d.update(c), d.update(e), t && d.update(t), (c = d.digest()); + var u = 0; + if (o > 0) { + var f = s.length - o; + (u = Math.min(o, c.length)), c.copy(s, f, 0, u), (o -= u); + } + if (u < c.length && a > 0) { + var h = l.length - a, + p = Math.min(a, c.length - u); + c.copy(l, h, u, u + p), (a -= p); + } + } + return c.fill(0), { key: s, iv: l }; + } + e.exports = a; + }, + 277514: function (e, t, i) { + "use strict"; + var n = i(140860).Buffer, + r = i(235521).Transform; + function a(e, t) { + if (!n.isBuffer(e) && "string" != typeof e) + throw TypeError(t + " must be a string or a buffer"); + } + function o(e) { + r.call(this), + (this._block = n.allocUnsafe(e)), + (this._blockSize = e), + (this._blockOffset = 0), + (this._length = [0, 0, 0, 0]), + (this._finalized = !1); + } + i(32016)(o, r), + (o.prototype._transform = function (e, t, i) { + var n = null; + try { + this.update(e, t); + } catch (e) { + n = e; + } + i(n); + }), + (o.prototype._flush = function (e) { + var t = null; + try { + this.push(this.digest()); + } catch (e) { + t = e; + } + e(t); + }), + (o.prototype.update = function (e, t) { + if ((a(e, "Data"), this._finalized)) + throw Error("Digest already called"); + !n.isBuffer(e) && (e = n.from(e, t)); + for ( + var i = this._block, r = 0; + this._blockOffset + e.length - r >= this._blockSize; + + ) { + for (var o = this._blockOffset; o < this._blockSize; ) + i[o++] = e[r++]; + this._update(), (this._blockOffset = 0); + } + for (; r < e.length; ) i[this._blockOffset++] = e[r++]; + for (var s = 0, l = 8 * e.length; l > 0; ++s) + (this._length[s] += l), + (l = (this._length[s] / 0x100000000) | 0) > 0 && + (this._length[s] -= 0x100000000 * l); + return this; + }), + (o.prototype._update = function () { + throw Error("_update is not implemented"); + }), + (o.prototype.digest = function (e) { + if (this._finalized) throw Error("Digest already called"); + this._finalized = !0; + var t = this._digest(); + void 0 !== e && (t = t.toString(e)), + this._block.fill(0), + (this._blockOffset = 0); + for (var i = 0; i < 4; ++i) this._length[i] = 0; + return t; + }), + (o.prototype._digest = function () { + throw Error("_digest is not implemented"); + }), + (e.exports = o); + }, + 917474: function (e, t, i) { + var n = t; + (n.utils = i(696225)), + (n.common = i(199408)), + (n.sha = i(397443)), + (n.ripemd = i(830748)), + (n.hmac = i(511450)), + (n.sha1 = n.sha.sha1), + (n.sha256 = n.sha.sha256), + (n.sha224 = n.sha.sha224), + (n.sha384 = n.sha.sha384), + (n.sha512 = n.sha.sha512), + (n.ripemd160 = n.ripemd.ripemd160); + }, + 199408: function (e, t, i) { + "use strict"; + var n = i(696225), + r = i(422555); + function a() { + (this.pending = null), + (this.pendingTotal = 0), + (this.blockSize = this.constructor.blockSize), + (this.outSize = this.constructor.outSize), + (this.hmacStrength = this.constructor.hmacStrength), + (this.padLength = this.constructor.padLength / 8), + (this.endian = "big"), + (this._delta8 = this.blockSize / 8), + (this._delta32 = this.blockSize / 32); + } + (t.BlockHash = a), + (a.prototype.update = function (e, t) { + if ( + ((e = n.toArray(e, t)), + this.pending + ? (this.pending = this.pending.concat(e)) + : (this.pending = e), + (this.pendingTotal += e.length), + this.pending.length >= this._delta8) + ) { + var i = (e = this.pending).length % this._delta8; + (this.pending = e.slice(e.length - i, e.length)), + 0 === this.pending.length && (this.pending = null), + (e = n.join32(e, 0, e.length - i, this.endian)); + for (var r = 0; r < e.length; r += this._delta32) + this._update(e, r, r + this._delta32); + } + return this; + }), + (a.prototype.digest = function (e) { + return ( + this.update(this._pad()), r(null === this.pending), this._digest(e) + ); + }), + (a.prototype._pad = function () { + var e = this.pendingTotal, + t = this._delta8, + i = t - ((e + this.padLength) % t), + n = Array(i + this.padLength); + n[0] = 128; + for (var r = 1; r < i; r++) n[r] = 0; + if (((e <<= 3), "big" === this.endian)) { + for (var a = 8; a < this.padLength; a++) n[r++] = 0; + (n[r++] = 0), + (n[r++] = 0), + (n[r++] = 0), + (n[r++] = 0), + (n[r++] = (e >>> 24) & 255), + (n[r++] = (e >>> 16) & 255), + (n[r++] = (e >>> 8) & 255), + (n[r++] = 255 & e); + } else + for ( + a = 8, + n[r++] = 255 & e, + n[r++] = (e >>> 8) & 255, + n[r++] = (e >>> 16) & 255, + n[r++] = (e >>> 24) & 255, + n[r++] = 0, + n[r++] = 0, + n[r++] = 0, + n[r++] = 0; + a < this.padLength; + a++ + ) + n[r++] = 0; + return n; + }); + }, + 511450: function (e, t, i) { + "use strict"; + var n = i(696225), + r = i(422555); + function a(e, t, i) { + if (!(this instanceof a)) return new a(e, t, i); + (this.Hash = e), + (this.blockSize = e.blockSize / 8), + (this.outSize = e.outSize / 8), + (this.inner = null), + (this.outer = null), + this._init(n.toArray(t, i)); + } + (e.exports = a), + (a.prototype._init = function (e) { + e.length > this.blockSize && (e = new this.Hash().update(e).digest()), + r(e.length <= this.blockSize); + for (var t = e.length; t < this.blockSize; t++) e.push(0); + for (t = 0; t < e.length; t++) e[t] ^= 54; + for (t = 0, this.inner = new this.Hash().update(e); t < e.length; t++) + e[t] ^= 106; + this.outer = new this.Hash().update(e); + }), + (a.prototype.update = function (e, t) { + return this.inner.update(e, t), this; + }), + (a.prototype.digest = function (e) { + return this.outer.update(this.inner.digest()), this.outer.digest(e); + }); + }, + 830748: function (e, t, i) { + "use strict"; + var n = i(696225), + r = i(199408), + a = n.rotl32, + o = n.sum32, + s = n.sum32_3, + l = n.sum32_4, + c = r.BlockHash; + function d() { + if (!(this instanceof d)) return new d(); + c.call(this), + (this.h = [ + 0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0, + ]), + (this.endian = "little"); + } + function u(e, t, i, n) { + if (e <= 15) return t ^ i ^ n; + if (e <= 31) return (t & i) | (~t & n); + if (e <= 47) return (t | ~i) ^ n; + else if (e <= 63) return (t & n) | (i & ~n); + else return t ^ (i | ~n); + } + function f(e) { + if (e <= 15) return 0; + if (e <= 31) return 0x5a827999; + if (e <= 47) return 0x6ed9eba1; + else if (e <= 63) return 0x8f1bbcdc; + else return 0xa953fd4e; + } + function h(e) { + if (e <= 15) return 0x50a28be6; + if (e <= 31) return 0x5c4dd124; + if (e <= 47) return 0x6d703ef3; + else if (e <= 63) return 0x7a6d76e9; + else return 0; + } + n.inherits(d, c), + (t.ripemd160 = d), + (d.blockSize = 512), + (d.outSize = 160), + (d.hmacStrength = 192), + (d.padLength = 64), + (d.prototype._update = function (e, t) { + for ( + var i = this.h[0], + n = this.h[1], + r = this.h[2], + c = this.h[3], + d = this.h[4], + _ = i, + y = n, + b = r, + I = c, + w = d, + x = 0; + x < 80; + x++ + ) { + var S = o(a(l(i, u(x, n, r, c), e[p[x] + t], f(x)), m[x]), d); + (i = d), + (d = c), + (c = a(r, 10)), + (r = n), + (n = S), + (S = o(a(l(_, u(79 - x, y, b, I), e[v[x] + t], h(x)), g[x]), w)), + (_ = w), + (w = I), + (I = a(b, 10)), + (b = y), + (y = S); + } + (S = s(this.h[1], r, I)), + (this.h[1] = s(this.h[2], c, w)), + (this.h[2] = s(this.h[3], d, _)), + (this.h[3] = s(this.h[4], i, y)), + (this.h[4] = s(this.h[0], n, b)), + (this.h[0] = S); + }), + (d.prototype._digest = function (e) { + return "hex" === e + ? n.toHex32(this.h, "little") + : n.split32(this.h, "little"); + }); + var p = [ + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 7, 4, 13, 1, 10, + 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8, 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, + 0, 6, 13, 11, 5, 12, 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, + 6, 2, 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13, + ], + v = [ + 5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12, 6, 11, 3, 7, 0, + 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2, 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, + 12, 2, 10, 0, 4, 13, 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, + 14, 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11, + ], + m = [ + 11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8, 7, 6, 8, 13, + 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12, 11, 13, 6, 7, 14, 9, 13, + 15, 14, 8, 13, 6, 5, 12, 7, 5, 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, + 6, 8, 6, 5, 12, 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, + 6, + ], + g = [ + 8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6, 9, 13, 15, 7, + 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11, 9, 7, 15, 11, 8, 6, 6, 14, + 12, 13, 5, 14, 13, 13, 7, 5, 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, + 12, 5, 15, 8, 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11, + ]; + }, + 397443: function (e, t, i) { + "use strict"; + (t.sha1 = i(799078)), + (t.sha224 = i(21291)), + (t.sha256 = i(611179)), + (t.sha384 = i(647005)), + (t.sha512 = i(866923)); + }, + 799078: function (e, t, i) { + "use strict"; + var n = i(696225), + r = i(199408), + a = i(957356), + o = n.rotl32, + s = n.sum32, + l = n.sum32_5, + c = a.ft_1, + d = r.BlockHash, + u = [0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xca62c1d6]; + function f() { + if (!(this instanceof f)) return new f(); + d.call(this), + (this.h = [ + 0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0, + ]), + (this.W = Array(80)); + } + n.inherits(f, d), + (e.exports = f), + (f.blockSize = 512), + (f.outSize = 160), + (f.hmacStrength = 80), + (f.padLength = 64), + (f.prototype._update = function (e, t) { + for (var i = this.W, n = 0; n < 16; n++) i[n] = e[t + n]; + for (; n < i.length; n++) + i[n] = o(i[n - 3] ^ i[n - 8] ^ i[n - 14] ^ i[n - 16], 1); + var r = this.h[0], + a = this.h[1], + d = this.h[2], + f = this.h[3], + h = this.h[4]; + for (n = 0; n < i.length; n++) { + var p = ~~(n / 20), + v = l(o(r, 5), c(p, a, d, f), h, i[n], u[p]); + (h = f), (f = d), (d = o(a, 30)), (a = r), (r = v); + } + (this.h[0] = s(this.h[0], r)), + (this.h[1] = s(this.h[1], a)), + (this.h[2] = s(this.h[2], d)), + (this.h[3] = s(this.h[3], f)), + (this.h[4] = s(this.h[4], h)); + }), + (f.prototype._digest = function (e) { + return "hex" === e + ? n.toHex32(this.h, "big") + : n.split32(this.h, "big"); + }); + }, + 21291: function (e, t, i) { + "use strict"; + var n = i(696225), + r = i(611179); + function a() { + if (!(this instanceof a)) return new a(); + r.call(this), + (this.h = [ + 0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939, 0xffc00b31, + 0x68581511, 0x64f98fa7, 0xbefa4fa4, + ]); + } + n.inherits(a, r), + (e.exports = a), + (a.blockSize = 512), + (a.outSize = 224), + (a.hmacStrength = 192), + (a.padLength = 64), + (a.prototype._digest = function (e) { + return "hex" === e + ? n.toHex32(this.h.slice(0, 7), "big") + : n.split32(this.h.slice(0, 7), "big"); + }); + }, + 611179: function (e, t, i) { + "use strict"; + var n = i(696225), + r = i(199408), + a = i(957356), + o = i(422555), + s = n.sum32, + l = n.sum32_4, + c = n.sum32_5, + d = a.ch32, + u = a.maj32, + f = a.s0_256, + h = a.s1_256, + p = a.g0_256, + v = a.g1_256, + m = r.BlockHash, + g = [ + 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, + 0x59f111f1, 0x923f82a4, 0xab1c5ed5, 0xd807aa98, 0x12835b01, + 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, + 0xc19bf174, 0xe49b69c1, 0xefbe4786, 0xfc19dc6, 0x240ca1cc, 0x2de92c6f, + 0x4a7484aa, 0x5cb0a9dc, 0x76f988da, 0x983e5152, 0xa831c66d, + 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x6ca6351, 0x14292967, + 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, + 0x766a0abb, 0x81c2c92e, 0x92722c85, 0xa2bfe8a1, 0xa81a664b, + 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, + 0x106aa070, 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, + 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3, 0x748f82ee, + 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, + 0xbef9a3f7, 0xc67178f2, + ]; + function _() { + if (!(this instanceof _)) return new _(); + m.call(this), + (this.h = [ + 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, + 0x9b05688c, 0x1f83d9ab, 0x5be0cd19, + ]), + (this.k = g), + (this.W = Array(64)); + } + n.inherits(_, m), + (e.exports = _), + (_.blockSize = 512), + (_.outSize = 256), + (_.hmacStrength = 192), + (_.padLength = 64), + (_.prototype._update = function (e, t) { + for (var i = this.W, n = 0; n < 16; n++) i[n] = e[t + n]; + for (; n < i.length; n++) + i[n] = l(v(i[n - 2]), i[n - 7], p(i[n - 15]), i[n - 16]); + var r = this.h[0], + a = this.h[1], + m = this.h[2], + g = this.h[3], + _ = this.h[4], + y = this.h[5], + b = this.h[6], + I = this.h[7]; + for (o(this.k.length === i.length), n = 0; n < i.length; n++) { + var w = c(I, h(_), d(_, y, b), this.k[n], i[n]), + x = s(f(r), u(r, a, m)); + (I = b), + (b = y), + (y = _), + (_ = s(g, w)), + (g = m), + (m = a), + (a = r), + (r = s(w, x)); + } + (this.h[0] = s(this.h[0], r)), + (this.h[1] = s(this.h[1], a)), + (this.h[2] = s(this.h[2], m)), + (this.h[3] = s(this.h[3], g)), + (this.h[4] = s(this.h[4], _)), + (this.h[5] = s(this.h[5], y)), + (this.h[6] = s(this.h[6], b)), + (this.h[7] = s(this.h[7], I)); + }), + (_.prototype._digest = function (e) { + return "hex" === e + ? n.toHex32(this.h, "big") + : n.split32(this.h, "big"); + }); + }, + 647005: function (e, t, i) { + "use strict"; + var n = i(696225), + r = i(866923); + function a() { + if (!(this instanceof a)) return new a(); + r.call(this), + (this.h = [ + 0xcbbb9d5d, 0xc1059ed8, 0x629a292a, 0x367cd507, 0x9159015a, + 0x3070dd17, 0x152fecd8, 0xf70e5939, 0x67332667, 0xffc00b31, + 0x8eb44a87, 0x68581511, 0xdb0c2e0d, 0x64f98fa7, 0x47b5481d, + 0xbefa4fa4, + ]); + } + n.inherits(a, r), + (e.exports = a), + (a.blockSize = 1024), + (a.outSize = 384), + (a.hmacStrength = 192), + (a.padLength = 128), + (a.prototype._digest = function (e) { + return "hex" === e + ? n.toHex32(this.h.slice(0, 12), "big") + : n.split32(this.h.slice(0, 12), "big"); + }); + }, + 866923: function (e, t, i) { + "use strict"; + var n = i(696225), + r = i(199408), + a = i(422555), + o = n.rotr64_hi, + s = n.rotr64_lo, + l = n.shr64_hi, + c = n.shr64_lo, + d = n.sum64, + u = n.sum64_hi, + f = n.sum64_lo, + h = n.sum64_4_hi, + p = n.sum64_4_lo, + v = n.sum64_5_hi, + m = n.sum64_5_lo, + g = r.BlockHash, + _ = [ + 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd, 0xb5c0fbcf, + 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc, 0x3956c25b, 0xf348b538, + 0x59f111f1, 0xb605d019, 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, + 0xda6d8118, 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe, + 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2, 0x72be5d74, + 0xf27b896f, 0x80deb1fe, 0x3b1696b1, 0x9bdc06a7, 0x25c71235, + 0xc19bf174, 0xcf692694, 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, + 0x384f25e3, 0xfc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65, 0x2de92c6f, + 0x592b0275, 0x4a7484aa, 0x6ea6e483, 0x5cb0a9dc, 0xbd41fbd4, + 0x76f988da, 0x831153b5, 0x983e5152, 0xee66dfab, 0xa831c66d, + 0x2db43210, 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4, + 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725, 0x6ca6351, 0xe003826f, + 0x14292967, 0xa0e6e70, 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926, + 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df, 0x650a7354, + 0x8baf63de, 0x766a0abb, 0x3c77b2a8, 0x81c2c92e, 0x47edaee6, + 0x92722c85, 0x1482353b, 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, + 0xbc423001, 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x654be30, 0xd192e819, + 0xd6ef5218, 0xd6990624, 0x5565a910, 0xf40e3585, 0x5771202a, + 0x106aa070, 0x32bbd1b8, 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, + 0x5141ab53, 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8, + 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb, 0x5b9cca4f, + 0x7763e373, 0x682e6ff3, 0xd6b2b8a3, 0x748f82ee, 0x5defb2fc, + 0x78a5636f, 0x43172f60, 0x84c87814, 0xa1f0ab72, 0x8cc70208, + 0x1a6439ec, 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9, + 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b, 0xca273ece, + 0xea26619c, 0xd186b8c7, 0x21c0c207, 0xeada7dd6, 0xcde0eb1e, + 0xf57d4f7f, 0xee6ed178, 0x6f067aa, 0x72176fba, 0xa637dc5, 0xa2c898a6, + 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b, 0x28db77f5, + 0x23047d84, 0x32caab7b, 0x40c72493, 0x3c9ebe0a, 0x15c9bebc, + 0x431d67c4, 0x9c100d4c, 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, + 0xfc657e2a, 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817, + ]; + function y() { + if (!(this instanceof y)) return new y(); + g.call(this), + (this.h = [ + 0x6a09e667, 0xf3bcc908, 0xbb67ae85, 0x84caa73b, 0x3c6ef372, + 0xfe94f82b, 0xa54ff53a, 0x5f1d36f1, 0x510e527f, 0xade682d1, + 0x9b05688c, 0x2b3e6c1f, 0x1f83d9ab, 0xfb41bd6b, 0x5be0cd19, + 0x137e2179, + ]), + (this.k = _), + (this.W = Array(160)); + } + function b(e, t, i, n, r) { + var a = (e & i) ^ (~e & r); + return a < 0 && (a += 0x100000000), a; + } + function I(e, t, i, n, r, a) { + var o = (t & n) ^ (~t & a); + return o < 0 && (o += 0x100000000), o; + } + function w(e, t, i, n, r) { + var a = (e & i) ^ (e & r) ^ (i & r); + return a < 0 && (a += 0x100000000), a; + } + function x(e, t, i, n, r, a) { + var o = (t & n) ^ (t & a) ^ (n & a); + return o < 0 && (o += 0x100000000), o; + } + function S(e, t) { + var i = o(e, t, 28) ^ o(t, e, 2) ^ o(t, e, 7); + return i < 0 && (i += 0x100000000), i; + } + function M(e, t) { + var i = s(e, t, 28) ^ s(t, e, 2) ^ s(t, e, 7); + return i < 0 && (i += 0x100000000), i; + } + function C(e, t) { + var i = o(e, t, 14) ^ o(e, t, 18) ^ o(t, e, 9); + return i < 0 && (i += 0x100000000), i; + } + function T(e, t) { + var i = s(e, t, 14) ^ s(e, t, 18) ^ s(t, e, 9); + return i < 0 && (i += 0x100000000), i; + } + function A(e, t) { + var i = o(e, t, 1) ^ o(e, t, 8) ^ l(e, t, 7); + return i < 0 && (i += 0x100000000), i; + } + function k(e, t) { + var i = s(e, t, 1) ^ s(e, t, 8) ^ c(e, t, 7); + return i < 0 && (i += 0x100000000), i; + } + function P(e, t) { + var i = o(e, t, 19) ^ o(t, e, 29) ^ l(e, t, 6); + return i < 0 && (i += 0x100000000), i; + } + function E(e, t) { + var i = s(e, t, 19) ^ s(t, e, 29) ^ c(e, t, 6); + return i < 0 && (i += 0x100000000), i; + } + n.inherits(y, g), + (e.exports = y), + (y.blockSize = 1024), + (y.outSize = 512), + (y.hmacStrength = 192), + (y.padLength = 128), + (y.prototype._prepareBlock = function (e, t) { + for (var i = this.W, n = 0; n < 32; n++) i[n] = e[t + n]; + for (; n < i.length; n += 2) { + var r = P(i[n - 4], i[n - 3]), + a = E(i[n - 4], i[n - 3]), + o = i[n - 14], + s = i[n - 13], + l = A(i[n - 30], i[n - 29]), + c = k(i[n - 30], i[n - 29]), + d = i[n - 32], + u = i[n - 31]; + (i[n] = h(r, a, o, s, l, c, d, u)), + (i[n + 1] = p(r, a, o, s, l, c, d, u)); + } + }), + (y.prototype._update = function (e, t) { + this._prepareBlock(e, t); + var i = this.W, + n = this.h[0], + r = this.h[1], + o = this.h[2], + s = this.h[3], + l = this.h[4], + c = this.h[5], + h = this.h[6], + p = this.h[7], + g = this.h[8], + _ = this.h[9], + y = this.h[10], + A = this.h[11], + k = this.h[12], + P = this.h[13], + E = this.h[14], + D = this.h[15]; + a(this.k.length === i.length); + for (var R = 0; R < i.length; R += 2) { + var N = E, + L = D, + j = C(g, _), + O = T(g, _), + B = b(g, _, y, A, k, P), + F = I(g, _, y, A, k, P), + U = this.k[R], + G = this.k[R + 1], + z = i[R], + V = i[R + 1], + W = v(N, L, j, O, B, F, U, G, z, V), + Z = m(N, L, j, O, B, F, U, G, z, V); + (N = S(n, r)), (L = M(n, r)), (j = w(n, r, o, s, l, c)); + var K = u(N, L, j, (O = x(n, r, o, s, l, c))), + H = f(N, L, j, O); + (E = k), + (D = P), + (k = y), + (P = A), + (y = g), + (A = _), + (g = u(h, p, W, Z)), + (_ = f(p, p, W, Z)), + (h = l), + (p = c), + (l = o), + (c = s), + (o = n), + (s = r), + (n = u(W, Z, K, H)), + (r = f(W, Z, K, H)); + } + d(this.h, 0, n, r), + d(this.h, 2, o, s), + d(this.h, 4, l, c), + d(this.h, 6, h, p), + d(this.h, 8, g, _), + d(this.h, 10, y, A), + d(this.h, 12, k, P), + d(this.h, 14, E, D); + }), + (y.prototype._digest = function (e) { + return "hex" === e + ? n.toHex32(this.h, "big") + : n.split32(this.h, "big"); + }); + }, + 957356: function (e, t, i) { + "use strict"; + var n = i(696225).rotr32; + function r(e, t, i, n) { + return 0 === e + ? a(t, i, n) + : 1 === e || 3 === e + ? s(t, i, n) + : 2 === e + ? o(t, i, n) + : void 0; + } + function a(e, t, i) { + return (e & t) ^ (~e & i); + } + function o(e, t, i) { + return (e & t) ^ (e & i) ^ (t & i); + } + function s(e, t, i) { + return e ^ t ^ i; + } + function l(e) { + return n(e, 2) ^ n(e, 13) ^ n(e, 22); + } + function c(e) { + return n(e, 6) ^ n(e, 11) ^ n(e, 25); + } + function d(e) { + return n(e, 7) ^ n(e, 18) ^ (e >>> 3); + } + function u(e) { + return n(e, 17) ^ n(e, 19) ^ (e >>> 10); + } + (t.ft_1 = r), + (t.ch32 = a), + (t.maj32 = o), + (t.p32 = s), + (t.s0_256 = l), + (t.s1_256 = c), + (t.g0_256 = d), + (t.g1_256 = u); + }, + 696225: function (e, t, i) { + "use strict"; + var n = i(422555), + r = i(32016); + function a(e, t) { + return ( + (64512 & e.charCodeAt(t)) == 55296 && + !(t < 0) && + !(t + 1 >= e.length) && + (64512 & e.charCodeAt(t + 1)) == 56320 + ); + } + function o(e, t) { + if (Array.isArray(e)) return e.slice(); + if (!e) return []; + var i = []; + if ("string" == typeof e) { + if (t) { + if ("hex" === t) + for ( + (e = e.replace(/[^a-z0-9]+/gi, "")).length % 2 != 0 && + (e = "0" + e), + r = 0; + r < e.length; + r += 2 + ) + i.push(parseInt(e[r] + e[r + 1], 16)); + } else { + for (var n = 0, r = 0; r < e.length; r++) { + var o = e.charCodeAt(r); + o < 128 + ? (i[n++] = o) + : (o < 2048 + ? (i[n++] = (o >> 6) | 192) + : (a(e, r) + ? ((o = + 65536 + + ((1023 & o) << 10) + + (1023 & e.charCodeAt(++r))), + (i[n++] = (o >> 18) | 240), + (i[n++] = ((o >> 12) & 63) | 128)) + : (i[n++] = (o >> 12) | 224), + (i[n++] = ((o >> 6) & 63) | 128)), + (i[n++] = (63 & o) | 128)); + } + } + } else for (r = 0; r < e.length; r++) i[r] = 0 | e[r]; + return i; + } + function s(e) { + for (var t = "", i = 0; i < e.length; i++) t += d(e[i].toString(16)); + return t; + } + function l(e) { + return ( + ((e >>> 24) | + ((e >>> 8) & 65280) | + ((e << 8) & 0xff0000) | + ((255 & e) << 24)) >>> + 0 + ); + } + function c(e, t) { + for (var i = "", n = 0; n < e.length; n++) { + var r = e[n]; + "little" === t && (r = l(r)), (i += u(r.toString(16))); + } + return i; + } + function d(e) { + return 1 === e.length ? "0" + e : e; + } + function u(e) { + if (7 === e.length) return "0" + e; + if (6 === e.length) return "00" + e; + if (5 === e.length) return "000" + e; + else if (4 === e.length) return "0000" + e; + else if (3 === e.length) return "00000" + e; + else if (2 === e.length) return "000000" + e; + else if (1 === e.length) return "0000000" + e; + else return e; + } + function f(e, t, i, r) { + var a, + o = i - t; + n(o % 4 == 0); + for (var s = Array(o / 4), l = 0, c = t; l < s.length; l++, c += 4) + (a = + "big" === r + ? (e[c] << 24) | (e[c + 1] << 16) | (e[c + 2] << 8) | e[c + 3] + : (e[c + 3] << 24) | (e[c + 2] << 16) | (e[c + 1] << 8) | e[c]), + (s[l] = a >>> 0); + return s; + } + function h(e, t) { + for ( + var i = Array(4 * e.length), n = 0, r = 0; + n < e.length; + n++, r += 4 + ) { + var a = e[n]; + "big" === t + ? ((i[r] = a >>> 24), + (i[r + 1] = (a >>> 16) & 255), + (i[r + 2] = (a >>> 8) & 255), + (i[r + 3] = 255 & a)) + : ((i[r + 3] = a >>> 24), + (i[r + 2] = (a >>> 16) & 255), + (i[r + 1] = (a >>> 8) & 255), + (i[r] = 255 & a)); + } + return i; + } + function p(e, t) { + return (e >>> t) | (e << (32 - t)); + } + function v(e, t) { + return (e << t) | (e >>> (32 - t)); + } + function m(e, t) { + return (e + t) >>> 0; + } + function g(e, t, i) { + return (e + t + i) >>> 0; + } + function _(e, t, i, n) { + return (e + t + i + n) >>> 0; + } + function y(e, t, i, n, r) { + return (e + t + i + n + r) >>> 0; + } + function b(e, t, i, n) { + var r = e[t], + a = (n + e[t + 1]) >>> 0, + o = (a < n ? 1 : 0) + i + r; + (e[t] = o >>> 0), (e[t + 1] = a); + } + function I(e, t, i, n) { + return (((t + n) >>> 0 < t ? 1 : 0) + e + i) >>> 0; + } + function w(e, t, i, n) { + return (t + n) >>> 0; + } + function x(e, t, i, n, r, a, o, s) { + var l, + c = t; + return ( + (l = 0 + ((c = (c + n) >>> 0) < t ? 1 : 0)), + (l += (c = (c + a) >>> 0) < a ? 1 : 0), + (e + i + r + o + (l += (c = (c + s) >>> 0) < s ? 1 : 0)) >>> 0 + ); + } + function S(e, t, i, n, r, a, o, s) { + return (t + n + a + s) >>> 0; + } + function M(e, t, i, n, r, a, o, s, l, c) { + var d, + u = t; + return ( + (d = 0 + ((u = (u + n) >>> 0) < t ? 1 : 0)), + (d += (u = (u + a) >>> 0) < a ? 1 : 0), + (d += (u = (u + s) >>> 0) < s ? 1 : 0), + (e + i + r + o + l + (d += (u = (u + c) >>> 0) < c ? 1 : 0)) >>> 0 + ); + } + function C(e, t, i, n, r, a, o, s, l, c) { + return (t + n + a + s + c) >>> 0; + } + function T(e, t, i) { + return ((t << (32 - i)) | (e >>> i)) >>> 0; + } + function A(e, t, i) { + return ((e << (32 - i)) | (t >>> i)) >>> 0; + } + function k(e, t, i) { + return e >>> i; + } + function P(e, t, i) { + return ((e << (32 - i)) | (t >>> i)) >>> 0; + } + (t.inherits = r), + (t.toArray = o), + (t.toHex = s), + (t.htonl = l), + (t.toHex32 = c), + (t.zero2 = d), + (t.zero8 = u), + (t.join32 = f), + (t.split32 = h), + (t.rotr32 = p), + (t.rotl32 = v), + (t.sum32 = m), + (t.sum32_3 = g), + (t.sum32_4 = _), + (t.sum32_5 = y), + (t.sum64 = b), + (t.sum64_hi = I), + (t.sum64_lo = w), + (t.sum64_4_hi = x), + (t.sum64_4_lo = S), + (t.sum64_5_hi = M), + (t.sum64_5_lo = C), + (t.rotr64_hi = T), + (t.rotr64_lo = A), + (t.shr64_hi = k), + (t.shr64_lo = P); + }, + 458436: function (e, t, i) { + "use strict"; + var n = i(917474), + r = i(354845), + a = i(422555); + function o(e) { + if (!(this instanceof o)) return new o(e); + (this.hash = e.hash), + (this.predResist = !!e.predResist), + (this.outLen = this.hash.outSize), + (this.minEntropy = e.minEntropy || this.hash.hmacStrength), + (this._reseed = null), + (this.reseedInterval = null), + (this.K = null), + (this.V = null); + var t = r.toArray(e.entropy, e.entropyEnc || "hex"), + i = r.toArray(e.nonce, e.nonceEnc || "hex"), + n = r.toArray(e.pers, e.persEnc || "hex"); + a( + t.length >= this.minEntropy / 8, + "Not enough entropy. Minimum is: " + this.minEntropy + " bits" + ), + this._init(t, i, n); + } + (e.exports = o), + (o.prototype._init = function (e, t, i) { + var n = e.concat(t).concat(i); + (this.K = Array(this.outLen / 8)), (this.V = Array(this.outLen / 8)); + for (var r = 0; r < this.V.length; r++) + (this.K[r] = 0), (this.V[r] = 1); + this._update(n), + (this._reseed = 1), + (this.reseedInterval = 0x1000000000000); + }), + (o.prototype._hmac = function () { + return new n.hmac(this.hash, this.K); + }), + (o.prototype._update = function (e) { + var t = this._hmac().update(this.V).update([0]); + e && (t = t.update(e)), + (this.K = t.digest()), + (this.V = this._hmac().update(this.V).digest()), + e && + ((this.K = this._hmac() + .update(this.V) + .update([1]) + .update(e) + .digest()), + (this.V = this._hmac().update(this.V).digest())); + }), + (o.prototype.reseed = function (e, t, i, n) { + "string" != typeof t && ((n = i), (i = t), (t = null)), + (e = r.toArray(e, t)), + (i = r.toArray(i, n)), + a( + e.length >= this.minEntropy / 8, + "Not enough entropy. Minimum is: " + this.minEntropy + " bits" + ), + this._update(e.concat(i || [])), + (this._reseed = 1); + }), + (o.prototype.generate = function (e, t, i, n) { + if (this._reseed > this.reseedInterval) + throw Error("Reseed is required"); + "string" != typeof t && ((n = i), (i = t), (t = null)), + i && ((i = r.toArray(i, n || "hex")), this._update(i)); + for (var a = []; a.length < e; ) + (this.V = this._hmac().update(this.V).digest()), + (a = a.concat(this.V)); + var o = a.slice(0, e); + return this._update(i), this._reseed++, r.encode(o, t); + }); + }, + 32016: function (e) { + "function" == typeof Object.create + ? (e.exports = function (e, t) { + t && + ((e.super_ = t), + (e.prototype = Object.create(t.prototype, { + constructor: { + value: e, + enumerable: !1, + writable: !0, + configurable: !0, + }, + }))); + }) + : (e.exports = function (e, t) { + if (t) { + e.super_ = t; + var i = function () {}; + (i.prototype = t.prototype), + (e.prototype = new i()), + (e.prototype.constructor = e); + } + }); + }, + 991546: function (e) { + var t = {}.toString; + e.exports = + Array.isArray || + function (e) { + return "[object Array]" == t.call(e); + }; + }, + 317511: function (e, t, i) { + "use strict"; + var n = i(32016), + r = i(277514), + a = i(140860).Buffer, + o = Array(16); + function s() { + r.call(this, 64), + (this._a = 0x67452301), + (this._b = 0xefcdab89), + (this._c = 0x98badcfe), + (this._d = 0x10325476); + } + function l(e, t) { + return (e << t) | (e >>> (32 - t)); + } + function c(e, t, i, n, r, a, o) { + return (l((e + ((t & i) | (~t & n)) + r + a) | 0, o) + t) | 0; + } + function d(e, t, i, n, r, a, o) { + return (l((e + ((t & n) | (i & ~n)) + r + a) | 0, o) + t) | 0; + } + function u(e, t, i, n, r, a, o) { + return (l((e + (t ^ i ^ n) + r + a) | 0, o) + t) | 0; + } + function f(e, t, i, n, r, a, o) { + return (l((e + (i ^ (t | ~n)) + r + a) | 0, o) + t) | 0; + } + n(s, r), + (s.prototype._update = function () { + for (var e = o, t = 0; t < 16; ++t) + e[t] = this._block.readInt32LE(4 * t); + var i = this._a, + n = this._b, + r = this._c, + a = this._d; + (i = c(i, n, r, a, e[0], 0xd76aa478, 7)), + (a = c(a, i, n, r, e[1], 0xe8c7b756, 12)), + (r = c(r, a, i, n, e[2], 0x242070db, 17)), + (n = c(n, r, a, i, e[3], 0xc1bdceee, 22)), + (i = c(i, n, r, a, e[4], 0xf57c0faf, 7)), + (a = c(a, i, n, r, e[5], 0x4787c62a, 12)), + (r = c(r, a, i, n, e[6], 0xa8304613, 17)), + (n = c(n, r, a, i, e[7], 0xfd469501, 22)), + (i = c(i, n, r, a, e[8], 0x698098d8, 7)), + (a = c(a, i, n, r, e[9], 0x8b44f7af, 12)), + (r = c(r, a, i, n, e[10], 0xffff5bb1, 17)), + (n = c(n, r, a, i, e[11], 0x895cd7be, 22)), + (i = c(i, n, r, a, e[12], 0x6b901122, 7)), + (a = c(a, i, n, r, e[13], 0xfd987193, 12)), + (r = c(r, a, i, n, e[14], 0xa679438e, 17)), + (n = c(n, r, a, i, e[15], 0x49b40821, 22)), + (i = d(i, n, r, a, e[1], 0xf61e2562, 5)), + (a = d(a, i, n, r, e[6], 0xc040b340, 9)), + (r = d(r, a, i, n, e[11], 0x265e5a51, 14)), + (n = d(n, r, a, i, e[0], 0xe9b6c7aa, 20)), + (i = d(i, n, r, a, e[5], 0xd62f105d, 5)), + (a = d(a, i, n, r, e[10], 0x2441453, 9)), + (r = d(r, a, i, n, e[15], 0xd8a1e681, 14)), + (n = d(n, r, a, i, e[4], 0xe7d3fbc8, 20)), + (i = d(i, n, r, a, e[9], 0x21e1cde6, 5)), + (a = d(a, i, n, r, e[14], 0xc33707d6, 9)), + (r = d(r, a, i, n, e[3], 0xf4d50d87, 14)), + (n = d(n, r, a, i, e[8], 0x455a14ed, 20)), + (i = d(i, n, r, a, e[13], 0xa9e3e905, 5)), + (a = d(a, i, n, r, e[2], 0xfcefa3f8, 9)), + (r = d(r, a, i, n, e[7], 0x676f02d9, 14)), + (n = d(n, r, a, i, e[12], 0x8d2a4c8a, 20)), + (i = u(i, n, r, a, e[5], 0xfffa3942, 4)), + (a = u(a, i, n, r, e[8], 0x8771f681, 11)), + (r = u(r, a, i, n, e[11], 0x6d9d6122, 16)), + (n = u(n, r, a, i, e[14], 0xfde5380c, 23)), + (i = u(i, n, r, a, e[1], 0xa4beea44, 4)), + (a = u(a, i, n, r, e[4], 0x4bdecfa9, 11)), + (r = u(r, a, i, n, e[7], 0xf6bb4b60, 16)), + (n = u(n, r, a, i, e[10], 0xbebfbc70, 23)), + (i = u(i, n, r, a, e[13], 0x289b7ec6, 4)), + (a = u(a, i, n, r, e[0], 0xeaa127fa, 11)), + (r = u(r, a, i, n, e[3], 0xd4ef3085, 16)), + (n = u(n, r, a, i, e[6], 0x4881d05, 23)), + (i = u(i, n, r, a, e[9], 0xd9d4d039, 4)), + (a = u(a, i, n, r, e[12], 0xe6db99e5, 11)), + (r = u(r, a, i, n, e[15], 0x1fa27cf8, 16)), + (n = u(n, r, a, i, e[2], 0xc4ac5665, 23)), + (i = f(i, n, r, a, e[0], 0xf4292244, 6)), + (a = f(a, i, n, r, e[7], 0x432aff97, 10)), + (r = f(r, a, i, n, e[14], 0xab9423a7, 15)), + (n = f(n, r, a, i, e[5], 0xfc93a039, 21)), + (i = f(i, n, r, a, e[12], 0x655b59c3, 6)), + (a = f(a, i, n, r, e[3], 0x8f0ccc92, 10)), + (r = f(r, a, i, n, e[10], 0xffeff47d, 15)), + (n = f(n, r, a, i, e[1], 0x85845dd1, 21)), + (i = f(i, n, r, a, e[8], 0x6fa87e4f, 6)), + (a = f(a, i, n, r, e[15], 0xfe2ce6e0, 10)), + (r = f(r, a, i, n, e[6], 0xa3014314, 15)), + (n = f(n, r, a, i, e[13], 0x4e0811a1, 21)), + (i = f(i, n, r, a, e[4], 0xf7537e82, 6)), + (a = f(a, i, n, r, e[11], 0xbd3af235, 10)), + (r = f(r, a, i, n, e[2], 0x2ad7d2bb, 15)), + (n = f(n, r, a, i, e[9], 0xeb86d391, 21)), + (this._a = (this._a + i) | 0), + (this._b = (this._b + n) | 0), + (this._c = (this._c + r) | 0), + (this._d = (this._d + a) | 0); + }), + (s.prototype._digest = function () { + (this._block[this._blockOffset++] = 128), + this._blockOffset > 56 && + (this._block.fill(0, this._blockOffset, 64), + this._update(), + (this._blockOffset = 0)), + this._block.fill(0, this._blockOffset, 56), + this._block.writeUInt32LE(this._length[0], 56), + this._block.writeUInt32LE(this._length[1], 60), + this._update(); + var e = a.allocUnsafe(16); + return ( + e.writeInt32LE(this._a, 0), + e.writeInt32LE(this._b, 4), + e.writeInt32LE(this._c, 8), + e.writeInt32LE(this._d, 12), + e + ); + }), + (e.exports = s); + }, + 350724: function (e, t, i) { + var n = i(984826), + r = i(462810); + function a(e) { + this.rand = e || new r.Rand(); + } + (e.exports = a), + (a.create = function (e) { + return new a(e); + }), + (a.prototype._randbelow = function (e) { + var t = Math.ceil(e.bitLength() / 8); + do var i = new n(this.rand.generate(t)); + while (i.cmp(e) >= 0); + return i; + }), + (a.prototype._randrange = function (e, t) { + var i = t.sub(e); + return e.add(this._randbelow(i)); + }), + (a.prototype.test = function (e, t, i) { + var r = e.bitLength(), + a = n.mont(e), + o = new n(1).toRed(a); + !t && (t = Math.max(1, (r / 48) | 0)); + for (var s = e.subn(1), l = 0; !s.testn(l); l++); + for (var c = e.shrn(l), d = s.toRed(a), u = !0; t > 0; t--) { + var f = this._randrange(new n(2), s); + i && i(f); + var h = f.toRed(a).redPow(c); + if (0 !== h.cmp(o) && 0 !== h.cmp(d)) { + for (var p = 1; p < l; p++) { + if (0 === (h = h.redSqr()).cmp(o)) return !1; + if (0 === h.cmp(d)) break; + } + if (p === l) return !1; + } + } + return u; + }), + (a.prototype.getDivisor = function (e, t) { + var i = e.bitLength(), + r = n.mont(e), + a = new n(1).toRed(r); + !t && (t = Math.max(1, (i / 48) | 0)); + for (var o = e.subn(1), s = 0; !o.testn(s); s++); + for (var l = e.shrn(s), c = o.toRed(r); t > 0; t--) { + var d = this._randrange(new n(2), o), + u = e.gcd(d); + if (0 !== u.cmpn(1)) return u; + var f = d.toRed(r).redPow(l); + if (0 !== f.cmp(a) && 0 !== f.cmp(c)) { + for (var h = 1; h < s; h++) { + if (0 === (f = f.redSqr()).cmp(a)) + return f.fromRed().subn(1).gcd(e); + if (0 === f.cmp(c)) break; + } + if (h === s) return (f = f.redSqr()).fromRed().subn(1).gcd(e); + } + } + return !1; + }); + }, + 422555: function (e) { + function t(e, t) { + if (!e) throw Error(t || "Assertion failed"); + } + (e.exports = t), + (t.equal = function (e, t, i) { + if (e != t) throw Error(i || "Assertion failed: " + e + " != " + t); + }); + }, + 354845: function (e, t) { + "use strict"; + var i = t; + function n(e, t) { + if (Array.isArray(e)) return e.slice(); + if (!e) return []; + var i = []; + if ("string" != typeof e) { + for (var n = 0; n < e.length; n++) i[n] = 0 | e[n]; + return i; + } + if ("hex" === t) { + (e = e.replace(/[^a-z0-9]+/gi, "")).length % 2 != 0 && (e = "0" + e); + for (var n = 0; n < e.length; n += 2) + i.push(parseInt(e[n] + e[n + 1], 16)); + } else + for (var n = 0; n < e.length; n++) { + var r = e.charCodeAt(n), + a = r >> 8, + o = 255 & r; + a ? i.push(a, o) : i.push(o); + } + return i; + } + function r(e) { + return 1 === e.length ? "0" + e : e; + } + function a(e) { + for (var t = "", i = 0; i < e.length; i++) t += r(e[i].toString(16)); + return t; + } + (i.toArray = n), + (i.zero2 = r), + (i.toHex = a), + (i.encode = function (e, t) { + return "hex" === t ? a(e) : e; + }); + }, + 447462: function (e, t, i) { + "use strict"; + function n(e, t) { + return void 0 === t && (t = 15), +parseFloat(Number(e).toPrecision(t)); + } + function r(e) { + var t = e.toString().split(/[eE]/), + i = (t[0].split(".")[1] || "").length - +(t[1] || 0); + return i > 0 ? i : 0; + } + function a(e) { + if (-1 === e.toString().indexOf("e")) + return Number(e.toString().replace(".", "")); + var t = r(e); + return t > 0 ? n(Number(e) * Math.pow(10, t)) : Number(e); + } + function o(e) { + h && + (e > Number.MAX_SAFE_INTEGER || e < Number.MIN_SAFE_INTEGER) && + console.warn( + e + + " is beyond boundary when transfer to integer, the results may not be accurate" + ); + } + function s(e) { + return function () { + for (var t = [], i = 0; i < arguments.length; i++) + t[i] = arguments[i]; + var n = t[0]; + return t.slice(1).reduce(function (t, i) { + return e(t, i); + }, n); + }; + } + i.d(t, { + DZ: function () { + return l; + }, + PD: function () { + return c; + }, + cs: function () { + return u; + }, + h9: function () { + return d; + }, + }); + var l = s(function (e, t) { + var i = a(e), + n = a(t), + s = r(e) + r(t), + l = i * n; + return o(l), l / Math.pow(10, s); + }), + c = s(function (e, t) { + var i = Math.pow(10, Math.max(r(e), r(t))); + return (l(e, i) + l(t, i)) / i; + }), + d = s(function (e, t) { + var i = Math.pow(10, Math.max(r(e), r(t))); + return (l(e, i) - l(t, i)) / i; + }), + u = s(function (e, t) { + var i = a(e), + s = a(t); + return o(i), o(s), l(i / s, n(Math.pow(10, r(t) - r(e)))); + }); + function f(e, t) { + var i = Math.pow(10, t), + n = u(Math.round(Math.abs(l(e, i))), i); + return e < 0 && 0 !== n && (n = l(n, -1)), n; + } + var h = !0, + p = { + strip: n, + plus: c, + minus: d, + times: l, + divide: u, + round: f, + digitLength: r, + float2Fixed: a, + enableBoundaryChecking: function e(e) { + void 0 === e && (e = !0), (h = e); + }, + }; + t.ZP = p; + }, + 753177: function (e, t, i) { + "use strict"; + var n = i(53453); + t.certificate = i(2716); + var r = n.define("RSAPrivateKey", function () { + this.seq().obj( + this.key("version").int(), + this.key("modulus").int(), + this.key("publicExponent").int(), + this.key("privateExponent").int(), + this.key("prime1").int(), + this.key("prime2").int(), + this.key("exponent1").int(), + this.key("exponent2").int(), + this.key("coefficient").int() + ); + }); + t.RSAPrivateKey = r; + var a = n.define("RSAPublicKey", function () { + this.seq().obj( + this.key("modulus").int(), + this.key("publicExponent").int() + ); + }); + t.RSAPublicKey = a; + var o = n.define("AlgorithmIdentifier", function () { + this.seq().obj( + this.key("algorithm").objid(), + this.key("none").null_().optional(), + this.key("curve").objid().optional(), + this.key("params") + .seq() + .obj( + this.key("p").int(), + this.key("q").int(), + this.key("g").int() + ) + .optional() + ); + }), + s = n.define("SubjectPublicKeyInfo", function () { + this.seq().obj( + this.key("algorithm").use(o), + this.key("subjectPublicKey").bitstr() + ); + }); + t.PublicKey = s; + var l = n.define("PrivateKeyInfo", function () { + this.seq().obj( + this.key("version").int(), + this.key("algorithm").use(o), + this.key("subjectPrivateKey").octstr() + ); + }); + t.PrivateKey = l; + var c = n.define("EncryptedPrivateKeyInfo", function () { + this.seq().obj( + this.key("algorithm") + .seq() + .obj( + this.key("id").objid(), + this.key("decrypt") + .seq() + .obj( + this.key("kde") + .seq() + .obj( + this.key("id").objid(), + this.key("kdeparams") + .seq() + .obj(this.key("salt").octstr(), this.key("iters").int()) + ), + this.key("cipher") + .seq() + .obj(this.key("algo").objid(), this.key("iv").octstr()) + ) + ), + this.key("subjectPrivateKey").octstr() + ); + }); + t.EncryptedPrivateKey = c; + var d = n.define("DSAPrivateKey", function () { + this.seq().obj( + this.key("version").int(), + this.key("p").int(), + this.key("q").int(), + this.key("g").int(), + this.key("pub_key").int(), + this.key("priv_key").int() + ); + }); + (t.DSAPrivateKey = d), + (t.DSAparam = n.define("DSAparam", function () { + this.int(); + })); + var u = n.define("ECParameters", function () { + this.choice({ namedCurve: this.objid() }); + }), + f = n.define("ECPrivateKey", function () { + this.seq().obj( + this.key("version").int(), + this.key("privateKey").octstr(), + this.key("parameters").optional().explicit(0).use(u), + this.key("publicKey").optional().explicit(1).bitstr() + ); + }); + (t.ECPrivateKey = f), + (t.signature = n.define("signature", function () { + this.seq().obj(this.key("r").int(), this.key("s").int()); + })); + }, + 2716: function (e, t, i) { + "use strict"; + var n = i(53453), + r = n.define("Time", function () { + this.choice({ utcTime: this.utctime(), generalTime: this.gentime() }); + }), + a = n.define("AttributeTypeValue", function () { + this.seq().obj(this.key("type").objid(), this.key("value").any()); + }), + o = n.define("AlgorithmIdentifier", function () { + this.seq().obj( + this.key("algorithm").objid(), + this.key("parameters").optional(), + this.key("curve").objid().optional() + ); + }), + s = n.define("SubjectPublicKeyInfo", function () { + this.seq().obj( + this.key("algorithm").use(o), + this.key("subjectPublicKey").bitstr() + ); + }), + l = n.define("RelativeDistinguishedName", function () { + this.setof(a); + }), + c = n.define("RDNSequence", function () { + this.seqof(l); + }), + d = n.define("Name", function () { + this.choice({ rdnSequence: this.use(c) }); + }), + u = n.define("Validity", function () { + this.seq().obj( + this.key("notBefore").use(r), + this.key("notAfter").use(r) + ); + }), + f = n.define("Extension", function () { + this.seq().obj( + this.key("extnID").objid(), + this.key("critical").bool().def(!1), + this.key("extnValue").octstr() + ); + }), + h = n.define("TBSCertificate", function () { + this.seq().obj( + this.key("version").explicit(0).int().optional(), + this.key("serialNumber").int(), + this.key("signature").use(o), + this.key("issuer").use(d), + this.key("validity").use(u), + this.key("subject").use(d), + this.key("subjectPublicKeyInfo").use(s), + this.key("issuerUniqueID").implicit(1).bitstr().optional(), + this.key("subjectUniqueID").implicit(2).bitstr().optional(), + this.key("extensions").explicit(3).seqof(f).optional() + ); + }), + p = n.define("X509Certificate", function () { + this.seq().obj( + this.key("tbsCertificate").use(h), + this.key("signatureAlgorithm").use(o), + this.key("signatureValue").bitstr() + ); + }); + e.exports = p; + }, + 39847: function (e, t, i) { + "use strict"; + var n = + /Proc-Type: 4,ENCRYPTED[\n\r]+DEK-Info: AES-((?:128)|(?:192)|(?:256))-CBC,([0-9A-H]+)[\n\r]+([0-9A-z\n\r+/=]+)[\n\r]+/m, + r = /^-----BEGIN ((?:.*? KEY)|CERTIFICATE)-----/m, + a = + /^-----BEGIN ((?:.*? KEY)|CERTIFICATE)-----([0-9A-z\n\r+/=]+)-----END \1-----$/m, + o = i(948881), + s = i(652217), + l = i(140860).Buffer; + e.exports = function (e, t) { + var i, + c = e.toString(), + d = c.match(n); + if (d) { + var u = "aes" + d[1], + f = l.from(d[2], "hex"), + h = l.from(d[3].replace(/[\r\n]/g, ""), "base64"), + p = o(t, f.slice(0, 8), parseInt(d[1], 10)).key, + v = [], + m = s.createDecipheriv(u, p, f); + v.push(m.update(h)), v.push(m.final()), (i = l.concat(v)); + } else { + var g = c.match(a); + i = l.from(g[2].replace(/[\r\n]/g, ""), "base64"); + } + return { tag: c.match(r)[1], data: i }; + }; + }, + 189939: function (e, t, i) { + "use strict"; + var n = i(753177), + r = i(431163), + a = i(39847), + o = i(652217), + s = i(818724), + l = i(140860).Buffer; + function c(e, t) { + var i = e.algorithm.decrypt.kde.kdeparams.salt, + n = parseInt(e.algorithm.decrypt.kde.kdeparams.iters.toString(), 10), + a = r[e.algorithm.decrypt.cipher.algo.join(".")], + c = e.algorithm.decrypt.cipher.iv, + d = e.subjectPrivateKey, + u = parseInt(a.split("-")[1], 10) / 8, + f = s.pbkdf2Sync(t, i, n, u, "sha1"), + h = o.createDecipheriv(a, f, c), + p = []; + return p.push(h.update(d)), p.push(h.final()), l.concat(p); + } + function d(e) { + "object" == typeof e && + !l.isBuffer(e) && + ((t = e.passphrase), (e = e.key)), + "string" == typeof e && (e = l.from(e)); + var t, + i, + r, + o = a(e, t), + s = o.tag, + d = o.data; + switch (s) { + case "CERTIFICATE": + r = n.certificate.decode(d, "der").tbsCertificate + .subjectPublicKeyInfo; + case "PUBLIC KEY": + switch ( + (!r && (r = n.PublicKey.decode(d, "der")), + (i = r.algorithm.algorithm.join("."))) + ) { + case "1.2.840.113549.1.1.1": + return n.RSAPublicKey.decode(r.subjectPublicKey.data, "der"); + case "1.2.840.10045.2.1": + return ( + (r.subjectPrivateKey = r.subjectPublicKey), + { type: "ec", data: r } + ); + case "1.2.840.10040.4.1": + return ( + (r.algorithm.params.pub_key = n.DSAparam.decode( + r.subjectPublicKey.data, + "der" + )), + { type: "dsa", data: r.algorithm.params } + ); + default: + throw Error("unknown key id " + i); + } + case "ENCRYPTED PRIVATE KEY": + d = c((d = n.EncryptedPrivateKey.decode(d, "der")), t); + case "PRIVATE KEY": + switch ( + (i = (r = n.PrivateKey.decode(d, "der")).algorithm.algorithm.join( + "." + )) + ) { + case "1.2.840.113549.1.1.1": + return n.RSAPrivateKey.decode(r.subjectPrivateKey, "der"); + case "1.2.840.10045.2.1": + return { + curve: r.algorithm.curve, + privateKey: n.ECPrivateKey.decode(r.subjectPrivateKey, "der") + .privateKey, + }; + case "1.2.840.10040.4.1": + return ( + (r.algorithm.params.priv_key = n.DSAparam.decode( + r.subjectPrivateKey, + "der" + )), + { type: "dsa", params: r.algorithm.params } + ); + default: + throw Error("unknown key id " + i); + } + case "RSA PUBLIC KEY": + return n.RSAPublicKey.decode(d, "der"); + case "RSA PRIVATE KEY": + return n.RSAPrivateKey.decode(d, "der"); + case "DSA PRIVATE KEY": + return { type: "dsa", params: n.DSAPrivateKey.decode(d, "der") }; + case "EC PRIVATE KEY": + return { + curve: (d = n.ECPrivateKey.decode(d, "der")).parameters.value, + privateKey: d.privateKey, + }; + default: + throw Error("unknown key type " + s); + } + } + (d.signature = n.signature), (e.exports = d); + }, + 818724: function (e, t, i) { + (t.pbkdf2 = i(182693)), (t.pbkdf2Sync = i(294374)); + }, + 182693: function (e, t, i) { + var n, + r, + a = i(140860).Buffer, + o = i(947889), + s = i(365330), + l = i(294374), + c = i(414712), + d = i.g.crypto && i.g.crypto.subtle, + u = { + sha: "SHA-1", + "sha-1": "SHA-1", + sha1: "SHA-1", + sha256: "SHA-256", + "sha-256": "SHA-256", + sha384: "SHA-384", + "sha-384": "SHA-384", + "sha-512": "SHA-512", + sha512: "SHA-512", + }, + f = []; + function h(e) { + if ( + (i.g.process && !i.g.process.browser) || + !d || + !d.importKey || + !d.deriveBits + ) + return Promise.resolve(!1); + if (void 0 !== f[e]) return f[e]; + var t = v((n = n || a.alloc(8)), n, 10, 128, e) + .then(function () { + return !0; + }) + .catch(function () { + return !1; + }); + return (f[e] = t), t; + } + function p() { + return r + ? r + : (r = + i.g.process && i.g.process.nextTick + ? i.g.process.nextTick + : i.g.queueMicrotask + ? i.g.queueMicrotask + : i.g.setImmediate + ? i.g.setImmediate + : i.g.setTimeout); + } + function v(e, t, i, n, r) { + return d + .importKey("raw", e, { name: "PBKDF2" }, !1, ["deriveBits"]) + .then(function (e) { + return d.deriveBits( + { name: "PBKDF2", salt: t, iterations: i, hash: { name: r } }, + e, + n << 3 + ); + }) + .then(function (e) { + return a.from(e); + }); + } + function m(e, t) { + e.then( + function (e) { + p()(function () { + t(null, e); + }); + }, + function (e) { + p()(function () { + t(e); + }); + } + ); + } + e.exports = function (e, t, n, r, a, d) { + "function" == typeof a && ((d = a), (a = void 0)); + var f = u[(a = a || "sha1").toLowerCase()]; + if (!f || "function" != typeof i.g.Promise) { + p()(function () { + var i; + try { + i = l(e, t, n, r, a); + } catch (e) { + return d(e); + } + d(null, i); + }); + return; + } + if ( + (o(n, r), + (e = c(e, s, "Password")), + (t = c(t, s, "Salt")), + "function" != typeof d) + ) + throw Error("No callback provided to pbkdf2"); + m( + h(f).then(function (i) { + return i ? v(e, t, n, r, f) : l(e, t, n, r, a); + }), + d + ); + }; + }, + 365330: function (e, t, i) { + var n, + r = i(499845); + (n = + i.g.process && i.g.process.browser + ? "utf-8" + : i.g.process && i.g.process.version + ? parseInt(r.version.split(".")[0].slice(1), 10) >= 6 + ? "utf-8" + : "binary" + : "utf-8"), + (e.exports = n); + }, + 947889: function (e) { + var t = 0x3fffffff; + e.exports = function (e, i) { + if ("number" != typeof e) throw TypeError("Iterations not a number"); + if (e < 0) throw TypeError("Bad iterations"); + if ("number" != typeof i) throw TypeError("Key length not a number"); + if (i < 0 || i > t || i != i) throw TypeError("Bad key length"); + }; + }, + 294374: function (e, t, i) { + var n = i(318042), + r = i(866818), + a = i(673664), + o = i(140860).Buffer, + s = i(947889), + l = i(365330), + c = i(414712), + d = o.alloc(128), + u = { + md5: 16, + sha1: 20, + sha224: 28, + sha256: 32, + sha384: 48, + sha512: 64, + rmd160: 20, + ripemd160: 20, + }; + function f(e, t, i) { + var n = h(e), + r = "sha512" === e || "sha384" === e ? 128 : 64; + t.length > r ? (t = n(t)) : t.length < r && (t = o.concat([t, d], r)); + for ( + var a = o.allocUnsafe(r + u[e]), s = o.allocUnsafe(r + u[e]), l = 0; + l < r; + l++ + ) + (a[l] = 54 ^ t[l]), (s[l] = 92 ^ t[l]); + var c = o.allocUnsafe(r + i + 4); + a.copy(c, 0, 0, r), + (this.ipad1 = c), + (this.ipad2 = a), + (this.opad = s), + (this.alg = e), + (this.blocksize = r), + (this.hash = n), + (this.size = u[e]); + } + function h(e) { + function t(t) { + return a(e).update(t).digest(); + } + function i(e) { + return new r().update(e).digest(); + } + return "rmd160" === e || "ripemd160" === e ? i : "md5" === e ? n : t; + } + function p(e, t, i, n, r) { + s(i, n), (e = c(e, l, "Password")), (t = c(t, l, "Salt")); + var a = new f((r = r || "sha1"), e, t.length), + d = o.allocUnsafe(n), + h = o.allocUnsafe(t.length + 4); + t.copy(h, 0, 0, t.length); + for (var p = 0, v = u[r], m = Math.ceil(n / v), g = 1; g <= m; g++) { + h.writeUInt32BE(g, t.length); + for (var _ = a.run(h, a.ipad1), y = _, b = 1; b < i; b++) { + y = a.run(y, a.ipad2); + for (var I = 0; I < v; I++) _[I] ^= y[I]; + } + _.copy(d, p), (p += v); + } + return d; + } + (f.prototype.run = function (e, t) { + return ( + e.copy(t, this.blocksize), + this.hash(t).copy(this.opad, this.blocksize), + this.hash(this.opad) + ); + }), + (e.exports = p); + }, + 414712: function (e, t, i) { + var n = i(140860).Buffer; + e.exports = function (e, t, i) { + if (n.isBuffer(e)) return e; + if ("string" == typeof e) return n.from(e, t); + if (ArrayBuffer.isView(e)) return n.from(e.buffer); + else + throw TypeError( + i + " must be a string, a Buffer, a typed array or a DataView" + ); + }; + }, + 229867: function (e, t, i) { + "use strict"; + var n = i(499845); + function r(e, t, i, r) { + if ("function" != typeof e) + throw TypeError('"callback" argument must be a function'); + var a, + o, + s = arguments.length; + switch (s) { + case 0: + case 1: + return n.nextTick(e); + case 2: + return n.nextTick(function () { + e.call(null, t); + }); + case 3: + return n.nextTick(function () { + e.call(null, t, i); + }); + case 4: + return n.nextTick(function () { + e.call(null, t, i, r); + }); + default: + for (a = Array(s - 1), o = 0; o < a.length; ) a[o++] = arguments[o]; + return n.nextTick(function () { + e.apply(null, a); + }); + } + } + void 0 !== n && + n.version && + 0 !== n.version.indexOf("v0.") && + (0 !== n.version.indexOf("v1.") || 0 === n.version.indexOf("v1.8.")) + ? (e.exports = n) + : (e.exports = { nextTick: r }); + }, + 196589: function (e, t, i) { + (t.publicEncrypt = i(286413)), + (t.privateDecrypt = i(304944)), + (t.privateEncrypt = function (e, i) { + return t.publicEncrypt(e, i, !0); + }), + (t.publicDecrypt = function (e, i) { + return t.privateDecrypt(e, i, !0); + }); + }, + 9810: function (e, t, i) { + var n = i(669683), + r = i(140860).Buffer; + function a(e) { + var t = r.allocUnsafe(4); + return t.writeUInt32BE(e, 0), t; + } + e.exports = function (e, t) { + for (var i, o = r.alloc(0), s = 0; o.length < t; ) + (i = a(s++)), + (o = r.concat([o, n("sha1").update(e).update(i).digest()])); + return o.slice(0, t); + }; + }, + 304944: function (e, t, i) { + var n = i(189939), + r = i(9810), + a = i(597875), + o = i(984826), + s = i(134558), + l = i(669683), + c = i(719355), + d = i(140860).Buffer; + function u(e, t) { + var i = e.modulus.byteLength(), + n = l("sha1").update(d.alloc(0)).digest(), + o = n.length; + if (0 !== t[0]) throw Error("decryption error"); + var s = t.slice(1, o + 1), + c = t.slice(o + 1), + u = a(s, r(c, o)), + f = a(c, r(u, i - o - 1)); + if (h(n, f.slice(0, o))) throw Error("decryption error"); + for (var p = o; 0 === f[p]; ) p++; + if (1 !== f[p++]) throw Error("decryption error"); + return f.slice(p); + } + function f(e, t, i) { + for (var n = t.slice(0, 2), r = 2, a = 0; 0 !== t[r++]; ) + if (r >= t.length) { + a++; + break; + } + var o = t.slice(2, r - 1); + if ( + ((("0002" !== n.toString("hex") && !i) || + ("0001" !== n.toString("hex") && i)) && + a++, + o.length < 8 && a++, + a) + ) + throw Error("decryption error"); + return t.slice(r); + } + function h(e, t) { + (e = d.from(e)), (t = d.from(t)); + var i = 0, + n = e.length; + e.length !== t.length && (i++, (n = Math.min(e.length, t.length))); + for (var r = -1; ++r < n; ) i += e[r] ^ t[r]; + return i; + } + e.exports = function (e, t, i) { + r = e.padding ? e.padding : i ? 1 : 4; + var r, + a, + l = n(e), + h = l.modulus.byteLength(); + if (t.length > h || new o(t).cmp(l.modulus) >= 0) + throw Error("decryption error"); + a = i ? c(new o(t), l) : s(t, l); + var p = d.alloc(h - a.length); + if (((a = d.concat([p, a], h)), 4 === r)) return u(l, a); + if (1 === r) return f(l, a, i); + if (3 === r) return a; + else throw Error("unknown padding"); + }; + }, + 286413: function (e, t, i) { + var n = i(189939), + r = i(203960), + a = i(669683), + o = i(9810), + s = i(597875), + l = i(984826), + c = i(719355), + d = i(134558), + u = i(140860).Buffer; + function f(e, t) { + var i = e.modulus.byteLength(), + n = t.length, + c = a("sha1").update(u.alloc(0)).digest(), + d = c.length, + f = 2 * d; + if (n > i - f - 2) throw Error("message too long"); + var h = u.alloc(i - n - f - 2), + p = i - d - 1, + v = r(d), + m = s(u.concat([c, h, u.alloc(1, 1), t], p), o(v, p)), + g = s(v, o(m, d)); + return new l(u.concat([u.alloc(1), g, m], i)); + } + function h(e, t, i) { + var n, + r = t.length, + a = e.modulus.byteLength(); + if (r > a - 11) throw Error("message too long"); + return ( + (n = i ? u.alloc(a - r - 3, 255) : p(a - r - 3)), + new l(u.concat([u.from([0, i ? 1 : 2]), n, u.alloc(1), t], a)) + ); + } + function p(e) { + for (var t, i = u.allocUnsafe(e), n = 0, a = r(2 * e), o = 0; n < e; ) + o === a.length && ((a = r(2 * e)), (o = 0)), + (t = a[o++]) && (i[n++] = t); + return i; + } + e.exports = function (e, t, i) { + r = e.padding ? e.padding : i ? 1 : 4; + var r, + a, + o = n(e); + if (4 === r) a = f(o, t); + else if (1 === r) a = h(o, t, i); + else if (3 === r) { + if ((a = new l(t)).cmp(o.modulus) >= 0) + throw Error("data too long for modulus"); + } else throw Error("unknown padding"); + return i ? d(a, o) : c(a, o); + }; + }, + 719355: function (e, t, i) { + var n = i(984826), + r = i(140860).Buffer; + function a(e, t) { + return r.from( + e + .toRed(n.mont(t.modulus)) + .redPow(new n(t.publicExponent)) + .fromRed() + .toArray() + ); + } + e.exports = a; + }, + 597875: function (e) { + e.exports = function (e, t) { + for (var i = e.length, n = -1; ++n < i; ) e[n] ^= t[n]; + return e; + }; + }, + 203960: function (e, t, i) { + "use strict"; + var n = i(499845), + r = 65536, + a = 0xffffffff; + function o() { + throw Error( + "Secure random number generation is not supported by this browser.\nUse Chrome, Firefox or Internet Explorer 11" + ); + } + var s = i(140860).Buffer, + l = i.g.crypto || i.g.msCrypto; + function c(e, t) { + if (e > a) throw RangeError("requested too many random bytes"); + var i = s.allocUnsafe(e); + if (e > 0) { + if (e > r) + for (var o = 0; o < e; o += r) l.getRandomValues(i.slice(o, o + r)); + else l.getRandomValues(i); + } + return "function" == typeof t + ? n.nextTick(function () { + t(null, i); + }) + : i; + } + l && l.getRandomValues ? (e.exports = c) : (e.exports = o); + }, + 278056: function (e, t, i) { + "use strict"; + var n = i(499845); + function r() { + throw Error( + "secure random number generation not supported by this browser\nuse chrome, FireFox or Internet Explorer 11" + ); + } + var a = i(140860), + o = i(203960), + s = a.Buffer, + l = a.kMaxLength, + c = i.g.crypto || i.g.msCrypto, + d = 0xffffffff; + function u(e, t) { + if ("number" != typeof e || e != e) + throw TypeError("offset must be a number"); + if (e > d || e < 0) throw TypeError("offset must be a uint32"); + if (e > l || e > t) throw RangeError("offset out of range"); + } + function f(e, t, i) { + if ("number" != typeof e || e != e) + throw TypeError("size must be a number"); + if (e > d || e < 0) throw TypeError("size must be a uint32"); + if (e + t > i || e > l) throw RangeError("buffer too small"); + } + function h(e, t, n, r) { + if (!s.isBuffer(e) && !(e instanceof i.g.Uint8Array)) + throw TypeError('"buf" argument must be a Buffer or Uint8Array'); + if ("function" == typeof t) (r = t), (t = 0), (n = e.length); + else if ("function" == typeof n) (r = n), (n = e.length - t); + else if ("function" != typeof r) + throw TypeError('"cb" argument must be a function'); + return u(t, e.length), f(n, t, e.length), p(e, t, n, r); + } + function p(e, t, i, r) { + if (n.browser) { + var a = new Uint8Array(e.buffer, t, i); + if ((c.getRandomValues(a), r)) { + n.nextTick(function () { + r(null, e); + }); + return; + } + return e; + } + if (r) { + o(i, function (i, n) { + if (i) return r(i); + n.copy(e, t), r(null, e); + }); + return; + } + return o(i).copy(e, t), e; + } + function v(e, t, n) { + if ( + (void 0 === t && (t = 0), + !s.isBuffer(e) && !(e instanceof i.g.Uint8Array)) + ) + throw TypeError('"buf" argument must be a Buffer or Uint8Array'); + return ( + u(t, e.length), + void 0 === n && (n = e.length - t), + f(n, t, e.length), + p(e, t, n) + ); + } + (c && c.getRandomValues) || !n.browser + ? ((t.randomFill = h), (t.randomFillSync = v)) + : ((t.randomFill = r), (t.randomFillSync = r)); + }, + 414024: function (e, t, i) { + "use strict"; + var n = i(229867), + r = + Object.keys || + function (e) { + var t = []; + for (var i in e) t.push(i); + return t; + }; + e.exports = u; + var a = Object.create(i(975952)); + a.inherits = i(32016); + var o = i(752644), + s = i(762308); + a.inherits(u, o); + for (var l = r(s.prototype), c = 0; c < l.length; c++) { + var d = l[c]; + !u.prototype[d] && (u.prototype[d] = s.prototype[d]); + } + function u(e) { + if (!(this instanceof u)) return new u(e); + o.call(this, e), + s.call(this, e), + e && !1 === e.readable && (this.readable = !1), + e && !1 === e.writable && (this.writable = !1), + (this.allowHalfOpen = !0), + e && !1 === e.allowHalfOpen && (this.allowHalfOpen = !1), + this.once("end", f); + } + function f() { + !this.allowHalfOpen && + !this._writableState.ended && + n.nextTick(h, this); + } + function h(e) { + e.end(); + } + Object.defineProperty(u.prototype, "writableHighWaterMark", { + enumerable: !1, + get: function () { + return this._writableState.highWaterMark; + }, + }), + Object.defineProperty(u.prototype, "destroyed", { + get: function () { + return ( + void 0 !== this._readableState && + void 0 !== this._writableState && + this._readableState.destroyed && + this._writableState.destroyed + ); + }, + set: function (e) { + if ( + void 0 !== this._readableState && + void 0 !== this._writableState + ) + (this._readableState.destroyed = e), + (this._writableState.destroyed = e); + }, + }), + (u.prototype._destroy = function (e, t) { + this.push(null), this.end(), n.nextTick(t, e); + }); + }, + 877797: function (e, t, i) { + "use strict"; + e.exports = a; + var n = i(930377), + r = Object.create(i(975952)); + function a(e) { + if (!(this instanceof a)) return new a(e); + n.call(this, e); + } + (r.inherits = i(32016)), + r.inherits(a, n), + (a.prototype._transform = function (e, t, i) { + i(null, e); + }); + }, + 752644: function (e, t, i) { + "use strict"; + var n, + r, + a = i(499845), + o = i(229867); + e.exports = w; + var s = i(991546); + (w.ReadableState = I), i(122582).EventEmitter; + var l = function (e, t) { + return e.listeners(t).length; + }, + c = i(429775), + d = i(225877).Buffer, + u = + (void 0 !== i.g + ? i.g + : "undefined" != typeof window + ? window + : "undefined" != typeof self + ? self + : {} + ).Uint8Array || function () {}; + function f(e) { + return d.from(e); + } + function h(e) { + return d.isBuffer(e) || e instanceof u; + } + var p = Object.create(i(975952)); + p.inherits = i(32016); + var v = i(14059), + m = void 0; + m = v && v.debuglog ? v.debuglog("stream") : function () {}; + var g = i(983015), + _ = i(786949); + p.inherits(w, c); + var y = ["error", "close", "destroy", "pause", "resume"]; + function b(e, t, i) { + if ("function" == typeof e.prependListener) + return e.prependListener(t, i); + e._events && e._events[t] + ? s(e._events[t]) + ? e._events[t].unshift(i) + : (e._events[t] = [i, e._events[t]]) + : e.on(t, i); + } + function I(e, t) { + (n = n || i(414024)), (e = e || {}); + var a = t instanceof n; + (this.objectMode = !!e.objectMode), + a && (this.objectMode = this.objectMode || !!e.readableObjectMode); + var o = e.highWaterMark, + s = e.readableHighWaterMark, + l = this.objectMode ? 16 : 16384; + o || 0 === o + ? (this.highWaterMark = o) + : a && (s || 0 === s) + ? (this.highWaterMark = s) + : (this.highWaterMark = l), + (this.highWaterMark = Math.floor(this.highWaterMark)), + (this.buffer = new g()), + (this.length = 0), + (this.pipes = null), + (this.pipesCount = 0), + (this.flowing = null), + (this.ended = !1), + (this.endEmitted = !1), + (this.reading = !1), + (this.sync = !0), + (this.needReadable = !1), + (this.emittedReadable = !1), + (this.readableListening = !1), + (this.resumeScheduled = !1), + (this.destroyed = !1), + (this.defaultEncoding = e.defaultEncoding || "utf8"), + (this.awaitDrain = 0), + (this.readingMore = !1), + (this.decoder = null), + (this.encoding = null), + e.encoding && + (!r && (r = i(659406).StringDecoder), + (this.decoder = new r(e.encoding)), + (this.encoding = e.encoding)); + } + function w(e) { + if (((n = n || i(414024)), !(this instanceof w))) return new w(e); + (this._readableState = new I(e, this)), + (this.readable = !0), + e && + ("function" == typeof e.read && (this._read = e.read), + "function" == typeof e.destroy && (this._destroy = e.destroy)), + c.call(this); + } + function x(e, t, i, n, r) { + var a, + o = e._readableState; + return ( + null === t + ? ((o.reading = !1), P(e, o)) + : (!r && (a = M(o, t)), + a + ? e.emit("error", a) + : o.objectMode || (t && t.length > 0) + ? ("string" != typeof t && + !o.objectMode && + Object.getPrototypeOf(t) !== d.prototype && + (t = f(t)), + n + ? o.endEmitted + ? e.emit( + "error", + Error("stream.unshift() after end event") + ) + : S(e, o, t, !0) + : o.ended + ? e.emit("error", Error("stream.push() after EOF")) + : ((o.reading = !1), + o.decoder && !i + ? ((t = o.decoder.write(t)), + o.objectMode || 0 !== t.length + ? S(e, o, t, !1) + : R(e, o)) + : S(e, o, t, !1))) + : !n && (o.reading = !1)), + C(o) + ); + } + function S(e, t, i, n) { + t.flowing && 0 === t.length && !t.sync + ? (e.emit("data", i), e.read(0)) + : ((t.length += t.objectMode ? 1 : i.length), + n ? t.buffer.unshift(i) : t.buffer.push(i), + t.needReadable && E(e)), + R(e, t); + } + function M(e, t) { + var i; + return ( + !h(t) && + "string" != typeof t && + void 0 !== t && + !e.objectMode && + (i = TypeError("Invalid non-string/buffer chunk")), + i + ); + } + function C(e) { + return ( + !e.ended && + (e.needReadable || e.length < e.highWaterMark || 0 === e.length) + ); + } + Object.defineProperty(w.prototype, "destroyed", { + get: function () { + return ( + void 0 !== this._readableState && this._readableState.destroyed + ); + }, + set: function (e) { + if (!!this._readableState) this._readableState.destroyed = e; + }, + }), + (w.prototype.destroy = _.destroy), + (w.prototype._undestroy = _.undestroy), + (w.prototype._destroy = function (e, t) { + this.push(null), t(e); + }), + (w.prototype.push = function (e, t) { + var i, + n = this._readableState; + return ( + n.objectMode + ? (i = !0) + : "string" == typeof e && + ((t = t || n.defaultEncoding) !== n.encoding && + ((e = d.from(e, t)), (t = "")), + (i = !0)), + x(this, e, t, !1, i) + ); + }), + (w.prototype.unshift = function (e) { + return x(this, e, null, !0, !1); + }), + (w.prototype.isPaused = function () { + return !1 === this._readableState.flowing; + }), + (w.prototype.setEncoding = function (e) { + return ( + !r && (r = i(659406).StringDecoder), + (this._readableState.decoder = new r(e)), + (this._readableState.encoding = e), + this + ); + }); + var T = 8388608; + function A(e) { + return ( + e >= T + ? (e = T) + : (e--, + (e |= e >>> 1), + (e |= e >>> 2), + (e |= e >>> 4), + (e |= e >>> 8), + (e |= e >>> 16), + e++), + e + ); + } + function k(e, t) { + if (e <= 0 || (0 === t.length && t.ended)) return 0; + if (t.objectMode) return 1; + if (e != e) + return t.flowing && t.length ? t.buffer.head.data.length : t.length; + return (e > t.highWaterMark && (t.highWaterMark = A(e)), e <= t.length) + ? e + : t.ended + ? t.length + : ((t.needReadable = !0), 0); + } + function P(e, t) { + if (!t.ended) { + if (t.decoder) { + var i = t.decoder.end(); + i && + i.length && + (t.buffer.push(i), (t.length += t.objectMode ? 1 : i.length)); + } + (t.ended = !0), E(e); + } + } + function E(e) { + var t = e._readableState; + (t.needReadable = !1), + !t.emittedReadable && + (m("emitReadable", t.flowing), + (t.emittedReadable = !0), + t.sync ? o.nextTick(D, e) : D(e)); + } + function D(e) { + m("emit readable"), e.emit("readable"), F(e); + } + function R(e, t) { + !t.readingMore && ((t.readingMore = !0), o.nextTick(N, e, t)); + } + function N(e, t) { + for ( + var i = t.length; + !t.reading && + !t.flowing && + !t.ended && + t.length < t.highWaterMark && + (m("maybeReadMore read 0"), e.read(0), i !== t.length); + + ) { + i = t.length; + } + t.readingMore = !1; + } + function L(e) { + return function () { + var t = e._readableState; + m("pipeOnDrain", t.awaitDrain), + t.awaitDrain && t.awaitDrain--, + 0 === t.awaitDrain && l(e, "data") && ((t.flowing = !0), F(e)); + }; + } + function j(e) { + m("readable nexttick read 0"), e.read(0); + } + function O(e, t) { + !t.resumeScheduled && ((t.resumeScheduled = !0), o.nextTick(B, e, t)); + } + function B(e, t) { + !t.reading && (m("resume read 0"), e.read(0)), + (t.resumeScheduled = !1), + (t.awaitDrain = 0), + e.emit("resume"), + F(e), + t.flowing && !t.reading && e.read(0); + } + function F(e) { + var t = e._readableState; + for (m("flow", t.flowing); t.flowing && null !== e.read(); ); + } + function U(e, t) { + var i; + return 0 === t.length + ? null + : (t.objectMode + ? (i = t.buffer.shift()) + : !e || e >= t.length + ? ((i = t.decoder + ? t.buffer.join("") + : 1 === t.buffer.length + ? t.buffer.head.data + : t.buffer.concat(t.length)), + t.buffer.clear()) + : (i = G(e, t.buffer, t.decoder)), + i); + } + function G(e, t, i) { + var n; + return ( + e < t.head.data.length + ? ((n = t.head.data.slice(0, e)), + (t.head.data = t.head.data.slice(e))) + : (n = + e === t.head.data.length ? t.shift() : i ? z(e, t) : V(e, t)), + n + ); + } + function z(e, t) { + var i = t.head, + n = 1, + r = i.data; + for (e -= r.length; (i = i.next); ) { + var a = i.data, + o = e > a.length ? a.length : e; + if ( + (o === a.length ? (r += a) : (r += a.slice(0, e)), 0 == (e -= o)) + ) { + o === a.length + ? (++n, i.next ? (t.head = i.next) : (t.head = t.tail = null)) + : ((t.head = i), (i.data = a.slice(o))); + break; + } + ++n; + } + return (t.length -= n), r; + } + function V(e, t) { + var i = d.allocUnsafe(e), + n = t.head, + r = 1; + for (n.data.copy(i), e -= n.data.length; (n = n.next); ) { + var a = n.data, + o = e > a.length ? a.length : e; + if ((a.copy(i, i.length - e, 0, o), 0 == (e -= o))) { + o === a.length + ? (++r, n.next ? (t.head = n.next) : (t.head = t.tail = null)) + : ((t.head = n), (n.data = a.slice(o))); + break; + } + ++r; + } + return (t.length -= r), i; + } + function W(e) { + var t = e._readableState; + if (t.length > 0) + throw Error('"endReadable()" called on non-empty stream'); + !t.endEmitted && ((t.ended = !0), o.nextTick(Z, t, e)); + } + function Z(e, t) { + !e.endEmitted && + 0 === e.length && + ((e.endEmitted = !0), (t.readable = !1), t.emit("end")); + } + function K(e, t) { + for (var i = 0, n = e.length; i < n; i++) if (e[i] === t) return i; + return -1; + } + (w.prototype.read = function (e) { + m("read", e), (e = parseInt(e, 10)); + var t, + i = this._readableState, + n = e; + if ( + (0 !== e && (i.emittedReadable = !1), + 0 === e && i.needReadable && (i.length >= i.highWaterMark || i.ended)) + ) + return ( + m("read: emitReadable", i.length, i.ended), + 0 === i.length && i.ended ? W(this) : E(this), + null + ); + if (0 === (e = k(e, i)) && i.ended) + return 0 === i.length && W(this), null; + var r = i.needReadable; + return ( + m("need readable", r), + (0 === i.length || i.length - e < i.highWaterMark) && + m("length less than watermark", (r = !0)), + i.ended || i.reading + ? m("reading or ended", (r = !1)) + : r && + (m("do read"), + (i.reading = !0), + (i.sync = !0), + 0 === i.length && (i.needReadable = !0), + this._read(i.highWaterMark), + (i.sync = !1), + !i.reading && (e = k(n, i))), + null === (t = e > 0 ? U(e, i) : null) + ? ((i.needReadable = !0), (e = 0)) + : (i.length -= e), + 0 === i.length && + (!i.ended && (i.needReadable = !0), n !== e && i.ended && W(this)), + null !== t && this.emit("data", t), + t + ); + }), + (w.prototype._read = function (e) { + this.emit("error", Error("_read() is not implemented")); + }), + (w.prototype.pipe = function (e, t) { + var i = this, + n = this._readableState; + switch (n.pipesCount) { + case 0: + n.pipes = e; + break; + case 1: + n.pipes = [n.pipes, e]; + break; + default: + n.pipes.push(e); + } + (n.pipesCount += 1), m("pipe count=%d opts=%j", n.pipesCount, t); + var r = + (t && !1 === t.end) || e === a.stdout || e === a.stderr ? y : c; + function s(e, t) { + m("onunpipe"), + e === i && t && !1 === t.hasUnpiped && ((t.hasUnpiped = !0), f()); + } + function c() { + m("onend"), e.end(); + } + n.endEmitted ? o.nextTick(r) : i.once("end", r), e.on("unpipe", s); + var d = L(i); + e.on("drain", d); + var u = !1; + function f() { + m("cleanup"), + e.removeListener("close", g), + e.removeListener("finish", _), + e.removeListener("drain", d), + e.removeListener("error", v), + e.removeListener("unpipe", s), + i.removeListener("end", c), + i.removeListener("end", y), + i.removeListener("data", p), + (u = !0), + n.awaitDrain && + (!e._writableState || e._writableState.needDrain) && + d(); + } + var h = !1; + function p(t) { + m("ondata"), + (h = !1), + !1 === e.write(t) && + !h && + (((1 === n.pipesCount && n.pipes === e) || + (n.pipesCount > 1 && -1 !== K(n.pipes, e))) && + !u && + (m("false write response, pause", n.awaitDrain), + n.awaitDrain++, + (h = !0)), + i.pause()); + } + function v(t) { + m("onerror", t), + y(), + e.removeListener("error", v), + 0 === l(e, "error") && e.emit("error", t); + } + function g() { + e.removeListener("finish", _), y(); + } + function _() { + m("onfinish"), e.removeListener("close", g), y(); + } + function y() { + m("unpipe"), i.unpipe(e); + } + return ( + i.on("data", p), + b(e, "error", v), + e.once("close", g), + e.once("finish", _), + e.emit("pipe", i), + !n.flowing && (m("pipe resume"), i.resume()), + e + ); + }), + (w.prototype.unpipe = function (e) { + var t = this._readableState, + i = { hasUnpiped: !1 }; + if (0 === t.pipesCount) return this; + if (1 === t.pipesCount) + return e && e !== t.pipes + ? this + : (!e && (e = t.pipes), + (t.pipes = null), + (t.pipesCount = 0), + (t.flowing = !1), + e && e.emit("unpipe", this, i), + this); + if (!e) { + var n = t.pipes, + r = t.pipesCount; + (t.pipes = null), (t.pipesCount = 0), (t.flowing = !1); + for (var a = 0; a < r; a++) + n[a].emit("unpipe", this, { hasUnpiped: !1 }); + return this; + } + var o = K(t.pipes, e); + return -1 === o + ? this + : (t.pipes.splice(o, 1), + (t.pipesCount -= 1), + 1 === t.pipesCount && (t.pipes = t.pipes[0]), + e.emit("unpipe", this, i), + this); + }), + (w.prototype.on = function (e, t) { + var i = c.prototype.on.call(this, e, t); + if ("data" === e) !1 !== this._readableState.flowing && this.resume(); + else if ("readable" === e) { + var n = this._readableState; + !n.endEmitted && + !n.readableListening && + ((n.readableListening = n.needReadable = !0), + (n.emittedReadable = !1), + n.reading ? n.length && E(this) : o.nextTick(j, this)); + } + return i; + }), + (w.prototype.addListener = w.prototype.on), + (w.prototype.resume = function () { + var e = this._readableState; + return ( + !e.flowing && (m("resume"), (e.flowing = !0), O(this, e)), this + ); + }), + (w.prototype.pause = function () { + return ( + m("call pause flowing=%j", this._readableState.flowing), + !1 !== this._readableState.flowing && + (m("pause"), + (this._readableState.flowing = !1), + this.emit("pause")), + this + ); + }), + (w.prototype.wrap = function (e) { + var t = this, + i = this._readableState, + n = !1; + for (var r in (e.on("end", function () { + if ((m("wrapped end"), i.decoder && !i.ended)) { + var e = i.decoder.end(); + e && e.length && t.push(e); + } + t.push(null); + }), + e.on("data", function (r) { + if ( + (m("wrapped data"), + i.decoder && (r = i.decoder.write(r)), + i.objectMode && null == r) + ) + return; + if (!!i.objectMode || (!!r && !!r.length)) + !t.push(r) && ((n = !0), e.pause()); + }), + e)) + void 0 === this[r] && + "function" == typeof e[r] && + (this[r] = (function (t) { + return function () { + return e[t].apply(e, arguments); + }; + })(r)); + for (var a = 0; a < y.length; a++) + e.on(y[a], this.emit.bind(this, y[a])); + return ( + (this._read = function (t) { + m("wrapped _read", t), n && ((n = !1), e.resume()); + }), + this + ); + }), + Object.defineProperty(w.prototype, "readableHighWaterMark", { + enumerable: !1, + get: function () { + return this._readableState.highWaterMark; + }, + }), + (w._fromList = U); + }, + 930377: function (e, t, i) { + "use strict"; + e.exports = o; + var n = i(414024), + r = Object.create(i(975952)); + function a(e, t) { + var i = this._transformState; + i.transforming = !1; + var n = i.writecb; + if (!n) + return this.emit( + "error", + Error("write callback called multiple times") + ); + (i.writechunk = null), + (i.writecb = null), + null != t && this.push(t), + n(e); + var r = this._readableState; + (r.reading = !1), + (r.needReadable || r.length < r.highWaterMark) && + this._read(r.highWaterMark); + } + function o(e) { + if (!(this instanceof o)) return new o(e); + n.call(this, e), + (this._transformState = { + afterTransform: a.bind(this), + needTransform: !1, + transforming: !1, + writecb: null, + writechunk: null, + writeencoding: null, + }), + (this._readableState.needReadable = !0), + (this._readableState.sync = !1), + e && + ("function" == typeof e.transform && + (this._transform = e.transform), + "function" == typeof e.flush && (this._flush = e.flush)), + this.on("prefinish", s); + } + function s() { + var e = this; + "function" == typeof this._flush + ? this._flush(function (t, i) { + l(e, t, i); + }) + : l(this, null, null); + } + function l(e, t, i) { + if (t) return e.emit("error", t); + if ((null != i && e.push(i), e._writableState.length)) + throw Error("Calling transform done when ws.length != 0"); + if (e._transformState.transforming) + throw Error("Calling transform done when still transforming"); + return e.push(null); + } + (r.inherits = i(32016)), + r.inherits(o, n), + (o.prototype.push = function (e, t) { + return ( + (this._transformState.needTransform = !1), + n.prototype.push.call(this, e, t) + ); + }), + (o.prototype._transform = function (e, t, i) { + throw Error("_transform() is not implemented"); + }), + (o.prototype._write = function (e, t, i) { + var n = this._transformState; + if ( + ((n.writecb = i), + (n.writechunk = e), + (n.writeencoding = t), + !n.transforming) + ) { + var r = this._readableState; + (n.needTransform || r.needReadable || r.length < r.highWaterMark) && + this._read(r.highWaterMark); + } + }), + (o.prototype._read = function (e) { + var t = this._transformState; + null !== t.writechunk && t.writecb && !t.transforming + ? ((t.transforming = !0), + this._transform(t.writechunk, t.writeencoding, t.afterTransform)) + : (t.needTransform = !0); + }), + (o.prototype._destroy = function (e, t) { + var i = this; + n.prototype._destroy.call(this, e, function (e) { + t(e), i.emit("close"); + }); + }); + }, + 762308: function (e, t, i) { + "use strict"; + var n, + r, + a = i(499845), + o = i(229867); + function s(e) { + var t = this; + (this.next = null), + (this.entry = null), + (this.finish = function () { + j(t, e); + }); + } + e.exports = y; + var l = + !a.browser && ["v0.10", "v0.9."].indexOf(a.version.slice(0, 5)) > -1 + ? setImmediate + : o.nextTick; + y.WritableState = _; + var c = Object.create(i(975952)); + c.inherits = i(32016); + var d = { deprecate: i(708333) }, + u = i(429775), + f = i(225877).Buffer, + h = + (void 0 !== i.g + ? i.g + : "undefined" != typeof window + ? window + : "undefined" != typeof self + ? self + : {} + ).Uint8Array || function () {}; + function p(e) { + return f.from(e); + } + function v(e) { + return f.isBuffer(e) || e instanceof h; + } + var m = i(786949); + function g() {} + function _(e, t) { + (n = n || i(414024)), (e = e || {}); + var r = t instanceof n; + (this.objectMode = !!e.objectMode), + r && (this.objectMode = this.objectMode || !!e.writableObjectMode); + var a = e.highWaterMark, + o = e.writableHighWaterMark, + l = this.objectMode ? 16 : 16384; + a || 0 === a + ? (this.highWaterMark = a) + : r && (o || 0 === o) + ? (this.highWaterMark = o) + : (this.highWaterMark = l), + (this.highWaterMark = Math.floor(this.highWaterMark)), + (this.finalCalled = !1), + (this.needDrain = !1), + (this.ending = !1), + (this.ended = !1), + (this.finished = !1), + (this.destroyed = !1); + var c = !1 === e.decodeStrings; + (this.decodeStrings = !c), + (this.defaultEncoding = e.defaultEncoding || "utf8"), + (this.length = 0), + (this.writing = !1), + (this.corked = 0), + (this.sync = !0), + (this.bufferProcessing = !1), + (this.onwrite = function (e) { + T(t, e); + }), + (this.writecb = null), + (this.writelen = 0), + (this.bufferedRequest = null), + (this.lastBufferedRequest = null), + (this.pendingcb = 0), + (this.prefinished = !1), + (this.errorEmitted = !1), + (this.bufferedRequestCount = 0), + (this.corkedRequestsFree = new s(this)); + } + function y(e) { + if (((n = n || i(414024)), !r.call(y, this) && !(this instanceof n))) + return new y(e); + (this._writableState = new _(e, this)), + (this.writable = !0), + e && + ("function" == typeof e.write && (this._write = e.write), + "function" == typeof e.writev && (this._writev = e.writev), + "function" == typeof e.destroy && (this._destroy = e.destroy), + "function" == typeof e.final && (this._final = e.final)), + u.call(this); + } + function b(e, t) { + var i = Error("write after end"); + e.emit("error", i), o.nextTick(t, i); + } + function I(e, t, i, n) { + var r = !0, + a = !1; + return ( + null === i + ? (a = TypeError("May not write null values to stream")) + : "string" != typeof i && + void 0 !== i && + !t.objectMode && + (a = TypeError("Invalid non-string/buffer chunk")), + a && (e.emit("error", a), o.nextTick(n, a), (r = !1)), + r + ); + } + function w(e, t, i) { + return ( + !e.objectMode && + !1 !== e.decodeStrings && + "string" == typeof t && + (t = f.from(t, i)), + t + ); + } + function x(e, t, i, n, r, a) { + if (!i) { + var o = w(t, n, r); + n !== o && ((i = !0), (r = "buffer"), (n = o)); + } + var s = t.objectMode ? 1 : n.length; + t.length += s; + var l = t.length < t.highWaterMark; + if ((!l && (t.needDrain = !0), t.writing || t.corked)) { + var c = t.lastBufferedRequest; + (t.lastBufferedRequest = { + chunk: n, + encoding: r, + isBuf: i, + callback: a, + next: null, + }), + c + ? (c.next = t.lastBufferedRequest) + : (t.bufferedRequest = t.lastBufferedRequest), + (t.bufferedRequestCount += 1); + } else S(e, t, !1, s, n, r, a); + return l; + } + function S(e, t, i, n, r, a, o) { + (t.writelen = n), + (t.writecb = o), + (t.writing = !0), + (t.sync = !0), + i ? e._writev(r, t.onwrite) : e._write(r, a, t.onwrite), + (t.sync = !1); + } + function M(e, t, i, n, r) { + --t.pendingcb, + i + ? (o.nextTick(r, n), + o.nextTick(N, e, t), + (e._writableState.errorEmitted = !0), + e.emit("error", n)) + : (r(n), + (e._writableState.errorEmitted = !0), + e.emit("error", n), + N(e, t)); + } + function C(e) { + (e.writing = !1), + (e.writecb = null), + (e.length -= e.writelen), + (e.writelen = 0); + } + function T(e, t) { + var i = e._writableState, + n = i.sync, + r = i.writecb; + if ((C(i), t)) M(e, i, n, t, r); + else { + var a = E(i); + !a && + !i.corked && + !i.bufferProcessing && + i.bufferedRequest && + P(e, i), + n ? l(A, e, i, a, r) : A(e, i, a, r); + } + } + function A(e, t, i, n) { + !i && k(e, t), t.pendingcb--, n(), N(e, t); + } + function k(e, t) { + 0 === t.length && t.needDrain && ((t.needDrain = !1), e.emit("drain")); + } + function P(e, t) { + t.bufferProcessing = !0; + var i = t.bufferedRequest; + if (e._writev && i && i.next) { + var n = Array(t.bufferedRequestCount), + r = t.corkedRequestsFree; + r.entry = i; + for (var a = 0, o = !0; i; ) + (n[a] = i), !i.isBuf && (o = !1), (i = i.next), (a += 1); + (n.allBuffers = o), + S(e, t, !0, t.length, n, "", r.finish), + t.pendingcb++, + (t.lastBufferedRequest = null), + r.next + ? ((t.corkedRequestsFree = r.next), (r.next = null)) + : (t.corkedRequestsFree = new s(t)), + (t.bufferedRequestCount = 0); + } else { + for (; i; ) { + var l = i.chunk, + c = i.encoding, + d = i.callback, + u = t.objectMode ? 1 : l.length; + if ( + (S(e, t, !1, u, l, c, d), + (i = i.next), + t.bufferedRequestCount--, + t.writing) + ) + break; + } + null === i && (t.lastBufferedRequest = null); + } + (t.bufferedRequest = i), (t.bufferProcessing = !1); + } + function E(e) { + return ( + e.ending && + 0 === e.length && + null === e.bufferedRequest && + !e.finished && + !e.writing + ); + } + function D(e, t) { + e._final(function (i) { + t.pendingcb--, + i && e.emit("error", i), + (t.prefinished = !0), + e.emit("prefinish"), + N(e, t); + }); + } + function R(e, t) { + !t.prefinished && + !t.finalCalled && + ("function" == typeof e._final + ? (t.pendingcb++, (t.finalCalled = !0), o.nextTick(D, e, t)) + : ((t.prefinished = !0), e.emit("prefinish"))); + } + function N(e, t) { + var i = E(t); + return ( + i && + (R(e, t), + 0 === t.pendingcb && ((t.finished = !0), e.emit("finish"))), + i + ); + } + function L(e, t, i) { + (t.ending = !0), + N(e, t), + i && (t.finished ? o.nextTick(i) : e.once("finish", i)), + (t.ended = !0), + (e.writable = !1); + } + function j(e, t, i) { + var n = e.entry; + for (e.entry = null; n; ) { + var r = n.callback; + t.pendingcb--, r(i), (n = n.next); + } + t.corkedRequestsFree.next = e; + } + c.inherits(y, u), + (_.prototype.getBuffer = function () { + for (var e = this.bufferedRequest, t = []; e; ) + t.push(e), (e = e.next); + return t; + }), + !(function () { + try { + Object.defineProperty(_.prototype, "buffer", { + get: d.deprecate( + function () { + return this.getBuffer(); + }, + "_writableState.buffer is deprecated. Use _writableState.getBuffer instead.", + "DEP0003" + ), + }); + } catch (e) {} + })(), + "function" == typeof Symbol && + Symbol.hasInstance && + "function" == typeof Function.prototype[Symbol.hasInstance] + ? ((r = Function.prototype[Symbol.hasInstance]), + Object.defineProperty(y, Symbol.hasInstance, { + value: function (e) { + return ( + !!r.call(this, e) || + (this === y && e && e._writableState instanceof _) + ); + }, + })) + : (r = function (e) { + return e instanceof this; + }), + (y.prototype.pipe = function () { + this.emit("error", Error("Cannot pipe, not readable")); + }), + (y.prototype.write = function (e, t, i) { + var n = this._writableState, + r = !1, + a = !n.objectMode && v(e); + return ( + a && !f.isBuffer(e) && (e = p(e)), + "function" == typeof t && ((i = t), (t = null)), + a ? (t = "buffer") : !t && (t = n.defaultEncoding), + "function" != typeof i && (i = g), + n.ended + ? b(this, i) + : (a || I(this, n, e, i)) && + (n.pendingcb++, (r = x(this, n, a, e, t, i))), + r + ); + }), + (y.prototype.cork = function () { + var e = this._writableState; + e.corked++; + }), + (y.prototype.uncork = function () { + var e = this._writableState; + e.corked && + (e.corked--, + !e.writing && + !e.corked && + !e.bufferProcessing && + e.bufferedRequest && + P(this, e)); + }), + (y.prototype.setDefaultEncoding = function (e) { + if ( + ("string" == typeof e && (e = e.toLowerCase()), + !( + [ + "hex", + "utf8", + "utf-8", + "ascii", + "binary", + "base64", + "ucs2", + "ucs-2", + "utf16le", + "utf-16le", + "raw", + ].indexOf((e + "").toLowerCase()) > -1 + )) + ) + throw TypeError("Unknown encoding: " + e); + return (this._writableState.defaultEncoding = e), this; + }), + Object.defineProperty(y.prototype, "writableHighWaterMark", { + enumerable: !1, + get: function () { + return this._writableState.highWaterMark; + }, + }), + (y.prototype._write = function (e, t, i) { + i(Error("_write() is not implemented")); + }), + (y.prototype._writev = null), + (y.prototype.end = function (e, t, i) { + var n = this._writableState; + "function" == typeof e + ? ((i = e), (e = null), (t = null)) + : "function" == typeof t && ((i = t), (t = null)), + null != e && this.write(e, t), + n.corked && ((n.corked = 1), this.uncork()), + !n.ending && L(this, n, i); + }), + Object.defineProperty(y.prototype, "destroyed", { + get: function () { + return ( + void 0 !== this._writableState && this._writableState.destroyed + ); + }, + set: function (e) { + if (!!this._writableState) this._writableState.destroyed = e; + }, + }), + (y.prototype.destroy = m.destroy), + (y.prototype._undestroy = m.undestroy), + (y.prototype._destroy = function (e, t) { + this.end(), t(e); + }); + }, + 983015: function (e, t, i) { + "use strict"; + function n(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function"); + } + var r = i(225877).Buffer, + a = i(403204); + function o(e, t, i) { + e.copy(t, i); + } + (e.exports = (function () { + function e() { + n(this, e), (this.head = null), (this.tail = null), (this.length = 0); + } + return ( + (e.prototype.push = function (e) { + var t = { data: e, next: null }; + this.length > 0 ? (this.tail.next = t) : (this.head = t), + (this.tail = t), + ++this.length; + }), + (e.prototype.unshift = function (e) { + var t = { data: e, next: this.head }; + 0 === this.length && (this.tail = t), + (this.head = t), + ++this.length; + }), + (e.prototype.shift = function () { + if (0 !== this.length) { + var e = this.head.data; + return ( + 1 === this.length + ? (this.head = this.tail = null) + : (this.head = this.head.next), + --this.length, + e + ); + } + }), + (e.prototype.clear = function () { + (this.head = this.tail = null), (this.length = 0); + }), + (e.prototype.join = function (e) { + if (0 === this.length) return ""; + for (var t = this.head, i = "" + t.data; (t = t.next); ) + i += e + t.data; + return i; + }), + (e.prototype.concat = function (e) { + if (0 === this.length) return r.alloc(0); + for (var t = r.allocUnsafe(e >>> 0), i = this.head, n = 0; i; ) + o(i.data, t, n), (n += i.data.length), (i = i.next); + return t; + }), + e + ); + })()), + a && + a.inspect && + a.inspect.custom && + (e.exports.prototype[a.inspect.custom] = function () { + var e = a.inspect({ length: this.length }); + return this.constructor.name + " " + e; + }); + }, + 786949: function (e, t, i) { + "use strict"; + var n = i(229867); + function r(e, t) { + var i = this, + r = this._readableState && this._readableState.destroyed, + a = this._writableState && this._writableState.destroyed; + return r || a + ? (t + ? t(e) + : e && + (this._writableState + ? !this._writableState.errorEmitted && + ((this._writableState.errorEmitted = !0), + n.nextTick(o, this, e)) + : n.nextTick(o, this, e)), + this) + : (this._readableState && (this._readableState.destroyed = !0), + this._writableState && (this._writableState.destroyed = !0), + this._destroy(e || null, function (e) { + !t && e + ? i._writableState + ? !i._writableState.errorEmitted && + ((i._writableState.errorEmitted = !0), n.nextTick(o, i, e)) + : n.nextTick(o, i, e) + : t && t(e); + }), + this); + } + function a() { + this._readableState && + ((this._readableState.destroyed = !1), + (this._readableState.reading = !1), + (this._readableState.ended = !1), + (this._readableState.endEmitted = !1)), + this._writableState && + ((this._writableState.destroyed = !1), + (this._writableState.ended = !1), + (this._writableState.ending = !1), + (this._writableState.finalCalled = !1), + (this._writableState.prefinished = !1), + (this._writableState.finished = !1), + (this._writableState.errorEmitted = !1)); + } + function o(e, t) { + e.emit("error", t); + } + e.exports = { destroy: r, undestroy: a }; + }, + 429775: function (e, t, i) { + e.exports = i(122582).EventEmitter; + }, + 324727: function (e, t, i) { + ((t = e.exports = i(752644)).Stream = t), + (t.Readable = t), + (t.Writable = i(762308)), + (t.Duplex = i(414024)), + (t.Transform = i(930377)), + (t.PassThrough = i(877797)); + }, + 376298: function (e) { + "use strict"; + function t(e, t) { + (e.prototype = Object.create(t.prototype)), + (e.prototype.constructor = e), + (e.__proto__ = t); + } + var i = {}; + function n(e, n, r) { + function a(e, t, i) { + return "string" == typeof n ? n : n(e, t, i); + } + !r && (r = Error); + var o = (function (e) { + function i(t, i, n) { + return e.call(this, a(t, i, n)) || this; + } + return t(i, e), i; + })(r); + (o.prototype.name = r.name), (o.prototype.code = e), (i[e] = o); + } + function r(e, t) { + if (!Array.isArray(e)) return "of ".concat(t, " ").concat(String(e)); + var i = e.length; + return ((e = e.map(function (e) { + return String(e); + })), + i > 2) + ? "one of " + .concat(t, " ") + .concat(e.slice(0, i - 1).join(", "), ", or ") + e[i - 1] + : 2 === i + ? "one of ".concat(t, " ").concat(e[0], " or ").concat(e[1]) + : "of ".concat(t, " ").concat(e[0]); + } + function a(e, t, i) { + return e.substr(!i || i < 0 ? 0 : +i, t.length) === t; + } + function o(e, t, i) { + return ( + (void 0 === i || i > e.length) && (i = e.length), + e.substring(i - t.length, i) === t + ); + } + function s(e, t, i) { + return ( + "number" != typeof i && (i = 0), + !(i + t.length > e.length) && -1 !== e.indexOf(t, i) + ); + } + n( + "ERR_INVALID_OPT_VALUE", + function (e, t) { + return 'The value "' + t + '" is invalid for option "' + e + '"'; + }, + TypeError + ), + n( + "ERR_INVALID_ARG_TYPE", + function (e, t, i) { + if ( + ("string" == typeof t && a(t, "not ") + ? ((n = "must not be"), (t = t.replace(/^not /, ""))) + : (n = "must be"), + o(e, " argument")) + ) + l = "The ".concat(e, " ").concat(n, " ").concat(r(t, "type")); + else { + var n, + l, + c = s(e, ".") ? "property" : "argument"; + l = 'The "' + .concat(e, '" ') + .concat(c, " ") + .concat(n, " ") + .concat(r(t, "type")); + } + return (l += ". Received type ".concat(typeof i)); + }, + TypeError + ), + n("ERR_STREAM_PUSH_AFTER_EOF", "stream.push() after EOF"), + n("ERR_METHOD_NOT_IMPLEMENTED", function (e) { + return "The " + e + " method is not implemented"; + }), + n("ERR_STREAM_PREMATURE_CLOSE", "Premature close"), + n("ERR_STREAM_DESTROYED", function (e) { + return "Cannot call " + e + " after a stream was destroyed"; + }), + n("ERR_MULTIPLE_CALLBACK", "Callback called multiple times"), + n("ERR_STREAM_CANNOT_PIPE", "Cannot pipe, not readable"), + n("ERR_STREAM_WRITE_AFTER_END", "write after end"), + n( + "ERR_STREAM_NULL_VALUES", + "May not write null values to stream", + TypeError + ), + n( + "ERR_UNKNOWN_ENCODING", + function (e) { + return "Unknown encoding: " + e; + }, + TypeError + ), + n( + "ERR_STREAM_UNSHIFT_AFTER_END_EVENT", + "stream.unshift() after end event" + ), + (e.exports.codes = i); + }, + 73411: function (e, t, i) { + "use strict"; + var n = i(499845), + r = + Object.keys || + function (e) { + var t = []; + for (var i in e) t.push(i); + return t; + }; + e.exports = d; + var a = i(318200), + o = i(623832); + i(32016)(d, a); + for (var s = r(o.prototype), l = 0; l < s.length; l++) { + var c = s[l]; + !d.prototype[c] && (d.prototype[c] = o.prototype[c]); + } + function d(e) { + if (!(this instanceof d)) return new d(e); + a.call(this, e), + o.call(this, e), + (this.allowHalfOpen = !0), + e && + (!1 === e.readable && (this.readable = !1), + !1 === e.writable && (this.writable = !1), + !1 === e.allowHalfOpen && + ((this.allowHalfOpen = !1), this.once("end", u))); + } + function u() { + !this._writableState.ended && n.nextTick(f, this); + } + function f(e) { + e.end(); + } + Object.defineProperty(d.prototype, "writableHighWaterMark", { + enumerable: !1, + get: function () { + return this._writableState.highWaterMark; + }, + }), + Object.defineProperty(d.prototype, "writableBuffer", { + enumerable: !1, + get: function () { + return this._writableState && this._writableState.getBuffer(); + }, + }), + Object.defineProperty(d.prototype, "writableLength", { + enumerable: !1, + get: function () { + return this._writableState.length; + }, + }), + Object.defineProperty(d.prototype, "destroyed", { + enumerable: !1, + get: function () { + return ( + void 0 !== this._readableState && + void 0 !== this._writableState && + this._readableState.destroyed && + this._writableState.destroyed + ); + }, + set: function (e) { + if ( + void 0 !== this._readableState && + void 0 !== this._writableState + ) + (this._readableState.destroyed = e), + (this._writableState.destroyed = e); + }, + }); + }, + 423764: function (e, t, i) { + "use strict"; + e.exports = r; + var n = i(450099); + function r(e) { + if (!(this instanceof r)) return new r(e); + n.call(this, e); + } + i(32016)(r, n), + (r.prototype._transform = function (e, t, i) { + i(null, e); + }); + }, + 318200: function (e, t, i) { + "use strict"; + var n, + r, + a, + o, + s, + l = i(499845); + (e.exports = A), (A.ReadableState = T), i(122582).EventEmitter; + var c = function (e, t) { + return e.listeners(t).length; + }, + d = i(908689), + u = i(966465).Buffer, + f = + (void 0 !== i.g + ? i.g + : "undefined" != typeof window + ? window + : "undefined" != typeof self + ? self + : {} + ).Uint8Array || function () {}; + function h(e) { + return u.from(e); + } + function p(e) { + return u.isBuffer(e) || e instanceof f; + } + var v = i(711900); + r = v && v.debuglog ? v.debuglog("stream") : function () {}; + var m = i(997265), + g = i(352001), + _ = i(184314).getHighWaterMark, + y = i(376298).codes, + b = y.ERR_INVALID_ARG_TYPE, + I = y.ERR_STREAM_PUSH_AFTER_EOF, + w = y.ERR_METHOD_NOT_IMPLEMENTED, + x = y.ERR_STREAM_UNSHIFT_AFTER_END_EVENT; + i(32016)(A, d); + var S = g.errorOrDestroy, + M = ["error", "close", "destroy", "pause", "resume"]; + function C(e, t, i) { + if ("function" == typeof e.prependListener) + return e.prependListener(t, i); + e._events && e._events[t] + ? Array.isArray(e._events[t]) + ? e._events[t].unshift(i) + : (e._events[t] = [i, e._events[t]]) + : e.on(t, i); + } + function T(e, t, r) { + (n = n || i(73411)), + (e = e || {}), + "boolean" != typeof r && (r = t instanceof n), + (this.objectMode = !!e.objectMode), + r && (this.objectMode = this.objectMode || !!e.readableObjectMode), + (this.highWaterMark = _(this, e, "readableHighWaterMark", r)), + (this.buffer = new m()), + (this.length = 0), + (this.pipes = null), + (this.pipesCount = 0), + (this.flowing = null), + (this.ended = !1), + (this.endEmitted = !1), + (this.reading = !1), + (this.sync = !0), + (this.needReadable = !1), + (this.emittedReadable = !1), + (this.readableListening = !1), + (this.resumeScheduled = !1), + (this.paused = !0), + (this.emitClose = !1 !== e.emitClose), + (this.autoDestroy = !!e.autoDestroy), + (this.destroyed = !1), + (this.defaultEncoding = e.defaultEncoding || "utf8"), + (this.awaitDrain = 0), + (this.readingMore = !1), + (this.decoder = null), + (this.encoding = null), + e.encoding && + (!a && (a = i(450251).StringDecoder), + (this.decoder = new a(e.encoding)), + (this.encoding = e.encoding)); + } + function A(e) { + if (((n = n || i(73411)), !(this instanceof A))) return new A(e); + var t = this instanceof n; + (this._readableState = new T(e, this, t)), + (this.readable = !0), + e && + ("function" == typeof e.read && (this._read = e.read), + "function" == typeof e.destroy && (this._destroy = e.destroy)), + d.call(this); + } + function k(e, t, i, n, a) { + r("readableAddChunk", t); + var o, + s = e._readableState; + if (null === t) (s.reading = !1), L(e, s); + else if ((!a && (o = E(s, t)), o)) S(e, o); + else if (s.objectMode || (t && t.length > 0)) { + if ( + ("string" != typeof t && + !s.objectMode && + Object.getPrototypeOf(t) !== u.prototype && + (t = h(t)), + n) + ) + s.endEmitted ? S(e, new x()) : P(e, s, t, !0); + else if (s.ended) S(e, new I()); + else { + if (s.destroyed) return !1; + (s.reading = !1), + s.decoder && !i + ? ((t = s.decoder.write(t)), + s.objectMode || 0 !== t.length ? P(e, s, t, !1) : B(e, s)) + : P(e, s, t, !1); + } + } else !n && ((s.reading = !1), B(e, s)); + return !s.ended && (s.length < s.highWaterMark || 0 === s.length); + } + function P(e, t, i, n) { + t.flowing && 0 === t.length && !t.sync + ? ((t.awaitDrain = 0), e.emit("data", i)) + : ((t.length += t.objectMode ? 1 : i.length), + n ? t.buffer.unshift(i) : t.buffer.push(i), + t.needReadable && j(e)), + B(e, t); + } + function E(e, t) { + var i; + return ( + !p(t) && + "string" != typeof t && + void 0 !== t && + !e.objectMode && + (i = new b("chunk", ["string", "Buffer", "Uint8Array"], t)), + i + ); + } + Object.defineProperty(A.prototype, "destroyed", { + enumerable: !1, + get: function () { + return ( + void 0 !== this._readableState && this._readableState.destroyed + ); + }, + set: function (e) { + if (!!this._readableState) this._readableState.destroyed = e; + }, + }), + (A.prototype.destroy = g.destroy), + (A.prototype._undestroy = g.undestroy), + (A.prototype._destroy = function (e, t) { + t(e); + }), + (A.prototype.push = function (e, t) { + var i, + n = this._readableState; + return ( + n.objectMode + ? (i = !0) + : "string" == typeof e && + ((t = t || n.defaultEncoding) !== n.encoding && + ((e = u.from(e, t)), (t = "")), + (i = !0)), + k(this, e, t, !1, i) + ); + }), + (A.prototype.unshift = function (e) { + return k(this, e, null, !0, !1); + }), + (A.prototype.isPaused = function () { + return !1 === this._readableState.flowing; + }), + (A.prototype.setEncoding = function (e) { + !a && (a = i(450251).StringDecoder); + var t = new a(e); + (this._readableState.decoder = t), + (this._readableState.encoding = + this._readableState.decoder.encoding); + for (var n = this._readableState.buffer.head, r = ""; null !== n; ) + (r += t.write(n.data)), (n = n.next); + return ( + this._readableState.buffer.clear(), + "" !== r && this._readableState.buffer.push(r), + (this._readableState.length = r.length), + this + ); + }); + var D = 0x40000000; + function R(e) { + return ( + e >= D + ? (e = D) + : (e--, + (e |= e >>> 1), + (e |= e >>> 2), + (e |= e >>> 4), + (e |= e >>> 8), + (e |= e >>> 16), + e++), + e + ); + } + function N(e, t) { + if (e <= 0 || (0 === t.length && t.ended)) return 0; + if (t.objectMode) return 1; + if (e != e) + return t.flowing && t.length ? t.buffer.head.data.length : t.length; + return (e > t.highWaterMark && (t.highWaterMark = R(e)), e <= t.length) + ? e + : t.ended + ? t.length + : ((t.needReadable = !0), 0); + } + function L(e, t) { + if ((r("onEofChunk"), !t.ended)) { + if (t.decoder) { + var i = t.decoder.end(); + i && + i.length && + (t.buffer.push(i), (t.length += t.objectMode ? 1 : i.length)); + } + (t.ended = !0), + t.sync + ? j(e) + : ((t.needReadable = !1), + !t.emittedReadable && ((t.emittedReadable = !0), O(e))); + } + } + function j(e) { + var t = e._readableState; + r("emitReadable", t.needReadable, t.emittedReadable), + (t.needReadable = !1), + !t.emittedReadable && + (r("emitReadable", t.flowing), + (t.emittedReadable = !0), + l.nextTick(O, e)); + } + function O(e) { + var t = e._readableState; + r("emitReadable_", t.destroyed, t.length, t.ended), + !t.destroyed && + (t.length || t.ended) && + (e.emit("readable"), (t.emittedReadable = !1)), + (t.needReadable = + !t.flowing && !t.ended && t.length <= t.highWaterMark), + Z(e); + } + function B(e, t) { + !t.readingMore && ((t.readingMore = !0), l.nextTick(F, e, t)); + } + function F(e, t) { + for ( + ; + !t.reading && + !t.ended && + (t.length < t.highWaterMark || (t.flowing && 0 === t.length)); + + ) { + var i = t.length; + if ((r("maybeReadMore read 0"), e.read(0), i === t.length)) break; + } + t.readingMore = !1; + } + function U(e) { + return function () { + var t = e._readableState; + r("pipeOnDrain", t.awaitDrain), + t.awaitDrain && t.awaitDrain--, + 0 === t.awaitDrain && c(e, "data") && ((t.flowing = !0), Z(e)); + }; + } + function G(e) { + var t = e._readableState; + (t.readableListening = e.listenerCount("readable") > 0), + t.resumeScheduled && !t.paused + ? (t.flowing = !0) + : e.listenerCount("data") > 0 && e.resume(); + } + function z(e) { + r("readable nexttick read 0"), e.read(0); + } + function V(e, t) { + !t.resumeScheduled && ((t.resumeScheduled = !0), l.nextTick(W, e, t)); + } + function W(e, t) { + r("resume", t.reading), + !t.reading && e.read(0), + (t.resumeScheduled = !1), + e.emit("resume"), + Z(e), + t.flowing && !t.reading && e.read(0); + } + function Z(e) { + var t = e._readableState; + for (r("flow", t.flowing); t.flowing && null !== e.read(); ); + } + function K(e, t) { + var i; + return 0 === t.length + ? null + : (t.objectMode + ? (i = t.buffer.shift()) + : !e || e >= t.length + ? ((i = t.decoder + ? t.buffer.join("") + : 1 === t.buffer.length + ? t.buffer.first() + : t.buffer.concat(t.length)), + t.buffer.clear()) + : (i = t.buffer.consume(e, t.decoder)), + i); + } + function H(e) { + var t = e._readableState; + r("endReadable", t.endEmitted), + !t.endEmitted && ((t.ended = !0), l.nextTick(q, t, e)); + } + function q(e, t) { + if ( + (r("endReadableNT", e.endEmitted, e.length), + !e.endEmitted && + 0 === e.length && + ((e.endEmitted = !0), + (t.readable = !1), + t.emit("end"), + e.autoDestroy)) + ) { + var i = t._writableState; + (!i || (i.autoDestroy && i.finished)) && t.destroy(); + } + } + function J(e, t) { + for (var i = 0, n = e.length; i < n; i++) if (e[i] === t) return i; + return -1; + } + (A.prototype.read = function (e) { + r("read", e), (e = parseInt(e, 10)); + var t, + i = this._readableState, + n = e; + if ( + (0 !== e && (i.emittedReadable = !1), + 0 === e && + i.needReadable && + ((0 !== i.highWaterMark + ? i.length >= i.highWaterMark + : i.length > 0) || + i.ended)) + ) + return ( + r("read: emitReadable", i.length, i.ended), + 0 === i.length && i.ended ? H(this) : j(this), + null + ); + if (0 === (e = N(e, i)) && i.ended) + return 0 === i.length && H(this), null; + var a = i.needReadable; + return ( + r("need readable", a), + (0 === i.length || i.length - e < i.highWaterMark) && + r("length less than watermark", (a = !0)), + i.ended || i.reading + ? r("reading or ended", (a = !1)) + : a && + (r("do read"), + (i.reading = !0), + (i.sync = !0), + 0 === i.length && (i.needReadable = !0), + this._read(i.highWaterMark), + (i.sync = !1), + !i.reading && (e = N(n, i))), + null === (t = e > 0 ? K(e, i) : null) + ? ((i.needReadable = i.length <= i.highWaterMark), (e = 0)) + : ((i.length -= e), (i.awaitDrain = 0)), + 0 === i.length && + (!i.ended && (i.needReadable = !0), n !== e && i.ended && H(this)), + null !== t && this.emit("data", t), + t + ); + }), + (A.prototype._read = function (e) { + S(this, new w("_read()")); + }), + (A.prototype.pipe = function (e, t) { + var i = this, + n = this._readableState; + switch (n.pipesCount) { + case 0: + n.pipes = e; + break; + case 1: + n.pipes = [n.pipes, e]; + break; + default: + n.pipes.push(e); + } + (n.pipesCount += 1), r("pipe count=%d opts=%j", n.pipesCount, t); + var a = + (t && !1 === t.end) || e === l.stdout || e === l.stderr ? g : s; + function o(e, t) { + r("onunpipe"), + e === i && t && !1 === t.hasUnpiped && ((t.hasUnpiped = !0), f()); + } + function s() { + r("onend"), e.end(); + } + n.endEmitted ? l.nextTick(a) : i.once("end", a), e.on("unpipe", o); + var d = U(i); + e.on("drain", d); + var u = !1; + function f() { + r("cleanup"), + e.removeListener("close", v), + e.removeListener("finish", m), + e.removeListener("drain", d), + e.removeListener("error", p), + e.removeListener("unpipe", o), + i.removeListener("end", s), + i.removeListener("end", g), + i.removeListener("data", h), + (u = !0), + n.awaitDrain && + (!e._writableState || e._writableState.needDrain) && + d(); + } + function h(t) { + r("ondata"); + var a = e.write(t); + r("dest.write", a), + !1 === a && + (((1 === n.pipesCount && n.pipes === e) || + (n.pipesCount > 1 && -1 !== J(n.pipes, e))) && + !u && + (r("false write response, pause", n.awaitDrain), + n.awaitDrain++), + i.pause()); + } + function p(t) { + r("onerror", t), + g(), + e.removeListener("error", p), + 0 === c(e, "error") && S(e, t); + } + function v() { + e.removeListener("finish", m), g(); + } + function m() { + r("onfinish"), e.removeListener("close", v), g(); + } + function g() { + r("unpipe"), i.unpipe(e); + } + return ( + i.on("data", h), + C(e, "error", p), + e.once("close", v), + e.once("finish", m), + e.emit("pipe", i), + !n.flowing && (r("pipe resume"), i.resume()), + e + ); + }), + (A.prototype.unpipe = function (e) { + var t = this._readableState, + i = { hasUnpiped: !1 }; + if (0 === t.pipesCount) return this; + if (1 === t.pipesCount) + return e && e !== t.pipes + ? this + : (!e && (e = t.pipes), + (t.pipes = null), + (t.pipesCount = 0), + (t.flowing = !1), + e && e.emit("unpipe", this, i), + this); + if (!e) { + var n = t.pipes, + r = t.pipesCount; + (t.pipes = null), (t.pipesCount = 0), (t.flowing = !1); + for (var a = 0; a < r; a++) + n[a].emit("unpipe", this, { hasUnpiped: !1 }); + return this; + } + var o = J(t.pipes, e); + return -1 === o + ? this + : (t.pipes.splice(o, 1), + (t.pipesCount -= 1), + 1 === t.pipesCount && (t.pipes = t.pipes[0]), + e.emit("unpipe", this, i), + this); + }), + (A.prototype.on = function (e, t) { + var i = d.prototype.on.call(this, e, t), + n = this._readableState; + return ( + "data" === e + ? ((n.readableListening = this.listenerCount("readable") > 0), + !1 !== n.flowing && this.resume()) + : "readable" === e && + !n.endEmitted && + !n.readableListening && + ((n.readableListening = n.needReadable = !0), + (n.flowing = !1), + (n.emittedReadable = !1), + r("on readable", n.length, n.reading), + n.length ? j(this) : !n.reading && l.nextTick(z, this)), + i + ); + }), + (A.prototype.addListener = A.prototype.on), + (A.prototype.removeListener = function (e, t) { + var i = d.prototype.removeListener.call(this, e, t); + return "readable" === e && l.nextTick(G, this), i; + }), + (A.prototype.removeAllListeners = function (e) { + var t = d.prototype.removeAllListeners.apply(this, arguments); + return ("readable" === e || void 0 === e) && l.nextTick(G, this), t; + }), + (A.prototype.resume = function () { + var e = this._readableState; + return ( + !e.flowing && + (r("resume"), (e.flowing = !e.readableListening), V(this, e)), + (e.paused = !1), + this + ); + }), + (A.prototype.pause = function () { + return ( + r("call pause flowing=%j", this._readableState.flowing), + !1 !== this._readableState.flowing && + (r("pause"), + (this._readableState.flowing = !1), + this.emit("pause")), + (this._readableState.paused = !0), + this + ); + }), + (A.prototype.wrap = function (e) { + var t = this, + i = this._readableState, + n = !1; + for (var a in (e.on("end", function () { + if ((r("wrapped end"), i.decoder && !i.ended)) { + var e = i.decoder.end(); + e && e.length && t.push(e); + } + t.push(null); + }), + e.on("data", function (a) { + if ( + (r("wrapped data"), + i.decoder && (a = i.decoder.write(a)), + i.objectMode && null == a) + ) + return; + if (!!i.objectMode || (!!a && !!a.length)) + !t.push(a) && ((n = !0), e.pause()); + }), + e)) + void 0 === this[a] && + "function" == typeof e[a] && + (this[a] = (function (t) { + return function () { + return e[t].apply(e, arguments); + }; + })(a)); + for (var o = 0; o < M.length; o++) + e.on(M[o], this.emit.bind(this, M[o])); + return ( + (this._read = function (t) { + r("wrapped _read", t), n && ((n = !1), e.resume()); + }), + this + ); + }), + "function" == typeof Symbol && + (A.prototype[Symbol.asyncIterator] = function () { + return void 0 === o && (o = i(412003)), o(this); + }), + Object.defineProperty(A.prototype, "readableHighWaterMark", { + enumerable: !1, + get: function () { + return this._readableState.highWaterMark; + }, + }), + Object.defineProperty(A.prototype, "readableBuffer", { + enumerable: !1, + get: function () { + return this._readableState && this._readableState.buffer; + }, + }), + Object.defineProperty(A.prototype, "readableFlowing", { + enumerable: !1, + get: function () { + return this._readableState.flowing; + }, + set: function (e) { + this._readableState && (this._readableState.flowing = e); + }, + }), + (A._fromList = K), + Object.defineProperty(A.prototype, "readableLength", { + enumerable: !1, + get: function () { + return this._readableState.length; + }, + }), + "function" == typeof Symbol && + (A.from = function (e, t) { + return void 0 === s && (s = i(985267)), s(A, e, t); + }); + }, + 450099: function (e, t, i) { + "use strict"; + e.exports = d; + var n = i(376298).codes, + r = n.ERR_METHOD_NOT_IMPLEMENTED, + a = n.ERR_MULTIPLE_CALLBACK, + o = n.ERR_TRANSFORM_ALREADY_TRANSFORMING, + s = n.ERR_TRANSFORM_WITH_LENGTH_0, + l = i(73411); + function c(e, t) { + var i = this._transformState; + i.transforming = !1; + var n = i.writecb; + if (null === n) return this.emit("error", new a()); + (i.writechunk = null), + (i.writecb = null), + null != t && this.push(t), + n(e); + var r = this._readableState; + (r.reading = !1), + (r.needReadable || r.length < r.highWaterMark) && + this._read(r.highWaterMark); + } + function d(e) { + if (!(this instanceof d)) return new d(e); + l.call(this, e), + (this._transformState = { + afterTransform: c.bind(this), + needTransform: !1, + transforming: !1, + writecb: null, + writechunk: null, + writeencoding: null, + }), + (this._readableState.needReadable = !0), + (this._readableState.sync = !1), + e && + ("function" == typeof e.transform && + (this._transform = e.transform), + "function" == typeof e.flush && (this._flush = e.flush)), + this.on("prefinish", u); + } + function u() { + var e = this; + "function" != typeof this._flush || this._readableState.destroyed + ? f(this, null, null) + : this._flush(function (t, i) { + f(e, t, i); + }); + } + function f(e, t, i) { + if (t) return e.emit("error", t); + if ((null != i && e.push(i), e._writableState.length)) throw new s(); + if (e._transformState.transforming) throw new o(); + return e.push(null); + } + i(32016)(d, l), + (d.prototype.push = function (e, t) { + return ( + (this._transformState.needTransform = !1), + l.prototype.push.call(this, e, t) + ); + }), + (d.prototype._transform = function (e, t, i) { + i(new r("_transform()")); + }), + (d.prototype._write = function (e, t, i) { + var n = this._transformState; + if ( + ((n.writecb = i), + (n.writechunk = e), + (n.writeencoding = t), + !n.transforming) + ) { + var r = this._readableState; + (n.needTransform || r.needReadable || r.length < r.highWaterMark) && + this._read(r.highWaterMark); + } + }), + (d.prototype._read = function (e) { + var t = this._transformState; + null === t.writechunk || t.transforming + ? (t.needTransform = !0) + : ((t.transforming = !0), + this._transform(t.writechunk, t.writeencoding, t.afterTransform)); + }), + (d.prototype._destroy = function (e, t) { + l.prototype._destroy.call(this, e, function (e) { + t(e); + }); + }); + }, + 623832: function (e, t, i) { + "use strict"; + var n, + r, + a = i(499845); + function o(e) { + var t = this; + (this.next = null), + (this.entry = null), + (this.finish = function () { + W(t, e); + }); + } + (e.exports = T), (T.WritableState = C); + var s = { deprecate: i(708333) }, + l = i(908689), + c = i(966465).Buffer, + d = + (void 0 !== i.g + ? i.g + : "undefined" != typeof window + ? window + : "undefined" != typeof self + ? self + : {} + ).Uint8Array || function () {}; + function u(e) { + return c.from(e); + } + function f(e) { + return c.isBuffer(e) || e instanceof d; + } + var h = i(352001), + p = i(184314).getHighWaterMark, + v = i(376298).codes, + m = v.ERR_INVALID_ARG_TYPE, + g = v.ERR_METHOD_NOT_IMPLEMENTED, + _ = v.ERR_MULTIPLE_CALLBACK, + y = v.ERR_STREAM_CANNOT_PIPE, + b = v.ERR_STREAM_DESTROYED, + I = v.ERR_STREAM_NULL_VALUES, + w = v.ERR_STREAM_WRITE_AFTER_END, + x = v.ERR_UNKNOWN_ENCODING, + S = h.errorOrDestroy; + function M() {} + function C(e, t, r) { + (n = n || i(73411)), + (e = e || {}), + "boolean" != typeof r && (r = t instanceof n), + (this.objectMode = !!e.objectMode), + r && (this.objectMode = this.objectMode || !!e.writableObjectMode), + (this.highWaterMark = p(this, e, "writableHighWaterMark", r)), + (this.finalCalled = !1), + (this.needDrain = !1), + (this.ending = !1), + (this.ended = !1), + (this.finished = !1), + (this.destroyed = !1); + var a = !1 === e.decodeStrings; + (this.decodeStrings = !a), + (this.defaultEncoding = e.defaultEncoding || "utf8"), + (this.length = 0), + (this.writing = !1), + (this.corked = 0), + (this.sync = !0), + (this.bufferProcessing = !1), + (this.onwrite = function (e) { + L(t, e); + }), + (this.writecb = null), + (this.writelen = 0), + (this.bufferedRequest = null), + (this.lastBufferedRequest = null), + (this.pendingcb = 0), + (this.prefinished = !1), + (this.errorEmitted = !1), + (this.emitClose = !1 !== e.emitClose), + (this.autoDestroy = !!e.autoDestroy), + (this.bufferedRequestCount = 0), + (this.corkedRequestsFree = new o(this)); + } + function T(e) { + var t = this instanceof (n = n || i(73411)); + if (!t && !r.call(T, this)) return new T(e); + (this._writableState = new C(e, this, t)), + (this.writable = !0), + e && + ("function" == typeof e.write && (this._write = e.write), + "function" == typeof e.writev && (this._writev = e.writev), + "function" == typeof e.destroy && (this._destroy = e.destroy), + "function" == typeof e.final && (this._final = e.final)), + l.call(this); + } + function A(e, t) { + var i = new w(); + S(e, i), a.nextTick(t, i); + } + function k(e, t, i, n) { + var r; + return ( + null === i + ? (r = new I()) + : "string" != typeof i && + !t.objectMode && + (r = new m("chunk", ["string", "Buffer"], i)), + !r || (S(e, r), a.nextTick(n, r), !1) + ); + } + function P(e, t, i) { + return ( + !e.objectMode && + !1 !== e.decodeStrings && + "string" == typeof t && + (t = c.from(t, i)), + t + ); + } + function E(e, t, i, n, r, a) { + if (!i) { + var o = P(t, n, r); + n !== o && ((i = !0), (r = "buffer"), (n = o)); + } + var s = t.objectMode ? 1 : n.length; + t.length += s; + var l = t.length < t.highWaterMark; + if ((!l && (t.needDrain = !0), t.writing || t.corked)) { + var c = t.lastBufferedRequest; + (t.lastBufferedRequest = { + chunk: n, + encoding: r, + isBuf: i, + callback: a, + next: null, + }), + c + ? (c.next = t.lastBufferedRequest) + : (t.bufferedRequest = t.lastBufferedRequest), + (t.bufferedRequestCount += 1); + } else D(e, t, !1, s, n, r, a); + return l; + } + function D(e, t, i, n, r, a, o) { + (t.writelen = n), + (t.writecb = o), + (t.writing = !0), + (t.sync = !0), + t.destroyed + ? t.onwrite(new b("write")) + : i + ? e._writev(r, t.onwrite) + : e._write(r, a, t.onwrite), + (t.sync = !1); + } + function R(e, t, i, n, r) { + --t.pendingcb, + i + ? (a.nextTick(r, n), + a.nextTick(z, e, t), + (e._writableState.errorEmitted = !0), + S(e, n)) + : (r(n), (e._writableState.errorEmitted = !0), S(e, n), z(e, t)); + } + function N(e) { + (e.writing = !1), + (e.writecb = null), + (e.length -= e.writelen), + (e.writelen = 0); + } + function L(e, t) { + var i = e._writableState, + n = i.sync, + r = i.writecb; + if ("function" != typeof r) throw new _(); + if ((N(i), t)) R(e, i, n, t, r); + else { + var o = F(i) || e.destroyed; + !o && + !i.corked && + !i.bufferProcessing && + i.bufferedRequest && + B(e, i), + n ? a.nextTick(j, e, i, o, r) : j(e, i, o, r); + } + } + function j(e, t, i, n) { + !i && O(e, t), t.pendingcb--, n(), z(e, t); + } + function O(e, t) { + 0 === t.length && t.needDrain && ((t.needDrain = !1), e.emit("drain")); + } + function B(e, t) { + t.bufferProcessing = !0; + var i = t.bufferedRequest; + if (e._writev && i && i.next) { + var n = Array(t.bufferedRequestCount), + r = t.corkedRequestsFree; + r.entry = i; + for (var a = 0, s = !0; i; ) + (n[a] = i), !i.isBuf && (s = !1), (i = i.next), (a += 1); + (n.allBuffers = s), + D(e, t, !0, t.length, n, "", r.finish), + t.pendingcb++, + (t.lastBufferedRequest = null), + r.next + ? ((t.corkedRequestsFree = r.next), (r.next = null)) + : (t.corkedRequestsFree = new o(t)), + (t.bufferedRequestCount = 0); + } else { + for (; i; ) { + var l = i.chunk, + c = i.encoding, + d = i.callback, + u = t.objectMode ? 1 : l.length; + if ( + (D(e, t, !1, u, l, c, d), + (i = i.next), + t.bufferedRequestCount--, + t.writing) + ) + break; + } + null === i && (t.lastBufferedRequest = null); + } + (t.bufferedRequest = i), (t.bufferProcessing = !1); + } + function F(e) { + return ( + e.ending && + 0 === e.length && + null === e.bufferedRequest && + !e.finished && + !e.writing + ); + } + function U(e, t) { + e._final(function (i) { + t.pendingcb--, + i && S(e, i), + (t.prefinished = !0), + e.emit("prefinish"), + z(e, t); + }); + } + function G(e, t) { + !t.prefinished && + !t.finalCalled && + ("function" != typeof e._final || t.destroyed + ? ((t.prefinished = !0), e.emit("prefinish")) + : (t.pendingcb++, (t.finalCalled = !0), a.nextTick(U, e, t))); + } + function z(e, t) { + var i = F(t); + if ( + i && + (G(e, t), + 0 === t.pendingcb && + ((t.finished = !0), e.emit("finish"), t.autoDestroy)) + ) { + var n = e._readableState; + (!n || (n.autoDestroy && n.endEmitted)) && e.destroy(); + } + return i; + } + function V(e, t, i) { + (t.ending = !0), + z(e, t), + i && (t.finished ? a.nextTick(i) : e.once("finish", i)), + (t.ended = !0), + (e.writable = !1); + } + function W(e, t, i) { + var n = e.entry; + for (e.entry = null; n; ) { + var r = n.callback; + t.pendingcb--, r(i), (n = n.next); + } + t.corkedRequestsFree.next = e; + } + i(32016)(T, l), + (C.prototype.getBuffer = function () { + for (var e = this.bufferedRequest, t = []; e; ) + t.push(e), (e = e.next); + return t; + }), + !(function () { + try { + Object.defineProperty(C.prototype, "buffer", { + get: s.deprecate( + function () { + return this.getBuffer(); + }, + "_writableState.buffer is deprecated. Use _writableState.getBuffer instead.", + "DEP0003" + ), + }); + } catch (e) {} + })(), + "function" == typeof Symbol && + Symbol.hasInstance && + "function" == typeof Function.prototype[Symbol.hasInstance] + ? ((r = Function.prototype[Symbol.hasInstance]), + Object.defineProperty(T, Symbol.hasInstance, { + value: function (e) { + return ( + !!r.call(this, e) || + (this === T && e && e._writableState instanceof C) + ); + }, + })) + : (r = function (e) { + return e instanceof this; + }), + (T.prototype.pipe = function () { + S(this, new y()); + }), + (T.prototype.write = function (e, t, i) { + var n = this._writableState, + r = !1, + a = !n.objectMode && f(e); + return ( + a && !c.isBuffer(e) && (e = u(e)), + "function" == typeof t && ((i = t), (t = null)), + a ? (t = "buffer") : !t && (t = n.defaultEncoding), + "function" != typeof i && (i = M), + n.ending + ? A(this, i) + : (a || k(this, n, e, i)) && + (n.pendingcb++, (r = E(this, n, a, e, t, i))), + r + ); + }), + (T.prototype.cork = function () { + this._writableState.corked++; + }), + (T.prototype.uncork = function () { + var e = this._writableState; + e.corked && + (e.corked--, + !e.writing && + !e.corked && + !e.bufferProcessing && + e.bufferedRequest && + B(this, e)); + }), + (T.prototype.setDefaultEncoding = function (e) { + if ( + ("string" == typeof e && (e = e.toLowerCase()), + !( + [ + "hex", + "utf8", + "utf-8", + "ascii", + "binary", + "base64", + "ucs2", + "ucs-2", + "utf16le", + "utf-16le", + "raw", + ].indexOf((e + "").toLowerCase()) > -1 + )) + ) + throw new x(e); + return (this._writableState.defaultEncoding = e), this; + }), + Object.defineProperty(T.prototype, "writableBuffer", { + enumerable: !1, + get: function () { + return this._writableState && this._writableState.getBuffer(); + }, + }), + Object.defineProperty(T.prototype, "writableHighWaterMark", { + enumerable: !1, + get: function () { + return this._writableState.highWaterMark; + }, + }), + (T.prototype._write = function (e, t, i) { + i(new g("_write()")); + }), + (T.prototype._writev = null), + (T.prototype.end = function (e, t, i) { + var n = this._writableState; + return ( + "function" == typeof e + ? ((i = e), (e = null), (t = null)) + : "function" == typeof t && ((i = t), (t = null)), + null != e && this.write(e, t), + n.corked && ((n.corked = 1), this.uncork()), + !n.ending && V(this, n, i), + this + ); + }), + Object.defineProperty(T.prototype, "writableLength", { + enumerable: !1, + get: function () { + return this._writableState.length; + }, + }), + Object.defineProperty(T.prototype, "destroyed", { + enumerable: !1, + get: function () { + return ( + void 0 !== this._writableState && this._writableState.destroyed + ); + }, + set: function (e) { + if (!!this._writableState) this._writableState.destroyed = e; + }, + }), + (T.prototype.destroy = h.destroy), + (T.prototype._undestroy = h.undestroy), + (T.prototype._destroy = function (e, t) { + t(e); + }); + }, + 412003: function (e, t, i) { + "use strict"; + var n, + r = i(499845); + function a(e, t, i) { + return ( + (t = o(t)) in e + ? Object.defineProperty(e, t, { + value: i, + enumerable: !0, + configurable: !0, + writable: !0, + }) + : (e[t] = i), + e + ); + } + function o(e) { + var t = s(e, "string"); + return "symbol" == typeof t ? t : String(t); + } + function s(e, t) { + if ("object" != typeof e || null === e) return e; + var i = e[Symbol.toPrimitive]; + if (void 0 !== i) { + var n = i.call(e, t || "default"); + if ("object" != typeof n) return n; + throw TypeError("@@toPrimitive must return a primitive value."); + } + return ("string" === t ? String : Number)(e); + } + var l = i(640916), + c = Symbol("lastResolve"), + d = Symbol("lastReject"), + u = Symbol("error"), + f = Symbol("ended"), + h = Symbol("lastPromise"), + p = Symbol("handlePromise"), + v = Symbol("stream"); + function m(e, t) { + return { value: e, done: t }; + } + function g(e) { + var t = e[c]; + if (null !== t) { + var i = e[v].read(); + null !== i && + ((e[h] = null), (e[c] = null), (e[d] = null), t(m(i, !1))); + } + } + function _(e) { + r.nextTick(g, e); + } + function y(e, t) { + return function (i, n) { + e.then(function () { + if (t[f]) { + i(m(void 0, !0)); + return; + } + t[p](i, n); + }, n); + }; + } + var b = Object.getPrototypeOf(function () {}), + I = Object.setPrototypeOf( + (a( + (n = { + get stream() { + return this[v]; + }, + next: function () { + var e, + t = this, + i = this[u]; + if (null !== i) return Promise.reject(i); + if (this[f]) return Promise.resolve(m(void 0, !0)); + if (this[v].destroyed) + return new Promise(function (e, i) { + r.nextTick(function () { + t[u] ? i(t[u]) : e(m(void 0, !0)); + }); + }); + var n = this[h]; + if (n) e = new Promise(y(n, this)); + else { + var a = this[v].read(); + if (null !== a) return Promise.resolve(m(a, !1)); + e = new Promise(this[p]); + } + return (this[h] = e), e; + }, + }), + Symbol.asyncIterator, + function () { + return this; + } + ), + a(n, "return", function () { + var e = this; + return new Promise(function (t, i) { + e[v].destroy(null, function (e) { + if (e) { + i(e); + return; + } + t(m(void 0, !0)); + }); + }); + }), + n), + b + ), + w = function (e) { + var t, + i = Object.create( + I, + (a((t = {}), v, { value: e, writable: !0 }), + a(t, c, { value: null, writable: !0 }), + a(t, d, { value: null, writable: !0 }), + a(t, u, { value: null, writable: !0 }), + a(t, f, { value: e._readableState.endEmitted, writable: !0 }), + a(t, p, { + value: function (e, t) { + var n = i[v].read(); + n + ? ((i[h] = null), (i[c] = null), (i[d] = null), e(m(n, !1))) + : ((i[c] = e), (i[d] = t)); + }, + writable: !0, + }), + t) + ); + return ( + (i[h] = null), + l(e, function (e) { + if (e && "ERR_STREAM_PREMATURE_CLOSE" !== e.code) { + var t = i[d]; + null !== t && + ((i[h] = null), (i[c] = null), (i[d] = null), t(e)), + (i[u] = e); + return; + } + var n = i[c]; + null !== n && + ((i[h] = null), (i[c] = null), (i[d] = null), n(m(void 0, !0))), + (i[f] = !0); + }), + e.on("readable", _.bind(null, i)), + i + ); + }; + e.exports = w; + }, + 997265: function (e, t, i) { + "use strict"; + function n(e, t) { + var i = Object.keys(e); + if (Object.getOwnPropertySymbols) { + var n = Object.getOwnPropertySymbols(e); + t && + (n = n.filter(function (t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable; + })), + i.push.apply(i, n); + } + return i; + } + function r(e) { + for (var t = 1; t < arguments.length; t++) { + var i = null != arguments[t] ? arguments[t] : {}; + t % 2 + ? n(Object(i), !0).forEach(function (t) { + a(e, t, i[t]); + }) + : Object.getOwnPropertyDescriptors + ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(i)) + : n(Object(i)).forEach(function (t) { + Object.defineProperty( + e, + t, + Object.getOwnPropertyDescriptor(i, t) + ); + }); + } + return e; + } + function a(e, t, i) { + return ( + (t = c(t)) in e + ? Object.defineProperty(e, t, { + value: i, + enumerable: !0, + configurable: !0, + writable: !0, + }) + : (e[t] = i), + e + ); + } + function o(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function"); + } + function s(e, t) { + for (var i = 0; i < t.length; i++) { + var n = t[i]; + (n.enumerable = n.enumerable || !1), + (n.configurable = !0), + "value" in n && (n.writable = !0), + Object.defineProperty(e, c(n.key), n); + } + } + function l(e, t, i) { + return ( + t && s(e.prototype, t), + i && s(e, i), + Object.defineProperty(e, "prototype", { writable: !1 }), + e + ); + } + function c(e) { + var t = d(e, "string"); + return "symbol" == typeof t ? t : String(t); + } + function d(e, t) { + if ("object" != typeof e || null === e) return e; + var i = e[Symbol.toPrimitive]; + if (void 0 !== i) { + var n = i.call(e, t || "default"); + if ("object" != typeof n) return n; + throw TypeError("@@toPrimitive must return a primitive value."); + } + return ("string" === t ? String : Number)(e); + } + var u = i(966465).Buffer, + f = i(821353).inspect, + h = (f && f.custom) || "inspect"; + function p(e, t, i) { + u.prototype.copy.call(e, t, i); + } + e.exports = (function () { + function e() { + o(this, e), (this.head = null), (this.tail = null), (this.length = 0); + } + return ( + l(e, [ + { + key: "push", + value: function (e) { + var t = { data: e, next: null }; + this.length > 0 ? (this.tail.next = t) : (this.head = t), + (this.tail = t), + ++this.length; + }, + }, + { + key: "unshift", + value: function (e) { + var t = { data: e, next: this.head }; + 0 === this.length && (this.tail = t), + (this.head = t), + ++this.length; + }, + }, + { + key: "shift", + value: function () { + if (0 !== this.length) { + var e = this.head.data; + return ( + 1 === this.length + ? (this.head = this.tail = null) + : (this.head = this.head.next), + --this.length, + e + ); + } + }, + }, + { + key: "clear", + value: function () { + (this.head = this.tail = null), (this.length = 0); + }, + }, + { + key: "join", + value: function (e) { + if (0 === this.length) return ""; + for (var t = this.head, i = "" + t.data; (t = t.next); ) + i += e + t.data; + return i; + }, + }, + { + key: "concat", + value: function (e) { + if (0 === this.length) return u.alloc(0); + for (var t = u.allocUnsafe(e >>> 0), i = this.head, n = 0; i; ) + p(i.data, t, n), (n += i.data.length), (i = i.next); + return t; + }, + }, + { + key: "consume", + value: function (e, t) { + var i; + return ( + e < this.head.data.length + ? ((i = this.head.data.slice(0, e)), + (this.head.data = this.head.data.slice(e))) + : (i = + e === this.head.data.length + ? this.shift() + : t + ? this._getString(e) + : this._getBuffer(e)), + i + ); + }, + }, + { + key: "first", + value: function () { + return this.head.data; + }, + }, + { + key: "_getString", + value: function (e) { + var t = this.head, + i = 1, + n = t.data; + for (e -= n.length; (t = t.next); ) { + var r = t.data, + a = e > r.length ? r.length : e; + if ( + (a === r.length ? (n += r) : (n += r.slice(0, e)), + 0 == (e -= a)) + ) { + a === r.length + ? (++i, + t.next + ? (this.head = t.next) + : (this.head = this.tail = null)) + : ((this.head = t), (t.data = r.slice(a))); + break; + } + ++i; + } + return (this.length -= i), n; + }, + }, + { + key: "_getBuffer", + value: function (e) { + var t = u.allocUnsafe(e), + i = this.head, + n = 1; + for (i.data.copy(t), e -= i.data.length; (i = i.next); ) { + var r = i.data, + a = e > r.length ? r.length : e; + if ((r.copy(t, t.length - e, 0, a), 0 == (e -= a))) { + a === r.length + ? (++n, + i.next + ? (this.head = i.next) + : (this.head = this.tail = null)) + : ((this.head = i), (i.data = r.slice(a))); + break; + } + ++n; + } + return (this.length -= n), t; + }, + }, + { + key: h, + value: function (e, t) { + return f( + this, + r(r({}, t), {}, { depth: 0, customInspect: !1 }) + ); + }, + }, + ]), + e + ); + })(); + }, + 352001: function (e, t, i) { + "use strict"; + var n = i(499845); + function r(e, t) { + var i = this, + r = this._readableState && this._readableState.destroyed, + s = this._writableState && this._writableState.destroyed; + return r || s + ? (t + ? t(e) + : e && + (this._writableState + ? !this._writableState.errorEmitted && + ((this._writableState.errorEmitted = !0), + n.nextTick(l, this, e)) + : n.nextTick(l, this, e)), + this) + : (this._readableState && (this._readableState.destroyed = !0), + this._writableState && (this._writableState.destroyed = !0), + this._destroy(e || null, function (e) { + !t && e + ? i._writableState + ? i._writableState.errorEmitted + ? n.nextTick(o, i) + : ((i._writableState.errorEmitted = !0), + n.nextTick(a, i, e)) + : n.nextTick(a, i, e) + : t + ? (n.nextTick(o, i), t(e)) + : n.nextTick(o, i); + }), + this); + } + function a(e, t) { + l(e, t), o(e); + } + function o(e) { + if (!e._writableState || !!e._writableState.emitClose) + (!e._readableState || e._readableState.emitClose) && e.emit("close"); + } + function s() { + this._readableState && + ((this._readableState.destroyed = !1), + (this._readableState.reading = !1), + (this._readableState.ended = !1), + (this._readableState.endEmitted = !1)), + this._writableState && + ((this._writableState.destroyed = !1), + (this._writableState.ended = !1), + (this._writableState.ending = !1), + (this._writableState.finalCalled = !1), + (this._writableState.prefinished = !1), + (this._writableState.finished = !1), + (this._writableState.errorEmitted = !1)); + } + function l(e, t) { + e.emit("error", t); + } + function c(e, t) { + var i = e._readableState, + n = e._writableState; + (i && i.autoDestroy) || (n && n.autoDestroy) + ? e.destroy(t) + : e.emit("error", t); + } + e.exports = { destroy: r, undestroy: s, errorOrDestroy: c }; + }, + 640916: function (e, t, i) { + "use strict"; + var n = i(376298).codes.ERR_STREAM_PREMATURE_CLOSE; + function r(e) { + var t = !1; + return function () { + if (!t) { + t = !0; + for (var i = arguments.length, n = Array(i), r = 0; r < i; r++) + n[r] = arguments[r]; + e.apply(this, n); + } + }; + } + function a() {} + function o(e) { + return e.setHeader && "function" == typeof e.abort; + } + function s(e, t, i) { + if ("function" == typeof t) return s(e, null, t); + !t && (t = {}), (i = r(i || a)); + var l = t.readable || (!1 !== t.readable && e.readable), + c = t.writable || (!1 !== t.writable && e.writable), + d = function () { + !e.writable && f(); + }, + u = e._writableState && e._writableState.finished, + f = function () { + (c = !1), (u = !0), !l && i.call(e); + }, + h = e._readableState && e._readableState.endEmitted, + p = function () { + (l = !1), (h = !0), !c && i.call(e); + }, + v = function (t) { + i.call(e, t); + }, + m = function () { + var t; + return l && !h + ? ((!e._readableState || !e._readableState.ended) && + (t = new n()), + i.call(e, t)) + : c && !u + ? ((!e._writableState || !e._writableState.ended) && + (t = new n()), + i.call(e, t)) + : void 0; + }, + g = function () { + e.req.on("finish", f); + }; + return ( + o(e) + ? (e.on("complete", f), + e.on("abort", m), + e.req ? g() : e.on("request", g)) + : c && !e._writableState && (e.on("end", d), e.on("close", d)), + e.on("end", p), + e.on("finish", f), + !1 !== t.error && e.on("error", v), + e.on("close", m), + function () { + e.removeListener("complete", f), + e.removeListener("abort", m), + e.removeListener("request", g), + e.req && e.req.removeListener("finish", f), + e.removeListener("end", d), + e.removeListener("close", d), + e.removeListener("finish", f), + e.removeListener("end", p), + e.removeListener("error", v), + e.removeListener("close", m); + } + ); + } + e.exports = s; + }, + 985267: function (e) { + e.exports = function () { + throw Error("Readable.from is not available in the browser"); + }; + }, + 221902: function (e, t, i) { + "use strict"; + function n(e) { + var t = !1; + return function () { + !t && ((t = !0), e.apply(void 0, arguments)); + }; + } + var r, + a = i(376298).codes, + o = a.ERR_MISSING_ARGS, + s = a.ERR_STREAM_DESTROYED; + function l(e) { + if (e) throw e; + } + function c(e) { + return e.setHeader && "function" == typeof e.abort; + } + function d(e, t, a, o) { + o = n(o); + var l = !1; + e.on("close", function () { + l = !0; + }), + void 0 === r && (r = i(640916)), + r(e, { readable: t, writable: a }, function (e) { + if (e) return o(e); + (l = !0), o(); + }); + var d = !1; + return function (t) { + if (!l) { + if (!d) { + if (((d = !0), c(e))) return e.abort(); + if ("function" == typeof e.destroy) return e.destroy(); + o(t || new s("pipe")); + } + } + }; + } + function u(e) { + e(); + } + function f(e, t) { + return e.pipe(t); + } + function h(e) { + return e.length && "function" == typeof e[e.length - 1] ? e.pop() : l; + } + function p() { + for (var e, t = arguments.length, i = Array(t), n = 0; n < t; n++) + i[n] = arguments[n]; + var r = h(i); + if ((Array.isArray(i[0]) && (i = i[0]), i.length < 2)) + throw new o("streams"); + var a = i.map(function (t, n) { + var o = n < i.length - 1; + return d(t, o, n > 0, function (t) { + !e && (e = t), t && a.forEach(u), !o && (a.forEach(u), r(e)); + }); + }); + return i.reduce(f); + } + e.exports = p; + }, + 184314: function (e, t, i) { + "use strict"; + var n = i(376298).codes.ERR_INVALID_OPT_VALUE; + function r(e, t, i) { + return null != e.highWaterMark ? e.highWaterMark : t ? e[i] : null; + } + function a(e, t, i, a) { + var o = r(t, a, i); + if (null != o) { + if (!(isFinite(o) && Math.floor(o) === o) || o < 0) + throw new n(a ? i : "highWaterMark", o); + return Math.floor(o); + } + return e.objectMode ? 16 : 16384; + } + e.exports = { getHighWaterMark: a }; + }, + 908689: function (e, t, i) { + e.exports = i(122582).EventEmitter; + }, + 235521: function (e, t, i) { + ((t = e.exports = i(318200)).Stream = t), + (t.Readable = t), + (t.Writable = i(623832)), + (t.Duplex = i(73411)), + (t.Transform = i(450099)), + (t.PassThrough = i(423764)), + (t.finished = i(640916)), + (t.pipeline = i(221902)); + }, + 866818: function (e, t, i) { + "use strict"; + var n = i(966465).Buffer, + r = i(32016), + a = i(277514), + o = Array(16), + s = [ + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 7, 4, 13, 1, 10, + 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8, 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, + 0, 6, 13, 11, 5, 12, 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, + 6, 2, 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13, + ], + l = [ + 5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12, 6, 11, 3, 7, 0, + 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2, 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, + 12, 2, 10, 0, 4, 13, 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, + 14, 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11, + ], + c = [ + 11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8, 7, 6, 8, 13, + 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12, 11, 13, 6, 7, 14, 9, 13, + 15, 14, 8, 13, 6, 5, 12, 7, 5, 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, + 6, 8, 6, 5, 12, 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, + 6, + ], + d = [ + 8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6, 9, 13, 15, 7, + 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11, 9, 7, 15, 11, 8, 6, 6, 14, + 12, 13, 5, 14, 13, 13, 7, 5, 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, + 12, 5, 15, 8, 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11, + ], + u = [0, 0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xa953fd4e], + f = [0x50a28be6, 0x5c4dd124, 0x6d703ef3, 0x7a6d76e9, 0]; + function h() { + a.call(this, 64), + (this._a = 0x67452301), + (this._b = 0xefcdab89), + (this._c = 0x98badcfe), + (this._d = 0x10325476), + (this._e = 0xc3d2e1f0); + } + function p(e, t) { + return (e << t) | (e >>> (32 - t)); + } + function v(e, t, i, n, r, a, o, s) { + return (p((e + (t ^ i ^ n) + a + o) | 0, s) + r) | 0; + } + function m(e, t, i, n, r, a, o, s) { + return (p((e + ((t & i) | (~t & n)) + a + o) | 0, s) + r) | 0; + } + function g(e, t, i, n, r, a, o, s) { + return (p((e + ((t | ~i) ^ n) + a + o) | 0, s) + r) | 0; + } + function _(e, t, i, n, r, a, o, s) { + return (p((e + ((t & n) | (i & ~n)) + a + o) | 0, s) + r) | 0; + } + function y(e, t, i, n, r, a, o, s) { + return (p((e + (t ^ (i | ~n)) + a + o) | 0, s) + r) | 0; + } + r(h, a), + (h.prototype._update = function () { + for (var e, t, i = o, n = 0; n < 16; ++n) + i[n] = this._block.readInt32LE(4 * n); + for ( + var r = 0 | this._a, + a = 0 | this._b, + h = 0 | this._c, + b = 0 | this._d, + I = 0 | this._e, + w = 0 | this._a, + x = 0 | this._b, + S = 0 | this._c, + M = 0 | this._d, + C = 0 | this._e, + T = 0; + T < 80; + T += 1 + ) + T < 16 + ? ((e = v(r, a, h, b, I, i[s[T]], u[0], c[T])), + (t = y(w, x, S, M, C, i[l[T]], f[0], d[T]))) + : T < 32 + ? ((e = m(r, a, h, b, I, i[s[T]], u[1], c[T])), + (t = _(w, x, S, M, C, i[l[T]], f[1], d[T]))) + : T < 48 + ? ((e = g(r, a, h, b, I, i[s[T]], u[2], c[T])), + (t = g(w, x, S, M, C, i[l[T]], f[2], d[T]))) + : T < 64 + ? ((e = _(r, a, h, b, I, i[s[T]], u[3], c[T])), + (t = m(w, x, S, M, C, i[l[T]], f[3], d[T]))) + : ((e = y(r, a, h, b, I, i[s[T]], u[4], c[T])), + (t = v(w, x, S, M, C, i[l[T]], f[4], d[T]))), + (r = I), + (I = b), + (b = p(h, 10)), + (h = a), + (a = e), + (w = C), + (C = M), + (M = p(S, 10)), + (S = x), + (x = t); + var A = (this._b + h + M) | 0; + (this._b = (this._c + b + C) | 0), + (this._c = (this._d + I + w) | 0), + (this._d = (this._e + r + x) | 0), + (this._e = (this._a + a + S) | 0), + (this._a = A); + }), + (h.prototype._digest = function () { + (this._block[this._blockOffset++] = 128), + this._blockOffset > 56 && + (this._block.fill(0, this._blockOffset, 64), + this._update(), + (this._blockOffset = 0)), + this._block.fill(0, this._blockOffset, 56), + this._block.writeUInt32LE(this._length[0], 56), + this._block.writeUInt32LE(this._length[1], 60), + this._update(); + var e = n.alloc ? n.alloc(20) : new n(20); + return ( + e.writeInt32LE(this._a, 0), + e.writeInt32LE(this._b, 4), + e.writeInt32LE(this._c, 8), + e.writeInt32LE(this._d, 12), + e.writeInt32LE(this._e, 16), + e + ); + }), + (e.exports = h); + }, + 225877: function (e, t, i) { + var n = i(966465), + r = n.Buffer; + function a(e, t) { + for (var i in e) t[i] = e[i]; + } + function o(e, t, i) { + return r(e, t, i); + } + r.from && r.alloc && r.allocUnsafe && r.allocUnsafeSlow + ? (e.exports = n) + : (a(n, t), (t.Buffer = o)), + a(r, o), + (o.from = function (e, t, i) { + if ("number" == typeof e) + throw TypeError("Argument must not be a number"); + return r(e, t, i); + }), + (o.alloc = function (e, t, i) { + if ("number" != typeof e) + throw TypeError("Argument must be a number"); + var n = r(e); + return ( + void 0 !== t + ? "string" == typeof i + ? n.fill(t, i) + : n.fill(t) + : n.fill(0), + n + ); + }), + (o.allocUnsafe = function (e) { + if ("number" != typeof e) + throw TypeError("Argument must be a number"); + return r(e); + }), + (o.allocUnsafeSlow = function (e) { + if ("number" != typeof e) + throw TypeError("Argument must be a number"); + return n.SlowBuffer(e); + }); + }, + 140860: function (e, t, i) { + var n = i(966465), + r = n.Buffer; + function a(e, t) { + for (var i in e) t[i] = e[i]; + } + function o(e, t, i) { + return r(e, t, i); + } + r.from && r.alloc && r.allocUnsafe && r.allocUnsafeSlow + ? (e.exports = n) + : (a(n, t), (t.Buffer = o)), + (o.prototype = Object.create(r.prototype)), + a(r, o), + (o.from = function (e, t, i) { + if ("number" == typeof e) + throw TypeError("Argument must not be a number"); + return r(e, t, i); + }), + (o.alloc = function (e, t, i) { + if ("number" != typeof e) + throw TypeError("Argument must be a number"); + var n = r(e); + return ( + void 0 !== t + ? "string" == typeof i + ? n.fill(t, i) + : n.fill(t) + : n.fill(0), + n + ); + }), + (o.allocUnsafe = function (e) { + if ("number" != typeof e) + throw TypeError("Argument must be a number"); + return r(e); + }), + (o.allocUnsafeSlow = function (e) { + if ("number" != typeof e) + throw TypeError("Argument must be a number"); + return n.SlowBuffer(e); + }); + }, + 696772: function (e, t, i) { + var n = i(140860).Buffer; + function r(e, t) { + (this._block = n.alloc(e)), + (this._finalSize = t), + (this._blockSize = e), + (this._len = 0); + } + (r.prototype.update = function (e, t) { + "string" == typeof e && ((t = t || "utf8"), (e = n.from(e, t))); + for ( + var i = this._block, + r = this._blockSize, + a = e.length, + o = this._len, + s = 0; + s < a; + + ) { + for (var l = o % r, c = Math.min(a - s, r - l), d = 0; d < c; d++) + i[l + d] = e[s + d]; + (o += c), (s += c), o % r == 0 && this._update(i); + } + return (this._len += a), this; + }), + (r.prototype.digest = function (e) { + var t = this._len % this._blockSize; + (this._block[t] = 128), + this._block.fill(0, t + 1), + t >= this._finalSize && + (this._update(this._block), this._block.fill(0)); + var i = 8 * this._len; + if (i <= 0xffffffff) + this._block.writeUInt32BE(i, this._blockSize - 4); + else { + var n = (0xffffffff & i) >>> 0, + r = (i - n) / 0x100000000; + this._block.writeUInt32BE(r, this._blockSize - 8), + this._block.writeUInt32BE(n, this._blockSize - 4); + } + this._update(this._block); + var a = this._hash(); + return e ? a.toString(e) : a; + }), + (r.prototype._update = function () { + throw Error("_update must be implemented by subclass"); + }), + (e.exports = r); + }, + 673664: function (e, t, i) { + var n = (e.exports = function (e) { + var t = n[(e = e.toLowerCase())]; + if (!t) throw Error(e + " is not supported (we accept pull requests)"); + return new t(); + }); + (n.sha = i(726087)), + (n.sha1 = i(881606)), + (n.sha224 = i(559601)), + (n.sha256 = i(965183)), + (n.sha384 = i(985919)), + (n.sha512 = i(131837)); + }, + 726087: function (e, t, i) { + var n = i(32016), + r = i(696772), + a = i(140860).Buffer, + o = [0x5a827999, 0x6ed9eba1, -0x70e44324, -0x359d3e2a], + s = Array(80); + function l() { + this.init(), (this._w = s), r.call(this, 64, 56); + } + function c(e) { + return (e << 5) | (e >>> 27); + } + function d(e) { + return (e << 30) | (e >>> 2); + } + function u(e, t, i, n) { + return 0 === e + ? (t & i) | (~t & n) + : 2 === e + ? (t & i) | (t & n) | (i & n) + : t ^ i ^ n; + } + n(l, r), + (l.prototype.init = function () { + return ( + (this._a = 0x67452301), + (this._b = 0xefcdab89), + (this._c = 0x98badcfe), + (this._d = 0x10325476), + (this._e = 0xc3d2e1f0), + this + ); + }), + (l.prototype._update = function (e) { + for ( + var t = this._w, + i = 0 | this._a, + n = 0 | this._b, + r = 0 | this._c, + a = 0 | this._d, + s = 0 | this._e, + l = 0; + l < 16; + ++l + ) + t[l] = e.readInt32BE(4 * l); + for (; l < 80; ++l) + t[l] = t[l - 3] ^ t[l - 8] ^ t[l - 14] ^ t[l - 16]; + for (var f = 0; f < 80; ++f) { + var h = ~~(f / 20), + p = (c(i) + u(h, n, r, a) + s + t[f] + o[h]) | 0; + (s = a), (a = r), (r = d(n)), (n = i), (i = p); + } + (this._a = (i + this._a) | 0), + (this._b = (n + this._b) | 0), + (this._c = (r + this._c) | 0), + (this._d = (a + this._d) | 0), + (this._e = (s + this._e) | 0); + }), + (l.prototype._hash = function () { + var e = a.allocUnsafe(20); + return ( + e.writeInt32BE(0 | this._a, 0), + e.writeInt32BE(0 | this._b, 4), + e.writeInt32BE(0 | this._c, 8), + e.writeInt32BE(0 | this._d, 12), + e.writeInt32BE(0 | this._e, 16), + e + ); + }), + (e.exports = l); + }, + 881606: function (e, t, i) { + var n = i(32016), + r = i(696772), + a = i(140860).Buffer, + o = [0x5a827999, 0x6ed9eba1, -0x70e44324, -0x359d3e2a], + s = Array(80); + function l() { + this.init(), (this._w = s), r.call(this, 64, 56); + } + function c(e) { + return (e << 1) | (e >>> 31); + } + function d(e) { + return (e << 5) | (e >>> 27); + } + function u(e) { + return (e << 30) | (e >>> 2); + } + function f(e, t, i, n) { + return 0 === e + ? (t & i) | (~t & n) + : 2 === e + ? (t & i) | (t & n) | (i & n) + : t ^ i ^ n; + } + n(l, r), + (l.prototype.init = function () { + return ( + (this._a = 0x67452301), + (this._b = 0xefcdab89), + (this._c = 0x98badcfe), + (this._d = 0x10325476), + (this._e = 0xc3d2e1f0), + this + ); + }), + (l.prototype._update = function (e) { + for ( + var t = this._w, + i = 0 | this._a, + n = 0 | this._b, + r = 0 | this._c, + a = 0 | this._d, + s = 0 | this._e, + l = 0; + l < 16; + ++l + ) + t[l] = e.readInt32BE(4 * l); + for (; l < 80; ++l) + t[l] = c(t[l - 3] ^ t[l - 8] ^ t[l - 14] ^ t[l - 16]); + for (var h = 0; h < 80; ++h) { + var p = ~~(h / 20), + v = (d(i) + f(p, n, r, a) + s + t[h] + o[p]) | 0; + (s = a), (a = r), (r = u(n)), (n = i), (i = v); + } + (this._a = (i + this._a) | 0), + (this._b = (n + this._b) | 0), + (this._c = (r + this._c) | 0), + (this._d = (a + this._d) | 0), + (this._e = (s + this._e) | 0); + }), + (l.prototype._hash = function () { + var e = a.allocUnsafe(20); + return ( + e.writeInt32BE(0 | this._a, 0), + e.writeInt32BE(0 | this._b, 4), + e.writeInt32BE(0 | this._c, 8), + e.writeInt32BE(0 | this._d, 12), + e.writeInt32BE(0 | this._e, 16), + e + ); + }), + (e.exports = l); + }, + 559601: function (e, t, i) { + var n = i(32016), + r = i(965183), + a = i(696772), + o = i(140860).Buffer, + s = Array(64); + function l() { + this.init(), (this._w = s), a.call(this, 64, 56); + } + n(l, r), + (l.prototype.init = function () { + return ( + (this._a = 0xc1059ed8), + (this._b = 0x367cd507), + (this._c = 0x3070dd17), + (this._d = 0xf70e5939), + (this._e = 0xffc00b31), + (this._f = 0x68581511), + (this._g = 0x64f98fa7), + (this._h = 0xbefa4fa4), + this + ); + }), + (l.prototype._hash = function () { + var e = o.allocUnsafe(28); + return ( + e.writeInt32BE(this._a, 0), + e.writeInt32BE(this._b, 4), + e.writeInt32BE(this._c, 8), + e.writeInt32BE(this._d, 12), + e.writeInt32BE(this._e, 16), + e.writeInt32BE(this._f, 20), + e.writeInt32BE(this._g, 24), + e + ); + }), + (e.exports = l); + }, + 965183: function (e, t, i) { + var n = i(32016), + r = i(696772), + a = i(140860).Buffer, + o = [ + 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, + 0x59f111f1, 0x923f82a4, 0xab1c5ed5, 0xd807aa98, 0x12835b01, + 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, + 0xc19bf174, 0xe49b69c1, 0xefbe4786, 0xfc19dc6, 0x240ca1cc, 0x2de92c6f, + 0x4a7484aa, 0x5cb0a9dc, 0x76f988da, 0x983e5152, 0xa831c66d, + 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x6ca6351, 0x14292967, + 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, + 0x766a0abb, 0x81c2c92e, 0x92722c85, 0xa2bfe8a1, 0xa81a664b, + 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, + 0x106aa070, 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, + 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3, 0x748f82ee, + 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, + 0xbef9a3f7, 0xc67178f2, + ], + s = Array(64); + function l() { + this.init(), (this._w = s), r.call(this, 64, 56); + } + function c(e, t, i) { + return i ^ (e & (t ^ i)); + } + function d(e, t, i) { + return (e & t) | (i & (e | t)); + } + function u(e) { + return ( + ((e >>> 2) | (e << 30)) ^ + ((e >>> 13) | (e << 19)) ^ + ((e >>> 22) | (e << 10)) + ); + } + function f(e) { + return ( + ((e >>> 6) | (e << 26)) ^ + ((e >>> 11) | (e << 21)) ^ + ((e >>> 25) | (e << 7)) + ); + } + function h(e) { + return ((e >>> 7) | (e << 25)) ^ ((e >>> 18) | (e << 14)) ^ (e >>> 3); + } + function p(e) { + return ((e >>> 17) | (e << 15)) ^ ((e >>> 19) | (e << 13)) ^ (e >>> 10); + } + n(l, r), + (l.prototype.init = function () { + return ( + (this._a = 0x6a09e667), + (this._b = 0xbb67ae85), + (this._c = 0x3c6ef372), + (this._d = 0xa54ff53a), + (this._e = 0x510e527f), + (this._f = 0x9b05688c), + (this._g = 0x1f83d9ab), + (this._h = 0x5be0cd19), + this + ); + }), + (l.prototype._update = function (e) { + for ( + var t = this._w, + i = 0 | this._a, + n = 0 | this._b, + r = 0 | this._c, + a = 0 | this._d, + s = 0 | this._e, + l = 0 | this._f, + v = 0 | this._g, + m = 0 | this._h, + g = 0; + g < 16; + ++g + ) + t[g] = e.readInt32BE(4 * g); + for (; g < 64; ++g) + t[g] = (p(t[g - 2]) + t[g - 7] + h(t[g - 15]) + t[g - 16]) | 0; + for (var _ = 0; _ < 64; ++_) { + var y = (m + f(s) + c(s, l, v) + o[_] + t[_]) | 0, + b = (u(i) + d(i, n, r)) | 0; + (m = v), + (v = l), + (l = s), + (s = (a + y) | 0), + (a = r), + (r = n), + (n = i), + (i = (y + b) | 0); + } + (this._a = (i + this._a) | 0), + (this._b = (n + this._b) | 0), + (this._c = (r + this._c) | 0), + (this._d = (a + this._d) | 0), + (this._e = (s + this._e) | 0), + (this._f = (l + this._f) | 0), + (this._g = (v + this._g) | 0), + (this._h = (m + this._h) | 0); + }), + (l.prototype._hash = function () { + var e = a.allocUnsafe(32); + return ( + e.writeInt32BE(this._a, 0), + e.writeInt32BE(this._b, 4), + e.writeInt32BE(this._c, 8), + e.writeInt32BE(this._d, 12), + e.writeInt32BE(this._e, 16), + e.writeInt32BE(this._f, 20), + e.writeInt32BE(this._g, 24), + e.writeInt32BE(this._h, 28), + e + ); + }), + (e.exports = l); + }, + 985919: function (e, t, i) { + var n = i(32016), + r = i(131837), + a = i(696772), + o = i(140860).Buffer, + s = Array(160); + function l() { + this.init(), (this._w = s), a.call(this, 128, 112); + } + n(l, r), + (l.prototype.init = function () { + return ( + (this._ah = 0xcbbb9d5d), + (this._bh = 0x629a292a), + (this._ch = 0x9159015a), + (this._dh = 0x152fecd8), + (this._eh = 0x67332667), + (this._fh = 0x8eb44a87), + (this._gh = 0xdb0c2e0d), + (this._hh = 0x47b5481d), + (this._al = 0xc1059ed8), + (this._bl = 0x367cd507), + (this._cl = 0x3070dd17), + (this._dl = 0xf70e5939), + (this._el = 0xffc00b31), + (this._fl = 0x68581511), + (this._gl = 0x64f98fa7), + (this._hl = 0xbefa4fa4), + this + ); + }), + (l.prototype._hash = function () { + var e = o.allocUnsafe(48); + function t(t, i, n) { + e.writeInt32BE(t, n), e.writeInt32BE(i, n + 4); + } + return ( + t(this._ah, this._al, 0), + t(this._bh, this._bl, 8), + t(this._ch, this._cl, 16), + t(this._dh, this._dl, 24), + t(this._eh, this._el, 32), + t(this._fh, this._fl, 40), + e + ); + }), + (e.exports = l); + }, + 131837: function (e, t, i) { + var n = i(32016), + r = i(696772), + a = i(140860).Buffer, + o = [ + 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd, 0xb5c0fbcf, + 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc, 0x3956c25b, 0xf348b538, + 0x59f111f1, 0xb605d019, 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, + 0xda6d8118, 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe, + 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2, 0x72be5d74, + 0xf27b896f, 0x80deb1fe, 0x3b1696b1, 0x9bdc06a7, 0x25c71235, + 0xc19bf174, 0xcf692694, 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, + 0x384f25e3, 0xfc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65, 0x2de92c6f, + 0x592b0275, 0x4a7484aa, 0x6ea6e483, 0x5cb0a9dc, 0xbd41fbd4, + 0x76f988da, 0x831153b5, 0x983e5152, 0xee66dfab, 0xa831c66d, + 0x2db43210, 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4, + 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725, 0x6ca6351, 0xe003826f, + 0x14292967, 0xa0e6e70, 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926, + 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df, 0x650a7354, + 0x8baf63de, 0x766a0abb, 0x3c77b2a8, 0x81c2c92e, 0x47edaee6, + 0x92722c85, 0x1482353b, 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, + 0xbc423001, 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x654be30, 0xd192e819, + 0xd6ef5218, 0xd6990624, 0x5565a910, 0xf40e3585, 0x5771202a, + 0x106aa070, 0x32bbd1b8, 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, + 0x5141ab53, 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8, + 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb, 0x5b9cca4f, + 0x7763e373, 0x682e6ff3, 0xd6b2b8a3, 0x748f82ee, 0x5defb2fc, + 0x78a5636f, 0x43172f60, 0x84c87814, 0xa1f0ab72, 0x8cc70208, + 0x1a6439ec, 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9, + 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b, 0xca273ece, + 0xea26619c, 0xd186b8c7, 0x21c0c207, 0xeada7dd6, 0xcde0eb1e, + 0xf57d4f7f, 0xee6ed178, 0x6f067aa, 0x72176fba, 0xa637dc5, 0xa2c898a6, + 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b, 0x28db77f5, + 0x23047d84, 0x32caab7b, 0x40c72493, 0x3c9ebe0a, 0x15c9bebc, + 0x431d67c4, 0x9c100d4c, 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, + 0xfc657e2a, 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817, + ], + s = Array(160); + function l() { + this.init(), (this._w = s), r.call(this, 128, 112); + } + function c(e, t, i) { + return i ^ (e & (t ^ i)); + } + function d(e, t, i) { + return (e & t) | (i & (e | t)); + } + function u(e, t) { + return ( + ((e >>> 28) | (t << 4)) ^ + ((t >>> 2) | (e << 30)) ^ + ((t >>> 7) | (e << 25)) + ); + } + function f(e, t) { + return ( + ((e >>> 14) | (t << 18)) ^ + ((e >>> 18) | (t << 14)) ^ + ((t >>> 9) | (e << 23)) + ); + } + function h(e, t) { + return ((e >>> 1) | (t << 31)) ^ ((e >>> 8) | (t << 24)) ^ (e >>> 7); + } + function p(e, t) { + return ( + ((e >>> 1) | (t << 31)) ^ + ((e >>> 8) | (t << 24)) ^ + ((e >>> 7) | (t << 25)) + ); + } + function v(e, t) { + return ((e >>> 19) | (t << 13)) ^ ((t >>> 29) | (e << 3)) ^ (e >>> 6); + } + function m(e, t) { + return ( + ((e >>> 19) | (t << 13)) ^ + ((t >>> 29) | (e << 3)) ^ + ((e >>> 6) | (t << 26)) + ); + } + function g(e, t) { + return e >>> 0 < t >>> 0 ? 1 : 0; + } + n(l, r), + (l.prototype.init = function () { + return ( + (this._ah = 0x6a09e667), + (this._bh = 0xbb67ae85), + (this._ch = 0x3c6ef372), + (this._dh = 0xa54ff53a), + (this._eh = 0x510e527f), + (this._fh = 0x9b05688c), + (this._gh = 0x1f83d9ab), + (this._hh = 0x5be0cd19), + (this._al = 0xf3bcc908), + (this._bl = 0x84caa73b), + (this._cl = 0xfe94f82b), + (this._dl = 0x5f1d36f1), + (this._el = 0xade682d1), + (this._fl = 0x2b3e6c1f), + (this._gl = 0xfb41bd6b), + (this._hl = 0x137e2179), + this + ); + }), + (l.prototype._update = function (e) { + for ( + var t = this._w, + i = 0 | this._ah, + n = 0 | this._bh, + r = 0 | this._ch, + a = 0 | this._dh, + s = 0 | this._eh, + l = 0 | this._fh, + _ = 0 | this._gh, + y = 0 | this._hh, + b = 0 | this._al, + I = 0 | this._bl, + w = 0 | this._cl, + x = 0 | this._dl, + S = 0 | this._el, + M = 0 | this._fl, + C = 0 | this._gl, + T = 0 | this._hl, + A = 0; + A < 32; + A += 2 + ) + (t[A] = e.readInt32BE(4 * A)), + (t[A + 1] = e.readInt32BE(4 * A + 4)); + for (; A < 160; A += 2) { + var k = t[A - 30], + P = t[A - 30 + 1], + E = h(k, P), + D = p(P, k); + k = t[A - 4]; + var R = v(k, (P = t[A - 4 + 1])), + N = m(P, k), + L = t[A - 14], + j = t[A - 14 + 1], + O = t[A - 32], + B = t[A - 32 + 1], + F = (D + j) | 0, + U = (E + L + g(F, D)) | 0; + (U = (U + R + g((F = (F + N) | 0), N)) | 0), + (U = (U + O + g((F = (F + B) | 0), B)) | 0), + (t[A] = U), + (t[A + 1] = F); + } + for (var G = 0; G < 160; G += 2) { + (U = t[G]), (F = t[G + 1]); + var z = d(i, n, r), + V = d(b, I, w), + W = u(i, b), + Z = u(b, i), + K = f(s, S), + H = f(S, s), + q = o[G], + J = o[G + 1], + Y = c(s, l, _), + Q = c(S, M, C), + X = (T + H) | 0, + $ = (y + K + g(X, T)) | 0; + ($ = ($ + Y + g((X = (X + Q) | 0), Q)) | 0), + ($ = ($ + q + g((X = (X + J) | 0), J)) | 0), + ($ = ($ + U + g((X = (X + F) | 0), F)) | 0); + var ee = (Z + V) | 0, + et = (W + z + g(ee, Z)) | 0; + (y = _), + (T = C), + (_ = l), + (C = M), + (l = s), + (M = S), + (s = (a + $ + g((S = (x + X) | 0), x)) | 0), + (a = r), + (x = w), + (r = n), + (w = I), + (n = i), + (I = b), + (i = ($ + et + g((b = (X + ee) | 0), X)) | 0); + } + (this._al = (this._al + b) | 0), + (this._bl = (this._bl + I) | 0), + (this._cl = (this._cl + w) | 0), + (this._dl = (this._dl + x) | 0), + (this._el = (this._el + S) | 0), + (this._fl = (this._fl + M) | 0), + (this._gl = (this._gl + C) | 0), + (this._hl = (this._hl + T) | 0), + (this._ah = (this._ah + i + g(this._al, b)) | 0), + (this._bh = (this._bh + n + g(this._bl, I)) | 0), + (this._ch = (this._ch + r + g(this._cl, w)) | 0), + (this._dh = (this._dh + a + g(this._dl, x)) | 0), + (this._eh = (this._eh + s + g(this._el, S)) | 0), + (this._fh = (this._fh + l + g(this._fl, M)) | 0), + (this._gh = (this._gh + _ + g(this._gl, C)) | 0), + (this._hh = (this._hh + y + g(this._hl, T)) | 0); + }), + (l.prototype._hash = function () { + var e = a.allocUnsafe(64); + function t(t, i, n) { + e.writeInt32BE(t, n), e.writeInt32BE(i, n + 4); + } + return ( + t(this._ah, this._al, 0), + t(this._bh, this._bl, 8), + t(this._ch, this._cl, 16), + t(this._dh, this._dl, 24), + t(this._eh, this._el, 32), + t(this._fh, this._fl, 40), + t(this._gh, this._gl, 48), + t(this._hh, this._hl, 56), + e + ); + }), + (e.exports = l); + }, + 328266: function (e, t, i) { + e.exports = r; + var n = i(122582).EventEmitter; + function r() { + n.call(this); + } + i(32016)(r, n), + (r.Readable = i(318200)), + (r.Writable = i(623832)), + (r.Duplex = i(73411)), + (r.Transform = i(450099)), + (r.PassThrough = i(423764)), + (r.finished = i(640916)), + (r.pipeline = i(221902)), + (r.Stream = r), + (r.prototype.pipe = function (e, t) { + var i = this; + function r(t) { + e.writable && !1 === e.write(t) && i.pause && i.pause(); + } + function a() { + i.readable && i.resume && i.resume(); + } + i.on("data", r), + e.on("drain", a), + !e._isStdio && + (!t || !1 !== t.end) && + (i.on("end", s), i.on("close", l)); + var o = !1; + function s() { + !o && ((o = !0), e.end()); + } + function l() { + !o && ((o = !0), "function" == typeof e.destroy && e.destroy()); + } + function c(e) { + if ((d(), 0 === n.listenerCount(this, "error"))) throw e; + } + function d() { + i.removeListener("data", r), + e.removeListener("drain", a), + i.removeListener("end", s), + i.removeListener("close", l), + i.removeListener("error", c), + e.removeListener("error", c), + i.removeListener("end", d), + i.removeListener("close", d), + e.removeListener("close", d); + } + return ( + i.on("error", c), + e.on("error", c), + i.on("end", d), + i.on("close", d), + e.on("close", d), + e.emit("pipe", i), + e + ); + }); + }, + 659406: function (e, t, i) { + "use strict"; + var n = i(225877).Buffer, + r = + n.isEncoding || + function (e) { + switch ((e = "" + e) && e.toLowerCase()) { + case "hex": + case "utf8": + case "utf-8": + case "ascii": + case "binary": + case "base64": + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + case "raw": + return !0; + default: + return !1; + } + }; + function a(e) { + var t; + if (!e) return "utf8"; + for (;;) + switch (e) { + case "utf8": + case "utf-8": + return "utf8"; + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + return "utf16le"; + case "latin1": + case "binary": + return "latin1"; + case "base64": + case "ascii": + case "hex": + return e; + default: + if (t) return; + (e = ("" + e).toLowerCase()), (t = !0); + } + } + function o(e) { + var t = a(e); + if ("string" != typeof t && (n.isEncoding === r || !r(e))) + throw Error("Unknown encoding: " + e); + return t || e; + } + function s(e) { + var t; + switch (((this.encoding = o(e)), this.encoding)) { + case "utf16le": + (this.text = p), (this.end = v), (t = 4); + break; + case "utf8": + (this.fillLast = u), (t = 4); + break; + case "base64": + (this.text = m), (this.end = g), (t = 3); + break; + default: + (this.write = _), (this.end = y); + return; + } + (this.lastNeed = 0), + (this.lastTotal = 0), + (this.lastChar = n.allocUnsafe(t)); + } + function l(e) { + if (e <= 127) return 0; + if (e >> 5 == 6) return 2; + if (e >> 4 == 14) return 3; + else if (e >> 3 == 30) return 4; + return e >> 6 == 2 ? -1 : -2; + } + function c(e, t, i) { + var n = t.length - 1; + if (n < i) return 0; + var r = l(t[n]); + return r >= 0 + ? (r > 0 && (e.lastNeed = r - 1), r) + : --n < i || -2 === r + ? 0 + : (r = l(t[n])) >= 0 + ? (r > 0 && (e.lastNeed = r - 2), r) + : --n < i || -2 === r + ? 0 + : (r = l(t[n])) >= 0 + ? (r > 0 && (2 === r ? (r = 0) : (e.lastNeed = r - 3)), r) + : 0; + } + function d(e, t, i) { + if ((192 & t[0]) != 128) return (e.lastNeed = 0), "\uFFFD"; + if (e.lastNeed > 1 && t.length > 1) { + if ((192 & t[1]) != 128) return (e.lastNeed = 1), "\uFFFD"; + if (e.lastNeed > 2 && t.length > 2 && (192 & t[2]) != 128) + return (e.lastNeed = 2), "\uFFFD"; + } + } + function u(e) { + var t = this.lastTotal - this.lastNeed, + i = d(this, e, t); + return void 0 !== i + ? i + : this.lastNeed <= e.length + ? (e.copy(this.lastChar, t, 0, this.lastNeed), + this.lastChar.toString(this.encoding, 0, this.lastTotal)) + : void (e.copy(this.lastChar, t, 0, e.length), + (this.lastNeed -= e.length)); + } + function f(e, t) { + var i = c(this, e, t); + if (!this.lastNeed) return e.toString("utf8", t); + this.lastTotal = i; + var n = e.length - (i - this.lastNeed); + return e.copy(this.lastChar, 0, n), e.toString("utf8", t, n); + } + function h(e) { + var t = e && e.length ? this.write(e) : ""; + return this.lastNeed ? t + "\uFFFD" : t; + } + function p(e, t) { + if ((e.length - t) % 2 == 0) { + var i = e.toString("utf16le", t); + if (i) { + var n = i.charCodeAt(i.length - 1); + if (n >= 55296 && n <= 56319) + return ( + (this.lastNeed = 2), + (this.lastTotal = 4), + (this.lastChar[0] = e[e.length - 2]), + (this.lastChar[1] = e[e.length - 1]), + i.slice(0, -1) + ); + } + return i; + } + return ( + (this.lastNeed = 1), + (this.lastTotal = 2), + (this.lastChar[0] = e[e.length - 1]), + e.toString("utf16le", t, e.length - 1) + ); + } + function v(e) { + var t = e && e.length ? this.write(e) : ""; + if (this.lastNeed) { + var i = this.lastTotal - this.lastNeed; + return t + this.lastChar.toString("utf16le", 0, i); + } + return t; + } + function m(e, t) { + var i = (e.length - t) % 3; + return 0 === i + ? e.toString("base64", t) + : ((this.lastNeed = 3 - i), + (this.lastTotal = 3), + 1 === i + ? (this.lastChar[0] = e[e.length - 1]) + : ((this.lastChar[0] = e[e.length - 2]), + (this.lastChar[1] = e[e.length - 1])), + e.toString("base64", t, e.length - i)); + } + function g(e) { + var t = e && e.length ? this.write(e) : ""; + return this.lastNeed + ? t + this.lastChar.toString("base64", 0, 3 - this.lastNeed) + : t; + } + function _(e) { + return e.toString(this.encoding); + } + function y(e) { + return e && e.length ? this.write(e) : ""; + } + (t.StringDecoder = s), + (s.prototype.write = function (e) { + var t, i; + if (0 === e.length) return ""; + if (this.lastNeed) { + if (void 0 === (t = this.fillLast(e))) return ""; + (i = this.lastNeed), (this.lastNeed = 0); + } else i = 0; + return i < e.length + ? t + ? t + this.text(e, i) + : this.text(e, i) + : t || ""; + }), + (s.prototype.end = h), + (s.prototype.text = f), + (s.prototype.fillLast = function (e) { + if (this.lastNeed <= e.length) + return ( + e.copy( + this.lastChar, + this.lastTotal - this.lastNeed, + 0, + this.lastNeed + ), + this.lastChar.toString(this.encoding, 0, this.lastTotal) + ); + e.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, e.length), + (this.lastNeed -= e.length); + }); + }, + 450251: function (e, t, i) { + "use strict"; + var n = i(140860).Buffer, + r = + n.isEncoding || + function (e) { + switch ((e = "" + e) && e.toLowerCase()) { + case "hex": + case "utf8": + case "utf-8": + case "ascii": + case "binary": + case "base64": + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + case "raw": + return !0; + default: + return !1; + } + }; + function a(e) { + var t; + if (!e) return "utf8"; + for (;;) + switch (e) { + case "utf8": + case "utf-8": + return "utf8"; + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + return "utf16le"; + case "latin1": + case "binary": + return "latin1"; + case "base64": + case "ascii": + case "hex": + return e; + default: + if (t) return; + (e = ("" + e).toLowerCase()), (t = !0); + } + } + function o(e) { + var t = a(e); + if ("string" != typeof t && (n.isEncoding === r || !r(e))) + throw Error("Unknown encoding: " + e); + return t || e; + } + function s(e) { + var t; + switch (((this.encoding = o(e)), this.encoding)) { + case "utf16le": + (this.text = p), (this.end = v), (t = 4); + break; + case "utf8": + (this.fillLast = u), (t = 4); + break; + case "base64": + (this.text = m), (this.end = g), (t = 3); + break; + default: + (this.write = _), (this.end = y); + return; + } + (this.lastNeed = 0), + (this.lastTotal = 0), + (this.lastChar = n.allocUnsafe(t)); + } + function l(e) { + if (e <= 127) return 0; + if (e >> 5 == 6) return 2; + if (e >> 4 == 14) return 3; + else if (e >> 3 == 30) return 4; + return e >> 6 == 2 ? -1 : -2; + } + function c(e, t, i) { + var n = t.length - 1; + if (n < i) return 0; + var r = l(t[n]); + return r >= 0 + ? (r > 0 && (e.lastNeed = r - 1), r) + : --n < i || -2 === r + ? 0 + : (r = l(t[n])) >= 0 + ? (r > 0 && (e.lastNeed = r - 2), r) + : --n < i || -2 === r + ? 0 + : (r = l(t[n])) >= 0 + ? (r > 0 && (2 === r ? (r = 0) : (e.lastNeed = r - 3)), r) + : 0; + } + function d(e, t, i) { + if ((192 & t[0]) != 128) return (e.lastNeed = 0), "\uFFFD"; + if (e.lastNeed > 1 && t.length > 1) { + if ((192 & t[1]) != 128) return (e.lastNeed = 1), "\uFFFD"; + if (e.lastNeed > 2 && t.length > 2 && (192 & t[2]) != 128) + return (e.lastNeed = 2), "\uFFFD"; + } + } + function u(e) { + var t = this.lastTotal - this.lastNeed, + i = d(this, e, t); + return void 0 !== i + ? i + : this.lastNeed <= e.length + ? (e.copy(this.lastChar, t, 0, this.lastNeed), + this.lastChar.toString(this.encoding, 0, this.lastTotal)) + : void (e.copy(this.lastChar, t, 0, e.length), + (this.lastNeed -= e.length)); + } + function f(e, t) { + var i = c(this, e, t); + if (!this.lastNeed) return e.toString("utf8", t); + this.lastTotal = i; + var n = e.length - (i - this.lastNeed); + return e.copy(this.lastChar, 0, n), e.toString("utf8", t, n); + } + function h(e) { + var t = e && e.length ? this.write(e) : ""; + return this.lastNeed ? t + "\uFFFD" : t; + } + function p(e, t) { + if ((e.length - t) % 2 == 0) { + var i = e.toString("utf16le", t); + if (i) { + var n = i.charCodeAt(i.length - 1); + if (n >= 55296 && n <= 56319) + return ( + (this.lastNeed = 2), + (this.lastTotal = 4), + (this.lastChar[0] = e[e.length - 2]), + (this.lastChar[1] = e[e.length - 1]), + i.slice(0, -1) + ); + } + return i; + } + return ( + (this.lastNeed = 1), + (this.lastTotal = 2), + (this.lastChar[0] = e[e.length - 1]), + e.toString("utf16le", t, e.length - 1) + ); + } + function v(e) { + var t = e && e.length ? this.write(e) : ""; + if (this.lastNeed) { + var i = this.lastTotal - this.lastNeed; + return t + this.lastChar.toString("utf16le", 0, i); + } + return t; + } + function m(e, t) { + var i = (e.length - t) % 3; + return 0 === i + ? e.toString("base64", t) + : ((this.lastNeed = 3 - i), + (this.lastTotal = 3), + 1 === i + ? (this.lastChar[0] = e[e.length - 1]) + : ((this.lastChar[0] = e[e.length - 2]), + (this.lastChar[1] = e[e.length - 1])), + e.toString("base64", t, e.length - i)); + } + function g(e) { + var t = e && e.length ? this.write(e) : ""; + return this.lastNeed + ? t + this.lastChar.toString("base64", 0, 3 - this.lastNeed) + : t; + } + function _(e) { + return e.toString(this.encoding); + } + function y(e) { + return e && e.length ? this.write(e) : ""; + } + (t.StringDecoder = s), + (s.prototype.write = function (e) { + var t, i; + if (0 === e.length) return ""; + if (this.lastNeed) { + if (void 0 === (t = this.fillLast(e))) return ""; + (i = this.lastNeed), (this.lastNeed = 0); + } else i = 0; + return i < e.length + ? t + ? t + this.text(e, i) + : this.text(e, i) + : t || ""; + }), + (s.prototype.end = h), + (s.prototype.text = f), + (s.prototype.fillLast = function (e) { + if (this.lastNeed <= e.length) + return ( + e.copy( + this.lastChar, + this.lastTotal - this.lastNeed, + 0, + this.lastNeed + ), + this.lastChar.toString(this.encoding, 0, this.lastTotal) + ); + e.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, e.length), + (this.lastNeed -= e.length); + }); + }, + 708333: function (e, t, i) { + function n(e, t) { + if (r("noDeprecation")) return e; + var i = !1; + return function n() { + if (!i) { + if (r("throwDeprecation")) throw Error(t); + r("traceDeprecation") ? console.trace(t) : console.warn(t); + i = !0; + } + return e.apply(this, arguments); + }; + } + function r(e) { + try { + if (!i.g.localStorage) return !1; + } catch (e) { + return !1; + } + var t = i.g.localStorage[e]; + return null != t && "true" === String(t).toLowerCase(); + } + e.exports = n; + }, + 185608: function (__unused_webpack_module, exports) { + var indexOf = function (e, t) { + if (e.indexOf) return e.indexOf(t); + for (var i = 0; i < e.length; i++) if (e[i] === t) return i; + return -1; + }, + Object_keys = function (e) { + if (Object.keys) return Object.keys(e); + var t = []; + for (var i in e) t.push(i); + return t; + }, + forEach = function (e, t) { + if (e.forEach) return e.forEach(t); + for (var i = 0; i < e.length; i++) t(e[i], i, e); + }, + defineProp = (function () { + try { + return ( + Object.defineProperty({}, "_", {}), + function (e, t, i) { + Object.defineProperty(e, t, { + writable: !0, + enumerable: !1, + configurable: !0, + value: i, + }); + } + ); + } catch (e) { + return function (e, t, i) { + e[t] = i; + }; + } + })(), + globals = [ + "Array", + "Boolean", + "Date", + "Error", + "EvalError", + "Function", + "Infinity", + "JSON", + "Math", + "NaN", + "Number", + "Object", + "RangeError", + "ReferenceError", + "RegExp", + "String", + "SyntaxError", + "TypeError", + "URIError", + "decodeURI", + "decodeURIComponent", + "encodeURI", + "encodeURIComponent", + "escape", + "eval", + "isFinite", + "isNaN", + "parseFloat", + "parseInt", + "undefined", + "unescape", + ]; + function Context() {} + Context.prototype = {}; + var Script = (exports.Script = function (e) { + if (!(this instanceof Script)) return new Script(e); + this.code = e; + }); + (Script.prototype.runInContext = function (e) { + if (!(e instanceof Context)) + throw TypeError("needs a 'context' argument."); + var t = document.createElement("iframe"); + !t.style && (t.style = {}), + (t.style.display = "none"), + document.body.appendChild(t); + var i = t.contentWindow, + n = i.eval, + r = i.execScript; + !n && r && (r.call(i, "null"), (n = i.eval)), + forEach(Object_keys(e), function (t) { + i[t] = e[t]; + }), + forEach(globals, function (t) { + e[t] && (i[t] = e[t]); + }); + var a = Object_keys(i), + o = n.call(i, this.code); + return ( + forEach(Object_keys(i), function (t) { + (t in e || -1 === indexOf(a, t)) && (e[t] = i[t]); + }), + forEach(globals, function (t) { + !(t in e) && defineProp(e, t, i[t]); + }), + document.body.removeChild(t), + o + ); + }), + (Script.prototype.runInThisContext = function () { + return eval(this.code); + }), + (Script.prototype.runInNewContext = function (e) { + var t = Script.createContext(e), + i = this.runInContext(t); + return ( + e && + forEach(Object_keys(t), function (i) { + e[i] = t[i]; + }), + i + ); + }), + forEach(Object_keys(Script.prototype), function (e) { + exports[e] = Script[e] = function (t) { + var i = Script(t); + return i[e].apply(i, [].slice.call(arguments, 1)); + }; + }), + (exports.isContext = function (e) { + return e instanceof Context; + }), + (exports.createScript = function (e) { + return exports.Script(e); + }), + (exports.createContext = Script.createContext = + function (e) { + var t = new Context(); + return ( + "object" == typeof e && + forEach(Object_keys(e), function (i) { + t[i] = e[i]; + }), + t + ); + }); + }, + 150022: function (e, t, i) { + "use strict"; + e.exports = i.p + "static/image/image-high-resolution.bbee723a.webp"; + }, + 522394: function (e, t, i) { + "use strict"; + i.d(t, { W: () => v }); + var n = i("625572"), + r = i("639880"), + a = i("844969"), + o = i("976699"), + s = i("614022"), + l = "cc_web", + c = "mon-sg.capcutapi.com", + d = + "https://sf16-web-tos-buz.capcutstatic.com/obj/capcut-web-buz-sg/slardar-web-sdk/plugins", + u = (function (e) { + return ( + (e.Lang = "lang"), + (e.Theme = "theme"), + (e.PcSessionId = "pcSessionId"), + (e.AppChannel = "appChannel"), + (e.Did = "did"), + e + ); + })({}); + function f(e, t) { + try { + var i = JSON.parse(null != e ? e : "{}"); + if ( + "0" !== i.ret && + 0 !== i.status_code && + 0 !== i.code && + 0 !== i.e && + (!i.BaseResp || 0 !== i.BaseResp.StatusCode) && + "success" !== i.message && + (!i.ResponseMetadata || i.ResponseMetadata.Error) + ) { + var a, + o, + s, + l, + c = + i.log_id || + (null == t + ? void 0 + : null === (o = t.response) || void 0 === o + ? void 0 + : null === (a = o.headers) || void 0 === a + ? void 0 + : a["x-tt-logid"]) || + "", + d = (i.message || i.errmsg || "").slice(0, 50), + u = + i.ret || + (null === (s = i.BaseResp) || void 0 === s + ? void 0 + : s.StatusCode) || + i.status_code || + i.code || + i.e || + (null === (l = i.data) || void 0 === l + ? void 0 + : l.error_code) || + ""; + return (0, r._)((0, n._)({}, t.extra), { + ret: u.toString(), + msg: d.toString(), + logId: c.toString(), + }); + } + } catch (e) {} + return !1; + } + var h = { bid: l, domain: c, pluginPathPrefix: d }; + class p { + get sdk() { + var e; + if ("undefined" != typeof window) + return null === (e = window) || void 0 === e + ? void 0 + : e.ccWebSlardar; + } + init(e) { + var t, i; + this._initEnv(), + null === (t = (i = this).sdk) || + void 0 === t || + t.call( + i, + "init", + (0, r._)((0, n._)({}, h, e), { + plugins: (0, n._)( + { + fetch: { + extraExtractor: (e, t) => { + var i, n; + return ( + null === (i = (n = window).__lookiExtraHeaders) || + void 0 === i || + i.call(n, e, t), + f(e, t) + ); + }, + }, + ajax: { + extraExtractor: (e, t) => { + var i, n; + return ( + null === (i = (n = window).__lookiExtraHeaders) || + void 0 === i || + i.call(n, e, t), + f(e, t) + ); + }, + }, + }, + e.plugins + ), + }) + ); + } + start() { + var e, t; + null === (e = (t = this).sdk) || void 0 === e || e.call(t, "start"); + } + config(e) { + var t, i; + null === (t = (i = this).sdk) || + void 0 === t || + t.call(i, "config", e); + } + error(e, t) { + var i, + o, + s = + arguments.length > 2 && void 0 !== arguments[2] + ? arguments[2] + : {}, + l = (null == s ? void 0 : s.level) + ? null == s + ? void 0 + : s.level + : "warn", + c = (e) => { + var t = Error(e.message); + return ( + (t.name = e.name), + (t.stack = e.stack), + (t.message = e.message), + t + ); + }, + d = (0, a.Z)(t) ? c(t) : Error(JSON.stringify(t)), + { message: u } = d; + (d.message = "\u3010Custom-Error\u3011:" + .concat(e, "-") + .concat( + s.toGroup ? "MoreDataInExternal" : null == d ? void 0 : d.message + )), + s.toGroup && (Object.assign(s, { message: u }), delete s.toGroup), + null === (i = (o = this).sdk) || + void 0 === i || + i.call( + o, + "captureException", + d, + (0, r._)((0, n._)({}, s), { level: l }) + ); + } + dataEvent(e) { + var t, + i, + a = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : {}, + l = (null == a ? void 0 : a.level) + ? null == a + ? void 0 + : a.level + : "info", + c = (0, o.Z)(a, s.Z); + null === (t = (i = this).sdk) || + void 0 === t || + t.call(i, "sendEvent", { + name: "\u3010Custom-Data\u3011: ".concat(e), + metrics: c, + categories: (0, r._)((0, n._)({}, a), { level: l }), + }); + } + event(e) { + var t, + i, + a = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : {}, + l = (null == a ? void 0 : a.level) + ? null == a + ? void 0 + : a.level + : "info", + c = (0, o.Z)(a, s.Z); + null === (t = (i = this).sdk) || + void 0 === t || + t.call(i, "sendEvent", { + name: e, + metrics: c, + categories: (0, r._)((0, n._)({}, a), { level: l }), + }); + } + log(e) { + var t, + i, + r = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : {}, + a = (null == r ? void 0 : r.level) + ? null == r + ? void 0 + : r.level + : "info"; + null === (t = (i = this).sdk) || + void 0 === t || + t.call(i, "sendLog", { + content: "\u3010Custom-Log\u3011: ".concat(e), + level: a, + extra: (0, n._)({}, r), + }); + } + sendCustomPerfMetric(e) { + var t, i; + null === (t = (i = this).sdk) || + void 0 === t || + t.call(i, "sendCustomPerfMetric", e); + } + setCurrentBranch() { + var e = + arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : ""; + this._setContext("branch", e); + } + reportServerTiming() { + try { + var e = new Set(), + t = "navigation"; + for (var i of performance + .getEntriesByType(t) + .reduce( + (e, t) => (t && t.serverTiming && e.push(...t.serverTiming), e), + [] + )) { + var n, + r, + a, + o, + { name: s, description: l, duration: c } = i; + if (!(!i.name || e.has(s))) + e.add(s), + null === (a = (o = this).sdk) || + void 0 === a || + a.call(o, "sendCustomPerfMetric", { + type: "perf", + name: s, + value: c, + extra: l ? { description: l } : void 0, + }); + } + null === (r = this.sdk) || + void 0 === r || + null === (n = r.getSender()) || + void 0 === n || + n.flush(); + } catch (e) { + this.error("report_server_timing_error", e); + } + } + _initEnv() { + if ("undefined" != typeof window) { + var e, + t, + i, + n, + r, + a, + o = new URLSearchParams(window.location.search); + this._setContext("branch", window._currentBranch), + this._setContext("tag", window._tag), + this._setContext("gray_config_key", window.__gray_config_key), + this._setContext("lvweb_env", window.__lvweb_env), + this._setContext("psm", window.__agw_psm), + this._setContext( + "idc", + null === (e = window.gfdatav1) || void 0 === e ? void 0 : e.idc + ), + this._setContext( + "pc_session_id", + null !== (i = o.get(u.PcSessionId)) && void 0 !== i ? i : "" + ), + this._setContext( + "app_channel", + null !== (n = o.get(u.AppChannel)) && void 0 !== n ? n : "" + ), + this._setContext( + "pc_did", + null !== (r = o.get(u.Did)) && void 0 !== r ? r : "" + ), + this._setContext( + "ssr_render_level", + "".concat( + null !== + (a = + null === (t = window._SSR_DATA) || void 0 === t + ? void 0 + : t.renderLevel) && void 0 !== a + ? a + : 0 + ) + ); + } + } + _setContext(e) { + var t, + i, + n = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : ""; + n && + (null === (t = (i = this).sdk) || + void 0 === t || + t.call(i, "context.set", e, n)); + } + } + var v = new p(); + }, + 855421: function (e, t, i) { + "use strict"; + i.d(t, { t: () => g }); + var n = i("625572"), + r = i("639880"), + a = i("989719"), + o = i("522394"), + s = i("51522"), + l = i("823764"), + c = i("52533"), + d = i("737451"), + u = i("614022"); + function f(e) { + return ( + (0, s.Z)(e) && + (0, l.Z)(e, (e) => (0, c.Z)(e) || (0, d.Z)(e) || (0, u.Z)(e)) + ); + } + function h(e) { + for ( + var t = arguments.length, i = Array(t > 1 ? t - 1 : 0), n = 1; + n < t; + n++ + ) + i[n - 1] = arguments[n]; + return [e, ...i].join(" "); + } + class p { + static _sendLog(e, t) { + for ( + var i, n, r = arguments.length, a = Array(r > 2 ? r - 2 : 0), s = 2; + s < r; + s++ + ) + a[s - 2] = arguments[s]; + var l = Object.create(null), + c = []; + a.forEach((e) => { + f(e) ? Object.assign(l, e) : c.push(e); + }), + null === (n = o.W.sdk) || + void 0 === n || + null === (i = n.sendLog) || + void 0 === i || + i.call(n, { content: h(t, c), level: e, extra: l }); + } + static info(e) { + for ( + var t = arguments.length, i = Array(t > 1 ? t - 1 : 0), n = 1; + n < t; + n++ + ) + i[n - 1] = arguments[n]; + p._sendLog("info", e, i); + } + static warn(e) { + for ( + var t = arguments.length, i = Array(t > 1 ? t - 1 : 0), n = 1; + n < t; + n++ + ) + i[n - 1] = arguments[n]; + p._sendLog("warn", e, i); + } + static error(e) { + for ( + var t = arguments.length, i = Array(t > 1 ? t - 1 : 0), n = 1; + n < t; + n++ + ) + i[n - 1] = arguments[n]; + p._sendLog("error", e, i); + } + } + var v = Object.keys(console).reduce( + (e, t) => (0, r._)((0, n._)({}, e), { [t]: a.Z }), + {} + ), + m = console; + class g { + static setEnvironment(e) { + g._isProduction = e; + } + static showConsole() { + g._console = m; + } + static hideConsole() { + g._console = v; + } + static debug() { + for (var e = arguments.length, t = Array(e), i = 0; i < e; i++) + t[i] = arguments[i]; + if (!g._isProduction) g._console.debug(...t); + } + static time(e) { + if (!g._isProduction) g._console.time(e); + } + static timeEnd(e) { + if (!g._isProduction) g._console.timeEnd(e); + } + static log(e) { + for ( + var t = arguments.length, i = Array(t > 1 ? t - 1 : 0), n = 1; + n < t; + n++ + ) + i[n - 1] = arguments[n]; + if (!g._isProduction) g._console.log(e, ...i); + } + static info(e) { + for ( + var t = arguments.length, i = Array(t > 1 ? t - 1 : 0), n = 1; + n < t; + n++ + ) + i[n - 1] = arguments[n]; + g._isProduction && p.info(e, ...i), g._console.info(e, ...i); + } + static warn(e) { + for ( + var t = arguments.length, i = Array(t > 1 ? t - 1 : 0), n = 1; + n < t; + n++ + ) + i[n - 1] = arguments[n]; + g._isProduction && p.warn(e, ...i), g._console.warn(e, ...i); + } + static error(e) { + for ( + var t = arguments.length, i = Array(t > 1 ? t - 1 : 0), n = 1; + n < t; + n++ + ) + i[n - 1] = arguments[n]; + g._isProduction && p.error(e, ...i), g._console.error(e, ...i); + } + } + (g._isProduction = !1), (g._console = m); + }, + 898758: function (e, t, i) { + "use strict"; + function n() { + var e = new Uint32Array(8); + crypto.getRandomValues(e); + var t = 0; + return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (i) => { + var n = (e[t >> 3] >> ((t % 8) * 4)) & 15; + return t++, ("x" === i ? n : (3 & n) | 8).toString(16); + }); + } + i.d(t, { + V: function () { + return n; + }, + }); + }, + 733437: function (e, t, i) { + "use strict"; + i.d(t, { + k: function () { + return c; + }, + }); + var n = i(218571), + r = i(260963); + function a(e) { + return e && e.$$typeof === Symbol.for("react.element"); + } + function o(e) { + if ("object" != typeof e) return e; + if (e instanceof Array) return e.map((e) => o(e)); + if (e instanceof Object) { + if (a(e)) return e; + var t = {}; + for (var i in e) + "object" == typeof e[i] ? (t[i] = o(e[i])) : (t[i] = e[i]); + return t; + } + return e; + } + function s() { + var [, e] = (0, n.useState)(0); + return (0, n.useCallback)(() => { + e((e) => e + 1); + }, []); + } + var l = (e, t) => e === t; + function c(e, t) { + var i = + arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}, + { isEqual: a = l, deps: c, shouldUpdateOnlyOnChange: d = !1 } = i, + u = s(), + f = (e) => o(t(e)), + h = (0, n.useRef)(); + if (!h.current) { + if (e) { + var p = (0, r.wM)(!0); + try { + h.current = f(e); + } finally { + (0, r.mJ)(p); + } + } else h.current = void 0; + } + return ( + (0, n.useEffect)(() => { + if (!!e) { + var t = (0, r.U5)( + () => f(e), + (e, t) => { + (h.current = e), d ? !a(e, t) && u() : u(); + }, + { fireImmediately: !0 } + ); + return () => { + t(); + }; + } + }, [e, ...(null != c ? c : [])]), + h.current + ); + } + }, + 158316: function (e, t, i) { + "use strict"; + function n(e) { + var t = ""; + t = + e < 102.4 + ? "".concat(e.toFixed(2), "B") + : e < 104857.6 + ? "".concat((e / 1024).toFixed(2), "KB") + : e < 0x40000000 + ? "".concat((e / 1048576).toFixed(2), "MB") + : e < 0x10000000000 + ? "".concat((e / 0x40000000).toFixed(2), "GB") + : "".concat((e / 0x10000000000).toFixed(2), "TB"); + var i = "".concat(t), + n = i.indexOf("."); + return "00" == i.substr(n + 1, 2) + ? i.substring(0, n) + i.substr(n + 3, 2) + : t; + } + function r(e) { + var t = "".concat((e / 0x40000000).toFixed(2)), + i = t.indexOf("."); + return "00" == t.substr(i + 1, 2) + ? t.substring(0, i) + t.substr(i + 3, 2) + : t; + } + i.d(t, { + W: function () { + return r; + }, + y: function () { + return n; + }, + }); + }, + 119814: function (e, t, i) { + "use strict"; + i.d(t, { + p: function () { + return s; + }, + }); + var n = i(2910), + r = i(465201), + a = i(636971), + o = new r.z6({ _capacity: 1e3, _cacheKey: a.or }), + s = (e) => + new Promise((t, i) => { + if (!e) { + i(); + return; + } + var r = o.get(e); + if (r) { + t(r); + return; + } + ((r = new Image()).crossOrigin = "anonymous"), + (r.onload = function () { + o.set(r.getAttribute("src"), r), t(r); + }), + (r.onerror = (t) => { + o.remove(e), i(t); + }), + (r.src = (0, n.C)(e, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + })); + }); + }, + 465201: function (e, t, i) { + "use strict"; + i.d(t, { + z6: function () { + return n; + }, + }); + class n { + get(e) { + var t = this.getCache(); + if (t.FIFO.includes(e)) { + var i = t.data[e]; + return this._resetKeyByFIFO(t, e), i; + } + } + set(e, t) { + var i = this._put(e, t); + this.db.set(this._cacheKey, i); + } + remove(e) { + var t = this.getCache(); + delete t.data[e], + this._removeKeyByFIFO(t, e), + this.db.set(this._cacheKey, t); + } + getCache() { + var e = this.db.get(this._cacheKey); + return e ? e : this._generateCache(); + } + _put(e, t) { + var i = this.getCache(); + i.data[e] = t; + var n = this._resetKeyByFIFO(i, e), + r = n.FIFO.length; + if (void 0 !== this._capacity && r > this._capacity) { + var a = n.FIFO[r - 1]; + a && (n.FIFO.pop(), delete n.data[a]); + } + return n; + } + _removeKeyByFIFO(e, t) { + var i = e.FIFO.indexOf(t); + return -1 !== i && e.FIFO.splice(i, 1), e; + } + _resetKeyByFIFO(e, t) { + var i = this._removeKeyByFIFO(e, t); + return i.FIFO.unshift(t), i; + } + _generateCache() { + return { FIFO: [], data: {} }; + } + constructor(e) { + (this.db = new Map()), + (this._cacheKey = e._cacheKey), + (this._capacity = e._capacity); + var { db: t } = e; + t && (this.db = t); + } + } + }, + 636971: function (e, t, i) { + "use strict"; + i.d(t, { + or: function () { + return n; + }, + vw: function () { + return r; + }, + }); + var n = "COMMON_IMAGE_ELEMENT_MAP_KEY", + r = "PERSISTENT_CACHE"; + }, + 685665: function (e, t, i) { + "use strict"; + i.d(t, { + w: function () { + return n; + }, + }); + class n { + get isLocked() { + return this._locked; + } + acquire() { + return this._locked + ? new Promise((e, t) => { + this._awaitQueue.push({ resolve: e, reject: t }); + }) + : ((this._locked = !0), Promise.resolve()); + } + release() { + if (!this._locked) throw Error("mutex lock is not locked."); + this._locked = !1; + var e = this._awaitQueue.pop(); + e && ((this._locked = !0), e.resolve()); + } + constructor() { + (this._awaitQueue = []), (this._locked = !1); + } + } + }, + 460029: function (e, t, i) { + "use strict"; + i.d(t, { + Ie: function () { + return r; + }, + XH: function () { + return o; + }, + YO: function () { + return n; + }, + oe: function () { + return a; + }, + wc: function () { + return s; + }, + }); + var n = function (e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + if (!!e) + !performance.getEntriesByName(e).length && + performance.mark(e, { detail: t }); + }, + r = function (e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + if (!!e) n("".concat(e, "_START"), t); + }, + a = function (e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; + if (!!e) n("".concat(e, "_END"), t); + }, + o = function (e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : "".concat(e, "_START"), + i = + arguments.length > 2 && void 0 !== arguments[2] + ? arguments[2] + : "".concat(e, "_END"); + try { + return performance.measure(e, t, i); + } catch (e) {} + }, + s = function (e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : e; + if (!!e) + performance.clearMarks("".concat(e, "_START")), + performance.clearMarks("".concat(e, "_END")), + performance.clearMeasures(t); + }; + }, + 219974: function (e, t, i) { + "use strict"; + i.d(t, { + CE: function () { + return a; + }, + Sw: function () { + return r; + }, + kJ: function () { + return n; + }, + }); + var n = (e) => "[object Array]" === Object.prototype.toString.call(e), + r = (e) => { + var t = new Map(), + i = (e) => { + if ("function" == typeof e) return e; + if ("object" == typeof e) { + if (null === e) return e; + if (t.has(e)) return t.get(e); + var r = n(e) ? [] : {}; + return ( + t.set(e, r), + n(e) + ? e.forEach((e) => { + r.push(i(e)); + }) + : Object.keys(e).forEach((t) => { + r[t] = i(e[t]); + }), + r + ); + } + return e; + }; + return i(e); + }, + a = (e, t) => { + var i = Object.assign({}, e); + return ( + t.forEach((e) => { + delete i[e]; + }), + i + ); + }; + }, + 936226: function (e, t, i) { + "use strict"; + i.d(t, { + Gw: function () { + return o; + }, + d: function () { + return a; + }, + }); + var n = i(333597), + r = i(490165), + a = (function (e) { + return ( + (e.EditorLoginPopup = "editor_login_popup"), + (e.PageHeader = "page_header"), + (e.Export = "export"), + (e.GoogleDrive = "google_drive"), + (e.DropBox = "dropbox"), + (e.FromPhone = "from_phone"), + (e.FromComputer = "from_computer"), + (e.CollectionTab = "collection_tab"), + (e.useLimit = "smart_tool_use_limit"), + (e.uploadResult = "smart_tool_upload_results"), + (e.copyToClipboard = "copy_to_clipboard"), + (e.ThirdpartyPlugin = "thirdparty_plugin"), + (e.Brand = "brand"), + (e.ScreenRecorder = "screen_recorder"), + (e.PartExport = "part_export"), + (e.PartExportSameTime = "part_export_sametime"), + (e.Cover = "cover"), + (e.CheckList = "checklist"), + (e.Shopify = "shopify"), + (e.CreateCloneVoice = "voice_create"), + (e.TTSClickGenerate = "tts_click_generate"), + (e.AvTranslatorClickGenerate = "click_generate"), + (e.TTSEntry = "tts_entry"), + (e.AICaptionsEntry = "ai_captions_entry"), + e + ); + })({}), + o = (0, n.LO)(r.D); + }, + 904337: function (e, t, i) { + "use strict"; + i.d(t, { + $: function () { + return s; + }, + }); + var n = i(625572), + r = i(639880); + i(810413); + var a = () => "513695"; + function o() { + var e = document.cookie.match(RegExp("(^| )_tea_web_id=([^;]+)")), + t = window.GATEWAY_INJECTED_WEB_ID || ""; + return !t && null !== e && (t = e[2]), t; + } + function s(e) { + var t = o(); + e.interceptors.request.use((e) => + (0, r._)((0, n._)({}, e), { + params: (0, r._)((0, n._)({}, e.params || {}), { + aid: a(), + device_platform: "web", + region: window.__locationCountryCode || "cn", + web_id: t, + }), + }) + ); + } + }, + 243494: function (e, t, i) { + "use strict"; + i.d(t, { + ib: function () { + return r; + }, + ky: function () { + return a; + }, + yt: function () { + return n; + }, + }); + class n { + combineConfig(e) { + this._config = Object.assign({}, this._config, e); + } + get config() { + return this._config; + } + set hasMore(e) { + this._hasMore = e; + } + get hasMore() { + return this._hasMore; + } + set offset(e) { + this._offset = e; + } + get offset() { + return this._offset; + } + set searchId(e) { + this._searchId = e; + } + get searchId() { + return this._searchId; + } + set requestId(e) { + this._requestId = e; + } + get requestId() { + return this._requestId; + } + set logId(e) { + this._logId = e; + } + get logId() { + return this._logId; + } + constructor(e, t, i) { + (this._config = {}), + (this.value = e), + (this._hasMore = t.hasMore), + (this._offset = t.offset), + (this._searchId = t.searchId), + (this._requestId = t.requestId), + (this._logId = t.logId), + this.combineConfig(null != i ? i : {}); + } + } + function r(e, t) { + var i = + arguments.length > 2 && void 0 !== arguments[2] + ? arguments[2] + : { hasMore: !0, offset: 0 }; + return new n(t, i, e); + } + function a(e) { + return e instanceof n; + } + }, + 655901: function (e, t, i) { + "use strict"; + i.d(t, { + B0: function () { + return r; + }, + PM: function () { + return o; + }, + qZ: function () { + return l; + }, + }); + var n = i(139646); + function r(e, t, i) { + return a.apply(this, arguments); + } + function a() { + return (a = (0, n._)(function* (e, t, i) { + var n, + a, + o, + s, + l, + c, + d, + u, + f, + h, + p, + v = []; + if ( + ((null === (n = t.commonAttr) || void 0 === n + ? void 0 + : n.coverUrl) && + v.push( + e(t.commonAttr.coverUrl, i).then((e) => { + t.commonAttr.coverUrl = e; + }) + ), + null === (a = t.commonAttr) || void 0 === a + ? void 0 + : a.coverUrlMap) + ) { + var m = function (n, r) { + v.push( + e(r, i).then((e) => { + t.commonAttr.coverUrlMap[n] = e; + }) + ); + }; + for (var [g, _] of Object.entries(t.commonAttr.coverUrlMap)) + m(g, _); + } + if ( + null === (s = t.commonAttr) || void 0 === s + ? void 0 + : null === (o = s.itemUrls) || void 0 === o + ? void 0 + : o.length + ) { + var y = function (n, r) { + if (!r) return "continue"; + v.push( + e(r, i).then((e) => { + t.commonAttr.itemUrls[n] = e; + }) + ); + }; + for (var [b, I] of t.commonAttr.itemUrls.entries()) y(b, I); + } + if (null === (l = t.image) || void 0 === l ? void 0 : l.largeImages) { + var w = function (t) { + v.push( + e(t.imageUrl, i).then((e) => { + t.imageUrl = e; + }) + ); + }; + for (var x of t.image.largeImages) w(x); + } + if ( + ((null === (d = t.video) || void 0 === d + ? void 0 + : null === (c = d.originVideo) || void 0 === c + ? void 0 + : c.videoUrl) && + v.push( + e( + null === (p = t.video) || void 0 === p + ? void 0 + : p.originVideo.videoUrl, + i + ).then((e) => { + t.video.originVideo.videoUrl = e; + }) + ), + null === (u = t.video) || void 0 === u ? void 0 : u.transcodedVideo) + ) { + var S = function (t, n) { + v.push( + e(n.videoUrl, i).then((e) => { + n.videoUrl = e; + }) + ), + v.push( + e(n.coverUrl, i).then((e) => { + n.coverUrl = e; + }) + ); + }; + for (var [M, C] of Object.entries(t.video.transcodedVideo)) S(M, C); + } + if ( + ((null === (f = t.video) || void 0 === f ? void 0 : f.coverUrl) && + v.push( + e(t.video.coverUrl, i).then((e) => { + t.video.coverUrl = e; + }) + ), + null === (h = t.collection) || void 0 === h ? void 0 : h.itemList) + ) + for (var T of t.collection.itemList) v.push(r(e, T, i)); + yield Promise.all(v); + })).apply(this, arguments); + } + function o(e, t, i) { + return s.apply(this, arguments); + } + function s() { + return (s = (0, n._)(function* (e, t, i) { + if (!!i) { + var n = []; + for (var a of t) n.push(r(e, a, i)); + yield Promise.all(n); + } + })).apply(this, arguments); + } + function l(e, t, i) { + var n, r, a, o, s, c, d, u, f, h, p; + if ( + ((null === (n = t.commonAttr) || void 0 === n + ? void 0 + : n.coverUrl) && + (t.commonAttr.coverUrl = e(t.commonAttr.coverUrl, i)), + null === (r = t.commonAttr) || void 0 === r ? void 0 : r.coverUrlMap) + ) + for (var [v, m] of Object.entries(t.commonAttr.coverUrlMap)) + t.commonAttr.coverUrlMap[v] = e(m, i); + if ( + null === (o = t.commonAttr) || void 0 === o + ? void 0 + : null === (a = o.itemUrls) || void 0 === a + ? void 0 + : a.length + ) + for (var [g, _] of Object.entries(t.commonAttr.itemUrls)) + t.commonAttr.itemUrls[g] = e(_, i); + if (null === (s = t.image) || void 0 === s ? void 0 : s.largeImages) + for (var y of t.image.largeImages) y.imageUrl = e(y.imageUrl, i); + if ( + ((null === (d = t.video) || void 0 === d + ? void 0 + : null === (c = d.originVideo) || void 0 === c + ? void 0 + : c.videoUrl) && + (t.video.originVideo.videoUrl = e( + null === (p = t.video) || void 0 === p + ? void 0 + : p.originVideo.videoUrl, + i + )), + null === (u = t.video) || void 0 === u ? void 0 : u.transcodedVideo) + ) + for (var [b, I] of Object.entries(t.video.transcodedVideo)) + (I.videoUrl = e(I.videoUrl, i)), (I.coverUrl = e(I.coverUrl, i)); + if ( + ((null === (f = t.video) || void 0 === f ? void 0 : f.coverUrl) && + (t.video.coverUrl = e(t.video.coverUrl, i)), + null === (h = t.collection) || void 0 === h ? void 0 : h.itemList) + ) + for (var w of t.collection.itemList) l(e, w, i); + } + }, + 340733: function (e, t, i) { + "use strict"; + function n(e, t, i) { + var r, a, o, s, l, c, d; + if (!!i) { + if ( + null === (a = t.commonAttr) || void 0 === a + ? void 0 + : null === (r = a.itemUrls) || void 0 === r + ? void 0 + : r.length + ) + for (var [u, f] of Object.entries(t.commonAttr.itemUrls)) + t.commonAttr.itemUrls[u] = e(f, i); + if ( + ((null === (s = t.video) || void 0 === s + ? void 0 + : null === (o = s.originVideo) || void 0 === o + ? void 0 + : o.videoUrl) && + (t.video.originVideo.videoUrl = e( + null === (d = t.video) || void 0 === d + ? void 0 + : d.originVideo.videoUrl, + i + )), + null === (l = t.video) || void 0 === l ? void 0 : l.transcodedVideo) + ) + for (var [h, p] of Object.entries(t.video.transcodedVideo)) + (p.videoUrl = e(p.videoUrl, i)), (p.coverUrl = e(p.coverUrl, i)); + if (null === (c = t.collection) || void 0 === c ? void 0 : c.itemList) + for (var v of t.collection.itemList) n(e, v, i); + } + } + function r(e, t, i) { + if (!!i) for (var r of t) n(e, r, i); + } + i.d(t, { + H8: function () { + return n; + }, + PY: function () { + return r; + }, + }); + }, + 972394: function (e, t, i) { + "use strict"; + i.d(t, { + N9: function () { + return a; + }, + VD: function () { + return n; + }, + yl: function () { + return r; + }, + }); + var n = (function (e) { + return ( + (e[(e.EMPTY = -1)] = "EMPTY"), + (e[(e.BREAK = 3)] = "BREAK"), + (e[(e.BACKSPACE = 8)] = "BACKSPACE"), + (e[(e.TAB = 9)] = "TAB"), + (e[(e.CLEAR = 12)] = "CLEAR"), + (e[(e.ENTER = 13)] = "ENTER"), + (e[(e.SHIFT = 16)] = "SHIFT"), + (e[(e.CTRL = 17)] = "CTRL"), + (e[(e.ALT = 18)] = "ALT"), + (e[(e.PAUSE = 19)] = "PAUSE"), + (e[(e.CAPS_LOCK = 20)] = "CAPS_LOCK"), + (e[(e.ESCAPE = 27)] = "ESCAPE"), + (e[(e.SPACE = 32)] = "SPACE"), + (e[(e.PAGE_UP = 33)] = "PAGE_UP"), + (e[(e.PAGE_DOWN = 34)] = "PAGE_DOWN"), + (e[(e.END = 35)] = "END"), + (e[(e.HOME = 36)] = "HOME"), + (e[(e.ARROW_LEFT = 37)] = "ARROW_LEFT"), + (e[(e.ARROW_UP = 38)] = "ARROW_UP"), + (e[(e.ARROW_RIGHT = 39)] = "ARROW_RIGHT"), + (e[(e.ARROW_DOWN = 40)] = "ARROW_DOWN"), + (e[(e.SELECT = 41)] = "SELECT"), + (e[(e.PRINT = 42)] = "PRINT"), + (e[(e.EXECUTE = 43)] = "EXECUTE"), + (e[(e.PRINT_SCREEN = 44)] = "PRINT_SCREEN"), + (e[(e.INSERT = 45)] = "INSERT"), + (e[(e.DELETE = 46)] = "DELETE"), + (e[(e.HELP = 47)] = "HELP"), + (e[(e.NUM_0 = 48)] = "NUM_0"), + (e[(e.NUM_1 = 49)] = "NUM_1"), + (e[(e.NUM_2 = 50)] = "NUM_2"), + (e[(e.NUM_3 = 51)] = "NUM_3"), + (e[(e.NUM_4 = 52)] = "NUM_4"), + (e[(e.NUM_5 = 53)] = "NUM_5"), + (e[(e.NUM_6 = 54)] = "NUM_6"), + (e[(e.NUM_7 = 55)] = "NUM_7"), + (e[(e.NUM_8 = 56)] = "NUM_8"), + (e[(e.NUM_9 = 57)] = "NUM_9"), + (e[(e.A = 65)] = "A"), + (e[(e.B = 66)] = "B"), + (e[(e.C = 67)] = "C"), + (e[(e.D = 68)] = "D"), + (e[(e.E = 69)] = "E"), + (e[(e.F = 70)] = "F"), + (e[(e.G = 71)] = "G"), + (e[(e.H = 72)] = "H"), + (e[(e.I = 73)] = "I"), + (e[(e.J = 74)] = "J"), + (e[(e.K = 75)] = "K"), + (e[(e.L = 76)] = "L"), + (e[(e.M = 77)] = "M"), + (e[(e.N = 78)] = "N"), + (e[(e.O = 79)] = "O"), + (e[(e.P = 80)] = "P"), + (e[(e.Q = 81)] = "Q"), + (e[(e.R = 82)] = "R"), + (e[(e.S = 83)] = "S"), + (e[(e.T = 84)] = "T"), + (e[(e.U = 85)] = "U"), + (e[(e.V = 86)] = "V"), + (e[(e.W = 87)] = "W"), + (e[(e.X = 88)] = "X"), + (e[(e.Y = 89)] = "Y"), + (e[(e.Z = 90)] = "Z"), + (e[(e.META_LEFT = 91)] = "META_LEFT"), + (e[(e.META_RIGHT = 93)] = "META_RIGHT"), + (e[(e.NUM_TIMES = 106)] = "NUM_TIMES"), + (e[(e.NUM_PLUS = 107)] = "NUM_PLUS"), + (e[(e.NUM_MINUS = 109)] = "NUM_MINUS"), + (e[(e.NUM_POINT = 110)] = "NUM_POINT"), + (e[(e.NUM_DIVIDE = 111)] = "NUM_DIVIDE"), + (e[(e.F1 = 112)] = "F1"), + (e[(e.F2 = 113)] = "F2"), + (e[(e.F3 = 114)] = "F3"), + (e[(e.F4 = 115)] = "F4"), + (e[(e.F5 = 116)] = "F5"), + (e[(e.F6 = 117)] = "F6"), + (e[(e.F7 = 118)] = "F7"), + (e[(e.F8 = 119)] = "F8"), + (e[(e.F9 = 120)] = "F9"), + (e[(e.F10 = 121)] = "F10"), + (e[(e.F11 = 122)] = "F11"), + (e[(e.F12 = 123)] = "F12"), + (e[(e.SEMI = 186)] = "SEMI"), + (e[(e.EQUAL = 187)] = "EQUAL"), + (e[(e.COMMA = 188)] = "COMMA"), + (e[(e.MINUS = 189)] = "MINUS"), + (e[(e.PERIOD = 190)] = "PERIOD"), + (e[(e.SLASH = 191)] = "SLASH"), + (e[(e.BACKQUOTE = 192)] = "BACKQUOTE"), + (e[(e.BRACKET_LEFT = 219)] = "BRACKET_LEFT"), + (e[(e.BACK_SLASH = 220)] = "BACK_SLASH"), + (e[(e.BRACKET_RIGHT = 221)] = "BRACKET_RIGHT"), + (e[(e.QUOTE = 222)] = "QUOTE"), + e + ); + })({}), + r = (function (e) { + return ( + (e[(e.EQUAL = 61)] = "EQUAL"), + (e[(e.MINUS = 173)] = "MINUS"), + (e[(e.SEMI = 59)] = "SEMI"), + (e[(e.META_FIREFOX = 224)] = "META_FIREFOX"), + e + ); + })({}), + a = (function (e) { + return ( + (e[(e.SHIFT = 1e3)] = "SHIFT"), + (e[(e.ALT = 1e4)] = "ALT"), + (e[(e.CTRL_WIN = 1e5)] = "CTRL_WIN"), + (e[(e.CTRL_MAC = 2e5)] = "CTRL_MAC"), + (e[(e.WIN = 1e6)] = "WIN"), + (e[(e.COMMAND = 2e6)] = "COMMAND"), + e + ); + })({}); + }, + 70137: function (e, t, i) { + "use strict"; + i.d(t, { + Pi: function () { + return r; + }, + aG: function () { + return a; + }, + }); + var n = i(333597), + r = (function (e) { + return ( + (e.NOT_LIMITED = "NOT_LIMITED"), + (e.ISSUED = "ISSUED"), + (e.CONSUMED = "CONSUMED"), + e + ); + })({}), + a = (0, n.yh)("commercial-credit-service"); + }, + 603026: function (e, t, i) { + "use strict"; + i.d(t, { + K: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("commercial-goods-service"); + }, + 484702: function (e, t, i) { + "use strict"; + i.d(t, { + N: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("commercial-strategy-service"); + }, + 451733: function (e, t, i) { + "use strict"; + i.d(t, { + $T: function () { + return o; + }, + $l: function () { + return l; + }, + Bh: function () { + return s; + }, + HX: function () { + return a; + }, + Jo: function () { + return r; + }, + bK: function () { + return d; + }, + e8: function () { + return u; + }, + f3: function () { + return f; + }, + ht: function () { + return c; + }, + lq: function () { + return n; + }, + }); + var n = [ + "image/jpeg", + "image/jpg", + "image/png", + "image/bmp", + "image/webp", + ".jpeg", + ".jpg", + ".png", + ".bmp", + ".webp", + ], + r = 20, + a = [ + "video/quicktime", + "video/x-msvideo", + "video/avi", + "video/x-m4v", + "video/x-flv", + "video/x-matroska", + "application/vnd.rn-realmedia-vbr", + ".mp4", + ".mov", + ".avi", + ".m4v", + ".flv", + ".mkv", + ".rmvb", + ], + o = 50, + s = ["image/jpeg", "image/jpg", "image/png", ".jpeg", ".jpg", ".png"], + l = ["video/mp4", "video/quicktime", ".mp4", ".mov"], + c = ["image/jpeg", "image/jpg", "image/png", ".jpeg", ".jpg", ".png"], + d = ["video/mp4", "video/quicktime", ".mp4", ".mov"], + u = 3e3, + f = 4096; + }, + 627420: function (e, t, i) { + "use strict"; + i.d(t, { + I: function () { + return n; + }, + o: function () { + return r; + }, + }); + var n = 5, + r = ""; + }, + 915814: function (e, t, i) { + "use strict"; + i.d(t, { + $P: function () { + return r; + }, + FV: function () { + return o; + }, + Td: function () { + return n; + }, + cH: function () { + return a; + }, + }); + var n = 36, + r = 44, + a = 2, + o = 8; + }, + 799108: function (e, t, i) { + "use strict"; + i.d(t, { + jk: () => b, + SN: () => m, + cf: () => S, + Zw: () => y, + TK: () => P, + KV: () => k, + Y: () => E, + VG: () => D, + d8: () => A, + J2: () => T, + sG: () => C, + oV: () => R, + sV: () => g, + jJ: () => _, + Nf: () => x, + wZ: () => v, + qT: () => N, + CU: () => w, + vJ: () => p, + O6: () => I, + lK: () => h, + HR: () => M, + hO: () => f, + }); + var n = i("71129"), + r = i("604488"), + a = i("839141"), + o = i("949274"), + s = i.p + "static/image/extend-poster.1b7bd457.png", + l = i.p + "static/image/lip-sync-poster.df849365.png", + c = i.p + "static/image/upscale-poster.70fc9709.png", + d = i.p + "static/image/frame-interpolation-poster.754ff61a.png", + u = i("150022"), + f = (function (e) { + return ( + (e.GenerateButton = "GenerateButton"), + (e.RetryButton = "RetryButton"), + (e.ExtendSeconds = "ExtendSeconds"), + (e.Download = "Download"), + (e.LipSync = "LipSync"), + (e.ActionCopy = "ActionCopy"), + (e.RegenerateActionCopy = "RegenerateActionCopy"), + (e.Character2Video = "Character2Video"), + (e.RetryCharacter2Video = "RetryCharacter2Video"), + (e.VideoFrameInterpolation = "VideoFrameInterpolation"), + (e.VideoUpscale = "VideoUpscale"), + (e.ReDub = "ReDub"), + (e.LipSyncButton = "LipSyncButton"), + (e.ReDubButton = "ReDubButton"), + (e.RelaxedGenerateVideo = "RelaxedGenerateVideo"), + (e.BatchGenerateVideo = "BatchGenerateVideo"), + (e.ContinueLabUpscaleVideo = "ContinueLabUpscaleVideo"), + (e.GenerateVideoBGM = "GenerateVideoBGM"), + (e.ReGenerateVideoBGM = "ReGenerateVideoBGM"), + (e.VideoAudioEffect = "VideoAudioEffect"), + (e.VideoModelSwitch = "VideoModelSwitch"), + (e.Character2VideoSwitch = "Character2VideoSwitch"), + (e.ImageBasicGenerate = "ImageBasicGenerate"), + (e.ImagePromptEditor = "ImagePromptEditor"), + (e.ImageRetryButton = "ImageRetryButton"), + (e.ImageOutPaintButton = "ImageOutPaintButton"), + (e.ImageOutPaintTextArea = "ImageOutPaintTextArea"), + (e.ImageInPaintRepaintButton = "ImageInPaintRepaintButton"), + (e.ImageInPaintRepaintTextArea = "ImageInPaintRepaintTextArea"), + (e.ImageInPaintEraserButton = "ImageInPaintEraserButton"), + (e.ImageInPaintEraserTextArea = "ImageInPaintEraserTextArea"), + (e.ImageMattingButton = "ImageMattingButton"), + (e.ImageMagnificButton = "ImageMagnificButton"), + (e.ImageControlNetReference = "ImageControlNetReference"), + (e.ImageControlNetHumanFace = "ImageControlNetHumanFace"), + (e.ImageControlNetObject = "ImageControlNetObject"), + (e.ImageControlNetCanny = "ImageControlNetCanny"), + (e.ImageControlNetDepth = "ImageControlNetDepth"), + (e.ImageControlNetPose = "ImageControlNetPose"), + (e.ImageStyleReference = "ImageStyleReference"), + (e.ImageIpKeep = "ImageIpKeep"), + (e.ImageByteEdit = "ImageByteEdit"), + (e.ImageFusion = "ImageFusion"), + (e.ImageInstaDragButton = "ImageInstaDragButton"), + (e.ImagePostEditor = "ImagePostEditor"), + (e.ImageUhd = "ImageUhd"), + (e.TextArtGenerationButton = "TextArtGenerationButton"), + (e.TextArtGenerationRetryButton = "TextArtGenerationRetryButton"), + (e.AudioBasicGenerate = "AudioGenerate"), + (e.AudioBasicReGenerate = "AudioBasicReGenerate"), + (e.GenerateFreeMock = "GenerateFreeMock"), + e + ); + })({}), + h = (function (e) { + return ( + (e.Video = "video"), (e.Image = "image"), (e.Audio = "audio"), e + ); + })({}), + p = (function (e) { + return ( + (e.BasicVideoOperation = "basicVideoOperation"), + (e.RetryVideoOperation = "retryVideoOperation"), + (e.ExtendVideo = "extendVideo"), + (e.LipSync = "lipSync"), + (e.BasicVideoOperationVideoTemplate = + "basicVideoOperationVideoTemplate"), + (e.BasicVideoOperation1 = "basicVideoOperationStd2"), + (e.RetryVideoOperation1 = "retryVideoOperationStd2"), + (e.ExtendVideo1 = "extendVideoStd2"), + (e.LipSync1 = "lipSyncStd2"), + (e.VideoContinueGenerate1 = "videoContinueGenerateStd2"), + (e.BatchGenerateVideo = "batchGenerateVideo"), + (e.BasicVideoOperation2 = "basicVideoOperationSmooth2"), + (e.RetryVideoOperation2 = "retryVideoOperationSmooth2"), + (e.ExtendVideo2 = "extendVideoSmooth2"), + (e.LipSync2 = "lipSyncSmooth2"), + (e.VideoContinueGenerate2 = "videoContinueGenerateSmooth2"), + (e.VideoFrameInterpolation = "videoFrameInterpolation"), + (e.VideoUpscale = "videoUpscale"), + (e.RemoveWatermark = "removeWatermark"), + (e.VideoBgmGeneration = "videoBgmGeneration"), + (e.BasicVideoOperationVgfm = "basicVideoOperationVgfm"), + (e.BasicVideoOperationLab14 = "basicVideoOperationLab14"), + (e.BasicVideoOperationVgfmVip = "basicVideoOperationVgfmVip"), + (e.BasicVideoOperationLab14Vip = "basicVideoOperationLab14Vip"), + (e.BasicVideoOperationDit = "basicVideoOperationDit"), + (e.BasicVideoOperationVgfmLite = "basicVideoOperationVgfmLite"), + (e.lipSyncAvatarStd = "lipSyncAvatarStd"), + (e.lipSyncAvatarLively = "lipSyncAvatarLively"), + (e.VideoAudioEffect = "videoAudioEffectGeneration"), + (e.lipSyncAvatarMaster = "lipSyncAvatarMasterFreeTrial"), + (e.lipSyncAvatarMasterVip = "lipSyncAvatarMasterFreeTrialVip"), + (e.lipSyncAvatarMasterFast = "lipSyncAvatarOmni480"), + (e.ImageBasicGenerate = "imageBasicGenerate"), + (e.ImageControlNetHumanFace = "imageControlnetHumanFace"), + (e.ImageControlNetObject = "imageControlnetObject"), + (e.ImageControlNetReference = "imageControlnetReference"), + (e.ImageControlNetCanny = "imageControlnetCanny"), + (e.ImageControlNetDepth = "imageControlnetDepth"), + (e.ImageControlNetPose = "imageControlnetPose"), + (e.ImageStyleReference = "imageStyleReference"), + (e.ImageStyleCode = "imageStyleCode"), + (e.ImageByteEdit = "imageByteEdit"), + (e.ImageOutPainting = "imageOutpainting"), + (e.ImageInPaintingRepaint = "imageInpaintingRepaint"), + (e.ImageInPaintingEraser = "imageInpaintingEraser"), + (e.ImageMatting = "imageMatting"), + (e.ImageMagnific = "imageMagnific"), + (e.ImageIpKeep = "imageIpKeep"), + (e.ImageFusion = "imageFusion"), + (e.ImageInstaDrag = "imageInstaDrag"), + (e.ImageFluxModelGenerate = "imageFluxGenerate"), + (e.ImagePostEditor = "imagePostEditor"), + (e.ImageUhd = "imageUhd"), + (e.AudioSongGenerate = "audioSongGenerate"), + (e.TextArtGeneration = "textArtGeneration"), + (e.GenerateFreeMock = "GenerateFreeMock"), + e + ); + })({}), + v = { + basicVideoOperation: "video", + retryVideoOperation: "video", + extendVideo: "video", + lipSync: "video", + basicVideoOperationVideoTemplate: "video", + basicVideoOperationStd2: "video", + retryVideoOperationStd2: "video", + basicVideoOperationSmooth2: "video", + extendVideoStd2: "video", + lipSyncStd2: "video", + retryVideoOperationSmooth2: "video", + extendVideoSmooth2: "video", + lipSyncSmooth2: "video", + videoFrameInterpolation: "video", + videoUpscale: "video", + removeWatermark: "video", + batchGenerateVideo: "video", + videoContinueGenerateSmooth2: "video", + videoContinueGenerateStd2: "video", + videoBgmGeneration: "video", + basicVideoOperationVgfm: "video", + basicVideoOperationLab14: "video", + basicVideoOperationDit: "video", + basicVideoOperationVgfmLite: "video", + lipSyncAvatarStd: "video", + lipSyncAvatarLively: "video", + videoAudioEffectGeneration: "video", + lipSyncAvatarMasterFreeTrial: "video", + lipSyncAvatarOmni480: "video", + lipSyncAvatarMasterFreeTrialVip: "video", + basicVideoOperationVgfmVip: "video", + basicVideoOperationLab14Vip: "video", + imageBasicGenerate: "image", + imageControlnetHumanFace: "image", + imageControlnetObject: "image", + imageControlnetReference: "image", + imageControlnetCanny: "image", + imageControlnetDepth: "image", + imageControlnetPose: "image", + imageStyleReference: "image", + imageStyleCode: "image", + imageByteEdit: "image", + imageOutpainting: "image", + imageInpaintingRepaint: "image", + imageInpaintingEraser: "image", + imageMatting: "image", + imageMagnific: "image", + imageIpKeep: "image", + imageFusion: "image", + imageInstaDrag: "image", + imageFluxGenerate: "image", + textArtGeneration: "image", + imagePostEditor: "image", + imageUhd: "image", + GenerateFreeMock: "image", + audioSongGenerate: "audio", + }, + m = new Set([ + "imageControlnetHumanFace", + "imageControlnetObject", + "imageControlnetReference", + "imageControlnetCanny", + "imageControlnetDepth", + "imageControlnetPose", + "imageIpKeep", + "imageStyleReference", + "imageByteEdit", + "imageStyleCode", + ]), + g = { + GenerateButton: "basicVideoOperation", + RetryButton: "retryVideoOperation", + ExtendSeconds: "extendVideo", + Download: "removeWatermark", + LipSync: "lipSync", + ReDub: "lipSync", + LipSyncButton: "lipSync", + ReDubButton: "lipSync", + ActionCopy: "basicVideoOperationVideoTemplate", + RegenerateActionCopy: "basicVideoOperationVideoTemplate", + RelaxedGenerateVideo: "basicVideoOperation", + VideoUpscale: "videoUpscale", + VideoFrameInterpolation: "videoFrameInterpolation", + ContinueLabUpscaleVideo: "videoContinueGenerateStd2", + BatchGenerateVideo: "batchGenerateVideo", + GenerateVideoBGM: "videoBgmGeneration", + ReGenerateVideoBGM: "videoBgmGeneration", + Character2Video: "lipSyncAvatarStd", + RetryCharacter2Video: "lipSyncAvatarLively", + VideoAudioEffect: "videoAudioEffectGeneration", + VideoModelSwitch: "basicVideoOperation", + Character2VideoSwitch: "lipSyncAvatarMasterFreeTrialVip", + ImageBasicGenerate: "imageBasicGenerate", + ImagePromptEditor: "imageBasicGenerate", + ImageRetryButton: "imageBasicGenerate", + ImageOutPaintButton: "imageOutpainting", + ImageOutPaintTextArea: "imageOutpainting", + ImageInPaintRepaintButton: "imageInpaintingRepaint", + ImageInPaintRepaintTextArea: "imageInpaintingRepaint", + ImageInPaintEraserButton: "imageInpaintingEraser", + ImageInPaintEraserTextArea: "imageInpaintingEraser", + ImageMattingButton: "imageMatting", + ImageMagnificButton: "imageMagnific", + ImageControlNetReference: "imageControlnetReference", + ImageControlNetHumanFace: "imageControlnetHumanFace", + ImageControlNetObject: "imageControlnetObject", + ImageControlNetCanny: "imageControlnetCanny", + ImageControlNetDepth: "imageControlnetDepth", + ImageControlNetPose: "imageControlnetPose", + ImageIpKeep: "imageIpKeep", + ImageFusion: "imageFusion", + ImageStyleReference: "imageStyleReference", + ImageByteEdit: "imageByteEdit", + ImageInstaDragButton: "imageInstaDrag", + ImagePostEditor: "imagePostEditor", + ImageUhd: "imageUhd", + AudioGenerate: "audioSongGenerate", + AudioBasicReGenerate: "audioSongGenerate", + TextArtGenerationButton: "textArtGeneration", + TextArtGenerationRetryButton: "textArtGeneration", + GenerateFreeMock: "GenerateFreeMock", + }, + _ = { + GenerateButton: n.s.CLICK_GENERATE_BUTTON, + RetryButton: n.s.CLICK_REGENERATE_BUTTON, + ExtendSeconds: n.s.CLICK_VIP_FUNCTION_3s, + Download: n.s.CLICK_VIP_FUNCTION_DELETE_WATERMARK, + LipSync: n.s.LIP_SYNC, + ReDub: n.s.RE_DUB, + LipSyncButton: n.s.LIP_SYNC, + ReDubButton: n.s.RE_DUB, + ActionCopy: n.s.ACTION_COPY, + RegenerateActionCopy: n.s.ACTION_COPY, + RelaxedGenerateVideo: n.s.RELAXED_GENERATE_MODE_VIP_GUIDE_ENTRANCE, + VideoUpscale: n.s.VIDEO_UPSCALE, + VideoFrameInterpolation: n.s.VIDEO_FRAME_INTERPLATION, + ContinueLabUpscaleVideo: n.s.CONTINUE_LAB_UPSCALE_VIDEO, + BatchGenerateVideo: n.s.CLICK_VIDEO_BATCH_GENERATE_BUTTON, + GenerateVideoBGM: n.s.GENERATE_VIDEO_BGM, + ReGenerateVideoBGM: n.s.RE_GENERATE_VIDEO_BGM, + Character2Video: n.s.LIP_SYNC, + RetryCharacter2Video: n.s.LIP_SYNC, + VideoAudioEffect: n.s.VIDEO_AUDIO_EFFECT, + VideoModelSwitch: n.s.BASIC_VIDEO_OPERATION_VGFM, + Character2VideoSwitch: n.s.LIP_SYNC_AVATAR_SWITCH, + ImageBasicGenerate: n.s.CLICK_TEXT_TO_IMAGE_GENERATE_BUTTON, + ImagePromptEditor: n.s.TEXT_GENERATE_PROMPT_EDITOR, + ImageRetryButton: n.s.TEXT_GENERATE_RETRY_BUTTON, + ImageOutPaintButton: n.s.TEXT_GENERATE_OUTPAINT_BUTTON, + ImageOutPaintTextArea: n.s.TEXT_GENERATE_OUTPAINT_BUTTON, + ImageInPaintRepaintButton: n.s.TEXT_GENERATE_INPAINT_REPAINT_BUTTON, + ImageInPaintRepaintTextArea: n.s.TEXT_GENERATE_INPAINT_REPAINT_BUTTON, + ImageInPaintEraserButton: n.s.TEXT_GENERATE_INPAINT_ERASER_BUTTON, + ImageInPaintEraserTextArea: n.s.TEXT_GENERATE_INPAINT_ERASER_BUTTON, + ImageMattingButton: n.s.TEXT_GENERATE_MATTING_BUTTON, + ImageMagnificButton: n.s.TEXT_GENERATE_MAGNIFIC_BUTTON, + ImageControlNetReference: n.s.CLICK_CONTROL_NET, + ImageControlNetHumanFace: n.s.CLICK_CONTROL_NET, + ImageControlNetObject: n.s.CLICK_CONTROL_NET, + ImageControlNetCanny: n.s.CLICK_CONTROL_NET, + ImageControlNetDepth: n.s.CLICK_CONTROL_NET, + ImageControlNetPose: n.s.CLICK_CONTROL_NET, + ImageIpKeep: n.s.TEXT_GENERATE_IMAGE_IP_KEEP, + ImageFusion: n.s.TEXT_GENERATE_FUSION_BUTTON, + ImageStyleReference: n.s.CLICK_CONTROL_NET, + ImageByteEdit: n.s.TEXT_GENERATE_IMAGE_BYTE_EDIT, + ImageInstaDragButton: n.s.CLICK_IMAGE_INSTA_DRAG_GENERATION_BUTTON, + ImagePostEditor: n.s.CLICK_IMAGE_PAINT_EDIT, + ImageUhd: n.s.CLICK_IMAGE_UHD_BUTTON, + AudioGenerate: n.s.CLICK_TEXT_TO_AUDIO_GENERATE_BUTTON, + AudioBasicReGenerate: n.s.CLICK_TEXT_TO_AUDIO_REGENERATE_BUTTON, + TextArtGenerationButton: n.s.CLICK_TEXT_ART_GENERATION_BUTTON, + TextArtGenerationRetryButton: + n.s.CLICK_TEXT_ART_GENERATION_RETRY_BUTTON, + GenerateFreeMock: void 0, + }, + y = "generate_video", + b = "generate_img", + I = "generate_audio", + w = 24, + x = 86400, + S = 1e6, + M = (function (e) { + return ( + (e.Violation = "34010421"), + (e.HostedPageNotAvailable = "36010113"), + (e.GenerateViolation = "3003"), + (e.OverseaViolation = "-5"), + e + ); + })({}), + C = (e) => { + var { level: t } = e; + return t + ? { + [a.d.None]: "", + [a.d.Standard]: o.ZP.t( + "dre_m10n_subscription_plans_standard", + {}, + "Standard Plan" + ), + [a.d.Artisan]: o.ZP.t( + "dre_m10n_subscription_plans_artisan", + {}, + "Artisan Plan" + ), + [a.d.Maestro]: o.ZP.t( + "dre_m10n_subscription_plans_maestro", + {}, + "Maestro Plan" + ), + }[t] + : ""; + }, + T = (e) => { + var { level: t } = e; + return t + ? { + [a.d.None]: "", + [a.d.Standard]: o.ZP.t( + "dre_m10n_management_page_membership_standard", + {}, + "Standard" + ), + [a.d.Artisan]: o.ZP.t( + "dre_m10n_management_page_membership_artisan", + {}, + "Artisan" + ), + [a.d.Maestro]: o.ZP.t( + "dre_m10n_management_page_membership_maestro", + {}, + "Maestro" + ), + }[t] + : ""; + }, + A = (e, t) => { + if (t) + return o.ZP.t( + "dre_m10n_subscription_page_staus_oneoff", + {}, + "1-month" + ); + switch (e) { + case "YEAR": + return o.ZP.t( + "dre_m10n_subscription_page_staus_yearly", + {}, + "Yearly" + ); + case "MONTH": + return o.ZP.t( + "dre_m10n_subscription_page_staus_monthly", + {}, + "Monthly" + ); + default: + return e; + } + }, + k = { + [a.d.None]: 0, + [a.d.Standard]: 1, + [a.d.Artisan]: 2, + [a.d.Maestro]: 3, + }, + P = { + [a.d.None]: 0, + [a.d.Standard]: 1, + [a.d.Artisan]: 2, + [a.d.Maestro]: 3, + }, + E = { YEAR: "pay_annually", MONTH: "pay_monthly" }, + D = { + dre_m10n_subscription_page_plans_yearly: "pay_annually", + dre_m10n_subscription_page_plans_monthly: "pay_monthly", + dre_m10n_subscription_page_plans_oneoff: "single_purchase", + }, + R = (e) => { + var { scene: t, isOversea: i } = e, + n = { coverType: "image", coverUrl: "" }, + a = { + ExtendSeconds: { + coverType: "video", + coverUrl: "https://lf3-static." + .concat(r.an, "yte") + .concat(r.WU, "nsdoc.com/obj/eden-c") + .concat(r.zQ, "/fdeh7nulwpgps/extend.mp4"), + poster: s, + }, + LipSync: { + coverType: "video", + coverUrl: "https://lf3-static." + .concat(r.an, "yte") + .concat(r.WU, "nsdoc.com/obj/eden-c") + .concat(r.zQ, "/fdeh7nulwpgps/lip-sync.mp4"), + poster: l, + }, + ReDub: { + coverType: "video", + coverUrl: "https://lf3-static." + .concat(r.an, "yte") + .concat(r.WU, "nsdoc.com/obj/eden-c") + .concat(r.zQ, "/fdeh7nulwpgps/lip-sync.mp4"), + poster: l, + }, + VideoUpscale: { + coverType: "video", + coverUrl: "https://lf3-static." + .concat(r.an, "yte") + .concat(r.WU, "nsdoc.com/obj/eden-c") + .concat(r.zQ, "/nuhonupabps/upscale.mp4"), + poster: c, + }, + VideoFrameInterpolation: { + coverType: "video", + coverUrl: "https://lf3-static." + .concat(r.an, "yte") + .concat(r.WU, "nsdoc.com/obj/eden-c") + .concat(r.zQ, "/nuhonupabps/frame-interpolation.mp4"), + poster: d, + }, + ImageUhd: { coverType: "image", coverUrl: u }, + }, + o = { + ExtendSeconds: { + coverType: "video", + coverUrl: "https://sf16-sg." + .concat(r._8, "ik") + .concat( + r._8, + "okcdn.com/obj/eden-sg/fdeh7nulwpgps/extend.mp4" + ), + poster: s, + }, + LipSync: { + coverType: "video", + coverUrl: "https://sf16-sg." + .concat(r._8, "ik") + .concat( + r._8, + "okcdn.com/obj/eden-sg/fdeh7nulwpgps/lip-sync.mp4" + ), + poster: l, + }, + ReDub: { + coverType: "video", + coverUrl: "https://sf16-sg." + .concat(r._8, "ik") + .concat( + r._8, + "okcdn.com/obj/eden-sg/fdeh7nulwpgps/lip-sync.mp4" + ), + poster: l, + }, + VideoUpscale: { + coverType: "video", + coverUrl: "https://sf16-sg." + .concat(r._8, "ik") + .concat( + r._8, + "okcdn.com/obj/eden-sg/nuhonupabps/upscale.mp4" + ), + poster: c, + }, + VideoFrameInterpolation: { + coverType: "video", + coverUrl: "https://sf16-sg." + .concat(r._8, "ik") + .concat( + r._8, + "okcdn.com/obj/nuhonupabps/frame-interpolation.mp4" + ), + poster: d, + }, + ImageUhd: { coverType: "image", coverUrl: u }, + }; + return t && "boolean" == typeof i ? (i ? o[t] || n : a[t] || n) : n; + }, + N = "creditWrapper"; + }, + 37454: function (e, t, i) { + "use strict"; + i.d(t, { + j: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e.INIT_COMMERCIAL_DATA_FIRST_STEP = + "init_commercial_data_first_step"), + (e.INIT_COMMERCIAL_DATA_SECOND_STEP = + "init_commercial_data_second_step"), + (e.INIT_COMMERCIAL_DATA = "init_commercial_data"), + (e.RECEIVE_CREDIT = "receive_credit"), + (e.MAKE_ORDER_VIP = "make_order_vip"), + (e.MAKE_ORDER_CREDIT = "make_order_credit"), + (e.QUERY_CREDIT_ORDER = "query_credit_order"), + (e.QUERY_VIP_ORDER = "query_vip_order"), + (e.PAY = "pay"), + e + ); + })({}); + }, + 409625: function (e, t, i) { + "use strict"; + i.d(t, { + L_: function () { + return n; + }, + U7: function () { + return s; + }, + iE: function () { + return o; + }, + i_: function () { + return a; + }, + v2: function () { + return r; + }, + }); + var n = "GET_FEED_JSONP", + r = "GET_WEEKLY_JSONP", + a = "COMMUNITY_FETCH_COMMUNITY_PANEL", + o = "COMMUNITY_PRELOAD_DEFAULT_COMMUNITY_FEED_LIST", + s = "COMMUNITY_GET_DEFAULT_COMMUNITY_FEED_LIST"; + }, + 487736: function (e, t, i) { + "use strict"; + i.d(t, { + M: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e.VIP_MODAL = "VIP_MODAL"), + (e.CREDIT_MODAL = "CREDIT_MODAL"), + (e.NoviceQuestionnaire = "NoviceQuestionnaire"), + (e.CharacterGenerateModal = "CharacterGenerateModal"), + (e.CommercialLandingModal = "CommercialLandingModal"), + (e.VideoExtendModal = "VideoExtendModal"), + (e.UpscaleModal = "UpscaleModal"), + (e.ImgZoomInModal = "ImgZoomInModal"), + (e.OutPaintModal = "OutPaintModal"), + (e.InPaintRepaintModal = "InPaintRepaintModal"), + (e.InPaintEraserModal = "InPaintEraserModal"), + (e.ReportModal = "ReportModal"), + (e.PublishModal = "PublishModal"), + (e.WorkCollectionDetailModal = "WorkCollectionDetailModal"), + (e.PostEditorModal = "PostEditorModal"), + (e.ProductHuntModal = "ProductHuntModal"), + (e.PrivacyPolicyDialog = "PrivacyPolicyDialog"), + e + ); + })({}); + }, + 314068: function (e, t, i) { + "use strict"; + i.d(t, { + BN: function () { + return r; + }, + D1: function () { + return o; + }, + U7: function () { + return s; + }, + eF: function () { + return c; + }, + jg: function () { + return l; + }, + vS: function () { + return a; + }, + }); + var n = i(224671), + r = { + [n.jP.OneOne]: { + width: 1024, + height: 1024, + resolutionType: n.YD.ImageResolutionType_1k, + }, + [n.jP.FourThree]: { + width: 1024, + height: 768, + resolutionType: n.YD.ImageResolutionType_1k, + }, + [n.jP.ThreeFour]: { + width: 768, + height: 1024, + resolutionType: n.YD.ImageResolutionType_1k, + }, + [n.jP.TwoThree]: { + width: 682, + height: 1024, + resolutionType: n.YD.ImageResolutionType_1k, + }, + [n.jP.ThreeTwo]: { + width: 1024, + height: 682, + resolutionType: n.YD.ImageResolutionType_1k, + }, + [n.jP.NineSixteen]: { + width: 576, + height: 1024, + resolutionType: n.YD.ImageResolutionType_1k, + }, + [n.jP.SixteenNine]: { + width: 1024, + height: 576, + resolutionType: n.YD.ImageResolutionType_1k, + }, + [n.jP.TwentyOneNine]: { + width: 1195, + height: 512, + resolutionType: n.YD.ImageResolutionType_1k, + }, + }, + a = 512, + o = 1360, + s = 1048576, + l = r[n.jP.OneOne], + c = 1; + }, + 991303: function (e, t, i) { + "use strict"; + i.d(t, { + AK: function () { + return n; + }, + H$: function () { + return s; + }, + I5: function () { + return p; + }, + Uj: function () { + return h; + }, + Yg: function () { + return l; + }, + dJ: function () { + return d; + }, + do: function () { + return a; + }, + jc: function () { + return u; + }, + jn: function () { + return f; + }, + lA: function () { + return o; + }, + qr: function () { + return c; + }, + w8: function () { + return r; + }, + }); + var n = [ + "video/quicktime", + "video/x-msvideo", + "video/avi", + "video/x-m4v", + "video/x-flv", + "video/x-matroska", + "application/vnd.rn-realmedia-vbr", + ], + r = [".mp4", ".mov", ".avi", ".m4v", ".flv", ".mkv", ".rmvb"], + a = ["image/png", "image/jpg", "image/jpeg", "image/bmp", "image/webp"], + o = [".png", ".jpg", ".jpeg", ".bmp", ".webp"], + s = [ + "audio/mpeg", + "audio/wav", + "audio/x-wav", + "audio/x-ms-wma", + "video/x-ms-wma", + "audio/x-m4a", + ], + l = [".mp3", ".wav", ".wma", ".m4a"], + c = 0xa00000, + d = 3, + u = 7e3, + f = 7e3, + h = 3, + p = "image/jpeg,image/jpg,image/png,image/webp"; + }, + 469320: function (e, t, i) { + "use strict"; + i.d(t, { + y: function () { + return n; + }, + }); + var n = "upload_audio_placeholder_tone_id"; + }, + 44938: function (e, t, i) { + "use strict"; + i.d(t, { + O: function () { + return r; + }, + u: function () { + return n; + }, + }); + var n = { + ugCampaignKey: "mweb_campaign_key", + ugInviteParams: "mweb_invite_params", + ugSecFromUid: "mweb_sec_from_uid", + authorInviteCode: "mweb_author_invite_code", + authorInviteCodeHasResumedPrefix: + "mweb_author_invite_code_has_resumed_", + hasFinishVideoQuestion: "mweb_has_finish_video_question", + userPortraitSurveyTriggerCount: "user_portrait_trigger_count", + userPortraitSurveyHasDone: "user_portrait_has_done", + hasDownloadDialogAutoShow: "has_download_dialog_auto_show", + userPortraitSurvey1QuestionOptionKey: + "user_portrait_survey_first_question_option_key", + inpaintBrushSize: "inpaint_brush_size", + hasPublished: "has_published", + operationAuthorityTypeHasConsumedRedDot: + "operation_authority_type_has_consumed_redDot", + isBeenOpenedInpaint: "is_been_opened_inpaint", + isAgreeUploadImageLaw: "is_agree_upload_image_law", + bgPaintBrushSize: "bg_paint_brush_size", + isShowBGPaintMessage: "is_show_bg_paint_message", + vipExpiryTooltipShowedTime: "vip_expiry_reminder_showed_time", + loginStatus: "LV_LOGIN_STATUS", + isRedirectFromUnLoginStatus: "is_redirect_from_unlogin_status", + isShowCanvasEditorGuide: "is_show_canvas_editor_guide", + canvasEditorHdHoverTipsShowCount: + "canvas_editor_hd_hover_tips_show_count", + isShowStoryEditorTimelineUploadGuide: + "is_show_story_editor_timeline_upload_guide", + isShowStoryEditorImageGenerateVideoGuide: + "is_show_story_editor_image_generate_video_guide", + storyboardBackupCollapseStatus: "storyboard_backup_collapse_status", + isUsedRelaxMode: "is_used_relax_mode", + storyboardTimelineMode: "storyboard_timeline_mode", + firstFreeTrialMark: "firstFreeTrialMark", + freeTrialConsumedMark: "freeTrialConsumedMark", + previewDiscountMark: "previewDiscountMark", + previewLimitNotRelaxMark: "previewLimitNotRelaxMark", + relaxLimitNotPreviewMark: "relaxLimitNotPreviewMark", + previewUpscaleMark: "previewUpscaleMark", + groupFeedSelectorMark: "groupFeedSelectorMark", + hasOpenedStyleModal: "has_open_style_modal", + latestStyleControlId: "latestStyleControlId", + isShowLyricsEditorGuide: "is_show_lyrics_editor_guide", + userPortraitSurveyAnswer: "user_portrait_survey_answer", + imageEditorItemId2DraftId: "image_editor_item_id_to_draft_id", + isShowImageEditorGuide: "is_show_image_editor_guide", + isShowImageEttaGuide: "is_show_image_etta_guide", + receiveCreditsTime: "receive_credits_cache_time", + ugNewCampaignDialog: "ug_new_campaign_dialog", + ugNewCampaignModelSuccess: "ug_new_campaign_model_success", + ugUnfinishedBeforeExpireDialog: "ugUnfinishedBeforeExpireDialog", + ugUnClaimedBeforeExpireDialog: "ugUnClaimedBeforeExpireDialog", + ugUnClaimedAfterOfflineDialog: "ugUnClaimedAfterOfflineDialog", + ugInviteBackDialog: "ugInviteBackDialog", + hasShowProductHuntDialog: "has_show_product_hunt_dialog", + hiddenCreateToneNewMark: "hidden_create_tone_new_mark", + lipSyncMasterFirstFreeTrialMark: + "lip_sync_master_first_free_trial_mark", + lipSyncMasterFastFirstFreeTrialMark: + "lip_sync_master_fast_first_free_trial_mark", + }, + r = (function (e) { + return (e.True = "true"), (e.False = "false"), e; + })({}); + }, + 241047: function (e, t, i) { + "use strict"; + i.d(t, { + GT: function () { + return d; + }, + JI: function () { + return a; + }, + UN: function () { + return c; + }, + Zc: function () { + return r; + }, + fk: function () { + return s; + }, + iV: function () { + return o; + }, + qs: function () { + return l; + }, + }); + var n = i(902519), + r = { firstTimeFetchCount: 20, count: 40, panel: "image_aigc" }, + a = { count: 40, panel: "dreamina_test_area" }, + o = { count: 60 }, + s = { + [n.Ym.Template]: [ + n.PK.SINGLE_AND_COLLECTION, + n.PK.VIDEO, + n.PK.CANVAS_PRODUCTION, + ], + [n.Ym.Story]: [n.PK.MASTERPIECE], + }, + l = 1006, + c = (function (e) { + return (e.Publish = "publish"), (e.Delete = "delete"), e; + })({}), + d = 2e3; + }, + 441361: function (e, t, i) { + "use strict"; + i.d(t, { + R3: function () { + return c; + }, + Y4: function () { + return d; + }, + Y9: function () { + return f; + }, + _u: function () { + return u; + }, + a3: function () { + return s; + }, + e1: function () { + return o; + }, + hQ: function () { + return a; + }, + lr: function () { + return l; + }, + qi: function () { + return n; + }, + rO: function () { + return r; + }, + }); + var n = "##", + r = RegExp("(".concat(n, ")"), "g"), + a = RegExp("(\\s*".concat(n, "\\s*)|"), "g"), + o = "", + s = RegExp("(".concat(o, ")"), "g"), + l = RegExp("(\\s*".concat(o, "\\s*)|"), "g"), + c = /[\s\u200B]+/g, + d = /\u200B/g, + u = "web_t2i_quotation_marks_first_half", + f = "web_t2i_quotation_marks_second_half"; + }, + 68442: function (e, t, i) { + "use strict"; + i.d(t, { + s: function () { + return r; + }, + z: function () { + return n; + }, + }); + var n = 20, + r = 500; + }, + 720979: function (e, t, i) { + "use strict"; + i.d(t, { + i: function () { + return n; + }, + }); + var n = (function (e) { + return (e.activeTab = "activeTab"), (e.category = "category"), e; + })({}); + }, + 373177: function (e, t, i) { + "use strict"; + i.d(t, { + o: function () { + return n; + }, + }); + var n = (function (e) { + return (e.MWEB_BLEND_FILE_INFORMATION = "mwebBlendFileInformation"), e; + })({}); + }, + 949057: function (e, t, i) { + "use strict"; + i.d(t, { + B9: function () { + return u; + }, + FN: function () { + return a; + }, + Fy: function () { + return s; + }, + lo: function () { + return c; + }, + }); + var n = i(218571), + r = { isOverSea: !1, buildRegion: "sg" }, + a = n.createContext(r), + o = { assetManager: void 0, boxSelectionManager: void 0 }, + s = n.createContext(o), + l = { dsrDownloadManager: void 0 }, + c = n.createContext(l), + d = { dsrManager: void 0 }, + u = n.createContext(d); + }, + 54764: function (e, t, i) { + "use strict"; + i.d(t, { + c: function () { + return r; + }, + r: function () { + return o; + }, + }); + var n = i(218571); + function r(e, t, i) { + var r = (0, n.useRef)({ x: 0, y: 0 }), + a = (0, n.useRef)(!1), + [o, s] = (0, n.useState)(!1), + l = (e) => { + (a.current = !0), (r.current = { x: e.clientX, y: e.clientY }); + }, + c = (0, n.useCallback)( + (e) => { + if (a.current) { + var i = e.clientX - r.current.x, + n = e.clientY - r.current.y; + if (0 !== i || 0 !== n) + s(!0), + t(i, n, e), + (r.current = { x: e.clientX, y: e.clientY }); + } + }, + [t] + ), + d = () => { + s(!1), (a.current = !1), null == i || i(); + }, + u = () => { + s(!1), (a.current = !1); + }; + return ( + (0, n.useEffect)(() => { + var t = e.current; + return ( + t && + (t.addEventListener("mousedown", l), + t.addEventListener("mousemove", c), + t.addEventListener("mouseup", d), + t.addEventListener("mouseleave", u)), + () => { + t && + (t.removeEventListener("mousedown", l), + t.removeEventListener("mousemove", c), + t.removeEventListener("mouseup", d), + t.removeEventListener("mouseleave", u)); + } + ); + }, [e, o, c]), + [o] + ); + } + function a() { + var e = (0, n.useRef)(!1), + t = (0, n.useRef)(), + i = (i) => { + (e.current = i), + t.current && clearTimeout(t.current), + (t.current = setTimeout(() => { + e.current = !i; + }, 30)); + }; + return ( + (0, n.useEffect)( + () => () => { + t.current && clearTimeout(t.current); + }, + [] + ), + [e, i] + ); + } + function o(e, t, i) { + var [r, o] = a(), + s = (0, n.useCallback)( + (n) => { + if ( + (n.preventDefault(), + n.stopPropagation(), + null === (a = e.current) || void 0 === a || a.click(), + n.ctrlKey) + ) + s = n.deltaY > 0; + else { + var a, + s, + l = null == n ? void 0 : n.wheelDeltaY, + c = + window.navigator.platform.toUpperCase().indexOf("MAC") >= 0, + d = l ? 2 >= Math.abs(l + 3 * n.deltaY) : 0 === n.deltaMode; + if (!r.current && d) { + i(-n.deltaX, -n.deltaY); + return; + } + (s = c ? n.deltaY < 0 : n.deltaY > 0), o(!0); + } + t(s); + }, + [i, e, t, r, o] + ); + (0, n.useEffect)(() => { + e.current && (e.current.onwheel = s); + }, [e, s]); + } + }, + 932616: function (e, t, i) { + "use strict"; + i.d(t, { + h: function () { + return l; + }, + }); + var n = i(417699), + r = i(699267), + a = i(218571), + o = i(652494), + s = i(603026), + l = () => { + var e = (0, r.G)(n.e), + t = (0, r.G)(s.K), + { isOversea: i } = e, + [l, c] = (0, a.useState)(o.y.CREDITS_RULE(i)); + return ( + (0, a.useEffect)(() => { + if (i) { + c( + null !== + (n = + null === (e = t.displayInfo) || void 0 === e + ? void 0 + : e.creditsRule) && void 0 !== n + ? n + : l + ); + var e, + n, + r = t.onDisplayInfoChange((e) => { + var t; + c( + null !== (t = null == e ? void 0 : e.creditsRule) && + void 0 !== t + ? t + : l + ); + }); + return () => { + r.dispose(); + }; + } + }, []), + l + ); + }; + }, + 522692: function (e, t, i) { + "use strict"; + i.d(t, { + Z: function () { + return o; + }, + }); + var n = i(484702), + r = i(699267), + a = i(218571), + o = () => { + var e = (0, r.G)(n.N), + [t, i] = (0, a.useState)(e.isInFreemiumStage); + return ( + (0, a.useEffect)(() => { + i(e.isInFreemiumStage); + var t = e.onIsInFreemiumStageChange((e) => { + i(e); + }); + return () => { + t.dispose(); + }; + }, []), + t + ); + }; + }, + 529531: function (e, t, i) { + "use strict"; + i.d(t, { + p: function () { + return s; + }, + }); + var n = i(699267), + r = i(218571), + a = i(522692), + o = i(70137), + s = () => { + var e = (0, n.G)(o.aG), + [t, i] = (0, r.useState)(null == e ? void 0 : e.localCredit), + s = (0, a.Z)(); + return ( + (0, r.useEffect)(() => { + i(e.localCredit), + e.onLocalCreditChange(() => { + i(e.localCredit); + }); + }, []), + s || t < 0 ? 0 : t + ); + }; + }, + 969197: function (e, t, i) { + "use strict"; + i.d(t, { + P: function () { + return u; + }, + }); + var n = i(293793), + r = i(278978), + a = i(73021), + o = i(699267), + s = i(27433), + l = i(899229), + c = i(218571), + d = i(484702), + u = (e) => { + var t, + i = (0, o.G)(d.N), + u = (0, a.default)(e.extraBenefits), + { batchNumber: f = 1 } = e, + h = (0, n.default)(() => + (0, s.Qp)({ + scene: e.scene, + extraBenefits: u, + videoDuration: e.videoDuration, + commercialStrategyService: i, + discount: e.discount, + sceneOptions: e.sceneOptions, + batchNumber: f, + }) + ), + p = (0, c.useMemo)(() => { + var t; + return (null === (t = e.sceneOptions) || void 0 === t + ? void 0 + : t.version) === l.dt.V2CharVideo + ? e.sceneOptions.characterMode + : e.sceneOptions && "mode" in e.sceneOptions + ? e.sceneOptions.mode + : void 0; + }, [e.sceneOptions]), + v = + e.sceneOptions && "modelReqKey" in e.sceneOptions + ? e.sceneOptions.modelReqKey + : "", + m = (0, r.default)(); + return ( + (0, c.useEffect)(() => { + var e = i.onAllPaidStrategyChange(() => { + m(); + }); + return () => { + e.dispose(); + }; + }, [i, m]), + (0, c.useMemo)( + () => h(), + [ + e.scene, + p, + u, + i.getAllPaidStrategy(), + f, + e.videoDuration, + e.discount, + null === (t = e.sceneOptions) || void 0 === t + ? void 0 + : t.version, + v, + h, + ] + ) + ); + }; + }, + 472159: function (e, t, i) { + "use strict"; + i.d(t, { + R: function () { + return s; + }, + }); + var n = i(293793), + r = i(218571), + a = i(997166); + function o(e, t, i, n) { + return e.slice(0, t) + n + e.slice(i); + } + function s(e, t, i) { + var s = (0, r.useRef)(-1), + l = (0, r.useRef)(-1), + c = (0, n.default)(() => { + var n, + r, + c, + d = null === (n = i.current) || void 0 === n ? void 0 : n.dom; + if (!!d) { + var u = null !== (r = d.selectionStart) && void 0 !== r ? r : 0, + f = null !== (c = d.selectionEnd) && void 0 !== c ? c : 0, + { leftQuote: h, rightQuote: p } = (0, a.wc)(), + v = e.slice(u, f); + t(o(e, u, f, h + v + p)), + (s.current = u + 1), + (l.current = f + 1); + } + }); + return ( + (0, r.useEffect)(() => { + var e, + t = null === (e = i.current) || void 0 === e ? void 0 : e.dom; + if (!!t && -1 !== s.current) + t.focus(), + t.setSelectionRange(s.current, l.current), + (s.current = -1), + (l.current = -1); + }, [e]), + { handleInsertQuotes: c } + ); + } + }, + 528498: function (e, t, i) { + "use strict"; + i.d(t, { + CY: function () { + return o; + }, + UY: function () { + return s; + }, + uy: function () { + return l; + }, + }); + var n = i(218571); + class r { + observe(e, t) { + var i = + arguments.length > 2 && void 0 !== arguments[2] && arguments[2]; + this._observedElementList.push(e), + this._callbackMap.set(e, { callback: t, isCallbackOnce: i }), + this._observer.observe(e); + } + unobserve(e) { + var t, + i = this._observedElementList.indexOf(e); + i >= 0 && + (this._observedElementList.splice(i, 1), + this._callbackMap.delete(e), + null === (t = this._observer) || void 0 === t || t.unobserve(e)); + } + disconnect() { + var e; + (this._observedElementList = []), + this._callbackMap.clear(), + null === (e = this._observer) || void 0 === e || e.disconnect(); + } + constructor(e) { + (this._callbackMap = new Map()), + (this._observedElementList = []), + (this._handleIntersection = (e) => { + e.forEach((e) => { + var { target: t, isIntersecting: i, intersectionRatio: n } = e, + r = i && n >= this._threshold, + a = this._callbackMap.get(t); + if (!!a) { + var { callback: o, isCallbackOnce: s } = a; + s && r && this.unobserve(t), o(r); + } + }); + }); + var t, + { threshold: i } = null != e ? e : {}, + n = 1; + (this._observer = new IntersectionObserver( + this._handleIntersection, + e + )), + (this._threshold = + null !== (t = Array.isArray(i) ? i[0] : i) && void 0 !== t + ? t + : n); + } + } + var a = new r({ threshold: 0.2 }); + function o(e, t) { + var i = (0, n.useRef)(null), + r = (0, n.useRef)(a), + [o, s] = (0, n.useState)(!1); + return ( + (0, n.useEffect)(() => { + var n = i.current; + return ( + n && + r.current.observe( + n, + (e) => { + s(e), null == t || t(e); + }, + e + ), + () => { + n && r.current.unobserve(n); + } + ); + }, [i, e]), + [i, o] + ); + } + function s(e, t) { + var i = (0, n.useRef)(null), + r = (0, n.useRef)(a); + return ( + (0, n.useEffect)(() => { + var n = i.current; + return ( + n && + r.current.observe( + n, + (e) => { + null == t || t(e); + }, + e + ), + () => { + n && r.current.unobserve(n); + } + ); + }, [e, t]), + i + ); + } + function l() { + var e = + !(arguments.length > 0) || void 0 === arguments[0] || arguments[0], + t = (0, n.useRef)(null), + i = (0, n.useRef)(a), + [r, o] = (0, n.useState)(!1), + s = (0, n.useRef)(!1), + l = (0, n.useCallback)(() => { + if (!s.current) { + s.current = !0; + var e = t.current; + e && i.current.observe(e, (e) => o(e)); + } + }, []), + c = (0, n.useCallback)(() => { + s.current = !1; + var e = t.current; + e && i.current.unobserve(e); + }, []); + return ( + (0, n.useEffect)(() => (e && l(), c), []), + { elementRef: t, isIntersecting: r, observe: l, unobserve: c } + ); + } + }, + 887073: function (e, t, i) { + "use strict"; + i.d(t, { + r: function () { + return r; + }, + }); + var n = i(218571); + function r(e, t, i) { + var r = (0, n.useCallback)( + (i) => { + i.keyCode === e && (null == t || t(i)); + }, + [t, e] + ); + (0, n.useEffect)( + () => ( + document.addEventListener("keydown", r, i), + () => { + document.removeEventListener("keydown", r, i); + } + ), + [r, i] + ); + } + }, + 626291: function (e, t, i) { + "use strict"; + i.d(t, { + M: function () { + return a; + }, + }); + var n = i(471605), + r = i(699267), + a = () => { + var e, + t = ( + (null === (e = window.__locationInfo) || void 0 === e + ? void 0 + : e.code) || "" + ).toLowerCase(), + i = (0, r.G)(n.S); + return { region: t, lang: null == i ? void 0 : i.currentLocale }; + }; + }, + 884619: function (e, t, i) { + "use strict"; + i.d(t, { + D: function () { + return s; + }, + }); + var n = i(14606), + r = i(699267), + a = i(218571), + o = i(694545); + function s() { + var e = + arguments.length > 0 && void 0 !== arguments[0] + ? arguments[0] + : (0, o.I)(), + [t, i] = (0, a.useState)(), + [s, l] = (0, a.useState)(""), + [c, d] = (0, a.useState)(), + u = (0, r.G)(n.A); + return ( + (0, a.useEffect)(() => { + d(!0), + null == u || + u.aggregate + .getCommonConfigByKey("secUid") + .then((t) => { + i(e === t), l(null != t ? t : ""); + }) + .finally(() => { + d(!1); + }); + }, [u, e]), + { isMyself: t, mySecUid: s, secUidLoading: c } + ); + } + }, + 691563: function (e, t, i) { + "use strict"; + i.d(t, { + Z: function () { + return a; + }, + }); + var n = i(218571); + class r { + dispose() { + document.removeEventListener( + "visibilitychange", + this._onVisibilityChange + ); + } + addListener(e, t) { + this._listenerMap[e] = t; + } + clearListener() { + this._listenerMap = {}; + } + removeListener(e) { + delete this._listenerMap[e]; + } + constructor() { + (this._listenerMap = {}), + (this._onVisibilityChange = () => { + var e = "visible" === document.visibilityState; + for (var t of Object.values(this._listenerMap)) null == t || t(e); + }), + document.addEventListener( + "visibilitychange", + this._onVisibilityChange + ); + } + } + function a(e) { + var [t, i] = (0, n.useState)(!0), + a = (e) => { + i(e); + }; + return ( + (0, n.useEffect)( + () => ( + r.instance.addListener(e, a), + () => { + r.instance.removeListener(e); + } + ), + [] + ), + [t] + ); + } + r.instance = new r(); + }, + 351066: function (e, t, i) { + "use strict"; + i.d(t, { + C: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e.INIT = "init"), + (e.LOADING = "loading"), + (e.FAIL = "fail"), + (e.SUCCESS = "success"), + (e.RETRYABLE_FAIL = "can_retry_fail"), + e + ); + })({}); + }, + 870730: function (e, t, i) { + "use strict"; + i.d(t, { + Z: function () { + return r; + }, + a: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e.limitTimes = "limit_times"), + (e.limitDuration = "limit_duration"), + (e.limitCredits = "limit_credits"), + (e.nonTrial = "non_trial"), + e + ); + })({}), + r = (function (e) { + return ( + (e.none = "none"), + (e.freeTrial = "free_trial"), + (e.firstMonthDiscount = "first_month_discount"), + (e.multiDiscount = "multi_discount"), + e + ); + })({}); + }, + 894803: function (e, t, i) { + "use strict"; + i.d(t, { + m: function () { + return o; + }, + }); + var n = i(369617), + r = i(100470), + a = i(949274); + function o(e) { + e === r.b.ErrSharkNotPass && + n.s.error( + a.ZP.t( + "dreamina_web_user_violate_operation", + {}, + "\u60A8\u6D89\u53CA\u8FDD\u89C4\u64CD\u4F5C\uFF0C\u6682\u65F6\u65E0\u6CD5\u4F7F\u7528\u8BE5\u529F\u80FD" + ) + ); + } + }, + 817585: function (e, t, i) { + "use strict"; + i.d(t, { + V: function () { + return a; + }, + }); + var n = i(537201), + r = i(108982), + a = (e) => { + var t = 0; + return ( + null == e || + e.forEach((e) => { + n.i[e.name] === r.s.FaceGan && ++t; + }), + t > 1 + ); + }; + }, + 182688: function (e, t, i) { + "use strict"; + i.d(t, { + DR: function () { + return D; + }, + DY: function () { + return R; + }, + Ej: function () { + return S; + }, + KZ: function () { + return b; + }, + Kx: function () { + return w; + }, + LW: function () { + return L; + }, + NC: function () { + return A; + }, + NG: function () { + return M; + }, + RW: function () { + return P; + }, + Sz: function () { + return B; + }, + TE: function () { + return k; + }, + b2: function () { + return C; + }, + h5: function () { + return N; + }, + pF: function () { + return x; + }, + sk: function () { + return T; + }, + t_: function () { + return I; + }, + }); + var n = i(139646), + r = i(351066), + a = i(584531), + o = i(243302), + s = i(56168), + l = i(128468), + c = i(111709), + d = i(201636), + u = i(417281), + f = i(804274), + h = i(881607), + p = i(369617), + v = i(708171), + m = i(949274), + g = i(699813), + _ = i(997166), + y = i(13523); + function b(e) { + switch (e) { + case o.Pd.Init: + return r.C.INIT; + case o.Pd.SubmitOk: + return r.C.LOADING; + case o.Pd.FinalGenerateFail: + case o.Pd.PreTnsCheckNotPass: + return r.C.FAIL; + case o.Pd.FinalSuccess: + case o.Pd.Deleted: + return r.C.SUCCESS; + default: + return r.C.FAIL; + } + } + function I(e) { + if ( + (arguments.length > 1 && void 0 !== arguments[1] && arguments[1], + null === (t = e.itemList) || void 0 === t ? void 0 : t[0]) + ) { + var t, + i = (0, s.C)(e.itemList[0], e.historyRecordId); + e.videoDreamina = i; + } + return (0, a.o)(e); + } + function w(e) { + var t = e[0], + { aigcImageParams: i } = t, + { generateType: n } = i; + return ( + n !== o.pi.Text2Image && + n !== o.pi.Blend && + n !== o.pi.SuperResolution && + n !== o.pi.FineTunePromptWithText2Image && + n !== o.pi.FineTunePromptWithSuperResolution && + n !== o.pi.InPaint && + n !== o.pi.OutPaint && + n !== o.pi.InPaintRemove && + n !== o.pi.SuperDefinition && + n !== o.pi.Matting && + n !== o.pi.Fusion && + n !== o.pi.InstaDrag && + (0, g.ss)( + "image record could only be created from image record[type: ".concat( + n, + "]" + ) + ), + { + generateType: null != n ? n : o.pi.Text2Image, + historyRecordId: "", + originHistoryRecordId: "", + createdTime: t.commonAttr.createTime, + itemList: e, + task: { + taskId: "", + submitId: "", + aid: 0, + status: o.Pd.FinalSuccess, + finishTime: 0, + historyId: "", + }, + assetOption: { hasFavorited: !1 }, + status: o.Pd.FinalSuccess, + mode: l.JU.Workbench, + submitId: "", + finishTime: 0, + } + ); + } + function x(e) { + var t, + i, + { aigcImageParams: n } = e, + { generateType: r } = n; + return { + generateType: null != r ? r : o.pi.Text2Video, + historyRecordId: "", + originHistoryRecordId: "", + createdTime: e.commonAttr.createTime, + itemList: [e], + task: { + taskId: "", + submitId: "", + aid: 0, + status: o.Pd.FinalSuccess, + finishTime: 0, + historyId: "", + originalInput: (0, h.fs)(n.text2videoParams, f.zW), + firstFrameImage: { + imageUrl: e.commonAttr.coverUrl, + imageUri: + null !== + (i = + null === (t = e.video) || void 0 === t + ? void 0 + : t.coverUri) && void 0 !== i + ? i + : "", + }, + }, + assetOption: { hasFavorited: !1 }, + status: o.Pd.FinalSuccess, + mode: l.JU.Workbench, + submitId: "", + }; + } + var S = (e) => [r.C.INIT, r.C.LOADING].includes(e), + M = (e) => e === o.pi.VideoBGM, + C = (e) => e === o.pi.VideoAudioEffect, + T = (e) => M(e) || C(e), + A = (e) => e === o.pi.AudioVideoMix || e === o.pi.VideoAudioEffectMix; + function k(e, t) { + var i = e.selectModel, + n = (0, v.Y)(t); + if (!(i && n(i))) { + var r = e.getValidModel(void 0, n); + e.updateSelectModel(r); + var a = r + ? m.ZP.t( + "dre_auto_match_model_toast", + {}, + "The best model has been matched for you" + ) + : m.ZP.t("dre_toast_no_available_model", {}, "No available models"); + p.s.normal(a); + } + } + function P(e) { + return E.apply(this, arguments); + } + function E() { + return (E = (0, n._)(function* (e) { + var t = yield null == e ? void 0 : e.tryToUpdateSelectModel(); + if (t !== y.F.NotUpdated) { + var i = + t === y.F.NoAvailableModel + ? m.ZP.t( + "dre_toast_no_available_model", + {}, + "No available models" + ) + : m.ZP.t( + "dre_auto_match_model_toast", + {}, + "The best model has been matched for you" + ); + p.s.normal(i); + } + })).apply(this, arguments); + } + function D(e) { + return !!(null == e ? void 0 : e.includes(c.Wn.Etta)); + } + function R(e) { + var { leftQuote: t, rightQuote: i } = (0, _.wc)(); + return new RegExp( + "(".concat(t, "[^").concat(t).concat(i, "]+").concat(i, ')|("[^"]+")') + ).test(e); + } + function N(e, t, i) { + return R(e) && i + ? m.ZP.t( + "web_image_edit_draw_words_placeholder_text", + {}, + 'Enter the copy you want to change through ""' + ) + : t; + } + function L(e) { + var t; + return ( + (null == e + ? void 0 + : null === (t = e.idInfo) || void 0 === t + ? void 0 + : t.itemPlatform) === d.oH.Local + ); + } + var j = [u.UI.StyleCode, u.UI.StyleReference], + O = [o.pi.Blend, o.pi.SuperDefinition, o.pi.SuperResolution]; + function B(e, t) { + return e.some((e) => j.includes(e.name)) && O.includes(t); + } + }, + 727280: function (e, t, i) { + "use strict"; + i.d(t, { + aY: () => x, + Jf: () => E, + AE: () => I, + DX: () => y, + PS: () => p, + Tt: () => T, + Ip: () => w, + DH: () => D, + uA: () => _, + ec: () => R, + }); + var n = i("625572"), + r = i("639880"), + a = i("441361"), + o = i("417281"), + s = i("128468"), + l = i("639985"), + c = i("949274"), + d = i("997166"); + function u(e) { + return e.replace(a.rO, "__$1__").split("__"); + } + var f = i("172834"), + h = i("627420"), + p = [o.UI.ByteEdit, o.UI.IpKeep, o.UI.StyleReference]; + function v() { + var e = c.ZP.t("dre_t2i_style_ref_trigger_word", {}, "style"); + return RegExp("#(".concat(e, "|style)\\s?([a-zA-Z0-9]{6})"), "gi"); + } + function m() { + var { leftQuote: e, rightQuote: t } = (0, d.wc)(); + return new RegExp("".concat(e, "[^").concat(t, "]+").concat(t)); + } + function g(e) { + var { + uri: t = "", + url: i = "", + width: a = 0, + height: o = 0, + imageWeightList: s, + } = e; + return { + image: (0, r._)((0, n._)({}, e), { + imageUri: t, + imageUrl: i, + width: a, + height: o, + }), + styleWeight: s[0], + }; + } + function _(e, t) { + var i, + a = e.reduce( + (e, t) => (t.name === o.UI.StyleReference && e.push(t), e), + [] + ); + if (!a.length) return null; + var l = a.map((e) => { + var t, i, a, o; + return { + image: (0, r._)((0, n._)({}, e), { + imageUri: null !== (t = e.uri) && void 0 !== t ? t : "", + imageUrl: null !== (i = e.url) && void 0 !== i ? i : "", + width: null !== (a = e.width) && void 0 !== a ? a : 0, + height: null !== (o = e.height) && void 0 !== o ? o : 0, + }), + styleWeight: e.imageWeightList[0], + }; + }); + if (!t) { + var [c] = e; + return { + id: c.id, + name: o.UI.StyleCode, + commonAsset: { + assetType: s.d_.Style, + assetCode: "", + referImageList: l, + }, + }; + } + return (0, o.iB)(t) + ? { + id: t.id, + name: o.UI.StyleCode, + commonAsset: (0, r._)((0, n._)({}, t.commonAsset), { + referImageList: [ + ...(null !== (i = t.commonAsset.referImageList) && + void 0 !== i + ? i + : []), + ...l, + ], + }), + } + : (0, o.D3)(t) + ? { + id: t.id, + name: o.UI.StyleCode, + commonAsset: { + assetType: s.d_.Style, + assetCode: h.o, + referImageList: [g(t)].concat(l), + }, + } + : null; + } + function y(e) { + return (0, o.iB)(e) && e.commonAsset.assetCode === h.o; + } + function b(e, t) { + for (var i = [], n = e.indexOf(t); -1 !== n; ) + i.push(n), (n = e.indexOf(t, n + 1)); + return i; + } + function I(e) { + var t = v(); + return !!e.match(t); + } + function w(e, t) { + var i = m(), + n = !!e.match(i); + return !t.length && n; + } + function x(e, t) { + var i = I(e), + n = w(e, t); + return i && !n; + } + function S(e, t) { + for (var i = [], n = null; (n = t.exec(e)); ) + i.push({ start: n.index, length: n[0].length }); + return i; + } + var M = RegExp(a.qi, "g"); + function C(e, t, i) { + var n = S(e, M), + r = t.filter((e) => e >= 0 && e < n.length).sort((e, t) => t - e), + a = e; + for (var o of r) { + var s = n[o], + l = i(o); + a = a.slice(0, s.start) + l + a.slice(s.start + s.length); + } + return a; + } + function T(e, t) { + var { image: i, styleWeight: a } = e, + s = { png: l.uF.Png, jpeg: l.uF.Jpeg, webp: l.uF.Webp }; + return (0, r._)((0, n._)({}, t), { + name: o.UI.StyleReference, + imageUriList: [i.imageUri], + imageWeightList: [a], + styleReference: { + image: { + imageUri: i.imageUri, + imageUrl: i.imageUrl, + width: i.width, + height: i.height, + format: i.format ? s[i.format] : void 0, + everPhoto: i.everPhoto, + coverUrlMap: i.coverUrlMap, + }, + styleWeight: a, + }, + uri: i.imageUri, + url: i.imageUrl, + coverUrl: i.imageUrl, + width: i.width, + height: i.height, + }); + } + function A(e, t) { + for (var i, n = []; null !== (i = t.exec(e)); ) { + var r = i.index; + if (!(r > 0) || "#" !== e[r - 1] || (1 !== r && "#" === e[r - 2])) + n.push({ index: i.index, match: i[2] }); + } + return n; + } + function k(e, t) { + for ( + var i = b(e, a.qi), n = v(), r = A(e, n), l = [], c = 0, d = 0; + c < i.length && d < r.length; + + ) { + var u = i[c], + f = r[d]; + f.index < u + ? (l.push({ + name: o.UI.StyleCode, + commonAsset: { assetCode: f.match, assetType: s.d_.Style }, + }), + d++) + : (l.push(t[c]), c++); + } + return ( + d === r.length + ? (l = l.concat(t.slice(c))) + : c === i.length && + (l = l.concat( + r + .slice(d) + .map((e) => ({ + name: o.UI.StyleCode, + commonAsset: { assetCode: e.match, assetType: s.d_.Style }, + })) + )), + { prompt: e.replace(n, a.qi), imagePromptList: l.filter((e) => !!e) } + ); + } + function P(e, t) { + for (var i = [], n = 0; n < t.length; n++) y(t[n]) && i.push(n); + return { + prompt: C(e, i, (e) => { + var i, + n = t[e]; + return y(n) + ? Array( + null === (i = n.commonAsset.referImageList) || void 0 === i + ? void 0 + : i.length + ) + .fill(a.qi) + .join("") + : a.qi; + }), + imagePromptList: t.reduce((e, t) => { + if (y(t)) { + var i, + n = ( + null !== (i = t.commonAsset.referImageList) && void 0 !== i + ? i + : [] + ).map((e) => T(e, t)); + return e.concat(n); + } + return e.concat(t); + }, []), + }; + } + function E(e) { + var { prompt: t, imagePromptList: i } = e, + r = x(t, i), + a = i.some((e) => y(e)); + if (!r && !a) return e; + var o = (0, n._)({}, e); + if (r) { + var { prompt: s, imagePromptList: l } = k(t, i); + (o.prompt = s), (o.imagePromptList = l); + } + if (a) { + var { prompt: c, imagePromptList: d } = P( + o.prompt, + o.imagePromptList + ); + (o.prompt = c), (o.imagePromptList = d); + } + return o; + } + function D(e) { + var t = function (e) { + if (e !== a.qi) return v.push(e), "continue"; + if (p >= l.length) return "break"; + var { abilityIndex: t } = l[p], + i = n[t]; + if ((0, o.U0)(i)) + return ( + v.push(e), + -1 === _ && (m.push(i), (_ = m.length - 1)), + g.push({ abilityIndex: _ }), + p++, + "continue" + ); + if (!(0, o.D3)(i)) + return ( + v.push(e), + m.push(i), + g.push({ abilityIndex: m.length - 1 }), + p++, + "continue" + ); + p++; + var r = i.styleReference.image.imageUri, + s = c.find((e) => { + var t; + return null === (t = e.referImageList) || void 0 === t + ? void 0 + : t.some((e) => e.image.imageUri === r); + }); + return r && d.includes(r) && s + ? h.some((e) => e.assetCode === s.assetCode) + ? "continue" + : void h.push(s) + : (v.push(e), + m.push(i), + g.push({ abilityIndex: m.length - 1 }), + "continue"); + }, + { + prompt: i, + imagePromptList: n, + commonAssetList: r, + promptPlaceholderInfoList: l, + } = e, + c = r.filter((e) => e.assetType === s.d_.Style); + if (!c.length) return null; + var d = c.reduce((e, t) => { + var i, n; + return e.concat( + null !== + (n = + null === (i = t.referImageList) || void 0 === i + ? void 0 + : i.map((e) => e.image.imageUri)) && void 0 !== n + ? n + : [] + ); + }, []), + f = u(i), + h = [], + p = 0, + v = [], + m = [], + g = [], + _ = -1; + for (var y of f) if ("break" === t(y)) break; + var b = h.map((e) => ({ + name: o.UI.StyleCode, + commonAsset: { + assetType: s.d_.Style, + assetCode: e.assetCode, + referImageList: e.referImageList, + }, + imageList: [], + ipKeepList: [], + })), + I = g, + w = b.length; + w && + (I = Array(b.length) + .fill(0) + .map((e, t) => ({ abilityIndex: t })) + .concat(g.map((e) => ({ abilityIndex: e.abilityIndex + w })))); + var x = b.concat(m); + return { + prompt: a.qi.repeat(w).concat(v.join("")), + abilityList: x, + promptPlaceholderInfoList: I, + }; + } + function R(e, t, i) { + if ( + !e || + !(null == t ? void 0 : t.length) || + !(null == i ? void 0 : i.length) || + t.filter((e) => e.name === f.DABlendAbilityName.StyleReference) + .length <= 1 + ) + return e; + var n = u(e), + r = [], + o = [], + s = 0, + l = !1, + c = + null !== (h = null == i ? void 0 : i.length) && void 0 !== h + ? h + : 0; + for (var d of n) { + var h, + p, + v = d === a.qi; + if (!d) { + r.push(d); + continue; + } + if (!v) { + r.push(d), (l = !d.trim() && l); + continue; + } + if (s >= c) break; + var m = + t[ + null !== (p = null == i ? void 0 : i[s].abilityIndex) && + void 0 !== p + ? p + : 0 + ]; + m.name === f.DABlendAbilityName.StyleReference + ? (!l && (o.push(m), r.push(d)), (l = !0)) + : ((l = !1), r.push(d)), + s++; + } + return r.join(""); + } + }, + 412961: function (e, t, i) { + "use strict"; + i.d(t, { + AX: function () { + return G; + }, + CU: function () { + return j; + }, + Gl: function () { + return N; + }, + Iu: function () { + return A; + }, + J8: function () { + return L; + }, + JK: function () { + return z; + }, + LN: function () { + return K; + }, + NF: function () { + return Z; + }, + Pd: function () { + return H; + }, + Wo: function () { + return D; + }, + bN: function () { + return T; + }, + gv: function () { + return E; + }, + iP: function () { + return W; + }, + iS: function () { + return R; + }, + lE: function () { + return V; + }, + pw: function () { + return k; + }, + wu: function () { + return O; + }, + }); + var n = i(625572), + r = i(639880), + a = i(475578), + o = i(227700), + s = i(593187), + l = i(822040), + c = i(424437), + d = i(455091), + u = i(773820), + f = i(561658), + h = i(869919), + p = i(733787), + v = i(599045), + m = i(549654), + g = i(202401), + _ = i(224671), + y = i(52533), + b = i(755769), + I = i(899229), + w = i(388977), + x = i(182688), + S = i(673326), + M = i(469320), + C = i(586961), + T = (e) => { + var t, + { originalInput: i, processFlows: n } = e; + return ( + (null !== + (t = null == i ? void 0 : i.videoGenInputs[0].videoMode) && + void 0 !== t + ? t + : h.tB.Default) === h.tB.Preview || + (!!n && + !!(n.length > 0) && + n[n.length - 1].curProcessFlows[0] === p.v8.LabSR) + ); + }, + A = (e) => e === h.tB.Preview, + k = function (e) { + var t, + i = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : h.tB.LipSyncDefault; + if (!e) return null; + i === h.tB.LipSyncDefault && (t = "standard"), + i === h.tB.LipSyncLively && (t = "vivid"), + i === h.tB.LipSyncMaster && (t = "high_quality"), + i === h.tB.LipSyncMasterFast && (t = "hq_480"); + var { + sourceType: n, + toneCategoryId: r, + toneCategoryKey: a, + toneId: o, + toneKey: s, + } = e; + if (n === v.M.LocalFile) + return { + lip_sync_type: "upload_audio", + lip_sync_mode: t, + voice_category_id: r ? "".concat(r) : "all", + voice_category_key: a, + voice_id: o === M.y ? "" : o, + voice_key: s, + }; + var { text: l, speed: c } = e; + return { + lip_sync_type: "text_to_speech", + lip_sync_mode: t, + script: l, + audio_speed: c.toFixed(1), + voice_category_id: r ? "".concat(r) : "all", + voice_category_key: a, + voice_id: o, + voice_key: s, + }; + }, + P = (e) => { + var t = { + frameInterpolationCnt: 0, + upscaleCnt: 0, + lipSyncCnt: 0, + addMoreCnt: 0, + }; + return ( + e && + e.forEach((e) => { + e.curProcessFlows.forEach((e) => { + switch (e) { + case p.v8.Extend: + t.addMoreCnt += 1; + break; + case p.v8.LipSync: + case p.v8.LipSyncImage: + case p.v8.LipSyncUserVideo: + t.lipSyncCnt += 1; + break; + case p.v8.SuperResolution: + t.upscaleCnt += 1; + break; + case p.v8.InsertFrame: + t.frameInterpolationCnt += 1; + } + }); + }), + t + ); + }, + E = (e) => { + var t, + i, + { processFlows: a, taskPayload: o, originalInput: s } = e, + { v2vOpt: l } = s.videoGenInputs[0], + { promptSource: c } = o.taskExtra, + d = P(a); + return (0, r._)( + (0, n._)( + { + currentProcess: a + ? a[(null == a ? void 0 : a.length) - 1].curProcessFlows[0] + : void 0, + operater: c, + }, + d + ), + { + originalFrameRate: + c === u.K.FrameInterpolation + ? null == l + ? void 0 + : null === (t = l.insertFrame) || void 0 === t + ? void 0 + : t.originFps + : void 0, + newFrameRate: + c === u.K.FrameInterpolation + ? null == l + ? void 0 + : null === (i = l.insertFrame) || void 0 === i + ? void 0 + : i.targetFps + : void 0, + newResolution: + c === u.K.Upscale && (null == l ? void 0 : l.superResolution) + ? "" + .concat(l.superResolution.targetWidth, " * ") + .concat(l.superResolution.targetHeight) + : void 0, + originalResolution: + c === u.K.Upscale && (null == l ? void 0 : l.superResolution) + ? "" + .concat(l.superResolution.targetWidth / 2, " * ") + .concat(l.superResolution.targetHeight / 2) + : void 0, + } + ); + }, + D = (e, t) => { + var i, + a, + o, + s, + l = null == t ? void 0 : t.processFlows, + { v2vOpt: c } = + null !== + (o = null == t ? void 0 : t.originalInput.videoGenInputs[0]) && + void 0 !== o + ? o + : e, + { promptSource: d } = + null !== (s = null == t ? void 0 : t.taskPayload.taskExtra) && + void 0 !== s + ? s + : null == e + ? void 0 + : e.extra, + f = P(l); + return (0, r._)( + (0, n._)( + { + currentProcess: l + ? l[(null == l ? void 0 : l.length) - 1].curProcessFlows[0] + : void 0, + operater: d, + }, + f + ), + { + originalFrameRate: + d === u.K.FrameInterpolation + ? null == c + ? void 0 + : null === (i = c.insertFrame) || void 0 === i + ? void 0 + : i.originFps + : void 0, + newFrameRate: + d === u.K.FrameInterpolation + ? null == c + ? void 0 + : null === (a = c.insertFrame) || void 0 === a + ? void 0 + : a.targetFps + : void 0, + newResolution: + d === u.K.Upscale && (null == c ? void 0 : c.superResolution) + ? "" + .concat(c.superResolution.targetWidth, " * ") + .concat(c.superResolution.targetHeight) + : void 0, + originalResolution: + d === u.K.Upscale && (null == c ? void 0 : c.superResolution) + ? "" + .concat(c.superResolution.targetWidth / 2, " * ") + .concat(c.superResolution.targetHeight / 2) + : void 0, + } + ); + }, + R = (e, t, i, r, a) => { + var s, + l, + c, + d, + f, + v, + m, + g, + _, + y, + b, + I, + w, + S, + M, + T, + A, + P, + E, + D, + R, + N, + L, + j, + O, + B = null == t ? void 0 : t.originalInput.videoGenInputs[0], + F = + null !== + (y = + null == B + ? void 0 + : null === (s = B.firstFrameImage) || void 0 === s + ? void 0 + : s.imageUrl) && void 0 !== y + ? y + : null === (c = r.inputImages) || void 0 === c + ? void 0 + : null === (l = c[0]) || void 0 === l + ? void 0 + : l.imageUrl, + U = + null !== + (b = + null == B + ? void 0 + : null === (d = B.endFrameImage) || void 0 === d + ? void 0 + : d.imageUrl) && void 0 !== b + ? b + : null === (v = r.inputImages) || void 0 === v + ? void 0 + : null === (f = v[1]) || void 0 === f + ? void 0 + : f.imageUrl, + G = Number(!!F) + Number(!!U), + z = + null !== + (I = + null == t + ? void 0 + : null === (m = t.taskPayload) || void 0 === m + ? void 0 + : m.taskExtra) && void 0 !== I + ? I + : r.extra, + V = + (w = + a && (0, x.sk)(a) + ? null !== + (M = + null === (S = r.extra) || void 0 === S + ? void 0 + : S.promptSource) && void 0 !== M + ? M + : u.K.Custom + : null !== (T = null == z ? void 0 : z.promptSource) && + void 0 !== T + ? T + : u.K.Custom) === u.K.Remix, + W = [ + u.K.AddMore, + u.K.LipSync, + u.K.Redub, + u.K.Upscale, + u.K.FrameInterpolation, + ].includes(w) + ? "postedit" + : "generate", + Z = null == z ? void 0 : z.lipSyncInfo, + K = + null !== (A = null == B ? void 0 : B.prompt) && void 0 !== A + ? A + : r.textPrompt, + H = + null !== (P = null == B ? void 0 : B.lensMotionType) && + void 0 !== P + ? P + : null == r + ? void 0 + : r.motionType, + q = + null !== (E = null == B ? void 0 : B.durationMs) && void 0 !== E + ? E + : r.originDurationMs, + J = + null !== (D = null == B ? void 0 : B.fps) && void 0 !== D + ? D + : r.originFps, + Y = + null !== + (R = null == t ? void 0 : t.originalInput.videoAspectRatio) && + void 0 !== R + ? R + : r.videoRatio, + Q = + null !== (N = null == t ? void 0 : t.originalInput.seed) && + void 0 !== N + ? N + : r.seed, + X = + null !== (L = null == B ? void 0 : B.videoMode) && void 0 !== L + ? L + : r.videoMode; + return (0, n._)( + { + video_id: + null !== + (j = + null == t + ? void 0 + : null === (g = t.videoBGMInfo) || void 0 === g + ? void 0 + : g.originHistoryId) && void 0 !== j + ? j + : i, + task_id: "".concat(null == t ? void 0 : t.taskId), + prompt_source: w, + aigc_type: W, + prompt: null != K ? K : "", + prompt_cnt: + null !== (O = null == K ? void 0 : K.length) && void 0 !== O + ? O + : 0, + image_prompt_cnt: (0, C.sG)(r) ? 1 : G, + movement_type: o.QN[null != H ? H : p.H7.StillShot], + movement_strength: (null == B ? void 0 : B.cameraStrength) + ? o.Ep[B.cameraStrength] + : void 0, + origin_video_duration: q, + generate_mode: J === h.WP.Fluency ? o.oT.fluent : o.oT.normal, + aspect_ratio: G > 0 ? "custom" : Y, + video_speed: "".concat(r.motionSpeed), + seed: "".concat(Q), + is_default_seed: (null == z ? void 0 : z.isDefaultSeed) ? 1 : 0, + ai_video_id: V + ? "".concat(null == t ? void 0 : t.taskId) + : void 0, + ai_video_name: V ? K : void 0, + author_id: V + ? "".concat( + null == e + ? void 0 + : null === (_ = e.author) || void 0 === _ + ? void 0 + : _.uid + ) + : void 0, + origin_submit_id: null == z ? void 0 : z.originSubmitId, + last_submit_id: null == z ? void 0 : z.previewSubmitId, + batch_number: null == z ? void 0 : z.batchNumber, + }, + k(Z, X) + ); + }, + N = (e) => { + var t, + i, + n, + { uid: r, taskDetail: a, inputParams: o } = e; + if ( + !r || + (null == o + ? void 0 + : null === (t = o.boximator) || void 0 === t + ? void 0 + : t.boxes.length) + ) + return !1; + var s = "DREAMINA_VIDEO_SETTINGS_".concat(r), + l = window.localStorage.getItem(s); + if (!l) return !1; + try { + n = JSON.parse(l); + } catch (e) { + return !1; + } + var c = { + useLastFrame: n.useLastFrame, + useImage: n.useImage, + ratio: n.ratio, + motion: n.motion, + speed: n.speed, + originDurationMs: n.originDurationMs, + originFps: n.originFps, + motionIntensity: n.motionIntensity, + }; + if ( + a && + (null === (i = a.originalInput) || void 0 === i + ? void 0 + : i.videoGenInputs.length) > 0 + ) { + var d = a.originalInput.videoGenInputs[0], + u = !!d.firstFrameImage, + f = !!d.endFrameImage; + return ( + u === c.useImage && + f === c.useLastFrame && + m.E[d.motionSpeed] === c.speed && + d.durationMs === c.originDurationMs && + d.fps === c.originFps && + d.lensMotionType === c.motion && + a.originalInput.videoAspectRatio === c.ratio + ); + } + if (o) { + var h = o.inputImages && o.inputImages.length > 0, + p = o.inputImages && o.inputImages.length > 1; + return ( + h === c.useImage && + p === c.useLastFrame && + o.motionSpeed === c.speed && + o.originDurationMs === c.originDurationMs && + o.originFps === c.originFps && + o.motionType === c.motion && + o.videoRatio === c.ratio + ); + } + return !1; + }, + L = (e) => { + var t, + i, + n, + { taskDetail: r, videoDetail: a } = e, + o = null == a ? void 0 : a.aigcParams.text2videoParams, + s = + null !== (n = null == o ? void 0 : o.videoGenInputs[0]) && + void 0 !== n + ? n + : null == r + ? void 0 + : null === (t = r.originalInput) || void 0 === t + ? void 0 + : t.videoGenInputs[0]; + return null == s + ? void 0 + : null === (i = s.firstFrameImage) || void 0 === i + ? void 0 + : i.aigcImage; + }, + j = (e) => { + var t, + i, + n, + r, + { taskDetail: a, videoDetail: o } = e, + s = null == o ? void 0 : o.aigcParams.text2videoParams; + return null !== + (r = + null == s + ? void 0 + : null === (t = s.videoModelConfig) || void 0 === t + ? void 0 + : t.modelNameStarlingKey) && void 0 !== r + ? r + : null == a + ? void 0 + : null === (n = a.originalInput) || void 0 === n + ? void 0 + : null === (i = n.videoModelConfig) || void 0 === i + ? void 0 + : i.modelNameStarlingKey; + }, + O = (e) => { + var t, i, n, r, a, o; + return ( + null == e + ? void 0 + : null === (i = e.videoTemplateItem) || void 0 === i + ? void 0 + : null === (t = i.extra) || void 0 === t + ? void 0 + : t.videoTemplateOfficial + ) + ? { + video_action_template_id: + null == e + ? void 0 + : null === (r = e.videoTemplateItem) || void 0 === r + ? void 0 + : null === (n = r.commonAttr) || void 0 === n + ? void 0 + : n.id, + video_action_template_name: + null == e + ? void 0 + : null === (o = e.videoTemplateItem) || void 0 === o + ? void 0 + : null === (a = o.commonAttr) || void 0 === a + ? void 0 + : a.title, + } + : {}; + }, + B = (e, t, i) => { + if (i && (0, x.NG)(i)) { + var n, + r, + a, + s, + l, + c = + null == t + ? void 0 + : null === (n = t.audioList) || void 0 === n + ? void 0 + : n.findIndex((e) => { + var i; + return ( + e.audio.vid === + (null == t + ? void 0 + : null === (i = t.default) || void 0 === i + ? void 0 + : i.vid) + ); + }), + d = + (null == e + ? void 0 + : null === (r = e.videoBGMInfo) || void 0 === r + ? void 0 + : r.promptSource) === h.X2.Tag + ? o.hp.custom + : o.hp.frame; + return { + ai_music_id: + null == t + ? void 0 + : null === (a = t.default) || void 0 === a + ? void 0 + : a.vid, + ai_music_type: (null == e ? void 0 : e.videoBGMInfo) ? d : void 0, + ai_music_submitid: null == e ? void 0 : e.submitId, + ai_music_taskid: null == e ? void 0 : e.taskId, + music_prompt: + null == e + ? void 0 + : null === (l = e.videoBGMInfo) || void 0 === l + ? void 0 + : null === (s = l.tags) || void 0 === s + ? void 0 + : s.map((e) => e.name).join(","), + ai_music_rank: void 0 !== c ? c + 1 : void 0, + }; + } + }, + F = 3, + U = (e, t) => { + if (t && (0, x.b2)(t)) { + var i, + n, + r, + a = + null !== + (r = + null == e + ? void 0 + : null === (i = e.audioList) || void 0 === i + ? void 0 + : i.filter((e) => "fail" === e.audio.status).length) && + void 0 !== r + ? r + : F, + o = 0 !== a ? "fail_".concat(a) : "success"; + return { + audio_vid: + a === F + ? "0,0,0" + : null == e + ? void 0 + : null === (n = e.audioList) || void 0 === n + ? void 0 + : n + .map((e) => { + var t; + return null !== (t = e.audio.vid) && void 0 !== t + ? t + : 0; + }) + .join(","), + audio_generate_result: o, + }; + } + }, + G = (e, t) => { + var i, a; + return t + ? (0, x.b2)(t) + ? (0, r._)((0, n._)({}, U(e, t)), { + audio_generate_fail_code: + null == e + ? void 0 + : null === (i = e.audioList) || void 0 === i + ? void 0 + : i + .map((e) => { + var { audio: t } = e; + return "success" === t.status ? "0" : t.failCode; + }) + .join(","), + }) + : (0, x.NG)(t) + ? { + ai_music_id: + null == e + ? void 0 + : null === (a = e.audioList) || void 0 === a + ? void 0 + : a + .map((e) => { + var { audio: t } = e; + return t.vid; + }) + .join(","), + } + : void 0 + : void 0; + }, + z = (e, t, i) => { + if (!!i) { + if ((0, x.b2)(i)) { + var a, + o, + s, + l, + c = { + [g.O.Init]: 0, + [g.O.Processing]: 0, + [g.O.Success]: 1, + [g.O.Fail]: -1, + }, + d = + null == t + ? void 0 + : null === (s = t.audioList) || void 0 === s + ? void 0 + : null === + (o = s.find((e) => { + var i, + { audio: n } = e; + return ( + (null == n ? void 0 : n.vid) === + (null === (i = t.default) || void 0 === i + ? void 0 + : i.vid) + ); + })) || void 0 === o + ? void 0 + : null === (a = o.mixAudioVideo) || void 0 === a + ? void 0 + : a.status; + return (0, r._)((0, n._)({}, U(t, i)), { + audio_vid_chosen: + null == t + ? void 0 + : null === (l = t.default) || void 0 === l + ? void 0 + : l.vid, + audio_synthesize_status: d ? c[d] : -1, + }); + } + if ((0, x.NG)(i)) return B(e, t, i); + } + }, + V = (e) => { + var t, + i, + l, + c, + d, + p, + v, + m, + g, + _, + y, + x, + M, + A, + P, + E, + D, + R, + B, + F, + U, + G, + V, + W, + { + id: Z, + input: K, + taskDetail: H, + videoDetail: q, + containerService: J, + options: Y, + accountService: Q, + page: X, + generateType: $, + } = e, + ee = + null === (i = K.inputImages) || void 0 === i + ? void 0 + : null === (t = i[0]) || void 0 === t + ? void 0 + : t.imageUrl, + et = + null === (c = K.inputImages) || void 0 === c + ? void 0 + : null === (l = c[1]) || void 0 === l + ? void 0 + : l.imageUrl, + ei = Number(!!ee) + Number(!!et), + en = + null !== (E = K.extra) && void 0 !== E + ? E + : null == H + ? void 0 + : null === (d = H.taskPayload) || void 0 === d + ? void 0 + : d.taskExtra; + null == H || H.processFlows; + var er = null == en ? void 0 : en.lipSyncInfo, + { task_id: ea, author_id: eo } = Y, + es = null == q ? void 0 : q.originVideo, + el = (null == en ? void 0 : en.promptSource) === u.K.Remix, + ec = + null !== (D = null == en ? void 0 : en.promptSource) && + void 0 !== D + ? D + : u.K.Custom, + ed = [ + u.K.AddMore, + u.K.LipSync, + u.K.Redub, + u.K.Upscale, + u.K.FrameInterpolation, + ].includes(ec) + ? "postedit" + : "generate", + eu = null == Q ? void 0 : Q.userProfile.uid, + ef = + null === (p = K.boximator) || void 0 === p + ? void 0 + : p.boxes.map((e, t) => { + var i, + n = e.motionPath.length ? 1 : 0, + r = + (null === (i = e.boundingBox) || void 0 === i + ? void 0 + : i.length) > 1 + ? 1 + : 0; + return { + ["Box".concat(t + 1)]: { + is_path_added: n, + is_end_added: r, + }, + }; + }), + eh = null == q ? void 0 : q.aigcParams.text2videoParams, + ep = null == Y ? void 0 : Y.show_type; + try { + var { isGroupView: ev } = (0, w.ko)( + J, + f.N + ).contentRecordListManager; + ep = ev ? o.mb.Collect : o.mb.Normal; + } catch (e) {} + var em = L({ taskDetail: H, videoDetail: q }), + eg = + null == H + ? void 0 + : null === (m = H.originalInput) || void 0 === m + ? void 0 + : null === (v = m.videoGenInputs[0]) || void 0 === v + ? void 0 + : v.v2vOpt, + e_ = + null == H + ? void 0 + : null === (_ = H.originalInput) || void 0 === _ + ? void 0 + : null === (g = _.videoGenInputs[0]) || void 0 === g + ? void 0 + : g.i2vOpt, + ey = (0, n._)( + (0, r._)( + (0, n._)( + (0, r._)( + (0, n._)( + { + video_id: Z, + item_id: null == q ? void 0 : q.aigcItemId, + task_id: ea, + submit_id: null == H ? void 0 : H.submitId, + prompt_source: ec, + aigc_type: ed, + prompt: "" + .concat(ee ? "".concat(ee, " ") : "") + .concat( + null !== (R = K.textPrompt) && void 0 !== R ? R : "" + ) + .concat(et ? "".concat(et, " ") : ""), + prompt_cnt: + null !== + (B = + null === (y = K.textPrompt) || void 0 === y + ? void 0 + : y.length) && void 0 !== B + ? B + : 0, + image_prompt_cnt: (0, C.sG)(K) ? 1 : ei, + movement_type: K.motionType + ? o.QN[K.motionType] + : void 0, + movement_strength: K.motionIntensity + ? o.Ep[K.motionIntensity] + : void 0, + generate_mode: + K.originFps === h.WP.Fluency + ? o.oT.fluent + : o.oT.normal, + origin_video_duration: K.originDurationMs, + aspect_ratio: ei > 0 ? "custom" : K.videoRatio, + video_speed: "".concat(K.motionSpeed), + seed: "".concat(K.seed), + is_default_seed: ( + null == en ? void 0 : en.isDefaultSeed + ) + ? 1 + : 0, + ai_video_id: el ? ea : void 0, + author_id: el ? eo : void 0, + page: null != X ? X : a.WZ.AigcVideo, + video_duration: + null !== + (U = + null !== (F = null == q ? void 0 : q.duration) && + void 0 !== F + ? F + : (0, b.M)({ + taskDetail: H, + videoDetail: q, + inputParams: K, + })) && void 0 !== U + ? U + : void 0, + frame_rate: (null == es ? void 0 : es.fps) + ? "".concat(null == es ? void 0 : es.fps, "fps") + : void 0, + resolution: es + ? "".concat(es.width, "x").concat(es.height) + : void 0, + scene_options: { + version: I.dt.V2, + mode: (0, I.xc)(K.originFps), + containerService: J, + }, + }, + k(er, K.videoMode) + ), + { + is_from_preview: H && T(H) ? 1 : 0, + is_quick_preview: K.videoMode === h.tB.Preview ? 1 : 0, + is_preset: N({ uid: eu, inputParams: K, taskDetail: H }) + ? 1 + : 0, + origin_submit_id: null == en ? void 0 : en.originSubmitId, + last_submit_id: null == en ? void 0 : en.previewSubmitId, + generate_num: + null !== (G = null == en ? void 0 : en.batchNumber) && + void 0 !== G + ? G + : 1, + magic_box_cnt: + null !== + (V = + null === (x = K.boximator) || void 0 === x + ? void 0 + : x.boxes.length) && void 0 !== V + ? V + : 0, + magic_box_info: JSON.stringify(ef), + model_key: null == eh ? void 0 : eh.modelReqKey, + model_name: j({ taskDetail: H, videoDetail: q }), + last_picture_id: null == em ? void 0 : em.itemId, + last_generate_id: + null == em + ? void 0 + : null === (M = em.aigcImageParams) || void 0 === M + ? void 0 + : M.generateId, + picture_generate_type: + null == em + ? void 0 + : null === (A = em.aigcImageParams) || void 0 === A + ? void 0 + : A.generateType, + template_id: null == en ? void 0 : en.originTemplateId, + impression_id: null == en ? void 0 : en.impressionId, + result_vid: null == q ? void 0 : q.videoId, + generate_type: $, + } + ), + z(H, q, $) + ), + { + emotion_key: + null == er + ? void 0 + : null === (P = er.toneEmotion) || void 0 === P + ? void 0 + : P.nameKey, + is_voice_clone: (0, S.$l)(eg, e_) ? 1 : 0, + is_audio_to_audio: (0, S.eE)(er) ? 1 : 0, + } + ), + O(H) + ); + (0, s.$)( + J, + (0, r._)((0, n._)({}, ey, Y), { + show_type: + null !== (W = null == Y ? void 0 : Y.show_type) && void 0 !== W + ? W + : ep, + }) + ); + }, + W = (e) => { + var t, + i, + s, + c, + d, + f, + p, + v, + m, + g, + b, + w, + x, + M, + A, + P, + E, + { + resourceId: D, + inputParams: R, + containerService: j, + accountService: B, + promptSource: F, + authorId: U, + originId: G, + isDefaultSeed: z, + enterFrom: V, + seed: W, + scene: Z, + creditNow: K, + discount: H, + withRelaxedGenerateModeSwitch: q, + isRelaxedGenerate: J, + aiType: Y, + aiSubType: Q, + videoDuration: X, + isVoiceVipExclusive: $, + lipSyncInfo: ee, + taskDetail: et, + videoDetail: ei, + submitId: en, + lipSyncMode: er, + page: ea = a.WZ.AigcVideo, + impressionId: eo, + lastPictureId: es, + lastGenerateId: el, + pictureGenerateType: ec, + modelName: ed, + generateType: eu, + emotionKey: ef, + isVoiceClone: eh, + replyMessageId: ep, + templateTypeId: ev, + } = e, + em = F === u.K.Remix, + eg = + null === (i = R.inputImages) || void 0 === i + ? void 0 + : null === (t = i[0]) || void 0 === t + ? void 0 + : t.imageUrl, + e_ = + null === (c = R.inputImages) || void 0 === c + ? void 0 + : null === (s = c[1]) || void 0 === s + ? void 0 + : s.imageUrl, + ey = Number(!!eg) + Number(!!e_), + eb = [ + u.K.AddMore, + u.K.LipSync, + u.K.Redub, + u.K.FrameInterpolation, + u.K.Upscale, + ].includes(F) + ? "postedit" + : "generate"; + function eI() { + var { pathname: e } = location, + t = { + "/home": _.Q8.Home, + "/explore": _.Q8.Explore, + "/activity": _.Q8.ActivityDetail, + "/personal": _.Q8.OthersProfile, + }; + for (var i in t) if (e.includes(i)) return t[i]; + return _.Q8.Default; + } + var ew = null == B ? void 0 : B.userProfile.uid, + ex = + null === (d = R.boximator) || void 0 === d + ? void 0 + : d.boxes.map((e, t) => { + var i, + n = e.motionPath.length ? 1 : 0, + r = + (null === (i = e.boundingBox) || void 0 === i + ? void 0 + : i.length) > 1 + ? 1 + : 0; + return { + ["Box".concat(t + 1)]: { + is_path_added: n, + is_end_added: r, + }, + }; + }), + eS = L({ taskDetail: et, videoDetail: ei }); + (0, l.s)( + j, + (0, r._)( + (0, n._)( + (0, r._)( + (0, n._)( + { + page: ea, + submit_id: en, + prompt_source: F, + aigc_type: eb, + prompt: "" + .concat(eg ? "".concat(eg, " ") : "") + .concat( + null !== (M = R.textPrompt) && void 0 !== M ? M : "" + ) + .concat(e_ ? "".concat(e_) : ""), + prompt_cnt: + null !== + (A = + null === (f = R.textPrompt) || void 0 === f + ? void 0 + : f.length) && void 0 !== A + ? A + : 0, + image_prompt_cnt: (0, C.sG)(R) ? 1 : ey, + movement_type: R.motionType ? o.QN[R.motionType] : void 0, + aspect_ratio: ey > 0 ? "custom" : R.videoRatio, + video_speed: "".concat(R.motionSpeed), + seed: "".concat(null != W ? W : R.seed), + ai_video_id: em ? D : void 0, + template_id: em ? D : void 0, + template_source: eI(), + author_id: em ? U : void 0, + source_video_vid: G, + is_default_seed: z ? 1 : 0, + enter_from: V, + movement_strength: R.motionIntensity + ? o.Ep[R.motionIntensity] + : void 0, + generate_mode: + R.originFps === h.WP.Fluency + ? o.oT.fluent + : o.oT.normal, + origin_video_duration: R.originDurationMs, + video_duration: + null != X + ? X + : (null == R ? void 0 : R.originDurationMs) + ? (null == R ? void 0 : R.originDurationMs) / 1e3 + : void 0, + scene_options: { + version: I.dt.V2, + mode: (0, I.xc)(R.originFps), + containerService: j, + }, + is_voice_vip_exclusive: (0, y.Z)($) ? void 0 : Number($), + credits_now: K, + scene: Z, + discount: H, + withRelaxedGenerateModeSwitch: q, + isRelaxedGenerate: J, + aiType: Y, + aiSubType: Q, + }, + k(ee, er) + ), + { + is_from_preview: et && T(et) ? 1 : 0, + is_quick_preview: R.videoMode === h.tB.Preview ? 1 : 0, + is_preset: N({ uid: ew, inputParams: R, taskDetail: et }) + ? 1 + : 0, + extend_duration_ms: + null === (v = R.v2vOpt) || void 0 === v + ? void 0 + : null === (p = v.extend) || void 0 === p + ? void 0 + : p.extendDurationMs, + generate_num: + null !== (P = R.batchNumber) && void 0 !== P ? P : 1, + magic_box_cnt: + null !== + (E = + null === (m = R.boximator) || void 0 === m + ? void 0 + : m.boxes.length) && void 0 !== E + ? E + : 0, + magic_box_info: JSON.stringify(ex), + impression_id: eo, + model_key: R.modelReqKey, + model_name: + null != ed + ? ed + : null == et + ? void 0 + : null === (b = et.originalInput) || void 0 === b + ? void 0 + : null === (g = b.videoModelConfig) || void 0 === g + ? void 0 + : g.modelNameStarlingKey, + last_picture_id: + null != es ? es : null == eS ? void 0 : eS.itemId, + last_generate_id: + null != el + ? el + : null == eS + ? void 0 + : null === (w = eS.aigcImageParams) || void 0 === w + ? void 0 + : w.generateId, + picture_generate_type: + null != ec + ? ec + : null == eS + ? void 0 + : null === (x = eS.aigcImageParams) || void 0 === x + ? void 0 + : x.generateType, + generate_type: eu, + emotion_key: ef, + is_voice_clone: eh, + is_audio_to_audio: (0, S.eE)(ee) ? 1 : 0, + reply_message_id: ep, + } + ), + O(et) + ), + { template_type_id: ev } + ) + ); + }, + Z = (e, t, i, n, r) => { + (0, c.M)(t, { + action: i, + video_id: e, + is_usable: n ? 1 : 0, + page: r, + }); + }, + K = (e) => { + var t, + i, + n, + r, + s, + l, + c, + f, + p, + v, + m, + g, + _, + y, + b, + I, + w, + x, + M, + A, + k, + P, + D, + R, + N, + { + taskDetail: L, + inputParams: O, + videoDetail: B, + containerService: F, + status: U, + failReason: G, + enterFrom: z, + generateType: V, + } = e; + if (!!L) { + var W = L.originalInput.videoGenInputs[0], + Z = + null === (t = O.boximator) || void 0 === t + ? void 0 + : t.boxes.map((e, t) => { + var i, + n = e.motionPath.length ? 1 : 0, + r = + (null === (i = e.boundingBox) || void 0 === i + ? void 0 + : i.length) > 1 + ? 1 + : 0; + return { + ["Box".concat(t + 1)]: { + is_path_added: n, + is_end_added: r, + }, + }; + }), + K = + Number( + !!(null === (i = W.firstFrameImage) || void 0 === i + ? void 0 + : i.imageUrl) + ) + + Number( + !!(null === (n = W.endFrameImage) || void 0 === n + ? void 0 + : n.imageUrl) + ), + H = + null === (r = L.taskPayload) || void 0 === r + ? void 0 + : r.taskExtra, + q = (null == H ? void 0 : H.promptSource) === u.K.Remix, + J = + null !== (I = null == H ? void 0 : H.promptSource) && + void 0 !== I + ? I + : u.K.Custom, + Y = [ + u.K.AddMore, + u.K.LipSync, + u.K.Redub, + u.K.FrameInterpolation, + u.K.Upscale, + ].includes(J) + ? "postedit" + : "generate", + Q = E(L), + X = null == B ? void 0 : B.aigcParams.text2videoParams, + $ = + null === + (l = ( + null !== (w = null == X ? void 0 : X.videoGenInputs[0]) && + void 0 !== w + ? w + : null === (s = L.originalInput) || void 0 === s + ? void 0 + : s.videoGenInputs[0] + ).firstFrameImage) || void 0 === l + ? void 0 + : l.aigcImage, + { v2vOpt: ee, i2vOpt: et } = L.originalInput.videoGenInputs[0]; + (0, d.k)(F, { + submit_id: L.submitId, + status: U, + video_id: + null !== (x = null == B ? void 0 : B.videoId) && void 0 !== x + ? x + : "", + is_draft_gen: L.isUseDraftGen ? a._O.True : a._O.False, + task_id: "".concat(L.taskId), + export_ai_video_taskid: "".concat(L.taskId), + prompt_source: J, + aigc_type: Y, + prompt: "" + .concat( + null !== + (M = + null === (c = W.firstFrameImage) || void 0 === c + ? void 0 + : c.imageUrl) && void 0 !== M + ? M + : "" + ) + .concat(null !== (A = W.prompt) && void 0 !== A ? A : "") + .concat( + null !== + (k = + null === (f = W.endFrameImage) || void 0 === f + ? void 0 + : f.imageUrl) && void 0 !== k + ? k + : "" + ), + prompt_cnt: + null !== + (P = + null === (p = W.prompt) || void 0 === p + ? void 0 + : p.length) && void 0 !== P + ? P + : 0, + image_prompt_cnt: (0, C.sG)(O) ? 1 : K, + movement_type: o.QN[W.lensMotionType], + aspect_ratio: K > 0 ? "custom" : L.originalInput.videoAspectRatio, + video_speed: "".concat(O.motionSpeed), + seed: "".concat(L.originalInput.seed), + ai_video_id: q ? "".concat(L.taskId) : void 0, + author_id: q + ? "".concat( + null !== + (D = + null == B + ? void 0 + : null === (v = B.author) || void 0 === v + ? void 0 + : v.uid) && void 0 !== D + ? D + : "" + ) + : void 0, + source_video_vid: null == H ? void 0 : H.originId, + edit_type: "ai_video", + is_default_seed: (null == H ? void 0 : H.isDefaultSeed) ? 1 : 0, + page: a.WZ.StoryEditor, + video_duration: + null !== (R = null == B ? void 0 : B.durationMs) && void 0 !== R + ? R + : 0, + frame_interpolation_cnt: + null == Q ? void 0 : Q.frameInterpolationCnt, + upscale_cnt: null == Q ? void 0 : Q.upscaleCnt, + lip_sync_cnt: null == Q ? void 0 : Q.lipSyncCnt, + add_more_cnt: null == Q ? void 0 : Q.addMoreCnt, + frame_rate: (null == B ? void 0 : B.originVideo.fps) + ? "".concat(null == B ? void 0 : B.originVideo.fps, "fps") + : void 0, + resolution: (null == B ? void 0 : B.originVideo) + ? "" + .concat(null == B ? void 0 : B.originVideo.width, "x") + .concat(null == B ? void 0 : B.originVideo.height) + : void 0, + movement_strength: O.motionIntensity + ? o.Ep[O.motionIntensity] + : void 0, + generate_mode: + O.originFps === h.WP.Fluency ? o.oT.fluent : o.oT.normal, + is_from_preview: L && T(L) ? 1 : 0, + enter_from: z, + failReason: G, + export_ai_video_id: null == B ? void 0 : B.aigcItemId, + magic_box_cnt: + null !== + (N = + null === (m = O.boximator) || void 0 === m + ? void 0 + : m.boxes.length) && void 0 !== N + ? N + : 0, + magic_box_info: JSON.stringify(Z), + model_key: null == X ? void 0 : X.modelReqKey, + model_name: j({ taskDetail: L, videoDetail: B }), + last_picture_id: null == $ ? void 0 : $.itemId, + last_generate_id: + null == $ + ? void 0 + : null === (g = $.aigcImageParams) || void 0 === g + ? void 0 + : g.generateId, + picture_generate_type: + null == $ + ? void 0 + : null === (_ = $.aigcImageParams) || void 0 === _ + ? void 0 + : _.generateType, + generate_type: V, + emotion_key: + null == H + ? void 0 + : null === (b = H.lipSyncInfo) || void 0 === b + ? void 0 + : null === (y = b.toneEmotion) || void 0 === y + ? void 0 + : y.nameKey, + is_voice_clone: (0, S.$l)(ee, et) ? 1 : 0, + is_audio_to_audio: (0, S.eE)(null == H ? void 0 : H.lipSyncInfo) + ? 1 + : 0, + }); + } + }; + function H(e) { + var t, i, n, r; + return ( + null == e + ? void 0 + : null === (r = e.videoGenInputs) || void 0 === r + ? void 0 + : null === (n = r[0]) || void 0 === n + ? void 0 + : null === (i = n.firstFrameImage) || void 0 === i + ? void 0 + : null === (t = i.aigcImage) || void 0 === t + ? void 0 + : t.itemId + ) + ? a.px.TextToImageTOVideo + : a.px.Video; + } + }, + 193931: function (e, t, i) { + "use strict"; + i.d(t, { + DM: function () { + return l; + }, + Dx: function () { + return h; + }, + TH: function () { + return c; + }, + aV: function () { + return u; + }, + }); + var n = i(139646), + r = i(552786), + a = i(349817), + o = i(388977), + s = i(34878), + l = (e) => + e.status === r.Ve.BETA_AVAILABLE || e.status === r.Ve.RELEASED; + function c(e, t) { + return d.apply(this, arguments); + } + function d() { + return (d = (0, n._)(function* (e, t) { + var i = (0, o.ko)(e, a.q), + n = i.getValue(t); + return ( + !n && + (yield new Promise((e) => { + (0, s.V)(i.onInit)(() => { + (n = i.getValue(t)), e(void 0); + }); + })), + n && l(n) + ); + })).apply(this, arguments); + } + function u(e, t) { + return f.apply(this, arguments); + } + function f() { + return (f = (0, n._)(function* (e, t) { + var i = (0, o.ko)(e, a.q), + n = i.getValue(t); + return ( + !n && + (yield new Promise((e) => { + (0, s.V)(i.onInit)(() => { + (n = i.getValue(t)), e(void 0); + }); + })), + n && n.status !== r.Ve.UNAVAILABLE + ); + })).apply(this, arguments); + } + var h = (e) => { + var { featureDataReady: t, featureData: i } = e, + n = (null == i ? void 0 : i.status) !== r.Ve.RELEASED; + return { + showIcon: n, + disabled: + !t || + (null == i ? void 0 : i.status) === r.Ve.UNAVAILABLE || + (null == i ? void 0 : i.status) === r.Ve.BETA_INAVAILABLE, + }; + }; + }, + 519171: function (e, t, i) { + "use strict"; + function n(e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : 175, + i = 1.5, + n = 0.67, + { width: r = t, height: a = t } = e, + o = r / a; + return o > 1.5 + ? { width: "".concat(t, "px"), height: "".concat(t * n, "px") } + : o < n + ? { width: "".concat(t, "px"), height: "".concat(t * i, "px") } + : { width: "".concat(t, "px"), height: "".concat(t, "px") }; + } + i.d(t, { + T: function () { + return n; + }, + }); + }, + 644866: function (e, t, i) { + "use strict"; + i.d(t, { + O: function () { + return o; + }, + }); + var n = i(537201), + r = i(108982), + a = i(417281), + o = (e) => { + if (!e) return r.s.Unknown; + var t, + i, + { name: o, controlNetList: s } = e; + return o === a.UI.ControlNet + ? n.i[ + null !== + (i = + null == s + ? void 0 + : null === (t = s[0]) || void 0 === t + ? void 0 + : t.name) && void 0 !== i + ? i + : r.s.Unknown + ] + : n.i[o]; + }; + }, + 540611: function (e, t, i) { + "use strict"; + i.d(t, { + CI: function () { + return b; + }, + N3: function () { + return v; + }, + NN: function () { + return w; + }, + U7: function () { + return y; + }, + }); + var n = i(139646), + r = i(489897), + a = i(108982), + o = i(111709), + s = i(417281), + l = i(128468), + c = i(552786), + d = i(949274), + u = i(441361), + f = i(193931), + h = i(644866), + p = i(891602); + function v(e, t) { + return m.apply(this, arguments); + } + function m() { + return (m = (0, n._)(function* (e, t) { + var i = + arguments.length > 2 && void 0 !== arguments[2] && arguments[2], + [n, r, o] = yield Promise.all([ + (0, f.TH)(t, c.em.HUMAN_FACE_ENABLE), + (0, f.TH)(t, c.em.BG_PAINT_ENABLE), + (0, f.TH)(t, c.em.DREAMINA_SMART_REFERENCE), + ]), + s = []; + return ( + o && !i && s.push(a.s.ByteEdit), + r && s.push(a.s.BgPaint), + n && s.push(a.s.FaceGan), + !i && s.push(a.s.IpKeep), + !i && !e && s.push(a.s.StyleReference), + s.push( + a.s.ControlNetCanny, + a.s.ControlNetDepth, + a.s.ControlNetPose + ), + s + ); + })).apply(this, arguments); + } + function g(e, t) { + var i; + if ( + (null == t + ? void 0 + : null === (i = t.feats) || void 0 === i + ? void 0 + : i.includes(o.oo.IpKeep)) && + e.find((e) => e.name === s.UI.IpKeep) + ) + return !0; + } + function _(e, t) { + if (g(t, e) || !(null == e ? void 0 : e.feats)) return []; + var i = []; + for (var n of t) { + var r = (0, h.O)(n), + a = (0, p.CD)(r); + (!a || !e.feats.includes(a)) && i.push(r); + } + return i; + } + function y(e, t) { + var i = _(e, t), + n = {}, + a = i.length; + if (!a) return ""; + for (var o = 0; o < a; o++) n["string".concat(o)] = d.ZP.t(r.rj[i[o]]); + var s = [ + "", + "Can\u2019t reference {string0} with this model", + "Can\u2019t reference {string0} and {string1} with this model", + "Can\u2019t reference {string0}, {string1}, and {string2} with this model", + ]; + return d.ZP.t("controlnet_model_".concat(a), n, s[a]); + } + function b(e, t) { + var i; + return ( + !t.length || + ((null === (i = e.feats) || void 0 === i ? !!void 0 : !!i.length) && + (0, p.ox)(e, t)) + ); + } + function I(e) { + return new RegExp("(".concat(u.e1, ")")).test(null != e ? e : ""); + } + function w(e) { + var t, + { text2ImageParams: i, mode: n } = e; + return ( + n !== l.JU.Workbench && + I(null !== (t = i.prompt) && void 0 !== t ? t : "") + ); + } + }, + 891602: function (e, t, i) { + "use strict"; + i.d(t, { + CD: function () { + return s; + }, + bN: function () { + return c; + }, + ox: function () { + return f; + }, + }); + var n = i(338023), + r = i(108982), + a = i(111709), + o = i(644866); + function s(e) { + return { + [r.s.ControlNetCanny]: a.oo.Canny, + [r.s.ControlNetDepth]: a.oo.Depth, + [r.s.ControlNetPose]: a.oo.Pose, + [r.s.FaceGan]: a.oo.FaceWrap, + [r.s.BgPaint]: a.oo.BgPaint, + [r.s.IpKeep]: a.oo.IpKeep, + [r.s.StyleReference]: a.oo.StyleReference, + [r.s.ByteEdit]: a.oo.ByteEdit, + [r.s.BasicBlend]: void 0, + [r.s.ControlNet]: void 0, + [r.s.Image2image]: void 0, + [r.s.Text2image]: void 0, + [r.s.Unknown]: void 0, + [r.s.StyleCode]: a.oo.StyleCode, + }[e]; + } + function l(e) { + var t = new Map(); + for (var i of e) { + var n = t.get(i) || 0; + t.set(i, n + 1); + } + var r = [], + a = []; + for (var [o, s] of t) s > 1 && r.push(Array(s).fill(o)), a.push(o); + return { duplicateFeatures: r, standaloneFeatures: a }; + } + function c(e) { + return 1 === new Set(e).size; + } + function d(e, t) { + var i = function (t) { + var i; + if ( + null === (i = e.featsCantCombine) || void 0 === i + ? void 0 + : i.some((e) => c(e) && e.length <= t.length) + ) + return { v: !1 }; + }; + for (var r of t) { + var a = i(r); + if ("object" === (0, n._)(a)) return a.v; + } + return !0; + } + function u(e, t) { + var i; + return !(null === (i = e.featsCantCombine) || void 0 === i + ? void 0 + : i.some((e) => !c(e) && e.every((e) => t.includes(e)))); + } + function f(e, t) { + var i = t.map((e) => s((0, o.O)(e))).filter((e) => !!e); + if (!i.every((t) => e.feats.includes(t))) return !1; + if (i.length <= 1) return !0; + var { duplicateFeatures: n, standaloneFeatures: r } = l(i); + return !!d(e, n) && u(e, r); + } + }, + 880139: function (e, t, i) { + "use strict"; + i.d(t, { + _: function () { + return o; + }, + }); + var n = i(660178), + r = i(139646), + a = i(2910); + n.w.setConfig({ + projectId: 532, + subProjectName: "cc_dreamina", + customRoute: "", + reportOnly: !1, + storageKey: "ARGUS_STORAGE_OPEN_REDIRECT", + frontWhiteUrl: '["._______________",".vlabstatic.com"]', + frontBlackUrl: "[]", + bid: "cc_dreamina", + region: "cn", + cacheTimeFront: 12, + checkTimeLimit: 1.5, + limitLevel: 5, + }); + var o = (function () { + var e = (0, r._)(function* (e, t) { + var i = e, + r = null, + o = setTimeout(() => { + r = window.open( + n.w.protectUrl({ + targetUrl: (0, a.C)(i, null, { + logType: "js.window.location", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + filename: + "$ERJNWQy%kRP$EJo$jJSc1kyaz$hb%l5T$hkaF-zaHNXRE5D-%dSSFozWmpNMHBx$ERKT2RscEhWWFZa-m13d1dsZFJk$0l6%201T%1teHNZM2s1-zJSd$pHeFph$*w2WTIxTmRtTklTblph%0Zac$pFTT$kR1F5$m1sT%0wNT$XW*s1-W1Je%1-%mlNalIyWkZo%2NHSkl%WFpa-mtwMlpETk9iR05wT1haalIxWjF%Rz$TZW1WSFJub*FNM$o2", + isBlank: !0, + }), + "_blank" + ); + }, 200); + try { + (i = yield t()), + r && !r.closed + ? (r.location.href = (0, a.C)(i, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + })) + : (r = window.open( + n.w.protectUrl({ + targetUrl: (0, a.C)(i, null, { + logType: "js.window.location", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + filename: + "$ERJNWQy%kRP$EJo$jJSc1kyaz$hb%l5T$hkaF-zaHNXRE5D-%dSSFozWmpNMHBx$ERKT2RscEhWWFZa-m13d1dsZFJk$0l6%201T%1teHNZM2s1-zJSd$pHeFph$*w2WTIxTmRtTklTblph%0Zac$pFTT$kR1F5$m1sT%0wNT$XW*s1-W1Je%1-%mlNalIyWkZo%2NHSkl%WFpa-mtwMlpETk9iR05wT1haalIxWjF%Rz$TZW1WSFJub*FNM$o2", + isBlank: !0, + }), + "_blank" + )); + } catch (e) { + o && clearTimeout(o), null == r || r.close(); + } + }); + return function (t, i) { + return e.apply(this, arguments); + }; + })(); + }, + 6080: function (e, t, i) { + "use strict"; + function n(e) { + var t = { ratioWidth: 1, ratioHeight: 0.66 }, + i = { ratioWidth: 1, ratioHeight: 1.33 }, + n = { ratioWidth: 1, ratioHeight: 1.16 }, + r = { ratioWidth: 1, ratioHeight: 1 }; + switch (e) { + case 2: + return t; + case 3: + return n; + case 4: + default: + return r; + case 5: + case 6: + case 7: + case 8: + case 9: + return i; + } + } + function r(e, t, i) { + var r = { ratioWidth: 1, ratioHeight: 1 }; + return t && i + ? 1 === e + ? { ratioWidth: 1, ratioHeight: i / t } + : n(e) + : r; + } + i.d(t, { + q: function () { + return r; + }, + y: function () { + return n; + }, + }); + }, + 899229: function (e, t, i) { + "use strict"; + i.d(t, { + S9: function () { + return w; + }, + cq: function () { + return M; + }, + dt: function () { + return f; + }, + xc: function () { + return C; + }, + }); + var n = i(799108), + r = i(869919), + a = i(388977), + o = i(19658), + s = i(561658), + l = i(949274), + c = i(540457), + d = i(418188), + u = i(760021), + f = (function (e) { + return ( + (e.V1 = "v1"), + (e.V2CharVideo = "v2_char_video"), + (e.V2 = "v2"), + (e.V2Audio = "v2_audio"), + (e.V2ThirdParty = "v2_third_party"), + (e.V2ImageResolutionType = "v2_image_resolution_type"), + (e.V2ImagePostEdit = "v2_image_post_edit"), + e + ); + })({}), + h = { + normal: n.vJ.LipSync1, + fluency: n.vJ.LipSync2, + cinematic: n.vJ.LipSync2, + }, + p = { + [n.hO.GenerateButton]: { + normal: n.vJ.BasicVideoOperation1, + fluency: n.vJ.BasicVideoOperation2, + cinematic: n.vJ.BasicVideoOperation2, + }, + [n.hO.RetryButton]: { + normal: n.vJ.RetryVideoOperation1, + fluency: n.vJ.RetryVideoOperation2, + cinematic: n.vJ.RetryVideoOperation2, + }, + [n.hO.ExtendSeconds]: { + normal: n.vJ.ExtendVideo1, + fluency: n.vJ.ExtendVideo2, + cinematic: n.vJ.ExtendVideo2, + }, + [n.hO.ContinueLabUpscaleVideo]: { + normal: n.vJ.VideoContinueGenerate1, + fluency: n.vJ.VideoContinueGenerate2, + cinematic: n.vJ.VideoContinueGenerate2, + }, + [n.hO.LipSync]: h, + [n.hO.LipSyncButton]: h, + [n.hO.ReDub]: h, + [n.hO.ReDubButton]: h, + [n.hO.GenerateVideoBGM]: { + normal: n.vJ.VideoBgmGeneration, + fluency: n.vJ.VideoBgmGeneration, + cinematic: n.vJ.VideoBgmGeneration, + }, + }, + v = "model_generate_flux", + m = { + [n.hO.ImageBasicGenerate]: { + image_model_mode: { [v]: n.vJ.ImageFluxModelGenerate }, + }, + [n.hO.ImageRetryButton]: { + image_model_mode: { [v]: n.vJ.ImageFluxModelGenerate }, + }, + }, + g = (e) => [n.hO.ImageBasicGenerate, n.hO.ImageRetryButton].includes(e), + _ = { + [n.hO.AudioBasicGenerate]: { + audioSong: n.vJ.AudioSongGenerate, + audioInstrumental: n.vJ.AudioSongGenerate, + }, + [n.hO.AudioBasicReGenerate]: { + audioSong: n.vJ.AudioSongGenerate, + audioInstrumental: n.vJ.AudioSongGenerate, + }, + }, + y = (e) => + [n.hO.AudioBasicGenerate, n.hO.AudioBasicReGenerate].includes(e), + b = { + [r.tB.LipSyncDefault]: n.vJ.lipSyncAvatarStd, + [r.tB.Default]: n.vJ.lipSyncAvatarStd, + [r.tB.Livephoto]: n.vJ.lipSyncAvatarStd, + [r.tB.Preview]: n.vJ.lipSyncAvatarStd, + [r.tB.LipSyncLively]: n.vJ.lipSyncAvatarLively, + [r.tB.LipSyncMaster]: n.vJ.lipSyncAvatarMaster, + [r.tB.LipSyncMasterFast]: n.vJ.lipSyncAvatarMasterFast, + }, + I = (e, t) => { + if (e === r.tB.LipSyncMaster) { + var i; + return (0, a.ko)(t, o.S).serverAbTestManager.getBooleanAbTestValue( + u.G.dreaminaOmniVip + ) + ? n.vJ.lipSyncAvatarMasterVip + : n.vJ.lipSyncAvatarMaster; + } + return null !== (i = b[e]) && void 0 !== i + ? i + : b[r.tB.LipSyncDefault]; + }, + w = (e) => + !!e && + [ + n.hO.Character2Video, + n.hO.Character2VideoSwitch, + n.hO.RetryCharacter2Video, + ].includes(e), + x = (e) => + [ + n.hO.GenerateButton, + n.hO.RetryButton, + n.hO.ExtendSeconds, + n.hO.LipSync, + n.hO.LipSyncButton, + n.hO.ReDub, + n.hO.ReDubButton, + n.hO.ContinueLabUpscaleVideo, + n.hO.GenerateVideoBGM, + ].includes(e), + S = { + normal: r.WP.Normal, + fluency: r.WP.Fluency, + cinematic: r.WP.Cinematic, + }, + M = (e) => { + var { scene: t, sceneOptions: i } = e; + try { + switch (null == i ? void 0 : i.version) { + case "v1": + default: + return n.sV[t]; + case "v2": + var { mode: r, modelReqKey: o, containerService: u } = i; + if ( + o && + [ + n.hO.GenerateButton, + n.hO.RetryButton, + n.hO.VideoModelSwitch, + ].includes(t) + ) { + var f, + h, + v, + b, + M, + C = (0, a.ko)(u, s.N).videoModelManager, + T = + null === (f = C.getModelByReqKey(o)) || void 0 === f + ? void 0 + : f.commercialConfig, + A = + null == T + ? void 0 + : null === (h = T.default) || void 0 === h + ? void 0 + : h.benefitType, + k = l.ZP.t( + null !== (M = null == T ? void 0 : T.format) && + void 0 !== M + ? M + : "", + { fps: S[r] }, + null == T ? void 0 : T.format + ), + P = + null == T + ? void 0 + : null === (b = T.formatConf) || void 0 === b + ? void 0 + : null === (v = b[k]) || void 0 === v + ? void 0 + : v.benefitType; + if ((P && (A = P), A)) return (0, c.Z)(A); + } + if (x(t)) return p[t][r]; + return n.sV[t]; + case "v2_audio": + var { mode: E } = i; + if (y(t)) return _[t][E]; + return n.sV[t]; + case "v2_char_video": + if (w(t)) { + var { characterMode: D } = i; + return I(D, i.containerService); + } + return n.sV[t]; + case "v2_third_party": + if (g(t)) { + var R, + { modelReqKey: N, mode: L } = i; + if ( + N && + (null === (R = m[t][L]) || void 0 === R ? void 0 : R[N]) + ) + return m[t][L][N]; + } + return n.sV[t]; + case "v2_image_resolution_type": + return n.sV[n.hO.ImageUhd]; + case "v2_image_post_edit": + var j, + { generateType: O } = i; + return n.sV[ + null !== (j = d.Od[O]) && void 0 !== j + ? j + : n.hO.ImageBasicGenerate + ]; + } + } catch (e) {} + return n.sV[t]; + }, + C = (e) => { + switch (e) { + case r.WP.Normal: + return "normal"; + case r.WP.Fluency: + return "fluency"; + case r.WP.Cinematic: + return "cinematic"; + default: + return "normal"; + } + }; + }, + 664306: function (e, t, i) { + "use strict"; + i.d(t, { + K6: function () { + return o; + }, + MJ: function () { + return r; + }, + XA: function () { + return a; + }, + }); + var n = i(799108), + r = (e) => { + var { scene: t } = e; + return n.wZ[n.sV[t]] === n.lK.Video; + }, + a = (e) => { + var { scene: t } = e; + return n.wZ[n.sV[t]] === n.lK.Image; + }, + o = (e) => { + var { scene: t } = e; + return n.wZ[n.sV[t]] === n.lK.Audio; + }; + }, + 27433: function (e, t, i) { + "use strict"; + i.d(t, { + A6: function () { + return M; + }, + HU: function () { + return D; + }, + J3: function () { + return k; + }, + KC: function () { + return w; + }, + Mz: function () { + return g; + }, + Qp: function () { + return b; + }, + Rg: function () { + return L; + }, + Rn: function () { + return T; + }, + Rp: function () { + return S; + }, + Tz: function () { + return N; + }, + VM: function () { + return A; + }, + X4: function () { + return P; + }, + be: function () { + return _; + }, + c3: function () { + return E; + }, + e6: function () { + return m; + }, + fS: function () { + return C; + }, + ru: function () { + return I; + }, + uL: function () { + return x; + }, + zh: function () { + return R; + }, + }); + var n = i(799108), + r = i(870730), + a = i(839141), + o = i(417281), + s = i(111709), + l = i(804362), + c = i(194488), + d = i(664306), + u = i(899229), + f = i(727280), + h = i(949274); + a.d.None, a.d.Standard, a.d.Artisan, a.d.Maestro; + var p = { + [a.d.None]: "free", + [a.d.Standard]: "standard", + [a.d.Artisan]: "artisan", + [a.d.Maestro]: "maestro", + }, + v = (e) => { + var { scene: t } = e; + switch (!0) { + case (0, d.MJ)({ scene: t }): + return n.Zw; + case (0, d.XA)({ scene: t }): + return n.jk; + case (0, d.K6)({ scene: t }): + return n.O6; + default: + return ""; + } + }, + m = (e) => { + var { + scene: t, + extraBenefits: i = [], + sceneOptions: n, + commercialStrategyService: r, + } = e; + if (!(null == r ? void 0 : r.isReady)) return !1; + var a = v({ scene: t }); + return (0, c.Z)([ + (0, u.cq)({ scene: t, sceneOptions: n }), + ...i, + ]).some((e) => { + var t, + i = r.getBenefitPaidStrategyFromResource(a, e); + return ( + i.length > 0 && + ("vip" === i[0].userLimit || + !!(null == i + ? void 0 + : null === (t = i[0].vipLevelLimit) || void 0 === t + ? void 0 + : t.length)) + ); + }); + }, + g = (e) => { + var t, + { + scene: i, + sceneOptions: r, + extraBenefits: o = [], + commercialStrategyService: s, + } = e; + if (!(null == s ? void 0 : s.isReady)) return a.d.None; + var l = v({ scene: i }), + d = (0, c.Z)([(0, u.cq)({ scene: i, sceneOptions: r }), ...o]), + f = []; + for (var h of d) { + var p, + m, + g, + _, + y = s.getBenefitPaidStrategyFromResource(l, h); + y.length > 0 && + ("vip" === y[0].userLimit || + (null == y + ? void 0 + : null === (g = y[0]) || void 0 === g + ? void 0 + : null === (m = g.vipLevelLimit) || void 0 === m + ? void 0 + : m.length)) && + f.push( + ...(null !== (_ = null == y ? void 0 : y[0].vipLevelLimit) && + void 0 !== _ + ? _ + : [a.d.Standard]) + ); + } + return null !== + (t = + null === (p = (0, c.Z)(f).sort((e, t) => n.KV[e] - n.KV[t])) || + void 0 === p + ? void 0 + : p[0]) && void 0 !== t + ? t + : a.d.None; + }, + _ = (e) => { + var { + scene: t, + sceneOptions: i, + extraBenefits: n = [], + commercialStrategyService: a, + } = e; + if ( + !(null == a ? void 0 : a.isReady) || + (null == a ? void 0 : a.isInFreemiumStage) + ) + return { + isStrategyFreeTrial: !1, + strategyFreeTrialTimes: 0, + trialType: r.a.nonTrial, + }; + var o = v({ scene: t }), + s = (0, c.Z)([(0, u.cq)({ scene: t, sceneOptions: i }), ...n]), + l = 0, + d = r.a.nonTrial; + return ( + s.forEach((e) => { + for (var t of a.getBenefitPaidStrategyFromResource(o, e)) { + var i, + n = + null === (i = t.promotion) || void 0 === i + ? void 0 + : i.remainTrialInfo, + s = (null == n ? void 0 : n.trialType) === "times", + c = s && n.remainValue > 0; + if ((s && (d = r.a.limitTimes), n && c)) { + l = n.remainValue; + continue; + } + } + }), + { + isStrategyFreeTrial: !!l, + strategyFreeTrialTimes: l, + trialType: d, + } + ); + }, + y = (e) => { + var { scene: t, videoDuration: i = 0 } = e; + return Number.isFinite(i) + ? t === n.hO.ActionCopy || t === n.hO.RegenerateActionCopy + ? Math.min(i, 30) + : i + : 3; + }, + b = (e) => { + var { + scene: t, + extraBenefits: i = [], + sceneOptions: r, + commercialStrategyService: a, + batchNumber: o = 1, + discount: s = 0, + } = e; + if ( + !(null == a ? void 0 : a.isReady) || + (null == a ? void 0 : a.isInFreemiumStage) + ) + return { + credits: 0, + originalCredits: 0, + details: [], + strategyFreeTrialTimes: 0, + }; + var l = y(e), + f = v({ scene: t }), + h = (0, c.Z)([(0, u.cq)({ scene: t, sceneOptions: r }), ...i]), + p = [], + m = [], + g = 0; + h.forEach((e) => { + for (var i of a.getBenefitPaidStrategyFromResource(f, e)) { + if ( + "user_credit" === i.paidMode && + !!(null === (r = i.consumeInfo) || void 0 === r + ? void 0 + : r.length) + ) { + var r, + c, + u = + null === (c = i.promotion) || void 0 === c + ? void 0 + : c.remainTrialInfo, + h = + (null == u ? void 0 : u.trialType) === "times" && + u.remainValue > 0; + if (u && h) { + g = u.remainValue; + continue; + } + for (var v of i.consumeInfo) { + if ( + "user_credit" === v.consumeBenefitType && + !!v.creditExchange + ) { + var { creditAmount: _, curBenefitAmount: y } = + v.creditExchange, + b = _ / y, + I = (0, d.MJ)({ scene: t }) ? l : 1, + w = s + ? b * Math.round(I) * o + : Math.floor(b * Math.round(I)) * o; + n.SN.has(e) + ? m.push({ + benefit: e, + amount: I, + creditsPerUnit: b, + credits: w, + }) + : p.push({ + benefit: e, + amount: I, + creditsPerUnit: b, + credits: w, + }); + } + } + } + } + }); + var _ = m.sort((e, t) => t.credits - e.credits).at(0); + _ && p.push(_); + var b = p.reduce((e, t) => e + t.credits, 0); + return { + credits: s ? Math.round((s * b) / o / 100) * o : Math.floor(b), + originalCredits: b, + details: p, + strategyFreeTrialTimes: g, + }; + }, + I = (e) => { + var t = []; + return ( + e.forEach((e) => { + switch (e.name) { + case o.UI.ControlNet: + (e.controlNetList || []).forEach((e) => { + var i = { + [o.kR.ControlNetCanny]: n.vJ.ImageControlNetCanny, + [o.kR.ControlNetDepth]: n.vJ.ImageControlNetDepth, + [o.kR.ControlNetPose]: n.vJ.ImageControlNetPose, + [o.kR.ControlNetBgPaint]: n.vJ.ImageControlNetObject, + }[e.name]; + i && t.push(i); + }); + break; + case o.UI.FaceGan: + t.push(n.vJ.ImageControlNetHumanFace); + break; + case o.UI.BgPaint: + t.push(n.vJ.ImageControlNetObject); + break; + case o.UI.IpKeep: + t.push(n.vJ.ImageIpKeep); + break; + case o.UI.StyleReference: + t.push(n.vJ.ImageStyleReference); + break; + case o.UI.ByteEdit: + t.push(n.vJ.ImageByteEdit); + break; + case o.UI.StyleCode: + var i = (0, f.DX)(e) + ? n.vJ.ImageStyleReference + : n.vJ.ImageStyleCode; + t.push(i); + } + }), + t + ); + }, + w = (e) => e.feats.includes(s.Wn.ThirdParty), + x = (e) => + w(e) + ? { + version: u.dt.V2ThirdParty, + modelReqKey: e.modelReqKey, + mode: "image_model_mode", + } + : void 0, + S = () => ({ version: u.dt.V2ImageResolutionType }), + M = (e) => ({ version: u.dt.V2ImagePostEdit, generateType: e }), + C = (e) => { + var t, + i, + r, + a, + o, + s, + l, + c, + d, + f, + h, + v, + m, + { + scene: g, + sceneOptions: _, + commercialStrategyService: y, + vipService: b, + discountType: I, + } = e; + if ( + !(null == y ? void 0 : y.isReady) || + !(null == b ? void 0 : b.isVipReady) || + (null == y ? void 0 : y.isInFreemiumStage) + ) + return { discount: void 0, disabled: !0 }; + var w = y.getBenefitPaidStrategyFromResource( + n.Zw, + (0, u.cq)({ scene: g, sceneOptions: _ }) + ); + if (w.length <= 0) return { discount: void 0, disabled: !0 }; + var { relaxModeInfo: x, discount: S } = w[0], + M = b.currentVipLevel, + C = I ? (null == S ? void 0 : S[I]) : void 0, + T = !0; + switch (I) { + case "previewMode": + (t = { + free: + null !== (i = null == C ? void 0 : C.free) && void 0 !== i + ? i + : 0, + standard: + null !== (r = null == C ? void 0 : C.standard) && void 0 !== r + ? r + : 0, + artisan: + null !== (a = null == C ? void 0 : C.artisan) && void 0 !== a + ? a + : 0, + maestro: + null !== (o = null == C ? void 0 : C.maestro) && void 0 !== o + ? o + : 0, + }), + (T = void 0 === C); + break; + case "relaxMode": + (t = { + free: + null !== + (l = + null !== (s = null == C ? void 0 : C.free) && void 0 !== s + ? s + : null == x + ? void 0 + : x.freeUserRelaxDiscount) && void 0 !== l + ? l + : 0, + standard: + null !== + (d = + null !== (c = null == C ? void 0 : C.standard) && + void 0 !== c + ? c + : null == x + ? void 0 + : x.standardVipRelaxDiscount) && void 0 !== d + ? d + : 0, + artisan: + null !== + (h = + null !== (f = null == C ? void 0 : C.artisan) && + void 0 !== f + ? f + : null == x + ? void 0 + : x.artisanVipRelaxDiscount) && void 0 !== h + ? h + : 0, + maestro: + null !== + (m = + null !== (v = null == C ? void 0 : C.maestro) && + void 0 !== v + ? v + : null == x + ? void 0 + : x.maestroVipRelaxDiscount) && void 0 !== m + ? m + : 0, + }), + (T = x ? 0 === Object.keys(x).length : void 0 === C); + } + return { + discount: null == t ? void 0 : t[p[M]], + disabled: T, + discountMap: t, + }; + }, + T = (e) => { + var { isRelaxMode: t, isPreviewMode: i } = e; + switch (!0) { + case t: + return "relaxMode"; + case i: + return "previewMode"; + default: + return null; + } + }, + A = (e) => { + if (!!e) return (100 - e).toFixed(0); + }, + k = (e) => { + var { canLowPriceTrial: t, lowPriceTrialInfo: i } = e || {}, + { trialCycle: n, trialCycleUnit: r } = i || {}; + return !!(t && Number(n) > 0 && r); + }, + P = (e) => { + if ((null == e ? void 0 : e.priceType) === "un-auto") return !1; + var { secondPromoteInfo: t, promoteType: i } = e || {}, + { introPeriod: n, introCycleUnit: r } = t || {}; + return i === l.I.INTRO || !!("number" == typeof n && r); + }, + E = (e) => + e.find( + (e) => + e.level === a.d.Standard && + "auto" === e.priceType && + 1 === e.subscribeCycle && + k(e) + ), + D = (e) => { + var t = 10 * e; + return Number.isInteger(t) + ? "".concat(t.toFixed(0)) + : "".concat(Math.ceil(t)); + }, + R = (e, t) => { + var i = e / 100, + n = 2; + return (t >= 0 && t <= 20 && (n = t), Number.isInteger(i)) + ? "".concat(i) + : "".concat(i.toFixed(n)); + }, + N = (e) => { + if (!e) return h.ZP.t("dre_m10n_sub_btn_upgrade", {}, "Upgrade"); + var { lowPriceTrialInfo: t } = e, + { trialPrice: i } = t, + n = R(i, 2); + return h.ZP.t("free_trial_normal_des", { price: n }); + }, + L = (e) => { + var t, + i, + n, + a, + o = { + user_trial_type: r.Z.none, + user_trial_days: 0, + user_trial_price: -1, + }; + return e + ? k(e) && P(e) + ? { + user_trial_type: r.Z.multiDiscount, + user_trial_days: + (null == e + ? void 0 + : null === (t = e.lowPriceTrialInfo) || void 0 === t + ? void 0 + : t.trialCycle) || 0, + user_trial_price: + (null == e + ? void 0 + : null === (i = e.lowPriceTrialInfo) || void 0 === i + ? void 0 + : i.trialPrice) || -1, + } + : k(e) + ? { + user_trial_type: r.Z.freeTrial, + user_trial_days: + (null == e + ? void 0 + : null === (n = e.lowPriceTrialInfo) || void 0 === n + ? void 0 + : n.trialCycle) || 0, + user_trial_price: + (null == e + ? void 0 + : null === (a = e.lowPriceTrialInfo) || void 0 === a + ? void 0 + : a.trialPrice) || -1, + } + : o + : o; + }; + }, + 755769: function (e, t, i) { + "use strict"; + i.d(t, { + M: function () { + return o; + }, + t: function () { + return s; + }, + }); + var n = i(799108), + r = i(899229), + a = i(27433), + o = (e) => { + if (!(null == e ? void 0 : e.taskDetail)) return 1 / 0; + var t, + i, + n, + r, + a, + o, + s, + l, + c, + d, + u, + f, + h = + null == e + ? void 0 + : null === (i = e.inputParams) || void 0 === i + ? void 0 + : null === (t = i.v2vOpt) || void 0 === t + ? void 0 + : t.videoTemplate, + p = + null === (n = e.taskDetail.lipSyncInfo) || void 0 === n + ? void 0 + : n.lipSyncExtra; + return ( + (null == p + ? void 0 + : null === (r = p.video) || void 0 === r + ? void 0 + : r.duration) || + (null == p + ? void 0 + : null === (a = p.audio) || void 0 === a + ? void 0 + : a.duration) || + ((null == h + ? void 0 + : null === (o = h.videoInfo) || void 0 === o + ? void 0 + : o.durationMs) || + (null == h + ? void 0 + : null === (l = h.videoTemplateItem) || void 0 === l + ? void 0 + : null === (s = l.video) || void 0 === s + ? void 0 + : s.durationMs) || + 0) / 1e3 || + (null == h + ? void 0 + : null === (c = h.videoInfo) || void 0 === c + ? void 0 + : c.duration) || + (null === (d = e.videoDetail) || void 0 === d + ? void 0 + : d.duration) || + (( + null == e + ? void 0 + : null === (u = e.inputParams) || void 0 === u + ? void 0 + : u.originDurationMs + ) + ? (null == e + ? void 0 + : null === (f = e.inputParams) || void 0 === f + ? void 0 + : f.originDurationMs) / 1e3 + : void 0) || + 1 / 0 + ); + }, + s = (e, t, i) => { + var { disabled: o } = (0, a.fS)({ + scene: n.hO.GenerateButton, + sceneOptions: { + version: r.dt.V2, + mode: (0, r.xc)(i), + modelReqKey: t, + containerService: e, + }, + discountType: (0, a.Rn)({ isPreviewMode: !0 }), + }); + return !o; + }; + }, + 259435: function (e, t, i) { + "use strict"; + i.d(t, { + C: function () { + return o; + }, + X: function () { + return a; + }, + }); + var n = i(388977), + r = i(555192), + a = (e, t) => (0, n.ko)(e, r.u).getContextViewById(t), + o = (e, t) => { + var i = (0, n.ko)(e, r.u), + a = document.createElement("div"); + return ( + (a.id = "#modal_context_".concat(t)), + i.createContextView({ id: t, component: null }, a) + ); + }; + }, + 228342: function (e, t, i) { + "use strict"; + i.d(t, { + O: function () { + return r; + }, + U: function () { + return o; + }, + }); + var n = i(331359); + function r(e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 1, + i = parseInt(e.substring(1, 3), 16), + n = parseInt(e.substring(3, 5), 16), + r = parseInt(e.substring(5, 7), 16); + return "rgba(" + .concat(i, ",") + .concat(n, ",") + .concat(r, ",") + .concat(t, ")"); + } + var a = /^\#([A-Fa-f0-9]{3}|[A-Fa-f0-9]{6})$/i; + function o(e, t) { + a.test(e) && (e = r(e)); + var i, + o = ( + null !== (i = e.match(/\d+(\.?\d+)?/g)) && void 0 !== i ? i : [] + ).map(Number); + return t && o[3] <= 1 && (o[3] *= n.fL), o; + } + }, + 863209: function (e, t, i) { + "use strict"; + i.d(t, { + FT: function () { + return b; + }, + X: function () { + return w; + }, + Zw: function () { + return m; + }, + eB: function () { + return g; + }, + gp: function () { + return C; + }, + pT: function () { + return y; + }, + ue: function () { + return _; + }, + zb: function () { + return S; + }, + }); + var n = i(139646), + r = i(2910), + a = i(68809), + o = i(591586), + s = i(229025), + l = i(997166), + c = i(405013), + d = i(334766), + u = i(719494), + f = 100, + h = /\([\d+]+\)$/g, + p = Math.floor(1e3 * Math.random()); + function v() { + return ++p; + } + function m(e) { + var t = /[<>:"\/\\|?*\x00-\x1F]/g; + return e.replace(t, "_"); + } + function g(e) { + var t, + i, + n = e.split("."), + r = n.length > 1 ? n[n.length - 1] : "", + a = e.slice(0, e.length - (r ? ".".concat(r).length : 0)), + o = + null !== + (i = null === (t = a.match(h)) || void 0 === t ? void 0 : t[0]) && + void 0 !== i + ? i + : "", + s = a + .slice(0, a.length - o.length) + .replace(/\n/g, " ") + .trim(); + return "" + .concat(s.slice(0, f)) + .concat(s.length > f ? "..." : "") + .concat(o, ".") + .concat(r); + } + var _ = (function () { + var e = (0, n._)(function* (e, t, i, n) { + if (!e) return !1; + try { + var a = yield fetch(e); + if (null == n ? void 0 : n()) + return Promise.reject(Error("cancel")); + var o = yield a.blob(); + if (null == n ? void 0 : n()) + return Promise.reject(Error("cancel")); + var s = URL.createObjectURL(o), + l = document.createElement("a"); + return ( + (l.href = (0, r.C)(s, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + })), + (l.download = g(t)), + document.body.appendChild(l), + l.click(), + document.body.removeChild(l), + window.URL.revokeObjectURL(s), + !0 + ); + } catch (n) { + return ( + null == i || + i.reportDevError("handleDownloadImage", n, { + url: e, + fileName: t, + }), + !1 + ); + } + }); + return function (t, i, n, r) { + return e.apply(this, arguments); + }; + })(); + function y(e, t) { + return fetch(e) + .then((e) => { + if (!e.ok) throw Error("HTTP error! Status: ".concat(e.status)); + return e.blob(); + }) + .then((e) => { + if (0 === e.size) throw Error("Downloaded file is empty."); + var i = window.URL.createObjectURL(e), + n = document.createElement("a"); + (n.href = (0, r.C)(i, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + })), + (n.download = g(t)), + document.body.appendChild(n), + n.click(), + setTimeout(() => { + window.URL.revokeObjectURL(i), n.remove(); + }, 100); + }) + .catch((e) => { + throw (o.t.error(e), e); + }); + } + function b(e) { + return I.apply(this, arguments); + } + function I() { + return (I = (0, n._)(function* (e) { + var t, + i, + n, + r, + o, + { record: s, contentGenerateService: f, imageIndex: h = 0 } = e, + p = yield (0, d.J5)({ + itemId: + null === (t = s.imageList[h]) || void 0 === t + ? void 0 + : t.itemId, + publishedItemId: + null === (i = s.imageList[h]) || void 0 === i + ? void 0 + : i.publishedItemId, + contentGenerateService: f, + }), + m = "jimeng-" + .concat((0, c.vc)("yyyy-MM-dd", s.createdTime), "-") + .concat(v(), "-") + .concat( + (0, u.Lr)( + (0, a.h)((0, l.IA)(s.itemList[0].aigcImageParams)), + 100 + ) + ), + g = + null !== + (o = + null === (r = s.itemList[h]) || void 0 === r + ? void 0 + : null === (n = r.image) || void 0 === n + ? void 0 + : n.format) && void 0 !== o + ? o + : "png"; + return { + url: null != p ? p : "", + fileName: "".concat(m, ".").concat(g), + fileNameWithoutExt: m, + format: g, + }; + })).apply(this, arguments); + } + function w(e, t, i) { + return x.apply(this, arguments); + } + function x() { + return (x = (0, n._)(function* (e, t, i) { + if (!(null == e ? void 0 : e.image)) return { url: "", fileName: "" }; + var n, + r, + o, + u = + null !== + (r = yield (0, d.J5)({ + contentGenerateService: t, + itemId: e.commonAttr.id, + publishedItemId: e.commonAttr.publishedItemId, + })) && void 0 !== r + ? r + : "", + f = (0, a.h)((0, l.IA)(e.aigcImageParams)), + h = + null !== + (o = + null === (n = e.image) || void 0 === n ? void 0 : n.format) && + void 0 !== o + ? o + : "png"; + return { + url: u, + fileName: (f = "" + .concat( + f || + (0, c.vc)( + "yyyy-MM-dd hh:mm:ss", + (0, s.Qd)(null != i ? i : e.commonAttr.createTime) + ), + "." + ) + .concat(h)), + }; + })).apply(this, arguments); + } + function S(e, t, i) { + return M.apply(this, arguments); + } + function M() { + return (M = (0, n._)(function* (e, t, i) { + var r, + o, + s, + l, + f = + null !== + (s = ( + (null == i ? void 0 : i.selectedImageList) + ? i.selectedImageList + : e.imageList + ).map( + (function () { + var e = (0, n._)(function* (e) { + var i; + return null !== + (i = yield (0, d.J5)({ + itemId: e.itemId, + publishedItemId: e.publishedItemId, + contentGenerateService: t, + })) && void 0 !== i + ? i + : ""; + }); + return function (t) { + return e.apply(this, arguments); + }; + })() + )) && void 0 !== s + ? s + : [], + h = yield Promise.all(f), + p = (0, a.h)(e.text2ImageParams.prompt), + g = "jimeng-" + .concat((0, c.vc)("yyyy-MM-dd", e.createdTime), "-") + .concat(v(), "-") + .concat((0, u.Lr)(m(p) || "", 100)), + _ = + null !== + (l = + null === (o = e.itemList[0]) || void 0 === o + ? void 0 + : null === (r = o.image) || void 0 === r + ? void 0 + : r.format) && void 0 !== l + ? l + : "png"; + return { + urls: h, + fileName: "".concat(g, ".").concat(_), + fileNameWithoutExt: g, + format: _, + }; + })).apply(this, arguments); + } + function C(e, t) { + var i = document.createElement("a"); + i.href = (0, r.C)(e, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }); + var n = g("".concat(t, ".zip")); + (i.download = n), i.click(), i.remove(); + } + }, + 460537: function (e, t, i) { + "use strict"; + function n(e) { + if (e instanceof Error) return e; + try { + return Error(JSON.stringify(e)); + } catch (t) { + return Error(String(e)); + } + } + i.d(t, { + b: function () { + return n; + }, + }); + }, + 741310: function (e, t, i) { + "use strict"; + i.d(t, { + fK: function () { + return p; + }, + oO: function () { + return f; + }, + rA: function () { + return d; + }, + z8: function () { + return h; + }, + }); + var n = i(139646), + r = i(625572), + a = i(700689), + o = i(712942), + s = i(949274), + l = (0, o.nk)(), + c = (0, a.e)(); + c.interceptors.request.use( + (e) => (Object.assign(e.headers, l.header), e) + ); + var d = (e) => { + var { aid: t, app_name: i } = l, + n = new FormData(); + return ( + n.append("aid", t), + n.append("watermark", "1"), + n.append("app_name", i), + n.append("image", e), + c({ method: "post", url: l.url, data: n }) + ); + }, + u = (function () { + var e = (0, n._)(function* (e) { + var { aid: t, appkey: i, app_name: n } = l; + return ( + e.append("aid", t), + e.append("app_name", n), + e.append("appkey", i), + e.append("multi_image", "1"), + (yield c({ + method: "post", + url: "/feedback/2/post_message/?appkey=" + .concat(i, "&app_name=") + .concat(n, "&aid=") + .concat(t), + data: e, + headers: { "Content-Type": "multipart/form-data" }, + })).data + ); + }); + return function (t) { + return e.apply(this, arguments); + }; + })(), + f = function (e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : "", + { + contact: i, + questionDesc: n, + uploadedMap: a, + selectedQuestionList: o, + } = e, + l = Object.values(a).map((e) => ({ + image_width: e.ImageWidth, + image_height: e.ImageHeight, + image_uri: e.ImageUri, + })), + c = { is_private_image: 1, web_id: t }, + d = new FormData(); + return ( + d.append("contact", i), + d.append("content", n), + d.append("image_list", JSON.stringify(l)), + d.append("extra_params", JSON.stringify((0, r._)({}, c))), + d.append("selected_question_list", JSON.stringify(o)), + d.append( + "extra_persistent_params", + JSON.stringify({ + custom_field_info: { + selected_question_list: JSON.stringify( + o.map((e) => s.oc.t(e, {}, e)).join(";") + ), + }, + }) + ), + u(d) + ); + }, + h = (e) => { + var { suggestion: t } = e, + i = new FormData(); + return i.append("content", t), u(i); + }, + p = (e) => { + var { reasonDescList: t, reasonKeyList: i, localItemId: n } = e, + r = new FormData(); + return ( + r.append("content", t.join(";")), + r.append("reason_key_list", i.join(";")), + r.append("local_item_id", n), + r.append( + "extra_persistent_params", + JSON.stringify({ + custom_field_info: { + reason_key_list: i.map((e) => s.oc.t(e, {}, e)).join(";"), + }, + }) + ), + u(r) + ); + }; + }, + 645078: function (e, t, i) { + "use strict"; + i.d(t, { + V: function () { + return o; + }, + r: function () { + return s; + }, + }); + var n = i(139646), + r = i(226737), + a = i(966465).Buffer, + o = (e) => { + var t = r.createHash("md5"); + return t.update(e), t.digest("hex"); + }, + s = (function () { + var e = (0, n._)(function* (e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] && arguments[1]; + try { + var i = yield e.arrayBuffer(), + n = r.createHash("md5").update(a.from(i)).digest("hex"); + if (t) { + var s = o(e.name); + return "".concat(n, "-").concat(s); + } + return n; + } catch (t) { + return "".concat(e.name, "-").concat(e.size, "-").concat(e.type); + } + }); + return function (t) { + return e.apply(this, arguments); + }; + })(); + }, + 187796: function (e, t, i) { + "use strict"; + i.d(t, { + $N: function () { + return r; + }, + MK: function () { + return s; + }, + iI: function () { + return a; + }, + }); + var n = i(248928), + r = (e) => (0, n.$N)(e), + a = (e) => { + if (!!e) { + var t = Object.keys(e) + .filter((e) => isFinite(Number(e))) + .sort((e, t) => Number(e) - Number(t)); + return e[t[0]]; + } + }, + o = (e) => { + var t = Object.keys(e) + .filter((e) => isFinite(Number(e))) + .sort((e, t) => Number(e) - Number(t)); + return e[t[t.length - 1]]; + }, + s = (e, t) => { + if (!e) return t; + var i = o(e); + return i || t; + }; + }, + 200953: function (e, t, i) { + "use strict"; + function n(e, t) { + var { x: i, y: n } = e, + { x: r, y: a } = t, + o = (a - n) / (r - i), + s = n - o * i; + return { k: o, b: s }; + } + i.d(t, { + j: function () { + return n; + }, + }); + }, + 717742: function (e, t, i) { + "use strict"; + i.d(t, { + c: function () { + return n; + }, + }); + var n = (e, t) => parseFloat(e.toFixed(t)); + }, + 217940: function (e, t, i) { + "use strict"; + i.d(t, { + Y: function () { + return r; + }, + }); + var n = i(460029); + function r(e) { + (0, n.oe)(e); + var t, + { duration: i } = + null !== (t = (0, n.XH)(e)) && void 0 !== t ? t : {}; + return (0, n.wc)(e), i; + } + }, + 464974: function (e, t, i) { + "use strict"; + i.d(t, { + I: function () { + return r; + }, + }); + var n = i(243302); + function r(e) { + var t, + i, + r, + { + inPaintingParams: a, + outPaintingParams: o, + text2imageParams: s, + generateType: l, + } = e; + return l === n.pi.InPaint + ? null !== (t = null == a ? void 0 : a.originPrompt) && void 0 !== t + ? t + : "" + : l === n.pi.OutPaint + ? null !== (i = null == o ? void 0 : o.originPrompt) && void 0 !== i + ? i + : "" + : null !== (r = null == s ? void 0 : s.prompt) && void 0 !== r + ? r + : ""; + } + }, + 997166: function (e, t, i) { + "use strict"; + i.d(t, { + IA: function () { + return c; + }, + Sz: function () { + return d; + }, + ti: function () { + return l; + }, + wc: function () { + return u; + }, + }); + var n = i(369617), + r = i(766663), + a = i(243302), + o = i(949274), + s = i(441361); + function l(e) { + var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1]; + if (!t && /^\s*$/.test(e)) + return n.s.warningByThrottle(o.ZP.t("tool_text_input_bottom")), !1; + var i = RegExp( + "[^\\u0370-\\u03FF\\u1F00-\\u1FFF\\u4e00-\\u9fa5\\u3002\\uff1f\\uff01\\uff0c\\u3001\\uff1b\\uff1a\\u201c\\u201d\\u2018\\u2019\\uff08\\uff09\\u300a\\u300b\\u3008\\u3009\\u3010\\u3011\\u300e\\u300f\\u300c\\u300d\\ufe43\\ufe44\\u3014\\u3015\\u2026\\u2014\\uff5e\\ufe4f\\uffe5\\u200b\\w_!@#$%^&*\xd7\u2103\xb0\xb2\xb3\xf7\xb1\u2260\u2248\u221A\u221E\u2220\u03C0\u2211\u20AC\xa3\xa5\u20B9\u20BD\u20A9\u20BF\u0E3F\xa2\u20A6\u20BA\u2191\u2193\u2190\u2192()\\[\\]{}\\-+=|\\\\:;\"',.\u30FB\xb7<>/?`~\\s\\u200D\\u{1F300}-\\u{1F9FF}\\u{1F000}-\\u{1FAFF}\\u{2600}-\\u{26FF}\\u{2700}-\\u{27BF}\\u{FE00}-\\u{FE0F}\\u{1F900}-\\u{1F9FF}\\u{1FA70}-\\u{1FAFF}\\u{1F3FB}-\\u{1F3FF}]", + "gu" + ), + r = /(ftp|http|https):\/\/[^ "]+/; + return i.test(e) + ? (n.s.warningByThrottle(o.ZP.t("input_language_support")), !1) + : !r.test(e) || + (n.s.warningByThrottle(o.ZP.t("input_content_try")), !1); + } + function c(e) { + var t, + i, + n, + { + inPaintingParams: r, + outPaintingParams: o, + text2imageParams: s, + generateType: l, + } = e; + return l === a.pi.InPaint + ? null !== (t = null == r ? void 0 : r.originPrompt) && void 0 !== t + ? t + : "" + : l === a.pi.OutPaint + ? null !== (i = null == o ? void 0 : o.originPrompt) && void 0 !== i + ? i + : "" + : null !== (n = null == s ? void 0 : s.prompt) && void 0 !== n + ? n + : ""; + } + var d = (e) => { + var { lyrics: t, separator: i = " " } = e, + n = []; + for (var a of t) + switch (a.type) { + case r.j6.Text: + n.push(a.content); + break; + case r.j6.Paragraph: + n.push(d({ lyrics: a.children })); + } + return n.filter((e) => !!e).join(i); + }; + function u() { + return { + leftQuote: o.ZP.t(s._u, {}, '"'), + rightQuote: o.ZP.t(s.Y9, {}, '"'), + }; + } + }, + 798181: function (e, t, i) { + "use strict"; + i.d(t, { + Wf: function () { + return c; + }, + Xj: function () { + return l; + }, + cW: function () { + return u; + }, + vu: function () { + return d; + }, + }); + var n = i(727279), + r = i(76252), + a = i(433965), + o = i(128468), + s = i(949274); + function l() { + if ((0, r.H)()) return { isFromActivity: !1, weeklyActivityKey: null }; + var e = new URLSearchParams(location.search).get(n.m.weeklyActivityKey); + return { isFromActivity: !!e, weeklyActivityKey: e }; + } + function c(e) { + var { searchParamsStr: t, keepSearchList: i } = e, + n = new URLSearchParams(location.search), + r = new URLSearchParams(t); + i.forEach((e) => { + var t = n.get(e); + t && r.set(e, t); + }); + var a = r.toString(); + return a ? "?".concat(a) : a; + } + function d(e) { + if (!!e) { + if ((0, a.Rb)(e)) + return e.collection.itemList.reduce((e, t) => { + var i = d(t); + return (null == i ? void 0 : i.length) && e.push(...i), e; + }, []); + if ((0, a.DF)(e)) { + var t, + { publishAssetList: i = [] } = + null !== (t = e.aigcImageParams) && void 0 !== t ? t : {}; + return i.reduce((e, t) => { + var { assetType: i, assetCode: n } = t; + return i === o.d_.Style && n && e.push(n), e; + }, []); + } + } + } + function u(e) { + var t = d(e); + return (null == t ? void 0 : t.length) === 1 + ? s.ZP.t( + "dre_t2i_style_code_success_toast", + { style_code: null == t ? void 0 : t[0] }, + "Posted. Here is your style code: #style{style_code}." + ) + : t && t.length > 1 + ? s.ZP.t( + "dre_t2i_style_code_success_toast_multiple", + { style_code: null == t ? void 0 : t[0] }, + "Posted. Here are your style codes: #style{style_code} and more." + ) + : void 0; + } + }, + 752134: function (e, t, i) { + "use strict"; + i.d(t, { + d$: function () { + return o; + }, + rO: function () { + return s; + }, + }); + var n = i(224671), + r = i(639985), + a = { + [n.jP.OneOne]: { widthRatio: 1, heightRatio: 1, errorDiff: 1 }, + [n.jP.ThreeTwo]: { widthRatio: 3, heightRatio: 2, errorDiff: 6 }, + [n.jP.TwoThree]: { widthRatio: 2, heightRatio: 3, errorDiff: 6 }, + [n.jP.ThreeFour]: { widthRatio: 3, heightRatio: 4, errorDiff: 8 }, + [n.jP.FourThree]: { widthRatio: 4, heightRatio: 3, errorDiff: 8 }, + [n.jP.SixteenNine]: { widthRatio: 16, heightRatio: 9, errorDiff: 32 }, + [n.jP.TwentyOneNine]: { + widthRatio: 21, + heightRatio: 9, + errorDiff: 21, + }, + [n.jP.NineSixteen]: { widthRatio: 9, heightRatio: 16, errorDiff: 32 }, + }; + function o(e, t) { + if (!t) return !1; + var { widthRatio: i, heightRatio: n, errorDiff: r } = a[e], + { width: o, height: s } = t; + return Math.abs(o * n - s * i) < r; + } + function s(e) { + if (!!e) + for (var t of r.L2) { + var { type: i } = t; + if (o(i, e)) return i; + } + } + }, + 418188: function (e, t, i) { + "use strict"; + i.d(t, { + uV: () => eZ, + r_: () => tt, + tS: () => e5, + $y: () => eT, + pV: () => e3, + X: () => te, + RO: () => eC, + ND: () => eV, + Ay: () => eP, + OR: () => eA, + pk: () => eQ, + xb: () => eJ, + xR: () => tn, + dJ: () => e7, + Jc: () => ep, + $h: () => em, + I6: () => ev, + oL: () => eM, + eb: () => e2, + BN: () => ex, + wA: () => eg, + ee: () => ti, + ei: () => e6, + Od: () => eh, + lT: () => e_, + bG: () => eI, + qE: () => e8, + LZ: () => tr, + }); + var n = i("660178"), + r = i("139646"), + a = i("625572"), + o = i("639880"), + s = i("2910"), + l = i("526967"), + c = i("243302"), + d = i("224671"), + u = i("100470"), + f = i("936690"), + h = i("128468"), + p = i("417281"), + v = i("104170"), + m = i("229025"), + g = i("257843"), + _ = i("712942"), + y = i("863209"), + b = i("799108"), + I = i("441361"), + w = i("331359"), + x = i("314068"), + S = i("27433"), + M = i("880821"), + C = i("798181"), + T = i("474297"), + A = i("965245"), + k = i("924086"), + P = i("987689"), + E = i("882598"), + D = i("976112"), + R = i("284858"), + N = i("40853"), + L = i("480963"), + j = i("369617"), + O = i("898678"), + B = i("897905"), + F = i("140772"), + U = i("708274"), + G = i("69529"); + class z { + static addEventListener(e, t) { + var i = + arguments.length > 2 && void 0 !== arguments[2] && arguments[2]; + !this._eventMap[e] && (this._eventMap[e] = []), + this._eventMap[e].push({ name: e, callback: t, isListenOnce: i }); + } + static removeEventListener(e, t) { + var i = this._eventMap[e]; + if (!!(null == i ? void 0 : i.length)) + this._eventMap[e] = i.filter((e) => e.callback !== t); + } + static triggerEvent(e, t) { + var i = this._eventMap[e]; + if (!!(null == i ? void 0 : i.length)) { + var n = []; + i.forEach((e) => { + var { callback: i, isListenOnce: r } = e; + null == i || i(t), r && n.push(e); + }), + (this._eventMap[e] = i.filter((e) => !n.includes(e))); + } + } + } + z._eventMap = {}; + var V = i("761615"), + W = i("168511"), + Z = i("475578"), + K = i("102678"), + H = i("474182"), + q = i("932683"), + J = i("561658"), + Y = i("735138"), + Q = i("604488"), + X = i("950835"), + $ = i("938678"), + ee = i("586315"), + et = i("949274"), + ei = i("540611"), + en = i("683973"), + er = i("379311"); + class ea { + getEventParams() { + return this._params; + } + constructor(e) { + (this._params = e), (this.eventName = "inpaint_mask_size_error"); + } + } + function eo(e, t) { + (0, er.S$)(e, ea, [t]); + } + var es = i("182688"), + el = i("187796"), + ec = i("934669"), + ed = i("288632"); + n.w.setConfig({ + projectId: 532, + subProjectName: "cc_dreamina", + customRoute: "", + reportOnly: !1, + storageKey: "ARGUS_STORAGE_OPEN_REDIRECT", + frontWhiteUrl: '["._______________",".vlabstatic.com"]', + frontBlackUrl: "[]", + bid: "cc_dreamina", + region: "cn", + cacheTimeFront: 12, + checkTimeLimit: 1.5, + limitLevel: 5, + }); + var eu = 100, + ef = 100, + eh = { + [c.pi.InPaint]: b.hO.ImageInPaintRepaintButton, + [c.pi.InPaintRemove]: b.hO.ImageInPaintEraserButton, + [c.pi.OutPaint]: b.hO.ImageOutPaintButton, + [c.pi.Text2Image]: b.hO.ImageBasicGenerate, + [c.pi.Blend]: b.hO.ImageBasicGenerate, + [c.pi.SuperDefinition]: b.hO.GenerateFreeMock, + [c.pi.SuperResolution]: b.hO.GenerateFreeMock, + }; + function ep(e) { + return ( + !!e && + [ + c.pi.InPaint, + c.pi.OutPaint, + c.pi.InPaintRemove, + c.pi.InPaintAndOutPaint, + c.pi.ByteEditPainting, + ].includes(e) + ); + } + function ev(e) { + return ( + !!e && + [ + c.pi.InPaint, + c.pi.OutPaint, + c.pi.InPaintAndOutPaint, + c.pi.ByteEditPainting, + ].includes(e) + ); + } + function em(e) { + var t, + i = e.itemList[0]; + if ( + !i || + ![c.pi.Blend, c.pi.Text2Image].includes( + i.aigcImageParams.generateType + ) + ) + return !1; + var n = + null === (t = i.aigcImageParams.text2imageParams) || void 0 === t + ? void 0 + : t.modelConfig; + return !!n && (0, S.KC)(n); + } + function eg(e) { + if (!em(e)) return; + var t, + i = e.itemList[0]; + if (!i) return; + var n = + null === (t = i.aigcImageParams.text2imageParams) || void 0 === t + ? void 0 + : t.modelConfig; + if (!!n) return (0, S.uL)(n); + } + function e_(e) { + var t, + i = e.itemList[0]; + if (!!i) { + var { text2imageParams: n, generateType: r } = i.aigcImageParams; + switch (r) { + case c.pi.Text2Image: + case c.pi.Blend: + if ( + (null == n + ? void 0 + : null === (t = n.largeImageInfo) || void 0 === t + ? void 0 + : t.resolutionType) === d.YD.ImageResolutionType_2k + ) + return (0, S.Rp)(); + break; + default: + if (eh[r]) return (0, S.A6)(r); + } + } + } + function ey(e, t, i, n) { + return eb.apply(this, arguments); + } + function eb() { + return (eb = (0, r._)(function* (e, t, i, n) { + var r, + a, + { width: o = ef, height: s = eu } = + null !== + (a = + null === (r = i.image) || void 0 === r + ? void 0 + : r.largeImages[0]) && void 0 !== a + ? a + : {}, + { width: l, height: c } = yield (0, M.po)(t), + d = t; + return ( + (o !== l || s !== c) && + (eo(e, { + tool: n, + item: JSON.stringify(i), + mask: JSON.stringify({ width: l, height: c }), + }), + (d = yield (0, M.tg)(t, o, s))), + yield (0, M.Ax)(null != d ? d : "", e) + ); + })).apply(this, arguments); + } + function eI(e, t, i) { + return ew.apply(this, arguments); + } + function ew() { + return (ew = (0, r._)(function* (e, t, i) { + var n = i.generateContentList.find((e) => e.historyRecordId === t); + if (n) return n; + var r = yield i.getHistoryById(e, t); + if (!r) { + var a = "result_toast_abnormal_retry", + o = "Something went wrong. Try again later."; + throw ( + (j.s.warning(et.oc.t(a, {}, o)), + Error("not found target historyId")) + ); + } + return r; + })).apply(this, arguments); + } + function ex(e) { + var t; + return null !== + (t = { + [u.b.ErrPreImgRiskNotPass]: { color: "var(--text-placeholder)" }, + [u.b.ErrPreTextRiskNotPass]: { color: "var(--text-placeholder)" }, + [u.b.ErrPreTextIPBlockList]: { color: "var(--text-placeholder)" }, + }[e]) && void 0 !== t + ? t + : {}; + } + function eS(e, t, i) { + var { + historyRecordId: n, + text2ImageParams: r, + isSuperResolution: a, + firstGenerateType: o, + } = e; + return { + page: Z.WZ.AigcImage, + recordId: n, + itemId: t, + generateParam: r, + isSuperResolution: a, + reportService: i, + templateSource: d.Q8.AigcImage, + isReference: o === c.pi.Blend, + }; + } + function eM(e, t, i) { + var { operationAuthorityList: n, reportParam: r } = e, + { itemId: s, requestId: l } = t; + if (((0, en.PJ)(e, t, i), n.includes(d.Zz.Publish))) { + var c = eS(e, s, i); + (0, T.NS)( + (0, o._)((0, a._)({}, c), { + requestId: l, + action: Z.tz.ShowButton, + reportParam: r, + }) + ); + } + } + function eC(e, t, i, n) { + var { + reportParam: r, + text2ImageParams: s, + blendImageParams: l, + paintingParam: c, + } = e, + u = (0, o._)((0, a._)({}, r), { promptSource: d.U_.Reedit }); + (0, A.s)( + { + generateParams: s, + blendImageParams: l, + reportParams: u, + paintingParam: c, + needUpdateSeed: !0, + }, + t + ), + (0, es.RW)(t), + n.switchPromptTab(U.vK.Image), + (0, en.xi)(e, Z.tz.Reedit, i); + } + function eT(e, t, i) { + if (!!i) { + var { + text2ImageParams: n, + reportParam: r, + isSuperResolution: a, + historyRecordId: o, + blendImageParams: s, + } = e, + { coverUrl: l, itemId: c } = t; + (0, A.s)( + { + generateParams: n, + blendImageParams: s, + reportParams: r, + needUpdateSeed: !0, + }, + i + ), + i.updateMicroAdjustParam({ + itemId: c, + reportParam: r, + historyRecordId: o, + imageUrl: l, + isSuperResolution: a, + }); + } + } + function eA(e, t) { + return ek.apply(this, arguments); + } + function ek() { + return (ek = (0, r._)(function* (e, t) { + var i, + n, + r, + o, + { + record: s, + image: l, + isRetry: d, + instance: u, + reportService: f, + containerService: h, + onGenerateContentUpdate: p, + reportParams: v, + } = t, + m = Date.now(), + { itemId: g } = l; + d && + (null == f || + f.reportBusinessEvent("super_resolution_retry_action", { + action: Z.tz.ClickButton, + page: Z.WZ.AigcImage, + })); + var { + text2ImageParams: _, + reportParam: y, + historyRecordId: b, + blendImageParams: I, + generateType: w, + draftContent: x, + } = s; + (0, + en.YA)(s, l, Z.tz.SuperResolution, f, { showType: null == v ? void 0 : v.showType, secondPage: null == v ? void 0 : v.secondPage }, h); + var S = (0, a._)({}, _); + s.paintingParam && + (S.prompt = + null !== (i = s.paintingParam.originPrompt) && void 0 !== i + ? i + : ""), + (0, W.N)(h, { + generateType: c.pi.SuperResolution, + generateParam: S, + reportParam: y, + isRetry: d, + lastRecord: s, + scene: void 0, + benefits: void 0, + }); + var M = + null !== + (r = yield null == u + ? void 0 + : u.generateSuperResolutionContent(e, { + generateParam: S, + reportParam: y, + itemId: g, + historyRecordId: b, + blendParams: I, + historyGroupKeyMd5: + null !== (n = s.historyGroupKeyMd5) && void 0 !== n + ? n + : "", + onGenerateContentUpdate: p, + generateType: w, + isQueue: !0, + draftContent: x, + })) && void 0 !== r + ? r + : null, + { code: C, record: T, errMsg: A } = null != M ? M : {}; + return ( + null == f || + f.reportDevEvent("superResoluteContent", { + cost_time: Date.now() - m, + item_Id: g, + record_Id: + null !== (o = null == T ? void 0 : T.historyRecordId) && + void 0 !== o + ? o + : 0, + code: C, + prompt: null == _ ? void 0 : _.prompt, + errMsg: A, + }), + (0, en.l)(d, M, g, f, h), + M + ); + })).apply(this, arguments); + } + function eP(e, t) { + return eE.apply(this, arguments); + } + function eE() { + return (eE = (0, r._)(function* (e, t) { + var i, + n, + r, + o, + { + record: s, + image: l, + instance: d, + reportService: u, + containerService: f, + onGenerateContentUpdate: h, + generateImageParamsManager: p, + reportParams: v, + } = t, + m = Date.now(), + { itemId: g } = l, + { + text2ImageParams: _, + reportParam: y, + historyRecordId: b, + blendImageParams: I, + generateType: w, + draftContent: x, + } = s; + (0, + en.YA)(s, l, Z.tz.SuperDefinition, u, { showType: null == v ? void 0 : v.showType, secondPage: null == v ? void 0 : v.secondPage }, f); + var S = (0, a._)({}, _); + s.paintingParam && + (S.prompt = + null !== (i = s.paintingParam.originPrompt) && void 0 !== i + ? i + : ""), + (0, W.N)(f, { + generateType: c.pi.SuperDefinition, + generateParam: _, + reportParam: y, + lastRecord: s, + scene: void 0, + benefits: void 0, + }); + var M = + null !== + (r = yield null == d + ? void 0 + : d.generateSuperDefinitionContent(e, { + generateParam: S, + historyGroupKeyMd5: + null !== (n = s.historyGroupKeyMd5) && void 0 !== n + ? n + : "", + reportParam: y, + itemId: g, + historyRecordId: b, + blendParams: I, + onGenerateContentUpdate: h, + generateType: w, + isQueue: !0, + draftContent: x, + })) && void 0 !== r + ? r + : null, + { code: C, record: T, errMsg: A } = null != M ? M : {}; + return ( + null == u || + u.reportDevEvent("superDefinition", { + cost_time: Date.now() - m, + item_Id: g, + record_Id: + null !== (o = null == T ? void 0 : T.historyRecordId) && + void 0 !== o + ? o + : 0, + code: C, + prompt: null == _ ? void 0 : _.prompt, + errMsg: A, + }), + (0, en.TQ)({ + result: M, + lastPictureId: g, + customSizeReportParams: (0, k.bz)(p), + reportService: u, + containerService: f, + }), + M + ); + })).apply(this, arguments); + } + function eD(e, t) { + return eR.apply(this, arguments); + } + function eR() { + return (eR = (0, r._)(function* (e, t) { + var i, + { record: n, instance: r, onGenerateContentUpdate: s } = t, + { + text2ImageParams: l, + reportParam: c, + paintingParam: d, + generateType: u, + originRecord: p, + blendImageParams: v, + draftContent: m, + } = n, + g = (0, f.Hp)(n) ? { mode: h.JU.PostEditor } : void 0, + { historyRecordId: _ = "" } = null != p ? p : {}; + if (!d) return null; + var y = (0, o._)((0, a._)({}, d), { + canvasData: n.canvasData, + isRegenerate: !0, + }); + return yield null == r + ? void 0 + : r.generatePaintingContent( + e, + { + blendImageParams: v, + generateType: u, + reportParam: c, + historyGroupKeyMd5: + null !== (i = n.historyGroupKeyMd5) && void 0 !== i + ? i + : "", + generateParam: l, + paintingParam: y, + historyRecordId: _, + onGenerateContentUpdate: s, + originPrompt: d.originPrompt, + isQueue: !0, + draftContent: m, + }, + void 0, + g + ); + })).apply(this, arguments); + } + function eN(e, t, i) { + return eL.apply(this, arguments); + } + function eL() { + return (eL = (0, r._)(function* (e, t, i) { + var { record: n, instance: r, onGenerateContentUpdate: o } = t; + if (null == r ? void 0 : r.isPendingGenerate) { + j.s.warning( + et.oc.t("attempt_max", {}, "Too many attempts. Try again later.") + ); + return; + } + null == r || r.increasePendingGenerateCount(); + var { + text2ImageParams: s, + reportParam: l, + historyGroupKeyMd5: c, + } = n, + d = yield null == r + ? void 0 + : r.generateContent(e, { + reportParam: l, + param: i ? (0, a._)({}, s, i) : (0, a._)({}, s), + onGenerateContentUpdate: o, + historyGroupKeyMd5: c, + isQueue: !0, + }); + return null == r || r.decreasePendingGenerateCount(), d; + })).apply(this, arguments); + } + function ej(e) { + var t, + i, + n, + { record: r, generateImageParamsManager: a } = e, + { text2ImageParams: o, blendImageParams: s } = r, + l = + null == s + ? void 0 + : null === (t = s.imagePromptList) || void 0 === t + ? void 0 + : t.find((e) => e.name === p.UI.IpKeep), + c = { needDegrade: !1, resetPrompt: o.prompt }; + return l + ? !( + !(null == a + ? void 0 + : null === (n = a.characterListManager) || void 0 === n + ? void 0 + : null === (i = n.listData) || void 0 === i + ? void 0 + : i.find((e) => { + var t, i; + return ( + e.characterId === + (null === (i = l.ipKeepList) || void 0 === i + ? void 0 + : null === (t = i[0]) || void 0 === t + ? void 0 + : t.characterId) + ); + })) && (0, ei.NN)(r) + ) + ? c + : { resetPrompt: o.prompt.replace(I.e1, ""), needDegrade: !0 } + : c; + } + function eO(e, t) { + return eB.apply(this, arguments); + } + function eB() { + return (eB = (0, r._)(function* (e, t) { + var i, + n, + r, + { + record: a, + instance: o, + onGenerateContentUpdate: s, + generateImageParamsManager: l, + } = t; + if (null == o ? void 0 : o.isPendingGenerate) { + j.s.warning( + et.oc.t("attempt_max", {}, "Too many attempts. Try again later.") + ); + return; + } + var { needDegrade: c, resetPrompt: d } = ej(t); + if (c) + return eN(e, t, { + prompt: d, + model: + null == l + ? void 0 + : null === (n = l.modelList) || void 0 === n + ? void 0 + : null === (i = n[0]) || void 0 === i + ? void 0 + : i.modelReqKey, + }); + null == o || o.increasePendingGenerateCount(); + var { text2ImageParams: u, blendImageParams: f, reportParam: h } = a, + p = yield null == o + ? void 0 + : o.generateBlendContent(e, { + reportParam: h, + params: u, + historyGroupKeyMd5: + null !== (r = a.historyGroupKeyMd5) && void 0 !== r + ? r + : "", + blendParams: f, + onGenerateContentUpdate: s, + isQueue: !0, + }); + return null == o || o.decreasePendingGenerateCount(), p; + })).apply(this, arguments); + } + function eF(e, t) { + return eU.apply(this, arguments); + } + function eU() { + return (eU = (0, r._)(function* (e, t) { + var i, + n, + r, + { + record: a, + imageIndex: o, + generateImageParamsManager: s, + instance: l, + onGenerateContentUpdate: c, + } = t, + { + text2ImageParams: d, + blendImageParams: u, + reportParam: f, + originRecord: h, + generateType: p, + paintingParam: v, + itemList: m, + draftContent: g, + } = a, + { historyRecordId: _ = "" } = null != h ? h : {}, + y = + null === (n = m[0]) || void 0 === n + ? void 0 + : null === (i = n.aigcImageParams.superResolutionParams) || + void 0 === i + ? void 0 + : i.originItemId; + return yield null == l + ? void 0 + : l.generateSuperResolutionContent(e, { + generateParam: d, + reportParam: f, + itemId: y, + historyRecordId: _, + blendParams: u, + historyGroupKeyMd5: + null !== (r = a.historyGroupKeyMd5) && void 0 !== r ? r : "", + onGenerateContentUpdate: c, + generateType: p, + isQueue: !0, + draftContent: g, + isRegenerate: !0, + }); + })).apply(this, arguments); + } + function eG(e, t) { + return ez.apply(this, arguments); + } + function ez() { + return (ez = (0, r._)(function* (e, t) { + var i, + n, + r, + { + record: a, + imageIndex: o, + instance: s, + onGenerateContentUpdate: l, + } = t, + { + text2ImageParams: c, + blendImageParams: d, + reportParam: u, + originRecord: f, + imageList: h, + generateType: p, + itemList: v, + draftContent: m, + } = a, + { historyRecordId: g = "" } = null != f ? f : {}, + _ = + null === (n = v[0]) || void 0 === n + ? void 0 + : null === (i = n.aigcImageParams.normalHdParams) || + void 0 === i + ? void 0 + : i.originItemId; + return yield null == s + ? void 0 + : s.generateSuperDefinitionContent(e, { + generateParam: c, + reportParam: u, + itemId: _, + historyRecordId: g, + blendParams: d, + onGenerateContentUpdate: l, + historyGroupKeyMd5: + null !== (r = a.historyGroupKeyMd5) && void 0 !== r ? r : "", + generateType: p, + draftContent: m, + isQueue: !0, + isRegenerate: !0, + }); + })).apply(this, arguments); + } + function eV(e, t) { + return eW.apply(this, arguments); + } + function eW() { + return (eW = (0, r._)(function* (e, t) { + var i, + n, + r, + s, + l, + u, + { + record: h, + containerService: p, + reportService: v, + generateImageParamsManager: m, + } = t, + g = Date.now(), + { + text2ImageParams: _, + reportParam: y, + generateType: I, + blendImageParams: w, + } = h, + { imageRatio: M, largeImageInfo: C } = _, + T = (0, o._)((0, a._)({}, y), { promptSource: d.U_.Regenerate }), + A = (0, f.Hp)(h) ? b.hO.ImagePostEditor : eh[I], + { canCustomSize: P, commercialSceneOptions: E } = + null != m ? m : {}, + D = P + ? { customSizeReportParam: (0, k.GV)(M, null != C ? C : x.jg) } + : {}, + R = + I === c.pi.Blend && (null == w ? void 0 : w.imagePromptList) + ? (0, S.ru)(null == w ? void 0 : w.imagePromptList) + : []; + (0, W.N)( + p, + (0, a._)( + { + generateType: I, + generateParam: _, + reportParam: T, + isRetry: !0, + lastRecord: h, + scene: A, + benefits: R, + commercialSceneOptions: + I === c.pi.Text2Image || I === c.pi.Blend ? E : void 0, + }, + D + ) + ), + (0, en.xi)(h, Z.tz.Regenerate, p); + var N = + null !== + (r = { + [c.pi.SuperResolution]: eF, + [c.pi.SuperDefinition]: eG, + [c.pi.InPaint]: eD, + [c.pi.InPaintRemove]: eD, + [c.pi.OutPaint]: eD, + [c.pi.Blend]: eO, + [c.pi.InPaintAndOutPaint]: eD, + [c.pi.ByteEditPainting]: eD, + }[I]) && void 0 !== r + ? r + : eN, + L = null !== (s = yield N(e, t)) && void 0 !== s ? s : null; + null == v || + v.reportDevEvent("regenerateContent", { + cost_time: Date.now() - g, + record_Id: + null !== + (l = + null == L + ? void 0 + : null === (i = L.record) || void 0 === i + ? void 0 + : i.historyRecordId) && void 0 !== l + ? l + : 0, + }), + (0, en.TQ)({ + result: L, + isRetry: !0, + reportService: v, + clickGenerateReportParam: (0, o._)( + (0, a._)( + {}, + null !== + (u = + null == L + ? void 0 + : null === (n = L.record) || void 0 === n + ? void 0 + : n.reportParam) && void 0 !== u + ? u + : T + ), + { promptSource: d.U_.Regenerate } + ), + customSizeReportParams: (0, k.bz)(m), + containerService: p, + }); + })).apply(this, arguments); + } + function eZ(e) { + var { + record: t, + image: i, + costTime: n, + isSuccessful: r, + reportService: a, + reportParams: o, + containerService: s, + } = e; + r + ? j.s.success( + et.oc.t("result_toast_saved_success", {}, "Image downloaded") + ) + : j.s.warning( + et.oc.t( + "result_toast_saved_fail_retry", + {}, + "Couldn\u2019t download. Try again." + ) + ), + (0, en.YA)( + t, + i, + Z.tz.Download, + a, + { + download_source: "download_button", + showType: null == o ? void 0 : o.showType, + secondPage: null == o ? void 0 : o.secondPage, + }, + s + ); + var { downloadUrl: l, itemId: c, requestId: u } = i, + { promptSource: f, generateId: h } = t.reportParam; + null == a || + a.reportDevEvent("downloadWork", { + cost_time: n, + source: d.Q8.AigcImage, + isSuccessful: r ? "success" : "fail", + downloadUrl: l, + itemId: c, + requestId: u, + promptSource: f, + generateId: h, + }); + } + function eK(e, t) { + if (!!e.itemList[0]) + null == t || + t.reportBusinessEvent("check_publish_button_show", { + page: Z.WZ.AigcImage, + }); + } + function eH(e) { + return eq.apply(this, arguments); + } + function eq() { + return (eq = (0, r._)(function* (e) { + var t, + { + containerService: i, + record: n, + image: r, + instance: s, + reportService: l, + title: c, + description: f, + weeklyActivityKey: h, + reportParams: p, + } = e; + if (!s) return (0, ee.wf)(u.b.ErrPublish, "Publish no instance"); + var { itemId: m, requestId: g } = r, + _ = Date.now(), + y = eS(n, m, l), + { reportParam: b } = n; + (0, + T.NS)((0, o._)((0, a._)({}, y), { requestId: g, action: Z.tz.ClickButton, reportParam: b })); + var I = yield s.publish( + (0, a._)( + { + itemType: v.$.Image, + itemIdList: [m], + title: c, + description: f, + }, + h ? { actKeyList: [h] } : {} + ) + ), + { code: w = u.b.ErrCommon } = I; + return ( + w === u.b.ErrSuccess && + I.ok && + (Y.e.publishProduction(m, I.value.itemId, s), + z.triggerEvent("publish_product"), + (t = (0, ed.y)(I.value))), + null == l || + l.reportDevEvent("publishWork", { + cost_time: Date.now() - _, + record_Id: n.historyRecordId, + source: d.Q8.AigcImage, + }), + eK(n, l), + (0, H.dx)( + i, + (0, H.D8)( + (0, a._)( + { + itemId: m, + record: n, + resultCode: w, + title: c, + description: f, + publishStyleCode: t, + }, + p + ) + ) + ), + I + ); + })).apply(this, arguments); + } + function eJ(e) { + return eY.apply(this, arguments); + } + function eY() { + return (eY = (0, r._)(function* (e) { + var { + containerService: t, + mwebActivityService: i, + navigate: n, + record: r, + image: s, + instance: l, + reportService: c, + hasPublishAuthority: d, + defaultSelectedIndex: u, + multiple: f, + reportParams: h, + beforeRouteLeave: p, + } = e; + (0, + en.YA)(r, s, Z.tz.Publish, c, { showType: null == h ? void 0 : h.showType, secondPage: null == h ? void 0 : h.secondPage }, t); + var { isFromActivity: v } = (0, C.Xj)(), + g = d ? Z.nQ.Creator : Z.nQ.GeneralUser, + _ = v ? "activity" : "generation"; + if ("denied" !== (yield (0, F.D)())) { + var y = (e) => { + var i, + { + singleItem: n, + weeklyActivityKey: d, + weeklyActivityName: u, + } = e; + return ( + n && ([i] = (0, m.KG)([n], !1)), + eH( + (0, o._)((0, a._)({ containerService: t, record: r }, e), { + image: null != i ? i : s, + instance: l, + reportService: c, + reportParams: { + authorType: g, + activity: u, + activityId: d, + channel: _, + }, + }) + ) + ); + }; + (0, B.e)({ + containerService: t, + mwebActivityService: i, + navigate: n, + record: r, + showGotoCollection: !0, + defaultSelectedIndex: u, + multiple: f, + beforeRouteLeave: p, + onClickPublish: y, + onPublishSuccess: (e) => { + var { weeklyActivityKey: i, resultItem: n } = e; + (0, ec.T)({ + containerService: t, + weeklyActivityKey: i, + customToastText: (0, C.cW)(n), + beforeRouteLeave: p, + }); + }, + reportParams: { + author_type: g, + page: Z.WZ.AigcImage, + channel: _, + }, + }); + } + })).apply(this, arguments); + } + function eQ(e, t, i, n) { + (0, en.X2)(e, t, i, n); + } + function eX(e, t) { + return e$.apply(this, arguments); + } + function e$() { + return (e$ = (0, r._)(function* (e, t) { + var i, + n, + r, + { + url: a, + record: o, + imageIndex: s, + generateImageParamsManager: l, + instance: d, + generateReportParams: u, + reportService: f, + onGenerateContentUpdate: h, + originPrompt: p, + containerService: v, + } = t, + { + reportParam: m, + text2ImageParams: g, + itemList: _, + historyRecordId: y, + blendImageParams: b, + draftContent: I, + } = o, + { id: w } = + null !== + (n = + null === (i = _[s]) || void 0 === i + ? void 0 + : i.commonAttr) && void 0 !== n + ? n + : {}; + if (!w || !a) { + j.s.error( + et.oc.t("fail2generate_sorry_retry", {}, "Couldn\u2019t generate") + ); + return; + } + var { prompt: x } = g, + S = c.pi.InPaint, + M = yield null == d + ? void 0 + : d.generatePaintingContent(e, { + generateType: S, + reportParam: m, + generateParam: g, + paintingParam: { + generateType: S, + prompt: x, + maskUri: a, + itemId: w, + submitId: (0, X.Rl)(), + }, + historyGroupKeyMd5: + null !== (r = o.historyGroupKeyMd5) && void 0 !== r + ? r + : "", + historyRecordId: y, + blendImageParams: b, + onGenerateContentUpdate: h, + originPrompt: p, + isQueue: !0, + draftContent: I, + }); + (0, + en.TQ)({ result: M, lastPictureId: w, customSizeReportParams: (0, k.bz)(l), reportService: f, generateReportParams: u, containerService: v }); + })).apply(this, arguments); + } + function e0(e, t) { + return e1.apply(this, arguments); + } + function e1() { + return (e1 = (0, r._)(function* (e, t) { + var i, + n, + r, + { + url: a, + record: o, + imageIndex: s, + instance: l, + generateReportParams: d, + reportService: u, + onGenerateContentUpdate: f, + generateImageParamsManager: h, + containerService: p, + } = t, + { + reportParam: v, + text2ImageParams: m, + itemList: g, + historyRecordId: _, + blendImageParams: y, + draftContent: b, + } = o, + { id: I } = + null !== + (n = + null === (i = g[s]) || void 0 === i + ? void 0 + : i.commonAttr) && void 0 !== n + ? n + : {}; + if (!!I) { + var { prompt: w } = m, + x = c.pi.InPaintRemove, + S = yield null == l + ? void 0 + : l.generatePaintingContent(e, { + generateType: x, + reportParam: v, + generateParam: m, + paintingParam: { + generateType: x, + prompt: w, + maskUri: a, + itemId: I, + submitId: (0, X.Rl)(), + }, + historyGroupKeyMd5: + null !== (r = o.historyGroupKeyMd5) && void 0 !== r + ? r + : "", + historyRecordId: _, + blendImageParams: y, + onGenerateContentUpdate: f, + isQueue: !0, + draftContent: b, + }); + (0, en.TQ)({ + result: S, + lastPictureId: I, + reportService: u, + customSizeReportParams: (0, k.bz)(h), + generateReportParams: d, + containerService: p, + }); + } + })).apply(this, arguments); + } + function e2(e, t) { + var { + record: i, + image: n, + imageIndex: s, + instance: l, + containerService: d, + reportService: u, + onGenerateInpaint: f, + onGenerateContentUpdate: h, + generateImageParamsManager: p, + reportParams: v, + } = t, + m = (0, $.I)(i), + g = m.itemList[s]; + if (!!g && !!l) { + var _ = (0, N.Z)({ + tool: Z.vh.Inpaint, + item: g, + generateType: c.pi.InPaint, + extraParams: { + brushContainerOverrideConfig: { + brushConfig: { defaultOpen: !0 }, + }, + customMaskUpload: (e) => Promise.resolve(), + }, + closeModalHandler: () => { + _.close(); + }, + handleGenerate: (function () { + var t = (0, r._)(function* (t, i, n, r) { + if (!!d) { + var c, + v = Date.now(), + { dataURL: y } = r, + [b] = yield (0, M.CG)(y, w.cI, w.Tm); + if (!b) throw Error("inpaint url is empty"); + var I = yield ey(d, b, g, Z.vh.Inpaint), + x = (0, o._)((0, a._)({}, n), { + imageUploadCostTime: Date.now() - v, + }); + _.close(), null == f || f(); + var { + text2ImageParams: S, + paintingParam: C, + lastGenerate: T, + } = m, + A = ep(T) + ? null == C + ? void 0 + : C.originPrompt + : S.prompt; + (S.prompt = i), + eX(e, { + url: I, + record: (0, o._)((0, a._)({}, m), { + text2ImageParams: S, + }), + historyGroupKeyMd5: + null !== (c = m.historyGroupKeyMd5) && void 0 !== c + ? c + : "", + imageIndex: s, + instance: l, + generateImageParamsManager: p, + generateReportParams: x, + reportService: u, + onGenerateContentUpdate: h, + originPrompt: A, + containerService: d, + }); + } + }); + return function (e, i, n, r) { + return t.apply(this, arguments); + }; + })(), + containerService: d, + reportService: u, + record: m, + }); + (0, en.YA)( + m, + n, + Z.tz.Inpaint, + u, + { + showType: null == v ? void 0 : v.showType, + secondPage: null == v ? void 0 : v.secondPage, + }, + d + ); + } + } + function e6(e, t) { + return e4.apply(this, arguments); + } + function e4() { + return (e4 = (0, r._)(function* (e, t) { + var i, + n, + { + record: s, + instance: l, + containerService: d, + reportService: u, + onGenerateInpaint: f, + onGenerateContentUpdate: h, + generateImageParamsManager: p, + } = t, + v = (0, $.I)(s), + m = yield eI(e, v.originRecord.historyRecordId, l), + g = m.itemList.findIndex( + (e) => e.commonAttr.id === v.paintingParam.itemId + ), + _ = (0, N.Z)({ + tool: Z.vh.Inpaint, + item: m.itemList[g], + generateType: c.pi.InPaint, + extraParams: { + brushContainerOverrideConfig: { + brushConfig: { defaultOpen: !0 }, + }, + customMaskUpload: (e) => Promise.resolve(), + }, + overrideInitParams: { + maskUrl: + null === (i = v.paintingParam) || void 0 === i + ? void 0 + : i.maskUrl, + prompt: + null === (n = v.paintingParam) || void 0 === n + ? void 0 + : n.prompt, + }, + closeModalHandler: () => { + _.close(); + }, + handleGenerate: (function () { + var t = (0, r._)(function* (t, i, n, r) { + if (!!d) { + var s, + c = Date.now(), + { dataURL: y } = r, + [b] = yield (0, M.CG)(y, w.cI, w.Tm); + if (!b) throw Error("inpaint url is empty"); + var I = m.itemList[g], + x = yield ey(d, b, I, Z.vh.Inpaint), + S = (0, o._)((0, a._)({}, n), { + imageUploadCostTime: Date.now() - c, + }); + _.close(), null == f || f(); + var { + text2ImageParams: C, + paintingParam: T, + lastGenerate: A, + } = v, + k = ep(A) + ? null == T + ? void 0 + : T.originPrompt + : C.prompt; + (C.prompt = i), + eX(e, { + url: x, + record: (0, o._)((0, a._)({}, m), { + text2ImageParams: C, + }), + imageIndex: g, + historyGroupKeyMd5: + null !== (s = v.historyGroupKeyMd5) && void 0 !== s + ? s + : "", + instance: l, + generateImageParamsManager: p, + generateReportParams: S, + reportService: u, + onGenerateContentUpdate: h, + originPrompt: k, + containerService: d, + }); + } + }); + return function (e, i, n, r) { + return t.apply(this, arguments); + }; + })(), + containerService: d, + reportService: u, + record: v, + }); + (0, en.xi)(v, Z.tz.Reedit, d); + })).apply(this, arguments); + } + function e3(e, t, i) { + var { record: n, image: r, reportParams: a } = e; + (0, en.YA)( + n, + r, + Z.tz.More, + t, + { + showType: null == a ? void 0 : a.showType, + secondPage: null == a ? void 0 : a.secondPage, + }, + i + ); + } + function e8(e, t) { + return e9.apply(this, arguments); + } + function e9() { + return (e9 = (0, r._)(function* (e, t) { + var i, + { + record: n, + instance: s, + reportService: l, + containerService: d, + onGenerateInpaint: u, + onGenerateContentUpdate: f, + generateImageParamsManager: h, + } = t, + p = yield eI(e, n.originRecord.historyRecordId, s), + v = p.itemList.findIndex( + (e) => e.commonAttr.id === n.paintingParam.itemId + ), + m = (0, L.B)({ + tool: Z.vh.Eliminate, + item: p.itemList[v], + generateType: c.pi.InPaintRemove, + overrideInitParams: { + maskUrl: + null === (i = n.paintingParam) || void 0 === i + ? void 0 + : i.maskUrl, + }, + handleGenerate: (function () { + var t = (0, r._)(function* (t, i, r, c) { + if (!!d) { + var g, + _ = Date.now(), + { dataURL: y } = c, + [b] = yield (0, M.CG)(y, w.cI, w.Tm); + if (!b) throw Error("inpaint remmove url is empty"); + var I = p.itemList[v], + x = yield ey(d, b, I, Z.vh.Eliminate), + { text2ImageParams: S } = n, + C = (0, o._)((0, a._)({}, r), { + imageUploadCostTime: Date.now() - _, + }), + T = (0, o._)((0, a._)({}, p), { text2ImageParams: S }); + m.close(), + null == u || u(), + e0(e, { + url: x, + record: T, + imageIndex: v, + instance: s, + generateImageParamsManager: h, + generateReportParams: C, + reportService: l, + historyGroupKeyMd5: + null !== (g = n.historyGroupKeyMd5) && void 0 !== g + ? g + : "", + onGenerateContentUpdate: f, + containerService: d, + }); + } + }); + return function (e, i, n, r) { + return t.apply(this, arguments); + }; + })(), + closeModalHandler: () => { + m.close(); + }, + extraParams: { + brushContainerOverrideConfig: { + brushConfig: { defaultOpen: !0 }, + }, + }, + reportService: l, + containerService: d, + record: n, + }); + (0, en.xi)(n, Z.tz.Reedit, d); + })).apply(this, arguments); + } + function e5(e, t) { + var { + record: i, + image: n, + imageIndex: s, + instance: l, + reportService: d, + containerService: u, + onGenerateInpaint: f, + onGenerateContentUpdate: h, + generateImageParamsManager: p, + reportParams: v, + } = t, + m = i.itemList[s]; + if (!!m && !!l) { + var g = (0, L.B)({ + tool: Z.vh.Eliminate, + item: m, + generateType: c.pi.InPaintRemove, + handleGenerate: (function () { + var t = (0, r._)(function* (t, n, r, c) { + if (!!u) { + var v, + _ = Date.now(), + { dataURL: y } = c, + [b] = yield (0, M.CG)(y, w.cI, w.Tm); + if (!b) throw Error("inpaint remmove url is empty"); + var I = yield ey(u, b, m, Z.vh.Eliminate), + x = (0, o._)((0, a._)({}, r), { + imageUploadCostTime: Date.now() - _, + }); + g.close(), + null == f || f(), + e0(e, { + url: I, + record: i, + imageIndex: s, + instance: l, + generateImageParamsManager: p, + generateReportParams: x, + reportService: d, + onGenerateContentUpdate: h, + historyGroupKeyMd5: + null !== (v = i.historyGroupKeyMd5) && void 0 !== v + ? v + : "", + containerService: u, + }); + } + }); + return function (e, i, n, r) { + return t.apply(this, arguments); + }; + })(), + closeModalHandler: () => { + g.close(); + }, + extraParams: { + brushContainerOverrideConfig: { + brushConfig: { defaultOpen: !0 }, + }, + customMaskUpload: (e) => Promise.resolve(), + }, + reportService: d, + containerService: u, + record: i, + }); + (0, en.YA)( + i, + n, + Z.tz.InpaintRemove, + d, + { + showType: null == v ? void 0 : v.showType, + secondPage: null == v ? void 0 : v.secondPage, + }, + u + ); + } + } + function e7(e) { + var { + record: t, + image: i, + reportService: n, + imageIndex: r, + switchOptions: s, + containerService: l, + contentGenerateService: c, + reportParams: d, + } = e, + { isSuperResolution: u } = t; + (0, en.YA)( + t, + i, + Z.tz.ZoomIn, + n, + { + showType: null == d ? void 0 : d.showType, + secondPage: null == d ? void 0 : d.secondPage, + }, + l + ); + var { width: f, height: h, coverUrl: p, coverUrlMap: v } = i, + m = (0, el.MK)(v, p), + _ = () => + (0, y.FT)({ record: t, contentGenerateService: c, imageIndex: r }), + b = { + width: f, + height: h, + coverUrl: m, + downloadUrl: "", + fileName: "", + maxInitialScale: u ? void 0 : 1, + }, + { + storeManager: I, + dreaminaAssetsDataService: w, + contentRecordListManager: x, + } = l.invokeFunction((e) => ({ + storeManager: e.get(q.N), + dreaminaAssetsDataService: e.get(g.K), + contentRecordListManager: e.get(J.N).contentRecordListManager, + })); + (0, R.S)({ + imageInfo: b, + containerService: l, + switchOptions: s, + getWatermarkDownloadInfo: _, + onDownload: (t, i) => + eZ((0, o._)((0, a._)({}, e), { isSuccessful: t, costTime: i })), + handleZoomInImageExpose: (e) => (0, en.cV)(t, i, e, n), + onZoomOut: () => + (0, en.YA)( + t, + i, + Z.tz.ZoomOut, + n, + { + showType: null == d ? void 0 : d.showType, + secondPage: null == d ? void 0 : d.secondPage, + }, + l + ), + contextMenu: [ + (0, E.W)({ + getWatermarkDownloadInfo: _, + record: t, + image: i, + reportService: n, + containerService: l, + }), + (0, P.w)({ + getWatermarkDownloadInfo: _, + page: "detail", + containerService: l, + }), + (0, D.T)({ + type: "image", + initFavorited: (0, V.Mv)({ record: t, imageItemId: i.itemId }), + markFavorite: () => { + (0, G.R)({ + selectedRecords: [ + (0, o._)((0, a._)({}, t), { selectedImageList: [i] }), + ], + containerService: l, + imageAssetsHistoryService: I, + dreaminaAssetsDataService: w, + contentRecordListManager: x, + }); + }, + }), + ], + }); + } + function te(e) { + var t, + { + record: i, + imageIndex: r, + image: a, + reportService: o, + reportParams: l, + containerService: c, + } = e, + { + coverUrl: d, + downloadUrl: u, + width: f, + height: h, + itemId: p, + } = i.imageList[r], + { format: v } = + null !== (t = i.itemList[r].image) && void 0 !== t ? t : {}, + m = "first_page", + g = "dreamina", + y = "dreamina", + b = "1", + I = "MaterialText", + w = + (0, _.TR)() === _.wt.Online + ? "https://www.capcut.com" + : "https://capcut-os.by".concat(Q._8, "edan").concat(Q.tf, "e"), + x = "/editor-graphic?phototId=" + .concat(p, "&photoType=") + .concat(v, "&photoWidth=") + .concat(f, "&photoHeight=") + .concat(h, "&downloadUrl=") + .concat(encodeURIComponent(u), "&coverUrl=") + .concat(encodeURIComponent(d), "&enter_from=") + .concat(m, "&from_page=") + .concat(g, "&uploadCreateScenes=") + .concat(y, "&uploadCreate=") + .concat(b, "&activeTab=") + .concat(I); + window.open( + n.w.protectUrl({ + targetUrl: (0, s.C)(w + x, null, { + logType: "js.window.location", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + filename: + "$ERJNWQy%kRP$EJo$jJSc1kyaz$hb%l5T$hkaF-zaHNXRE5D-%dSSFozWmpNMHBx$ERKT2RscEhWWFZa-m13d1dsZFJk$0l6%201T%1teHNZM2s1-zJSd$pHeFph$*w2WTIxTmRtTklTblph%0Zac$pFTT$kR1F5$m1sT%0wNT$XW*s1-W1Je%1-%mlNalIyWkZo%2NHSkl%WFpq-lZac$lqTkthMHh-Z%hCak0xRjJZ$mMx-TFwW$oz$mtTRTQw$1ZoS2Jt%ll%$DA9", + isBlank: !0, + }) + ), + (0, en.YA)( + i, + a, + Z.tz.CapcutEdit, + o, + { + showType: null == l ? void 0 : l.showType, + secondPage: null == l ? void 0 : l.secondPage, + }, + c + ); + } + function tt(e) { + var { record: t, imageIndex: i, containerService: n, navigate: r } = e, + { width: a, height: o, itemId: s } = t.imageList[i]; + (0, K.A)(n, { + action: Z.tz.Click, + page: K._.TextToImageEdit, + pictureId: s, + }), + r( + "/image-edit?itemId=" + .concat(s, "&photoWidth=") + .concat(a, "&photoHeight=") + .concat(o), + { replace: !1, state: { hasBack: !0 } } + ); + } + function ti(e) { + var { + record: t, + image: i, + reportService: n, + containerService: r, + onSubmitFinish: a, + reportParams: o, + } = e; + (0, O.xr)(r, { + reportItemList: [e.record.itemList[e.imageIndex]], + onSubmitFinish: a, + }), + (0, en.YA)( + t, + i, + Z.tz.Report, + n, + { + showType: null == o ? void 0 : o.showType, + secondPage: null == o ? void 0 : o.secondPage, + }, + r + ); + } + function tn(e, t) { + var i, + { record: n, imageIndex: r } = e, + a = + 0 !== r + ? n.itemList[r] + : null !== + (i = n.itemList.find((e) => e.commonAttr.hasPublished)) && + void 0 !== i + ? i + : n.itemList[0]; + if (!!a) { + var { publishedItemId: o, effectType: s } = a.commonAttr; + null == t || + t.imageDetailManager.setImageItems([a], 0, 0, d.Q8.Default), + null == t || + t.showWorkDetail({ + detailId: String(o), + detailType: l.ho.Image, + modalType: l.w8.generateList, + itemType: s, + reportContext: { + template_source: d.Q8.AigcImage, + type: Z.px.Image, + }, + }); + } + } + function tr(e) { + var { + reportService: t, + record: i, + image: n, + reportParams: r, + containerService: a, + } = e; + (0, en.YA)( + i, + n, + Z.tz.Copy, + t, + { + secondPage: null == r ? void 0 : r.secondPage, + collect_source: null == r ? void 0 : r.collectSource, + }, + a + ); + } + }, + 586961: function (e, t, i) { + "use strict"; + i.d(t, { + wU: () => F, + Jg: () => R, + yL: () => N, + cU: () => U, + Kv: () => C, + ve: () => D, + m4: () => Z, + Km: () => O, + ZS: () => z, + Gs: () => W, + sG: () => j, + z2: () => G, + K$: () => L, + sI: () => V, + IZ: () => A, + i3: () => E, + X$: () => k, + Ls: () => B, + }); + var n = i("139646"), + r = i("625572"), + a = i("639880"), + o = i("576261"), + s = i("317825"), + l = i("586315"), + c = i("369617"), + d = i("949274"), + u = i("229025"), + f = i("243302"), + h = i("283349"), + p = i("898387"), + v = i("475578"), + m = i("379311"); + class g { + getEventParams() { + var { + status: e, + duration: t, + resource_type: i, + history_group_key_md5: n, + submit_id: r, + err_msg: a, + } = this._params; + return { + status: e, + duration: t, + err_msg: a, + history_group_key_md5: n, + resource_type: i, + submit_id: r, + }; + } + constructor(e) { + (this._params = e), (this.eventName = "websocket_md5_received"); + } + } + function _(e, t) { + (0, m.S$)(e, g, [t]); + } + var y = i("388977"), + b = i("331480"), + I = i("417699"), + w = i("898758"); + class x { + getEventParams() { + var { pictureType: e, recordId: t } = this._params; + return { picture_type: e, record_id: t }; + } + constructor(e) { + (this._params = e), (this.eventName = "return_icon_click"); + } + } + function S(e, t) { + (0, m.Kl)(e, x, [t]); + } + var M = (e, t) => + new Promise((i) => { + var n = 1100; + t.updateHighlightRecordId(e), + setTimeout(() => { + t.updateHighlightRecordId(""), i(); + }, n); + }), + C = (0, s.Tx)( + "record-list-util", + (function () { + var e = (0, n._)(function* (e, t) { + var { + historyRecordId: i, + historyGroupKeyMd5: n, + instance: r, + listContainerRef: a, + containerService: o, + ignoreWarning: s, + } = t, + l = !s, + u = "result_toast_abnormal_retry", + f = "Something went wrong. Try again later.", + h = null == a ? void 0 : a.current, + v = (e, t, a) => { + if (!!o) + (0, p.j)(o, { + status: e, + type: "locate", + filter_type: (null == r ? void 0 : r.isGroupView) + ? "group" + : "timeline", + duration: t, + err_msg: a, + extra: JSON.stringify({ + historyRecordId: i, + historyGroupKeyMd5: n, + }), + }); + }, + m = Date.now(); + if (!r || !h || !i) { + v("error", Date.now() - m, "locate_params_error"), + l && c.s.warning(d.oc.t(u, {}, f)); + return; + } + var g = r.getRecordIndex(i, n); + if (-1 !== g) + v("success", Date.now() - m, "locate_existed_success"), + console.log("[record-list] locates a existing record ", i, g), + setTimeout(() => { + h.scrollToItemByIndex(g), M(i, r); + }, 50); + else { + console.log( + "[record-list] non-local element, locate remote data ", + i + ); + var _ = yield null == r ? void 0 : r.locateContent(e, i, n), + y = r.getRecordIndex(i, n); + if (!_.ok || -1 === y) { + var b = !_.ok; + v( + "error", + Date.now() - m, + b + ? "locate_remote_fetch_error" + : "locate_remote_index_error" + ); + var I = "errorcode_show", + w = "The image has been deleted", + x = b ? d.oc.t(u, {}, f) : d.oc.t(I, {}, w); + l && c.s.warning(x); + } else + v("success", Date.now() - m, "locate_remote_success"), + h.execInNextRender(() => { + setTimeout(() => { + h.scrollToItemByIndex(y), M(i, r); + }, 50); + }, r.displayRangeId); + } + }); + return function (t, i) { + return e.apply(this, arguments); + }; + })(), + "locateRecord" + ), + T = (e) => { + if (!e) + return ( + console.error( + "%c[record-list] record should not be nullish value", + "color: red;", + e + ), + "" + ); + var { id: t } = e; + return t; + }, + A = (e) => "record-".concat(T(e)), + k = (0, s.Tx)( + "record-list-util", + (function () { + var e = (0, n._)(function* (e, t, i, n, r) { + var { record: a } = t, + { originRecord: o } = a, + { historyRecordId: s = "", itemList: l = [] } = + null != o ? o : {}; + s && + S(i, { + pictureType: l.length > 1 ? v.ry.thumbnail : v.ry.upscale, + recordId: s, + }), + yield C(e, { + historyRecordId: s, + historyGroupKeyMd5: a.historyGroupKeyMd5, + instance: n, + listContainerRef: r, + containerService: i, + }); + }); + return function (t, i, n, r, a) { + return e.apply(this, arguments); + }; + })(), + "handleRecordLocateRecord" + ); + function P(e, t) { + var i = e.current; + if (!!i) i.scrollToStart(t); + } + var E = (e, t) => { + var { hasSyncLastPageDataToGenerateContentListSucceed: i } = e; + P(t, !i); + }, + D = (e) => + (0, a._)((0, r._)({}, e), { + createdTime: (0, u.Qd)(e.createdTime), + sortCreateTime: (0, u.Qd)(e.sortCreateTime), + }), + R = (e) => "object" == typeof e && null !== e && "list" in e, + N = (e) => Array.isArray(e) && R(null == e ? void 0 : e[0]); + function L(e) { + var t, i; + return !!( + (null == e + ? void 0 + : null === (t = e.i2vOpt) || void 0 === t + ? void 0 + : t.realmanAvatar) || + (null == e + ? void 0 + : null === (i = e.v2vOpt) || void 0 === i + ? void 0 + : i.lipSyncUserVideo) + ); + } + function j(e) { + var t; + return !!(null == e + ? void 0 + : null === (t = e.v2vOpt) || void 0 === t + ? void 0 + : t.videoTemplate); + } + function O(e) { + var t; + return !!(null == e + ? void 0 + : null === (t = e.i2vOpt) || void 0 === t + ? void 0 + : t.realmanAvatar); + } + var B = (e) => [f.pi.Text2Song, f.pi.Text2Instrumental].includes(e), + F = (e) => !(0, h.w)(e) && !B(e), + U = (e) => (0, h.w)(e.generateType), + G = (e) => B(e.generateType), + z = (e) => F(e.generateType), + V = (e) => + void 0 !== e.draftId && + void 0 !== e.storyId && + void 0 !== e.storyVersion, + W = (e) => void 0 !== e.id && void 0 !== e.packageId, + Z = (function () { + var e = (0, n._)(function* (e) { + var { containerService: t, submitId: i, type: n } = e, + r = Date.now(), + a = (0, y.ko)(t, b.Dx), + s = (0, y.ko)(t, I.e), + { promise: c, resolve: d, reject: u } = (0, o.PQ)(), + f = null, + h = s.isOversea ? 3e3 : 2e3, + p = a.registerEventHandler(b.Te.GroupKeyGenerated, (e) => { + Date.now(), + _(t, { + status: "success", + duration: Date.now() - r, + submit_id: i, + history_group_key_md5: e.historyGroupKeyMd5, + err_msg: JSON.stringify(e), + resource_type: n, + }), + e.submitId === i && + (f && clearTimeout(f), + p.dispose(), + d( + (0, l.oW)({ + submitId: i, + historyGroupKeyMd5: e.historyGroupKeyMd5, + isMockMd5: !1, + }) + )); + }); + return ( + (f = setTimeout(() => { + p.dispose(); + var e = (0, w.V)(); + _(t, { + status: "timeout_error", + duration: Date.now() - r, + submit_id: i, + history_group_key_md5: e, + resource_type: n, + }), + f && clearTimeout(f), + d( + (0, l.oW)({ + submitId: i, + historyGroupKeyMd5: e, + isMockMd5: !0, + }) + ); + }, h)), + yield c + ); + }); + return function (t) { + return e.apply(this, arguments); + }; + })(); + }, + 223654: function (e, t, i) { + "use strict"; + i.d(t, { + eX: function () { + return o; + }, + jg: function () { + return s; + }, + y7: function () { + return a; + }, + z3: function () { + return r; + }, + }); + var n = i(733787); + function r(e) { + return e + ? { + sr: e[0], + input_edit: e[1], + outpaint: e[2], + input_remove: e[3], + hd: e[4], + i2i: e[5], + face_gan: e[6], + bgpaint: e[7], + control_net: e[8], + } + : { + sr: 0, + input_edit: 0, + outpaint: 0, + input_remove: 0, + hd: 0, + i2i: 0, + face_gan: 0, + bgpaint: 0, + control_net: 0, + }; + } + function a(e) { + try { + return JSON.parse(e).logId; + } catch (e) { + return ""; + } + } + function o(e) { + var t = Object.values(n.eV).filter((e) => "number" == typeof e), + i = Number(t[0]); + return ( + t.forEach((t) => { + Math.abs(Number(t) - e) < Math.abs(i - e) && (i = Number(t)); + }), + i + ); + } + function s(e) { + try { + return JSON.parse(e).errMsg; + } catch (e) { + return ""; + } + } + }, + 934669: function (e, t, i) { + "use strict"; + i.d(t, { T: () => g }); + var n = i("139646"), + r = i("772322"), + a = i("369617"), + o = i("949274"), + s = "view-AoaQvE"; + function l(e) { + var { onClick: t } = e; + return (0, r.jsx)("span", { + onClick: t, + className: s, + children: o.ZP.t("batch_button_tip_view", {}, "View"), + }); + } + var c = i("14606"), + d = i("388977"), + u = i("178589"), + f = i("259273"), + h = i("727279"); + function p(e) { + return v.apply(this, arguments); + } + function v() { + return (v = (0, n._)(function* (e) { + var t = (0, d.ko)(e, c.A), + i = (0, d.ko)(e, u.e), + n = yield t.aggregate.getCommonConfigByKey("secUid"); + n && + i.navigate(f.Sj.GuestPerson, { + params: { secUid: n }, + replace: !1, + state: { fromSideMenu: !1 }, + }); + })).apply(this, arguments); + } + function m(e, t) { + (0, d.ko)(e, u.e).navigate(f.Sj.Activity, { + state: { autoScrollToList: !0 }, + query: { [h.m.weeklyActivityKey]: t }, + }); + } + function g(e) { + var { + containerService: t, + weeklyActivityKey: i, + customToastText: n, + beforeRouteLeave: s, + } = e, + c = a.s.success({ + id: "publish_success_message", + content: (0, r.jsxs)("div", { + children: [ + n || + o.ZP.t( + "result_toast_publish_repeated", + {}, + "Image posted already" + ), + (0, r.jsx)(l, { + onClick: () => { + c(), null == s || s(), i ? m(t, i) : p(t); + }, + }), + ], + }), + }); + } + }, + 683973: function (e, t, i) { + "use strict"; + i.d(t, { + YA: () => E, + xi: () => D, + PJ: () => k, + X2: () => N, + uK: () => M, + $S: () => T, + TQ: () => A, + cV: () => L, + l: () => R, + }); + var n = i("625572"), + r = i("639880"), + a = i("475578"), + o = i("749314"), + s = i("243302"), + l = i("100470"), + c = i("474297"), + d = i("417281"), + u = (e) => { + var t = + null == e + ? void 0 + : null === (i = e.imagePromptList) || void 0 === i + ? void 0 + : i.find((e) => e.name === d.UI.IpKeep); + if (t) { + var i, + n, + r, + a = null !== (n = t.ipKeepList[0]) && void 0 !== n ? n : {}; + return { + ai_role_cnt: 1, + role_id: + null !== (r = a.characterId) && void 0 !== r ? r : void 0, + role_face_intensity: + void 0 !== a.refIdWeight + ? Number((100 * a.refIdWeight).toFixed(2)) + : void 0, + role_subject_intensity: + void 0 !== a.refIpWeight + ? Number((100 * a.refIpWeight).toFixed(2)) + : void 0, + }; + } + return { ai_role_cnt: 0 }; + }, + f = i("881607"), + h = i("924086"), + p = i("223654"), + v = i("724614"), + m = i("789786"), + g = i("379311"), + _ = i("217448"), + y = i("799108"); + class b { + getEventParams() { + var { + request_id: e, + generate_id: t, + model: i, + prompt: n, + prompt_source: r, + scale: a = 1, + steps: o, + seed: s, + page: l, + action: c, + template_source: d, + position: u, + picture_id: f, + style_source: h, + preset_style_id: p, + preset_style_name: v, + reply_message_id: m, + aigc_mode: g, + chat_session_id: _, + image_tags: b, + } = this._params, + { isVip: I, currentVipLevel: w } = this._vipService; + return { + request_id: e, + generate_id: t, + model: i, + prompt: n, + prompt_source: r, + scale: a, + steps: o, + seed: s, + page: l, + action: c, + template_source: d, + is_vip: I ? 1 : 0, + user_subscribe_type: I ? y.TK[w] : 0, + position: u, + picture_id: f, + style_source: h, + preset_style_id: p, + preset_style_name: v, + reply_message_id: m, + aigc_mode: g, + chat_session_id: _, + image_tags: b, + }; + } + constructor(e, t) { + (this._params = e), + (this._vipService = t), + (this.eventName = "generate_result_action"); + } + } + function I(e, t) { + (0, g.Kl)(e, b, [t]); + } + b = (0, m.gn)( + [ + (0, m.fM)(1, _.q), + (0, m.w6)("design:type", Function), + (0, m.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === _.q ? Object : _.q, + ]), + ], + b + ); + var w = i("76931"), + x = i("219974"), + S = i("906193"), + M = { [o.l.Preset]: "preset_style", [o.l.Custom]: "custom_style" }; + function C(e) { + if (!e) return a.eD.False; + var t, + i, + { aigcImageParams: n } = e, + { generateType: r } = n; + return r === s.pi.SuperResolution + ? ( + null === (t = n.superResolutionParams) || void 0 === t + ? void 0 + : t.isDescribePrompt + ) + ? a.eD.True + : a.eD.False + : [s.pi.Text2Image, s.pi.Blend].includes(r) + ? ( + null === (i = n.text2imageParams) || void 0 === i + ? void 0 + : i.isDescribePrompt + ) + ? a.eD.True + : a.eD.False + : a.eD.False; + } + function T(e) { + var t, + i = + null == e + ? void 0 + : null === (t = e.commonAttr) || void 0 === t + ? void 0 + : t.webExtra; + if (i) + try { + return JSON.parse(i).mweb_abtags.join(","); + } catch (e) {} + return ""; + } + function A(e) { + var t, + i, + o, + s, + d, + u, + m, + g, + { + result: _, + lastPictureId: y, + isRetry: b = !1, + reportService: I, + generateReportParams: x, + customSizeReportParams: M = {}, + clickGenerateReportParam: A = {}, + customStyleReportParams: k = {}, + extraParams: P = {}, + containerService: E, + } = e; + if (!!_ && !!I) { + var { + record: D, + code: R, + logId: N, + costTime: L, + errMsg: j, + generateReportParams: O, + } = _, + { + text2ImageParams: B, + reportParam: F, + blendImageParams: U, + generateType: G, + historyRecordId: z, + itemList: V, + failedImageList: W, + imageList: Z, + isDraftGen: K, + failCode: H, + task: q, + generateId: J, + } = D, + { secondPage: Y } = P, + Q = R === l.b.ErrSuccess, + X = R === l.b.ErrAccessLimit ? a.T9.ReachLimit : a.T9.Fail, + $ = Q ? a.T9.Success : X, + ee = (0, n._)({}, F, A), + et = (0, f.cu)( + (0, h.Um)( + null !== (s = null == U ? void 0 : U.imagePromptList) && + void 0 !== s + ? s + : [] + ) + ), + ei = (0, h.x_)( + null !== (d = null == U ? void 0 : U.imagePromptList) && + void 0 !== d + ? d + : [] + ), + { + generateId: en, + lastRequestId: er = "", + originRequestId: ea, + templateId: eo, + generateCount: es, + model: el, + modelName: ec, + prompt: ed, + promptSource: eu, + scale: ef, + steps: eh, + seed: ep, + templateSource: ev, + page: em, + templatePrompt: eg, + resolutionType: e_, + } = (0, c.JD)(B, ee), + ey = null == V ? void 0 : V[0], + eb = + null !== + (u = + null == ey + ? void 0 + : null === (o = ey.aigcImageParams) || void 0 === o + ? void 0 + : null === (i = o.text2imageParams) || void 0 === i + ? void 0 + : null === (t = i.actualModelConfig) || void 0 === t + ? void 0 + : t.modelNameStarlingKey) && void 0 !== u + ? u + : el; + Z.forEach((e, t) => { + var i, + o, + s, + l, + d, + u, + h, + m, + g, + _, + x, + P, + O, + B, + { itemId: U, requestId: z, coverUrl: W } = e, + Z = + null === (s = V[t]) || void 0 === s + ? void 0 + : null === (o = s.aigcImageParams) || void 0 === o + ? void 0 + : null === (i = o.text2imageParams) || void 0 === i + ? void 0 + : i.usePe, + X = + null === (u = V[t]) || void 0 === u + ? void 0 + : null === (d = u.aigcImageParams) || void 0 === d + ? void 0 + : null === (l = d.text2imageParams) || void 0 === l + ? void 0 + : l.scheduleConf, + ee = C(V[t]), + eI = Q ? U : "", + ew = T(V[t]), + ex = R + ? { + fail_reason: K ? H : R, + task_status: null == q ? void 0 : q.status, + error_code: D.ret, + is_new_err_code: K ? 1 : 0, + } + : {}, + eS = W + ? (0, n._)({ picture_id: eI, status: $ }, ex) + : (0, n._)({ picture_id: "", status: a.T9.Fail }, ex), + eM = (0, a.ax)( + null !== (x = null == ey ? void 0 : ey.refItem) && void 0 !== x + ? x + : {} + ); + P = Q ? en || J : (0, p.y7)(j) || J; + var eC = E ? (0, w.Oj)(E) : {}, + eT = (0, c.ZA)(F), + eA = (0, r._)( + (0, n._)( + (0, r._)( + (0, n._)( + (0, r._)( + (0, n._)( + { + err_msg: (0, p.jg)(j), + actual_model: eb, + generate_type: G, + request_id: z, + generate_id: P, + last_picture_id: y, + last_request_id: er, + origin_request_id: ea, + origin_prompt_source: "", + template_id: eo, + generate_cnt: es, + model: el, + model_name: ec, + is_prompt_empty: a.eD.False, + is_describe: ee, + prompt: ed, + prompt_source: eu, + scale: ef, + steps: eh, + seed: ep, + time_cost: L, + page: em, + template_source: ev, + template_prompt: eg, + use_pre_llm: Z ? a.eD.True : a.eD.False, + is_retry: b ? a.eD.True : a.eD.False, + is_internal_env: (0, v.i)() ? 1 : 0, + logId: N, + }, + eS, + et + ), + { + ai_role_cnt: null == ei ? void 0 : ei.aiRoleCount, + role_id: null == ei ? void 0 : ei.roleId, + role_face_intensity: + (null == ei ? void 0 : ei.roleFaceIntensity) !== + void 0 + ? Math.round( + (null == ei ? void 0 : ei.roleFaceIntensity) * + 100 + ) + : void 0, + role_subject_intensity: + (null == ei ? void 0 : ei.roleSubjectIntensity) !== + void 0 + ? Math.round( + (null == ei + ? void 0 + : ei.roleSubjectIntensity) * 100 + ) + : void 0, + } + ), + (0, f.cu)(M), + (0, f.cu)(k) + ), + { + impression_id: + null !== + (O = + null == ey + ? void 0 + : null === (h = ey.clientTraceData) || + void 0 === h + ? void 0 + : h.impressionId) && void 0 !== O + ? O + : (0, w.ww)( + null == ey + ? void 0 + : null === (g = ey.refItem) || void 0 === g + ? void 0 + : null === (m = g.commonAttr) || void 0 === m + ? void 0 + : m.id + ), + template_type_id: (0, w.pm)(eo, eM), + template_from: (0, w.lg)(eo, eM), + event_page: (0, w.CB)(eM, ev), + second_page: Y, + ab_tags: ew, + schedule_conf: X, + definition: e_, + } + ), + eC, + eT + ), + { + is_within_agent: + null !== (B = null == A ? void 0 : A.isWithinAgent) && + void 0 !== B + ? B + : void 0, + } + ); + I.reportBusinessEvent("generate_status", eA, { syncServer: !0 }); + var ek = + null === (_ = S.Z.getReporter(D.submitId)) || void 0 === _ + ? void 0 + : _.mergeParams(eA) + .markGenerateFinish() + .setServerTotalCost(D.finishTime - D.createdTime); + ek && + (I.reportBusinessEvent(ek.eventName, ek.getEventParams()), + I.reportDevEvent(ek.eventName, ek.getEventParams())); + }); + var eI = (0, f.cu)( + null !== (m = null != x ? x : O) && void 0 !== m ? m : {} + ), + ew = (0, n._)({ generate_type: "".concat(G) }, eI), + ex = null !== (g = a.r$[R]) && void 0 !== g ? g : "".concat(R), + eS = R + ? { + fail_reason: K ? "".concat(H) : ex, + is_new_err_code: K ? "1" : "0", + code: "".concat(R), + } + : { code: "0" }, + eM = (null != Z ? Z : []).length, + eC = (null != W ? W : []).length; + null == I || + I.reportDevEvent( + "generateContent", + (0, n._)( + { + cost_time: L, + model: el, + record_id: z, + success_item_count: eM, + fail_item_count: eC, + item_count: eM + eC, + logId: N, + second_page: Y, + }, + ew, + eS + ) + ); + } + } + function k(e, t, i) { + if (!!i) { + var { + text2ImageParams: n, + isSuperResolution: r, + reportParam: o, + generateType: s, + } = e, + { requestId: l, itemId: d } = t, + { + generateId: u, + generateCount: f, + model: h, + prompt: p, + promptSource: v, + scale: m, + steps: g, + seed: _, + templateSource: y, + page: b, + } = (0, c.JD)(n, o || {}); + i.reportBusinessEvent("generate_picture_hover", { + request_id: l, + generate_id: u, + generate_type: s, + picture_id: d, + is_super_resolution: r ? a.eD.True : a.eD.False, + generate_cnt: f, + model: h, + prompt: p, + prompt_source: v, + scale: m, + steps: g, + seed: _, + page: b, + template_source: y, + }), + r && + [a.vh.Inpaint, a.vh.Outpaint, a.vh.Eliminate].forEach((e) => { + i.reportBusinessEvent("show_tool", { + tool: e, + request_id: l, + generate_id: u, + picture_id: d, + page: b, + }); + }); + } + } + function P(e) { + return (0, x.kJ)(e); + } + function E(e, t, i, o, s, l) { + var d, + v, + m, + g, + _, + y, + b, + I = P(t) ? t[0] : t, + x = e.itemList.find( + (e) => e.commonAttr.id === (null == I ? void 0 : I.itemId) + ), + { + originPromptSource: S = "", + originRequestId: M, + lastRequestId: A, + aigcCntList: k, + text2imageParams: E, + } = null !== (v = null == x ? void 0 : x.aigcImageParams) && + void 0 !== v + ? v + : {}, + { + text2ImageParams: D, + isSuperResolution: R, + reportParam: N, + generateType: L, + blendImageParams: j, + } = e, + O = (0, f.cu)( + (0, h.Um)( + null !== (m = null == j ? void 0 : j.imagePromptList) && + void 0 !== m + ? m + : [] + ) + ), + { + generateId: B, + generateCount: F, + model: U, + prompt: G, + promptSource: z, + scale: V, + steps: W, + seed: Z, + templateSource: K, + page: H, + templateId: q, + resolutionType: J, + impressionId: Y, + } = (0, c.JD)(D, N), + Q = (0, c.ZA)(N), + X = null == E ? void 0 : E.usePe, + $ = C(x), + ee = (0, p.z3)(k), + et = (0, a.ax)( + null !== (g = null == x ? void 0 : x.refItem) && void 0 !== g + ? g + : {} + ), + ei = e.imageList.filter((e) => + P(t) + ? t.some((t) => t.itemId === e.itemId) + : e.itemId === (null == t ? void 0 : t.itemId) + ), + en = ei.map((e) => e.requestId).join(","), + er = ei.map((e) => e.itemId).join(","), + ea = T(x), + eo = l ? (0, w.Oj)(l) : {}; + null == o || + o.reportBusinessEvent( + "generate_picture_action", + (0, n._)( + (0, r._)( + (0, n._)( + { + request_id: en, + generate_type: L, + generate_id: B, + picture_id: er, + is_super_resolution: R ? a.eD.True : a.eD.False, + generate_cnt: F, + model: U, + prompt: G, + template_id: q, + prompt_source: z, + scale: V, + steps: W, + seed: Z, + page: H, + action: i, + use_pre_llm: X ? a.eD.True : a.eD.False, + is_describe: $, + template_source: K, + origin_prompt_source: S, + origin_request_id: M, + last_request_id: A, + download_source: + null !== (_ = null == s ? void 0 : s.download_source) && + void 0 !== _ + ? _ + : void 0, + collect_source: + null !== (y = null == s ? void 0 : s.collect_source) && + void 0 !== y + ? y + : void 0, + show_type: null == s ? void 0 : s.showType, + second_page: null == s ? void 0 : s.secondPage, + }, + O, + ee, + u(j) + ), + { + event_page: (0, w.CB)(et, K), + template_from: (0, w.lg)(q, et), + template_type_id: (0, w.pm)(q, et), + impression_id: + null !== + (b = + null != Y + ? Y + : null == x + ? void 0 + : null === (d = x.clientTraceData) || void 0 === d + ? void 0 + : d.impressionId) && void 0 !== b + ? b + : (0, w.ww)(q), + ab_tags: ea, + schedule_conf: null == E ? void 0 : E.scheduleConf, + definition: J, + } + ), + eo, + Q + ), + { syncServer: !0 } + ); + } + function D(e, t, i) { + var { text2ImageParams: r, reportParam: a, imageList: o } = e, + { + generateId: s, + model: l, + prompt: d, + promptSource: u, + scale: f, + steps: h, + seed: p, + templateSource: v, + page: m, + } = (0, c.JD)(r, a), + g = (0, c.ZA)(a), + _ = o.map((e) => e.requestId).join(","); + I( + i, + (0, n._)( + { + request_id: _, + generate_id: s, + model: l, + prompt: d, + prompt_source: u, + scale: f, + steps: h, + seed: p, + page: m, + action: t, + template_source: v, + }, + g + ) + ); + } + function R(e, t, i, n, r) { + if (!!t && !!n) { + var { code: o, costTime: s, record: d } = t, + { text2ImageParams: u, imageList: f, reportParam: h } = d, + { itemId: p = "", requestId: v = "" } = + (null == f ? void 0 : f[0]) || {}, + m = o === l.b.ErrSuccess ? a.T9.Success : a.T9.Fail, + g = a.r$[o] || "", + { + templateId: _, + generateId: y, + generateCount: b, + model: I, + prompt: w, + promptSource: x, + scale: S, + steps: M, + seed: C, + templateSource: T, + page: k, + } = (0, c.JD)(u, h); + n.reportBusinessEvent( + "super_resolution_status", + { + is_super_resolution_retry: e ? a.eD.True : a.eD.False, + request_id: v, + generate_id: y, + picture_id: p, + model: I, + prompt: w, + prompt_source: x, + scale: S, + steps: M, + seed: C, + page: k, + template_source: T, + template_id: _, + generate_cnt: b, + status: m, + time_cost: s, + fail_reason: g, + }, + { syncServer: !0 } + ), + A({ + result: t, + reportService: n, + lastPictureId: i, + containerService: null != r ? r : null, + }); + } + } + function N(e, t, i, n) { + if (!(i <= 500)) { + var { text2ImageParams: r, reportParam: a } = e, + { requestId: o, itemId: s } = t, + { + page: l, + generateId: d, + model: u, + prompt: f, + promptSource: h, + scale: p, + steps: v, + seed: m, + generateCount: g, + templateId: _, + templateSource: y, + } = (0, c.JD)(r, a); + null == n || + n.reportBusinessEvent("stay_super_resolution_picture", { + request_id: o, + generate_id: d, + picture_id: s, + model: u, + prompt: f, + prompt_source: h, + scale: p, + steps: v, + seed: m, + template_source: y, + template_id: _, + generate_cnt: g, + page: l, + duration: i, + }); + } + } + function L(e, t, i, n) { + if (!(i <= 500)) { + var { text2ImageParams: r, reportParam: a } = e, + { requestId: o, itemId: s } = t, + { + page: l, + generateId: d, + model: u, + prompt: f, + promptSource: h, + scale: p, + steps: v, + seed: m, + generateCount: g, + templateId: _, + templateSource: y, + } = (0, c.JD)(r, a); + null == n || + n.reportBusinessEvent("stay_picture", { + request_id: o, + generate_id: d, + picture_id: s, + model: u, + prompt: f, + prompt_source: h, + scale: p, + steps: v, + seed: m, + template_source: y, + template_id: _, + generate_cnt: g, + page: l, + duration: i, + }); + } + } + }, + 474297: function (e, t, i) { + "use strict"; + i.d(t, { + JD: function () { + return f; + }, + NS: function () { + return h; + }, + ZA: function () { + return m; + }, + h7: function () { + return v; + }, + q5: function () { + return p; + }, + }); + var n = i(625572), + r = i(639880), + a = i(601135), + o = i(642273), + s = i(259273), + l = i(441361), + c = i(475578), + d = i(940140), + u = i(949274); + function f(e, t) { + var i, + { + prompt: d, + sampleStrength: f, + seed: h, + modelConfig: p, + largeImageInfo: v, + usePe: m = !1, + } = e, + { generateCount: g = 0 } = null != t ? t : {}, + _ = + null !== (i = null == p ? void 0 : p.modelNameStarlingKey) && + void 0 !== i + ? i + : "", + y = null == p ? void 0 : p.modelNameStarlingKey, + b = y ? u.ZP.t(y) : "", + { width: I, height: w, resolutionType: x } = null != v ? v : {}, + S = e.imageRatio ? c.lS[e.imageRatio] : "".concat(I, ":").concat(w), + M = (0, a.LX)( + o.EZ[s.Sj.StoryEditor], + location.pathname.replace(o.NU, "") + ) + ? c.WZ.StoryEditor + : c.WZ.AigcImage; + return (0, r._)( + (0, n._)( + { + prompt: d.replace(l.rO, ""), + steps: f, + seed: h, + model: _, + modelName: b, + scale: S, + page: M, + usePe: m, + resolutionType: x, + }, + t + ), + { generateCount: g || 1 } + ); + } + function h(e) { + var { + page: t, + action: i, + itemId: n, + requestId: r, + generateParam: a, + reportParam: o, + isSuperResolution: s, + templateSource: l, + reportService: d, + } = e, + { + generateId: u, + model: h, + prompt: p, + promptSource: v, + scale: m, + steps: g, + seed: _, + generateCount: y, + templateId: b, + } = f(a, o); + null == d || + d.reportBusinessEvent("publish_action", { + page: t, + action: i, + request_id: r, + generate_id: u, + picture_id: n, + is_super_resolution: s ? c.eD.True : c.eD.False, + model: h, + prompt: p, + prompt_source: v, + scale: m, + steps: g, + seed: _, + template_source: l, + generate_cnt: y, + template_id: b, + }); + } + function p(e) { + if (e.type !== d.F5.IMAGE) return c.xI.Exclude; + var t = e.src; + return t.type !== d.lJ.CloudImageSticker + ? c.xI.Exclude + : t.from === d.Tq.AutomaticCanvas + ? c.xI.Include + : c.xI.Exclude; + } + function v(e) { + if (e.type !== d.F5.IMAGE) return !1; + var t = e, + { type: i } = t.src; + if (i !== d.lJ.AiGenerateImage) return !1; + var { associatedImageList: n = [] } = t, + r = t.src, + a = n.find((e) => r.id === e.id); + return ( + (null == a ? void 0 : a.generateType) === d.z9.SuperResolution || !1 + ); + } + function m(e) { + if (!!e) + return { + reply_message_id: e.replyMessageId, + aigc_mode: e.aigcMode, + chat_session_id: e.chatSessionId, + image_tags: e.imageTags, + }; + } + }, + 590045: function (e, t, i) { + "use strict"; + function n(e, t) { + var i = arguments.length > 2 && void 0 !== arguments[2] && arguments[2]; + if (!!e) { + var n = e.scrollTop + t; + e.scrollTo && i + ? e.scrollTo({ top: n, left: 0, behavior: "smooth" }) + : (e.scrollTop = n); + } + } + function r(e) { + var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1]; + if (!!e) { + var { scrollHeight: i } = e; + n(e, i, t); + } + } + function a(e) { + var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1]; + if (!!e) { + var { scrollTop: i } = e; + n(e, -i, t); + } + } + function o(e, t) { + var i = arguments.length > 2 && void 0 !== arguments[2] && arguments[2], + n = arguments.length > 3 && void 0 !== arguments[3] && arguments[3]; + !t && + console.log("[record-list] assigned element does not exist", i, e); + var r = n + ? null == t + ? void 0 + : t.querySelector("#".concat(e)) + : document.getElementById(e); + if (!r || !t) { + console.log("[record-list] assigned element does not exist", i, e); + return; + } + r.scrollIntoView({ + block: "start", + inline: "nearest", + behavior: i ? "smooth" : "instant", + }); + } + i.d(t, { + As: function () { + return o; + }, + Dh: function () { + return r; + }, + lL: function () { + return a; + }, + tr: function () { + return n; + }, + }); + }, + 460911: function (e, t, i) { + "use strict"; + i.d(t, { + V: function () { + return a; + }, + }); + var n = i(246940), + r = i(297425); + class a { + getItem(e) { + return this._lruIns.get(e); + } + setItem(e, t) { + this._lruIns.put(e, t), this._allKeys.add(e); + var i = this._lruToJson(); + n.T.setJson(this._storageKey, i); + } + _lruToJson() { + var e = {}; + for (var t of this._allKeys) { + var i = this._lruIns.get(t); + i && (e[t] = i); + } + return e; + } + constructor(e, t = 50) { + (this._storageKey = e), + (this.capacity = t), + (this._allKeys = new Set()), + (this._lruIns = new r.z(t)); + var i = n.T.getJson(this._storageKey); + i && + Object.entries(i).forEach((e) => { + var [t, i] = e; + this._allKeys.add(t), this._lruIns.put(t, i); + }); + } + } + }, + 246940: function (e, t, i) { + "use strict"; + i.d(t, { + T: function () { + return r; + }, + }); + var n = "mweb_"; + class r { + static updateUserId() { + var e = + arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : ""; + r._userId = e; + } + static generateKey(e) { + return "".concat(n).concat(r._userId, "_").concat(e); + } + static getItem(e) { + return localStorage.getItem(r.generateKey(e)); + } + static setItem(e, t) { + return localStorage.setItem(r.generateKey(e), t); + } + static getJson(e) { + if ("undefined" == typeof window || !navigator.cookieEnabled) return; + var t, + i = "undefined" != typeof localStorage && r.getItem(e); + if (!!i) { + try { + t = JSON.parse(i); + } catch (e) {} + return t; + } + } + static setJson(e, t) { + if ("undefined" != typeof window && !!navigator.cookieEnabled) + try { + r.setItem(e, JSON.stringify(t)); + } catch (e) {} + } + } + r._userId = ""; + }, + 719494: function (e, t, i) { + "use strict"; + function n(e, t, i) { + var n = e.split(t).map((e) => e.trim()); + return n.length > 1 ? n.join(i) : e; + } + function r(e, t) { + return e.length > t ? "".concat(e.slice(0, t), "...") : e; + } + function a(e, t, i) { + var n = + arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : 0; + if (0 === e.length) return "".concat(t, " 1"); + var r = new RegExp("".concat(t, "\\s+(\\d+)")), + a = Math.min( + i, + Math.max( + ...e.map((e) => { + var t = e.match(r); + return t ? parseInt(t[1], 10) : 0; + }) + ) + + n + + 1 + ); + return "".concat(t, " ").concat(a); + } + i.d(t, { + Lr: function () { + return r; + }, + WY: function () { + return a; + }, + ZX: function () { + return n; + }, + }); + }, + 965245: function (e, t, i) { + "use strict"; + i.d(t, { + s: function () { + return o; + }, + }); + var n = i(625572), + r = i(639880), + a = i(776913); + function o(e, t) { + if (!!t) { + var { + generateParams: i, + blendImageParams: o = {}, + reportParams: s, + needUpdateSeed: l, + paintingParam: c, + } = e; + t.updateGenerateParam( + (0, r._)((0, n._)({}, i, o), { + originPrompt: null == c ? void 0 : c.originPrompt, + }), + l + ), + s && a.Jg.getInstance().setPendingResumeReportParam(i, s); + } + } + }, + 259455: function (e, t, i) { + "use strict"; + function n(e) { + var t, i, n, r; + e.focus(), + (e.selectionStart = + null !== + (n = + null === (t = e.value) || void 0 === t ? void 0 : t.length) && + void 0 !== n + ? n + : 0), + (e.selectionEnd = + null !== + (r = + null === (i = e.value) || void 0 === i ? void 0 : i.length) && + void 0 !== r + ? r + : 0); + } + i.d(t, { + K: function () { + return n; + }, + }); + }, + 487437: function (e, t, i) { + "use strict"; + function n(e) { + var { scrollWidth: t, clientWidth: i } = e || {}; + return t > i; + } + function r(e) { + var { scrollHeight: t, clientHeight: i } = e || {}; + return t > i; + } + function a(e) { + var { scrollHeight: t, clientHeight: i } = e || {}; + return t > i; + } + i.d(t, { + ao: function () { + return n; + }, + ob: function () { + return r; + }, + rw: function () { + return a; + }, + }); + }, + 334766: function (e, t, i) { + "use strict"; + i.d(t, { + J5: function () { + return h; + }, + VG: function () { + return g; + }, + jp: function () { + return v; + }, + ue: function () { + return y; + }, + }); + var n = i(139646), + r = i(224671), + a = i(433965), + o = i(369617), + s = i(949274), + l = i(863209), + c = i(509525), + d = i(782296); + function u(e) { + return f.apply(this, arguments); + } + function f() { + return (f = (0, n._)(function* (e) { + var { itemId: t, publishedItemId: i, contentGenerateService: n } = e; + if (!!n) { + if (i) { + var { response: a } = yield n.repository.getItemInfo( + (0, c.Tg)(), + { itemIdList: [i], packItemOpt: { scene: r.og.Download } } + ); + if (a.ok) { + var { effectItemList: o } = a.value; + return null == o ? void 0 : o[0]; + } + } + if (t) { + var { response: s } = yield n.repository.getLocalItemList( + (0, c.Tg)(), + { itemIdList: [t], packItemOpt: { scene: r.og.Download } } + ); + if (s.ok) { + var { itemList: l } = s.value; + return null == l ? void 0 : l[0]; + } + } + } + })).apply(this, arguments); + } + function h(e) { + return p.apply(this, arguments); + } + function p() { + return (p = (0, n._)(function* (e) { + var t, + i, + n, + r, + a = yield u(e); + return null !== + (r = + null == a + ? void 0 + : null === (n = a.image) || void 0 === n + ? void 0 + : null === (i = n.largeImages) || void 0 === i + ? void 0 + : null === (t = i[0]) || void 0 === t + ? void 0 + : t.imageUrl) && void 0 !== r + ? r + : e.fallbackUrl; + })).apply(this, arguments); + } + function v(e) { + return m.apply(this, arguments); + } + function m() { + return (m = (0, n._)(function* (e) { + var t, + i, + n, + r, + a = yield u(e); + return null !== + (r = + null == a + ? void 0 + : null === (n = a.video) || void 0 === n + ? void 0 + : null === (i = n.transcodedVideo) || void 0 === i + ? void 0 + : null === (t = i.origin) || void 0 === t + ? void 0 + : t.videoUrl) && void 0 !== r + ? r + : e.fallbackUrl; + })).apply(this, arguments); + } + function g(e, t) { + return _.apply(this, arguments); + } + function _() { + return (_ = (0, n._)(function* (e, t) { + var i, + n, + [r, o] = ["", ""]; + if ((0, a.DF)(e)) { + var s = yield (0, l.X)(e, t); + (r = s.url), (o = s.fileName); + } else (r = null !== (i = yield h({ publishedItemId: e.commonAttr.id, contentGenerateService: t })) && void 0 !== i ? i : ""), (o = "".concat(e.commonAttr.title).concat(null !== (n = e.image.format) && void 0 !== n ? n : "png")); + return { url: r, fileName: o }; + })).apply(this, arguments); + } + function y(e, t) { + var i = !1; + return (0, d.u)({ + task: (0, n._)(function* () { + var { url: n, fileName: r } = yield g(e, t); + if (yield (0, l.ue)(n, r, void 0, () => i)) + o.s.success( + s.oc.t("result_toast_saved_success", {}, "Image downloaded") + ); + else { + if (i) return; + o.s.warning( + s.oc.t( + "result_toast_saved_fail_retry", + {}, + "Couldn\u2019t download. Try again." + ) + ); + } + }), + tipTxt: s.oc.t("t2i_align_downloading", {}, "Downloading..."), + onCancel: () => { + i = !0; + }, + }); + } + }, + 387008: function (e, t, i) { + "use strict"; + i.d(t, { h: () => s }); + var n = i("772322"), + r = "container-jh1Kes", + a = i("827955"), + o = (e) => { + var { content: t, style: i = {} } = e; + return (0, n.jsx)("div", { className: r, style: i, children: t }); + }; + class s { + static open(e) { + var { + content: t, + delay: i = 3e3, + bindContainer: r = document.body, + uiStyle: s, + } = e; + if (!!r) { + var l = document.createElement("div"); + r.appendChild(l); + var c = (0, a.s)((0, n.jsx)(o, { content: t, style: s }), l); + setTimeout(() => { + c.destroy(), r.removeChild(l), (l = null); + }, i); + } + } + } + }, + 648757: function (e, t, i) { + "use strict"; + i.d(t, { q: () => h }); + var n = i("772322"), + r = i("2910"), + a = i("653061"), + o = i("105789"), + s = i.n(o), + l = + "data:image/png;base64,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", + c = "avatar-hZRCHJ", + d = "avatarHover-moAOhi", + u = "errorImg-Sz20pP", + f = i("2345"), + h = (e) => { + var { + enableClick: t = !0, + className: i = [], + src: o, + alt: h, + crossOrigin: p, + loader: v, + onClick: m, + onLoad: g, + width: _, + height: y, + lazy: b, + ignoreHidden: I, + } = e, + w = Array.isArray(i) ? i : [i]; + return (0, n.jsx)(f.y, { + value: { isHeroImage: !1 }, + children: (0, n.jsx)(a.k, { + src: (0, r.C)(o, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + sizePickMode: "cdn", + cdnOptimizeConfig: { useWebp: !0 }, + alt: h, + crossOrigin: p, + loader: v, + className: s()(...w, c, { [d]: t }), + errLoader: (0, n.jsx)("img", { + src: (0, r.C)(l, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + className: u, + crossOrigin: "anonymous", + }), + onClick: m, + onLoad: g, + width: _, + height: y, + lazy: b, + ignoreHidden: I, + "data-apm-action": "avatar", + }), + }); + }; + }, + 630008: function (e, t, i) { + "use strict"; + i.d(t, { G: () => u }); + var n = i("625572"), + r = i("639880"), + a = i("96"), + o = i("772322"); + i("894672"); + var s = i("274993"), + l = i("105789"), + c = i.n(l), + d = "tooltip-UPiVYK", + u = (e) => { + var t, + { children: i, color: l, className: u, triggerProps: f } = e, + h = (0, a._)(e, ["children", "color", "className", "triggerProps"]); + return (0, o.jsx)( + s.Z, + (0, r._)( + (0, n._)( + { + color: l, + className: c()(u, d), + triggerProps: (0, n._)( + { + arrowProps: { style: { backgroundColor: l } }, + showArrow: !0, + popupAlign: { + [null !== (t = h.position) && void 0 !== t + ? t + : "top"]: 9, + }, + }, + f + ), + }, + h + ), + { children: i } + ) + ); + }; + }, + 990880: function (e, t, i) { + "use strict"; + i.d(t, { _: () => j }); + var n = i("139646"), + r = i("625572"), + a = i("639880"), + o = i("772322"); + i("894672"); + var s = i("274993"), + l = i("218571"), + c = { + "image-editor-conflict-modal-z-index": "999999", + imageEditorConflictModalZIndex: "999999", + "box-selection-z-index": "10100", + boxSelectionZIndex: "10100", + "character-generate-modal-z-index": "1001", + characterGenerateModalZIndex: "1001", + "commerce-info-tooltip-z-index": "1001", + commerceInfoTooltipZIndex: "1001", + "boximator-modal-z-index": "1001", + boximatorModalZIndex: "1001", + "video-container-z-index": "9", + videoContainerZIndex: "9", + "character-item": "character-item-tF8oth", + characterItem: "character-item-tF8oth", + itemText: "itemText-Z7f_Ax", + "image-sm": "image-sm-Lw9sfp", + imageSm: "image-sm-Lw9sfp", + image: "image-dVGbeg", + "radius-none": "radius-none-zvsUpk", + radiusNone: "radius-none-zvsUpk", + editable: "editable-C7dYhw", + blank: "blank-JXF_ZP", + panelContainer: "panelContainer-dz4Y3_", + imgContainer: "imgContainer-aDNkEK", + btnContainer: "btnContainer-Fuc8yj", + imgBig: "imgBig-EzD4UR", + btnBig: "btnBig-z6s4Oy", + btnSm: "btnSm-TQDyxJ", + }, + d = i("653061"); + i("155582"); + var u = i("56370"), + f = i("2910"), + h = i("949274"), + p = i("188754"), + v = { + panelContainer: "panelContainer-CFG8bs", + desc: "desc-kkV29Q", + btnContainer: "btnContainer-aAG0sc", + imgBig: "imgBig-nEreCI", + image: "image-edcAG5", + btnBig: "btnBig-RebQ8A", + btnSm: "btnSm-FCD0Kx", + modalMain: "modalMain-MVdsPq", + buttonContainer: "buttonContainer-zLcLBl", + cancelButton: "cancelButton-qu1nd0", + deleteButton: "deleteButton-Pa7a2R", + }, + m = i("967355"), + g = i("925016"), + _ = i("547850"), + y = i("835787"), + b = i("841798"), + I = i("475578"), + w = i("519171"), + x = (e) => { + var t, + i, + n, + r, + { + onRemove: a, + onEdit: s, + imagePrompt: l, + canOperate: c, + containerService: x = null, + currentData: S, + imgUrl: M, + imgSize: C, + } = e, + T = () => { + a(), (0, _.rx)(x, { action: _.Ix.Confirm, type: _.xh.Delete }); + }, + A = () => { + (0, _.rx)(x, { action: _.Ix.Cancel, type: _.xh.Delete }); + }, + k = + null === (i = l.ipKeepList) || void 0 === i + ? void 0 + : null === (t = i[0]) || void 0 === t + ? void 0 + : t.characterId, + P = () => { + (0, _.rx)(x, { action: _.Ix.Show, type: _.xh.Delete }), + (0, b.E8)(x, { + action: b.GW.AtDelete, + page: I.WZ.StoryEditor, + roleId: k, + source: b.gf.Click, + }), + (0, y.T)(x, { action: y.f.Delate }); + var e = g.H.confirm( + { + icon: null, + title: h.oc.t("wimg2img_tittle_delete", {}, "Delete image?"), + content: h.oc.t( + "wimg2img_content_deleteconfirm", + {}, + "The image will be permanently deleted and can\u2019t be recovered." + ), + footer: () => + (0, o.jsxs)("div", { + className: v.buttonContainer, + children: [ + (0, o.jsx)("div", { + className: v.cancelButton, + onClick: () => { + A(), null == e || e.close(); + }, + children: h.oc.t( + "wimg2img_button_cancel", + {}, + "Cancel" + ), + }), + (0, o.jsx)(m.J, { + text: h.oc.t("wimg2img_button_confirm", {}, "Delete"), + className: v.deleteButton, + onClick: () => { + T(), + (0, b.E8)(x, { + action: b.GW.AtDeleteConfirm, + page: I.WZ.StoryEditor, + roleId: k, + source: b.gf.Click, + }), + null == e || e.close(); + }, + }), + ], + }), + }, + { modalMainClassname: v.modalMain } + ); + }, + E = c + ? null == S + ? void 0 + : S.description + : null == l + ? void 0 + : null === (r = l.ipKeepList) || void 0 === r + ? void 0 + : null === (n = r[0]) || void 0 === n + ? void 0 + : n.description; + return (0, o.jsxs)("div", { + className: v.panelContainer, + children: [ + (0, o.jsx)(d.k, { + src: (0, f.C)(M, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + className: v.imgBig, + imageClassName: v.image, + crossOrigin: "anonymous", + style: (0, w.T)(null != C ? C : l, 200), + "data-apm-action": "character-prompt-item-hover-panel", + }), + E + ? (0, o.jsx)(u.Z.Text, { + className: v.desc, + ellipsis: { + rows: 2, + showTooltip: { + type: "tooltip", + props: { + triggerProps: { mouseEnterDelay: 1e3 }, + style: { zIndex: 1002 }, + }, + }, + cssEllipsis: !0, + }, + children: E, + }) + : null, + c && + (0, o.jsxs)("div", { + className: v.btnContainer, + children: [ + (0, o.jsx)(m.J, { + type: "tertiary", + text: h.oc.t( + "character_selecting_re_edit", + {}, + "\u7F16\u8F91\u89D2\u8272" + ), + toolTipsContent: h.oc.t( + "character_selecting_re_edit", + {}, + "\u7F16\u8F91\u89D2\u8272" + ), + className: v.btnBig, + overflowEllipsis: !0, + onClick: s, + }), + (0, o.jsx)(m.J, { + text: "", + type: "tertiary", + toolTipsContent: h.oc.t( + "wimg2img_content_delete", + {}, + "Delete" + ), + className: v.btnSm, + onClick: P, + PrevIcon: p.R64, + }), + ], + }), + ], + }); + }, + S = i("128468"), + M = i("434712"), + C = i("417281"), + T = i("733437"), + A = i("105789"), + k = i.n(A), + P = i("96035"), + E = i.p + "static/image/character-delete.8497f984.png", + D = i("880821"), + R = i("187796"), + N = i("699267"), + L = (e) => { + var t, + i, + r, + { + id: a, + index: u, + canOperate: f = !0, + instance: p, + onRemove: v, + onDidMount: m, + onUpdate: g, + elementId: _, + imagePrompt: w, + containerService: M, + characterGenerateModalService: C, + } = e, + A = (0, T.k)(p, (e) => { + var t; + return { + mode: e.mode, + characterList: + null === (t = e.characterListManager) || void 0 === t + ? void 0 + : t.listData, + }; + }), + { mode: N, characterList: L } = null != A ? A : {}, + [j, O] = (0, l.useState)(!1), + B = (0, l.useRef)(null), + F = (0, l.useRef)(null), + U = (0, l.useRef)(null); + (0, l.useEffect)(() => { + null == m || + m({ placeholderElement: F.current, cursorElement: U.current }); + }, []); + var G = (e) => { + if (e && M) { + var t, i; + (0, y.T)(M, { action: y.f.Show }), + (0, b.E8)(M, { + action: b.GW.Show, + page: I.WZ.StoryEditor, + roleId: + null === (i = w.ipKeepList) || void 0 === i + ? void 0 + : null === (t = i[0]) || void 0 === t + ? void 0 + : t.characterId, + source: b.gf.Hover, + }); + } + O(e); + }, + z = + null == L + ? void 0 + : L.find((e) => { + var t, i; + return ( + e.characterId === + (null == w + ? void 0 + : null === (i = w.ipKeepList) || void 0 === i + ? void 0 + : null === (t = i[0]) || void 0 === t + ? void 0 + : t.characterId) + ); + }), + V = () => { + var e; + if (!!z) + null == C || + C.then((e) => + e.showGenerateModal({ + characterId: z.characterId, + characterName: z.characterName, + refImage: z.refImage, + onSave: g, + }) + ), + (0, b.E8)(M, { + action: b.GW.Edit, + page: I.WZ.StoryEditor, + roleId: + null === (e = w.ipKeepList) || void 0 === e + ? void 0 + : e[0].characterId, + source: b.gf.Click, + }); + }; + (0, P.u)(B.current, () => O(!1)); + var W = f + ? null == z + ? void 0 + : z.characterName + : null === (i = w.ipKeepList) || void 0 === i + ? void 0 + : null === (t = i[0]) || void 0 === t + ? void 0 + : t.characterName, + Z = f ? (null == z ? void 0 : z.url) : w.url, + K = + null !== (r = w.coverUrlMap && (0, R.iI)(w.coverUrlMap)) && + void 0 !== r + ? r + : w.coverUrl, + [H, q] = (0, l.useState)(); + return ( + (0, l.useEffect)(() => { + (function () { + var e = (0, n._)(function* () { + if (Z) { + var { width: e, height: t } = yield (0, D.po)(Z); + q({ width: e, height: t }); + } + }); + return function () { + return e.apply(this, arguments); + }; + })()(); + }, [Z]), + (0, o.jsx)(o.Fragment, { + children: (0, o.jsx)("span", { + id: _, + className: "blend-item", + ref: B, + children: (0, o.jsx)(s.Z, { + position: "tl", + style: { transform: "translateY(5px)" }, + popupVisible: j, + className: "dtTipWrapper", + content: (0, o.jsx)(x, { + containerService: M, + canOperate: f, + imagePrompt: w, + onRemove: () => { + null == v || v(); + }, + onEdit: V, + currentData: z, + imgUrl: Z, + imgSize: H, + }), + triggerProps: { + mouseEnterDelay: 300, + getPopupContainer: () => document.body, + }, + trigger: ["hover", "click"], + onVisibleChange: G, + children: (0, o.jsxs)("span", { + className: k()(c.characterItem, { + [c.story]: N === S.JU.Story, + }), + contentEditable: "false", + suppressContentEditableWarning: !0, + children: [ + (0, o.jsx)(d.k, { + src: z ? K || Z : E, + className: k()(c.imageSm, { [c.radiusNone]: !z }), + imageClassName: c.image, + crossOrigin: "anonymous", + "data-apm-action": "character-prompt-item-content", + }), + (0, o.jsxs)("span", { + className: c.itemText, + children: [ + "@", + z + ? W + : h.ZP.t( + "character_deleted_tips", + {}, + "\u5DF2\u5220\u9664\u7684\u89D2\u8272" + ), + ], + }), + ], + }), + }), + }), + }) + ); + }, + j = (e) => { + var t = (0, N.G)(M.t), + { imagePrompt: i } = e; + return i && (null == i ? void 0 : i.name) === C.UI.IpKeep + ? (0, o.jsx)( + L, + (0, a._)((0, r._)({}, e), { + containerService: t, + imagePrompt: i, + }) + ) + : null; + }; + }, + 746860: function (e, t, i) { + "use strict"; + i.d(t, { w: () => tx }); + var n = i("772322"), + r = i("733437"), + a = i("417281"), + o = i("949274"); + i("894672"); + var s = i("804929"), + l = i("274993"), + c = i("434712"), + d = i("139646"), + u = i("625572"), + f = i("639880"), + h = i("540611"), + p = i("644866"), + v = i("537201"), + m = i("547850"), + g = i("835787"), + _ = i("417699"), + y = i("699267"), + b = i("9156"), + I = i("924086"), + w = i("904667"), + x = i("188754"), + S = i("218571"); + i("645523"); + var M = i("293793"), + C = i("835628"), + T = i("750633"), + A = i("2910"), + k = { + imageCard: "imageCard-Y8_2CB", + otherStatusCard: "otherStatusCard-XdlcpG", + loading: "loading-iA1i3V", + canEditCard: "canEditCard-HoIdma", + smallImageCard: "smallImageCard-m_6EHH", + loadingSpin: "loadingSpin-Ri3sV0", + imgError: "imgError-p66sK1", + contentImg: "contentImg-AhqN5g", + content: "content-iNS6G0", + topRightOperate: "topRightOperate-Q0h7eX", + bottomRightOperate: "bottomRightOperate-qNljKJ", + operateBtn: "operateBtn-shiPyV", + operateBtnTooltips: "operateBtnTooltips-o7mR50", + }, + P = i("653061"), + E = i("967355"), + D = i("70529"), + R = i("369617"), + N = i("880821"), + L = "uploadWrap-i10lHm", + j = "disableUpload-DYqNHH", + O = i("246940"), + B = i("44938"), + F = i("949057"), + U = i("382070"), + G = i("186827"), + z = i("475578"), + V = i("373177"), + W = i("158316"), + Z = i("966728"), + K = i("329870"), + H = i("991303"), + q = 0xa00000, + J = 3, + Y = 7e3, + Q = 7e3, + X = 1, + $ = "image/jpeg,image/jpg,image/png,image/webp", + ee = (e, t) => { + var i, + n = null == e ? void 0 : e.invokeFunction((e) => e.get(D.m)); + null == n || + n.reportDevEvent(V.o.MWEB_BLEND_FILE_INFORMATION, { + file_raw_size: null == t ? void 0 : t.size, + file_type: null == t ? void 0 : t.type, + file_size_str: (0, W.y)( + null !== (i = null == t ? void 0 : t.size) && void 0 !== i + ? i + : 0 + ), + }); + }, + et = (e, t) => { + var i = { + [N.nI.Rate]: K.cZ.RateError, + [N.nI.Size]: K.cZ.SizeError, + [N.nI.Width]: K.cZ.WidthError, + [N.nI.Height]: K.cZ.HeightError, + [N.nI.Type]: K.cZ.TypeError, + [N.nI.Unknown]: K.cZ.Unknown, + }[t]; + (0, K.pi)(e, { status: K.io.Failed, failReason: i }); + }, + ei = (e) => { + (0, K.pi)(e, { status: K.io.Success }); + }; + function en(e, t, i) { + var n = { + [Z.fu.PictureOverRate]: o.oc.t( + "upload_error_ratio", + { number0: 1, number1: H.dJ, number3: H.dJ, number4: 1 }, + "Select an image with an aspect ratio between {number0}:{number1} and {number3}:{number4}" + ), + [Z.fu.PictureOverDimension]: o.oc.t( + "upload_error_px", + { number0: H.jc }, + "Select an image whose length or width is less than {number0} px" + ), + [Z.fu.PictureOverSize]: o.oc.t( + "upload_error_m", + { number0: H.qr >> 20 }, + "Select an image less than {number0} MB" + ), + [Z.fu.PictureWrongFormat]: o.oc.t( + "upload_error_form", + {}, + "Select an image in JPG or PNG" + ), + [Z.fu.FileUploadFailed]: o.oc.t( + "pc_sticker_size_big", + {}, + "File is too large" + ), + [Z.fu.PictureOverCount]: o.oc.t( + "wimg2img_toast_subbmitsuccess", + { number: X }, + "You can only upload 1 image" + ), + }[e]; + R.s.warning(n), + t && + (0, G.rR)(t, { + importType: z.ge.aigcImage, + status: z.MK.Fail, + type: i ? G.ZF.Add : G.ZF.Replace, + actionType: G.mG.Click, + failReason: n, + }); + } + function er(e) { + return e ? (e.length >= X ? Z.fu.PictureOverCount : "") : ""; + } + function ea(e, t) { + e === Z.fu.PictureOverCount && (0, U.S)(t, { failToast: U.f.max4 }); + } + var eo = (function () { + var e = (0, d._)(function* (e, t, i, n) { + try { + ee(t, e); + var r = yield (0, N.$3)(e, { + maxSize: q, + maxRate: J, + maxWidth: Y, + maxHeight: Q, + }); + if (!r.ok) { + var { errorType: a } = r, + o = { + [N.nI.Rate]: Z.fu.PictureOverRate, + [N.nI.Width]: Z.fu.PictureOverDimension, + [N.nI.Height]: Z.fu.PictureOverDimension, + [N.nI.Size]: Z.fu.PictureOverSize, + [N.nI.Type]: Z.fu.PictureWrongFormat, + [N.nI.Unknown]: Z.fu.FileUploadFailed, + }[a]; + en(o, t, n), et(t, a); + return; + } + null == i || i({ file: e, width: r.width, height: r.height }), + ei(t); + } catch (e) { + en(Z.fu.FileUploadFailed, t, n); + } + }); + return function (t, i, n, r) { + return e.apply(this, arguments); + }; + })(), + es = (e) => { + var { + onSuccess: t, + imagePromptList: i, + children: r, + containerService: a, + isAdd: o, + } = e, + { isOverSea: s } = (0, S.useContext)(F.FN), + l = (0, S.useRef)(null), + c = (function () { + var e = (0, d._)(function* (e) { + var i = e.target; + i.onchange = null; + var n = i.files, + r = null == n ? void 0 : n[0]; + if (!r) return !1; + yield eo(r, a, t, o), (i.value = ""); + }); + return function (t) { + return e.apply(this, arguments); + }; + })(), + u = () => { + (0, g.T)(a, { action: g.f.Replace }), + (0, U.S)(a, { importType: z.ge.aigcImage }); + var e, + t = !!O.T.getItem(B.u.isAgreeUploadImageLaw), + n = er(i); + if ((ea(n, a), !n && t)) { + l.current && (l.current.onchange = c), + null === (e = l.current) || void 0 === e || e.click(); + return; + } + if (t && n) { + en(n); + return; + } + (0, m.rx)(a, { action: m.Ix.Show, type: m.xh.PhotoImport }), + O.T.setItem(B.u.isAgreeUploadImageLaw, "true"), + setTimeout(() => { + var e; + null === (e = l.current) || void 0 === e || e.click(); + }, 100); + }; + return (0, n.jsxs)("div", { + className: L, + children: [ + S.cloneElement(r, { onClick: u }), + (0, n.jsx)("input", { + ref: l, + type: "file", + className: j, + accept: $, + }), + ], + }); + }, + el = i("989719"), + ec = i("105789"), + ed = i.n(ec), + eu = (e) => { + var { + isLoading: t, + url: i, + coverUrlMap: r, + isSmallCard: a, + canEdit: s, + className: l, + style: d, + deleteImg: u, + replaceImg: f, + adjustImg: h, + } = e, + [p, v] = (0, C.default)(), + [m, g] = (0, S.useState)(!1), + _ = (0, y.G)(c.t), + b = (0, M.default)(() => { + g(!0); + }), + I = (0, S.useMemo)( + () => + t + ? (0, n.jsx)(T.Z, { className: k.loadingSpin, size: 16 }) + : m + ? (0, n.jsx)(x.eXM, { size: 16, className: k.imgError }) + : (0, n.jsx)("div", { + className: k.content, + children: + i || r + ? (0, n.jsx)(P.k, { + imageClassName: k.contentImg, + src: (0, A.C)(i, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + resolutionUrlMap: r, + loader: (0, n.jsx)(T.Z, { + className: k.loadingSpin, + size: 16, + }), + onError: b, + }) + : null, + }), + [t, i, r, m, b] + ); + return (0, n.jsxs)("div", { + className: ed()(k.imageCard, l, { + [k.otherStatusCard]: t || m, + [k.loading]: t, + [k.smallImageCard]: a, + [k.canEditCard]: s, + }), + style: d, + ref: p, + children: [ + I, + v && !t && s + ? (0, n.jsxs)(n.Fragment, { + children: [ + (0, n.jsx)("div", { + className: k.topRightOperate, + children: (0, n.jsx)(E.J, { + text: "", + type: "tertiary", + toolTipsContent: o.ZP.t( + "wimg2img_content_delete", + {}, + "Delete" + ), + className: k.operateBtn, + onClick: u, + PrevIcon: x.ZVg, + toolTipsClassName: k.operateBtnTooltips, + }), + }), + (0, n.jsxs)("div", { + className: k.bottomRightOperate, + children: [ + (0, n.jsx)(es, { + onSuccess: null != f ? f : el.Z, + containerService: _, + children: (0, n.jsx)(E.J, { + text: "", + type: "tertiary", + toolTipsContent: o.ZP.t( + "wimg2img_content_change", + {}, + "Replace" + ), + className: k.operateBtn, + PrevIcon: x.qT6, + toolTipsClassName: k.operateBtnTooltips, + }), + }), + (0, n.jsx)(E.J, { + className: k.operateBtn, + type: "tertiary", + toolTipsContent: o.ZP.t( + "wimg2img_content_se", + {}, + "Adjust" + ), + onClick: h, + PrevIcon: x.TBd, + toolTipsClassName: k.operateBtnTooltips, + }), + ], + }), + ], + }) + : null, + ], + }); + }, + ef = { + panelContainer: "panelContainer-CxbsLc", + header: "header-gU26_D", + name: "name-cQ3CnE", + closeIcon: "closeIcon-zP8gu7", + imageCard: "imageCard-mDLpb3", + tooltip: "tooltip-YBj4hz", + }, + eh = i("487437"); + i("245535"); + var ep = i("76894"), + ev = "closeConfirmFooter-n_AuOS", + em = "cancelButton-puWInB", + eg = "closeButton-zj1L_X"; + function e_(e) { + var { confirmText: t, onCancel: i, onConfirm: r } = e; + return (0, n.jsxs)("div", { + className: ev, + children: [ + (0, n.jsx)("div", { + className: em, + onMouseDown: (e) => { + e.stopPropagation(), e.preventDefault(), null == i || i(); + }, + children: o.ZP.t("wimg2img_button_cancel", {}, "Cancel"), + }), + (0, n.jsx)(E.J, { + text: t, + className: eg, + onMouseDown: (e) => { + e.stopPropagation(), e.preventDefault(), null == r || r(); + }, + }), + ], + }); + } + var ey = "confirmModal-pil0_8", + eb = (e) => { + var { + title: t, + content: i, + confirmText: r, + onConfirm: a, + onCancel: o, + } = e, + s = ep.Z.confirm({ + wrapClassName: ey, + simple: !1, + icon: null, + closable: !0, + maskClosable: !1, + title: t, + content: i, + closeIcon: (0, n.jsx)(x.Rnl, {}), + footer: () => + (0, n.jsx)(e_, { + confirmText: r, + onCancel: () => { + null == s || s.close(), null == o || o(); + }, + onConfirm: () => { + null == a || a(), null == s || s.close(); + }, + }), + onCancel: () => { + null == o || o(); + }, + }); + }; + function eI(e, t) { + if (!e || !t) return 1; + var i = e / t; + return i > 1.5 ? 1.5 : i < 2 / 3 ? 2 / 3 : 1; + } + var ew = (e) => { + var { + onClose: t, + onRemove: i, + imagePrompt: r, + coverList: a = [], + imagePromptList: s, + instance: c, + canOperate: S, + onUpdate: M, + containerService: C, + } = e, + T = (0, y.G)(b.A), + A = (0, y.G)(_.e), + { isOversea: k = !0 } = null != A ? A : {}; + if (!r) return null; + var P = (function () { + var e = (0, d._)(function* (e, t) { + var { + uri: i, + url: n, + id: a, + width: o, + height: l, + file: d, + coverUrl: p, + name: m, + controlNetList: g, + } = e, + _ = (0, f._)((0, u._)({}, r), { name: v.i[m], isReplace: t }); + (0, I.rx)({ + containerService: C, + imcConfigService: T, + generateImageParamsManager: c, + imageInfo: { + file: d, + uri: i, + url: n, + id: a, + width: o, + height: l, + coverUrl: p, + }, + params: t + ? { name: v.i[m], controlNetList: g, isReplace: t } + : _, + exitImagePromptList: s, + onModalSave: (e) => { + null == M || M(e); + }, + displayAbilities: yield (0, h.N3)(k, C, !1), + }); + }); + return function (t, i) { + return e.apply(this, arguments); + }; + })(), + E = (function () { + var e = (0, d._)(function* () { + yield P(r), (0, g.T)(C, { action: g.f.ChangeSetting }); + }); + return function () { + return e.apply(this, arguments); + }; + })(), + D = () => { + i(), (0, m.rx)(C, { action: m.Ix.Confirm, type: m.xh.Delete }); + }, + R = () => { + (0, m.rx)(C, { action: m.Ix.Cancel, type: m.xh.Delete }); + }, + N = () => { + (0, m.rx)(C, { action: m.Ix.Show, type: m.xh.Delete }), + (0, g.T)(C, { action: g.f.Delate }), + eb({ + title: o.oc.t("wimg2img_tittle_delete", {}, "Delete image?"), + content: o.oc.t( + "wimg2img_content_deleteconfirm", + {}, + "The image will be permanently deleted and can\u2019t be recovered." + ), + confirmText: o.oc.t("wimg2img_button_confirm", {}, "Delete"), + onConfirm: () => { + D(); + }, + onCancel: () => { + R(); + }, + }); + }, + L = (e) => { + var { file: t, width: i, height: n } = e, + a = URL.createObjectURL(t); + P( + (0, f._)((0, u._)({}, r), { + coverUrl: a, + url: a, + file: t, + width: i, + height: n, + }), + !0 + ); + }, + j = (0, p.O)(r), + O = (0, w.G)(j), + B = eI(r.width, r.height); + return (0, n.jsxs)("div", { + className: ef.panelContainer, + children: [ + S + ? (0, n.jsxs)("div", { + className: ef.header, + children: [ + (0, n.jsx)(l.Z, { + className: ef.tooltip, + checkOverflow: eh.ao, + content: O, + trigger: "hover", + children: (0, n.jsx)("span", { + className: ef.name, + children: O, + }), + }), + (0, n.jsx)(x.Rnl, { + className: ef.closeIcon, + onClick: t, + }), + ], + }) + : null, + (0, n.jsx)(eu, { + url: r.coverUrl, + style: { aspectRatio: B }, + isSmallCard: !1, + className: ef.imageCard, + canEdit: S, + deleteImg: N, + replaceImg: L, + adjustImg: E, + }), + ], + }); + }, + ex = i("96035"), + eS = i("211580"), + eM = 8; + function eC(e) { + var { + rootElement: t, + rootElementId: i = "", + triggerElement: n, + triggerElementId: r = "", + } = e, + [a, o] = (0, S.useState)({ left: 0, top: 0 }), + [s, l] = (0, S.useState)({}), + [c, d] = (0, S.useState)("right"), + u = (0, M.default)(() => { + var e = n || document.getElementById(r); + return { + rootEle: + t || + Array.from( + document.querySelectorAll('[id="'.concat(i, '"]')) + ).find((t) => t.contains(e)), + triggerEle: e, + }; + }), + f = (0, M.default)(() => { + var e, + { rootEle: t, triggerEle: i } = u(); + if (!!t && !!i) { + var { + top: n, + left: r, + right: a, + height: s, + } = null !== (e = t.getBoundingClientRect()) && void 0 !== e + ? e + : {}, + { top: c, height: f } = i.getBoundingClientRect(), + h = "right", + p = "".concat(a + eM, "px"), + v = "auto"; + window.innerWidth - a < r && + ((h = "left"), + (p = "auto"), + (v = "".concat(window.innerWidth - r + eM, "px"))), + d(h), + l({ left: p, right: v }), + o({ [h]: [0, s / 2 - (c - n) - f / 2] }); + } + }); + return ( + (0, S.useEffect)(() => { + var { rootEle: e, triggerEle: t } = u(), + i = new ResizeObserver((i) => { + for (var n of i) + (n.target === e || n.target === t) && + (f(), + setTimeout(() => { + f(); + }, 600)); + }); + return ( + e && i.observe(e), + t && i.observe(t), + () => { + i.disconnect(); + } + ); + }, [n, r, t, i, f, u]), + { + tooltipStyle: s, + tooltipPosition: c, + tooltipPopupAlign: a, + calTooltipPosition: f, + } + ); + } + var eT = i("665588"), + eA = "tooltip-v2tJUD", + ek = "canOperate-NofZx3", + eP = "view-ZmHW34"; + function eE(e) { + var { + imagePromptItem: t, + imagePromptList: i, + elementId: r, + canOperate: a, + disabled: o, + disabledTooltipText: d, + mode: u, + loading: f, + isHasMoreFaceGen: h, + index: v, + instance: m, + onRemove: _, + onUpdate: b, + } = e, + I = (0, y.G)(c.t), + [x, M] = (0, S.useState)(!1), + [C, T] = (0, s.default)(void 0, { rootMargin: "0px" }); + (0, S.useEffect)(() => { + !T && M(!1); + }, [T]), + (0, ex.u)(C.current, () => M(!1)); + var A = (e) => { + x && I && (0, g.T)(I, { action: g.f.Show }), M(e); + }, + k = (0, S.useMemo)(() => { + var { coverUrl: e, coverUrlMap: i } = null != t ? t : {}; + return [{ coverUrl: null != e ? e : "", coverUrlMap: i }]; + }, [t]), + P = (0, p.O)(t), + E = (0, S.useMemo)( + () => + o + ? d + : (0, n.jsx)(ew, { + containerService: I, + canOperate: a, + instance: m, + imagePrompt: t, + imagePromptList: i, + coverList: k, + onRemove: () => { + null == _ || _(); + }, + onClose: () => { + M(!1); + }, + onUpdate: b, + }), + [I, a, m, t, i, k, _, b, o, d] + ), + { + tooltipStyle: D, + tooltipPosition: R, + tooltipPopupAlign: N, + } = eC({ + rootElementId: eT.dS, + triggerElement: C.current, + triggerElementId: r, + }); + return (0, n.jsx)("span", { + id: r, + className: "blend-item", + ref: C, + children: (0, n.jsx)(l.Z, { + position: a ? R : "tl", + popupVisible: x, + className: ed()({ [eA]: !0, [ek]: a, [eP]: !a }), + style: D, + content: E, + triggerProps: { + mouseEnterDelay: 300, + getPopupContainer: () => document.body, + popupAlign: N, + autoFitPosition: !0, + alignPoint: !1, + boundaryOffset: { top: 24 }, + }, + trigger: a ? ["click"] : ["hover", "click"], + onVisibleChange: A, + children: (0, n.jsx)("span", { + children: (0, n.jsx)(eS.w, { + mode: u, + disabled: o, + loading: f, + index: v, + name: (0, w.G)(P, h), + coverList: k, + }), + }), + }), + }); + } + var eD = i("128468"), + eR = i("451733"), + eN = i("627420"), + eL = i("489897"), + ej = i("469229"), + eO = i("861879"), + eB = { + styleUploadImageLargeSize: "143px", + styleUploadImageSmallSize: "93px", + styleUploadPanelImageGap: "10px", + }, + eF = i("636803"), + eU = i("819340"), + eG = i("745017"), + ez = i("586315"), + eV = i("462537"), + eW = i("950835"), + eZ = i("280166"), + eK = (function (e) { + return ( + (e[(e.Uploading = 0)] = "Uploading"), + (e[(e.Success = 1)] = "Success"), + (e[(e.Fail = 2)] = "Fail"), + e + ); + })({}); + function eH(e) { + var { + dragUploadContainerId: t, + beforeUploadPreFileFilter: i, + sourceImageInfoList: n = [], + onUploadImageTaskSuccessListChange: r, + } = null != e ? e : {}, + a = (0, y.G)(eU.Z), + s = (0, y.G)(eZ.Y), + l = (0, y.G)(eV.R), + c = a.getImageXUploader(s.appId, eG.I), + [h, p] = (0, S.useState)( + n.map((e) => + (0, f._)((0, u._)({}, e), { id: e.imageId, uploadStatus: 1 }) + ) + ), + [v, m] = (0, S.useState)(!1), + g = (e) => { + p((t) => t.map((t) => (t.id === e.id ? (0, u._)({}, t, e) : t))); + }, + _ = (function () { + var e = (0, d._)(function* (e) { + try { + var t = yield (0, N.$3)(e, { + maxSize: H.qr, + maxRate: H.dJ, + maxWidth: H.jc, + maxHeight: H.jn, + }); + if (!t.ok) return (0, ez.wf)((0, eF.vI)(t.errorType), ""); + var i = yield c.uploadImage({ file: e }); + if (!i.ok) return (0, ez.wf)(Z.fu.FileUploadFailed, ""); + return (0, ez.oW)(i.value); + } catch (e) { + return (0, ez.wf)(Z.fu.FileUploadFailed, ""); + } + }); + return function (t) { + return e.apply(this, arguments); + }; + })(), + b = (0, M.default)( + (function () { + var e = (0, d._)(function* (e) { + var t, + n = + null !== (t = null == i ? void 0 : i(e)) && void 0 !== t + ? t + : e; + if (!!n.length) { + var r = n.map((e) => ({ id: (0, eW.Rl)(), file: e })); + p((e) => + e.concat( + r.map((e) => { + var { id: t, file: i } = e; + return { + id: t, + uploadStatus: 0, + imageUri: "", + imageUrl: "", + width: 0, + height: 0, + }; + }) + ) + ); + var a = []; + yield Promise.allSettled( + r.map( + (function () { + var e = (0, d._)(function* (e) { + var { id: t, file: i } = e, + n = yield _(i); + if (n.ok) { + var { uri: r, height: o, width: s } = n.value; + g({ + id: t, + uploadStatus: 1, + imageUrl: URL.createObjectURL(i), + imageUri: r, + width: s, + height: o, + }); + } else a.push({ id: t, uploadError: n.code }); + }); + return function (t) { + return e.apply(this, arguments); + }; + })() + ) + ), + a.length && + (1 === a.length + ? (0, eF.tH)(a[0].uploadError) + : R.s.warning({ + content: o.ZP.t( + "dre_t2i_style_upload_error_toast", + {}, + "Couldn't upload some images. Try again." + ), + style: { top: 36 }, + }), + p((e) => e.filter((e) => a.every((t) => t.id !== e.id)))); + } + }); + return function (t) { + return e.apply(this, arguments); + }; + })() + ), + I = (e) => { + p(h.filter((t) => t.id !== e.id)); + }, + w = (function () { + var e = (0, d._)(function* (e, t) { + g({ id: e.id, uploadStatus: 0 }); + var i = yield _(t); + if (i.ok) { + var { uri: n, width: r, height: a } = i.value; + g({ + id: e.id, + uploadStatus: 1, + imageUrl: URL.createObjectURL(t), + imageUri: n, + width: r, + height: a, + coverUrlMap: void 0, + }); + } else p((t) => t.filter((t) => t.id !== e.id)), (0, eF.tH)(i.code); + }); + return function (t, i) { + return e.apply(this, arguments); + }; + })(); + return ( + (0, S.useEffect)(() => { + t && + l.registerMenuFileDragHandler({ + containerId: t, + handleDrop: (e) => { + b(e); + }, + isAcceptFile: (e, t) => eR.lq.includes(e) || eR.lq.includes(t), + handleDropOver: (e) => { + m(e); + }, + }); + }, [t, l, b]), + (0, S.useEffect)(() => { + var e = h.filter((e) => 1 === e.uploadStatus || e.imageUri), + t = e.map((e) => e.imageUri), + i = n.map((e) => e.imageUri); + (e.length !== n.length || t.some((e) => !i.includes(e))) && + (null == r || r(e)); + }, [h, n, r]), + { + isOverDragging: v, + uploadImageTaskList: h, + uploadImages: b, + deleteUploadImage: I, + replaceUploadImage: w, + } + ); + } + var eq = "panelContainer-cJc5l0", + eJ = "title-iTHhIs", + eY = "titleText-ytR1rR", + eQ = "close-zsDV3n", + eX = "imageListContainer-JTGNwx", + e$ = "imageList-J_JW9r", + e0 = "smallCardList-VVM72R", + e1 = "hidden-cB1S7K", + e2 = "addPic-kWvgcv", + e6 = "disabledAddPic-nGXT3C", + e4 = "addIcon-n0fOim", + e3 = "addPicInput-YiK9Js", + e8 = "smallCard-N8S1Ya", + e9 = "dragMask-etNtpw", + e5 = "titleTextTooltip-vs8hT2", + e7 = "addPicTooltip-jmdzqH", + te = "IMG_PROMPT_MULTI_IMG_UPLOAD_INPUT_ID", + tt = "IMG_PROMPT_MULTI_IMG_UPLOAD_DROP_CONTAINER_ID", + ti = (e) => { + var { text: t } = e; + return (0, n.jsxs)("div", { + className: e9, + children: [(0, n.jsx)(x.CgY, { size: 20 }), t], + }); + }, + tn = (e) => { + var { isSmallCard: t, disabled: i, onFileChange: r } = e, + a = (e) => { + var t, + { target: i } = e; + null == r || + r(Array.from(null !== (t = i.files) && void 0 !== t ? t : [])), + (i.value = ""); + }; + return (0, n.jsx)(l.Z, { + content: o.ZP.t( + "multiple_three_only", + {}, + "Can't upload more images" + ), + position: "top", + disabled: !i, + className: e7, + children: (0, n.jsxs)("label", { + htmlFor: te, + className: ed()(e2, { [e6]: i, [e8]: t }), + children: [ + (0, n.jsx)(x.SC9, { className: e4, size: 20 }), + t + ? "" + : o.ZP.t( + "dre_t2i_style_reference_batch_import", + {}, + "Upload images" + ), + (0, n.jsx)("input", { + type: "file", + multiple: !0, + disabled: i, + id: te, + className: e3, + accept: eR.lq.join(","), + onChange: a, + }), + ], + }), + }); + }, + tr = (e) => { + var t, + { + referImageList: i, + imagePromptItemId: r, + onStyleUploadPanelReferImageUpdate: s, + onSourceImagePromptItemUpdate: p, + title: m, + generateImageParamsManager: g, + onRemove: w, + onClose: x, + setForbiddenTooltipClose: C, + onUploadingChange: T, + onInsert: A, + styleReferenceCount: k = 0, + getImagePromptList: P, + } = e, + E = (0, y.G)(c.t), + D = (0, y.G)(b.A), + N = (0, y.G)(_.e), + { isOversea: L = !0 } = null != N ? N : {}, + j = (0, S.useRef)(i.length), + O = (0, M.default)((e) => { + s( + e + .filter((e) => e.uploadStatus === eK.Success) + .reduce((e, t) => { + var n = + null == i + ? void 0 + : i.find( + (e) => + e.imageId === t.id && + e.image.imageUri === t.imageUri + ); + return ( + n + ? e.push(n) + : e.push({ + styleWeight: eL.FY.default, + image: { + imageUri: t.imageUri, + imageUrl: t.imageUrl, + width: t.width, + height: t.height, + }, + imageId: t.id, + }), + e + ); + }, []) + ); + }), + B = k - j.current, + { + isOverDragging: F, + uploadImageTaskList: U, + uploadImages: G, + deleteUploadImage: z, + replaceUploadImage: V, + } = eH({ + dragUploadContainerId: tt, + beforeUploadPreFileFilter: (e) => + e + ? U.length + e.length + B > eN.I + ? (R.s.warning({ + content: o.ZP.t( + "dre_t2i_style_upload_limit_toast", + { num: eN.I }, + "You can only upload up to {num} style references" + ), + style: { top: 36 }, + }), + e.slice(0, eN.I - B - U.length)) + : e + : [], + sourceImageInfoList: + null !== + (t = + null == i + ? void 0 + : i.map((e) => + (0, f._)((0, u._)({}, e.image), { + imageId: e.imageId, + }) + )) && void 0 !== t + ? t + : [], + onUploadImageTaskSuccessListChange: O, + }), + W = B + U.length >= eN.I, + Z = (function () { + var e = (0, d._)(function* (e, t) { + yield V(t, e.file); + }); + return function (t, i) { + return e.apply(this, arguments); + }; + })(), + K = (function () { + var e = (0, d._)(function* (e) { + var t = + null == i + ? void 0 + : i.find( + (t) => + t.imageId === e.id && t.image.imageUri === e.imageUri + ); + if (!!t) { + var n = null == P ? void 0 : P(i); + null == C || C(!0), + (0, I.rx)({ + containerService: E, + imcConfigService: D, + generateImageParamsManager: g, + imageInfo: { + uri: e.imageUri, + url: e.imageUrl, + width: e.width, + height: e.height, + }, + params: { + name: v.i[a.UI.StyleReference], + imageUriList: [e.imageUri], + imageWeightList: [t.styleWeight], + styleReference: { + image: { + imageUri: e.imageUri, + imageUrl: e.imageUrl, + width: e.width, + height: e.height, + }, + styleWeight: t.styleWeight, + }, + }, + imagePromptList: n, + onModalSave: (t) => { + if ( + (null == C || C(!1), t.name === a.UI.StyleReference) + ) { + var n, + o, + [l] = t.imageWeightList; + s( + null !== + (o = + null == i + ? void 0 + : i.map((t) => + t.imageId === e.id && + t.image.imageUri === e.imageUri + ? (0, f._)((0, u._)({}, t), { + styleWeight: l, + }) + : t + )) && void 0 !== o + ? o + : [] + ); + } else + 1 === U.length + ? null == p || + p((0, f._)((0, u._)({}, t), { id: r })) + : (s( + null !== + (n = + null == i + ? void 0 + : i.filter((t) => t.imageId !== e.id)) && + void 0 !== n + ? n + : [], + !0 + ), + null == A || A(t)); + }, + onModalCancel: () => { + null == C || C(!1); + }, + displayAbilities: yield (0, h.N3)(L, E, !1), + }); + } + }); + return function (t) { + return e.apply(this, arguments); + }; + })(), + H = (e) => { + var t = () => { + z(e); + }; + 1 === U.filter((e) => e.uploadStatus === eK.Success).length + ? eb({ + title: o.ZP.t( + "wimg2img_tittle_delete", + {}, + "Delete image?" + ), + content: o.ZP.t( + "wimg2img_content_deleteconfirm", + {}, + "The image will be permanently deleted and can\u2019t be recovered." + ), + onConfirm: () => { + t(), null == w || w(); + }, + confirmText: o.ZP.t( + "wimg2img_button_confirm", + {}, + "Delete" + ), + }) + : t(); + }; + (0, S.useEffect)(() => { + var e = U.some((e) => e.uploadStatus === eK.Uploading); + null == T || T(e); + }, [U, T]); + var [q, J] = (0, eO.q_)(() => ({ + config: { tension: 400, friction: 30 }, + height: 0, + })); + (0, S.useEffect)(() => { + var e = U.length > 1, + t = Math.ceil((U.length + 1) / 3), + i = + t * + (e + ? parseInt(eB.styleUploadImageSmallSize, 10) + : parseInt(eB.styleUploadImageLargeSize, 10)) + + (t - 1) * parseInt(eB.styleUploadPanelImageGap, 10); + J.start({ height: i }); + }, [U.length, J]); + var Y = U.length > 1; + return (null == i ? void 0 : i.length) + ? (0, n.jsxs)("div", { + className: eq, + id: tt, + children: [ + (0, n.jsxs)("div", { + className: eJ, + children: [ + (0, n.jsx)(l.Z, { + checkOverflow: eh.ao, + trigger: "hover", + content: m, + className: e5, + children: (0, n.jsx)("div", { + className: eY, + children: m, + }), + }), + (0, n.jsx)("div", { + className: eQ, + onClick: x, + children: (0, n.jsx)(ej.Z, {}), + }), + ], + }), + (0, n.jsxs)("div", { + className: eX, + children: [ + (0, n.jsxs)(eO.q.div, { + className: ed()(e$, { [e1]: F, [e0]: Y }), + style: q, + children: [ + (0, n.jsx)(tn, { + isSmallCard: Y, + onFileChange: G, + disabled: W, + }), + U.map((e) => + (0, n.jsx)( + eu, + { + url: e.imageUrl, + coverUrlMap: e.coverUrlMap, + isLoading: e.uploadStatus === eK.Uploading, + isSmallCard: Y, + replaceImg: (t) => Z(t, e), + deleteImg: () => { + H(e); + }, + adjustImg: () => { + K(e); + }, + canEdit: !0, + }, + e.id + ) + ), + ], + }), + F + ? (0, n.jsx)(ti, { + text: o.ZP.t( + "i2i_drag", + {}, + "Dragging image to upload " + ), + }) + : null, + ], + }), + ], + }) + : null; + }, + ta = i("519171"), + to = { + container: "container-XMBR3v", + imgBig: "imgBig-t9ZTtT", + image: "image-NfQOgv", + topLeft: "topLeft-XTdQYj", + picIndex: "picIndex-IJBdEM", + bottomRight: "bottomRight-H0b0jm", + btnSm: "btnSm-dwezG8", + loadingSpin: "loadingSpin-ICGU_T", + }, + ts = (e) => { + var { coverList: t, imagePrompt: i } = e, + [r, a] = (0, S.useState)(0), + o = () => { + a((e) => (e + 1 >= t.length ? e : e + 1)); + }, + s = () => { + a((e) => (e - 1 >= 0 ? e - 1 : e)); + }; + return t.length + ? (0, n.jsxs)("div", { + className: to.container, + children: [ + (0, n.jsx)(P.k, { + src: t[r].coverUrl, + resolutionUrlMap: t[r].coverUrlMap, + className: to.imgBig, + imageClassName: to.image, + loader: (0, n.jsx)(T.Z, { + className: to.loadingSpin, + size: 16, + }), + style: (0, ta.T)(i), + crossOrigin: "anonymous", + "data-apm-action": "image-prompt-item-hover-panel", + }), + t.length > 1 + ? (0, n.jsxs)(n.Fragment, { + children: [ + (0, n.jsx)("div", { + className: to.topLeft, + children: (0, n.jsxs)("span", { + className: to.picIndex, + children: [r + 1, "/", t.length], + }), + }), + (0, n.jsxs)("div", { + className: to.bottomRight, + children: [ + (0, n.jsx)(E.J, { + text: "", + type: "tertiary", + className: to.btnSm, + PrevIcon: x.USi, + onClick: s, + disabled: 0 === r, + }), + (0, n.jsx)(E.J, { + text: "", + type: "tertiary", + className: to.btnSm, + PrevIcon: x.AQS, + onClick: o, + disabled: r === t.length - 1, + }), + ], + }), + ], + }) + : null, + ], + }) + : null; + }, + tl = { + panelContainer: "panelContainer-NoXHfn", + header: "header-paYCQj", + titleContainer: "titleContainer-y3TQC_", + title: "title-ft3EeB", + close: "close-Sg_6Xo", + lockedDescTooltips: "lockedDescTooltips-IgcOrW", + lockedIcon: "lockedIcon-Zb9Sfo", + lockedIconCursor: "lockedIconCursor-TPec3f", + imageListContainer: "imageListContainer-kjzLjY", + imageList: "imageList-m9wf28", + singleImageList: "singleImageList-wzZyFN", + singleImageCard: "singleImageCard-MlfYFB", + smallCardList: "smallCardList-n5m2cx", + }, + tc = (e) => { + var { title: t, coverList: i, lockedDesc: r, onClose: a } = e; + if (!i.length) return null; + var o = i.length > 2, + s = 1 === i.length; + return (0, n.jsxs)("div", { + className: tl.panelContainer, + children: [ + (0, n.jsxs)("div", { + className: tl.header, + children: [ + (0, n.jsxs)("div", { + className: tl.titleContainer, + children: [ + (0, n.jsx)("span", { className: tl.title, children: t }), + (0, n.jsx)(l.Z, { + position: "top", + content: null != r ? r : "", + className: tl.lockedDescTooltips, + children: (0, n.jsx)(x.nsc, { + className: ed()(tl.lockedIcon, { + [tl.lockedIconCursor]: r, + }), + size: 16, + }), + }), + ], + }), + (0, n.jsx)("div", { + className: tl.close, + onClick: a, + children: (0, n.jsx)(ej.Z, {}), + }), + ], + }), + (0, n.jsx)("div", { + className: tl.imageListContainer, + children: (0, n.jsx)("div", { + className: ed()(tl.imageList, { + [tl.smallCardList]: o, + [tl.singleImageList]: s, + }), + children: i.map((e) => + (0, n.jsx)( + eu, + { + url: e.coverUrl, + coverUrlMap: e.coverUrlMap, + isSmallCard: o, + className: s ? tl.singleImageCard : "", + }, + e.coverUrl + ) + ), + }), + }), + ], + }); + }, + td = "tooltip-BSFx6l", + tu = i("727280"), + tf = i("108982"); + function th(e) { + var { + uri: t = "", + url: i = "", + coverUrl: n = "", + width: r = 0, + height: a = 0, + imageUriList: o, + imageWeightList: s, + coverUrlMap: l, + } = e; + return { + image: { + imageUri: o[0] || t, + imageUrl: i || n, + width: r, + height: a, + coverUrlMap: l, + }, + styleWeight: s[0], + }; + } + function tp(e) { + var { referImageList: t } = e.commonAsset; + return t + ? t.map((e) => ({ + coverUrl: e.image.imageUrl, + coverUrlMap: e.image.coverUrlMap, + })) + : []; + } + function tv(e) { + if ((0, a.iB)(e)) { + var t; + return (0, f._)((0, u._)({}, e), { + commonAsset: (0, f._)((0, u._)({}, e.commonAsset), { + referImageList: + null === (t = e.commonAsset.referImageList) || void 0 === t + ? void 0 + : t.map((e) => + (0, f._)((0, u._)({}, e), { imageId: (0, eW.Rl)() }) + ), + }), + }); + } + return (0, f._)((0, u._)({}, e), { imageId: (0, eW.Rl)() }); + } + function tm(e) { + var { assetCode: t, referImageList: i } = e.commonAsset; + if (t) { + var n = o.ZP.t("dre_t2i_style_ref_trigger_word", {}, "style"); + return o.ZP.t( + "dre_t2i_style_code_format", + { style: n, style_code: t }, + "#{style}{style_code}" + ); + } + return i && i.length > 1 + ? o.ZP.t( + "dre_t2i_style_reference_status_count", + { num: i.length }, + "{num} style references" + ) + : (0, w.G)(tf.s.StyleReference); + } + function tg(e, t) { + var [i, n] = (0, S.useState)(tv(e)), + r = (0, S.useMemo)(() => { + if ((0, a.D3)(i)) + return [(0, f._)((0, u._)({}, th(i)), { imageId: i.imageId })]; + if ((0, a.iB)(i)) { + var e, t; + return null !== + (t = + null === (e = i.commonAsset) || void 0 === e + ? void 0 + : e.referImageList) && void 0 !== t + ? t + : []; + } + return []; + }, [i]), + o = (0, S.useMemo)(() => { + if ((0, a.D3)(i)) { + var e, t; + return [ + { + coverUrl: + null !== + (t = + null !== (e = null == i ? void 0 : i.coverUrl) && + void 0 !== e + ? e + : null == i + ? void 0 + : i.url) && void 0 !== t + ? t + : "", + coverUrlMap: null == i ? void 0 : i.coverUrlMap, + }, + ]; + } + return (0, a.iB)(i) ? tp(i) : []; + }, [i]), + s = (0, S.useMemo)( + () => + i + ? (0, a.D3)(i) + ? (0, w.G)(tf.s.StyleReference) + : (0, a.iB)(i) + ? tm(i) + : "" + : "", + [i] + ), + l = (0, S.useMemo)(() => { + if ((0, a.iB)(i)) { + var e; + return null === (e = i.commonAsset) || void 0 === e + ? void 0 + : e.assetCode; + } + return ""; + }, [i]), + c = (0, M.default)((e, r) => { + if (1 === e.length) { + var o = (0, tu.Tt)(e[0], i); + n((0, f._)((0, u._)({}, o), { imageId: e[0].imageId })), + r && (null == t || t(o)); + } else if (e.length > 1) { + var s = (0, f._)((0, u._)({}, i), { + name: a.UI.StyleCode, + commonAsset: (0, f._)( + (0, u._)( + {}, + (0, a.D3)(i) + ? { assetType: eD.d_.Style, assetCode: eN.o } + : i.commonAsset + ), + { referImageList: e } + ), + }); + n(s), r && (null == t || t(s)); + } + }); + return ( + (0, S.useEffect)(() => { + n(tv(e)); + }, [e]), + { + tempImagePromptItem: i, + styleUploadPanelReferImageList: r, + stylePromptItemCoverList: o, + stylePromptItemName: s, + stylePromptItemAssetCode: l, + onStyleUploadPanelReferImageUpdate: c, + } + ); + } + var t_ = "style-code-prompt-item"; + function ty(e, t) { + var { referImageList: i = [] } = e.commonAsset, + { referImageList: n = [] } = t.commonAsset; + if (i.length !== n.length) return !1; + for (var r = 0; r < i.length; r++) + if ( + i[r].image.imageUri !== n[r].image.imageUri || + i[r].styleWeight !== n[r].styleWeight + ) + return !1; + return !0; + } + function tb(e, t) { + var { uri: i, imageWeightList: n } = e, + { uri: r, imageWeightList: a } = t; + return i === r && n[0] === a[0]; + } + var tI = (e) => { + var { + imagePromptItem: t, + generateImageParamsManager: i, + canOperate: r, + disabled: d, + disabledTooltipText: h, + styleReferenceCount: p, + elementId: v = t_, + mode: m, + loading: _, + index: b, + onRemove: I, + onUpdate: w, + onInsert: x, + } = e, + [C, T] = (0, S.useState)(!1), + A = (0, y.G)(c.t), + [k, P] = (0, S.useState)(!1), + { + tempImagePromptItem: E, + styleUploadPanelReferImageList: D, + stylePromptItemCoverList: R, + stylePromptItemName: N, + stylePromptItemAssetCode: L, + onStyleUploadPanelReferImageUpdate: j, + } = tg(t, w), + O = (0, M.default)(() => { + if (!!E) { + if (E.name !== t.name) { + null == w || w(E); + return; + } + if ((0, a.iB)(t) && (0, a.iB)(E)) { + !ty(t, E) && (null == w || w(E)); + return; + } + if ((0, a.D3)(t) && (0, a.D3)(E)) { + !tb(t, E) && (null == w || w(E)); + return; + } + } + }), + [B, F] = (0, s.default)(void 0, { rootMargin: "0px" }); + (0, S.useEffect)(() => { + !F && (T(!1), O()); + }, [F, O]), + (0, ex.u)(B.current, () => { + T(!1), O(); + }); + var { + tooltipStyle: U, + tooltipPosition: G, + tooltipPopupAlign: z, + } = eC({ + rootElementId: eT.dS, + triggerElement: B.current, + triggerElementId: v, + }), + V = (0, S.useRef)(!1), + W = (e) => { + if (!k) { + if (!e && V.current) { + eb({ + title: o.ZP.t( + "dre_t2i_reference_upload_exit_popup_title", + {}, + "Upload is in progress" + ), + content: o.ZP.t( + "dre_t2i_reference_upload_exit_popup_desc", + {}, + "Close window? Reference upload may not complete." + ), + onConfirm: () => { + T(!1); + }, + confirmText: o.ZP.t("duanpian_confirm", {}, "Confirm"), + }); + return; + } + C && A && (0, g.T)(A, { action: g.f.Show }), !e && O(), T(e); + } + }, + Z = () => { + null == I || I(); + }, + K = (0, M.default)((e) => { + V.current = e; + }), + H = (0, M.default)((e) => { + var { imagePromptList: n = [], prompt: r = "" } = + null != i ? i : {}, + o = n.findIndex((e) => e.id === t.id), + s = + 1 === e.length + ? (0, tu.Tt)(e[0], E) + : (0, f._)((0, u._)({}, E), { + name: a.UI.StyleCode, + commonAsset: (0, f._)( + (0, u._)( + {}, + (0, a.D3)(E) + ? { assetType: eD.d_.Style, assetCode: eN.o } + : E.commonAsset + ), + { referImageList: e } + ), + }), + l = [...n.slice(0, o), s, ...n.slice(o + 1)].filter(Boolean); + return (0, tu.Jf)({ imagePromptList: l, prompt: r }) + .imagePromptList; + }), + q = () => + d + ? h + : R.every((e) => !e.coverUrl && !e.coverUrlMap) + ? null + : r && !L + ? (0, n.jsx)(tr, { + generateImageParamsManager: i, + referImageList: D, + imagePromptItemId: t.id, + title: N, + onRemove: Z, + onStyleUploadPanelReferImageUpdate: j, + onSourceImagePromptItemUpdate: w, + onClose: () => W(!1), + setForbiddenTooltipClose: P, + onInsert: x, + styleReferenceCount: p, + onUploadingChange: K, + getImagePromptList: H, + }) + : r && L + ? (0, n.jsx)(tc, { + coverList: R, + title: N, + lockedDesc: o.ZP.t( + "dre_t2i_style_cant_change_hover", + {}, + "Can't adjust with a style code applied" + ), + onClose: () => W(!1), + }) + : (0, n.jsx)(ts, { imagePrompt: t, coverList: R }); + return (0, n.jsx)("span", { + id: v, + className: "blend-item", + ref: B, + children: (0, n.jsx)(l.Z, { + position: r ? G : "tl", + popupVisible: C, + className: ed()({ + [td]: !0, + imageBlendDtTipWrapper: !d, + imageBlendDtTipWrapperMultiUploadPanel: r && !d, + }), + style: U, + content: q(), + triggerProps: { + mouseEnterDelay: 300, + getPopupContainer: () => document.body, + popupAlign: z, + autoFitPosition: !0, + alignPoint: !1, + boundaryOffset: { top: 24 }, + }, + disabled: !R.length, + trigger: r ? ["click"] : ["hover", "click"], + onVisibleChange: W, + children: (0, n.jsx)("span", { + children: (0, n.jsx)(eS.w, { + mode: m, + disabled: d, + loading: _, + index: b, + name: N, + coverList: R, + }), + }), + }), + }); + }, + tw = i("817585"), + tx = (e) => { + var t, + { + id: i, + index: s, + canOperate: l = !0, + instance: c, + loading: d, + onRemove: u, + onDidMount: f, + onUpdate: h, + onInsert: p, + elementId: v, + imagePrompt: m, + imageItemList: g, + disabled: _, + } = e, + y = (0, r.k)(c, (e) => ({ + imagePromptList: e.imagePromptList, + mode: e.mode, + generatePromptParams: e.generatePromptParams, + })), + { + imagePromptList: b, + mode: I, + generatePromptParams: w, + } = null != y ? y : {}, + x = m || (null == b ? void 0 : b.find((e) => e.id === i)), + M = ( + null !== + (t = + null == w + ? void 0 + : w.imagePromptList.filter((e) => (0, a.D3)(e))) && + void 0 !== t + ? t + : [] + ).length, + C = o.ZP.t( + "import_character_reference_photo_fail_tips", + {}, + "\u8BBE\u7F6E\u51FA\u6F14\u89D2\u8272\u540E\uFF0C\u4E0D\u652F\u6301\u8BBE\u7F6E\u66F4\u591A\u53C2\u8003\u9879" + ), + T = (0, S.useMemo)(() => (0, tw.V)(null != b ? b : g), [g, b]); + return x && ((0, a.iB)(x) || (0, a.D3)(x)) + ? (0, n.jsx)(tI, { + imagePromptItem: x, + generateImageParamsManager: c, + canOperate: l, + disabled: _, + disabledTooltipText: C, + styleReferenceCount: M, + elementId: v, + mode: I, + loading: d, + index: s, + onRemove: u, + onUpdate: h, + onInsert: p, + }) + : (0, n.jsx)(eE, { + imagePromptItem: x, + instance: c, + canOperate: l, + disabled: _, + disabledTooltipText: C, + elementId: v, + mode: I, + loading: d, + isHasMoreFaceGen: T, + index: s, + onRemove: u, + onUpdate: h, + }); + }; + }, + 636803: function (e, t, i) { + "use strict"; + i.d(t, { wA: () => L, vI: () => P, tH: () => E }); + var n = i("139646"), + r = i("772322"), + a = i("218571"), + o = i("949274"), + s = i("369617"), + l = i("880821"), + c = i("966728"), + d = "uploadWrap-X3GCmh", + u = "disableUpload-KEhkod", + f = i("246940"), + h = i("44938"), + p = i("547850"), + v = i("949057"), + m = i("991303"), + g = i("70529"), + _ = i("601191"), + y = i("382070"), + b = i("835787"), + I = i("186827"), + w = i("475578"), + x = i("373177"), + S = i("158316"), + M = i("329870"), + C = i("727280"), + T = (e, t) => { + var i, + n = null == e ? void 0 : e.invokeFunction((e) => e.get(g.m)); + null == n || + n.reportDevEvent(x.o.MWEB_BLEND_FILE_INFORMATION, { + file_raw_size: null == t ? void 0 : t.size, + file_type: null == t ? void 0 : t.type, + file_size_str: (0, S.y)( + null !== (i = null == t ? void 0 : t.size) && void 0 !== i + ? i + : 0 + ), + }); + }, + A = (e, t) => { + var i = { + [l.nI.Rate]: M.cZ.RateError, + [l.nI.Size]: M.cZ.SizeError, + [l.nI.Width]: M.cZ.WidthError, + [l.nI.Height]: M.cZ.HeightError, + [l.nI.Type]: M.cZ.TypeError, + [l.nI.Unknown]: M.cZ.Unknown, + }[t]; + (0, M.pi)(e, { status: M.io.Failed, failReason: i }); + }, + k = (e) => { + (0, M.pi)(e, { status: M.io.Success }); + }; + function P(e) { + return { + [l.nI.Rate]: c.fu.PictureOverRate, + [l.nI.Width]: c.fu.PictureOverDimension, + [l.nI.Height]: c.fu.PictureOverDimension, + [l.nI.Size]: c.fu.PictureOverSize, + [l.nI.Type]: c.fu.PictureWrongFormat, + [l.nI.Unknown]: c.fu.FileUploadFailed, + }[e]; + } + function E(e, t, i) { + var n = { + [c.fu.PictureOverRate]: o.oc.t( + "upload_error_ratio", + { number0: 1, number1: m.dJ, number3: m.dJ, number4: 1 }, + "Select an image with an aspect ratio between {number0}:{number1} and {number3}:{number4}" + ), + [c.fu.PictureOverDimension]: o.oc.t( + "upload_error_px", + { number0: m.jc }, + "Select an image whose length or width is less than {number0} px" + ), + [c.fu.PictureOverSize]: o.oc.t( + "upload_error_m", + { number0: m.qr >> 20 }, + "Select an image less than {number0} MB" + ), + [c.fu.PictureWrongFormat]: o.oc.t( + "upload_error_form", + {}, + "Select an image in JPG or PNG" + ), + [c.fu.FileUploadFailed]: o.oc.t( + "pc_sticker_size_big", + {}, + "File is too large" + ), + [c.fu.PictureOverCount]: o.oc.t( + "wimg2img_toast_subbmitsuccess", + { number: m.Uj }, + "You can only upload 1 image" + ), + }[e]; + s.s.warning({ content: n, style: { top: 36 } }), + t && + (0, I.rR)(t, { + importType: w.ge.aigcImage, + status: w.MK.Fail, + type: i ? I.ZF.Add : I.ZF.Replace, + actionType: I.mG.Click, + failReason: n, + }); + } + function D(e) { + if (!e) return ""; + var t = 0, + i = 0, + n = 0; + for (var r of e) + (0, C.DX)(r) || (0, _.vp)(r) + ? !t && (t = 1) + : (0, _.f4)(r) + ? !n && (n = 1) + : (i += 1); + return t + i + n >= m.Uj ? c.fu.PictureOverCount : ""; + } + function R(e, t) { + e === c.fu.PictureOverCount && (0, y.S)(t, { failToast: y.f.max4 }); + } + var N = (function () { + var e = (0, n._)(function* (e, t, i, n) { + try { + T(t, e); + var r = yield (0, l.$3)(e, { + maxSize: m.qr, + maxRate: m.dJ, + maxWidth: m.jc, + maxHeight: m.jn, + }); + if (!r.ok) { + var { errorType: a } = r, + o = P(a); + E(o, t, n), A(t, a); + return; + } + null == i || i({ file: e, width: r.width, height: r.height }), + k(t); + } catch (e) { + E(c.fu.FileUploadFailed, t, n); + } + }); + return function (t, i, n, r) { + return e.apply(this, arguments); + }; + })(), + L = (e) => { + var { + onSuccess: t, + imagePromptList: i, + children: o, + containerService: s, + isAdd: l, + } = e, + { isOverSea: c } = (0, a.useContext)(v.FN), + g = (0, a.useRef)(null), + _ = (e) => { + (0, b.T)(s, { action: b.f.Replace }), + (0, y.S)(s, { importType: w.ge.aigcImage }); + var t, + n = !!f.T.getItem(h.u.isAgreeUploadImageLaw), + r = D(i); + if ((R(r, s), !r && n)) { + null === (t = g.current) || void 0 === t || t.click(); + return; + } + if (r) { + E(r); + return; + } + (0, p.rx)(s, { action: p.Ix.Show, type: p.xh.PhotoImport }), + f.T.setItem(h.u.isAgreeUploadImageLaw, "true"), + setTimeout(() => { + var e; + null === (e = g.current) || void 0 === e || e.click(); + }, 100); + }, + I = (function () { + var e = (0, n._)(function* (e) { + var i = e.target.files, + n = null == i ? void 0 : i[0]; + if (!!n) yield N(n, s, t, l), (e.target.value = ""); + }); + return function (t) { + return e.apply(this, arguments); + }; + })(); + return (0, r.jsxs)("div", { + className: d, + children: [ + a.cloneElement(o, { onClick: _ }), + (0, r.jsx)("input", { + ref: g, + type: "file", + className: u, + onChange: I, + accept: m.I5, + }), + ], + }); + }; + }, + 96035: function (e, t, i) { + "use strict"; + i.d(t, { + u: function () { + return r; + }, + }); + var n = i(218571), + r = (e, t) => { + (0, n.useEffect)(() => { + if (!!e) { + var i = new MutationObserver((e, i) => { + for (var n of e) { + if (!n.removedNodes.length) return; + t(); + } + }), + n = { childList: !0 }; + return ( + i.observe(e, n), + () => { + i.disconnect(); + } + ); + } + }, [e, t]); + }; + }, + 966728: function (e, t, i) { + "use strict"; + i.d(t, { + cL: function () { + return n; + }, + fu: function () { + return r; + }, + }); + var n = (function (e) { + return ( + (e.ArrowRight = "ArrowRight"), + (e.ArrowLeft = "ArrowLeft"), + (e.Backspace = "Backspace"), + (e.ArrowUp = "ArrowUp"), + (e.ArrowDown = "ArrowDown"), + e + ); + })({}), + r = (function (e) { + return ( + (e[(e.PictureOverRate = 0)] = "PictureOverRate"), + (e[(e.PictureOverDimension = 1)] = "PictureOverDimension"), + (e[(e.PictureOverSize = 2)] = "PictureOverSize"), + (e[(e.PictureWrongFormat = 3)] = "PictureWrongFormat"), + (e[(e.FileUploadFailed = 4)] = "FileUploadFailed"), + (e[(e.PictureOverCount = 5)] = "PictureOverCount"), + e + ); + })({}); + }, + 904667: function (e, t, i) { + "use strict"; + i.d(t, { + G: function () { + return a; + }, + }); + var n = i(108982), + r = i(949274); + function a(e) { + var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1]; + return e + ? { + [n.s.FaceGan]: t + ? "".concat( + r.oc.t( + "dre_t2i_reference_status_more_faces", + {}, + "\u53C2\u8003\u4EBA\u50CF\u5408\u5F71" + ) + ) + : "".concat( + r.oc.t( + "dre_t2i_reference_status_one_face", + {}, + "Referenced a face in the image" + ) + ), + [n.s.BgPaint]: "".concat( + r.oc.t("wimg2img_content_mainreference") + ), + [n.s.IpKeep]: "".concat(r.oc.t("IP_web_cref_label")), + [n.s.BasicBlend]: "".concat(r.oc.t("wimg2img_content_idea")), + [n.s.ControlNetCanny]: "".concat(r.oc.t("canny_refer")), + [n.s.ControlNetDepth]: "".concat(r.oc.t("depth_refer")), + [n.s.ControlNetPose]: "".concat(r.oc.t("pose_refer")), + [n.s.ControlNet]: "", + [n.s.Unknown]: "", + [n.s.Text2image]: "", + [n.s.Image2image]: "", + [n.s.StyleReference]: "".concat(r.oc.t("style_referenced")), + [n.s.ByteEdit]: "".concat( + r.oc.t("image_reference_custom_status") + ), + [n.s.StyleCode]: "".concat( + r.oc.t("dre_t2i_style_code_placeholder") + ), + }[e] + : ""; + } + }, + 161814: function (e, t, i) { + "use strict"; + i.d(t, { + QT: function () { + return d; + }, + rY: function () { + return u; + }, + }); + var n = i(625572), + r = i(772322), + a = i(746860), + o = i(441361), + s = i(990880), + l = i(182688), + c = i(747029), + d = (e, t, i, n) => { + if (!(null == t ? void 0 : t.length) || !e) return e; + var l = 0; + return e + .replace(o.rO, "__$1__") + .replace(o.a3, "__$1__") + .split("__") + .map((e, c) => { + var d = e === o.qi, + u = null == t ? void 0 : t[l]; + return d && u + ? (l++, + (0, r.jsx)( + "div", + { + style: { display: "inline" }, + children: (0, r.jsx)(a.w, { + canOperate: !1, + imagePrompt: u, + imageItemList: t, + loading: null == n ? void 0 : n.imageLoading, + }), + }, + c + )) + : e === o.e1 && u + ? (l++, + (0, r.jsx)( + "div", + { + style: { display: "inline" }, + children: (0, r.jsx)(s._, { + canOperate: !1, + imagePrompt: u, + instance: i, + }), + }, + c + )) + : e + ? (0, r.jsx)( + "span", + { style: { userSelect: "text" }, children: e }, + c + ) + : null; + }); + }, + u = (e) => ({ + update: (t) => { + var i = [...e.imagePromptList]; + i.forEach((e, r) => { + e.id === t.id && (i[r] = (0, n._)({}, e, t)); + }), + i.length !== e.imagePromptList.length && (0, l.TE)(e, i), + e.updateImagePromptList(i); + }, + add: (t) => { + var i = e.imagePromptList; + t.id = (0, c.HG)(); + var n = [...i, t]; + n.length !== e.imagePromptList.length && (0, l.TE)(e, n), + e.updateImagePromptList(n); + }, + remove: (t) => { + var i = e.imagePromptList.filter((e) => e.id !== t.id); + e.updateImagePromptList(i), (0, l.TE)(e, i); + }, + }); + }, + 68809: function (e, t, i) { + "use strict"; + i.d(t, { + h: function () { + return r; + }, + }); + var n = i(441361), + r = (e) => + null == e + ? void 0 + : e.replace(n.hQ, "").replace(n.lr, "").replace(n.Y4, "").trim(); + }, + 924086: function (e, t, i) { + "use strict"; + i.d(t, { + Pm: () => aS, + GV: () => ax, + bz: () => am, + rx: () => ab, + Bq: () => a_, + x_: () => aw, + Um: () => aI, + }); + var n = i("139646"), + r = i("625572"), + a = i("639880"), + o = i("317825"), + s = i("224671"), + l = i("417281"), + c = i("749314"), + d = i("952739"), + u = i("949274"), + f = i("772322"); + i("245535"); + var h = i("76894"), + p = i("188754"), + v = i("967355"), + m = "feedBackContainer-wzLgGx", + g = "feedbackBtn-aa1oPH"; + i("900992"); + var _ = i("744932"), + y = i("218571"), + b = "feedBackUIContainer-CE21_V", + I = "suggestionContainer-nqTsCd", + w = "buttonContainer-O1X_X1", + x = "cancelButton-XTGgai", + S = "submitButton-lcPtyR", + M = i("741310"), + C = i("369617"), + T = { imagine: "fromImagine - " }, + A = i("547850"), + { TextArea: k } = _.Z, + P = 200, + E = (e) => { + var { onClose: t, containerService: i } = e, + [r, a] = (0, y.useState)(""), + o = "" === r || r.length > P, + s = (e) => { + a(e); + }, + l = () => { + (0, A.rx)(i, { action: A.Ix.Cancel, type: A.xh.Feedback }), t(); + }, + c = (function () { + var e = (0, n._)(function* () { + (0, A.rx)(i, { action: A.Ix.Confirm, type: A.xh.Feedback }); + try { + var e = yield (0, M.z8)({ + suggestion: "".concat(T.imagine).concat(r), + }); + 0 !== e.err_code + ? C.s.warning( + u.oc.t( + "wimg2img_toast_feedbackfail", + {}, + "Couldn\u2019t submit. Try again." + ) + ) + : (t(), + C.s.success( + u.oc.t( + "wimg2img_toast_feedbacksuccess", + {}, + "Feedback submitted" + ) + )); + } catch (e) { + C.s.warning( + u.oc.t( + "wimg2img_toast_feedbackfail", + {}, + "Couldn\u2019t submit. Try again." + ) + ); + } + }); + return function () { + return e.apply(this, arguments); + }; + })(); + return (0, f.jsxs)("div", { + className: b, + children: [ + (0, f.jsx)(k, { + className: I, + value: r, + onChange: s, + placeholder: u.oc.t( + "wimg2img_placeholder_feedback", + {}, + "Tell us what part of the uploaded image you want to reference" + ), + maxLength: { length: P, errorOnly: !0 }, + showWordLimit: !0, + }), + (0, f.jsxs)("div", { + className: w, + children: [ + (0, f.jsx)("div", { + className: x, + onClick: l, + children: u.oc.t("wimg2img_button_cancel2", {}, "Cancel"), + }), + (0, f.jsx)(v.J, { + disabled: o, + className: S, + text: u.oc.t("wimg2img_button_button", {}, "Submit"), + onClick: c, + }), + ], + }), + ], + }); + }, + D = i("466740"), + R = i("108982"), + N = i("379311"), + L = (function (e) { + return (e.Hover = "hover"), (e.Click = "click"), e; + })({}), + j = (function (e) { + return ( + (e.Face = "face"), + (e.Subject = "subject"), + (e.IpKeep = "ip_keep"), + (e.Canny = "canny"), + (e.Depth = "depth"), + (e.Pose = "pose"), + (e.Inspiration = "inspiration"), + (e.Feedback = "feedback"), + (e.Save = "save"), + (e.ControlNet = "control_net"), + (e.Text2image = "text_2_image"), + (e.Image2image = "image_2_image"), + (e.StyleReference = "style"), + (e.ByteEdit = "instruct"), + (e.None = ""), + e + ); + })({}), + O = { + [R.s.FaceGan]: "face", + [R.s.BgPaint]: "subject", + [R.s.IpKeep]: "ip_keep", + [R.s.BasicBlend]: "inspiration", + [R.s.ControlNetCanny]: "canny", + [R.s.ControlNetDepth]: "depth", + [R.s.ControlNetPose]: "pose", + [R.s.ControlNet]: "control_net", + [R.s.Text2image]: "text_2_image", + [R.s.Image2image]: "image_2_image", + [R.s.StyleReference]: "style", + [R.s.ByteEdit]: "instruct", + [R.s.StyleCode]: "", + }, + B = (function (e) { + return ( + (e.MultiSubject = "has_subject"), + (e.MultiIpKeep = "has_ip_keep"), + (e.TwoFace = "has_face"), + (e.MultiCanny = "has_canny"), + (e.MultiDepth = "has_depth"), + (e.MultiPose = "has_pose"), + (e.UseSubject = "use_subject"), + (e.UseControlNet = "use_control_net"), + (e.MultiStyle = "has_style"), + (e.ByteEdit = "has_byte_edit"), + (e.Unknown = ""), + e + ); + })({}), + F = { + [R.s.BgPaint]: "has_subject", + [R.s.FaceGan]: "has_face", + [R.s.IpKeep]: "has_ip_keep", + [R.s.ControlNetCanny]: "has_canny", + [R.s.ControlNetDepth]: "has_depth", + [R.s.ControlNetPose]: "has_pose", + [R.s.ControlNet]: "", + [R.s.BasicBlend]: "", + [R.s.Image2image]: "", + [R.s.Text2image]: "", + [R.s.StyleReference]: "has_style", + [R.s.ByteEdit]: "has_byte_edit", + [R.s.StyleCode]: "", + [R.s.Unknown]: "", + }; + class U { + getEventParams() { + var { + action: e, + item: t, + failToast: i, + templateId: n, + } = this._params, + r = { action: e, item: t }; + return i && (r.fail_toast = i), n && (r.template_id = n), r; + } + constructor(e) { + (this._params = e), (this.eventName = "reference_photo_action"); + } + } + function G(e, t) { + (0, N.Kl)(e, U, [t]); + } + var z = i("776913"); + function V(e, t, i, n) { + var { textToImageGenerateParam: r } = null != n ? n : {}; + if (r) { + var { templateId: a } = z.Jg.getInstance().resumeReportParam(r); + t.templateId = a; + } + i(e, t); + } + var W = () => { + var e = (0, D.lS)(), + { generateImageParamsManager: t } = (0, D.N_)(), + i = () => { + V(e, { action: L.Click, item: j.Feedback }, G, t), + (0, A.rx)(e, { action: A.Ix.Show, type: A.xh.Feedback }); + var i = h.Z.confirm({ + wrapClassName: m, + title: u.oc.t("wimg2img_title_feedback", {}, "Give feedback"), + footer: null, + icon: null, + closeIcon: null, + closable: !0, + content: (0, f.jsx)(E, { + onClose: () => i.close(), + containerService: e, + }), + }); + }; + return (0, f.jsx)(v.J, { + className: g, + type: "tertiary", + PrevIcon: p.nKk, + text: u.oc.t("wimg2img_content_feedback", {}, "Give feedback"), + onClick: i, + }); + }; + i("347197"); + var Z = i("693238"), + K = "save-PKzSo9", + H = "hoverText-Thmjas", + q = (e) => { + var { available: t, onClick: i, disablePopover: n } = e; + return (0, f.jsx)(Z.Z, { + disabled: n, + position: "tr", + showArrow: !1, + content: (0, f.jsx)("div", { + className: H, + children: u.ZP.t( + "wimg2img_content_select", + {}, + "Select what to reference" + ), + }), + children: (0, f.jsx)(v.J, { + disabled: !t, + type: "default", + text: u.ZP.t("wimg2img_button_save", {}, "Save"), + className: K, + onClick: i, + }), + }); + }, + J = i("2910"), + Y = i("653061"), + Q = i("319440"), + X = { + paintContainer: "paintContainer-KDEuCq", + paintContent: "paintContent-l3Q9Ue", + imageWrap: "imageWrap-lgUl32", + image: "image-w0BbtD", + imagineGraphicEditor: "imagineGraphicEditor-ONXJBB", + hidden: "hidden-Td_8Vb", + fadeOut: "fadeOut-Q0_zYP", + visible: "visible-hWCHIY", + fadeIn: "fadeIn-h2DzrE", + }, + $ = i("67608"), + ee = i("586167"), + et = new (i("950466").Qd)(), + ei = new ee.D(), + en = i("699301"); + i("596477"); + var er = i("216956"), + ea = i("331730"), + eo = i("767116"), + es = i("342396"), + el = 2, + ec = (e) => { + var { currentScale: t } = e, + i = () => ( + (et.scale = Math.min(Math.abs(et.scale * el), es.pv)), et.scale + ), + n = () => ( + (et.scale = Math.max(Math.abs(et.scale / el), es.$A)), et.scale + ), + { scaleArr: r } = (0, eo.y)(), + a = (e) => { + var t = Math.round(100 * e); + return "".concat(Math.abs(t), "%"); + }, + [o, s] = (0, y.useState)({ display: "none" }), + l = (e) => { + e ? s({ display: "block" }) : s({ display: "none" }); + }, + c = (0, y.useRef)(null), + d = (t) => { + var i, + n, + { value: r, resetOffset: a } = t; + a && (et.resetOffset(), ei.resetMove()), + null == e || + null === (i = e.handleSelectScaleCallback) || + void 0 === i || + i.call(e, r), + setTimeout(() => { + et.scale = r; + }), + l(!1), + null === (n = c.current) || void 0 === n || n.close(); + }; + return { + handleScaleUp: i, + handleScaleDown: n, + getScaleName: a, + menu: (0, f.jsx)(er.Z, { + className: ea.Z.menu, + selectedKeys: ["".concat(t)], + children: r.map((e, t) => + (0, f.jsx)( + er.Z.Item, + { + className: ea.Z.menuItem, + onClick: () => d(e), + children: e.name, + }, + "".concat(e.value) + ) + ), + }), + dropdownStyle: o, + dropdownRef: c, + handleDropdownVisibleChange: l, + }; + }, + ed = (function (e) { + return (e.Click = "click"), (e.Use = "use"), e; + })({}), + eu = (function (e) { + return ( + (e.AIIdentification = "ai_identifiaction"), + (e.Brush = "brush"), + (e.BrushSlider = "brush_slider"), + (e.Eraser = "eraser"), + (e.EraserSlider = "eraser_slider"), + (e.Undo = "undo"), + (e.Redo = "redo"), + (e.MoveCanvas = "move_canvas"), + (e.MinusScale = "minus_scale"), + (e.SelectScale = "select_scale"), + (e.AddScale = "add_scale"), + (e.MoveLayer = "move_layer"), + e + ); + })({}); + class ef { + getEventParams() { + var e; + return { + action: this._params.action, + item: this._params.item, + value: null !== (e = this._params.value) && void 0 !== e ? e : "", + }; + } + constructor(e) { + (this._params = e), (this.eventName = "reference_subject_item"); + } + } + function eh(e, t) { + (0, N.Kl)(e, ef, [t]); + } + var ep = i("164763"); + function ev() { + var e = (0, D.lS)(), + t = ep.o.getGraphicToolStoreInstance(e); + return null == t ? void 0 : t.bgPaintInstance; + } + var em = (e) => ( + et.on("scale", e), + () => { + et.off("scale", e); + } + ), + eg = () => { + var e = ev(), + t = (0, y.useSyncExternalStore)(em, et.getSnapshot.bind(et)); + (0, y.useEffect)(() => { + null == e || e.updatePaintScale(t); + }, [t, e]); + var i = (0, D.lS)(), + n = ec({ + handleSelectScaleCallback: (e) => { + eh(i, { + action: ed.Click, + item: eu.SelectScale, + value: e.toString(), + }); + }, + currentScale: t, + }), + o = () => { + var e = n.handleScaleUp(); + eh(i, { + action: ed.Click, + item: eu.AddScale, + value: e.toString(), + }); + }, + s = () => { + var e = n.handleScaleDown(); + eh(i, { + action: ed.Click, + item: eu.MinusScale, + value: e.toString(), + }); + }; + return (0, f.jsx)(en.n, { + scale: t, + logic: (0, a._)((0, r._)({}, n), { + handleScaleUp: o, + handleScaleDown: s, + }), + }); + }, + e_ = "rightInteract-YxJHMG", + ey = () => {}; + function eb(e) { + var t = (0, y.createContext)(e), + i = (0, y.createContext)(ey); + return [ + (n) => { + var { children: r } = n, + [a, o] = (0, y.useState)(e); + return (0, f.jsx)(t.Provider, { + value: a, + children: (0, f.jsx)(i.Provider, { value: o, children: r }), + }); + }, + () => (0, y.useContext)(t), + () => (0, y.useContext)(i), + t, + ]; + } + var [eI, ew, ex] = eb(!0), + eS = () => { + var e = ew(); + return (0, f.jsx)("div", { + className: e_, + style: e ? {} : { display: "none" }, + children: (0, f.jsx)(eg, {}), + }); + }, + eM = "container-fjnxdj", + eC = "intelligentRecognition-VrICI9", + eT = "intelligentRecognitionIcon-GhCB65", + eA = i("203169"), + ek = i("733437"), + eP = i("134077"), + eE = i("925367"), + eD = i("246940"), + eR = i("44938"), + eN = i("287967"), + eL = () => { + var e, + { modeInstancesRef: t } = (0, y.useContext)(eN.S); + return { + paintModeInstance: + null === (e = t.current) || void 0 === e + ? void 0 + : e.get(l.UI.BgPaint), + }; + }, + ej = i("749623"), + eO = i("934128"), + eB = () => { + var e; + return null !== (e = (0, eO.m)(et, "scale")) && void 0 !== e + ? e + : es.hv; + }, + eF = i("106456"), + eU = function (e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] && arguments[1]; + return t + ? e === eE.o4.Brush + ? eu.BrushSlider + : eu.EraserSlider + : e === eE.o4.Brush + ? eu.Brush + : eu.Eraser; + }, + eG = () => { + var e, + t = (0, D.lS)(), + { paintModeInstance: i } = eL(), + n = ep.o.getGraphicToolStoreInstance(t), + r = null == n ? void 0 : n.bgPaintInstance, + { + drawAction: a = eE.o4.Brush, + brushSize: o = eP.Cg[eE.o4.Brush], + eraserSize: s = eP.Cg[eE.o4.Eraser], + } = null !== + (e = (0, ek.k)(null == n ? void 0 : n.bgPaintInstance, (e) => ({ + drawAction: null == e ? void 0 : e.drawAction, + brushSize: null == e ? void 0 : e.brushSize, + eraserSize: null == e ? void 0 : e.eraserSize, + }))) && void 0 !== e + ? e + : {}, + l = ex(); + (0, y.useEffect)(() => { + null == i || + i.onPaintAction((e) => { + var { action: t } = e; + l(t !== ej.T.StartPaint); + }); + }, [i]); + var c = eB(), + d = (e, t) => { + if (!Array.isArray(e)) { + var i = { [eE.o4.Brush]: e, [eE.o4.Eraser]: e }; + eD.T.setItem(eR.u.bgPaintBrushSize, JSON.stringify(i)), + null == r || r.updateBrushSize(e), + null == r || r.updateEraserSize(e); + } + }, + u = (e) => { + null == r || r.updateDrawAction(e), + null == i || + i.updateMousePosition({ offsetX: "50%", offsetY: "50%" }), + eh(t, { action: ed.Click, item: eU(e) }); + }, + f = (e) => { + var i, + r, + a, + { action: o } = e, + s = + null == n + ? void 0 + : null === (i = n.bgPaintInstance) || void 0 === i + ? void 0 + : i.drawAction; + o === ej.T.EndPaint && + [eE.o4.Brush, eE.o4.Eraser].includes( + null != s ? s : eE.o4.Move + ) && + eh(t, { + action: ed.Use, + item: eU( + null !== + (a = + null == n + ? void 0 + : null === (r = n.bgPaintInstance) || void 0 === r + ? void 0 + : r.drawAction) && void 0 !== a + ? a + : eE.o4.Brush + ), + }); + }, + h = () => { + var e = (0, eF.sd)((0, eP.Ek)()); + null == r || r.updateBrushSize(e[eE.o4.Brush]), + null == r || r.updateEraserSize(e[eE.o4.Eraser]), + null == i || i.onPaintAction(f); + }; + (0, y.useEffect)(() => { + h(); + }, []), + (0, y.useEffect)(() => { + null == i || i.onPaintAction(f); + }, [i]), + (0, y.useEffect)(() => { + if (a === eE.o4.Brush) { + var e = (0, eP.rW)(o, c); + null == i || i.brush.changeBrushSize(e); + } + if (a === eE.o4.Eraser) { + var t = (0, eP.rW)(s, c); + null == i || i.brush.changeBrushSize(t); + } + }, [s, o, a, i, c]), + (0, y.useEffect)(() => { + if (!!i && !![eE.o4.Brush, eE.o4.Eraser].includes(a)) + i.updateDrawAction(a); + }, [a, i]); + var p = () => { + null == i || i.clearCanvas(!0), + eh(t, { action: ed.Click, item: eu.AIIdentification }); + }; + return { + paintModeInstance: i, + drawAction: a, + brushSize: o, + eraserSize: s, + onChangeBrushSize: d, + switchDrawAction: u, + onClickReset: p, + onAfterChange: (e, i) => { + if (!Array.isArray(e)) + eh(t, { + action: ed.Click, + item: eU(i, !0), + value: e.toString(), + }); + }, + }; + }, + ez = i("81372"), + eV = i("345720"), + eW = (e) => ( + ei.on("status", e), + () => { + ei.off("status", e); + } + ), + eZ = (e) => { + var t, + { className: i } = e, + n = (0, y.useSyncExternalStore)(eW, ei.getSnapshot.bind(ei)), + r = (0, D.lS)(), + a = ep.o.getGraphicToolStoreInstance(r), + o = null == a ? void 0 : a.bgPaintInstance, + { paintModeInstance: s } = eL(), + { drawAction: l = eE.o4.Brush } = + null !== + (t = (0, ek.k)(o, (e) => ({ + drawAction: null == e ? void 0 : e.drawAction, + }))) && void 0 !== t + ? t + : {}; + (0, y.useEffect)(() => { + l !== eE.o4.Move && ei.changeStatus(eV.L.Disable); + }, [l]), + (0, y.useEffect)(() => { + n === eV.L.Active && + (null == o || o.updateDrawAction(eE.o4.Move)), + [eV.L.Active, eV.L.Advent].includes(n) && + (null == s || + s.updateMousePosition({ + offsetX: "-9999px", + offsetY: "-9999px", + })); + }, [n, o, s]); + var c = () => { + eh(r, { action: ed.Click, item: eu.MoveCanvas }), + eV.L.Active === n + ? ei.changeStatus(eV.L.Disable) + : ei.changeStatus(eV.L.Active); + }; + return (0, f.jsx)("div", { + className: i, + children: (0, f.jsx)(ez.c, { + dragActive: n === eV.L.Active, + handleClickMove: c, + }), + }); + }, + eK = "active-u0iotg", + eH = "item-MF3P2V", + eq = i("533278"), + eJ = i("105789"), + eY = i.n(eJ), + eQ = (e) => { + var { onClick: t, isActive: i } = e; + return (0, f.jsx)("div", { + onClick: t, + children: (0, f.jsx)(eq.z, { + tips: u.oc.t("canvas_tool_select", {}, "Select"), + className: eY()({ [eH]: !0, [eK]: i }), + icon: (0, f.jsx)(p.Q_Q, { style: { fontSize: "16px" } }), + }), + }); + }, + eX = (e) => { + var t, + { className: i } = e, + n = (0, D.lS)(), + r = ep.o.getGraphicToolStoreInstance(n), + a = null == r ? void 0 : r.bgPaintInstance, + { paintModeInstance: o } = eL(), + { drawAction: s = eE.o4.Brush, isSelectActive: l = !1 } = + null !== + (t = (0, ek.k)(a, (e) => ({ + drawAction: null == e ? void 0 : e.drawAction, + isSelectActive: null == e ? void 0 : e.isSelectActive, + }))) && void 0 !== t + ? t + : {}; + (0, y.useEffect)(() => { + if (!!l) + null == o || + o.updateMousePosition({ + offsetX: "-9999px", + offsetY: "-9999px", + }); + }, [l]), + (0, y.useEffect)(() => { + s !== eE.o4.Select && + (null == a || a.updateIsSelectActive(!1), + null == a || a.updateIsSelectImage(!1)); + }, [s, a]), + (0, y.useEffect)(() => { + null == a || a.updateDrawAction(eE.o4.Select), + null == a || a.updateIsSelectActive(!0), + null == a || a.updateIsSelectImage(!0); + }, []); + var c = () => { + if ((eh(n, { action: ed.Click, item: eu.MoveLayer }), !l)) + null == a || a.updateIsSelectActive(!0), + null == a || a.updateIsSelectImage(!0), + null == a || a.updateDrawAction(eE.o4.Select); + }; + return (0, f.jsx)("div", { + className: i, + children: (0, f.jsx)(eQ, { onClick: c, isActive: l }), + }); + }, + e$ = { + top: "-40px", + left: "-72px", + borderRadius: "8px", + border: "0.5px solid var(--line-2)", + }, + e0 = { + top: "-40px", + left: "-108px", + borderRadius: "8px", + border: "0.5px solid var(--line-2)", + }, + e1 = (e) => { + var { hiddenSelect: t, hiddenDrag: i } = e, + { + paintModeInstance: n, + drawAction: a, + brushSize: o, + eraserSize: s, + onChangeBrushSize: l, + switchDrawAction: c, + onClickReset: d, + onAfterChange: h, + } = eG(); + return (0, f.jsxs)("div", { + className: eM, + children: [ + !t && (0, f.jsx)(eX, {}), + (0, f.jsx)(eq.z, { + tips: u.oc.t("wimg2img_content_intelligent", {}, "Quick brush"), + className: eC, + icon: (0, f.jsx)(p.g$j, { onClick: d, className: eT }), + }), + (0, f.jsx)(eA.E, { + brushConfig: { + contentStyle: (0, r._)({}, e$), + isActive: a === eE.o4.Brush, + size: o, + onChange: (e) => { + l(e, eE.o4.Brush); + }, + onClick: () => c(eE.o4.Brush), + onAfterChange: (e) => { + l(e, eE.o4.Brush), + h(e, eE.o4.Brush), + null == n || + n.updateMousePosition({ + offsetX: "50%", + offsetY: "50%", + }); + }, + }, + eraserConfig: { + contentStyle: (0, r._)({}, e0), + isActive: a === eE.o4.Eraser, + size: s, + onChange: (e) => { + l(e, eE.o4.Eraser); + }, + onClick: () => c(eE.o4.Eraser), + onAfterChange: (e) => { + l(e, eE.o4.Eraser), + h(e, eE.o4.Eraser), + null == n || + n.updateMousePosition({ + offsetX: "50%", + offsetY: "50%", + }); + }, + }, + }), + !i && (0, f.jsx)(eZ, {}), + ], + }); + }, + e2 = "container-hF38_1", + e6 = "divider-Y81pOK", + e4 = i("711063"), + e3 = "container-NccYOa", + e8 = () => { + var [e, t] = (0, y.useState)(!0), + [i, n] = (0, y.useState)(!0), + r = (0, D.lS)(), + { paintModeInstance: a } = eL(); + (0, y.useEffect)(() => { + if (!!a) + a.onCommandMangerModel("redoStack", (e) => { + n(0 === e.length); + }), + a.onCommandMangerModel("undoStack", (e) => { + t(0 === e.length); + }); + }, [a]), + (0, y.useEffect)(() => { + if (!!a) { + var { redoStack: e, undoStack: i } = a.getCommandData(); + n(0 === e.length), t(0 === i.length); + } + }, [a]); + var o = () => { + null == a || a.undo(), eh(r, { action: ed.Click, item: eu.Undo }); + }, + s = () => { + null == a || a.redo(), eh(r, { action: ed.Click, item: eu.Redo }); + }, + l = { undo: e, redo: i }; + return (0, f.jsx)("div", { + className: e3, + children: (0, f.jsx)(e4.$, { + isLimit: l, + handleUndo: o, + handleRedo: s, + }), + }); + }, + e9 = (e) => { + var t = ew(); + return (0, f.jsxs)("div", { + className: e2, + style: t ? {} : { display: "none" }, + children: [ + (0, f.jsx)(e1, (0, r._)({}, e)), + (0, f.jsx)("div", { className: e6 }), + (0, f.jsx)(e8, {}), + ], + }); + }, + e5 = i("387008"), + e7 = "container-gN_DC9", + te = "svg-fXGz0S", + tt = () => + (0, f.jsxs)("div", { + className: e7, + children: [ + (0, f.jsx)(p.C5$, { className: te }), + (0, f.jsx)("div", { + children: u.oc.t( + "wimg2img_content_smear", + {}, + "Brush an object to select it" + ), + }), + ], + }), + ti = i("489897"); + function tn() { + var e, + t = (0, D.lS)(), + i = ep.o.getGraphicToolStoreInstance(t), + n = null == i ? void 0 : i.bgPaintInstance, + { + moveX: r = 0, + moveY: a = 0, + scale: o = 1, + rotate: s = 0, + } = null !== + (e = (0, ek.k)(n, (e) => ({ + moveX: e.moveX, + moveY: e.moveY, + scale: e.scale, + rotate: e.rotate, + }))) && void 0 !== e + ? e + : {}; + return { moveX: r, moveY: a, scale: o, rotate: s }; + } + var tr = (e) => ( + ei.on("move", e), + () => { + ei.off("move", e); + } + ); + function ta() { + var e = (0, y.useSyncExternalStore)( + tr, + ei.getMoveDataSnapshot.bind(ei) + ); + try { + return Object.assign({ x: 0, y: 0 }, JSON.parse(e)); + } catch (e) { + return { x: 0, y: 0 }; + } + } + function to(e) { + var { + containerWidth: t, + containerHeight: i, + paintWidth: n, + paintHeight: r, + imageWidth: a, + imageHeight: o, + } = e, + { moveX: s, moveY: l, rotate: c, scale: d } = tn(), + { x: u, y: f } = ta(), + h = Math.abs(eB()), + p = d * h, + v = a * p, + m = o * p, + g = (t - n * h) / 2, + _ = (i - r * h) / 2, + b = g + u * h + (s * h - v / 2), + I = _ + f * h + (l * h - m / 2); + return { + scale: p, + frameSize: (0, y.useMemo)(() => ({ width: v, height: m }), [v, m]), + framePosition: { + width: "".concat(a * p, "px"), + height: "".concat(o * p, "px"), + transform: "translate(" + .concat(b, "px, ") + .concat(I, "px) rotate(") + .concat(c, "deg)"), + }, + }; + } + var ts = (function (e) { + return ( + (e.TopLeft = "tl"), + (e.TopRight = "tr"), + (e.BottomLeft = "bl"), + (e.BottomRight = "br"), + e + ); + })({}), + tl = (function (e) { + return ( + (e.Top = "top"), + (e.Right = "right"), + (e.Bottom = "bottom"), + (e.Left = "left"), + e + ); + })({}), + tc = i("96"), + td = "rotateButton-oiaxuO", + tu = "icon-IzRaac", + tf = "exposeSpot-AedSbq", + th = "rotateButtonActive-rgV_aO", + tp = "top-Tn_XKb", + tv = "right-CRPYq8", + tm = "bottom-vuYJQz", + tg = "left-NBYaup", + t_ = "iconActive-OR038l"; + function ty(e, t, i, n) { + var r = [0, 0], + a = [0, 0], + { x: o, y: s } = e, + { x: l, y: c } = t, + { x: d, y: u } = i; + (r[0] = l - o), (r[1] = c - s), (a[0] = d - o), (a[1] = u - s); + var f = r[0] * a[1] - r[1] * a[0], + h = Math.sqrt(Math.pow(o - l, 2) + Math.pow(s - c, 2)), + p = Math.sqrt(Math.pow(o - d, 2) + Math.pow(s - u, 2)), + v = + (Math.pow(h, 2) + + Math.pow(p, 2) - + Math.pow(Math.sqrt(Math.pow(l - d, 2) + Math.pow(c - u, 2)), 2)) / + (2 * h * p), + m = n ? Math.acos(v) : (180 * Math.acos(v)) / Math.PI; + return f < 0 ? -m : m; + } + var tb = i("476295"), + tI = (function (e) { + return ( + (e[(e.Hidden = 0)] = "Hidden"), + (e[(e.Active = 1)] = "Active"), + (e[(e.Initial = 2)] = "Initial"), + e + ); + })({}); + function tw(e) { + var t, + i = ev(), + n = + null !== (t = (0, ek.k)(i, (e) => e.transformType)) && void 0 !== t + ? t + : tb.OS.None, + [r, a] = (0, y.useState)(!1), + o = 2; + return ( + r && n === e ? (o = 1) : n !== tb.OS.None && (o = 0), + { status: o, setActive: a } + ); + } + function tx(e, t) { + var { x: i, y: n } = e; + return [ + i * Math.cos(t) + n * Math.sin(t), + -i * Math.sin(t) + n * Math.cos(t), + ]; + } + function tS(e, t, i, n) { + var r = (e / 180) * Math.PI, + a = tx({ x: t / 2, y: i / 2 }, r), + o = tx({ x: t / 2, y: -i / 2 }, r), + s = tx({ x: -t / 2, y: -i / 2 }, r), + l = tx({ x: -t / 2, y: i / 2 }, r), + { x: c, y: d } = n; + return { + [ts.TopLeft]: { x: l[0] + c, y: -(l[1] - d) }, + [ts.TopRight]: { x: a[0] + c, y: -(a[1] - d) }, + [ts.BottomRight]: { x: o[0] + c, y: -(o[1] - d) }, + [ts.BottomLeft]: { x: s[0] + c, y: -(s[1] - d) }, + }; + } + function tM(e, t, i, n) { + var r = (e / 180) * Math.PI, + a = tx({ x: t / 2, y: i / 2 }, r), + o = tx({ x: t / 2, y: -i / 2 }, r), + s = tx({ x: -t / 2, y: -i / 2 }, r), + l = tx({ x: -t / 2, y: i / 2 }, r), + { x: c, y: d } = n; + return { + [ts.TopLeft]: { x: c - l[0], y: d + l[1] }, + [ts.TopRight]: { x: c - a[0], y: d + a[1] }, + [ts.BottomRight]: { x: c - o[0], y: d + o[1] }, + [ts.BottomLeft]: { x: c - s[0], y: d + s[1] }, + }; + } + function tC(e, t) { + var { x: i, y: n } = e, + { x: r, y: a } = t, + o = i < r, + s = n < a; + if (o && s) return ts.TopLeft; + if (o && !s) return ts.BottomLeft; + if (!o && s) return ts.TopRight; + else return ts.BottomRight; + } + function tT(e, t, i, n, r) { + var [a, o] = { + [tl.Top]: [ts.TopLeft, ts.TopRight], + [tl.Right]: [ts.TopRight, ts.BottomRight], + [tl.Bottom]: [ts.BottomRight, ts.BottomLeft], + [tl.Left]: [ts.BottomLeft, ts.TopLeft], + }[e], + s = tS(t, i, n, r), + l = s[a], + c = s[o], + d = tC(l, r), + u = tC(c, r); + if (d === ts.TopLeft && u === ts.TopRight) return tl.Top; + if (d === ts.TopRight && u === ts.BottomRight) return tl.Right; + if (d === ts.BottomRight && u === ts.BottomLeft) return tl.Bottom; + else return tl.Left; + } + var tA = (0, y.createContext)({ width: 0, height: 0 }); + function tk() { + return (0, y.useContext)(tA); + } + var [tP, tE, tD] = eb({ x: 0, y: 0 }), + tR = { + [tl.Top]: tb.HK.RotateTop, + [tl.Right]: tb.HK.RotateRight, + [tl.Bottom]: tb.HK.RotateBottom, + [tl.Left]: tb.HK.RotateLeft, + }; + function tN(e, t) { + var i, + n = ev(), + { status: r, setActive: a } = tw(tb.OS.Rotate), + { width: o, height: s } = tk(), + l = ex(), + c = tD(), + { + rotate: d = 0, + moveX: u = 0, + moveY: f = 0, + } = null !== + (i = (0, ek.k)(n, (e) => ({ + rotate: e.rotate, + moveX: e.moveX, + moveY: e.moveY, + }))) && void 0 !== i + ? i + : {}; + return { + status: r, + startRotate: (i) => { + if (!!t) { + var { top: r, left: h } = t.getBoundingClientRect(), + p = { x: i.pageX, y: i.pageY }, + v = { x: h, y: r }, + m = tR[tT(e, d, o, s, { x: u, y: f })]; + l(!1), + a(!0), + null == n || n.updateTransformType(tb.OS.Rotate), + null == n || n.updateActionCursor(m), + c({ x: i.pageX, y: i.pageY }); + var g = d, + _ = (e) => { + var { pageX: t, pageY: i } = e, + r = (g + ty(v, p, { x: t, y: i }, !1) + 360) % 360; + null == n || n.updateRotate(r), c({ x: t, y: i }); + }, + y = (e) => { + window.removeEventListener("mousemove", _), + window.removeEventListener("mouseup", y), + a(!1), + l(!0), + null == n || n.resetTransformType(), + null == n || n.resetActionCursor(); + }; + window.addEventListener("mousemove", _), + window.addEventListener("mouseup", y); + } + }, + }; + } + function tL(e) { + var t, + { width: i, height: n } = tk(), + r = ev(), + { + moveX: a = 0, + moveY: o = 0, + rotate: s = 0, + } = null !== + (t = (0, ek.k)(r, (e) => ({ + moveX: e.moveX, + moveY: e.moveY, + rotate: e.rotate, + }))) && void 0 !== t + ? t + : {}; + return tT(e, s, i, n, { x: a, y: o }); + } + var tj = (function (e) { + return (e.Move = "move"), (e.Zoom = "zoom"), (e.Rotate = "rotate"), e; + })({}); + class tO { + getEventParams() { + return { action: this._params.action }; + } + constructor(e) { + (this._params = e), + (this.eventName = "reference_subject_layer_action"); + } + } + function tB(e, t) { + (0, N.Kl)(e, tO, [t]); + } + var tF = (0, y.forwardRef)((e, t) => { + var { isActive: i, sideDirection: n, style: o, centerRef: s } = e, + l = (0, tc._)(e, [ + "isActive", + "sideDirection", + "style", + "centerRef", + ]), + c = (0, D.lS)(), + { status: d, startRotate: u } = tN(n, s.current), + h = tL(n), + v = { + [tl.Top]: 0, + [tl.Right]: 90, + [tl.Bottom]: 180, + [tl.Left]: 270, + }[n], + m = eY()(tu, { [t_]: d === tI.Active }), + g = i && (d === tI.Initial || d === tI.Active), + _ = eY()( + td, + { [th]: g }, + { [tl.Top]: tp, [tl.Right]: tv, [tl.Bottom]: tm, [tl.Left]: tg }[ + h + ] + ), + y = [tl.Left, tl.Right].includes(n), + b = (e) => { + e.stopPropagation(), tB(c, { action: tj.Rotate }), u(e); + }; + return (0, f.jsxs)( + "div", + (0, a._)((0, r._)({}, l), { + style: (0, a._)((0, r._)({}, o), { + transform: "" + .concat( + y ? "translateY(-50%)" : "translateX(-50%)", + " rotate(" + ) + .concat(v, "deg)"), + }), + className: _, + children: [ + (0, f.jsx)("div", { + className: m, + onMouseDown: b, + children: (0, f.jsx)(p.LIe, { + fontSize: 16, + style: { transform: "rotate(".concat(-v, "deg)") }, + }), + }), + (0, f.jsx)("span", { className: tf, ref: t }), + ], + }) + ); + }), + tU = i("528498"); + function tG() { + var e, + { + elementRef: t, + isIntersecting: i, + observe: n, + unobserve: r, + } = (0, tU.uy)(), + a = ev(), + o = + null !== (e = (0, ek.k)(a, (e) => e.isTransforming)) && + void 0 !== e && + e; + return ( + (0, y.useEffect)(() => { + if (!o) { + n(); + return; + } + r(); + }, [o]), + [t, i] + ); + } + function tz() { + var e, + t = ev(), + { + moveX: i = 0, + moveY: n = 0, + rotate: r = 0, + } = null !== + (e = (0, ek.k)(t, (e) => ({ + moveX: e.moveX, + moveY: e.moveY, + rotate: e.rotate, + }))) && void 0 !== e + ? e + : {}, + { width: a, height: o } = tk(), + s = tT(tl.Top, r, a, o, { x: i, y: n }), + l = tT(tl.Right, r, a, o, { x: i, y: n }), + c = tT(tl.Left, r, a, o, { x: n, y: n }), + d = tT(tl.Bottom, r, a, o, { x: n, y: n }), + u = { [s]: tl.Top, [l]: tl.Right, [d]: tl.Bottom, [c]: tl.Left }; + return [u[tl.Top], u[tl.Right], u[tl.Bottom], u[tl.Left]]; + } + function tV(e, t) { + var [i, n] = (0, y.useState)(e); + return ( + (0, y.useEffect)(() => { + t && n(e); + }, [t]), + i + ); + } + function tW(e, t) { + var i = t.map((t) => e[t]), + n = t.findIndex((e, t) => i[t]); + return n < 0 ? null : t[n]; + } + function tZ(e) { + var t, + { top: i, right: n, bottom: r, left: a } = e, + o = ev(), + s = + null !== (t = (0, ek.k)(o, (e) => e.isTransforming)) && + void 0 !== t && + t, + l = tV(tz(), !s); + return tW( + { [tl.Top]: i, [tl.Right]: n, [tl.Bottom]: r, [tl.Left]: a }, + l + ); + } + i("894672"); + var tK = i("274993"), + tH = "tip-hjhz_z", + tq = "pointer-gBEBT6", + tJ = i("717742"), + tY = + "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjgiIGhlaWdodD0iMjgiIHZpZXdCb3g9IjAgMCAyOCAyOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgZmlsdGVyPSJ1cmwoI2ZpbHRlcjBfZF82MjgxXzcyOTgpIj4KPHBhdGggZD0iTTkuMjk3NzEgMTAuNjQxMkM5LjkxNTIyIDEwLjAyMzcgMTAuNjQ4MyA5LjUzMzkgMTEuNDU1MSA5LjE5OTdDMTIuMjYxOSA4Ljg2NTUxIDEzLjEyNjcgOC42OTM1IDE0IDguNjkzNUMxNC44NzMzIDguNjkzNSAxNS43MzggOC44NjU1MSAxNi41NDQ4IDkuMTk5N0MxNy4zNTE2IDkuNTMzOSAxOC4wODQ3IDEwLjAyMzcgMTguNzAyMiAxMC42NDEyTDIwLjcxNzUgMTIuNjU2NUwyMy40MDQ1IDkuOTY5NDlWMTguMDMwNUwxNS4zNDM1IDE4LjAzMDVMMTguMDMwNSAxNS4zNDM1TDE2LjAxNTIgMTMuMzI4MkMxNS43NTA2IDEzLjA2MzYgMTUuNDM2NCAxMi44NTM3IDE1LjA5MDYgMTIuNzEwNEMxNC43NDQ4IDEyLjU2NzIgMTQuMzc0MiAxMi40OTM1IDE0IDEyLjQ5MzVDMTMuNjI1NyAxMi40OTM1IDEzLjI1NTEgMTIuNTY3MiAxMi45MDkzIDEyLjcxMDRDMTIuNTYzNSAxMi44NTM3IDEyLjI0OTQgMTMuMDYzNiAxMS45ODQ3IDEzLjMyODJMOS45Njk0NiAxNS4zNDM1TDEyLjY1NjUgMTguMDMwNUg0LjU5NTQ1VjkuOTY5NDlMNy4yODI0NiAxMi42NTY1TDkuMjk3NzEgMTAuNjQxMloiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGQ9Ik0xMS4zMTM1IDEyLjY1NTZMOC42MjY0NSAxNS4zNDI2TDEwLjMwNTggMTcuMDIySDUuNjAzNTdMNS42MDM1NyAxMi4zMTk4TDcuMjgyOTUgMTMuOTk5MUw5Ljk2OTk1IDExLjMxMjFDMTAuNDk5MiAxMC43ODI4IDExLjEyNzYgMTAuMzYzIDExLjgxOTIgMTAuMDc2NUMxMi41MTA3IDkuNzkwMDggMTMuMjUxOSA5LjY0MjY1IDE0LjAwMDUgOS42NDI2NUMxNC43NDkgOS42NDI2NSAxNS40OTAyIDkuNzkwMDggMTYuMTgxOCAxMC4wNzY1QzE2Ljg3MzMgMTAuMzYzIDE3LjUwMTcgMTAuNzgyOCAxOC4wMzEgMTEuMzEyMUwyMC43MTggMTMuOTk5MUwyMi4zOTc0IDEyLjMxOThMMjIuMzk3NCAxNy4wMjJIMTcuNjk1MUwxOS4zNzQ1IDE1LjM0MjZMMTYuNjg3NSAxMi42NTU2QzE2LjMzNDYgMTIuMzAyOCAxNS45MTU3IDEyLjAyMjkgMTUuNDU0NyAxMS44MzE5QzE0Ljk5MzYgMTEuNjQwOSAxNC40OTk1IDExLjU0MjYgMTQuMDAwNSAxMS41NDI2QzEzLjUwMTQgMTEuNTQyNiAxMy4wMDczIDExLjY0MDkgMTIuNTQ2MyAxMS44MzE5QzEyLjA4NTIgMTIuMDIyOSAxMS42NjYzIDEyLjMwMjggMTEuMzEzNSAxMi42NTU2WiIgZmlsbD0iYmxhY2siLz4KPC9nPgo8ZGVmcz4KPGZpbHRlciBpZD0iZmlsdGVyMF9kXzYyODFfNzI5OCIgeD0iMi43NDUxIiB5PSI3Ljg3MTA5IiB3aWR0aD0iMjIuNTA5MyIgaGVpZ2h0PSIxMy4wMzcxIiBmaWx0ZXJVbml0cz0idXNlclNwYWNlT25Vc2UiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiI+CjxmZUZsb29kIGZsb29kLW9wYWNpdHk9IjAiIHJlc3VsdD0iQmFja2dyb3VuZEltYWdlRml4Ii8+CjxmZUNvbG9yTWF0cml4IGluPSJTb3VyY2VBbHBoYSIgdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIiByZXN1bHQ9ImhhcmRBbHBoYSIvPgo8ZmVPZmZzZXQgZHk9IjEuMDI3ODQiLz4KPGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iMC45MjUwNTYiLz4KPGZlQ29sb3JNYXRyaXggdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAuNjUgMCIvPgo8ZmVCbGVuZCBtb2RlPSJub3JtYWwiIGluMj0iQmFja2dyb3VuZEltYWdlRml4IiByZXN1bHQ9ImVmZmVjdDFfZHJvcFNoYWRvd182MjgxXzcyOTgiLz4KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbj0iU291cmNlR3JhcGhpYyIgaW4yPSJlZmZlY3QxX2Ryb3BTaGFkb3dfNjI4MV83Mjk4IiByZXN1bHQ9InNoYXBlIi8+CjwvZmlsdGVyPgo8L2RlZnM+Cjwvc3ZnPgo=", + tQ = + "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjgiIGhlaWdodD0iMjgiIHZpZXdCb3g9IjAgMCAyOCAyOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgZmlsdGVyPSJ1cmwoI2ZpbHRlcjBfZF82MjgxXzcyNzEpIj4KPHBhdGggZD0iTTE3LjM1ODggOS4yOTc3MUMxNy45NzYzIDkuOTE1MjIgMTguNDY2MSAxMC42NDgzIDE4LjgwMDMgMTEuNDU1MUMxOS4xMzQ1IDEyLjI2MTkgMTkuMzA2NSAxMy4xMjY3IDE5LjMwNjUgMTRDMTkuMzA2NSAxNC44NzMzIDE5LjEzNDUgMTUuNzM4IDE4LjgwMDMgMTYuNTQ0OEMxOC40NjYxIDE3LjM1MTYgMTcuOTc2MyAxOC4wODQ3IDE3LjM1ODggMTguNzAyMkwxNS4zNDM1IDIwLjcxNzVMMTguMDMwNSAyMy40MDQ1TDkuOTY5NDkgMjMuNDA0NUw5Ljk2OTQ5IDE1LjM0MzVMMTIuNjU2NSAxOC4wMzA1TDE0LjY3MTggMTYuMDE1MkMxNC45MzY0IDE1Ljc1MDYgMTUuMTQ2MyAxNS40MzY0IDE1LjI4OTYgMTUuMDkwNkMxNS40MzI4IDE0Ljc0NDggMTUuNTA2NSAxNC4zNzQyIDE1LjUwNjUgMTRDMTUuNTA2NSAxMy42MjU3IDE1LjQzMjggMTMuMjU1MSAxNS4yODk2IDEyLjkwOTNDMTUuMTQ2MyAxMi41NjM1IDE0LjkzNjQgMTIuMjQ5NCAxNC42NzE4IDExLjk4NDdMMTIuNjU2NSA5Ljk2OTQ2TDkuOTY5NDkgMTIuNjU2NUw5Ljk2OTQ5IDQuNTk1NDVMMTguMDMwNSA0LjU5NTQ1TDE1LjM0MzUgNy4yODI0NkwxNy4zNTg4IDkuMjk3NzFaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNMTUuMzQ0NCAxMS4zMTM1TDEyLjY1NzMgOC42MjY0NUwxMC45NzggMTAuMzA1OEwxMC45NzggNS42MDM1N0wxNS42ODAyIDUuNjAzNTdMMTQuMDAwOSA3LjI4Mjk1TDE2LjY4NzkgOS45Njk5NkMxNy4yMTcyIDEwLjQ5OTIgMTcuNjM3IDExLjEyNzYgMTcuOTIzNSAxMS44MTkyQzE4LjIwOTkgMTIuNTEwNyAxOC4zNTc0IDEzLjI1MTkgMTguMzU3NCAxNC4wMDA1QzE4LjM1NzQgMTQuNzQ5IDE4LjIwOTkgMTUuNDkwMiAxNy45MjM1IDE2LjE4MThDMTcuNjM3IDE2Ljg3MzMgMTcuMjE3MiAxNy41MDE3IDE2LjY4NzkgMTguMDMxTDE0LjAwMDkgMjAuNzE4TDE1LjY4MDIgMjIuMzk3NEwxMC45NzggMjIuMzk3NEwxMC45NzggMTcuNjk1MUwxMi42NTc0IDE5LjM3NDVMMTUuMzQ0NCAxNi42ODc1QzE1LjY5NzIgMTYuMzM0NiAxNS45NzcxIDE1LjkxNTcgMTYuMTY4MSAxNS40NTQ3QzE2LjM1OTEgMTQuOTkzNiAxNi40NTc0IDE0LjQ5OTUgMTYuNDU3NCAxNC4wMDA1QzE2LjQ1NzQgMTMuNTAxNCAxNi4zNTkxIDEzLjAwNzMgMTYuMTY4MSAxMi41NDYzQzE1Ljk3NzEgMTIuMDg1MiAxNS42OTcyIDExLjY2NjMgMTUuMzQ0NCAxMS4zMTM1WiIgZmlsbD0iYmxhY2siLz4KPC9nPgo8ZGVmcz4KPGZpbHRlciBpZD0iZmlsdGVyMF9kXzYyODFfNzI3MSIgeD0iOC4xMTk2MSIgeT0iMy43NzI5NCIgd2lkdGg9IjEzLjAzNzEiIGhlaWdodD0iMjIuNTA5MyIgZmlsdGVyVW5pdHM9InVzZXJTcGFjZU9uVXNlIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiPgo8ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PSIwIiByZXN1bHQ9IkJhY2tncm91bmRJbWFnZUZpeCIvPgo8ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHR5cGU9Im1hdHJpeCIgdmFsdWVzPSIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMCIgcmVzdWx0PSJoYXJkQWxwaGEiLz4KPGZlT2Zmc2V0IGR5PSIxLjAyNzg0Ii8+CjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjAuOTI1MDU2Ii8+CjxmZUNvbG9yTWF0cml4IHR5cGU9Im1hdHJpeCIgdmFsdWVzPSIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwLjY1IDAiLz4KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbjI9IkJhY2tncm91bmRJbWFnZUZpeCIgcmVzdWx0PSJlZmZlY3QxX2Ryb3BTaGFkb3dfNjI4MV83MjcxIi8+CjxmZUJsZW5kIG1vZGU9Im5vcm1hbCIgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0iZWZmZWN0MV9kcm9wU2hhZG93XzYyODFfNzI3MSIgcmVzdWx0PSJzaGFwZSIvPgo8L2ZpbHRlcj4KPC9kZWZzPgo8L3N2Zz4K", + tX = + "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjgiIGhlaWdodD0iMjgiIHZpZXdCb3g9IjAgMCAyOCAyOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgZmlsdGVyPSJ1cmwoI2ZpbHRlcjBfZF82MjgxXzcyMzEpIj4KPHBhdGggZD0iTTE4LjcwMjMgMTcuMzU4OEMxOC4wODQ4IDE3Ljk3NjMgMTcuMzUxNyAxOC40NjYxIDE2LjU0NDkgMTguODAwM0MxNS43MzgxIDE5LjEzNDUgMTQuODczMyAxOS4zMDY1IDE0IDE5LjMwNjVDMTMuMTI2NyAxOS4zMDY1IDEyLjI2MiAxOS4xMzQ1IDExLjQ1NTIgMTguODAwM0MxMC42NDg0IDE4LjQ2NjEgOS45MTUyOCAxNy45NzYzIDkuMjk3NzcgMTcuMzU4OEw3LjI4MjUyIDE1LjM0MzVMNC41OTU1MSAxOC4wMzA1TDQuNTk1NTEgOS45Njk0OUwxMi42NTY1IDkuOTY5NDlMOS45Njk1MiAxMi42NTY1TDExLjk4NDggMTQuNjcxOEMxMi4yNDk0IDE0LjkzNjQgMTIuNTYzNiAxNS4xNDYzIDEyLjkwOTQgMTUuMjg5NkMxMy4yNTUyIDE1LjQzMjggMTMuNjI1OCAxNS41MDY1IDE0IDE1LjUwNjVDMTQuMzc0MyAxNS41MDY1IDE0Ljc0NDkgMTUuNDMyOCAxNS4wOTA3IDE1LjI4OTZDMTUuNDM2NSAxNS4xNDYzIDE1Ljc1MDYgMTQuOTM2NCAxNi4wMTUzIDE0LjY3MTdMMTguMDMwNSAxMi42NTY1TDE1LjM0MzUgOS45Njk0OUwyMy40MDQ2IDkuOTY5NDlMMjMuNDA0NSAxOC4wMzA1TDIwLjcxNzUgMTUuMzQzNUwxOC43MDIzIDE3LjM1ODhaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNMTYuNjg2NSAxNS4zNDQ0TDE5LjM3MzUgMTIuNjU3M0wxNy42OTQyIDEwLjk3OEwyMi4zOTY0IDEwLjk3OEwyMi4zOTY0IDE1LjY4MDJMMjAuNzE3MSAxNC4wMDA5TDE4LjAzIDE2LjY4NzlDMTcuNTAwOCAxNy4yMTcyIDE2Ljg3MjQgMTcuNjM3IDE2LjE4MDggMTcuOTIzNUMxNS40ODkzIDE4LjIwOTkgMTQuNzQ4MSAxOC4zNTc0IDEzLjk5OTUgMTguMzU3NEMxMy4yNTEgMTguMzU3NCAxMi41MDk4IDE4LjIwOTkgMTEuODE4MiAxNy45MjM1QzExLjEyNjcgMTcuNjM3IDEwLjQ5ODMgMTcuMjE3MiA5Ljk2OTAyIDE2LjY4NzlMNy4yODIwMiAxNC4wMDA5TDUuNjAyNjQgMTUuNjgwMkw1LjYwMjY0IDEwLjk3OEwxMC4zMDQ5IDEwLjk3OEw4LjYyNTUyIDEyLjY1NzRMMTEuMzEyNSAxNS4zNDQ0QzExLjY2NTQgMTUuNjk3MiAxMi4wODQzIDE1Ljk3NzEgMTIuNTQ1MyAxNi4xNjgxQzEzLjAwNjQgMTYuMzU5MSAxMy41MDA1IDE2LjQ1NzQgMTMuOTk5NSAxNi40NTc0QzE0LjQ5ODYgMTYuNDU3NCAxNC45OTI3IDE2LjM1OTEgMTUuNDUzNyAxNi4xNjgxQzE1LjkxNDggMTUuOTc3MSAxNi4zMzM3IDE1LjY5NzIgMTYuNjg2NSAxNS4zNDQ0WiIgZmlsbD0iYmxhY2siLz4KPC9nPgo8ZGVmcz4KPGZpbHRlciBpZD0iZmlsdGVyMF9kXzYyODFfNzIzMSIgeD0iMi43NDU1OSIgeT0iOS4xNDc0NSIgd2lkdGg9IjIyLjUwOTMiIGhlaWdodD0iMTMuMDM3MSIgZmlsdGVyVW5pdHM9InVzZXJTcGFjZU9uVXNlIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiPgo8ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PSIwIiByZXN1bHQ9IkJhY2tncm91bmRJbWFnZUZpeCIvPgo8ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHR5cGU9Im1hdHJpeCIgdmFsdWVzPSIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMCIgcmVzdWx0PSJoYXJkQWxwaGEiLz4KPGZlT2Zmc2V0IGR5PSIxLjAyNzg0Ii8+CjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjAuOTI1MDU2Ii8+CjxmZUNvbG9yTWF0cml4IHR5cGU9Im1hdHJpeCIgdmFsdWVzPSIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwLjY1IDAiLz4KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbjI9IkJhY2tncm91bmRJbWFnZUZpeCIgcmVzdWx0PSJlZmZlY3QxX2Ryb3BTaGFkb3dfNjI4MV83MjMxIi8+CjxmZUJsZW5kIG1vZGU9Im5vcm1hbCIgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0iZWZmZWN0MV9kcm9wU2hhZG93XzYyODFfNzIzMSIgcmVzdWx0PSJzaGFwZSIvPgo8L2ZpbHRlcj4KPC9kZWZzPgo8L3N2Zz4K", + t$ = + "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjgiIGhlaWdodD0iMjgiIHZpZXdCb3g9IjAgMCAyOCAyOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgZmlsdGVyPSJ1cmwoI2ZpbHRlcjBfZF82MjgxXzczMjUpIj4KPHBhdGggZD0iTTEwLjY0MTIgMTguNzAyM0MxMC4wMjM3IDE4LjA4NDggOS41MzM5IDE3LjM1MTcgOS4xOTk3IDE2LjU0NDlDOC44NjU1MSAxNS43MzgxIDguNjkzNSAxNC44NzMzIDguNjkzNSAxNEM4LjY5MzUgMTMuMTI2NyA4Ljg2NTUxIDEyLjI2MiA5LjE5OTcgMTEuNDU1MkM5LjUzMzkgMTAuNjQ4NCAxMC4wMjM3IDkuOTE1MjggMTAuNjQxMiA5LjI5Nzc3TDEyLjY1NjUgNy4yODI1Mkw5Ljk2OTQ5IDQuNTk1NTFMMTguMDMwNSA0LjU5NTUxTDE4LjAzMDUgMTIuNjU2NUwxNS4zNDM1IDkuOTY5NTJMMTMuMzI4MiAxMS45ODQ4QzEzLjA2MzYgMTIuMjQ5NCAxMi44NTM3IDEyLjU2MzYgMTIuNzEwNCAxMi45MDk0QzEyLjU2NzIgMTMuMjU1MiAxMi40OTM1IDEzLjYyNTggMTIuNDkzNSAxNEMxMi40OTM1IDE0LjM3NDMgMTIuNTY3MiAxNC43NDQ5IDEyLjcxMDQgMTUuMDkwN0MxMi44NTM3IDE1LjQzNjUgMTMuMDYzNiAxNS43NTA2IDEzLjMyODIgMTYuMDE1M0wxNS4zNDM1IDE4LjAzMDVMMTguMDMwNSAxNS4zNDM1TDE4LjAzMDUgMjMuNDA0Nkw5Ljk2OTQ5IDIzLjQwNDVMMTIuNjU2NSAyMC43MTc1TDEwLjY0MTIgMTguNzAyM1oiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGQ9Ik0xMi42NTU2IDE2LjY4NjVMMTUuMzQyNyAxOS4zNzM1TDE3LjAyMiAxNy42OTQyTDE3LjAyMiAyMi4zOTY0TDEyLjMxOTggMjIuMzk2NEwxMy45OTkxIDIwLjcxNzFMMTEuMzEyMSAxOC4wM0MxMC43ODI4IDE3LjUwMDggMTAuMzYzIDE2Ljg3MjQgMTAuMDc2NSAxNi4xODA4QzkuNzkwMDggMTUuNDg5MyA5LjY0MjY1IDE0Ljc0ODEgOS42NDI2NSAxMy45OTk1QzkuNjQyNjUgMTMuMjUxIDkuNzkwMDggMTIuNTA5OCAxMC4wNzY1IDExLjgxODJDMTAuMzYzIDExLjEyNjcgMTAuNzgyOCAxMC40OTgzIDExLjMxMjEgOS45NjkwMkwxMy45OTkxIDcuMjgyMDJMMTIuMzE5OCA1LjYwMjY0TDE3LjAyMiA1LjYwMjY0TDE3LjAyMiAxMC4zMDQ5TDE1LjM0MjYgOC42MjU1MkwxMi42NTU2IDExLjMxMjVDMTIuMzAyOCAxMS42NjU0IDEyLjAyMjkgMTIuMDg0MyAxMS44MzE5IDEyLjU0NTNDMTEuNjQwOSAxMy4wMDY0IDExLjU0MjYgMTMuNTAwNSAxMS41NDI2IDEzLjk5OTVDMTEuNTQyNiAxNC40OTg2IDExLjY0MDkgMTQuOTkyNyAxMS44MzE5IDE1LjQ1MzdDMTIuMDIyOSAxNS45MTQ4IDEyLjMwMjggMTYuMzMzNyAxMi42NTU2IDE2LjY4NjVaIiBmaWxsPSJibGFjayIvPgo8L2c+CjxkZWZzPgo8ZmlsdGVyIGlkPSJmaWx0ZXIwX2RfNjI4MV83MzI1IiB4PSI2Ljg0MzI1IiB5PSIzLjc3MzQzIiB3aWR0aD0iMTMuMDM3MSIgaGVpZ2h0PSIyMi41MDkzIiBmaWx0ZXJVbml0cz0idXNlclNwYWNlT25Vc2UiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiI+CjxmZUZsb29kIGZsb29kLW9wYWNpdHk9IjAiIHJlc3VsdD0iQmFja2dyb3VuZEltYWdlRml4Ii8+CjxmZUNvbG9yTWF0cml4IGluPSJTb3VyY2VBbHBoYSIgdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIiByZXN1bHQ9ImhhcmRBbHBoYSIvPgo8ZmVPZmZzZXQgZHk9IjEuMDI3ODQiLz4KPGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iMC45MjUwNTYiLz4KPGZlQ29sb3JNYXRyaXggdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAuNjUgMCIvPgo8ZmVCbGVuZCBtb2RlPSJub3JtYWwiIGluMj0iQmFja2dyb3VuZEltYWdlRml4IiByZXN1bHQ9ImVmZmVjdDFfZHJvcFNoYWRvd182MjgxXzczMjUiLz4KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbj0iU291cmNlR3JhcGhpYyIgaW4yPSJlZmZlY3QxX2Ryb3BTaGFkb3dfNjI4MV83MzI1IiByZXN1bHQ9InNoYXBlIi8+CjwvZmlsdGVyPgo8L2RlZnM+Cjwvc3ZnPgo=", + t0 = + "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgZmlsdGVyPSJ1cmwoI2ZpbHRlcjBfZF81ODM3Xzc1ODMpIj4KPHBhdGggZD0iTTkuMjQgMTIuMDdMMTMuMzEgMTYuMTRMMTAuNDkgMTguOTdMMTguOTYgMTguOTVMMTguOTcgMTAuNDhMMTYuMTMgMTMuMzJMMTIuMDYgOS4yNkwxMC42NCA3Ljg0TDEzLjQ5IDVINVYxMy40OEw3LjgzIDEwLjY2TDkuMjQgMTIuMDdaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNMTAuMyAxMS43MkwxNC43MyAxNi4xNEwxMi45IDE3Ljk3TDE3Ljk2IDE3Ljk1TDE3Ljk3IDEyLjlMMTYuMTMgMTQuNzRMMTEuNyAxMC4zMkw5LjIzIDcuODRMMTEuMDcgNkg2VjExLjA3TDcuODMgOS4yNEwxMC4zIDExLjcyWiIgZmlsbD0iYmxhY2siLz4KPC9nPgo8ZGVmcz4KPGZpbHRlciBpZD0iZmlsdGVyMF9kXzU4MzdfNzU4MyIgeD0iMy4yIiB5PSI0LjIiIHdpZHRoPSIxNy41NyIgaGVpZ2h0PSIxNy41NyIgZmlsdGVyVW5pdHM9InVzZXJTcGFjZU9uVXNlIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiPgo8ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PSIwIiByZXN1bHQ9IkJhY2tncm91bmRJbWFnZUZpeCIvPgo8ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHR5cGU9Im1hdHJpeCIgdmFsdWVzPSIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMCIgcmVzdWx0PSJoYXJkQWxwaGEiLz4KPGZlT2Zmc2V0IGR5PSIxIi8+CjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjAuOSIvPgo8ZmVDb2xvck1hdHJpeCB0eXBlPSJtYXRyaXgiIHZhbHVlcz0iMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMC42NSAwIi8+CjxmZUJsZW5kIG1vZGU9Im5vcm1hbCIgaW4yPSJCYWNrZ3JvdW5kSW1hZ2VGaXgiIHJlc3VsdD0iZWZmZWN0MV9kcm9wU2hhZG93XzU4MzdfNzU4MyIvPgo8ZmVCbGVuZCBtb2RlPSJub3JtYWwiIGluPSJTb3VyY2VHcmFwaGljIiBpbjI9ImVmZmVjdDFfZHJvcFNoYWRvd181ODM3Xzc1ODMiIHJlc3VsdD0ic2hhcGUiLz4KPC9maWx0ZXI+CjwvZGVmcz4KPC9zdmc+Cg==", + t1 = + "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgZmlsdGVyPSJ1cmwoI2ZpbHRlcjBfZF81ODMzXzI5NzM4KSI+CjxwYXRoIGQ9Ik0xNC43MyAxMi4wN0wxMC42NiAxNi4xNEwxMy40OSAxOC45N0w1LjAxIDE4Ljk1TDUgMTAuNDhMNy44NCAxMy4zMkwxMS45MiA5LjI2TDEzLjMzIDcuODRMMTAuNDkgNUgxOC45N1YxMy40OEwxNi4xNCAxMC42NkwxNC43MyAxMi4wN1oiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGQ9Ik0xMy42NyAxMS43Mkw5LjI0IDE2LjE0TDExLjA3IDE3Ljk3TDYuMDEgMTcuOTVMNiAxMi45TDcuODQgMTQuNzRMMTIuMjcgMTAuMzJMMTQuNzQgNy44NEwxMi45IDZIMTcuOTdWMTEuMDdMMTYuMTQgOS4yNEwxMy42NyAxMS43MloiIGZpbGw9ImJsYWNrIi8+CjwvZz4KPGRlZnM+CjxmaWx0ZXIgaWQ9ImZpbHRlcjBfZF81ODMzXzI5NzM4IiB4PSIzLjIiIHk9IjQuMiIgd2lkdGg9IjE3LjU3IiBoZWlnaHQ9IjE3LjU3IiBmaWx0ZXJVbml0cz0idXNlclNwYWNlT25Vc2UiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiI+CjxmZUZsb29kIGZsb29kLW9wYWNpdHk9IjAiIHJlc3VsdD0iQmFja2dyb3VuZEltYWdlRml4Ii8+CjxmZUNvbG9yTWF0cml4IGluPSJTb3VyY2VBbHBoYSIgdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIiByZXN1bHQ9ImhhcmRBbHBoYSIvPgo8ZmVPZmZzZXQgZHk9IjEiLz4KPGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iMC45Ii8+CjxmZUNvbG9yTWF0cml4IHR5cGU9Im1hdHJpeCIgdmFsdWVzPSIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwLjY1IDAiLz4KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbjI9IkJhY2tncm91bmRJbWFnZUZpeCIgcmVzdWx0PSJlZmZlY3QxX2Ryb3BTaGFkb3dfNTgzM18yOTczOCIvPgo8ZmVCbGVuZCBtb2RlPSJub3JtYWwiIGluPSJTb3VyY2VHcmFwaGljIiBpbjI9ImVmZmVjdDFfZHJvcFNoYWRvd181ODMzXzI5NzM4IiByZXN1bHQ9InNoYXBlIi8+CjwvZmlsdGVyPgo8L2RlZnM+Cjwvc3ZnPgo="; + function t2(e) { + return "url(".concat(e, ") 12 12, pointer"); + } + var t6 = { + [tb.HK.Default]: "default", + [tb.HK.ResizeTopLeftToBottomRight]: t2(t0), + [tb.HK.ResizeTopRightToBottomLeft]: t2(t1), + [tb.HK.Move]: "move", + [tb.HK.RotateTop]: t2(tY), + [tb.HK.RotateRight]: t2(tQ), + [tb.HK.RotateBottom]: t2(tX), + [tb.HK.RotateLeft]: t2(t$), + }; + function t4(e) { + return t6[e]; + } + function t3() { + var e, + { x: t, y: i } = tE(), + n = ev(), + { + rotate: r = 0, + transformType: a = tb.OS.None, + actionCursor: o = tb.HK.Default, + } = null !== + (e = (0, ek.k)(n, (e) => ({ + transformType: e.transformType, + rotate: e.rotate, + actionCursor: e.actionCursor, + }))) && void 0 !== e + ? e + : {}, + s = (360 + (0, tJ.c)(r, 0)) % 360, + l = a === tb.OS.Rotate, + c = () => document.body; + return l + ? (0, f.jsx)(tK.Z, { + content: "".concat(s, "\xb0"), + className: tH, + position: "bl", + popupVisible: l, + getPopupContainer: c, + children: (0, f.jsx)("span", { + className: tq, + style: { left: t, top: i, cursor: t4(o) }, + }), + }) + : null; + } + var t8 = i("195291"), + t9 = "center-RQTcHW", + t5 = -44, + t7 = () => { + var e = (0, y.useRef)(null), + [t, i] = tG(), + [n, r] = tG(), + [a, o] = tG(), + [s, l] = tG(), + c = tZ({ top: i, right: r, bottom: o, left: l }); + return (0, f.jsxs)(tP, { + children: [ + (0, f.jsx)(tF, { + ref: t, + isActive: c === tl.Top, + sideDirection: tl.Top, + style: { top: t5, left: "50%" }, + centerRef: e, + }), + (0, f.jsx)(tF, { + ref: n, + isActive: c === tl.Right, + sideDirection: tl.Right, + style: { right: t5, top: "50%" }, + centerRef: e, + }), + (0, f.jsx)(tF, { + ref: a, + isActive: c === tl.Bottom, + sideDirection: tl.Bottom, + style: { bottom: t5, left: "50%" }, + centerRef: e, + }), + (0, f.jsx)(tF, { + ref: s, + isActive: c === tl.Left, + sideDirection: tl.Left, + style: { left: t5, top: "50%" }, + centerRef: e, + }), + (0, f.jsx)("span", { ref: e, className: t9 }), + (0, t8.createPortal)((0, f.jsx)(t3, {}), document.body), + ], + }); + }, + ie = "borderButton-l7_lIL", + it = "borderButtonTl-iNv8ma", + ii = "borderButtonTr-K6lQb8", + ir = "borderButtonBr-khmeU_", + ia = "borderButtonBl-T9HIwE", + io = "borderButtonHidden-XFItdP", + is = "borderButtonActive-QTlFFu", + il = "circle-yvZCCf", + ic = (0, y.createContext)({ width: 0, height: 0 }); + function id() { + return (0, y.useContext)(ic); + } + var iu = i("876220"), + ih = i("930153"), + ip = { + [ts.TopLeft]: tb.HK.ResizeTopLeftToBottomRight, + [ts.TopRight]: tb.HK.ResizeTopRightToBottomLeft, + [ts.BottomRight]: tb.HK.ResizeTopLeftToBottomRight, + [ts.BottomLeft]: tb.HK.ResizeTopRightToBottomLeft, + }; + function iv(e) { + var t, + i = ev(), + { status: n, setActive: r } = tw(tb.OS.Resize), + { + moveX: a = 0, + moveY: o = 0, + scale: s = 1, + rotate: l = 0, + } = null !== + (t = (0, ek.k)(i, (e) => ({ + moveX: e.moveX, + moveY: e.moveY, + scale: e.scale, + rotate: e.rotate, + }))) && void 0 !== t + ? t + : {}, + { width: c, height: d } = tk(), + { width: u, height: f } = id(), + h = eB(), + p = ex(); + return { + status: n, + startResize: (e, t) => { + var n = { + [ts.TopLeft]: ts.BottomRight, + [ts.TopRight]: ts.BottomLeft, + [ts.BottomRight]: ts.TopLeft, + [ts.BottomLeft]: ts.TopRight, + }[t]; + if (!!document.getElementById("paint-container")) { + var v = { x: e.clientX, y: e.clientY }; + p(!1), r(!0), null == i || i.updateTransformType(tb.OS.Resize); + var m = tS(l, c, d, { x: a, y: o }), + g = m[n], + _ = m[t], + { x: y } = _, + b = ip[tC(_, { x: a, y: o })]; + null == i || i.updateActionCursor(b); + var I = y < a, + w = (e) => { + var { clientX: t, clientY: r } = e, + a = t, + o = a - v.x, + p = I ? c - o : c + o, + m = p / c, + _ = d * m; + if (p < ih.d || _ < ih.d) return; + var { x: y, y: b } = tM(l, p, _, g)[n], + w = m * s; + if (w < 0) return; + var { x: x, y: S } = (0, iu.o)(l, p, _, u, f, h), + { min: M, max: C } = x, + { min: T, max: A } = S; + if (!!(y >= M && y <= C && b >= T && b <= A)) + null == i || i.updateScale(w), + null == i || i.updateMoveX(y), + null == i || i.updateMoveY(b); + }, + x = (e) => { + window.removeEventListener("mousemove", w), + r(!1), + p(!0), + null == i || i.resetTransformType(), + null == i || i.resetActionCursor(); + }; + window.addEventListener("mousemove", w), + window.addEventListener("mouseup", x); + } + }, + }; + } + function im(e) { + var t, + { width: i, height: n } = tk(), + r = ev(), + { + moveX: a = 0, + moveY: o = 0, + rotate: s = 0, + } = null !== + (t = (0, ek.k)(r, (e) => ({ + moveX: e.moveX, + moveY: e.moveY, + rotate: e.rotate, + }))) && void 0 !== t + ? t + : {}; + return tC(tS(s, i, n, { x: a, y: o })[e], { x: a, y: o }); + } + var ig = (e) => { + var { direction: t, style: i } = e, + n = (0, tc._)(e, ["direction", "style"]), + { startResize: o, status: s } = iv(t), + l = im(t), + c = (0, D.lS)(), + d = (e) => { + e.stopPropagation(), tB(c, { action: tj.Zoom }), o(e, t); + }, + u = { + [ts.TopLeft]: { + left: 0, + top: 0, + transform: "translate(-50%, -50%)", + }, + [ts.TopRight]: { + right: 0, + top: 0, + transform: "translate(50%, -50%)", + }, + [ts.BottomRight]: { + right: 0, + bottom: 0, + transform: "translate(50%, 50%)", + }, + [ts.BottomLeft]: { + left: 0, + bottom: 0, + transform: "translate(-50%, 50%)", + }, + }[t], + h = eY()( + ie, + { + [it]: l === ts.TopLeft, + [ii]: l === ts.TopRight, + [ia]: l === ts.BottomLeft, + [ir]: l === ts.BottomRight, + }, + { [is]: s === tI.Active, [io]: s === tI.Hidden } + ); + return (0, f.jsx)( + "div", + (0, a._)((0, r._)({}, n), { + style: (0, r._)({}, u, i), + className: h, + onMouseDown: d, + children: (0, f.jsx)("div", { className: il }), + }) + ); + }, + i_ = () => + (0, f.jsxs)(f.Fragment, { + children: [ + (0, f.jsx)(ig, { direction: ts.TopLeft }), + (0, f.jsx)(ig, { direction: ts.TopRight }), + (0, f.jsx)(ig, { direction: ts.BottomRight }), + (0, f.jsx)(ig, { direction: ts.BottomLeft }), + ], + }); + function iy() { + var e, + { width: t, height: i } = id(), + n = ev(), + r = eB(), + [a, o] = (0, y.useState)(!1), + { + moveX: s = 0, + moveY: l = 0, + rotate: c = 0, + } = null !== + (e = (0, ek.k)(n, (e) => ({ + scale: e.scale, + moveX: e.moveX, + moveY: e.moveY, + rotate: e.rotate, + }))) && void 0 !== e + ? e + : {}, + { width: d, height: u } = tk(), + f = ex(); + return { + startMove: (e) => { + var a = { x: e.clientX, y: e.clientY }; + o(!0), + f(!1), + null == n || n.updateTransformType(tb.OS.Move), + null == n || n.updateActionCursor(tb.HK.Move); + var { x: h, y: p } = (0, iu.o)(c, d, u, t, i, r), + v = (e) => { + var { clientX: t, clientY: i } = e, + r = t, + o = i, + c = r - a.x, + d = o - a.y, + u = Math.min(h.max, Math.max(h.min, s + c)), + f = Math.min(p.max, Math.max(p.min, l + d)); + null == n || n.updateMoveX(u), null == n || n.updateMoveY(f); + }, + m = (e) => { + window.removeEventListener("mousemove", v), + window.removeEventListener("mouseup", m), + o(!1), + f(!0), + null == n || n.resetTransformType(), + null == n || n.resetActionCursor(); + }; + window.addEventListener("mousemove", v), + window.addEventListener("mouseup", m); + }, + }; + } + var ib = "frameInteract-yYeJMe", + iI = "frameInteractActive-p9_A_f", + iw = "frameInteractActiveDefault-EnRXbr"; + function ix(e) { + var t, + { children: i } = e, + n = (0, tc._)(e, ["children"]), + { startMove: o } = iy(), + s = ev(), + { isSelectImage: l = !1, isTransforming: c = !1 } = + null !== + (t = (0, ek.k)(s, (e) => ({ + isSelectImage: e.isSelectImage, + isTransforming: e.isTransforming, + }))) && void 0 !== t + ? t + : {}, + d = () => { + if (null == s ? !void 0 : !s.isSelectImage) + null == s || s.updateIsSelectImage(!0); + }, + u = (0, D.lS)(), + h = (e) => { + if ((e.stopPropagation(), !!l)) tB(u, { action: tj.Move }), o(e); + }, + p = eY()(ib, { [iI]: l && !c, [iw]: l && c }); + return (0, f.jsx)( + "div", + (0, a._)((0, r._)({}, n), { + className: p, + onMouseDown: h, + onClick: d, + children: l ? i : null, + }) + ); + } + function iS() { + var e, + t = ev(), + i = + null !== (e = (0, ek.k)(t, (e) => e.actionCursor)) && void 0 !== e + ? e + : tb.HK.Default, + n = (0, y.useRef)(null); + (0, y.useEffect)(() => { + var e, + t = + null === (e = document.getElementsByClassName(ti.Mp)) || + void 0 === e + ? void 0 + : e[0]; + if (!!t) { + var i = t.firstElementChild; + return ( + (n.current = i), + () => { + n.current && (n.current.style.cursor = "default"); + } + ); + } + }, []), + (0, y.useEffect)(() => { + if (!!n.current) n.current.style.cursor = t4(i); + }, [i]); + } + var iM = (e) => { + var t, + { + containerWidth: i, + containerHeight: n, + paintWidth: o, + paintHeight: s, + imageWidth: l, + imageHeight: c, + } = e, + { framePosition: d, frameSize: u } = to({ + containerWidth: i, + containerHeight: n, + paintWidth: o, + paintHeight: s, + imageWidth: l, + imageHeight: c, + }), + h = (0, y.useMemo)(() => ({ width: o, height: s }), [o, s]), + p = ev(); + iS(); + var { isSelectActive: v, isTransforming: m } = + null !== + (t = (0, ek.k)(p, (e) => ({ + isSelectActive: null == e ? void 0 : e.isSelectActive, + isTransforming: null == e ? void 0 : e.isTransforming, + }))) && void 0 !== t + ? t + : {}; + if (!v) return null; + var g = (0, a._)((0, r._)({}, d), { + transition: m ? "" : "all .1s ease-in-out", + }); + return (0, f.jsx)(tA.Provider, { + value: u, + children: (0, f.jsx)(ic.Provider, { + value: h, + children: (0, f.jsxs)(ix, { + style: g, + children: [(0, f.jsx)(t7, {}), (0, f.jsx)(i_, {})], + }), + }), + }); + }, + iC = i("238638"), + iT = (e) => { + var { + hiddenSelect: t, + hiddenDrag: i, + containerWidth: n, + containerHeight: r, + paintWidth: a, + paintHeight: o, + imageDisplayWidth: s, + imageDisplayHeight: l, + hiddenRightInteract: c, + drawMaskSuccessCb: d, + } = e, + { paintModeInstance: u } = eL(), + h = (0, y.useRef)(u); + h.current = u; + var { triggerDrawMasks: p } = (0, iC.z)(h, d); + (0, y.useEffect)(() => { + null == u || u.changeCanvasContainerSize({ width: s, height: l }), + p(); + }, [l, s, u]); + var v = () => { + if (!eD.T.getItem(eR.u.isShowBGPaintMessage)) + eD.T.setItem(eR.u.isShowBGPaintMessage, "true"), + e5.h.open({ + content: (0, f.jsx)(tt, {}), + bindContainer: document.querySelector("#".concat(ti.uS)), + uiStyle: { top: "200px" }, + delay: 3e3, + }); + }; + return ( + (0, y.useEffect)(() => { + v(); + }, []), + (0, f.jsxs)(eI, { + children: [ + (0, f.jsx)(iM, { + containerWidth: n, + containerHeight: r, + paintWidth: a, + paintHeight: o, + imageWidth: s, + imageHeight: l, + }), + (0, f.jsx)(e9, { hiddenSelect: t, hiddenDrag: i }), + !c && (0, f.jsx)(eS, {}), + ], + }) + ); + }, + iA = i("899716"); + i("229254"); + var ik = i("597793"), + iP = "referenceLevelContainer-gLrRQi", + iE = "left-yrB32m", + iD = "right-C25_iI", + iR = "slider-tLznaZ", + iN = "text-bSjCt0", + iL = (function (e) { + return (e.Show = "Show"), (e.Click = "click"), e; + })({}); + class ij { + getEventParams() { + var e; + return { + action: this._params.action, + value: null !== (e = this._params.value) && void 0 !== e ? e : "", + }; + } + constructor(e) { + (this._params = e), (this.eventName = "reference_inspiration_slider"); + } + } + function iO(e, t) { + (0, N.Kl)(e, ij, [t]); + } + var iB = (e) => { + var t, + { image: i } = e, + n = (0, D.lS)(), + r = ep.o.getGraphicToolStoreInstance(n), + a = null == r ? void 0 : r.basicBlendInstance, + { referenceLevel: o } = + null !== + (t = (0, ek.k)( + null == r ? void 0 : r.basicBlendInstance, + (e) => ({ + referenceLevel: null == e ? void 0 : e.referenceLevel, + }) + )) && void 0 !== t + ? t + : {}, + s = (e) => { + if (!Array.isArray(e)) null == a || a.updateReferenceLevel(e); + }, + l = (e) => { + if (!Array.isArray(e)) iO(n, { action: iL.Click, value: e }); + }; + return ( + (0, y.useEffect)(() => { + iO(n, { action: iL.Show, value: o }); + }, []), + (0, f.jsx)(f.Fragment, { + children: (0, f.jsxs)("div", { + className: iP, + children: [ + (0, f.jsx)("div", { + className: iE, + children: u.oc.t( + "wimg2img_title_intensity", + {}, + "Intensity" + ), + }), + (0, f.jsxs)("div", { + className: iD, + children: [ + (0, f.jsx)(ik.Z, { + max: ti.K5.max, + min: ti.K5.min, + step: ti.K5.step, + value: o, + onChange: s, + className: iR, + onAfterChange: l, + }), + (0, f.jsxs)("div", { + className: iN, + children: [ + (0, f.jsx)("div", { + children: u.oc.t( + "wimg2img_content_strong", + {}, + "Weak" + ), + }), + (0, f.jsx)("div", { + children: u.oc.t( + "wimg2img_content_medium", + {}, + "Medium" + ), + }), + (0, f.jsx)("div", { + children: u.oc.t( + "wimg2img_content_weak", + {}, + "Strong" + ), + }), + ], + }), + ], + }), + ], + }), + }) + ); + }, + iF = i("494766"), + iU = i("743568"), + iG = "style-reference-interact-PYkarw", + iz = i("100900"), + iV = i("65830"), + iW = (e) => { + var t, + { instance: i } = e, + [n, r] = (0, y.useState)(iF.n.None), + a = (0, D.lS)(), + { referenceLevel: o = ti.FY.default } = + null !== + (t = (0, ek.k)(i, (e) => ({ + referenceLevel: null == e ? void 0 : e.referenceLevel, + }))) && void 0 !== t + ? t + : {}, + s = (e) => { + if (!Array.isArray(e)) null == i || i.updateReferenceLevel(e); + }, + l = (e) => { + if (!Array.isArray(e)) + (0, iz.b)(a, { + action: iz.u.Click, + type: iV.gZ.Style, + value: e, + }); + }, + c = (e) => { + e + ? (r(iF.n.AdjustReferenceLevel), + (0, iz.b)(a, { action: iz.u.Show, type: iV.gZ.Style })) + : r(iF.n.None); + }; + return (0, f.jsx)("div", { + className: iG, + children: (0, f.jsx)(iU.s, { + referenceLevel: o, + min: ti.FY.min, + isActive: n === iF.n.AdjustReferenceLevel, + onChange: s, + onAfterChange: l, + onUpdateActiveOption: r, + onReferenceLevelVisibleChange: c, + }), + }); + }, + iZ = "style-reference-interact-RzMfFZ", + iK = "referenceLevelContainer-axXjMN", + iH = "referenceContent-upCV6B", + iq = "sliderWrap-tslUt7", + iJ = "slider-lm0AD0", + iY = "sliderResult-VKrn6Z", + iQ = "interactArea-ByZHGW", + iX = "active-Yn8FM3", + i$ = "paramIcon-eqEspQ", + i0 = i("763284"), + i1 = i("443213"), + i2 = (e) => { + var { + value: t, + isActive: i, + sliderMax: n, + sliderMin: r, + sliderStep: a, + name: o, + onValueChange: s, + onAfterValueChange: l, + onUpdateReferenceBarActive: c, + onReferenceLevelVisibleChange: d, + } = e; + return (0, f.jsx)(i1.E, { + containerClassName: iK, + contentClassName: iH, + onVisibleChange: d, + content: (0, f.jsxs)("div", { + className: iq, + children: [ + (0, f.jsx)(i0.i, { + max: n, + min: r, + step: a, + value: t, + onChange: s, + triggerBar: !0, + className: iJ, + onAfterChange: l, + }), + (0, f.jsx)("span", { className: iY, children: Math.round(t) }), + ], + }), + children: (0, f.jsxs)("div", { + className: eY()(iQ, { [iX]: i }), + onClick: () => c(), + children: [ + (0, f.jsx)(p.ygK, { className: i$ }), + (0, f.jsx)("span", { children: o }), + ], + }), + }); + }, + i6 = (e) => { + var t, + { instance: i } = e, + [n, r] = (0, y.useState)(!1), + a = (0, D.lS)(), + { referenceLevel: o = ti.cR.default } = + null !== + (t = (0, ek.k)(i, (e) => ({ + referenceLevel: null == e ? void 0 : e.referenceLevel, + }))) && void 0 !== t + ? t + : {}, + s = (e) => { + if (!Array.isArray(e)) null == i || i.updateReferenceLevel(e); + }, + l = (e) => { + if (!Array.isArray(e)) + (0, iz.b)(a, { + action: iz.u.Click, + type: iV.gZ.ByteEdit, + value: e, + }); + }, + c = (e) => { + e + ? (r(!0), + (0, iz.b)(a, { action: iz.u.Show, type: iV.gZ.ByteEdit })) + : r(!1); + }, + d = () => { + r(!0); + }; + return (0, f.jsx)("div", { + className: iZ, + children: (0, f.jsx)(i2, { + value: o, + isActive: n, + sliderMin: ti.cR.min, + sliderMax: ti.cR.max, + sliderStep: ti.cR.step, + onAfterValueChange: l, + onValueChange: s, + onReferenceLevelVisibleChange: c, + onUpdateReferenceBarActive: d, + name: u.ZP.t("wimg2img_title_intensity", {}, "Intensity"), + }), + }); + }, + i4 = (e) => { + var { + ability: t, + image: i, + params: n, + imageScale: r, + containerWidth: a, + containerHeight: o, + paintWidth: s, + paintHeight: l, + imageDisplayHeight: c, + imageDisplayWidth: d, + isEditorReady: u, + drawMaskSuccessCb: h, + } = e, + p = (0, D.lS)(), + v = ep.o.getGraphicToolStoreInstance(p); + return { + [R.s.FaceGan]: (0, f.jsx)($.e, { + image: i, + params: n, + imageScale: r, + }), + [R.s.BgPaint]: u + ? (0, f.jsx)(iT, { + containerWidth: a, + containerHeight: o, + paintWidth: s, + paintHeight: l, + imageDisplayHeight: c, + imageDisplayWidth: d, + drawMaskSuccessCb: h, + }) + : (0, f.jsx)(f.Fragment, {}), + [R.s.IpKeep]: (0, f.jsx)(iA.a, { + instance: null == v ? void 0 : v.ipKeepInstance, + }), + [R.s.BasicBlend]: (0, f.jsx)(iB, { image: i }), + [R.s.ControlNetCanny]: (0, f.jsx)(iF.d, { + instance: null == v ? void 0 : v.cannyInstance, + }), + [R.s.ControlNetDepth]: (0, f.jsx)(iF.d, { + instance: null == v ? void 0 : v.depthInstance, + }), + [R.s.ControlNetPose]: (0, f.jsx)(iF.d, { + instance: null == v ? void 0 : v.poseInstance, + }), + [R.s.Unknown]: (0, f.jsx)(f.Fragment, {}), + [R.s.ControlNet]: (0, f.jsx)(f.Fragment, {}), + [R.s.Text2image]: (0, f.jsx)(f.Fragment, {}), + [R.s.Image2image]: (0, f.jsx)(f.Fragment, {}), + [R.s.StyleReference]: (0, f.jsx)(iW, { + instance: null == v ? void 0 : v.styleInstance, + }), + [R.s.ByteEdit]: (0, f.jsx)(i6, { + instance: null == v ? void 0 : v.byteEditInstance, + }), + [R.s.StyleCode]: (0, f.jsx)(f.Fragment, {}), + }[t]; + }, + i3 = i("210708"), + i8 = i("124217"), + i9 = i("239643"), + i5 = { + singleImageWrap: "singleImageWrap-A_Y_zh", + paintContainer: "paintContainer-dVFr5A", + paintContent: "paintContent-chpz8W", + text: "text-Tv5eC6", + controlnetImageWrap: "controlnetImageWrap-saB7Ct", + image: "image-jwfaHL", + imagineGraphicEditor: "imagineGraphicEditor-sqQyLn", + hidden: "hidden-kLqcvL", + fadeOut: "fadeOut-dYyxux", + visible: "visible-kFPoBd", + fadeIn: "fadeIn-bA8_A0", + loading: "loading-hmqpz_", + }, + i7 = i("880821"), + ne = (e) => { + var [t, i] = (0, y.useState)({ width: 0, height: 0 }), + [n, r] = (0, y.useState)("string" == typeof e ? e : ""); + return ( + (0, y.useEffect)(() => { + var t = "", + n = !1; + "string" == typeof e + ? ((n = !1), (t = e)) + : ((n = !0), (t = URL.createObjectURL(e))), + (0, i7.po)(t) + .then((e) => { + var { width: t, height: n } = e; + i({ width: t, height: n }); + }) + .catch(() => { + i({ width: 0, height: 0 }); + }) + .finally(() => { + r(t); + }); + }, [e]), + { url: n, width: t.width, height: t.height } + ); + }; + function nt(e, t) { + var [i, n] = (0, y.useState)(e), + r = (0, y.useRef)(); + return ( + (0, y.useEffect)(() => { + r.current && clearTimeout(r.current), + (r.current = setTimeout(() => { + n(e); + }, t)); + }, [e, t]), + (0, y.useEffect)( + () => () => { + r.current && clearTimeout(r.current); + }, + [] + ), + [i] + ); + } + var ni = { + [R.s.ControlNetCanny]: "function_canny_pic", + [R.s.ControlNetDepth]: "function_depth_pic", + [R.s.ControlNetPose]: "function_pose_pic", + [R.s.IpKeep]: "", + [R.s.BasicBlend]: "", + [R.s.BgPaint]: "", + [R.s.FaceGan]: "", + [R.s.Unknown]: "", + [R.s.ControlNet]: "", + [R.s.Text2image]: "", + [R.s.Image2image]: "", + [R.s.StyleReference]: "", + [R.s.ByteEdit]: "", + [R.s.StyleCode]: "", + }, + nn = { + [R.s.ControlNetCanny]: "Edge", + [R.s.ControlNetDepth]: "Depth", + [R.s.ControlNetPose]: "Pose", + [R.s.IpKeep]: "", + [R.s.BasicBlend]: "", + [R.s.BgPaint]: "", + [R.s.FaceGan]: "", + [R.s.Unknown]: "", + [R.s.ControlNet]: "", + [R.s.Text2image]: "", + [R.s.Image2image]: "", + [R.s.StyleReference]: "", + [R.s.ByteEdit]: "", + [R.s.StyleCode]: "", + }, + nr = (e) => { + var t, + i, + { + ratio: n, + image: r, + paintWidth: a, + paintHeight: o, + abilityType: s, + style: l = {}, + className: c, + } = e, + [d, h] = (0, y.useState)(!0), + p = (0, y.useRef)(n); + (0, y.useEffect)(() => { + h(!0); + }, [s]), + (0, y.useEffect)(() => { + n !== p.current && d && h(!1); + }, [n]); + var v = (0, D.lS)(), + m = + null === (t = ep.o.getGraphicToolStoreInstance) || void 0 === t + ? void 0 + : t.call(ep.o, v), + { fitMode: g, previewUrl: _ } = + null !== + (i = (0, ek.k)( + null == m ? void 0 : m.getInstanceByAbility(s), + (e) => ({ + fitMode: null == e ? void 0 : e.fitMode, + previewUrl: null == e ? void 0 : e.previewUrl, + }) + )) && void 0 !== i + ? i + : {}, + [b] = nt(g, ti.hR), + [I] = nt(_, _ ? 0 : ti.hR), + w = null != _ ? _ : I, + { width: x, height: S, url: M } = ne("file" in r ? r.file : r.url), + { width: C, height: T } = (0, i9._X)({ + paintWidth: a, + paintHeight: o, + imageWidth: x, + imageHeight: S, + fitMode: b, + }), + A = { overflow: "hidden", objectFit: "cover" }; + return (0, f.jsxs)(f.Fragment, { + children: [ + (0, f.jsx)("div", { + className: eY()(i5.singleImageWrap, c), + style: l, + children: (0, f.jsxs)("div", { + className: i5.paintContent, + style: { + width: "".concat(a, "px"), + height: "".concat(o, "px"), + }, + children: [ + (0, f.jsx)("span", { + className: i5.text, + children: u.ZP.t("function_original", {}, "Original"), + }), + (0, f.jsx)("div", { + className: i5.originImageContainer, + style: { + width: "".concat(C, "px"), + height: "".concat(T, "px"), + transition: d ? "none" : "all 300ms ease-in-out", + }, + children: (0, f.jsx)(Y.k, { + loader: M + ? (0, f.jsx)(Q.XG, { + className: i5.loading, + size: Q.XJ.Big, + }) + : null, + className: i5.image, + imageStyle: A, + src: (0, J.C)(M, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + crossOrigin: "anonymous", + "data-apm-action": "control-net-images-image", + }), + }), + ], + }), + }), + (0, f.jsx)("div", { + className: eY()(i5.singleImageWrap, c), + style: l, + children: (0, f.jsxs)("div", { + className: i5.paintContent, + style: { + width: "".concat(a, "px"), + height: "".concat(o, "px"), + }, + children: [ + (0, f.jsx)("span", { + className: i5.text, + children: u.ZP.t(ni[s], {}, nn[s]), + }), + (0, f.jsx)("div", { + className: i5.imageContainer, + style: { + width: "".concat(C, "px"), + height: "".concat(T, "px"), + transition: d ? "none" : "all 300ms ease-in-out", + }, + children: (0, f.jsx)(Y.k, { + loader: w + ? (0, f.jsx)(Q.XG, { + className: i5.loading, + size: Q.XJ.Big, + }) + : null, + className: i5.image, + imageStyle: A, + onLoad: () => h(!1), + src: (0, J.C)(w, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + crossOrigin: "anonymous", + "data-apm-action": + "control-net-images-preview-url-display", + }), + }), + ], + }), + }), + ], + }); + }; + function na(e) { + var { + imageWidth: t, + imageHeight: i, + paintWidth: n, + paintHeight: r, + abilityType: a, + isInitActualSize: o, + } = e, + { moveX: s, moveY: l, scale: c, rotate: d } = tn(), + u = a === R.s.BgPaint, + f = Math.floor(u && o ? s - t / 2 : n / 2 - t / 2), + h = Math.floor(u && o ? l - i / 2 : r / 2 - i / 2), + p = u ? c : 1, + v = u ? d : 0; + return { + width: "".concat(t, "px"), + height: "".concat(i, "px"), + transform: "translate(" + .concat(f, "px, ") + .concat(h, "px) scale(") + .concat(p, ") rotate(") + .concat(v, "deg)"), + }; + } + var no = i("666204"), + ns = i("699267"), + nl = i("561658"), + nc = 1; + function nd(e) { + var t, + { + rawImageWidth: i, + rawImageHeight: n, + paintWidth: r, + paintHeight: a, + imageUrl: o, + abilityType: s, + largeImageInfo: l, + } = e, + c = ev(), + d = (0, y.useRef)(!1), + u = (0, ns.G)(nl.N), + f = null == u ? void 0 : u.imageParamsManager, + h = + null !== (t = null == f ? void 0 : f.imageRatio) && void 0 !== t + ? t + : ti.k0, + { imcConfigService: p } = (0, D.N_)(); + (0, y.useEffect)(() => { + !d.current && + n && + i && + o && + s === R.s.BgPaint && + ((d.current = !0), + (0, no.u)(l, { width: i, height: n }, nc, p).then((e) => { + var { width: t, height: s } = e; + null == c || c.updateRawImageSize(i, n), + null == c || c.updateImageUrl(o), + null == c || c.initActualPaintSize(t, s), + null == c || c.updatePaintSize(r, a, !1); + })); + }, [c, n, i, r, a, o, s, h, l, p]), + (0, y.useEffect)(() => { + d.current && + (0, no.u)(l, { width: i, height: n }, nc, p).then((e) => { + var { width: t, height: i } = e; + null == c || c.updateActualPaintSize(t, i); + }); + }, [c, l, n, i, p]), + (0, y.useEffect)(() => { + d.current && (null == c || c.updatePaintSize(r, a, !0)); + }, [c, r, a]); + } + var nu = (e) => { + var { + containerStyle: t, + imageHeight: i, + imageWidth: n, + children: o, + paintWidth: s, + paintHeight: l, + rawImageWidth: c, + rawImageHeight: d, + abilityType: u, + isInitialLoad: h, + imageUrl: p, + largeImageInfo: v, + } = e, + m = (0, tc._)(e, [ + "containerStyle", + "imageHeight", + "imageWidth", + "children", + "paintWidth", + "paintHeight", + "rawImageWidth", + "rawImageHeight", + "abilityType", + "isInitialLoad", + "imageUrl", + "largeImageInfo", + ]); + nd({ + rawImageWidth: c, + rawImageHeight: d, + paintWidth: s, + paintHeight: l, + imageUrl: p, + abilityType: u, + largeImageInfo: v, + }); + var g = ev(), + _ = (0, ek.k)(g, (e) => e.isTransforming), + y = na({ + imageHeight: i, + imageWidth: n, + paintWidth: s, + paintHeight: l, + abilityType: u, + isInitActualSize: null == g ? void 0 : g.isInitActualSize, + }), + b = { transition: h || _ ? "none" : "all 300ms ease-in-out" }; + return (0, f.jsx)( + "div", + (0, a._)((0, r._)({}, m), { + style: (0, r._)({}, t, y, b), + children: o, + }) + ); + }, + nf = i("429398"); + function nh() { + var e = (0, y.useMemo)(() => [et, ei], []); + return (0, nf.E)(e); + } + function np(e) { + var { + width: t = 0, + height: i = 0, + file: n = null, + url: r = "", + } = Object.assign({ width: 0, height: 0, file: null, url: "" }, e), + [a, o] = (0, y.useState)({ width: t, height: i }), + [s, l] = (0, y.useState)(r); + return ( + (0, y.useEffect)(() => { + if (t && i) { + o({ width: t, height: i }); + return; + } + var e = ""; + if ((r ? (e = r) : n && (e = URL.createObjectURL(n)), !!e)) + (0, i7.po)(e) + .then((e) => { + var { width: t, height: i } = e; + o({ width: t, height: i }); + }) + .catch(() => { + o({ width: 0, height: 0 }); + }) + .finally(() => { + l(e); + }); + }, [n, r, t, i]), + { width: a.width, height: a.height, url: s } + ); + } + var nv = (e) => { + var { + ratio: t, + image: i, + abilityType: n, + params: o, + paintWidth: s, + paintHeight: l, + isControlNetPreview: c, + isControlNetPreviewDelay: d, + isControlNetPreviewFurtherDelay: u, + containerWidth: h, + containerHeight: p, + largeImageInfo: v, + hideLoading: m, + } = e, + [g, _] = (0, y.useState)(!0), + b = (0, y.useRef)(t); + (0, y.useEffect)(() => { + t !== b.current && g && _(!1); + }, [t]); + var I = (0, D.lS)(); + (0, y.useEffect)(() => { + var e = () => { + eh(I, { action: ed.Use, item: eu.MoveCanvas }); + }; + return ei.on("onMouseUp", e), () => ei.off("onMouseUp", e); + }, [I]); + var { + elementRef: w, + elementStyle: x, + resetTransformStyle: S, + activateAllWatchers: M, + deactivatedAllWatchers: C, + } = nh(); + (0, y.useEffect)(() => { + n && S(), n === R.s.BgPaint ? M() : C(); + }, [n, S, M, C]); + var T = (0, y.useRef)(null); + (0, y.useEffect)(() => { + var e = () => { + var e = T.current; + if (!!e) { + var { offsetHeight: t, offsetWidth: i } = e; + ei.setRangeContainer(e, { width: i, height: t }); + } + }; + return ( + e(), + window.addEventListener("resize", e), + () => { + window.removeEventListener("resize", e); + } + ); + }, []); + var A = "file" in i ? i.file : i.url, + { width: k, height: P, url: E } = np(i), + N = (0, y.useMemo)( + () => ({ width: k, height: P, url: E }), + [k, P, E] + ), + { + graphicEditorStatus: L, + containerRef: j, + graphicEditorTools: O, + } = (0, i3.q)({ abilityType: n, image: A }), + { + scale: B, + width: F, + height: U, + } = (0, i9._X)({ + paintWidth: s, + paintHeight: l, + imageWidth: k, + imageHeight: P, + }), + G = L === i8.x.Success, + z = ev(), + V = (0, y.useRef)(null), + W = (e) => { + var { target: t } = e; + (t === V.current || t === T.current) && + (null == z || z.updateIsSelectImage(!1)); + }; + return (0, f.jsx)(eN.S.Provider, { + value: O, + children: (0, f.jsxs)("div", { + ref: T, + className: X.paintContainer, + id: "paint-container", + onMouseDown: W, + style: { justifyContent: d ? "space-between" : "center" }, + children: [ + (0, f.jsx)(nr, { + abilityType: n, + image: i, + params: o, + paintHeight: l, + paintWidth: s, + ratio: t, + style: { display: d ? "flex" : "none" }, + className: c ? X.visible : X.hidden, + }), + (0, f.jsx)("div", { + style: (0, a._)((0, r._)({}, x), { + display: u ? "none" : "block", + }), + ref: w, + className: eY()(X.imageWrap, c ? X.hidden : X.visible), + children: (0, f.jsx)("div", { + className: X.paintContent, + style: { + width: "".concat(s, "px"), + height: "".concat(l, "px"), + }, + ref: V, + children: (0, f.jsxs)(nu, { + abilityType: n, + className: X.imageContainer, + imageWidth: F, + imageHeight: U, + paintHeight: l, + paintWidth: s, + rawImageHeight: P, + rawImageWidth: k, + containerStyle: { + transition: g ? "none" : "all 300ms ease-in-out", + }, + largeImageInfo: v, + isInitialLoad: g, + imageUrl: E, + children: [ + (0, f.jsx)(Y.k, { + loader: E + ? (0, f.jsx)(Q.XG, { + className: X.loading, + size: Q.XJ.Big, + }) + : null, + className: X.image, + imageStyle: { + overflow: "hidden", + objectFit: "contain", + }, + src: (0, J.C)(E, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + crossOrigin: "anonymous", + "data-apm-action": "image-paint", + }), + (0, f.jsx)("div", { + className: X.imagineGraphicEditor, + ref: j, + style: { + width: "".concat(F, "px"), + height: "".concat(U, "px"), + opacity: G ? 1 : 0, + }, + }), + ], + }), + }), + }), + (0, f.jsx)(i4, { + params: o, + image: N, + ability: n, + imageScale: B, + paintHeight: l, + paintWidth: s, + isEditorReady: G, + imageDisplayHeight: U, + imageDisplayWidth: F, + containerWidth: h, + containerHeight: p, + drawMaskSuccessCb: m, + }), + ], + }), + }); + }; + i("332861"); + var nm = i("48541"), + ng = i("839141"), + n_ = { + container: "container-B6JI17", + tooltipContainer: "tooltipContainer-Vhr7DY", + abilityType: "abilityType-HnCTwF", + checkbox: "checkbox-oEBny2", + checkboxContent: "checkboxContent-n4iHKO", + checkboxText: "checkboxText-tbnJLr", + checkboxSelected: "checkboxSelected-EURWHa", + checkboxTextDisabled: "checkboxTextDisabled-GwqT_Y", + checkboxTextSelected: "checkboxTextSelected-fthZLQ", + divide: "divide-IDf0zn", + hoverVideoWrap: "hoverVideoWrap-IVNt5m", + hoverVideo: "hoverVideo-E59u99", + hoverTip: "hoverTip-znsXcp", + hoverImage: "hoverImage-axUkQ8", + image: "image-GImyqs", + hoverUsedText: "hoverUsedText-UHEsfH", + dropdownContent: "dropdownContent-cC40YV", + dropdownTips: "dropdownTips-_3bqas", + dropdownBtn: "dropdownBtn-Y7EjOk", + }, + ny = i("799108"), + nb = (e) => { + var { isChecked: t, isDisabled: i, text: n, extraIcon: r } = e; + return (0, f.jsxs)("span", { + className: n_.checkboxContent, + children: [ + (() => + t && !i + ? (0, f.jsx)(p.qn1, { + size: 16, + className: n_.checkboxSelected, + }) + : t && i + ? (0, f.jsx)(p.yNw, { size: 16 }) + : !t && i + ? (0, f.jsx)(p.W$H, { size: 16 }) + : (0, f.jsx)(p.lSY, { size: 16 }))(), + (0, f.jsx)("span", { + className: eY()({ + [n_.checkboxText]: !0, + [n_.checkboxTextDisabled]: i, + [n_.checkboxTextSelected]: t && !i, + }), + children: n, + }), + r, + ], + }); + }, + nI = i("605682"), + nw = i("159895"), + nx = i("133438"), + nS = i("644866"), + nM = (function (e) { + return (e.Success = "success"), (e.Failed = "failed"), e; + })({}), + nC = (function (e) { + return (e.Empty = "empty"), (e.NetWorkError = "network error"), e; + })({}); + class nT { + getEventParams() { + var { status: e, failReason: t } = this._params; + return { status: e, fail_reason: t }; + } + constructor(e) { + (this._params = e), (this.eventName = "load_ability_video"); + } + } + function nA(e, t) { + (0, N.S$)(e, nT, [t]); + } + var nk = i("727280"), + nP = 5, + nE = { + [R.s.BgPaint]: "bgPaint", + [R.s.FaceGan]: "faceGan", + [R.s.IpKeep]: "ipKeep", + [R.s.BasicBlend]: "fuzzBlend", + [R.s.ControlNetCanny]: "canny", + [R.s.ControlNetDepth]: "depth", + [R.s.ControlNetPose]: "pose", + [R.s.StyleReference]: "styleReference", + [R.s.ByteEdit]: "byteEdit", + }; + function nD(e) { + return e.reduce((e, t) => { + var i, + n, + { name: r } = t; + if (r === l.UI.StyleReference) return e + 1; + if ((0, nk.DX)(t)) { + return ( + e + + (null !== + (n = + null === (i = t.commonAsset.referImageList) || void 0 === i + ? void 0 + : i.length) && void 0 !== n + ? n + : 0) + ); + } + return e; + }, 0); + } + function nR(e) { + for (var t = e.length - 1; t >= 0; t--) { + var i = e[t]; + if ((0, nk.DX)(i)) { + var n = i.commonAsset.referImageList, + r = null == n ? void 0 : n[n.length - 1]; + if (r) return (0, nk.Tt)(r, i); + } else if (i.name === l.UI.StyleReference) return i; + } + return null; + } + function nN(e, t, i) { + function n() { + if (e === R.s.FaceGan) { + var i = t.filter((t) => (0, nS.O)(t) === e); + return i.length > 1 ? i[i.length - 1] : null; + } + return e === R.s.StyleReference + ? nD(t) >= nP + ? nR(t) + : null + : t.find((t) => (0, nS.O)(t) === e); + } + if (i) { + var r = i.name; + if (((0, nx.od)(i) && (r = (0, nS.O)(i)), e === r)) return null; + } + return n(); + } + function nL(e) { + var { ability: t, blendImagePromptList: i, imagineParams: r } = e, + { imcConfigService: a } = (0, D.N_)(), + o = (0, D.lS)(), + [s, l] = (0, y.useState)(null), + c = (function () { + var e = (0, n._)(function* () { + try { + var e = yield null == a + ? void 0 + : a.aggregate.getImcConfigByKey(nw.c.ImagineConfigs); + if (!e) { + nA(o, { status: nM.Failed, failReason: nC.Empty }); + return; + } + nA(o, { status: nM.Success }), l(e); + } catch (e) { + nA(o, { status: nM.Failed, failReason: nC.NetWorkError }); + } + var t = yield null == a + ? void 0 + : a.aggregate.getImcConfigByKey(nw.c.ImagineConfigs); + if (!!t) l(t); + }); + return function () { + return e.apply(this, arguments); + }; + })(), + d = nN(t, i, r); + (0, y.useEffect)(() => { + c(); + }, []); + var u = d ? d.url : null == s ? void 0 : s[nE[t]]; + return { blendItem: d, hoverUrl: u }; + } + var nj = (0, y.forwardRef)((e, t) => { + var { url: i, tip: n } = e; + return (0, f.jsxs)("div", { + className: n_.hoverVideoWrap, + children: [ + (0, f.jsx)("video", { + muted: !0, + autoPlay: !0, + loop: !0, + className: n_.hoverVideo, + ref: t, + crossOrigin: "anonymous", + children: (0, f.jsx)("source", { + src: (0, J.C)(i, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + type: "video/mp4", + }), + }), + n + ? (0, f.jsx)("p", { className: n_.hoverTip, children: n }) + : null, + ], + }); + }), + nO = i("519171"); + function nB(e) { + var { url: t, text: i, imageWidth: n = 0, imageHeight: r = 0 } = e, + a = (0, nO.T)({ width: n, height: r }); + return (0, f.jsxs)("div", { + className: n_.hoverImage, + children: [ + (0, f.jsx)(Y.k, { + src: (0, J.C)(t, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + style: a, + className: n_.image, + imageStyle: { objectFit: "cover" }, + "data-apm-action": "ability-type-hover-used", + }), + (0, f.jsx)("p", { className: n_.hoverUsedText, children: i }), + ], + }); + } + var nF = 512, + nU = 512, + nG = i("518814"), + nz = i("279504"), + nV = i("71129"), + nW = i("846779"), + nZ = { + [R.s.FaceGan]: "", + [R.s.BgPaint]: "", + [R.s.BasicBlend]: "", + [R.s.IpKeep]: "IP_web_notsupport_other", + [R.s.ControlNetCanny]: "multiple_canny_cancel", + [R.s.ControlNetDepth]: "multiple_depth_cancel", + [R.s.ControlNetPose]: "multiple_pose_cancel", + [R.s.ByteEdit]: "custom_reference_not_support_after_select_other", + [R.s.Unknown]: "", + [R.s.ControlNet]: "", + [R.s.Text2image]: "", + [R.s.Image2image]: "", + [R.s.StyleReference]: "", + [R.s.StyleCode]: "", + }, + nK = { + [R.s.FaceGan]: "", + [R.s.BgPaint]: "", + [R.s.BasicBlend]: "", + [R.s.IpKeep]: + "Can\u2019t reference character after adding other references", + [R.s.ControlNetCanny]: + "Cant reference edge after selecting a reference object.", + [R.s.ControlNetDepth]: + "Can\u2019t reference depth after selecting a reference object.", + [R.s.ControlNetPose]: + "Can\u2019t reference pose after selecting a reference object.", + [R.s.ByteEdit]: + "Can't select custom reference after adding other references", + [R.s.Unknown]: "", + [R.s.ControlNet]: "", + [R.s.Text2image]: "", + [R.s.Image2image]: "", + [R.s.StyleReference]: "", + [R.s.StyleCode]: "", + }; + function nH(e) { + return u.ZP.t(nZ[e], {}, nK[e]); + } + function nq(e) { + for ( + var t, i = arguments.length, n = Array(i > 1 ? i - 1 : 0), r = 1; + r < i; + r++ + ) + n[r - 1] = arguments[r]; + return null !== + (t = { + 1: u.ZP.t( + "multiple_object_cancel1", + { string0: u.ZP.t(ti.rj[n[0]], {}, ti.kQ[n[0]]) }, + "Can\u2019t reference an object after selecting {string0}" + ), + 2: u.ZP.t( + "multiple_object_cancel2", + { + string0: u.ZP.t(ti.rj[n[0]], {}, ti.kQ[n[0]]), + string1: u.ZP.t(ti.rj[n[1]], {}, ti.kQ[n[1]]), + }, + "Can\u2019t reference an object after selecting {string0} and {string1}" + ), + 3: u.ZP.t( + "multiple_object_cancel3", + { + string0: u.ZP.t(ti.rj[n[0]], {}, ti.kQ[n[0]]), + string1: u.ZP.t(ti.rj[n[1]], {}, ti.kQ[n[1]]), + string2: u.ZP.t(ti.rj[n[2]], {}, ti.kQ[n[2]]), + }, + "Can\u2019t reference an object after selecting {string0}, {string1}, and {string2}" + ), + }[e]) && void 0 !== t + ? t + : ""; + } + var nJ = [R.s.ControlNetCanny, R.s.ControlNetDepth, R.s.ControlNetPose]; + function nY(e, t, i, n) { + var r = n.name; + if ( + ((0, nx.od)(n) && (r = (0, nS.O)(n)), + r === R.s.BgPaint && ![R.s.IpKeep, R.s.ByteEdit].includes(e)) + ) + return { isAbilityConflict: !1, abilityTip: "" }; + if (nJ.includes(r)) { + var a = i + .filter((e) => (0, nS.O)(e) !== r) + .filter((e) => nJ.includes((0, nS.O)(e))); + return e === R.s.BgPaint && a.length >= 1 + ? { + isAbilityConflict: !0, + abilityTip: nq( + a.length + (nJ.includes(t) ? 1 : 0), + ...a.map((e) => (0, nS.O)(e)), + t + ), + } + : i.length > 1 && e === R.s.IpKeep + ? { isAbilityConflict: !0, abilityTip: nH(R.s.IpKeep) } + : i.length > 1 && e === R.s.ByteEdit + ? { isAbilityConflict: !0, abilityTip: nH(R.s.ByteEdit) } + : { isAbilityConflict: !1, abilityTip: "" }; + } + var o = i.find((e) => (0, nS.O)(e) === R.s.BgPaint), + s = i.filter((e) => nJ.includes((0, nS.O)(e))); + return o && nJ.includes(e) + ? { isAbilityConflict: !0, abilityTip: nH(e) } + : s.length && e === R.s.BgPaint + ? { + isAbilityConflict: !0, + abilityTip: nq(s.length, ...s.map((e) => (0, nS.O)(e))), + } + : i.length > 1 && e === R.s.IpKeep + ? { isAbilityConflict: !0, abilityTip: nH(R.s.IpKeep) } + : i.length > 1 && e === R.s.ByteEdit + ? { isAbilityConflict: !0, abilityTip: nH(R.s.ByteEdit) } + : e === R.s.StyleReference && + i.find((e) => (0, nS.O)(e) === R.s.StyleCode && !(0, nk.DX)(e)) + ? { + isAbilityConflict: !0, + abilityTip: u.ZP.t( + "dre_t2i_style_code_conflict_with_style_tip", + {}, + "Can't reference style after applying a style code" + ), + } + : { isAbilityConflict: !1, abilityTip: "" }; + } + function nQ(e, t, i) { + if ( + ![ + R.s.BgPaint, + R.s.IpKeep, + R.s.ByteEdit, + R.s.StyleReference, + ...nJ, + ].includes(e) + ) + return { isAbilityConflict: !1, abilityTip: "" }; + if (i.length && e === R.s.IpKeep) + return { isAbilityConflict: !0, abilityTip: nH(R.s.IpKeep) }; + if (i.length && e === R.s.ByteEdit) + return { + isAbilityConflict: !0, + abilityTip: u.ZP.t( + "custom_reference_not_support_after_select_other", + {}, + "Can't select custom reference after adding other references" + ), + }; + var n = i.find((e) => (0, nS.O)(e) === R.s.BgPaint), + r = i.filter((e) => nJ.includes((0, nS.O)(e))), + a = nJ.includes(t); + return e === R.s.BgPaint && r.length + ? { + isAbilityConflict: !0, + abilityTip: nq( + r.length + (a ? 1 : 0), + ...r.map((e) => (0, nS.O)(e)), + t + ), + } + : nJ.includes(e) && n + ? { isAbilityConflict: !0, abilityTip: nH(e) } + : e === R.s.StyleReference && + i.find((e) => (0, nS.O)(e) === R.s.StyleCode && !(0, nk.DX)(e)) + ? { + isAbilityConflict: !0, + abilityTip: u.ZP.t( + "dre_t2i_style_code_conflict_with_style_tip", + {}, + "Can't reference style after applying a style code" + ), + } + : { isAbilityConflict: !1, abilityTip: "" }; + } + function nX(e, t, i, n) { + return n ? nY(e, t, i, n) : nQ(e, t, i); + } + var n$ = i("417699"), + n0 = (e) => { + var { + type: t, + text: i, + checked: n, + currentAbility: r, + blendImagePromptList: a, + disabledText: o, + imagineParams: s, + scene: l, + tip: c, + onChange: d, + } = e, + { isOversea: h } = (0, ns.G)(n$.e), + p = (0, D.lS)(), + { generateImageParamsManager: m } = (0, D.N_)(), + g = (0, y.useRef)(null), + _ = (0, y.useRef)(null), + b = (e) => { + if ((d(e, t), t !== R.s.Unknown)) + V(p, { action: L.Click, item: O[t] }, G, m); + }, + I = (e) => { + var t; + (0, nz.U)({ + containerService: p, + reportParam: { + source: + null !== (t = l ? ny.jJ[l] : void 0) && void 0 !== t + ? t + : nV.s.VIP_EXCLUSIVE_HONER, + scene: l, + }, + }), + l && + (0, nW.SM)(p, { + action: nW.bI.Click, + vipFuncName: nW.WL[l], + needVipLevel: e, + scene: l, + }); + }, + { blendItem: w, hoverUrl: x } = nL({ + ability: t, + blendImagePromptList: a, + imagineParams: s, + }), + S = !!w, + { isAbilityConflict: M, abilityTip: C } = nX(t, r, a, s), + T = S || M, + A = (e, i) => { + var n, r; + return t !== R.s.Unknown && x + ? (0, f.jsxs)("div", { + className: n_.dropdownContent, + children: [ + S + ? (0, f.jsx)(nB, { + url: x, + text: o, + imageWidth: + null !== (n = null == w ? void 0 : w.width) && + void 0 !== n + ? n + : nF, + imageHeight: + null !== (r = null == w ? void 0 : w.height) && + void 0 !== r + ? r + : nU, + }) + : (0, f.jsx)(nj, { url: x, ref: _, tip: c }), + e + ? (0, f.jsx)("div", { + className: n_.dropdownTips, + children: u.ZP.t( + "dre_m10n_pro_feature", + { strong1: (e) => e }, + "Upgrade to use this feature" + ), + }) + : null, + e + ? (0, f.jsx)(v.J, { + className: n_.dropdownBtn, + onClick: () => I(i), + text: u.ZP.t( + "dre_m10n_hover_btn_subcribe", + { string0: (0, ny.J2)({ level: i }) }, + "Upgrade to {string0}" + ), + }) + : null, + ], + }) + : (0, f.jsx)(f.Fragment, {}); + }, + k = (e, i, n) => { + if (e) { + var r; + null === (r = _.current) || void 0 === r || r.play(); + } else { + var a = _.current; + a && (a.currentTime = 0); + } + if (!!e && t !== R.s.Unknown) + l && + i && + (0, nW.SM)(p, { + action: nW.bI.Click, + vipFuncName: nW.WL[l], + needVipLevel: n, + scene: l, + }), + V( + p, + { + action: L.Hover, + item: O[t], + failToast: S ? F[t] : void 0, + }, + G, + m + ); + }, + P = () => { + var e; + if (t !== R.s.Unknown) + [ + R.s.ControlNetCanny, + R.s.ControlNetDepth, + R.s.ControlNetPose, + ].includes(t) + ? (e = B.UseSubject) + : t === R.s.BgPaint && (e = B.UseControlNet), + M && + V(p, { action: L.Hover, item: O[t], failToast: e }, G, m); + }, + E = (e, r) => + (0, f.jsxs)("div", { + className: n_.abilityType, + children: [ + (0, f.jsx)(i1.E, { + isDisable: M, + content: A(e, r), + ref: g, + contentStyle: { + bottom: "43px", + left: "0px", + lineHeight: 0, + fontSize: 0, + background: "rgba(59, 69, 89, 0.8)", + }, + onVisibleChange: (t) => k(t, e, r), + isUseHover: !0, + children: (0, f.jsx)(tK.Z, { + disabled: !M, + position: "top", + className: n_.tooltipContainer, + content: C, + style: { whiteSpace: "nowrap" }, + children: (0, f.jsx)(nm.Z, { + checked: n, + onChange: b, + className: eY()(n_.checkbox, n ? n_.active : ""), + disabled: S || M, + onMouseEnter: P, + children: (e) => { + var { checked: t } = e; + return (0, f.jsx)(nb, { + isChecked: t, + isDisabled: T, + text: i, + extraIcon: h + ? null + : (0, f.jsx)(nG.Z, { + style: { marginLeft: "4px" }, + size: 14, + level: r, + }), + }); + }, + }), + }), + }), + t === R.s.ByteEdit && + (0, f.jsx)("div", { className: n_.divide }), + ], + }); + return l && !T + ? (0, f.jsx)(nI.t, { + scene: l, + ignoreNeedCredits: !0, + wrapperStyle: { display: "inline-block" }, + children: (e) => + E( + e.needVip && !e.isVip && !e.isInFreemiumStage, + e.needMinVipLevel + ), + }) + : E(!1, ng.d.None); + }, + n1 = "section-Hut7ki", + n2 = "introWrap-X6ywn5", + n6 = "intro-u9j0tT", + n4 = "abilitiesList-buX5xf", + n3 = i("537201"), + n8 = { + [R.s.ByteEdit]: "", + [R.s.FaceGan]: "multiple_face_only", + [R.s.BgPaint]: "multiple_object_only", + [R.s.IpKeep]: "", + [R.s.BasicBlend]: "", + [R.s.ControlNetCanny]: "multiple_canny_only", + [R.s.ControlNetDepth]: "multiple_depth_only", + [R.s.ControlNetPose]: "multiple_pose_only", + [R.s.Unknown]: "", + [R.s.ControlNet]: "", + [R.s.Text2image]: "", + [R.s.Image2image]: "", + [R.s.StyleReference]: "style_already", + [R.s.StyleCode]: "", + }, + n9 = { + [R.s.FaceGan]: ny.hO.ImageControlNetHumanFace, + [R.s.BgPaint]: ny.hO.ImageControlNetObject, + [R.s.ControlNetCanny]: ny.hO.ImageControlNetCanny, + [R.s.ControlNetDepth]: ny.hO.ImageControlNetDepth, + [R.s.ControlNetPose]: ny.hO.ImageControlNetPose, + [R.s.StyleReference]: ny.hO.ImageStyleReference, + [R.s.ByteEdit]: ny.hO.ImageByteEdit, + }, + n5 = { + [R.s.ByteEdit]: "", + [R.s.FaceGan]: "You\u2019ve referenced the human face of this image", + [R.s.BgPaint]: "You\u2019ve referenced the object of this image", + [R.s.IpKeep]: "", + [R.s.BasicBlend]: "", + [R.s.ControlNetCanny]: + "You\u2019ve referenced the edge of this image", + [R.s.ControlNetDepth]: + "You\u2019ve referenced the depth of this image", + [R.s.ControlNetPose]: "You\u2019ve referenced the pose of this image", + [R.s.Unknown]: "", + [R.s.ControlNet]: "", + [R.s.Text2image]: "", + [R.s.Image2image]: "", + [R.s.StyleReference]: + "You\u2019ve referenced the style reference of this image", + [R.s.StyleCode]: "", + }; + function n7(e) { + return { + [R.s.ByteEdit]: u.ZP.t( + "image_reference_custom_description_detailed", + {}, + "Describe what you want the AI to refer to from this image and what to change. Example: Change the background color to green and make her hair short." + ), + [R.s.FaceGan]: "", + [R.s.BgPaint]: "", + [R.s.IpKeep]: "", + [R.s.BasicBlend]: "", + [R.s.ControlNetCanny]: "", + [R.s.ControlNetDepth]: "", + [R.s.ControlNetPose]: "", + [R.s.Unknown]: "", + [R.s.ControlNet]: "", + [R.s.Text2image]: "", + [R.s.Image2image]: "", + [R.s.StyleReference]: "", + [R.s.StyleCode]: "", + }[e]; + } + var re = (e) => { + var { + ability: t, + displayAbilities: i, + blendImagePromptList: n, + onChange: r, + imagineParams: a, + } = e, + { isOversea: o } = (0, ns.G)(n$.e), + s = (0, y.useMemo)(() => { + var e, + t = 0; + null == n || + n.forEach((e) => { + n3.i[e.name] === R.s.FaceGan && ++t; + }); + var i = + !o && + 1 === t && + n3.i[ + null !== (e = null == a ? void 0 : a.name) && void 0 !== e + ? e + : "" + ] !== R.s.FaceGan; + return t > 1 || i; + }, [n, a, o]); + return (0, f.jsx)("div", { + children: (0, f.jsxs)("div", { + className: n1, + children: [ + (0, f.jsx)("div", { + className: n2, + children: (0, f.jsx)("p", { + className: n6, + children: u.ZP.t( + "wimg2img_title_picturereference", + {}, + "Select what to reference" + ), + }), + }), + (0, f.jsx)("div", { + className: n4, + children: i.map((e) => { + var i = + e === R.s.FaceGan && s + ? u.ZP.t( + "dre_t2i_reference_option_more_faces", + {}, + "\u4EBA\u50CF\u5408\u5F71" + ) + : u.ZP.t(ti.rj[e], {}, ti.kQ[e]); + return (0, f.jsx)( + n0, + { + scene: n9[e], + text: i, + disabledText: u.ZP.t(n8[e], {}, n5[e]), + checked: t === e, + currentAbility: t, + type: e, + onChange: (t) => r(t, e), + blendImagePromptList: n, + imagineParams: a, + tip: n7(e), + }, + e + ); + }), + }), + ], + }), + }); + }, + rt = { + closeBtn: "closeBtn-ZWXEaM", + abilitySelect: "abilitySelect-07U1z7", + footer: "footer-q34R5T", + }, + ri = i("293793"), + rn = i("787424"), + rr = i("170197"), + ra = { + [R.s.FaceGan]: "wimg2img_content_faceidentifying", + [R.s.BgPaint]: "wimg2img_content_mainidentifying", + [R.s.IpKeep]: "IP_web_loading", + [R.s.BasicBlend]: "", + [R.s.ControlNetCanny]: "canny_detect", + [R.s.ControlNetDepth]: "depth_detect", + [R.s.ControlNetPose]: "pose_detect", + [R.s.Unknown]: "", + [R.s.ControlNet]: "", + [R.s.Text2image]: "", + [R.s.Image2image]: "", + [R.s.StyleReference]: "", + [R.s.ByteEdit]: "", + [R.s.StyleCode]: "", + }, + ro = "reference_image_recognizing_toast", + rs = { + [R.s.FaceGan]: "wimg2img_toast_identifyfaild", + [R.s.BgPaint]: "wimg2img_toast_faild", + [R.s.IpKeep]: "IP_web_failed", + [R.s.BasicBlend]: "", + [R.s.ControlNetCanny]: "canny_network_fail", + [R.s.ControlNetDepth]: "depth_network_error", + [R.s.ControlNetPose]: "pose_network_fail", + [R.s.Unknown]: "", + [R.s.ControlNet]: "", + [R.s.Text2image]: "", + [R.s.Image2image]: "", + [R.s.StyleReference]: "", + [R.s.ByteEdit]: "", + [R.s.StyleCode]: "", + }, + rl = i("649843"), + rc = i("475578"), + rd = "no face was detected", + ru = "no pose was detected", + rf = "safety check not passed", + rh = i("100470"), + rp = i("280166"), + rv = i("186827"), + rm = i("242566"), + rg = i("586315"), + r_ = i("819340"), + ry = i("745017"), + rb = i("460911"), + rI = i("645078"); + function rw(e) { + var t = { + [rl.J.Cancelled]: rc.MK.Cancel, + [rl.J.Success]: rc.MK.Success, + [rl.J.Empty]: rc.MK.Fail, + [rl.J.NetworkError]: rc.MK.Fail, + [rl.J.DownloadImageError]: rc.MK.Fail, + [rl.J.FacePredictError]: rc.MK.Fail, + [rl.J.NoSegmentObjectFoundError]: rc.MK.Fail, + [rl.J.SegmentFailedError]: rc.MK.Fail, + [rl.J.PoseDetectError]: rc.MK.Fail, + [rl.J.IpKeepMultipySubject]: rc.MK.Success, + [rl.J.SafetyCheckError]: rc.MK.Fail, + [rl.J.IpKeepNoSubject]: rc.MK.Success, + [rl.J.ImageIPIsBlocked]: rc.MK.Fail, + }, + i = { + [rl.J.Cancelled]: "", + [rl.J.Success]: "", + [rl.J.Empty]: rd, + [rl.J.NetworkError]: rc.r$[rh.b.ErrCommon], + [rl.J.DownloadImageError]: rc.r$[rh.b.ErrDownloadImage], + [rl.J.FacePredictError]: rc.r$[rh.b.ErrFacePredict], + [rl.J.ImageIPIsBlocked]: rc.r$[rh.b.ErrPreTextIPBlockList], + [rl.J.NoSegmentObjectFoundError]: + rc.r$[rh.b.ErrNoSegmentObjectFound], + [rl.J.SegmentFailedError]: rc.r$[rh.b.ErrSegmentFailed], + [rl.J.PoseDetectError]: ru, + [rl.J.IpKeepMultipySubject]: "", + [rl.J.SafetyCheckError]: rf, + [rl.J.IpKeepNoSubject]: "", + }; + return { reportStatus: t[e], reportFailReason: i[e] }; + } + var rx = (function () { + var e = (0, n._)(function* (e) { + var { containerService: t, file: i, isAdd: n } = e, + r = t.invokeFunction((e) => e.get(rp.Y)), + a = t.invokeFunction((e) => e.get(r_.Z)), + o = n ? rv.ZF.Add : rv.ZF.Replace, + s = Date.now(), + l = a.getImageXUploader(r.appId, ry.I), + c = yield l.uploadImage({ file: i }), + d = Date.now() - s; + if (!(null == c ? void 0 : c.ok)) { + var f = u.ZP.t( + "wimg2img_toast_neterror", + {}, + "Check your internet connection and try again" + ); + return ( + (0, rv.rR)(t, { + importType: rc.ge.aigcImage, + status: rc.MK.Fail, + type: o, + actionType: rv.mG.Click, + failReason: f, + costTime: d, + }), + (0, rm.N)(t, { + status: rm.G.Failed, + failReason: null == c ? void 0 : c.msg, + failCode: null == c ? void 0 : c.code, + size: i.size, + format: i.type, + costTime: d, + source: "origin", + }), + C.s.warning(f), + (0, rg.wf)( + null == c ? void 0 : c.code, + null == c ? void 0 : c.msg, + null == c ? void 0 : c.errorInfo + ) + ); + } + var { uri: h } = c.value; + return ( + (0, rv.rR)(t, { + importType: rc.ge.aigcImage, + status: rc.MK.Success, + type: o, + actionType: rv.mG.Click, + costTime: d, + }), + (0, rm.N)(t, { + status: rm.G.Success, + size: i.size, + format: i.type, + costTime: d, + source: "origin", + }), + (0, rg.oW)(h) + ); + }); + return function (t) { + return e.apply(this, arguments); + }; + })(), + rS = (() => { + var e = new rb.V("imagine-modal-upload-image"); + return (function () { + var t = (0, n._)(function* (t) { + var i = Date.now(), + n = yield (0, rI.r)(t.file), + r = e.getItem(n); + if (r) { + var a = Date.now() - i, + o = t.isAdd ? rv.ZF.Add : rv.ZF.Replace; + return ( + (0, rv.rR)(t.containerService, { + importType: rc.ge.aigcImage, + status: rc.MK.Success, + type: o, + actionType: rv.mG.Click, + costTime: a, + useCache: !0, + }), + (0, rm.N)(t.containerService, { + status: rm.G.Success, + size: t.file.size, + format: t.file.type, + costTime: a, + useCache: !0, + source: "origin", + }), + (0, rg.oW)(r) + ); + } + var s = yield rx(t); + return s.ok && e.setItem(n, s.value), s; + }); + return function (e) { + return t.apply(this, arguments); + }; + })(); + })(); + function rM(e) { + return ( + e === R.s.ControlNetCanny || + e === R.s.ControlNetDepth || + e === R.s.ControlNetPose + ); + } + var rC = i("881607"); + class rT { + getEventParams() { + return (0, rC.cu)((0, r._)({}, this._params)); + } + constructor(e) { + (this._params = e), (this.eventName = "blend_recognize_time"); + } + } + function rA(e, t) { + (0, N.S$)(e, rT, [t]); + } + function rk(e) { + return (0, n._)(function* () { + for (var t = arguments.length, i = Array(t), n = 0; n < t; n++) + i[n] = arguments[n]; + var r = Date.now(); + return { result: yield e(...i), timeCost: Date.now() - r }; + }); + } + var rP = i("19658"), + rE = (e) => "file" in e, + rD = -4, + rR = [ + R.s.FaceGan, + R.s.BgPaint, + R.s.ControlNetCanny, + R.s.ControlNetDepth, + R.s.ControlNetPose, + ], + rN = "wimg2img_toast_neterror", + rL = "character_creating_import_photo_fail_tips", + rj = "IP_web_none", + rO = "dreamina_character_reference_block_toast", + rB = (e) => { + var t, + { + graphicToolInstance: i, + imagineParams: r, + image: a, + containerService: o, + selectedImageLength: s, + displayAbilities: l, + } = e, + [c, d] = (0, y.useState)(R.s.Unknown), + [h, p] = (0, y.useState)(!1), + [v] = nt(h, ti.p4), + [m] = nt(h, ti.Ze); + (0, ns.G)(rP.S); + var [g, _] = (0, y.useState)(!1), + b = (0, y.useRef)(0), + I = (0, y.useRef)(Promise.resolve(void 0)), + w = (0, y.useRef)(), + x = (0, y.useRef)(new rn.J()), + S = (0, y.useRef)(null), + M = (0, y.useRef)(0); + (0, y.useLayoutEffect)(() => { + if (!!S.current) M.current = S.current.getBoundingClientRect().top; + }, []); + var T = (function () { + var e = (0, n._)(function* (e) { + b.current = 1; + var t = yield e; + return (b.current = t.ok ? 2 : 3), t.ok ? t.value : void 0; + }); + return function (t) { + return e.apply(this, arguments); + }; + })(), + A = (e) => { + C.s.warning({ + content: u.oc.t(e), + position: "top", + style: { + position: "relative", + top: "".concat(M.current + rD, "px"), + }, + }); + }, + k = (e) => { + d(e), + null == i || i.changeCurrentAbility(e), + _(e === R.s.Unknown); + }, + P = (e, t) => { + var i = rs[e]; + switch (t) { + case rl.J.Success: + k(e); + break; + case rl.J.NetworkError: + A(rN); + break; + case rl.J.Empty: + A(i); + break; + case rl.J.DownloadImageError: + case rl.J.FacePredictError: + A(rN); + break; + case rl.J.NoSegmentObjectFoundError: + case rl.J.SegmentFailedError: + case rl.J.PoseDetectError: + A(i); + break; + case rl.J.SafetyCheckError: + A(rO); + break; + case rl.J.IpKeepMultipySubject: + k(e), A(rL); + break; + case rl.J.IpKeepNoSubject: + k(e), A(rj); + break; + case rl.J.ImageIPIsBlocked: + A(rO); + } + }, + E = (e, t) => { + if (!!(t && rR.includes(e))) { + var { reportStatus: i, reportFailReason: n } = rw(t); + e !== R.s.ControlNet && + e !== R.s.Unknown && + (0, iV.E)(o, { + status: i, + failReason: n, + type: ti.hW[e], + importType: rc.ge.aigcImage, + }); + } + }, + D = () => { + var e = u.oc.t( + "wimg2img_toast_neterror", + {}, + "Check your internet connection and try again" + ); + C.s.warning(e); + }, + N = (0, ri.default)( + (function () { + var e = (0, n._)(function* (e, t) { + if (e === R.s.Unknown) return; + var r, + a = null !== (r = M.current) && void 0 !== r ? r : 0, + s = ra[e], + l = null == i ? void 0 : i.getInstanceByAbility(e), + c = 1 === b.current, + d = !!s, + h = d ? s : ro, + p = d || c; + p && + x.current.show( + (0, f.jsx)(rr.G, { + style: { top: "".concat(a, "px") }, + content: (0, f.jsxs)(f.Fragment, { + children: [ + (0, f.jsx)(Q.XG, { size: Q.XJ.Middle }), + (0, f.jsx)("span", { + style: { paddingLeft: "8px" }, + children: u.oc.t(h), + }), + ], + }), + onCancel: () => { + null == l || l.cancelRecognize(), x.current.hide(); + }, + }) + ); + var v = rk( + (0, n._)(function* () { + return yield I.current; + }) + ), + { result: m, timeCost: g } = yield v(); + if (!m) { + rA(o, { + imageUploadTime: g, + recognizeTime: 0, + totalTime: g, + ability: e, + }), + x.current.hide(), + D(); + return; + } + var _ = rk( + (0, n._)(function* () { + return yield null == l + ? void 0 + : l.recognize(m, w.current); + }) + ), + { result: y, timeCost: S } = yield _(); + if ( + (rA(o, { + imageUploadTime: g, + recognizeTime: S, + totalTime: g + S, + ability: e, + }), + p && + y !== rl.J.Cancelled && + (e !== R.s.BgPaint || y !== rl.J.Success) && + x.current.hide(), + !!y) + ) + P(e, y), + null == t || t.afterHandleRecognizeResult(e, y), + rR.includes(e) && E(e, y); + }); + return function (t, i) { + return e.apply(this, arguments); + }; + })() + ), + L = () => { + var e = l.includes(R.s.ByteEdit); + if (!(s > 0) && !!e) { + var t = R.s.ByteEdit; + null == i || i.changeCurrentAbility(t), + N(t, { + afterHandleRecognizeResult: (e, i) => { + i === rl.J.SafetyCheckError && (d(t), _(!0)); + }, + }); + } + }, + j = (0, ri.default)( + (function () { + var e = (0, n._)(function* (e, t) { + if (!e) { + d(R.s.Unknown), _(!0); + return; + } + if (t !== R.s.Unknown) { + _(!1); + var n = null == i ? void 0 : i.getInstanceByAbility(t); + if (null == n ? void 0 : n.isRecognized) { + null == i || i.changeCurrentAbility(t), d(t); + return; + } + yield N(t); + } else d(t), null == i || i.changeCurrentAbility(c); + }); + return function (t, i) { + return e.apply(this, arguments); + }; + })() + ), + O = (0, ri.default)((e) => { + var t; + if (!rE(e)) { + null == i || i.reset(); + var { uri: n, url: r } = e; + (w.current = r), + (I.current = T(Promise.resolve((0, rg.oW)(n)))), + L(); + return; + } + null == i || i.reset(), + (w.current = e.file), + (I.current = T( + rS({ containerService: o, file: e.file, isAdd: !0 }) + )), + null == i || + null === (t = i.preloadManager) || + void 0 === t || + t.handleUploadTransparentPngInIdleTime(e.file), + L(); + }), + B = (0, ri.default)((e, t) => { + if (rE(e)) + (r = rS({ containerService: o, file: e.file, isAdd: !1 })), + null == i || + null === (a = i.preloadManager) || + void 0 === a || + a.handleUploadTransparentPngInIdleTime(e.file), + (w.current = e.file); + else { + var n, + r, + a, + { uri: s, url: l } = e; + (w.current = l), (r = Promise.resolve((0, rg.oW)(s))); + } + null == i || i.changeCurrentAbility(t), + null == i || + null === (n = i.activeInstance) || + void 0 === n || + n.reset(), + (I.current = T(r)), + N(t); + }), + F = (0, ri.default)((e, t) => { + if ("uri" in e) { + var n, + r = t.name; + (0, nx.od)(t) && (r = (0, nS.O)(t)), (w.current = e.url); + var a = (0, rg.oW)(e.uri); + (I.current = T(Promise.resolve(a))), + k(r), + null == i || + null === (n = i.activeInstance) || + void 0 === n || + n.initWithImagineParams(e.uri, t); + } + }), + U = (0, ri.default)(() => { + x.current.hide(); + }), + G = (0, ri.default)((e, t) => { + if (!!rS) { + if (e && !t) { + O(e); + return; + } + if (null == t ? void 0 : t.isReplace) { + var { name: i } = t; + (0, nx.od)(t) && (i = (0, nS.O)(t)), B(e, i); + return; + } + if (e && t) { + F(e, t); + return; + } + } + }); + return ( + (0, y.useEffect)(() => { + G(a, r), + I.current.then((e) => { + e && (null == i || i.preloadRecognize(l, e, w.current)); + }); + }, [r, a, i]), + (0, y.useEffect)(() => { + var e; + p( + !!( + rM(c) && + (null == i + ? void 0 + : null === (e = i.activeInstance) || void 0 === e + ? void 0 + : e.isRecognized) + ) + ); + }, [ + c, + null == i + ? void 0 + : null === (t = i.activeInstance) || void 0 === t + ? void 0 + : t.isRecognized, + ]), + { + toastContainerRef: S, + abilityType: c, + isControlNetPreview: h, + isControlNetPreviewDelay: v, + isControlNetPreviewFurtherDelay: m, + handleAbilityChange: j, + hideLoading: U, + disableSave: g, + } + ); + }, + rF = (e) => { + var [t, i] = (0, y.useState)(e), + n = (0, y.useRef)(null); + return ( + (0, y.useEffect)(() => { + if (!!n.current) i((0, i9.VQ)(n.current)); + }, [n]), + (0, y.useEffect)(() => { + var e = () => { + if (!!n.current) i((0, i9.VQ)(n.current)); + }; + return ( + window.addEventListener("resize", e), + () => { + window.removeEventListener("resize", e); + } + ); + }, []), + { + containerWidth: t.width, + containerHeight: t.height, + containerRef: n, + } + ); + }, + rU = i("128468"), + rG = "ratioConfig-aNbSrL", + rz = "text-qKCU9q", + rV = "iconWrap-D33O4L", + rW = "icon-tWLnlL", + rZ = "iconActive-CjNEyl", + rK = "ratioConfigSelected-I885gV", + rH = i("314068"), + rq = i("752134"), + rJ = function (e, t) { + var i = + arguments.length > 2 && void 0 !== arguments[2] + ? arguments[2] + : "", + n = { + [s.jP.OneOne]: { w: 20, h: 20 }, + [s.jP.FourThree]: { w: 24, h: 18 }, + [s.jP.ThreeTwo]: { w: 24, h: 16 }, + [s.jP.SixteenNine]: { w: 24, h: 14 }, + [s.jP.TwentyOneNine]: { w: 24, h: 10.5 }, + [s.jP.ThreeFour]: { w: 18, h: 24 }, + [s.jP.TwoThree]: { w: 16, h: 24 }, + [s.jP.NineSixteen]: { w: 14, h: 24 }, + }; + return (0, f.jsx)("div", { + className: rV, + children: (0, f.jsx)("div", { + className: eY()(rW, { [rZ]: t, [i]: t }), + style: { + width: "".concat(n[e].w, "px"), + height: "".concat(n[e].h, "px"), + }, + }), + }); + }, + rY = (e) => { + var { + configList: t, + isDimensionLocked: i = !0, + largeImageInfo: n = rH.jg, + handleUpdateRatio: r, + } = e, + a = (e) => (0, rq.d$)(e, n) && i; + return (0, f.jsx)(f.Fragment, { + children: t.map((e) => { + var { text: t, type: i } = e, + n = eY()(rG, { [rK]: a(i) }); + return (0, f.jsxs)( + "div", + { + className: n, + onClick: () => r(i), + children: [ + rJ(e.type, a(i)), + (0, f.jsx)("div", { className: rz, children: t }), + ], + }, + t + ); + }), + }); + }; + class rQ { + getEventParams() { + var { secondPage: e, scale: t } = this._params; + return { second_page: e, scale: t }; + } + constructor(e) { + (this._params = e), (this.eventName = "click_scale"); + } + } + function rX(e, t) { + (0, N.Kl)(e, rQ, [t]); + } + var r$ = i("998463"), + r0 = { + container: "container-G31wkc", + titleContainer: "titleContainer-hwa8Yb", + title: "title-L284mT", + selectIcon: "selectIcon-caacFl", + sameRatio: "sameRatio-k0NV6X", + ratioConfigContainer: "ratioConfigContainer-TtIJaS", + }; + class r1 { + getEventParams() { + var { action: e } = this._params; + return { action: e }; + } + constructor(e) { + (this._params = e), (this.eventName = "same_ratio_refer"); + } + } + function r2(e, t) { + (0, N.Kl)(e, r1, [t]); + } + var r6 = (e) => { + var { + generateImageParamsManager: t, + isUseOriginRatio: i, + page: n, + secondPage: r, + onUpdate: a, + onSwitchUseOriginRatio: o, + } = e, + s = (0, ek.k)(t, (e) => ({ + largeImageInfo: e.largeImageInfo, + isDimensionLocked: e.isDimensionLocked, + selectType: e.imageRatio, + mode: e.mode, + canCustomSize: e.canCustomSize, + })), + l = (0, D.lS)(), + { + largeImageInfo: c, + selectType: d, + mode: h, + isDimensionLocked: v, + canCustomSize: m, + } = null != s ? s : {}, + g = h === rU.JU.Story ? r$.sY : r$.RT, + _ = (e) => { + null == t || t.updateImageRatio(e), + rX(l, { page: n, secondPage: r, scale: rc.lS[e] }), + null == a || a(e); + }, + y = () => { + null == o || o(), r2(l, { action: rc.tz.Click }); + }; + return (0, f.jsxs)("div", { + className: r0.container, + children: [ + (0, f.jsxs)("div", { + className: r0.titleContainer, + children: [ + (0, f.jsx)("div", { + className: r0.title, + children: u.oc.t("tool_adjust_ration", {}, "Aspect ratio"), + }), + m && + (0, f.jsxs)("div", { + className: r0.sameRatio, + onClick: y, + children: [ + i + ? (0, f.jsx)(p.eOZ, { className: r0.selectIcon }) + : (0, f.jsx)(p.uCw, { className: r0.selectIcon }), + (0, f.jsx)("span", { + children: u.oc.t("ratio_ratio_align"), + }), + ], + }), + ], + }), + (0, f.jsx)("div", { + className: r0.ratioConfigContainer, + children: (0, f.jsx)(rY, { + configList: g, + isDimensionLocked: v, + largeImageInfo: c, + handleUpdateRatio: _, + }), + }), + ], + }); + }, + r4 = { + imageRatio: "imageRatio-WR6Hlx", + imageRatioContent: "imageRatioContent-oyUEa8", + button: "button-c7Rdwk", + disabled: "disabled-l1B929", + icon: "icon-Pfyrwq", + iconActive: "iconActive-o7kAvZ", + }; + class r3 { + getEventParams() { + var { page: e, secondPage: t } = this._params; + return { page: e, second_page: t }; + } + constructor(e) { + (this._params = e), (this.eventName = "click_scale_entrance"); + } + } + function r8(e, t) { + (0, N.Kl)(e, r3, [t]); + } + var r9 = i("415467"), + r5 = i("575088"), + r7 = i("461874"), + ae = (0, y.forwardRef)((e, t) => { + var { + generateImageParamsManager: i, + isUseOriginRatio: n, + disabled: r, + disableTip: a, + onSwitchUseOriginRatio: o, + onWidthChange: s, + } = e, + l = (0, ek.k)(i, (e) => ({ + selectType: e.imageRatio, + customRatio: e.customRatio, + canCustomSize: e.canCustomSize, + largeImageInfo: e.largeImageInfo, + })), + c = (0, D.lS)(), + d = (0, y.useRef)(null), + h = (0, y.useRef)(null), + [v, m] = (0, y.useState)(!1), + g = (e) => { + m(e), + e && + (r8(c, { page: rc.WZ.Home, secondPage: rc.yc.Reference }), + r2(c, { action: rc.tz.Show }), + (0, r5.b_)(c, { + page: r5.D$.Reference, + action: rc.tz.Show, + item: r5.xQ.Ratio, + })); + }, + _ = (e) => { + var t; + null === (t = d.current) || void 0 === t || t.close(), + (0, r5.b_)(c, { + action: rc.tz.Click, + item: r5.xQ.Ratio, + page: r5.D$.Reference, + ratioValue: rc.lS[e], + }); + }; + (0, y.useImperativeHandle)(t, () => ({ + getClientWidth() { + var e, t; + return null !== + (t = + null === (e = h.current) || void 0 === e + ? void 0 + : e.clientWidth) && void 0 !== t + ? t + : 0; + }, + })); + var { + selectType: b, + canCustomSize: I, + largeImageInfo: w, + } = null != l ? l : {}, + x = + b && (0, r7.R6)(w) + ? "".concat( + u.ZP.t( + "ratio_ratio_number", + { ratio: b ? r$.pC[b] : "" }, + "Aspect ratio {ratio}" + ) + ) + : "".concat( + u.ZP.t("ratio_ratio_customize", {}, "Aspect ratio") + ); + return ( + (0, y.useEffect)(() => { + if (x) { + var e, t; + null == s || + s( + null !== + (t = + null === (e = h.current) || void 0 === e + ? void 0 + : e.clientWidth) && void 0 !== t + ? t + : 0 + ); + } + }, [s, x]), + (0, f.jsx)(i1.E, { + ref: d, + containerClassName: r4.imageRatio, + contentClassName: r4.imageRatioContent, + content: (0, f.jsxs)(f.Fragment, { + children: [ + (0, f.jsx)(r6, { + page: rc.WZ.Home, + isUseOriginRatio: n, + secondPage: rc.yc.Reference, + generateImageParamsManager: i, + onUpdate: _, + onSwitchUseOriginRatio: o, + }), + I && + (0, f.jsx)(r9.e, { + instance: i, + containerService: c, + page: r5.D$.Reference, + }), + ], + }), + contentStyle: { display: v ? "block" : "none" }, + onVisibleChange: g, + isDisable: r, + children: (0, f.jsx)(tK.Z, { + position: "top", + triggerProps: { trigger: "hover" }, + content: a, + disabled: !r, + children: (0, f.jsxs)("div", { + className: eY()(r4.button, { + [r4.active]: v, + [r4.disabled]: r, + }), + ref: h, + children: [ + x, + (0, f.jsx)(p.f5h, { + size: 12, + className: eY()(r4.icon, v ? r4.iconActive : ""), + }), + ], + }), + }), + }) + ); + }), + at = { + warningIcon: "warningIcon-I1XpiW", + ratioWarningTip: "ratioWarningTip-mB6CbF", + text: "text-opM2Ji", + btnWrap: "btnWrap-OvSNtA", + }, + ai = 98, + an = 4, + ar = (e) => { + var { imageRatio: t, rightDistance: i = ai, onUpdate: n } = e, + [r, a] = (0, y.useState)(!1), + o = (0, D.lS)(); + (0, y.useEffect)(() => { + r && (0, A.rx)(o, { action: A.Ix.Show, type: A.xh.ChangeScale }); + }, [r]); + var s = () => { + a(!1), + (0, A.rx)(o, { action: A.Ix.Cancel, type: A.xh.ChangeScale }); + }, + l = () => { + a(!1), + n(), + (0, A.rx)(o, { action: A.Ix.Confirm, type: A.xh.ChangeScale }); + }, + c = () => { + a(!0); + }, + d = () => { + a(!1); + }; + return (0, f.jsx)(tK.Z, { + className: at.ratioWarningTip, + showArrow: !0, + popupVisible: r, + content: (0, f.jsxs)("div", { + className: at.tooltipContent, + onMouseLeave: d, + children: [ + (0, f.jsx)("div", { + className: at.text, + children: u.ZP.t( + "ratio_difference", + { ratio: r$.pC[t] }, + "The aspect ratio of the reference image is quite different from the selected aspect ratio for the generated image. Change to {ratio}?" + ), + }), + (0, f.jsxs)("div", { + className: at.btnWrap, + children: [ + (0, f.jsx)(v.J, { + text: u.ZP.t("ratio_no_action", {}, "Not now"), + type: "tertiary", + className: at.notProcess, + onClick: s, + }), + (0, f.jsx)(v.J, { + text: u.ZP.t("ratio_switch_now", {}, "Change"), + className: at.changeNow, + onClick: l, + }), + ], + }), + ], + }), + children: (0, f.jsx)(p.lHv, { + className: at.warningIcon, + style: { right: "".concat(i + an, "px") }, + onMouseEnter: c, + }), + }); + }, + aa = (e, t, i, n) => { + var r, + { width: a, height: o } = ne("file" in e ? e.file : e.url), + l = a / o, + c = + null !== (r = (0, d.Ir)(void 0, a, o)) && void 0 !== r + ? r + : s.jP.OneOne, + u = Math.abs(ti.mg[c] - l), + f = Math.abs(n.width / n.height - l) > u, + h = (i === R.s.ControlNetDepth || i === R.s.ControlNetCanny) && f, + p = () => { + null == t || t.updateImageRatio(c); + }; + return { + showWarning: h, + maxCloseRatioType: c, + changeToMaxCloseRatioType: p, + }; + }, + ao = i("2654"), + as = i("121365"), + al = (e, t, i) => { + var n = (0, ek.k)(e, (e) => ({ + isUseOriginRatio: e.isUseOriginRatio, + })), + { isUseOriginRatio: r = !1 } = null != n ? n : {}, + a = () => { + r + ? null == e || e.updateImageRatio(s.jP.OneOne) + : (null == e || e.updateReferenceOriginRatio(t / i), + null == e || e.updateImageRatio(void 0), + null == e || e.updateLargeImageInfo((0, as.KY)(t, i))), + null == e || e.updateIsSameOriginRatio(!r); + }; + return { isUseOriginRatio: r, handleSwitchUseOriginRatio: a }; + }; + function ac(e) { + var { + generateImageParamsManager: t, + abilityType: i, + width: n, + height: r, + } = e, + a = (0, y.useRef)({ + referenceOriginRatio: null == t ? void 0 : t.referenceOriginRatio, + imageRatio: null == t ? void 0 : t.imageRatio, + largeImageInfo: null == t ? void 0 : t.largeImageInfo, + isUseOriginRatio: null == t ? void 0 : t.isUseOriginRatio, + }); + (0, y.useEffect)(() => { + if (i === R.s.ByteEdit && n && r) { + (a.current = { + referenceOriginRatio: null == t ? void 0 : t.referenceOriginRatio, + imageRatio: null == t ? void 0 : t.imageRatio, + largeImageInfo: null == t ? void 0 : t.largeImageInfo, + isUseOriginRatio: null == t ? void 0 : t.isUseOriginRatio, + }), + null == t || t.updateReferenceOriginRatio(n / r), + null == t || t.updateImageRatio(void 0), + null == t || t.updateLargeImageInfo((0, as.KY)(n, r)), + null == t || t.updateIsSameOriginRatio(!0); + return; + } + var { + referenceOriginRatio: e, + imageRatio: o, + largeImageInfo: s, + isUseOriginRatio: l, + } = a.current; + void 0 !== e && (null == t || t.updateReferenceOriginRatio(e)), + null == t || t.updateImageRatio(o), + void 0 !== s && (null == t || t.updateLargeImageInfo(s)), + void 0 !== l && (null == t || t.updateIsSameOriginRatio(l)); + }, [i, t, n, r]); + } + var ad = (e) => { + var t, + i, + { + image: n, + params: r, + children: a, + onSave: o, + containerService: s, + imcConfigService: l, + displayAbilities: c, + imagePromptList: d, + generateImageParamsManager: h, + } = e, + p = + null === (t = ep.o.getGraphicToolStoreInstance) || void 0 === t + ? void 0 + : t.call(ep.o, s); + null == p || p.setGenerateImageParamsManager(h); + var v = (0, ek.k)(h, (e) => ({ + selectImageRatio: e.imageRatio, + largeImageInfo: e.largeImageInfo, + prompt: e.prompt, + generatePromptParams: e.generatePromptParams, + })), + { + selectImageRatio: m, + largeImageInfo: g = rH.jg, + generatePromptParams: _, + } = null != v ? v : {}, + { imagePromptList: b = [] } = null != _ ? _ : {}, + I = null != d ? d : b, + { + abilityType: w, + handleAbilityChange: x, + toastContainerRef: S, + isControlNetPreview: M, + isControlNetPreviewDelay: C, + isControlNetPreviewFurtherDelay: T, + hideLoading: A, + disableSave: k, + } = rB({ + image: n, + imagineParams: r, + graphicToolInstance: p, + containerService: s, + selectedImageLength: I.length, + displayAbilities: c, + }), + { + containerRef: P, + containerHeight: E, + containerWidth: N, + } = rF(i9.tn), + O = (0, y.useRef)(null), + [B, F] = (0, y.useState)( + null === (i = O.current) || void 0 === i + ? void 0 + : i.getClientWidth() + ), + U = null != m ? m : ti.k0, + { + showWarning: z, + maxCloseRatioType: W, + changeToMaxCloseRatioType: Z, + } = aa(n, h, w, g), + { width: K, height: H } = np(n), + { isUseOriginRatio: J, handleSwitchUseOriginRatio: Y } = al( + h, + K, + H + ), + { width: Q, height: X } = (0, i9.Vv)(g, C ? (N - ti.yY) / 2 : N, E); + ac({ + abilityType: w, + generateImageParamsManager: h, + width: K, + height: H, + }); + var $ = (0, y.useRef)(!1), + ee = () => { + if (!$.current) { + if ( + (($.current = !0), + V(s, { action: L.Click, item: j.Save }, G, h), + w === R.s.Unknown) + ) { + $.current = !1; + return; + } + var e = null == p ? void 0 : p.getImagineParam(); + if (!e) { + $.current = !1; + return; + } + (0, ao.L)(s, { step: ao.K.FromModal, data: JSON.stringify(e) }), + o(e), + ($.current = !1); + } + }, + et = w !== R.s.Unknown, + ei = w === R.s.ByteEdit, + en = ei + ? u.ZP.t( + "custom_reference_change_ration", + {}, + "Can't change the aspect ratio after selecting custom reference" + ) + : ""; + return n + ? (0, f.jsx)(D.dR.Provider, { + value: { imcConfigService: l, generateImageParamsManager: h }, + children: (0, f.jsx)(D.Gj.Provider, { + value: s, + children: (0, f.jsxs)("div", { + id: ti.uS, + ref: P, + children: [ + (0, f.jsx)("div", { + className: rt.imgContainer, + ref: S, + style: { + height: "".concat(E, "px"), + width: "".concat(N, "px"), + }, + children: (0, f.jsx)(nv, { + abilityType: w, + image: n, + params: r, + containerWidth: N, + containerHeight: E, + paintHeight: X, + paintWidth: Q, + ratio: U, + largeImageInfo: g, + isControlNetPreview: M, + isControlNetPreviewDelay: C, + isControlNetPreviewFurtherDelay: T, + hideLoading: A, + }), + }), + (0, f.jsxs)("div", { + className: rt.abilitySelect, + children: [ + (0, f.jsx)(ae, { + generateImageParamsManager: h, + ref: O, + isUseOriginRatio: J, + onSwitchUseOriginRatio: Y, + disabled: ei, + disableTip: en, + onWidthChange: F, + }), + z && + (0, f.jsx)(ar, { + rightDistance: B, + imageRatio: W, + onUpdate: Z, + }), + (0, f.jsx)("input", { + type: "checkbox", + style: { + position: "absolute", + top: 0, + left: 0, + width: 0, + height: 0, + opacity: 0, + }, + tabIndex: 1, + }), + (0, f.jsx)(re, { + ability: w, + onChange: x, + displayAbilities: c, + blendImagePromptList: I, + imagineParams: r, + children: a, + }), + ], + }), + (0, f.jsx)("div", { + className: rt.footer, + children: (0, f.jsx)(q, { + disablePopover: et, + available: !k, + onClick: ee, + }), + }), + ], + }), + }), + }) + : null; + }, + au = i("539686"); + function af() { + return !navigator.userAgent.includes("Chrome/131"); + } + function ah(e) { + var t, + i, + { + containerService: n, + image: r, + params: a, + onSave: o, + imcConfigService: s, + displayAbilities: l, + imagePromptList: c, + generateImageParamsManager: d, + onCancel: v, + } = e, + m = + null === (t = ep.o.getGraphicToolStoreInstance) || void 0 === t + ? void 0 + : t.call(ep.o, n), + g = () => { + null == i || i.close(), (i = void 0), null == m || m.reset(); + }, + _ = (e) => { + g(), null == o || o(e); + }, + y = () => { + null == m || m.reset(), null == v || v(); + }; + return ( + (0, au.M)(n, { secondPage: rc.yc.Reference }), + (i = h.Z.confirm({ + ariaModal: af(), + wrapClassName: ti.Mp, + title: u.ZP.t("wimg2img_title_reference", {}, "Reference image"), + footer: null, + simple: !1, + escToExit: !1, + icon: null, + closeIcon: (0, f.jsx)(p.Rnl, { className: rt.closeBtn }), + closable: !0, + maskClosable: !1, + onCancel: y, + content: (0, f.jsx)(ns.$, { + instantiationService: n, + children: (0, f.jsx)(ad, { + image: r, + params: a, + displayAbilities: l, + containerService: n, + imcConfigService: s, + imagePromptList: c, + generateImageParamsManager: d, + onSave: _, + onClose: g, + children: (0, f.jsx)(W, {}), + }), + }), + })) + ); + } + var ap = i("683973"), + av = 2; + function am(e) { + if (!e) return; + var { + largeImageInfo: t, + imageRatio: i, + isDimensionLocked: n, + isUseOriginRatio: r, + canCustomSize: a, + } = e; + if (!!a) { + var o = { + widthValue: t.width, + heightValue: t.height, + isLock: n, + isSameRatio: r, + }; + return ( + !(0, r7.rh)(t) && + (o.ratioValue = rc.lS[null != i ? i : s.jP.OneOne]), + o + ); + } + } + function ag(e) { + for (var t of e) + if (t.name === l.UI.StyleReference) { + var i, + n, + r, + a, + o = ( + null == t + ? void 0 + : null === (i = t.styleReference) || void 0 === i + ? void 0 + : i.styleType + ) + ? ap.uK[ + null == t + ? void 0 + : null === (n = t.styleReference) || void 0 === n + ? void 0 + : n.styleType + ] + : void 0; + if (o !== ap.uK[c.l.Preset]) return { styleSource: o }; + return { + presetStyleId: + null == t + ? void 0 + : null === (r = t.styleReference) || void 0 === r + ? void 0 + : r.styleItemId, + presetStyleName: + null == t + ? void 0 + : null === (a = t.styleReference) || void 0 === a + ? void 0 + : a.styleTitle, + styleSource: o, + }; + } + return {}; + } + var a_ = (0, o.Tx)( + "generateContent", + (function () { + var e = (0, n._)(function* (e, t, i) { + var { + instance: n, + reportParam: r, + reportService: a, + onGenerateContentUpdate: o, + generateImageParamsManager: s, + prompt: l, + promptList: c, + submitId: d, + modelConfig: f, + imageRatio: h, + largeImageInfo: p, + containerService: v, + } = t, + m = null != c ? c : s.generatePromptParams.imagePromptList; + if (n.isPendingGenerate) { + C.s.warning( + u.oc.t("attempt_max", {}, "Too many attempts. Try again later.") + ); + return; + } + if ( + (n.increasePendingGenerateCount(), null == m ? void 0 : m.length) + ) + g = + null !== + (_ = yield n.generateBlendContent( + e, + { reportParam: r, onGenerateContentUpdate: o, isQueue: !0 }, + i + )) && void 0 !== _ + ? _ + : null; + else { + var g, + _, + y, + b = { + prompt: l, + submitId: d, + modelConfig: f, + imageRatio: h, + largeImageInfo: p, + model: null == f ? void 0 : f.modelReqKey, + }; + g = + null !== + (y = yield n.generateContent( + e, + { reportParam: r, onGenerateContentUpdate: o, isQueue: !0 }, + i, + b + )) && void 0 !== y + ? y + : null; + } + (0, ap.TQ)({ + result: g, + reportService: a, + customSizeReportParams: am(s), + clickGenerateReportParam: r, + customStyleReportParams: ag(m), + containerService: v, + }), + n.decreasePendingGenerateCount(); + }); + return function (t, i, n) { + return e.apply(this, arguments); + }; + })() + ); + function ay(e, t) { + var i = e; + if (!i && t) { + var n = t.name === R.s.ControlNet, + r = t.name === R.s.BgPaint, + a = 0, + o = 1, + s = 3, + l = 1; + if ("imageUriList" in t) { + if (r) { + var c, + d, + u, + f, + h, + p, + v = t.imageUriList.length === av; + i = + null !== + (p = + null === (h = t.imageUriList) || void 0 === h + ? void 0 + : h[v ? l : s]) && void 0 !== p + ? p + : ""; + } else + i = n + ? null !== + (d = + null === (c = t.imageUriList) || void 0 === c + ? void 0 + : c[o]) && void 0 !== d + ? d + : "" + : null !== + (f = + null === (u = t.imageUriList) || void 0 === u + ? void 0 + : u[a]) && void 0 !== f + ? f + : ""; + } else i = ""; + } + return null != i ? i : ""; + } + function ab(e) { + var { + containerService: t, + onModalSave: i, + imageInfo: n, + params: o, + imcConfigService: s, + displayAbilities: l, + imagePromptList: c, + generateImageParamsManager: d, + onModalCancel: u, + } = e, + { + uri: f, + url: h, + file: p, + id: v, + width: m = 0, + height: g = 0, + coverUrl: _, + } = n, + y = ay(f, o); + if (!!(p || h)) + ah({ + containerService: t, + image: p ? { file: p } : { url: h, uri: y, width: m, height: g }, + params: o, + imcConfigService: s, + displayAbilities: l, + imagePromptList: c, + generateImageParamsManager: d, + onSave(e) { + if (!!e) + i( + (0, a._)((0, r._)({}, e), { + id: v, + url: h, + coverUrl: _ || h, + uri: e.uri, + width: m, + height: g, + }) + ); + }, + onCancel: u, + }); + } + function aI(e) { + var t, + i = e.map((e) => { + var t, i, n; + return null !== + (n = + null !== + (i = null !== (t = e.uri) && void 0 !== t ? t : e.coverUrl) && + void 0 !== i + ? i + : e.url) && void 0 !== n + ? n + : ""; + }), + n = { + referenceCnt: + null !== (t = null == e ? void 0 : e.length) && void 0 !== t + ? t + : 0, + ipReference: 0, + faceReferenceCnt: 0, + subjectReferenceCnt: 0, + inspirationReferenceCnt: 0, + cannyReferenceCnt: 0, + depthReferenceCnt: 0, + poseReferenceCnt: 0, + styleReferenceCnt: 0, + instructReferenceCnt: 0, + blendImageUriList: i.join(";"), + templateStyleCode: void 0, + }; + return ( + null == e || + e.forEach((e) => { + switch (e.name) { + case l.UI.FaceGan: + n.faceReferenceCnt += 1; + break; + case l.UI.BgPaint: + n.subjectReferenceCnt += 1; + break; + case l.UI.BasicBlend: + n.inspirationReferenceCnt += 1; + break; + case l.UI.IpKeep: + var t = e.ipKeepList[0]; + (n.ipReference += 1), + (n.ipReferenceLevel = t.refIpWeight * ti.ux.ip.rate), + (n.idReferenceLevel = t.refIdWeight * ti.ux.id.rate); + break; + case l.UI.StyleReference: + (n.styleReferenceCnt += 1), + (n.styleReferenceLevel = + null === (a = e.imageWeightList) || void 0 === a + ? void 0 + : a[0]), + (n.styleSource = ( + null == e + ? void 0 + : null === (o = e.styleReference) || void 0 === o + ? void 0 + : o.styleType + ) + ? ap.uK[ + null == e + ? void 0 + : null === (s = e.styleReference) || void 0 === s + ? void 0 + : s.styleType + ] + : void 0), + n.styleSource === ap.uK[c.l.Preset] && + ((n.presetStyleId = + null == e + ? void 0 + : null === (d = e.styleReference) || void 0 === d + ? void 0 + : d.styleItemId), + (n.presetStyleName = + null == e + ? void 0 + : null === (u = e.styleReference) || void 0 === u + ? void 0 + : u.styleTitle)); + break; + case l.UI.ByteEdit: + (n.instructReferenceCnt += 1), + (n.instructReferenceLevel = + "strength" in e + ? (null !== (f = e.strength) && void 0 !== f ? f : 0) * + ti.cR.max + : 0); + break; + case l.UI.StyleCode: + var { assetCode: i } = e.commonAsset; + n.templateStyleCode = n.templateStyleCode + ? "".concat(n.templateStyleCode, ",").concat(i) + : i; + } + if ( + (null === (r = e.controlNetList) || + void 0 === r || + r.forEach((e) => { + var t, + i = + (null !== (t = e.strength) && void 0 !== t ? t : 0) * + ti.XR.max; + switch (e.name) { + case l.kR.ControlNetCanny: + (n.cannyReferenceCnt += 1), (n.cannyReferenceLevel = i); + break; + case l.kR.ControlNetDepth: + (n.depthReferenceCnt += 1), (n.depthReferenceLevel = i); + break; + case l.kR.ControlNetPose: + (n.poseReferenceCnt += 1), (n.poseReferenceLevel = i); + } + }), + e.name === l.UI.ControlNet) + ) { + var r, + a, + o, + s, + d, + u, + f, + h, + p, + v, + m = JSON.parse( + null !== (v = e.extra) && void 0 !== v ? v : "[]" + ); + null == m || + null === (h = (p = m.filter(Boolean)).forEach) || + void 0 === h || + h.call(p, (e) => { + var t = + e.fitMode === R.G.CenterCrop ? rc.eD.True : rc.eD.False; + switch (e.name) { + case l.kR.ControlNetCanny: + n.cannyCutout = t; + break; + case l.kR.ControlNetDepth: + n.depthCutout = t; + break; + case l.kR.ControlNetPose: + n.poseCutout = t; + } + }); + } + }), + n + ); + } + function aw(e) { + for (var t of e) + if (t.name === l.UI.IpKeep) { + var i, n; + return { + aiRoleCount: t.ipKeepList.length, + roleId: + t.ipKeepList.map((e) => e.characterId).join(",") || void 0, + roleFaceIntensity: + null === (i = t.ipKeepList[0]) || void 0 === i + ? void 0 + : i.refIdWeight, + roleSubjectIntensity: + null === (n = t.ipKeepList[0]) || void 0 === n + ? void 0 + : n.refIpWeight, + }; + } + return { aiRoleCount: 0 }; + } + function ax(e, t) { + var i = { widthValue: t.width, heightValue: t.height }; + if (e && !(0, r7.rh)(t)) { + var n = (0, d.Ir)(e, t.width, t.height); + n && (i.ratioValue = rc.lS[n]); + } + return i; + } + var aS = (e) => e.find((e) => e.name === l.UI.IpKeep); + }, + 474139: function (e, t, i) { + "use strict"; + i.d(t, { + W: function () { + return r; + }, + }); + var n = i(441361), + r = (e) => (null == e ? void 0 : e.replace(n.hQ, "")); + }, + 987689: function (e, t, i) { + "use strict"; + i.d(t, { w: () => p }); + var n = i("139646"), + r = i("772322"), + a = i("2910"), + o = i("949274"), + s = i("188754"), + l = i("369617"), + c = i("625572"), + d = i("379311"); + class u { + getEventParams() { + return (0, c._)({}, this._params); + } + constructor(e) { + (this._params = e), (this.eventName = "right_function"); + } + } + function f(e, t) { + (0, d.Kl)(e, u, [t]); + } + var h = i("782296"), + p = (e) => { + var { + getWatermarkDownloadInfo: t, + page: i, + containerService: c, + onCopy: d, + } = e; + return { + key: "copy-image", + text: o.ZP.t( + "t2i_align_image_copy", + {}, + "\u590D\u5236\u56FE\u7247" + ), + icon: (0, r.jsx)(s.ATl, {}), + handler: () => { + var e = !1; + (0, h.u)({ + task: (0, n._)(function* () { + try { + var r = (function () { + var r = (0, n._)(function* () { + var { url: n } = yield t(), + r = () => + new Promise((e, t) => { + var i = new Image(); + (i.crossOrigin = "anonymous"), + (i.src = (0, a.C)(n, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + })), + (i.onload = () => { + e(i); + }), + (i.onerror = (e) => { + t(e); + }); + }), + o = (e) => + new Promise((t, i) => { + e.toBlob((e) => { + e ? t(e) : i(Error("no blob generate")); + }, "image/png"); + }); + f(c, { page: i, function: "copy", type: "image" }), + null == d || d(); + var s = yield r(); + if (e) return Promise.reject(Error("cancel")); + var l = document.createElement("canvas"); + return ((l.width = s.width), + (l.height = s.height), + l + .getContext("2d") + .drawImage(s, 0, 0, l.width, l.height), + e) + ? Promise.reject(Error("cancel")) + : o(l); + }); + return function () { + return r.apply(this, arguments); + }; + })(), + s = new ClipboardItem({ "image/png": r() }); + yield navigator.clipboard.write([s]), + l.s.success(o.ZP.t("copy_success", {}, "Copy Success")); + } catch (e) { + l.s.warning( + o.ZP.t( + "copy_failed_please_retry", + {}, + "Copy failure, please retry." + ) + ); + } finally { + } + }), + tipTxt: o.ZP.t("t2i_align_copying", {}, "Coping..."), + onCancel: () => { + e = !0; + }, + }); + }, + }; + }; + }, + 882598: function (e, t, i) { + "use strict"; + i.d(t, { + W: function () { + return f; + }, + }); + var n = i(139646), + r = i(772322), + a = i(949274), + o = i(188754), + s = i(369617), + l = i(863209), + c = i(683973), + d = i(475578), + u = i(782296), + f = (e) => ({ + key: "download-image", + text: a.ZP.t( + "t2i_align_image_download", + {}, + "\u4E0B\u8F7D\u56FE\u7247" + ), + icon: (0, r.jsx)(o.zpr, {}), + handler: () => { + var t = !1; + (0, c.YA)( + e.record, + e.image, + d.tz.Download, + e.reportService, + { download_source: "right_button" }, + e.containerService + ), + (0, u.u)({ + task: (0, n._)(function* () { + try { + var { url: i, fileName: n } = + yield e.getWatermarkDownloadInfo(); + yield (0, l.ue)(i, n, e.reportService, () => t), + s.s.success( + a.ZP.t( + "result_toast_saved_success", + {}, + "Image downloaded" + ) + ); + } catch (e) { + if (t) return; + s.s.warning( + a.ZP.t( + "result_toast_saved_fail_retry", + {}, + "Couldn\u2019t download. Try again." + ) + ); + } + }), + tipTxt: a.ZP.t("t2i_align_downloading", {}, "Downloading..."), + onCancel: () => { + t = !0; + }, + }); + }, + }); + }, + 976112: function (e, t, i) { + "use strict"; + i.d(t, { + T: function () { + return l; + }, + }); + var n = i(772322), + r = i(218571), + a = i(949274), + o = i(49841), + s = i(202428), + l = (e) => ({ + key: "favorite-assert", + CustomRender: (t) => { + var { onClick: i } = t; + return () => { + var t, + l, + [c, d] = (0, r.useState)( + null !== + (l = + null !== (t = e.initFavorited) && void 0 !== t + ? t + : e.hasFavorited) && + void 0 !== l && + l + ); + (0, r.useEffect)(() => { + void 0 !== e.hasFavorited && d(e.hasFavorited); + }, [e.hasFavorited]); + var u = { + image: a.ZP.t( + "t2i_align_image_favourite", + {}, + "\u6536\u85CF\u56FE\u7247" + ), + video: a.ZP.t( + "t2i_align_video_favourite", + {}, + "\u6536\u85CF\u89C6\u9891" + ), + audio: a.ZP.t( + "ai_music_collemusic", + {}, + "\u6536\u85CF\u97F3\u4E50" + ), + }[e.type]; + return ( + c && + (u = a.ZP.t( + "assets_feature_hovertips_cancel_favourite", + {}, + "\u53D6\u6D88\u6536\u85CF" + )), + (0, n.jsx)( + s.h, + { + disable: !1, + text: u, + icon: (0, n.jsx)(o.m, { + useCurrentColor: !0, + hasFavorited: c, + }), + onClick: i, + handler: () => { + void 0 === e.hasFavorited && d(!c), e.markFavorite(); + }, + }, + "favorite-".concat(e.type) + ) + ); + }; + }, + }); + }, + 338944: function (e, t, i) { + "use strict"; + i.d(t, { + W: function () { + return p; + }, + }); + var n = i(625572), + r = i(639880), + a = i(772322); + i(585071); + var o = i(451550), + s = i(293793), + l = i(218571), + c = i(105789), + d = i.n(c), + u = i(202428), + f = i(678482), + h = i(815112), + p = (0, l.memo)(function (e) { + var { + className: t, + contextMenuClassName: i, + style: c, + containerProps: p, + disable: v = !1, + onVisibleChange: m, + children: g, + baseOptions: _ = [], + extraOptions: y = [], + getPopupContainer: b, + } = e, + I = (0, l.useRef)(null), + [w, x] = (0, l.useState)(!1), + S = (0, s.default)((e, t) => { + e.stopPropagation(), null == m || m(!1), x(!1), null == t || t(); + }), + M = (e) => { + if ((e.preventDefault(), !v)) null == m || m(!0), x(!0); + }, + C = () => { + null == m || m(!1), x(!1); + }, + T = (0, l.useCallback)( + (e) => { + if ("CustomRender" in e) { + var t = e.CustomRender({ onClick: S }); + return (0, a.jsx)(t, {}, e.key); + } + var { handler: i, key: n, text: r } = e; + return (0, a.jsx)( + u.h, + { + disable: e.disable, + onClick: (e) => { + S(e, i); + }, + icon: e.icon, + text: r, + }, + n + ); + }, + [S] + ), + A = (0, l.useMemo)( + () => + (0, a.jsxs)("div", { + className: d()(h.Z.contextMenu, i, "mweb-context-menu"), + children: [ + _.length > 0 && _.map(T), + y.length > 0 && + _.length > 0 && + (0, a.jsx)("div", { className: h.Z.contextMenuDivide }), + y.length > 0 && y.map(T), + ], + }), + [_, i, y, T] + ), + k = (0, s.default)(() => { + if (!!w) x(!1); + }); + return ( + (0, l.useEffect)(() => { + if (!!I.current) { + var e = (0, f.I)(I.current); + return ( + e.forEach((e) => { + e.addEventListener("scroll", k); + }), + () => { + e.forEach((e) => { + e.removeEventListener("scroll", k); + }); + } + ); + } + }, [k]), + (0, a.jsx)(o.Z, { + alignPoint: !0, + position: "bl", + trigger: ["contextMenu", "click"], + popup: () => A, + popupVisible: w, + disabled: v, + onClickOutside: C, + onClick: C, + getPopupContainer: b, + children: (0, a.jsx)( + "div", + (0, r._)((0, n._)({ ref: I }, p), { + className: t, + style: c, + onContextMenu: M, + children: g, + }) + ), + }) + ); + }); + }, + 202428: function (e, t, i) { + "use strict"; + i.d(t, { h: () => s }); + var n = i("772322"); + i("218571"); + var r = i("105789"), + a = i.n(r), + o = { + contextMenuItem: "contextMenuItem-e7B2YI", + contextMenuText: "contextMenuText-Y3lOO8", + contextMenuIcon: "contextMenuIcon-ITOAt8", + disable: "disable-R13Ipu", + }, + s = (e) => { + var { + key: t, + disable: i, + handler: r, + onClick: s, + text: l, + icon: c, + } = e; + return (0, n.jsxs)( + "div", + { + className: a()(o.contextMenuItem, "mweb-context-menu-item", { + [o.disable]: i, + }), + onClick: (e) => { + null == s || s(e), null == r || r(); + }, + children: [ + c && + (0, n.jsx)("div", { + className: o.contextMenuIcon, + children: c, + }), + (0, n.jsx)("div", { + className: o.contextMenuText, + children: l, + }), + ], + }, + t + ); + }; + }, + 782296: function (e, t, i) { + "use strict"; + i.d(t, { u: () => u }); + var n = i("139646"), + r = i("772322"); + i("214865"); + var a = i("644254"); + i("218571"); + var o = i("170197"), + s = i("319440"), + l = i("949274"), + c = "spinMessage-fpXLEm", + d = i("518376"); + function u(e) { + return f.apply(this, arguments); + } + function f() { + return (f = (0, n._)(function* (e) { + var { task: t, tipTxt: i, onCancel: n, showDelay: u = 200 } = e, + f = !1, + h = t(); + if ( + (h.finally(() => { + f = !0; + }), + u && (yield (0, d._)(u)), + !f) + ) { + var p = a.Z.info({ + className: c, + icon: null, + duration: 0, + showIcon: !1, + content: (0, r.jsx)(o.G, { + content: (0, r.jsxs)(r.Fragment, { + children: [ + (0, r.jsx)(s.XG, { size: s.XJ.Middle }), + (0, r.jsx)("span", { + style: { paddingLeft: "8px" }, + children: + null != i ? i : l.ZP.t("homepage_tab_project_loading"), + }), + ], + }), + onCancel: () => { + p(), n(); + }, + }), + }); + h.finally(() => { + p(); + }); + } + })).apply(this, arguments); + } + }, + 678482: function (e, t, i) { + "use strict"; + i.d(t, { + I: function () { + return r; + }, + }); + var n = (e) => + e.scrollHeight > e.offsetHeight || e.scrollWidth > e.offsetWidth, + r = function (e) { + for ( + var t = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : document.documentElement, + i = [], + r = e; + r && r !== t; + + ) + n(r) && i.push(r), (r = r.parentElement); + return i; + }; + }, + 492278: function (e, t, i) { + "use strict"; + i.d(t, { oM: () => B, Hp: () => F }); + var n = i("139646"), + r = i("772322"); + i("347197"), i("2860"), i("645523"), i("245535"); + var a = i("293793"), + o = i("693238"), + s = i("298677"), + l = i("750633"), + c = i("76894"), + d = i("2910"), + u = i("218571"), + f = i("105789"), + h = i.n(f), + p = i("52533"), + v = i("949274"), + m = i("388977"), + g = i("699267"), + _ = i("317825"), + y = i("509525"), + b = i("733437"), + I = i("188754"), + w = i("417699"), + x = i("834634"), + S = i("405013"), + M = i("625572"), + C = i("379311"), + T = (function (e) { + return (e.All = "all"), (e.Consume = "consume"), (e.Get = "get"), e; + })({}); + class A { + getEventParams() { + return (0, M._)({}, this._params); + } + constructor(e) { + (this._params = e), (this.eventName = "credits_detail"); + } + } + function k(e, t) { + (0, C.Kl)(e, A, [t]); + } + function P(e) { + var { + dep: t, + scrollElement: i, + onReachEnd: n, + triggerLimit: r = 200, + } = e, + o = (0, u.useRef)(!1); + return ( + (0, u.useEffect)(() => { + o.current = !1; + }, [t]), + (0, a.default)(() => { + i && + !o.current && + i.scrollHeight - i.scrollTop <= i.clientHeight + r && + ((o.current = !0), null == n || n()); + }) + ); + } + var E = { + creditHistoryModalWrapper: "creditHistoryModalWrapper-sz0KBy", + creditHistoryModal: "creditHistoryModal-FPITvx", + creditInfoDetailPopover: "creditInfoDetailPopover-eV1PA7", + detailPopoverContent: "detailPopoverContent-eyzTWs", + title: "title-OAnWII", + scrollView: "scrollView-qcy6H7", + detailList: "detailList-l7L78S", + detailItem: "detailItem-PEd2Dg", + detailItemInfo: "detailItemInfo-Jg5OuL", + detailItemInfoTitle: "detailItemInfoTitle-wGDOMN", + detailItemInfoValue: "detailItemInfoValue-xrZxeA", + action: "action-ZarF30", + backBtn: "backBtn-_MtUFZ", + backBtnIcon: "backBtnIcon-xgiwSm", + modalTitle: "modalTitle-riBS2d", + closeBtn: "closeBtn-SDOGna", + closeBtnIcon: "closeBtnIcon-Dznnei", + header: "header-jprTS8", + creditInfoWrapper: "creditInfoWrapper-aCeZmx", + creditInfoItem: "creditInfoItem-injtuh", + creditInfoItemTitle: "creditInfoItemTitle-iYyfeK", + creditInfoItemAmount: "creditInfoItemAmount-Sm_7ac", + creditInfoItemNum: "creditInfoItemNum-n2CDFb", + creditInfoItemDetailIcon: "creditInfoItemDetailIcon-UwFLOF", + creditCalcSymbolWrapper: "creditCalcSymbolWrapper-uMOJFa", + creditCalcSymbolLeft: "creditCalcSymbolLeft-CL71Vj", + creditCalcSymbolRight: "creditCalcSymbolRight-YoqxZX", + creditCalcSymbol: "creditCalcSymbol-7dn9c1", + contentWrapper: "contentWrapper-wdqBa6", + content: "content-YIxQ0V", + tabs: "tabs-Ppzjhw", + tabTitleWrapper: "tabTitleWrapper-qjAy9m", + creditHistoryWrapper: "creditHistoryWrapper-LX5KJC", + creditHistory: "creditHistory-Hzu3lY", + historyItem: "historyItem-GXNC0g", + historyTitle: "historyTitle-fDMsQR", + historyTime: "historyTime-z2qgT4", + historyAmountWrapper: "historyAmountWrapper-hUzxMV", + historyAmount: "historyAmount-g8ujO1", + issued: "issued-RXNcGj", + extraContent: "extraContent-rFgqbd", + noMoreContent: "noMoreContent-rIW0ev", + placeholder: "placeholder-fNCIiK", + placeholderTitle: "placeholderTitle-XM9yGu", + placeholderText: "placeholderText-r7LrdT", + spin: "spin-MHffMP", + bottomTips: "bottomTips-DCmstl", + delayTips: "delayTips-JYbMzr", + creditRules: "creditRules-AoL4hi", + }, + D = i("590045"), + R = i("932616"), + N = i("799108"), + L = i("70137"), + j = 94, + O = (e) => { + var { historyList: t, loading: i, hasMore: n } = e; + return (null == t ? void 0 : t.length) || !i + ? (0, p.Z)(t) || 0 === t.length + ? (0, r.jsxs)("div", { + className: E.placeholder, + children: [ + (0, r.jsx)("div", { + className: E.placeholderTitle, + children: v.ZP.t( + "dre_m10n_credits_empty_title", + {}, + "No credit transactions yet" + ), + }), + (0, r.jsx)("div", { + className: E.placeholderText, + children: v.ZP.t( + "dre_m10n_credits_empty_desc", + {}, + "When you consume or gain credits, the transaction will appear here." + ), + }), + ], + }) + : (0, r.jsxs)("div", { + className: E.creditHistory, + children: [ + null == t + ? void 0 + : t.map((e, t) => { + var { extraContent: i, title: n } = e; + return (0, r.jsx)(r.Fragment, { + children: (0, r.jsxs)( + "div", + { + className: E.historyItem, + children: [ + (0, r.jsxs)("div", { + children: [ + (0, r.jsx)("div", { + className: E.historyTitle, + children: v.ZP.t(n, {}, n), + }), + (0, r.jsx)("div", { + className: E.historyTime, + children: (0, S.vc)( + "yyyy-MM-dd hh:mm", + 1e3 * e.createTime + ), + }), + ], + }), + (0, r.jsxs)("div", { + className: E.historyAmountWrapper, + children: [ + (0, r.jsxs)("div", { + className: h()(E.historyAmount, { + [E.issued]: + e.historyType === x.P.ISSUED, + }), + children: [ + e.historyType === x.P.ISSUED + ? "+" + : "-", + e.amount, + ], + }), + e.extraContent && + (0, r.jsx)("div", { + className: E.extraContent, + children: v.ZP.t(i, {}, i), + }), + ], + }), + ], + }, + e.submitId + ), + }); + }), + !n && + (0, r.jsx)("div", { + className: E.noMoreContent, + children: v.ZP.t( + "dre_m10n_credit_balance_end", + {}, + "You\u2019ve reached the end" + ), + }), + ], + }) + : (0, r.jsx)(l.Z, { className: E.spin, size: 24 }); + }, + B = (e) => { + var t, + { containerService: i, showBackBtn: n, onClose: l } = e, + c = (0, m.ko)(i, L.aG), + f = (0, m.ko)(i, w.e), + h = (0, u.useRef)(null), + [p, g] = (0, u.useState)(!1), + x = (0, u.useRef)(null), + M = (0, u.useRef)(null), + C = (0, u.useRef)(null), + A = (0, u.useRef)({ [T.All]: !1, [T.Consume]: !1, [T.Get]: !1 }), + B = (0, u.useRef)(82), + { isOversea: F } = f, + { + creditInfo: U, + historyType: G, + loadingCreditHistory: z, + creditHistoryList: V, + creditsDetail: W, + } = null !== + (t = (0, b.k)(c, (e) => ({ + creditInfo: e.creditInfo, + creditHistoryList: e.creditHistoryList, + historyType: e.historyType, + loadingCreditHistory: e.loadingCreditHistory, + creditsDetail: e.creditsDetail, + }))) && void 0 !== t + ? t + : {}, + { + vipCredit: Z, + purchaseCredit: K, + giftCredit: H, + } = null != U ? U : {}, + q = (0, u.useMemo)(() => { + var e, t, i; + return [ + { + key: "vipCredits", + creditAmount: Z || "0", + title: v.ZP.t( + "dre_m10n_credits_sub", + {}, + "Subscription credits" + ), + hasDetail: !!((null == W ? void 0 : W.vipCredits) || []) + .length, + detailList: + (null == W + ? void 0 + : null === (e = W.vipCredits) || void 0 === e + ? void 0 + : e.sort( + (e, t) => e.creditsLifeEnd - t.creditsLifeEnd + )) || [], + }, + { + key: "purchaseCredits", + creditAmount: K || "0", + title: v.ZP.t( + "dre_m10n_credits_purchased", + {}, + "Purchased credits" + ), + hasDetail: !!((null == W ? void 0 : W.purchaseCredits) || []) + .length, + detailList: + (null == W + ? void 0 + : null === (t = W.purchaseCredits) || void 0 === t + ? void 0 + : t.sort( + (e, t) => e.creditsLifeEnd - t.creditsLifeEnd + )) || [], + }, + { + key: "giftCredits", + creditAmount: H || "0", + title: v.ZP.t("dre_m10n_credits_bonus", {}, "Bonus credits"), + hasDetail: !!((null == W ? void 0 : W.giftCredits) || []) + .length, + detailList: + (null == W + ? void 0 + : null === (i = W.giftCredits) || void 0 === i + ? void 0 + : i.sort( + (e, t) => e.creditsLifeEnd - t.creditsLifeEnd + )) || [], + }, + ]; + }, [H, K, Z, W]), + J = (0, u.useMemo)( + () => ({ + key: "allCredit", + creditAmount: (Z || 0) + (K || 0) + (H || 0) || "0", + title: v.ZP.t( + "dre_m10n_credits_detail", + {}, + "Residual credits" + ), + hasDetail: !1, + }), + [H, K, Z] + ), + Y = (0, u.useMemo)( + () => (p && h.current ? h.current : void 0), + [p] + ), + Q = (0, u.useCallback)( + (e) => { + c && + (0, _.Rr)((t) => c.changeHistoryType(t, e, !1), { + contextType: y.zO.UserInput, + processName: "CreditHistoryModal", + operationName: "handleTabChange", + }); + var t, + n = B.current, + r = + null !== (t = null == Y ? void 0 : Y.scrollTop) && + void 0 !== t + ? t + : 0; + Y && r > n && (0, D.tr)(Y, -(r - n)), + e !== L.Pi.CONSUMED || A.current[T.Consume] + ? e === L.Pi.ISSUED && + !A.current[T.Get] && + (k(i, { tab: T.Get }), (A.current[T.Get] = !0)) + : (k(i, { tab: T.Consume }), (A.current[T.Consume] = !0)); + }, + [c, i, Y] + ), + X = P({ + scrollElement: Y, + dep: V, + onReachEnd: (0, u.useCallback)(() => { + if (!!(null == c ? void 0 : c.hasMoreCreditHistory())) + null == c || c.loadMoreCreditHistory((0, y.VM)()); + }, [c]), + triggerLimit: 400, + }), + $ = (0, u.useMemo)( + () => (null == c ? void 0 : c.hasMoreCreditHistory()), + [V] + ); + (0, u.useEffect)( + () => ( + g(!0), + () => { + c.resetHistoryData(); + } + ), + [] + ); + var ee = (0, a.default)((e) => { + var t = e.target, + i = B.current, + n = j + i, + r = (i - t.scrollTop) / i; + x.current && + ((x.current.style.opacity = r > 0 ? r.toString() : "0"), + (x.current.style.height = "".concat(n - t.scrollTop, "px"))), + X(); + }), + et = () => { + if (M.current) { + var e = M.current.clientHeight; + (B.current = e), + C.current && (C.current.style.marginTop = "".concat(e, "px")), + x.current && + (x.current.style.height = "".concat(j + e, "px")); + } + }; + (0, u.useEffect)(() => { + et(); + }, []), + (0, u.useEffect)(() => { + !A.current[T.All] && + (k(i, { tab: T.All }), (A.current[T.All] = !0)); + }, []); + var ei = (0, R.h)(), + en = (e) => "vipLevel" in e, + er = (e) => { + var t = () => + (0, r.jsxs)("div", { + className: E.detailPopoverContent, + children: [ + (0, r.jsx)("div", { + className: E.title, + children: e.title, + }), + (0, r.jsx)("div", { + className: E.scrollView, + children: (0, r.jsx)("div", { + className: E.detailList, + children: (e.detailList || []).map((e, t) => { + var i; + return (0, r.jsxs)( + "div", + { + className: E.detailItem, + children: [ + en(e) && + (0, r.jsxs)("div", { + className: E.detailItemInfo, + children: [ + (0, r.jsx)("div", { + className: E.detailItemInfoTitle, + children: v.ZP.t( + "dre_m10n_credits_detail_info1", + {}, + "Plan" + ), + }), + (0, r.jsx)("div", { + className: E.detailItemInfoValue, + children: (0, N.sG)({ + level: + null !== (i = e.vipLevel) && + void 0 !== i + ? i + : "", + }), + }), + ], + }), + (0, r.jsxs)("div", { + className: E.detailItemInfo, + children: [ + (0, r.jsx)("div", { + className: E.detailItemInfoTitle, + children: v.ZP.t( + "dre_m10n_credits_detail_info2", + {}, + "Residual credits" + ), + }), + (0, r.jsx)("div", { + className: E.detailItemInfoValue, + children: e.residualCredits, + }), + ], + }), + (0, r.jsxs)("div", { + className: E.detailItemInfo, + children: [ + (0, r.jsx)("div", { + className: E.detailItemInfoTitle, + children: v.ZP.t( + "dre_m10n_credits_detail_info3", + {}, + "Credits ends" + ), + }), + (0, r.jsx)("div", { + className: E.detailItemInfoValue, + children: (0, S.vc)( + "yyyy-MM-dd hh:mm", + 1e3 * e.creditsLifeEnd + ), + }), + ], + }), + ], + }, + t + ); + }), + }), + }), + ], + }); + return (0, r.jsxs)( + "div", + { + className: E.creditInfoItem, + children: [ + (0, r.jsx)("div", { + className: E.creditInfoItemTitle, + children: e.title, + }), + (0, r.jsxs)("div", { + className: E.creditInfoItemAmount, + children: [ + (0, r.jsx)("div", { + className: E.creditInfoItemNum, + children: e.creditAmount, + }), + e.hasDetail && + (0, r.jsx)(o.Z, { + className: E.creditInfoDetailPopover, + trigger: "hover", + position: "bottom", + content: t(), + triggerProps: { showArrow: !1 }, + getPopupContainer: () => document.body, + children: (0, r.jsx)(I.oUg, { + className: E.creditInfoItemDetailIcon, + }), + }), + ], + }), + ], + }, + e.key + ); + }, + ea = (e) => + (0, r.jsxs)("div", { + className: E.creditCalcSymbolWrapper, + children: [ + (0, r.jsx)("div", { className: E.creditCalcSymbolLeft }), + (0, r.jsx)("div", { + className: E.creditCalcSymbol, + children: e, + }), + (0, r.jsx)("div", { className: E.creditCalcSymbolRight }), + ], + }); + return (0, r.jsxs)("div", { + className: E.creditHistoryModal, + children: [ + (0, r.jsxs)("div", { + className: E.action, + children: [ + n + ? (0, r.jsxs)("div", { + className: E.backBtn, + onClick: l, + children: [ + (0, r.jsx)(I.USi, { className: E.backBtnIcon }), + (0, r.jsx)("span", { + children: v.ZP.t( + "dre_m10n_payment_back", + {}, + "Back" + ), + }), + ], + }) + : (0, r.jsx)("div", { + className: E.modalTitle, + children: v.ZP.t( + "dre_m10n_credits_balance", + {}, + "Credit balance" + ), + }), + !n && + (0, r.jsx)("div", { + className: E.closeBtn, + onClick: l, + children: (0, r.jsx)(I.Rnl, { + className: E.closeBtnIcon, + }), + }), + ], + }), + (0, r.jsx)("div", { + className: E.header, + ref: x, + children: (0, r.jsxs)("div", { + className: E.creditInfoWrapper, + ref: M, + children: [ + er(J), + null == q + ? void 0 + : q.map((e, t) => + (0, r.jsxs)(r.Fragment, { + children: [0 === t ? ea("=") : ea("+"), er(e)], + }) + ), + ], + }), + }), + (0, r.jsx)("div", { + className: E.contentWrapper, + onScroll: ee, + ref: h, + children: (0, r.jsxs)("div", { + className: E.content, + ref: C, + children: [ + (0, r.jsxs)(s.Z, { + className: E.tabs, + activeTab: G, + onChange: Q, + renderTabTitle: (e) => + (0, r.jsx)("div", { + className: E.tabTitleWrapper, + children: e, + }), + children: [ + (0, r.jsx)( + s.Z.TabPane, + { title: v.ZP.t("dre_m10n_credits_all", {}, "All") }, + L.Pi.NOT_LIMITED + ), + (0, r.jsx)( + s.Z.TabPane, + { + title: v.ZP.t( + "dre_m10n_credits_used", + {}, + "Consumed" + ), + }, + L.Pi.CONSUMED + ), + (0, r.jsx)( + s.Z.TabPane, + { + title: v.ZP.t( + "dre_m10n_credits_gained", + {}, + "Gained" + ), + }, + L.Pi.ISSUED + ), + ], + }), + (0, r.jsx)("div", { + className: E.creditHistoryWrapper, + children: (0, r.jsx)(O, { + historyList: V, + loading: z, + hasMore: $, + }), + }), + ], + }), + }), + (0, r.jsxs)("div", { + className: E.bottomTips, + children: [ + (0, r.jsx)("span", { + className: E.delayTips, + children: v.ZP.t( + "dre_m10n_credits_delay", + {}, + "There may be delays in data updates." + ), + }), + (0, r.jsx)("a", { + target: "_blank", + rel: "noreferrer", + href: (0, d.C)(ei, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + className: E.creditRules, + children: v.ZP.t( + "dre_m10n_purchase_credits_rules", + {}, + "Rules" + ), + }), + ], + }), + ], + }); + }; + function F(e) { + var { containerService: t } = e, + i = (0, m.ko)(t, L.aG); + (0, _.Rr)( + (function () { + var e = (0, n._)(function* (e) { + yield Promise.all([ + i.changeHistoryType(e, L.Pi.NOT_LIMITED), + i.syncHistoryData(e, L.Pi.CONSUMED), + i.syncHistoryData(e, L.Pi.ISSUED), + ]); + }); + return function (t) { + return e.apply(this, arguments); + }; + })(), + { + contextType: y.zO.Task, + processName: "CreditHistoryModal", + operationName: "showCreditHistoryModal", + } + ), + i.syncRemoteCreditHistory(); + var a = c.Z.confirm({ + title: null, + footer: null, + icon: null, + simple: !0, + closable: !1, + maskClosable: !0, + maskStyle: { + backdropFilter: "blur(8px)", + WebkitBackdropFilter: "blur(8px)", + }, + wrapClassName: E.creditHistoryModalWrapper, + content: (0, r.jsx)(g.$, { + instantiationService: t, + children: (0, r.jsx)(B, { + onClose: () => a.close(), + containerService: t, + }), + }), + }); + } + }, + 443213: function (e, t, i) { + "use strict"; + i.d(t, { E: () => f }); + var n = i("772322"), + r = i("293793"), + a = i("105789"), + o = i.n(a), + s = i("218571"), + l = "container-H92JQ_", + c = "panel-tOQI3r", + d = "panelWithBackdropFilter-DNipfD", + u = "hidePanel-fx5vGm", + f = (0, s.forwardRef)((e, t) => { + var { + content: i, + children: a, + containerClassName: f, + contentClassName: h, + contentStyle: p, + isDisable: v = !1, + needStopPropagation: m = !1, + hasBackdropFilter: g = !0, + isUseHover: _, + onVisibleChange: y, + handleMouseEnter: b, + handleMouseOut: I, + } = e, + w = (0, s.useRef)(null), + x = (0, s.useRef)(null), + S = (0, s.useRef)(!1), + M = (0, s.useRef)(!1), + [C, T] = (0, s.useState)(!1), + A = (e) => { + if ((m && (null == e || e.stopPropagation()), !v)) { + var t, + i, + n = !C; + T(n); + var r = e ? { x: e.clientX, y: e.clientY } : void 0, + { width: a = 0, height: o = 0 } = + null !== + (i = + null === (t = x.current) || void 0 === t + ? void 0 + : t.getBoundingClientRect()) && void 0 !== i + ? i + : {}; + null == y || y(n, r, { width: a, height: o }); + } + }, + k = (0, r.default)((e) => { + var t = w.current; + t && !t.contains(e.target) && C && (T(!1), null == y || y(!1)); + }), + P = () => { + T(!1), null == y || y(!1); + }, + E = () => { + A(); + }, + D = () => { + if ((null == b || b(), !!_ && !v)) + (S.current = !0), + setTimeout(() => { + !C && (S.current || M.current) && E(); + }, 200); + }, + R = () => { + if ((null == I || I(), !!_ && !v)) + (S.current = !1), + setTimeout(() => { + !S.current && !M.current && C && P(); + }, 200); + }, + N = () => { + if (!!_ && !v) + (M.current = !0), + setTimeout(() => { + !C && (S.current || M.current) && E(); + }, 200); + }, + L = () => { + if (!!_ && !v) + (M.current = !1), + setTimeout(() => { + !S.current && !M.current && C && P(); + }, 200); + }; + return ( + (0, s.useEffect)( + () => ( + document.addEventListener("mousedown", k), + () => { + document.removeEventListener("mousedown", k); + } + ), + [k] + ), + (0, s.useImperativeHandle)(t, () => ({ close: P, open: E })), + (0, n.jsxs)("div", { + className: o()(l, f), + ref: w, + children: [ + (0, n.jsx)("div", { + onClick: A, + onMouseEnter: D, + onMouseLeave: R, + children: a, + }), + (0, n.jsx)("div", { + ref: x, + className: o()(c, h, { [u]: !C, [d]: g }), + onMouseEnter: N, + onMouseLeave: L, + style: p, + children: i, + }), + ], + }) + ); + }); + }, + 284858: function (e, t, i) { + "use strict"; + i.d(t, { S: () => B }); + var n = i("139646"), + r = i("625572"), + a = i("639880"), + o = i("772322"); + i("245535"); + var s = i("293793"), + l = i("76894"), + c = i("218571"), + d = i("188754"), + u = i("319440"), + f = i("2910"), + h = i("105789"), + p = i.n(h), + v = (e, t, i, n, r) => { + var a = t < n; + r((!(e < i) || !a) && !0); + }, + m = (e, t, i, n) => { + var { width: r, height: a } = t, + { width: o, height: s } = i, + l = r > o, + c = a > s, + d = Math.abs((r - o) / 2), + u = Math.abs((a - s) / 2); + n((t) => { + var i = t.x + e.x, + n = t.y + e.y; + return ( + (i = Math.min(d, Math.max(-d, i))), + (n = Math.min(u, Math.max(-u, n))), + { x: l ? Math.round(i) : t.x, y: c ? Math.round(n) : t.y } + ); + }); + }, + g = i("528498"), + _ = i("691563"), + y = i("54764"), + b = 1.03, + I = 0.97, + w = 0.73, + x = 0.92, + S = i("717742"), + M = i("185617"), + C = i("338944"), + T = { + zoomImageContainer: "zoomImageContainer-hx8m5F", + imageWrapper: "imageWrapper-ucLbW6", + hoverContainer: "hoverContainer-ToJ2jV", + transitionCls: "transitionCls-Jt0b8Y", + loading: "loading-z7TZQZ", + grabbingCursor: "grabbingCursor-iNAWi8", + grabCursor: "grabCursor-P63WG3", + zoomOutCursor: "zoomOutCursor-jSRvGD", + }, + A = (e) => { + var { + imageUrl: t, + width: i, + height: n, + maxInitialScale: s = 1 / 0, + isDownloading: l = !1, + onClose: d = () => ({}), + onZoomInImageExpose: h, + contextMenu: A = [], + } = e, + [k, P] = (0, c.useState)({ x: 0, y: 0 }), + E = (0, c.useRef)(null), + D = (0, c.useRef)({ width: 1024, height: 798 }), + [R, N] = (0, c.useState)(1), + [L, j] = (0, c.useState)(!1), + [O, B] = (0, c.useState)(!1), + [F, U] = (0, c.useState)(!1), + G = (0, c.useRef)(0), + [z, V] = (0, g.CY)(), + [W] = (0, _.Z)(t), + Z = (0, c.useRef)({ step: 0.1, minScale: 0.5, maxScale: 3 }); + (0, c.useEffect)(() => { + t && + (j(!1), + setTimeout(() => { + j(!0); + }, 1e3)); + }, [t]), + (0, c.useEffect)(() => { + var e = G.current, + t = V && W && !e && L, + i = (!V || !W) && e; + if (t) G.current = Date.now(); + else if (i) { + var n = Date.now() - e; + (G.current = 0), null == h || h(n); + } + }, [V, W, L]); + var K = (0, c.useCallback)( + (e, t) => { + m( + { x: e, y: t }, + { width: i * R, height: n * R }, + { width: D.current.width, height: D.current.height }, + P + ); + }, + [R, i, n] + ), + [H] = (0, y.c)(z, K), + q = (e) => { + var t, + r = e ? I : b; + N( + (e) => ( + m( + { x: 0, y: 0 }, + { + width: + i * + (t = Math.max( + Z.current.minScale, + Math.min(Z.current.maxScale, e * r) + )), + height: n * t, + }, + { width: D.current.width, height: D.current.height }, + P + ), + v(i * t, n * t, D.current.width, D.current.height, U), + (0, S.c)(t, 2) + ) + ); + }; + (0, y.r)(z, q, K), + (0, c.useEffect)(() => { + var e = () => { + var e = (0, M._U)(), + t = (0, M.mP)(); + D.current = { width: e, height: t }; + var r = e * w, + a = t * x, + o = Math.min((i / n >= r / a ? r : (i / n) * a) / i, s), + l = (2.5 * o) / 100; + (Z.current = { step: l, minScale: o, maxScale: 3 * o }), + N((0, S.c)(o, 2)); + }; + return ( + window.addEventListener("resize", e), + e(), + setTimeout(() => { + B(!0); + }, 500), + () => { + window.removeEventListener("resize", e); + } + ); + }, []); + var J = (e) => { + e.preventDefault(); + }, + Y = (0, c.useMemo)(() => { + var { x: e, y: t } = k; + return { + width: "".concat(i, "px"), + transform: "translate(calc(-50% + " + .concat(e, "px), calc(-50% + ") + .concat(t, "px)) scale(") + .concat(R, ")"), + }; + }, [i, k, R]), + Q = (0, c.useMemo)(() => { + if (F) return H ? T.grabbingCursor : T.grabCursor; + return T.zoomOutCursor; + }, [F, H]), + X = (0, a._)((0, r._)({}, Y), { + height: "".concat(n, "px"), + zIndex: l ? 2 : 0, + }), + $ = (e) => { + !F && 2 !== e.button && d(); + }; + return (0, o.jsx)("div", { + className: T.zoomImageContainer, + ref: E, + onClick: d, + children: t + ? (0, o.jsxs)(o.Fragment, { + children: [ + (0, o.jsx)(C.W, { + disable: !(null == A ? void 0 : A.length), + baseOptions: A, + children: (0, o.jsxs)("div", { + className: T.imageWrapper, + style: { opacity: L ? 1 : 0 }, + children: [ + (0, o.jsx)("img", { + ref: z, + src: (0, f.C)(t, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + className: p()(Q, { [T.transitionCls]: O }), + style: Y, + onClick: (e) => e.stopPropagation(), + onMouseUp: $, + onLoad: () => j(!0), + onContextMenu: J, + crossOrigin: "anonymous", + }), + (0, o.jsx)("div", { + className: T.hoverContainer, + style: X, + }), + ], + }), + }), + !L && + (0, o.jsx)(u.XG, { + className: T.loading, + size: u.XJ.Big, + }), + ], + }) + : (0, o.jsx)(u.XG, { className: T.loading, size: u.XJ.Big }), + }); + }, + k = i("863209"), + P = { + enlargeModalContent: "enlargeModalContent-sTFBOC", + loading: "loading-L4BJBe", + iconWrapper: "iconWrapper-mMZWsv", + icon: "icon-lVsa8f", + download: "download-cnkolm", + close: "close-CHhBEr", + previewAction: "previewAction-KFWNwH", + }, + E = i("699267"), + D = i("70529"), + R = i("568386"), + N = i("487736"), + L = i("259435"), + j = (e) => { + var { + imageInfo: t, + onClose: i, + onDownload: r, + onZoomOut: a, + onZoomInImageExpose: l, + showSwitch: f = !1, + showSideSwitch: h = !1, + onPreviewNext: p, + onPreviewPrev: v, + hasPrev: m = !1, + hasNext: g = !0, + contextMenu: _ = [], + hideZoomInControl: y, + getWatermarkDownloadInfo: b, + } = e, + { + coverUrl: I = "", + width: w = 100, + height: x = 100, + fileName: S = "", + maxInitialScale: M, + } = t, + [C, T] = (0, c.useState)(!1), + N = (0, E.G)(D.m), + L = (function () { + var e = (0, n._)(function* () { + T(!0); + var e = Date.now(), + { url: t } = yield b(), + i = yield (0, k.ue)(t, S, N); + T(!1); + var n = Date.now() - e; + null == r || r(i, n); + }); + return function () { + return e.apply(this, arguments); + }; + })(), + j = () => { + null == a || a(), i(); + }, + O = (0, s.default)(() => { + null == v || v(); + }), + B = (0, s.default)(() => { + null == p || p(); + }); + return (0, o.jsxs)("div", { + className: P.enlargeModalContent, + children: [ + !y && + (0, o.jsxs)("div", { + className: P.iconWrapper, + children: [ + (0, o.jsx)("div", { + className: P.icon, + onClick: j, + children: (0, o.jsx)(d.Rnl, { className: P.close }), + }), + (0, o.jsx)("div", { + className: P.icon, + onClick: L, + children: (0, o.jsx)(d.zpr, { className: P.download }), + }), + ], + }), + f && + (0, o.jsx)(R.U, { + hasPrev: m, + hasNext: g, + onNext: B, + onPrev: O, + className: P.previewAction, + }), + h && + (0, o.jsx)(R.W, { + hasPrev: m, + hasNext: g, + onNext: B, + onPrev: O, + className: P.previewAction, + }), + C && (0, o.jsx)(u.XG, { className: P.loading }), + (0, o.jsx)(A, { + imageUrl: I, + width: w, + height: x, + maxInitialScale: M, + isDownloading: C, + onZoomInImageExpose: l, + onClose: i, + contextMenu: _, + }), + ], + }); + }, + O = null; + function B(e) { + var { + imageInfo: t, + contextMenu: i, + getWatermarkDownloadInfo: n, + onDownload: s, + handleZoomInImageExpose: c, + onZoomOut: d, + switchOptions: u, + } = e, + f = (0, L.C)(e.containerService, N.M.ImgZoomInModal); + if (O) { + O.update({ + footer: null, + icon: null, + simple: !0, + closable: !1, + maskClosable: !0, + wrapClassName: "enlarge-image-modal", + afterClose: () => { + (O = null), + (f = (0, L.X)( + e.containerService, + N.M.ImgZoomInModal + )).unmount(); + }, + content: (0, o.jsx)(E.$, { + instantiationService: e.containerService, + children: (0, o.jsx)( + j, + (0, a._)((0, r._)({}, u), { + contextMenu: i, + imageInfo: t, + getWatermarkDownloadInfo: n, + onClose: () => (null == O ? void 0 : O.close()), + onDownload: s, + onZoomOut: d, + onZoomInImageExpose: c, + }) + ), + }), + }); + return; + } + O = l.Z.confirm({ + footer: null, + icon: null, + simple: !0, + closable: !1, + maskClosable: !0, + wrapClassName: "enlarge-image-modal", + afterClose: () => { + (O = null), + (f = (0, L.X)(e.containerService, N.M.ImgZoomInModal)).unmount(); + }, + content: (0, o.jsx)(E.$, { + instantiationService: e.containerService, + children: (0, o.jsx)( + j, + (0, a._)((0, r._)({}, u), { + contextMenu: i, + imageInfo: t, + getWatermarkDownloadInfo: n, + onClose: () => (null == O ? void 0 : O.close()), + onDownload: s, + onZoomOut: d, + onZoomInImageExpose: c, + }) + ), + }), + }); + } + }, + 49841: function (e, t, i) { + "use strict"; + i.d(t, { + m: function () { + return s; + }, + }); + var n = i(625572), + r = i(96), + a = i(772322); + i(641183); + var o = i(188754), + s = (e) => { + var { hasFavorited: t, useCurrentColor: i } = e, + s = (0, r._)(e, ["hasFavorited", "useCurrentColor"]); + return t + ? (0, a.jsx)( + o.jjQ, + (0, n._)({ size: 16, color: "var(--state-warning)" }, s) + ) + : (0, a.jsx)( + o.SQi, + (0, n._)( + { size: 16, color: i ? void 0 : "var(--text-secondary)" }, + s + ) + ); + }; + }, + 925016: function (e, t, i) { + "use strict"; + i.d(t, { H: () => _ }); + var n = i("625572"), + r = i("639880"), + a = i("772322"), + o = i("2910"), + s = i("188754"); + i("245535"); + var l = i("76894"), + c = i("570126"), + d = { + loadingContainer: "loadingContainer-k8bTOd", + loadingContent: "loadingContent-it5Vun", + mwebCommonGlobalModalContainer: + "mwebCommonGlobalModalContainer-Vi13gH", + closeBtn: "closeBtn-Q00F3i", + closeIcon: "closeIcon-TttgHr", + closeBtnWithHeaderImage: "closeBtnWithHeaderImage-z_sfnz", + headerImageContainer: "headerImageContainer-fDQrSI", + modalMain: "modalMain-NSou0q", + modalMainWithHeaderImage: "modalMainWithHeaderImage-wZ3IAq", + modalTitle: "modalTitle-m7U4OM", + preIcon: "preIcon-YFiWnD", + modalContent: "modalContent-WuC8aa", + }, + u = i("319440"); + class f { + static initialize() { + var e = window.document.createElement("div"); + window.document.body.append(e), (f.domContainer = c.createRoot(e)); + } + static load() { + var e, + t = arguments.length > 0 && void 0 !== arguments[0] && arguments[0]; + if ( + (!f.isInitialize && (f.initialize(), (f.isInitialize = !0)), + f.isLoading !== t) + ) { + f.isLoading = t; + var i = t + ? (0, a.jsx)("div", { + className: d.loadingContainer, + children: (0, a.jsx)(u.XG, { + className: d.loadingContent, + size: u.XJ.Big, + }), + }) + : null; + null === (e = f.domContainer) || void 0 === e || e.render(i); + } + } + static openModal() { + var e = + arguments.length > 0 && void 0 !== arguments[0] + ? arguments[0] + : "info", + t = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : {}; + !f.isInitialize && (f.initialize(), (f.isInitialize = !0)), + f.isLoading && f.load(!1); + var i = l.Z[e]; + return null == i + ? void 0 + : i((0, n._)({ className: d.mwebCommonGlobalModalContainer }, t)); + } + } + (f.isLoading = !1), (f.isInitialize = !1); + var h = i("653061"), + p = i("105789"), + v = i.n(p), + m = { + success: s.QD2, + info: null, + confirm: null, + error: s.zeQ, + warning: s.u2T, + }, + g = (e) => { + var { action: t, modalProps: i } = e, + n = m[t], + { title: r } = i; + return (0, a.jsxs)("div", { + className: d.modalTitle, + children: [n && (0, a.jsx)(n, { className: d.preIcon }), r], + }); + }; + class _ extends f { + static open(e) { + var { action: t = "info", props: i, extraProps: l = {} } = e, + { + modalMainClassname: c = "", + modalMainStyle: u = {}, + modalContentClassname: f = "", + } = l, + { content: p } = i, + { headerImage: m } = l, + { url: _ } = null != m ? m : {}, + y = !!_; + return super.openModal( + t, + (0, r._)((0, n._)({}, i), { + title: null, + closeIcon: (0, a.jsx)("div", { + className: v()({ + [d.closeBtn]: !0, + [d.closeBtnWithHeaderImage]: y, + }), + children: (0, a.jsx)(s.Rnl, { className: d.closeIcon }), + }), + content: (0, a.jsxs)(a.Fragment, { + children: [ + _ && + (0, a.jsx)(h.k, { + className: d.headerImageContainer, + src: (0, o.C)(_, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + crossOrigin: "anonymous", + "data-apm-action": "global-modal-header-image", + }), + (0, a.jsxs)("div", { + className: v()( + { [d.modalMain]: !0, [d.modalMainWithHeaderImage]: y }, + c + ), + style: u, + children: [ + (0, a.jsx)(g, { action: t, modalProps: i }), + (0, a.jsx)("div", { + className: v()(d.modalContent, f), + children: p, + }), + ], + }), + ], + }), + }) + ); + } + static info(e, t) { + return this.open({ action: "info", props: e, extraProps: t }); + } + static success(e, t) { + return this.open({ action: "success", props: e, extraProps: t }); + } + static error(e, t) { + return this.open({ action: "error", props: e, extraProps: t }); + } + static warn(e, t) { + return this.open({ action: "warning", props: e, extraProps: t }); + } + static confirm(e, t) { + return this.open({ action: "confirm", props: e, extraProps: t }); + } + } + }, + 203169: function (e, t, i) { + "use strict"; + i.d(t, { E: () => S }); + var n = i("772322"), + r = i("188754"), + a = "brushContainer-sXy_qA", + o = "sliderBarBrush-3sS_0Z", + s = "sliderBarEraser-KVH2mL", + l = "icon-GM6eWg", + c = i("625572"), + d = i("639880"), + u = i("218571"), + f = i("105789"), + h = i.n(f), + p = "active-PKMEPz", + v = "item-AJGEtf", + m = i("443213"), + g = "sliderBar-rt6NIJ", + _ = i("763284"), + y = i("489897"), + b = (e) => { + var { className: t, brushSize: i, onChange: r, onAfterChange: a } = e; + return (0, n.jsx)(_.i, { + className: h()(g, t), + value: i, + onChange: r, + max: y.fx, + min: y.zt, + style: { width: 292 }, + triggerBar: !0, + onAfterChange: a, + cssConfigs: { + sliderWrapper: { style: { height: "12px", margin: "4px 0" } }, + }, + }); + }, + I = i("533278"), + w = (e) => { + var { + contentStyle: t, + sliderClassName: i, + brushSize: r, + tips: a, + onChange: o, + onClick: s, + isActive: l, + icon: f, + buttonStyle: g, + onVisibleChange: _, + onAfterChange: y, + isDefaultOpen: w = !1, + } = e, + [x, S] = (0, u.useState)(!w), + M = (0, u.useRef)(null), + C = (e) => { + S(!e), null == _ || _(e); + }; + return ( + (0, u.useEffect)(() => { + var e; + w && (null === (e = M.current) || void 0 === e || e.open()); + }, [w]), + (0, n.jsx)(m.E, { + ref: M, + contentStyle: (0, d._)((0, c._)({}, t), { + display: x ? "none" : "", + backdropFilter: "none", + }), + content: (0, n.jsx)(b, { + className: i, + brushSize: r, + onChange: o, + onAfterChange: y, + }), + onVisibleChange: C, + children: (0, n.jsx)("div", { + onClick: s, + style: g, + children: (0, n.jsx)(I.z, { + tips: a, + className: h()({ [v]: !0, [p]: l }), + icon: f, + }), + }), + }) + ); + }, + x = i("949274"), + S = (e) => { + var { brushConfig: t, eraserConfig: i } = e; + return (0, n.jsxs)("div", { + className: a, + children: [ + (0, n.jsx)(w, { + isDefaultOpen: t.defaultOpen, + contentStyle: t.contentStyle, + buttonStyle: t.buttonStyle, + sliderClassName: o, + brushSize: t.size, + tips: x.oc.t("t2i_painter", {}, "Brush"), + isActive: t.isActive, + icon: (0, n.jsx)(r.C5$, { className: l }), + onChange: t.onChange, + onClick: t.onClick, + onAfterChange: t.onAfterChange, + }), + (0, n.jsx)(w, { + isDefaultOpen: i.defaultOpen, + contentStyle: i.contentStyle, + buttonStyle: i.buttonStyle, + sliderClassName: s, + brushSize: i.size, + tips: x.oc.t("t2i_eraser2", {}, "Eraser"), + isActive: i.isActive, + icon: (0, n.jsx)(r.D03, { className: l }), + onChange: i.onChange, + onClick: i.onClick, + onAfterChange: i.onAfterChange, + }), + ], + }); + }; + }, + 81372: function (e, t, i) { + "use strict"; + i.d(t, { c: () => p }); + var n = i("772322"), + r = i("188754"), + a = "active-x6H3Wa", + o = "item-HNwy0B", + s = "tipContent-EkgJgA", + l = "text-uzVeuP", + c = "hotkey-zQzrwt", + d = i("533278"), + u = i("949274"), + f = i("105789"), + h = i.n(f), + p = (e) => { + var { handleClickMove: t, dragActive: i } = e; + return (0, n.jsx)("div", { + onClick: t, + children: (0, n.jsx)(d.z, { + tips: (0, n.jsxs)("div", { + className: s, + children: [ + (0, n.jsx)("span", { + className: l, + children: u.oc.t("wimg2img_content_move", {}, "Move"), + }), + (0, n.jsx)("span", { className: c, children: "space" }), + ], + }), + className: h()({ [o]: !0, [a]: i }), + icon: (0, n.jsx)(r.UXD, { style: { fontSize: "16px" } }), + }), + }); + }; + }, + 711063: function (e, t, i) { + "use strict"; + i.d(t, { $: () => v }); + var n = i("772322"), + r = i("533278"), + a = i("188754"), + o = "container-ofYLjT", + s = "active-X4ZCX3", + l = "iconContainer-jHU7o5", + c = "icon-qjmzlv", + d = "limit-aVczX3", + u = "divider-foaIv4", + f = i("105789"), + h = i.n(f), + p = { transform: "rotateY(180deg)" }, + v = (e) => { + var { + isLimit: t, + handleUndo: i, + handleRedo: f, + undoIconStyle: v = {}, + redoIconStyle: m = {}, + } = e; + return (0, n.jsxs)("div", { + className: o, + children: [ + (0, n.jsx)("div", { + className: h()({ [d]: t.undo, [s]: !t.undo, [l]: !0 }), + onClick: i, + children: (0, n.jsx)(r.z, { + className: c, + containerStyle: p, + icon: (0, n.jsx)(a.p9e, { className: c, style: m }), + }), + }), + (0, n.jsx)("div", { className: u }), + (0, n.jsx)("div", { + className: h()({ [d]: t.redo, [s]: !t.redo, [l]: !0 }), + onClick: f, + children: (0, n.jsx)(r.z, { + className: c, + icon: (0, n.jsx)(a.p9e, { className: c, style: v }), + }), + }), + ], + }); + }; + }, + 342396: function (e, t, i) { + "use strict"; + i.d(t, { + $A: function () { + return r; + }, + hv: function () { + return a; + }, + pv: function () { + return n; + }, + }); + var n = 3, + r = 0.33, + a = -1; + }, + 699301: function (e, t, i) { + "use strict"; + i.d(t, { n: () => g }); + var n = i("625572"), + r = i("639880"), + a = i("772322"), + o = i("188754"), + s = "scaleContainer-SIVbaC", + l = "text-AZuh_Z", + c = "dropContainer-wur3mr", + d = "dropContent-Kspm0Z", + u = i("105789"), + f = i.n(u), + h = "btnActive-MVzAcP", + p = "btn-VrIjTR", + v = (e) => { + var { icon: t, active: i, onClick: n } = e; + return (0, a.jsx)("div", { + className: f()({ [p]: !0, [h]: !!i }), + onClick: n, + children: t, + }); + }, + m = i("443213"), + g = (e) => { + var { scale: t, logic: i } = e, + { + handleScaleUp: u, + handleScaleDown: f, + getScaleName: h, + menu: p, + dropdownStyle: g, + dropdownRef: _, + handleDropdownVisibleChange: y, + } = i; + return (0, a.jsxs)("div", { + className: s, + children: [ + (0, a.jsx)(v, { + icon: (0, a.jsx)(o.S6A, { size: 16 }), + onClick: f, + }), + (0, a.jsx)(m.E, { + ref: _, + containerClassName: c, + contentClassName: d, + content: p, + contentStyle: (0, r._)((0, n._)({}, g), { + backdropFilter: "none", + }), + onVisibleChange: y, + children: (0, a.jsx)("span", { className: l, children: h(t) }), + }), + (0, a.jsx)(v, { + icon: (0, a.jsx)(o.nGr, { size: 16 }), + onClick: u, + }), + ], + }); + }; + }, + 767116: function (e, t, i) { + "use strict"; + i.d(t, { + y: function () { + return s; + }, + }); + var n = i(625572), + r = i(639880), + a = i(949274), + o = i(342396); + function s() { + var e = [ + { name: "33%", value: 0.33 }, + { name: "50%", value: 0.5 }, + { name: "100%", value: 1 }, + { name: "200%", value: 2 }, + { name: "300%", value: 3 }, + { + name: a.ZP.t("wimg2img_content_overwiew", {}, "Zoom to fit"), + value: o.hv, + resetOffset: !0, + }, + ], + t = e.reduce( + (e, t) => (0, r._)((0, n._)({}, e), { [t.value]: t.name }), + {} + ); + return { scaleArr: e, scaleMap: t }; + } + }, + 925367: function (e, t, i) { + "use strict"; + i.d(t, { + $h: function () { + return f; + }, + FB: function () { + return u; + }, + FD: function () { + return h; + }, + KE: function () { + return l; + }, + Up: function () { + return r; + }, + fx: function () { + return s; + }, + gn: function () { + return c; + }, + o4: function () { + return n; + }, + pb: function () { + return a; + }, + qx: function () { + return d; + }, + zt: function () { + return o; + }, + }); + var n = (function (e) { + return ( + (e[(e.Brush = 0)] = "Brush"), + (e[(e.Eraser = 1)] = "Eraser"), + (e[(e.Move = 2)] = "Move"), + (e[(e.Select = 3)] = "Select"), + e + ); + })({}), + r = 4, + a = 32, + o = 1, + s = 20, + l = 3, + c = 482, + d = 774, + u = (function (e) { + return ( + (e.Brush = "brush"), + (e.Eraser = "eraser"), + (e.BrushSlider = "brush_slider"), + (e.EraserSlider = "eraser_slider"), + (e.Reset = "reset"), + (e.Redo = "redo"), + (e.Undo = "undo"), + (e.Prompt = "prompt"), + (e.Move = "move"), + (e.SmartCut = "smart_cut"), + (e.RatioUp = "ratio_up"), + (e.RatioDown = "ratio_down"), + e + ); + })({}), + f = { 0: "brush", 1: "eraser" }, + h = (function (e) { + return (e.Show = "show"), (e.Click = "click"), (e.Use = "use"), e; + })({}); + }, + 202455: function (e, t, i) { + "use strict"; + i.d(t, { + b: function () { + return n; + }, + }); + var n = (function (e) { + return (e.Aigc = "aigc"), (e.Import = "import"), e; + })({}); + }, + 114979: function (e, t, i) { + "use strict"; + i.d(t, { I: () => e$ }); + var n = i("772322"), + r = i("218571"), + a = i("949274"), + o = i("967355"), + s = i("188754"), + l = { + contentContainer: "contentContainer-_aFKQl", + title: "title-nfmnvG", + textArea: "textArea-m0OYG_", + withBtn: "withBtn-Eklxc3", + bottomContainer: "bottomContainer-HvpsWf", + helpIcon: "helpIcon-fjgrzg", + tips: "tips-Xxbh7q", + paintContainer: "paintContainer-AwJwCi", + generateButton: "generateButton-D4fuFY", + }, + c = i("625572"), + d = i("639880"), + u = i("699301"); + i("596477"); + var f = i("216956"), + h = i("331730"), + p = i("767116"), + v = i("342396"), + m = 2, + g = (e) => { + var { resizeInstance: t, dragInstance: i } = e, + a = (0, r.useSyncExternalStore)( + (e) => ( + null == t || t.on("scale", e), + () => { + null == t || t.off("scale", e); + } + ), + () => { + var e; + return null !== (e = null == t ? void 0 : t.getSnapshot()) && + void 0 !== e + ? e + : v.hv; + } + ), + o = () => { + if (!!t) { + var i, + n, + r = Math.min(Math.abs(t.scale * m), v.pv); + return ( + null == e || + null === (i = e.handleScaleChange) || + void 0 === i || + i.call( + e, + r, + null !== (n = null == t ? void 0 : t.scale) && + void 0 !== n + ? n + : v.hv + ), + (t.scale = r), + t.scale + ); + } + }, + s = () => { + if (!!t) { + var i, + n, + r = Math.max(Math.abs(t.scale / m), v.$A); + return ( + null == e || + null === (i = e.handleScaleChange) || + void 0 === i || + i.call( + e, + r, + null !== (n = null == t ? void 0 : t.scale) && + void 0 !== n + ? n + : v.hv + ), + (t.scale = r), + t.scale + ); + } + }, + { scaleArr: l } = (0, p.y)(), + c = (e) => { + var t = Math.round(100 * e); + return "".concat(Math.abs(t), "%"); + }, + [d, u] = (0, r.useState)({ display: "none" }), + g = (e) => { + e ? u({ display: "block" }) : u({ display: "none" }); + }, + _ = (0, r.useRef)(null), + y = (n) => { + if (!!t) { + var r, + a, + o, + { value: s, resetOffset: l } = n; + l && (t.resetOffset(), null == i || i.resetMove()), + null == e || + null === (r = e.handleScaleChange) || + void 0 === r || + r.call( + e, + s, + null !== (o = null == t ? void 0 : t.scale) && + void 0 !== o + ? o + : v.hv + ), + setTimeout(() => { + t.scale = s; + }), + g(!1), + null === (a = _.current) || void 0 === a || a.close(); + } + }, + b = (0, n.jsx)(f.Z, { + className: h.Z.menu, + selectedKeys: ["".concat(a)], + children: l.map((e, t) => + (0, n.jsx)( + f.Z.Item, + { + className: h.Z.menuItem, + onClick: () => y(e), + children: e.name, + }, + "".concat(e.value) + ) + ), + }); + return { + scale: a, + logic: { + handleScaleUp: o, + handleScaleDown: s, + getScaleName: c, + menu: b, + dropdownStyle: d, + dropdownRef: _, + handleDropdownVisibleChange: g, + }, + }; + }, + _ = (0, r.createContext)(null), + y = () => ({ paintInteractContext: (0, r.useContext)(_) }), + b = () => { + var { paintInteractContext: e } = y(), + { instanceConfig: t } = null != e ? e : {}; + return (0, c._)({}, t); + }, + I = () => { + var { paintInteractContext: e } = y(), + { scaleConfig: t } = null != e ? e : {}, + { onScaleChange: i } = null != t ? t : {}, + { resizeInstance: r, dragInstance: a } = b(), + { scale: o, logic: s } = g({ + handleScaleChange: (e, t) => { + if (e !== t) null == i || i(e, t); + }, + resizeInstance: r, + dragInstance: a, + }); + return (0, n.jsx)(u.n, { scale: o, logic: s }); + }, + w = "rightInteract-mhkPkU", + x = i("749623"), + S = () => { + var [e, t] = (0, r.useState)(!1), + { paintInteractContext: i } = y(), + { panelConfig: n } = null != i ? i : {}, + { paintModeInstance: a } = b(); + return ( + (0, r.useEffect)(() => { + null == a || + a.onPaintAction((e) => { + var { action: i } = e; + t(i === x.T.StartPaint); + }); + }, [a]), + { + containerStyle: (0, r.useMemo)(() => { + var t = e ? { display: "none" } : {}; + return (null == n ? void 0 : n.panelStyle) + ? (0, c._)({}, t, n.panelStyle) + : t; + }, [e, n]), + } + ); + }, + M = () => { + var { containerStyle: e } = S(); + return (0, n.jsx)("div", { + className: w, + style: e, + children: (0, n.jsx)(I, {}), + }); + }, + C = i("711063"), + T = "container-wfzEc_", + A = () => { + var [e, t] = (0, r.useState)(!0), + [i, a] = (0, r.useState)(!0), + { paintModeInstance: o } = b(), + { paintInteractContext: s } = y(), + { undoRedoConfig: l } = null != s ? s : {}; + (0, r.useEffect)(() => { + if (!!o) + o.onCommandMangerModel("redoStack", (e) => { + a(0 === e.length); + }), + o.onCommandMangerModel("undoStack", (e) => { + t(0 === e.length); + }); + }, [o]), + (0, r.useEffect)(() => { + if (!!o) { + var { redoStack: e, undoStack: i } = o.getCommandData(); + a(0 === e.length), t(0 === i.length); + } + }, [o]); + var c = () => { + null == o || o.undo(), null == l || l.onUndo(); + }, + d = () => { + null == o || o.redo(), null == l || l.onRedo(); + }, + u = { undo: e, redo: i }; + return (0, n.jsx)("div", { + className: T, + children: (0, n.jsx)(C.$, { + isLimit: u, + handleUndo: c, + handleRedo: d, + }), + }); + }, + k = "container-sq8EFs", + P = i("203169"), + E = i("81372"), + D = i("345720"), + R = (e) => { + var { className: t } = e, + { paintInteractContext: i } = y(), + { dragConfig: a, instanceConfig: o } = null != i ? i : {}, + { dragStatus: s, handleClickMove: l = () => {} } = + null != a ? a : {}, + { paintModeInstance: c } = null != o ? o : {}; + return ( + (0, r.useEffect)(() => { + if (void 0 !== s) + [D.L.Active, D.L.Advent].includes(s) && + (null == c || + c.updateMousePosition({ + offsetX: "-9999px", + offsetY: "-9999px", + })); + }, [s, c]), + (0, n.jsx)("div", { + className: t, + children: (0, n.jsx)(E.c, { + dragActive: s === D.L.Active, + handleClickMove: l, + }), + }) + ); + }, + N = () => { + var { paintInteractContext: e } = y(), + { brushContainerConfig: t, paintBarButtons: i = [] } = + null != e ? e : {}; + if (!t) return null; + var { brushConfig: r, eraserConfig: a } = t; + return (0, n.jsxs)("div", { + className: k, + children: [ + i, + (0, n.jsx)(P.E, { brushConfig: r, eraserConfig: a }), + (0, n.jsx)(R, {}), + ], + }); + }, + L = "container-vYgs0a", + j = "divider-YqLljn", + O = () => { + var { containerStyle: e } = S(); + return (0, n.jsxs)("div", { + className: L, + style: e, + children: [ + (0, n.jsx)(N, {}), + (0, n.jsx)("div", { className: j }), + (0, n.jsx)(A, {}), + ], + }); + }, + B = i("246940"), + F = i("387008"), + U = "container-y09SjR", + G = "svg-YNQt1b", + z = (e) => { + var { message: t } = e; + return (0, n.jsxs)("div", { + className: U, + children: [ + (0, n.jsx)(s.C5$, { className: G }), + (0, n.jsx)("div", { children: t }), + ], + }); + }, + V = (e) => { + var { + firstEntryMessageConfig: { storageKey: t, messageText: i }, + loadSaliencySEGFinished: a, + } = e, + o = () => { + if (!B.T.getItem(t)) + B.T.setItem(t, "true"), + F.h.open({ + content: (0, n.jsx)(z, { message: i }), + uiStyle: { top: "200px" }, + delay: 3e3, + }); + }; + (0, r.useEffect)(() => { + a && o(); + }, [a]); + }, + W = (e) => { + var { + firstEntryMessageConfig: t, + panelConfig: i, + instanceConfig: a, + services: o, + dragConfig: s, + scaleConfig: l, + brushContainerConfig: c, + undoRedoConfig: d, + paintBarButtons: u, + loadSaliencySEGFinished: f, + } = e; + V({ firstEntryMessageConfig: t, loadSaliencySEGFinished: f }); + var h = (0, r.useMemo)( + () => ({ + firstEntryMessageConfig: t, + panelConfig: i, + instanceConfig: a, + services: o, + dragConfig: s, + scaleConfig: l, + brushContainerConfig: c, + undoRedoConfig: d, + paintBarButtons: u, + }), + [t, i, a, o, s, l, c, d, u] + ); + return (0, n.jsxs)(_.Provider, { + value: h, + children: [(0, n.jsx)(O, {}), (0, n.jsx)(M, {})], + }); + }, + Z = i("925367"), + K = i("979870"), + H = { + top: "-40px", + left: "0px", + borderRadius: "8px", + border: "0.5px solid var(--line-2)", + }, + q = { + top: "-40px", + left: "-36px", + borderRadius: "8px", + border: "0.5px solid var(--line-2)", + }, + J = (e) => { + var { + paintModeInstance: t, + paintProps: i, + brushSizeConfig: a, + statusConfig: o, + loadSaliencySEGFinished: s, + } = e, + { brushSize: l, eraserSize: u, onChangeBrushSize: f } = a, + { drawAction: h, switchDrawAction: p, dragStatus: v } = o, + { item: m, tool: g, reportService: _, extraParams: y } = i, + { + dragInstance: b, + resizeInstance: I, + firstEntryParams: w, + paintBarButtons: x, + itemReportEventName: S = "inpaint_item", + brushContainerOverrideConfig: { + brushConfig: M = {}, + eraserConfig: C = {}, + } = {}, + } = y, + T = (e) => { + var { reportItem: t } = e, + i = (0, K.BT)(m); + null == _ || + _.reportBusinessEvent( + S, + (0, d._)((0, c._)({}, i), { + action: Z.FD.Show, + item: t, + tool: g, + }) + ); + }, + A = (e) => { + var { reportItem: t } = e, + i = (0, K.BT)(m); + null == _ || + _.reportBusinessEvent( + S, + (0, d._)((0, c._)({}, i), { + action: Z.FD.Click, + item: t, + tool: g, + }) + ); + }; + (0, r.useEffect)( + () => ( + T({ reportItem: Z.FB.BrushSlider }), + () => { + null == I || I.reset(); + } + ), + [] + ); + var k = { + dragStatus: v, + handleClickMove: () => { + A({ reportItem: Z.FB.Move }), + D.L.Active === v + ? b.changeStatus(D.L.Disable) + : b.changeStatus(D.L.Active); + }, + }, + P = { + brushConfig: (0, c._)( + { + contentStyle: (0, c._)({}, H), + isActive: h === Z.o4.Brush, + size: l, + onChange: (e) => { + f(e, Z.o4.Brush); + }, + onClick: () => { + T({ reportItem: Z.FB.BrushSlider }), p(Z.o4.Brush); + }, + onAfterChange: (e) => { + f(e, Z.o4.Brush), + null == t || + t.updateMousePosition({ + offsetX: "50%", + offsetY: "50%", + }), + "number" == typeof e && + (0, K.Hj)({ + reportInpaintAction: Z.FD.Click, + reportDrawAction: Z.FB.BrushSlider, + item: m, + tool: g, + reportService: _, + value: e, + eventName: S, + }); + }, + }, + M + ), + eraserConfig: (0, c._)( + { + contentStyle: (0, c._)({}, q), + isActive: h === Z.o4.Eraser, + size: u, + onChange: (e) => { + f(e, Z.o4.Eraser); + }, + onClick: () => { + T({ reportItem: Z.FB.EraserSlider }), p(Z.o4.Eraser); + }, + onAfterChange: (e) => { + f(e, Z.o4.Eraser), + null == t || + t.updateMousePosition({ + offsetX: "50%", + offsetY: "50%", + }), + "number" == typeof e && + (0, K.Hj)({ + reportInpaintAction: Z.FD.Click, + reportDrawAction: Z.FB.EraserSlider, + item: m, + tool: g, + reportService: _, + value: e, + eventName: S, + }); + }, + }, + C + ), + }, + E = { + onUndo: () => { + (0, K.Hj)({ + reportInpaintAction: Z.FD.Click, + reportDrawAction: Z.FB.Undo, + item: m, + tool: g, + reportService: _, + eventName: S, + }); + }, + onRedo: () => { + (0, K.Hj)({ + reportInpaintAction: Z.FD.Click, + reportDrawAction: Z.FB.Redo, + item: m, + tool: g, + reportService: _, + eventName: S, + }); + }, + }; + return (0, n.jsx)(W, { + paintBarButtons: x, + firstEntryMessageConfig: { + storageKey: w.storageKey, + messageText: w.message, + }, + panelConfig: { panelStyle: { zIndex: 10 } }, + instanceConfig: { + paintModeInstance: t, + dragInstance: b, + resizeInstance: I, + }, + services: {}, + dragConfig: k, + scaleConfig: { + onScaleChange: (e, t) => { + var i = + Math.abs(e) > Math.abs(t) ? Z.FB.RatioUp : Z.FB.RatioDown; + (0, K.Hj)({ + reportInpaintAction: Z.FD.Click, + reportDrawAction: i, + item: m, + tool: g, + reportService: _, + eventName: S, + }); + }, + }, + brushContainerConfig: P, + undoRedoConfig: E, + loadSaliencySEGFinished: s, + }); + }, + Y = i("2910"), + Q = "canvasContainer-tH8U5d", + X = "image-QVpjiA", + $ = "imagineGraphicEditor-J9x9Db", + ee = "loading-P3OZWj", + et = i("653061"), + ei = i("319440"), + en = i("429398"); + function er(e) { + var { width: t, height: i } = e, + n = Z.gn / i, + r = n * t; + if (r < Z.qx) return { width: r, height: Z.gn }; + var a = (n = Z.qx / t) * i; + return { width: Z.qx, height: a }; + } + var ea = (e) => { + var { image: t, elementStyle: i } = e; + return { + canvasStyle: (0, r.useMemo)(() => { + if (!t || !t.width || !t.height) + return (0, d._)((0, c._)({}, i), { width: 0, height: 0 }); + var { width: e, height: n } = t; + return (0, c._)({}, i, er({ width: e, height: n })); + }, [t, i]), + }; + }, + eo = (e, t) => { + var { url: i, image: a } = e, + { paintProps: o } = e, + { extraParams: s } = o, + { resizeInstance: l, dragInstance: c } = s, + d = (0, r.useMemo)(() => [l, c], []), + { + elementRef: u, + elementStyle: f, + resetTransformStyle: h, + activateAllWatchers: p, + deactivatedAllWatchers: v, + } = (0, en.E)(d); + (0, r.useEffect)( + () => ( + p(), + () => { + p(); + } + ), + [h, p, v] + ); + var { canvasStyle: m } = ea({ image: a, elementStyle: f }); + return (0, n.jsxs)("div", { + className: Q, + ref: u, + style: m, + children: [ + (0, n.jsx)(et.k, { + loader: (0, n.jsx)(ei.XG, { className: ee, size: ei.XJ.Big }), + className: X, + imageStyle: { overflow: "hidden", objectFit: "contain" }, + src: (0, Y.C)(i, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + crossOrigin: "anonymous", + "data-apm-action": "paint-canvas-ui", + }), + (0, n.jsx)("div", { className: $, ref: t }), + ], + }); + }, + es = (0, r.forwardRef)(eo), + el = i("139646"), + ec = i("293793"), + ed = i("880821"), + eu = i("106456"), + ef = + "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAADBJREFUOE9jbAp4ZsyAB4hISuKTZmAcNWBYhMG0zP9408Gb58/xp4NRAxgYh34YAABF7zjxN4qb+wAAAABJRU5ErkJggg==", + eh = i("787424"), + ep = i("170197"), + ev = (e) => { + var { extraParams: t, overrideInitParams: i } = e, + o = (0, r.useRef)(), + s = (0, eu.sd)((0, eu.CL)(t.brushSizeStorageKey)), + { brushColor: l } = t, + c = (function () { + var e = (0, el._)(function* (e, t) { + try { + var i = yield (0, ed.po)(t), + n = e.createPattern(i, "repeat"); + if (!n) return; + e.strokeStyle = n; + } catch (e) {} + }); + return function (t, i) { + return e.apply(this, arguments); + }; + })(); + return { + setup: (0, ec.default)( + (function () { + var t = (0, el._)(function* (t, r) { + o.current = t; + var { width: d, height: u } = r; + if (!!d && !!u) { + var f = er({ width: d, height: u }); + t.changeCanvasSize({ width: d, height: u }), + t.changeCanvasContainerSize(f); + var h = t.getCanvasContext2D(); + l ? t.brush.changeBrushColor(l) : yield c(h, ef); + var p = Z.o4.Brush, + v = (0, eu.j2)(s[p]); + if ( + (t.brush.changeBrushSize(v), + null == i ? void 0 : i.maskUrl) + ) { + var m = new eh.J(); + m.show( + (0, n.jsx)(ep.G, { + style: { + top: "".concat( + t.getCanvasElement().getBoundingClientRect().top, + "px" + ), + }, + content: (0, n.jsxs)(n.Fragment, { + children: [ + (0, n.jsx)(ei.XG, { size: ei.XJ.Middle }), + (0, n.jsx)("span", { + style: { paddingLeft: "8px" }, + children: a.ZP.t( + "homepage_tab_project_loading" + ), + }), + ], + }), + onCancel: () => { + m.hide(), e.closeModalHandler(); + }, + }) + ); + var g = yield (0, ed.po)(i.maskUrl); + if (g) { + var { canvas: _, context: y } = (0, ed.pv)({ + target: t.getCanvasElement(), + maskData: g, + }); + t.drawImage({ image: _ }), + t.recordFirstScreen( + y.getImageData(0, 0, _.width, _.height) + ), + m.hide(); + } + } + } + }); + return function (e, i) { + return t.apply(this, arguments); + }; + })() + ), + paintBrushSize: s, + }; + }, + em = (e) => { + var { paintBrushSize: t, brushSizeStorageKey: i } = e, + [n, a] = (0, r.useState)(t); + return { + brushSizeConfig: n, + onChangeBrushSize: (e, t) => { + if (!Array.isArray(e)) { + var n = { [Z.o4.Brush]: e, [Z.o4.Eraser]: e }; + B.T.setItem(i, JSON.stringify(n)), a(n); + } + }, + }; + }, + eg = i("37764"), + e_ = i("614854"), + ey = (e) => { + var { image: t, setup: i } = e, + n = (0, r.useRef)(null), + a = (0, r.useRef)(null), + o = (0, r.useRef)(Symbol("paint")), + [s, l] = (0, r.useState)(null), + c = (e) => { + var r, + a = + null === (r = n.current) || void 0 === r + ? void 0 + : r.changeMode(e); + !s && t && a && i(a, t), a && l(a); + }; + return ( + (0, r.useEffect)(() => { + var e = a.current; + if (!!e) { + var t = new eg.O({ container: e }); + return ( + t.registerMode(o.current, e_.o), + (n.current = t), + c(o.current), + () => { + t.destroy(); + } + ); + } + }, []), + { containerRef: a, paintModeInstance: s } + ); + }, + eb = (e) => { + var t, + { props: i } = e, + { item: n, extraParams: r } = i, + a = + null === (t = n.image.largeImages) || void 0 === t + ? void 0 + : t[0], + { setup: o, paintBrushSize: s } = ev(i), + { brushSizeStorageKey: l } = r, + { containerRef: c, paintModeInstance: d } = ey({ + setup: o, + image: a, + }), + { brushSizeConfig: u, onChangeBrushSize: f } = em({ + paintBrushSize: s, + brushSizeStorageKey: l, + }); + return { + containerRef: c, + paintModeInstance: d, + brushSizeConfig: u, + onChangeBrushSize: f, + }; + }; + i("900992"); + var eI = i("744932"), + ew = i("259455"), + ex = i("997166"), + eS = i("605682"), + eM = { + container: "container-iRY4v8", + promptWrap: "promptWrap-t9nycD", + promptContent: "promptContent-mV3Pch", + promptTextArea: "promptTextArea-FNznsv", + promptControlsWrap: "promptControlsWrap-RPlq5w", + }, + eC = i("4255"), + eT = i("472159"), + eA = i("780144"), + ek = i("699267"), + eP = i("434712"), + eE = i("369617"), + eD = 800, + eR = (e) => { + var { + scene: t, + prompt: i, + onClickGenerate: o, + onPromptChange: s, + onClickInputArea: l, + maxRows: c = 3, + isFocus: d = !0, + placeholder: u = "", + isDisabledInsertQuotationBtn: f = !1, + isShowInsertQuotationBtn: h = !1, + } = e, + p = (0, r.useRef)(null), + v = (0, r.useRef)(!1), + m = (0, ek.G)(eP.t), + g = (e) => { + s(e); + }, + _ = (e) => { + var t = "Enter"; + if (!!(e.key === t && !e.shiftKey)) + e.preventDefault(), + (0, ex.ti)(i) && !v.current && (o(), (v.current = !0)); + }, + y = () => { + null == l || l(); + }, + { handleInsertQuotes: b } = (0, eT.R)(i, s, p), + I = () => { + if (i.length + 2 > eD) { + eE.s.warning({ + id: "promptLimit", + content: a.ZP.t( + "video_prompt_length_limit", + { number0: eD }, + "Prompt length exceeds {number0} characters" + ), + }); + return; + } + b(), (0, eA.s)(m, { position: "post_edit_popup" }); + }; + return ( + (0, r.useEffect)(() => { + setTimeout(() => { + var e = p.current; + e && ((0, ew.K)(e.dom), d || e.blur()); + }); + }, [p]), + (0, n.jsxs)("div", { + className: eM.container, + children: [ + (0, n.jsxs)(eS.t, { + scene: t, + ignoreClickIntercept: !0, + className: eM.promptWrap, + children: [ + (0, n.jsx)(eI.Z.TextArea, { + ref: p, + className: eM.promptTextArea, + placeholder: u, + maxLength: eD, + autoSize: { maxRows: c }, + value: i, + onClick: y, + onChange: g, + onPressEnter: _, + }), + (0, n.jsx)("div", { + className: eM.promptContent, + style: { maxHeight: "".concat(24 * c, "px") }, + children: i || u, + }), + ], + }), + h && + (0, n.jsx)("div", { + className: eM.promptControlsWrap, + children: (0, n.jsx)(eC.F, { + disabled: f, + onClick: I, + style: { color: "var(--text-primary)" }, + }), + }), + ], + }) + ); + }, + eN = (e) => { + var t = (0, r.useRef)(e); + return ( + (0, r.useEffect)(() => { + t.current = e; + }, [e]), + [t] + ); + }, + eL = (e) => e === Z.o4.Brush || e === Z.o4.Eraser, + ej = i("934128"), + eO = (e) => { + var { paintModeInstance: t, brushSizeConfig: i, props: n } = e, + { item: a, tool: o, reportService: s, extraParams: l } = n, + { + dragInstance: c, + resizeInstance: d, + itemReportEventName: u = "inpaint_item", + } = l, + f = (0, ej.m)(c, "status") || D.L.Disable, + h = (0, ej.m)(d, "scale"), + [p, v] = (0, r.useState)(Z.o4.Brush), + m = (e) => { + v(e); + }, + g = (e) => { + m(e), + null == t || + t.updateMousePosition({ offsetX: "50%", offsetY: "50%" }), + eL(e) && + (0, K.Hj)({ + reportInpaintAction: Z.FD.Click, + reportDrawAction: Z.$h[e], + item: a, + tool: o, + reportService: s, + eventName: u, + }); + }; + (0, r.useEffect)(() => { + if (eL(p)) { + var e = (0, eu.j2)(i[p], h); + null == t || t.brush.changeBrushSize(e); + } + }, [p, i, h]), + (0, r.useEffect)(() => { + if (!!t && !![Z.o4.Brush, Z.o4.Eraser].includes(p)) + null == t || t.updateDrawAction(p); + }, [p, t]), + (0, r.useLayoutEffect)(() => { + p !== Z.o4.Move && c.changeStatus(D.L.Disable); + }, [p]), + (0, r.useLayoutEffect)(() => { + f === D.L.Active && m(Z.o4.Move), + [D.L.Active, D.L.Advent].includes(f) && + (null == t || + t.updateMousePosition({ + offsetX: "-9999px", + offsetY: "-9999px", + })); + }, [f, t]); + var [_, y] = (0, r.useState)(!1), + [b] = eN(p); + return ( + (0, r.useEffect)(() => { + if (!!t) + t.onPaintAction((e) => { + var { action: t } = e, + { current: i } = b; + i === Z.o4.Brush && t === x.T.EndPaint && y(!0), + eL(i) && + t === x.T.StartPaint && + (0, K.Hj)({ + reportInpaintAction: Z.FD.Use, + reportDrawAction: Z.$h[i], + item: a, + tool: o, + reportService: s, + eventName: u, + }); + }); + }, [t]), + { + drawAction: p, + updateDrawAction: m, + dragStatus: f, + switchDrawAction: g, + isUserDrawn: _, + } + ); + }, + eB = (e) => { + var t, + { props: i } = e, + { + item: n, + tool: a, + reportService: o, + extraParams: s, + overrideInitParams: l, + } = i, + [c, d] = (0, r.useState)( + null !== (t = null == l ? void 0 : l.prompt) && void 0 !== t + ? t + : "" + ), + { itemReportEventName: u = "inpaint_item" } = s; + return { + prompt: c, + updatePrompt: (e) => { + d(e); + }, + onClickInputArea: () => { + (0, K.Hj)({ + reportInpaintAction: Z.FD.Click, + reportDrawAction: Z.FB.Prompt, + item: n, + tool: a, + reportService: o, + eventName: u, + }); + }, + }; + }, + eF = i("474139"), + eU = i("475578"), + eG = i("168511"), + ez = i("936690"), + eV = i("441361"), + eW = i("379311"); + class eZ { + getEventParams() { + var { status: e, generateType: t, failReason: i } = this._params; + return { status: e, generate_type: t, fail_reason: i }; + } + constructor(e) { + (this._params = e), (this.eventName = "canvas_edit_generate"); + } + } + function eK(e, t) { + (0, eW.S$)(e, eZ, [t]); + } + var eH = i("460537"), + eq = (e) => { + var { + props: t, + prompt: i, + paintModeInstance: n, + brushSizeConfig: o, + drawAction: s, + } = e, + { + handleGenerate: l, + item: u, + containerService: f, + generateType: h, + record: p, + extraParams: v, + scene: m, + } = t, + { customMaskUpload: g } = v, + [_, y] = (0, r.useState)(!1), + [b] = eN(s), + [I, w] = (0, r.useState)({ [Z.o4.Brush]: !1, [Z.o4.Eraser]: !1 }), + S = (0, ez.Tu)(u.aigcImageParams.firstGenerateType); + (0, r.useEffect)(() => { + if (!!n) + n.onPaintAction((e) => { + var { action: t } = e, + { current: i } = b; + t === x.T.EndPaint && + w((e) => (0, d._)((0, c._)({}, e), { [i]: !0 })); + }); + }, [n]); + var M = (0, ec.default)((e) => ({ + isInpaintUploaded: eU.eD.False, + inpaintBrushSize: o[Z.o4.Brush], + inpaintEraserSize: o[Z.o4.Eraser], + isInpaintBrush: I[Z.o4.Brush] ? eU.eD.True : eU.eD.False, + isInpaintEraser: I[Z.o4.Eraser] ? eU.eD.True : eU.eD.False, + originPrompt: e, + })), + C = (e) => { + var { text2ImageParams: t, reportParam: n } = e, + r = (0, d._)((0, c._)({}, t), { prompt: i }); + if (!!f) { + var a = u.aigcImageParams.text2imageParams.prompt; + (0, eG.N)(f, { + generateType: h, + generateParam: r, + reportParam: n, + paintingReportParam: M(a), + scene: m, + benefits: [], + }); + } + }, + T = (function () { + var e = (0, el._)(function* () { + if (!!n && !_) { + if (p) { + var { text2ImageParams: e, reportParam: t } = p; + C({ text2ImageParams: e, reportParam: t }); + } + try { + var r = n.generatePaintContent(), + o = u.aigcImageParams.text2imageParams.prompt, + s = (0, eF.W)(i), + c = "" === s ? o : i; + if (!(0, ex.ti)(s, !0)) { + eK(null != f ? f : null, { + generateType: h, + status: eU.T9.Fail, + failReason: "prompt check failed", + }); + return; + } + if ((S && (c = "".concat(eV.qi).concat(c)), g)) { + y(!0), yield g(r); + var d = l( + "", + i, + { + imageUploadCostTime: 0, + prompt: c, + paintParams: M(o), + }, + { dataURL: r } + ); + yield Promise.resolve(d); + } else { + y(!0); + var v = Date.now(), + m = yield (0, ed.Ax)(r, f); + if (!m) throw Error("url is empty."); + var b = { + imageUploadCostTime: Date.now() - v, + prompt: c, + paintParams: M(o), + }, + I = l(m, i, b, { dataURL: r }); + yield Promise.resolve(I); + } + eK(null != f ? f : null, { + status: eU.T9.Success, + generateType: h, + }); + } catch (e) { + eE.s.warning( + a.oc.t( + "work_details_fail_retry", + {}, + "Something went wrong. Try again later." + ) + ), + eK(null != f ? f : null, { + status: eU.T9.Fail, + failReason: (0, eH.b)(e).message, + generateType: h, + }); + } + y(!1); + } + }); + return function () { + return e.apply(this, arguments); + }; + })(); + return { isGenerating: _, onGenerate: T }; + }, + eJ = i("733437"), + eY = i("182688"), + eQ = i("105789"), + eX = i.n(eQ), + e$ = (e) => { + var t, + i, + c, + d, + { + prompt: u, + updatePrompt: f, + onClickInputArea: h, + } = eB({ props: e }), + { + containerRef: p, + paintModeInstance: v, + brushSizeConfig: m, + onChangeBrushSize: g, + } = eb({ props: e, prompt: u }), + { + item: _, + extraParams: y, + initCallback: b, + scene: I, + promptInputScene: w, + record: x, + } = e, + { coverUrl: S = "" } = + null !== (c = null == _ ? void 0 : _.commonAttr) && void 0 !== c + ? c + : {}, + { + isUsePromptInput: M, + paintUITitle: C, + toolbarActionManager: T, + } = y, + A = + null === (t = _.image.largeImages) || void 0 === t + ? void 0 + : t[0], + { isModelSupportEtta: k, placeholder: P } = (0, r.useMemo)(() => { + var e, + { + actualPrompt: t, + prompt: i, + modelConfig: n, + } = null !== (e = null == x ? void 0 : x.text2ImageParams) && + void 0 !== e + ? e + : {}, + r = (0, eY.DR)(null == n ? void 0 : n.feats), + o = t || i || ""; + return { + isModelSupportEtta: r, + placeholder: (0, eY.h5)( + o, + a.oc.t( + "ratio_inpaint_description", + {}, + "Describe the content you want to inpaint, or the image will be generated based on the original prompt" + ), + r + ), + }; + }, [x]), + E = + null !== + (d = + null === + (i = (0, eJ.k)(T, (e) => ({ + loadSaliencySEGFinished: + e.observableData.loadSaliencySEGFinished, + }))) || void 0 === i + ? void 0 + : i.loadSaliencySEGFinished) && + void 0 !== d && + d, + { + drawAction: D, + switchDrawAction: R, + dragStatus: N, + isUserDrawn: L, + } = eO({ paintModeInstance: v, brushSizeConfig: m, props: e }), + { isGenerating: j, onGenerate: O } = eq({ + props: e, + prompt: u, + paintModeInstance: v, + brushSizeConfig: m, + drawAction: D, + }), + [B, F] = (0, r.useState)(!L); + (0, r.useEffect)(() => { + F(!L); + }, [L]), + (0, r.useEffect)(() => { + null == v || + v.onDrawImage(() => { + F(!1); + }); + }, [v]), + (0, r.useEffect)(() => { + v && (null == b || b({ paintModeInstance: v })); + }, [v]); + var U = (0, r.useMemo)( + () => + (0, n.jsx)(eS.t, { + scene: I, + children: (e) => + (0, n.jsx)(o.J, { + loading: j, + onClick: O, + className: l.generateButton, + text: a.oc.t("tool_button_generate_bottom"), + SuffixIcon: () => + (0, n.jsxs)(n.Fragment, { + children: [ + (0, n.jsx)(s.p88, { className: l.suffixIcon }), + e.needCredits, + ], + }), + disabled: B, + }), + }), + [I, j, O, B] + ); + return (0, n.jsxs)("div", { + className: l.contentContainer, + children: [ + (0, n.jsx)("div", { className: l.title, children: C }), + (0, n.jsxs)("div", { + className: l.paintContainer, + children: [ + (0, n.jsx)(es, { url: S, image: A, paintProps: e, ref: p }), + (0, n.jsx)(J, { + paintModeInstance: v, + paintProps: e, + brushSizeConfig: { + brushSize: m[Z.o4.Brush], + eraserSize: m[Z.o4.Eraser], + onChangeBrushSize: g, + }, + statusConfig: { + drawAction: D, + dragStatus: N, + switchDrawAction: R, + }, + loadSaliencySEGFinished: E, + }), + ], + }), + M && + (0, n.jsx)("div", { + className: eX()(l.textArea, { [l.withBtn]: k }), + children: (0, n.jsx)(eR, { + scene: w, + prompt: u, + placeholder: P, + isFocus: !1, + onPromptChange: f, + onClickGenerate: O, + onClickInputArea: h, + maxRows: k ? 2 : 3, + isShowInsertQuotationBtn: k, + }), + }), + (0, n.jsx)("button", { + style: { position: "absolute", visibility: "hidden" }, + }), + (0, n.jsxs)("div", { + className: l.bottomContainer, + children: [(0, n.jsx)("div", {}), U], + }), + ], + }); + }; + }, + 106456: function (e, t, i) { + "use strict"; + i.d(t, { + CL: function () { + return c; + }, + j2: function () { + return u; + }, + sd: function () { + return d; + }, + }); + var n = i(532128), + r = i(925367), + a = i(200953), + o = { [r.o4.Brush]: r.KE, [r.o4.Eraser]: r.KE }, + { k: s, b: l } = (0, a.j)({ x: r.zt, y: r.Up }, { x: r.fx, y: r.pb }); + function c(e) { + return (0, n.c)({ + key: e, + defaultSize: o, + sizeLimit: { max: r.fx, min: r.zt }, + }); + } + function d(e) { + try { + if (!Object.keys(e).some((e) => ["brush", "eraser"].includes(e))) + return e; + return { [r.o4.Brush]: e.brush, [r.o4.Eraser]: e.eraser }; + } catch (e) { + return o; + } + } + function u(e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 1; + return (s * e + l) / Math.abs(t); + } + }, + 979870: function (e, t, i) { + "use strict"; + i.d(t, { + BT: function () { + return l; + }, + Bo: function () { + return c; + }, + Hj: function () { + return d; + }, + }); + var n = i(625572), + r = i(639880), + a = i(128468), + o = i(925367), + s = i(202455); + function l(e) { + var t, + { aigcImageParams: i, commonAttr: n } = e; + return { + generate_id: i.generateId, + request_id: i.requestId, + picture_id: n.id, + page: e.mode === a.JU.Story ? "aigc_story" : void 0, + image_source: + null !== (t = e.image.source) && void 0 !== t ? t : s.b.Aigc, + }; + } + function c(e, t, i, a) { + var s = + arguments.length > 4 && void 0 !== arguments[4] + ? arguments[4] + : "inpaint_item"; + if (!!a) { + var c = l(e); + i.forEach((e) => { + a.reportBusinessEvent( + s, + (0, r._)((0, n._)({}, c), { action: o.FD.Show, item: e, tool: t }) + ); + }); + } + } + function d(e) { + var { + reportInpaintAction: t, + reportDrawAction: i, + item: a, + tool: o, + value: s, + reportService: c, + eventName: d = "inpaint_item", + } = e, + u = l(a); + null == c || + c.reportBusinessEvent( + d, + (0, r._)((0, n._)({}, u), { action: t, item: i, tool: o, value: s }) + ); + } + }, + 40853: function (e, t, i) { + "use strict"; + i.d(t, { Z: () => b }); + var n = i("625572"), + r = i("772322"); + i("245535"); + var a = i("76894"); + i("218571"); + var o = i("925367"), + s = i("114979"), + l = i("979870"), + c = i("44938"), + d = i("586167"), + u = new (i("950466").Qd)(), + f = new d.D(), + h = i("949274"), + p = i("188754"), + v = i("570878"), + m = i("699267"), + g = i("487736"), + _ = i("799108"), + y = i("259435"); + function b(e) { + var { + tool: t, + item: i, + generateType: d, + overrideInitParams: b, + handleGenerate: I, + reportService: w, + record: x, + containerService: S, + extraParams: M, + modalProps: C = {}, + } = e, + T = [ + o.FB.Brush, + o.FB.Eraser, + o.FB.Redo, + o.FB.Undo, + o.FB.Prompt, + o.FB.Move, + ]; + (0, l.Bo)(i, t, T, w); + var A = (0, y.C)(S, g.M.InPaintRepaintModal), + k = a.Z.info( + (0, n._)( + { + className: "mwebStandardPaintModalContainer", + footer: null, + maskClosable: !1, + focusLock: !0, + afterClose: () => { + A.unmount(); + }, + closeIcon: (0, r.jsx)(p.Rnl, { className: v.Z.closeBtn }), + content: (0, r.jsx)(m.$, { + instantiationService: S, + children: (0, r.jsx)(s.I, { + tool: t, + item: i, + generateType: d, + reportService: w, + containerService: S, + record: x, + scene: _.hO.ImageInPaintRepaintButton, + promptInputScene: _.hO.ImageInPaintRepaintTextArea, + handleGenerate: I, + closeModalHandler: () => { + k.close(); + }, + extraParams: (0, n._)( + { + brushSizeStorageKey: c.u.inpaintBrushSize, + dragInstance: f, + resizeInstance: u, + firstEntryParams: { + storageKey: c.u.isBeenOpenedInpaint, + message: h.oc.t( + "t2i_eraser_swap", + {}, + "Brush the area you want to inpaint" + ), + }, + paintUITitle: h.oc.t("t2i_eraser1", {}, "Inpaint"), + isUsePromptInput: !0, + }, + M + ), + overrideInitParams: b, + }), + }), + }, + C + ) + ); + return k; + } + }, + 480963: function (e, t, i) { + "use strict"; + i.d(t, { B: () => b }); + var n = i("625572"), + r = i("772322"); + i("245535"); + var a = i("76894"); + i("218571"); + var o = i("925367"), + s = i("979870"), + l = i("114979"), + c = i("44938"), + d = i("586167"), + u = new (i("950466").Qd)(), + f = new d.D(), + h = i("949274"), + p = i("188754"), + v = i("570878"), + m = i("699267"), + g = i("487736"), + _ = i("799108"), + y = i("259435"), + b = (e) => { + var { + tool: t, + item: i, + generateType: d, + overrideInitParams: b, + handleGenerate: I, + reportService: w, + record: x, + containerService: S, + extraParams: M, + modalProps: C = {}, + } = e, + T = [o.FB.Brush, o.FB.Eraser, o.FB.Redo, o.FB.Undo, o.FB.Move]; + (0, s.Bo)(i, t, T, w); + var A = (0, y.C)(S, g.M.InPaintEraserModal), + k = a.Z.info( + (0, n._)( + { + className: "mwebStandardPaintModalContainer", + footer: null, + maskClosable: !1, + afterClose: () => { + A.unmount(); + }, + closeIcon: (0, r.jsx)(p.Rnl, { className: v.Z.closeBtn }), + content: (0, r.jsx)(m.$, { + instantiationService: S, + children: (0, r.jsx)(l.I, { + item: i, + tool: t, + generateType: d, + reportService: w, + containerService: S, + record: x, + scene: _.hO.ImageInPaintEraserButton, + promptInputScene: _.hO.ImageInPaintEraserTextArea, + handleGenerate: I, + closeModalHandler: () => { + k.close(); + }, + overrideInitParams: b, + extraParams: (0, n._)( + { + brushSizeStorageKey: c.u.inpaintBrushSize, + dragInstance: f, + resizeInstance: u, + firstEntryParams: { + storageKey: c.u.isBeenOpenedInpaint, + message: h.oc.t( + "t2i_eraser_swap", + {}, + "Brush the area you want to inpaint" + ), + }, + paintUITitle: h.oc.t( + "reprompt_eilminate", + {}, + "Remove" + ), + }, + M + ), + }), + }), + }, + C + ) + ); + return k; + }; + }, + 533278: function (e, t, i) { + "use strict"; + i.d(t, { + z: function () { + return a; + }, + }); + var n = i(772322); + i(894672); + var r = i(274993), + a = (e) => { + var { + icon: t, + tips: i, + containerStyle: a = {}, + className: o = "", + } = e, + s = (0, n.jsx)("div", { style: a, className: o, children: t }); + return i ? (0, n.jsx)(r.Z, { content: i, children: s }) : s; + }; + }, + 592326: function (e, t, i) { + "use strict"; + function n(e) { + return class extends e { + constructor(...e) { + super(...e), + (this.observers = new Map()), + (this.on = (e, t) => { + var i = this.observers.get(e); + !i && ((i = new Set()), this.observers.set(e, i)), i.add(t); + }), + (this.off = (e, t) => { + if (!t) { + this.observers.delete(e); + return; + } + var i = this.observers.get(e); + if (!!i) i.delete(t); + }), + (this.clear = () => { + this.observers.clear(); + }), + (this.notify = (e, t) => { + var i = this.observers.get(e); + null == i || i.forEach((e) => e(t)); + }); + } + }; + } + i.d(t, { + C: function () { + return n; + }, + }); + }, + 37764: function (e, t, i) { + "use strict"; + i.d(t, { + O: function () { + return n; + }, + }); + class n { + get currentMode() { + return this._currentMode; + } + get modeInstances() { + return this._modeInstances; + } + registerMode(e, t) { + this._modes.set(e, t); + } + _resolve(e) { + var t = this._modes.get(e); + if (!t) return; + var i = this._modeInstances.get(e); + if (i) return i; + if ( + !!this._container && + ((i = new t({ container: this._container })), !!1) + ) + return this._modeInstances.set(e, i), i; + } + isInvalidKey(e) { + return null == e || "" === e; + } + changeMode(e) { + var t = this._container; + if ( + (null === (i = this._currentMode) || void 0 === i || i.hide(), + !t || this.isInvalidKey(e)) + ) + return null; + try { + var i, + n, + r = this._resolve(e); + return ( + (this._currentMode = r), + null === (n = this._currentMode) || void 0 === n || n.show(), + r + ); + } catch (e) { + return null; + } + } + destroy() { + this._modeInstances.forEach((e) => e.destroy()), + (this._currentMode = void 0), + this._modes.clear(), + this._modeInstances.clear(), + (this._container = null); + } + constructor(e) { + (this._modes = new Map()), (this._modeInstances = new Map()); + var { container: t } = e; + this._container = t; + } + } + }, + 867644: function (e, t, i) { + "use strict"; + i.d(t, { + x: function () { + return n; + }, + }); + class n { + constructor(e) { + var { container: t } = e; + this._container = t; + } + } + }, + 749623: function (e, t, i) { + "use strict"; + i.d(t, { + T: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e[(e.StartPaint = 0)] = "StartPaint"), + (e[(e.EndPaint = 1)] = "EndPaint"), + e + ); + })({}); + }, + 614854: function (e, t, i) { + "use strict"; + i.d(t, { o: () => T }); + var n = i("867644"), + r = i("789786"), + a = i("592326"), + o = 1, + s = "#000000"; + class l { + get brushSize() { + return this._brushSize; + } + set brushSize(e) { + (this._brushSize = e), this.notify("brushSize", e); + } + get brushColor() { + return this._brushColor; + } + set brushColor(e) { + (this._brushColor = e), this.notify("brushColor", e); + } + get lastPosition() { + return this._lastPosition; + } + set lastPosition(e) { + this._lastPosition = e; + } + get mousePosition() { + return this._mousePosition; + } + set mousePosition(e) { + (this._mousePosition = e), this.notify("mousePosition", e); + } + get isDraw() { + return this._isDraw; + } + set isDraw(e) { + this._isDraw = e; + } + constructor() { + (this._brushSize = o), + (this._brushColor = s), + (this._lastPosition = { lastX: 0, lastY: 0 }), + (this._mousePosition = { offsetX: "50%", offsetY: "50%" }), + (this._isDraw = !1); + } + } + l = (0, r.gn)([a.C], l); + var c = 100; + class d { + get undoStack() { + return this._undoStack; + } + set undoStack(e) { + (this._undoStack = e), this.notify("undoStack", e); + } + get redoStack() { + return this._redoStack; + } + set redoStack(e) { + (this._redoStack = e), this.notify("redoStack", e); + } + get undoCount() { + return this.undoStack.length; + } + get redoCount() { + return this.redoStack.length; + } + execute(e) { + (this.undoStack = [...this.undoStack, e]), (this.redoStack = []); + } + undo() { + var e = this.undoStack.pop(); + if (((this.undoStack = [...this.undoStack]), !!e)) + return ( + (this.redoStack = [...this.redoStack, e]), this.undoStack.at(-1) + ); + } + redo() { + var e = this.redoStack.pop(); + if (((this.redoStack = [...this.redoStack]), !!e)) + return (this.undoStack = [...this.undoStack, e]), e; + } + reset() {} + clearStack() { + (this.redoStack = []), (this.undoStack = []); + } + constructor(e = {}) { + (this._undoStack = []), (this._redoStack = []); + var { limit: t = c } = e; + this.limit = t; + } + } + d = (0, r.gn)( + [ + a.C, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + "undefined" == typeof ICommandStackParams + ? Object + : ICommandStackParams, + ]), + ], + d + ); + class u { + get container() { + return this._container; + } + get paths() { + return this._paths; + } + set paths(e) { + this._paths = e; + } + get isVisible() { + return this._isVisible; + } + set isVisible(e) { + (this._isVisible = e), this.notify("isVisible", e); + } + get canvasOriginScale() { + return this._canvasOriginScale; + } + set canvasOriginScale(e) { + this._canvasOriginScale = e; + } + get canvasOriginSize() { + return this._canvasOriginSize; + } + set canvasOriginSize(e) { + this._canvasOriginSize = e; + } + constructor(e) { + (this._paths = []), + (this._isVisible = !1), + (this._canvasOriginScale = 1), + (this._canvasOriginSize = { width: 0, height: 0 }); + var { container: t } = e; + (this._container = t), + (this.brushModel = new l()), + (this.commandMangerModel = new d()); + } + } + u = (0, r.gn)( + [ + a.C, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + "undefined" == typeof IPaintModelParams + ? Object + : IPaintModelParams, + ]), + ], + u + ); + var f = i("870599"); + class h { + _initUI() { + this.updateMouseUIPosition(this._model.brushModel.mousePosition); + } + _initListener() { + this._model.brushModel.on( + "mousePosition", + this.updateMouseUIPosition.bind(this) + ); + } + updateMouseUIPosition(e) { + var t = this._roundMouseElement, + { offsetX: i, offsetY: n } = e; + "number" == typeof i && (i = "".concat(i, "px")), + "number" == typeof n && (n = "".concat(n, "px")), + (0, f.K)(t, { left: i, top: n }), + this.changeVisible(!0); + } + handleInnerContainer(e) { + (0, f.K)(e, { cursor: "none" }); + } + updateRoundSize(e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : this._roundMouseElement, + i = 2 * e; + (0, f.K)(t, { + width: "".concat(i, "px"), + height: "".concat(i, "px"), + }); + } + changeVisible(e) { + this._roundMouseElement.style.display = e ? "block" : "none"; + } + constructor(e) { + var { radius: t, innerContainer: i, model: n } = e; + this._model = n; + var r = document.createElement("div"); + (0, f.K)(r, { + position: "absolute", + borderRadius: "50%", + boxShadow: "inset 0px 0px 5px 0px var(--text-primary)", + transform: "translate(-50%, -50%)", + }), + this.updateRoundSize(t, r), + i.appendChild(r), + this.handleInnerContainer(i), + (this._roundMouseElement = r), + this._initUI(), + this._initListener(); + } + } + function p(e, t) { + return Math.round(e * Math.pow(10, t)) / Math.pow(10, t); + } + var v = i("356868"), + m = i("925367"), + g = 1024, + _ = (e) => { + var { width: t, height: i } = e, + n = Math.max(t, i), + r = 1; + return n > g && (r = g / n), r; + }, + y = { + [m.o4.Brush]: "xor", + [m.o4.Eraser]: "destination-out", + [m.o4.Move]: "xor", + [m.o4.Select]: "xor", + }, + b = () => ({ + type: m.o4.Brush, + points: [], + lineWidth: 1, + lineCap: "round", + strokeStyle: "", + lineJoin: "round", + }); + class I { + get canvasElement() { + return this._canvasElement; + } + get context2D() { + return this._context2D; + } + get path() { + return this._path; + } + get offlineCanvas() { + return this._offlineCanvas; + } + get actionType() { + return this._actionType; + } + _reduceCanvasSize(e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : this._canvasElement; + (this._model.canvasOriginScale = _({ + width: e.width, + height: e.height, + })), + (t.width = e.width * this._model.canvasOriginScale), + (t.height = e.height * this._model.canvasOriginScale), + (this._model.canvasOriginSize = { + width: e.width, + height: e.height, + }); + } + updateDrawAction(e) { + this._actionType = e; + } + changeCanvasSize(e) { + var { _canvasElement: t } = this; + (t.width = e.width), + (t.height = e.height), + this._reduceCanvasSize(e), + this.initContext(); + } + changeCanvasContainerSize(e) { + var { _canvasElement: t, _listenerLayer: i } = this; + this.containerSize = e; + var { width: n, height: r } = e; + (0, f.K)(this.innerContainer, { + width: "".concat(n, "px"), + height: "".concat(r, "px"), + }), + (t.style.width = "".concat(n, "px")), + (t.style.height = "".concat(r, "px")), + (i.style.width = "".concat(n, "px")), + (i.style.height = "".concat(r, "px")), + this.changeCanvasScale(t.width / n); + } + changeCanvasScale(e) { + var t = this._scaleRatio; + t > 0 && this._context2D.scale(1 / t, 1 / t); + var i = p(e, 2); + this._context2D.scale(i, i), (this._scaleRatio = i); + } + initContext() { + (this._context2D.lineCap = this._lineCap), + (this._context2D.lineJoin = this._lineJoin); + } + _createDivElement() { + return document.createElement("div"); + } + _createCanvasElement() { + return ( + (this._offlineCanvas = new v.E(0, 0)), + { + canvasElement: this._offlineCanvas.element, + context2D: this._offlineCanvas.element.getContext("2d"), + } + ); + } + _initInnerContainer(e, t) { + var { containerSize: i, innerContainer: n } = e, + { container: r } = t; + (0, f.K)(n, { + position: "relative", + width: "".concat(i.width, "px"), + height: "".concat(i.height, "px"), + }), + r.appendChild(n); + } + _initCanvasElement(e, t) { + var { canvasElement: i, innerContainer: n } = e, + { container: r } = t, + a = r.getBoundingClientRect(); + this._reduceCanvasSize(a, i), n.appendChild(i); + } + _initListenerLayer(e) { + var { containerSize: t, listenerLayer: i, innerContainer: n } = e; + (0, f.K)(i, { + width: "".concat(t.width, "px"), + height: "".concat(t.height, "px"), + position: "absolute", + top: "0px", + left: "0px", + }), + n.appendChild(i); + } + _initListener() { + this._model.brushModel.on("brushSize", (e) => { + this.changeLineWidth(e), this.roundMouse.updateRoundSize(e); + }), + this._model.on( + "isVisible", + this.changeInnerContainerVisible.bind(this) + ), + this._model.brushModel.on( + "brushColor", + this.changeStrokeStyle.bind(this) + ); + } + resetPath() { + this._path = b(); + } + updatePathType(e) { + this._path.type = e; + } + changeLineWidth(e) { + (this._context2D.lineWidth = 2 * e), (this._lineWidth = 2 * e); + } + changeStrokeStyle(e) { + (this._context2D.strokeStyle = e), (this._strokeStyle = e); + } + moveTo(e, t) { + this._context2D.moveTo(e, t); + } + beginPath() { + this._context2D.beginPath(); + } + closePath() { + this._context2D.closePath(); + } + drawLine(e) { + var { offsetX: t, offsetY: i } = e; + this._model.brushModel.mousePosition = { offsetX: t, offsetY: i }; + var { brushModel: n } = this._model, + r = this._context2D, + { isDraw: a } = n; + if (!!a) { + var { lastPosition: o } = n; + r.save(), + (r.globalCompositeOperation = y[this._actionType]), + (r.lineWidth = this._lineWidth), + (r.strokeStyle = this._strokeStyle), + r.lineTo(t, i), + r.stroke(), + r.restore(); + var { width: s, height: l } = this.containerSize; + this.path.points.push([t / s, i / l]), + Object.assign(this.path, { + type: this._actionType, + strokeStyle: this._strokeStyle, + lineWidth: this._lineWidth, + lineCap: this._lineCap, + lineJoin: this._lineJoin, + }), + (o.lastX = t), + (o.lastY = i); + } + } + drawImage(e) { + var { containerSize: t } = this, + { + image: i, + x: n = 0, + y: r = 0, + width: a = t.width, + height: o = t.height, + } = e, + s = this._context2D; + s.save(), + (s.imageSmoothingEnabled = !0), + (s.imageSmoothingQuality = "high"), + (s.globalCompositeOperation = "xor"), + s.drawImage(i, n, r, a, o), + s.restore(); + } + drawPaths(e) { + var t = this._context2D, + { width: i, height: n } = this.containerSize; + e.forEach((e) => { + var { points: r, type: a, lineWidth: o, strokeStyle: s } = e; + t.save(), + (t.globalCompositeOperation = y[a]), + (t.filter = "blur(1px)"), + (t.lineWidth = o), + (t.strokeStyle = s), + t.beginPath(); + for (var l = 0; l < r.length; l++) { + var c = r[l], + d = c[0] * i, + u = c[1] * n; + 0 === l ? t.moveTo(d, u) : t.lineTo(d, u), t.stroke(); + } + t.restore(); + }); + } + changeInnerContainerVisible(e) { + (0, f.K)(this.innerContainer, { display: e ? "block" : "none" }); + } + clearRect() { + var { width: e, height: t } = this.containerSize; + this._context2D.clearRect(0, 0, e, t); + } + getListenerLayer() { + return this._listenerLayer; + } + constructor(e) { + (this._scaleRatio = -1), + (this._path = b()), + (this._actionType = m.o4.Brush), + (this._lineWidth = 1), + (this._lineCap = "round"), + (this._lineJoin = "round"), + (this._strokeStyle = ""); + var { model: t, container: i } = e; + this._model = t; + var n = i.getBoundingClientRect(), + r = { width: Math.round(n.width), height: Math.round(n.height) }; + this.containerSize = r; + var a = this._createDivElement(); + this._initInnerContainer({ containerSize: r, innerContainer: a }, e), + (this.innerContainer = a); + var { canvasElement: o, context2D: s } = this._createCanvasElement(); + this._initCanvasElement({ canvasElement: o, innerContainer: a }, e), + (this._canvasElement = o), + (this._context2D = s), + this.initContext(), + (this.roundMouse = new h({ + radius: t.brushModel.brushSize, + innerContainer: a, + model: t, + })); + var l = this._createDivElement(); + this._initListenerLayer({ + containerSize: r, + listenerLayer: l, + innerContainer: a, + }), + (this._listenerLayer = l), + this._initListener(); + } + } + class w { + get firstScreenContent() { + return this._firstScreenContent; + } + clearRect() { + this._view.clearRect(); + } + readSnapshotData() { + var { canvasElement: e } = this._view; + return e.toDataURL("image/png", 1); + } + drawMask(e) { + if (!!e) { + var { originImageData: t } = e, + { canvasElement: i } = this._view, + n = document.createElement("canvas"); + (n.width = t.width), + (n.height = t.height), + n.getContext("2d").putImageData(t, 0, 0), + this._view.clearRect(), + this._view.drawImage({ image: n }), + (n.width = 0), + (n.height = 0); + } + } + drawPaths(e) { + if (!!e) { + var { paths: t } = e; + this.drawMask(this._firstScreenContent), this._view.drawPaths(t); + } + } + recordFirstScreen(e) { + if (!this._firstScreenContent) + this._firstScreenContent = { originImageData: e }; + } + synchronizeCommandData() { + try { + var e = { paths: [...this._model.paths, this._view.path] }; + this._model.paths.push(this._view.path), + this._model.commandMangerModel.execute(e); + } catch (e) {} + } + execUndo() { + var e = this._model.commandMangerModel.undo(); + e ? (this._model.paths = [...e.paths]) : (this._model.paths = []); + var t = this._firstScreenContent; + if (!e && t) { + this.drawMask(t); + return; + } + if ((this.execClear(), e)) { + this.drawPaths(e); + return; + } + } + execRedo() { + var e = this._model.commandMangerModel.redo(); + if (!!e) + this.execClear(), + e && ((this._model.paths = [...e.paths]), this.drawPaths(e)); + } + execClear() { + var e = + arguments.length > 0 && void 0 !== arguments[0] && arguments[0]; + if (e) { + var t = this._firstScreenContent; + this.drawMask(t), + (this._model.paths = []), + this._model.commandMangerModel.clearStack(); + } else this.clearRect(); + } + getCommandData() { + var { redoStack: e, undoStack: t } = this._model.commandMangerModel; + return { redoStack: e, undoStack: t }; + } + constructor(e) { + var { model: t, view: i } = e; + (this._model = t), (this._view = i); + } + } + var x = i("749623"); + class S { + getCanvasElement() { + return this._view.canvasElement; + } + getCanvasContext2D() { + return this._view.context2D; + } + getOfflineCanvas() { + return this._view.offlineCanvas; + } + getPaths() { + return this._model.paths; + } + handleEndDrawing() { + this._isDrawing && + (this.notify("onPaintAction", { action: x.T.EndPaint }), + (this._isDrawing = !1)), + (this._model.brushModel.isDraw = !1); + } + updateDrawAction(e) { + this._view.updateDrawAction(e); + } + handleMousedown(e) { + this.notify("onPaintAction", { action: x.T.StartPaint }), + this._view.resetPath(), + (this._isDrawing = !0), + (this._model.brushModel.isDraw = !0), + (this._model.brushModel.lastPosition = { + lastX: e.offsetX, + lastY: e.offsetY, + }), + this._view.beginPath(), + this._view.moveTo(e.offsetX, e.offsetY); + } + handleMousemove(e) { + this._view.drawLine(e); + } + handleMouseup(e) { + if (!!this._model.brushModel.isDraw) { + var { lastX: t, lastY: i } = this._model.brushModel.lastPosition, + { offsetX: n, offsetY: r } = e; + n === t && r === i && this._view.drawLine(e), + this._view.closePath(), + this.handleEndDrawing(), + this.commandMangerController.synchronizeCommandData(); + } + } + handleMouseover(e) { + this._view.roundMouse.changeVisible(!0), + (this._model.brushModel.lastPosition = { + lastX: e.offsetX, + lastY: e.offsetY, + }); + } + getInnerContainer() { + return this._view.innerContainer; + } + handleMouseout() { + this._view.roundMouse.changeVisible(!1); + } + getContainerSize() { + return this._view.containerSize; + } + handleCanvasVisible(e) { + this._model.isVisible = e; + } + handleBrushSize(e) { + this._model.brushModel.brushSize = e; + } + handleBrushColor(e) { + this._model.brushModel.brushColor = e; + } + getBrushColor() { + return this._model.brushModel.brushColor; + } + generatePaintContent() { + var e = + arguments.length > 0 && void 0 !== arguments[0] + ? arguments[0] + : 0.8, + { offscreenCanvas: t } = this.getOriginSizeCanvas(); + return t.toDataURL("image/png", e); + } + getImageData() { + var e = this._view.canvasElement; + return this._view.context2D.getImageData(0, 0, e.width, e.height); + } + getOriginSizeCanvas() { + var { firstScreenContent: e } = this.commandMangerController, + { canvasElement: t } = this._view, + i = document.createElement("canvas"), + n = i.getContext("2d"); + if ( + ((i.width = this._model.canvasOriginSize.width), + (i.height = this._model.canvasOriginSize.height), + e) + ) { + var { originImageData: r } = e; + (i.width = r.width), + (i.height = r.height), + r instanceof HTMLImageElement + ? n.drawImage(r, 0, 0) + : n.putImageData(r, 0, 0); + } + return ( + (n.strokeStyle = this._view.context2D.strokeStyle), + this._model.paths.forEach((e) => { + var { + points: t, + type: r, + lineWidth: a, + lineCap: o, + strokeStyle: s, + lineJoin: l, + } = e; + n.beginPath(), + n.save(), + (n.globalCompositeOperation = y[r]), + (n.lineWidth = + a * + (this._view.canvasElement.width / + parseFloat(this._view.canvasElement.style.width)) * + (1 / this._model.canvasOriginScale)), + (n.lineJoin = l), + (n.lineCap = o), + (n.strokeStyle = s), + r === m.o4.Eraser && (n.strokeStyle = "#ffffff"); + for (var c = 0; c < t.length; c++) { + var d = t[c], + u = d[0] * i.width, + f = d[1] * i.height; + 0 === c ? n.moveTo(u, f) : n.lineTo(u, f); + } + n.stroke(), n.restore(); + }), + { offscreenCanvas: i, offscreenCtx: n } + ); + } + getOriginSnapshotImageData() { + var e; + return null === + (e = this.commandMangerController.firstScreenContent) || + void 0 === e + ? void 0 + : e.originImageData; + } + changeCanvasSize(e) { + this._view.changeCanvasSize(e); + } + changeCanvasContainerSize(e) { + this._view.changeCanvasContainerSize(e); + } + onCommandMangerModel(e, t) { + this._model.commandMangerModel.on(e, t); + } + drawImage(e) { + this._view.drawImage(e); + } + drawPaths(e) { + this._view.drawPaths(e); + } + recordFirstScreen(e) { + this.commandMangerController.recordFirstScreen(e); + } + clearCanvas() { + var e = + arguments.length > 0 && void 0 !== arguments[0] && arguments[0]; + this.commandMangerController.execClear(e); + } + updateMousePosition(e) { + this._model.brushModel.mousePosition = e; + } + constructor(e) { + var { model: t, view: i } = e; + (this._model = t), + (this._view = i), + (this.commandMangerController = new w(e)), + (this._isDrawing = !1); + } + } + S = (0, r.gn)( + [ + a.C, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + "undefined" == typeof IPaintControllerParams + ? Object + : IPaintControllerParams, + ]), + ], + S + ); + class M { + _getBindContainer() { + return this._view.getListenerLayer(); + } + _getEvents() { + return Object.keys(this._listener); + } + bind() { + var e = this._getBindContainer(), + t = this._listener; + this._getEvents().forEach((i) => { + var n = t[i]; + if ("mouseup" === i) { + var r = "onpointerup" in window ? "pointerup" : "mouseup"; + window.addEventListener(r, n); + } else e.addEventListener(i, n); + }); + } + unbind() { + var e = this._getBindContainer(), + t = this._listener; + this._getEvents().forEach((i) => { + var n = t[i]; + if ("mouseup" === i) { + var r = "onpointerup" in window ? "pointerup" : "mouseup"; + window.removeEventListener(r, n); + } else e.removeEventListener(i, n); + }); + } + constructor(e) { + this._listener = {}; + var { view: t, controller: i } = e; + (this._view = t), + (this._controller = i), + (this._listener.mousedown = i.handleMousedown.bind(i)), + (this._listener.mousemove = i.handleMousemove.bind(i)), + (this._listener.mouseup = i.handleMouseup.bind(i)), + (this._listener.mouseover = i.handleMouseover.bind(i)), + (this._listener.mouseout = i.handleMouseout.bind(i)); + } + } + class C { + changeBrushSize(e) { + this._controller.handleBrushSize(e); + } + changeBrushColor(e) { + this._controller.handleBrushColor(e); + } + getBrushColor() { + var e = this._controller.getBrushColor(); + return "string" == typeof e ? e : ""; + } + constructor(e) { + var { controller: t } = e; + this._controller = t; + } + } + class T extends n.x { + getCanvasElement() { + return this._controller.getCanvasElement(); + } + getCanvasContext2D() { + return this._controller.getCanvasContext2D(); + } + show() { + this._controller.handleCanvasVisible(!0); + } + hide() { + this._controller.handleCanvasVisible(!1); + } + redo() { + this._controller.commandMangerController.execRedo(); + } + undo() { + this._controller.commandMangerController.execUndo(); + } + generatePaintContent() { + return this._controller.generatePaintContent(1); + } + getImageData() { + return this._controller.getImageData(); + } + getOriginSnapshotImageData() { + return this._controller.getOriginSnapshotImageData(); + } + getPaths() { + return this._controller.getPaths(); + } + getContainerSize() { + return this._controller.getContainerSize(); + } + changeCanvasSize(e) { + this._controller.changeCanvasSize(e); + } + changeCanvasContainerSize(e) { + this._controller.changeCanvasContainerSize(e); + } + drawImage(e) { + this._controller.drawImage(e), + this._controller.notify("onDrawImage", e); + } + drawPaths(e) { + this._controller.drawPaths(e); + } + recordFirstScreen(e) { + this._controller.recordFirstScreen(e); + } + clearCanvas() { + var e = + arguments.length > 0 && void 0 !== arguments[0] && arguments[0]; + this._controller.clearCanvas(e); + } + onCommandMangerModel(e, t) { + this._controller.onCommandMangerModel(e, t); + } + onPaintAction(e) { + this._controller.on("onPaintAction", e); + } + onDrawImage(e) { + this._controller.on("onDrawImage", e); + } + updateMousePosition(e) { + this._controller.updateMousePosition(e); + } + updateDrawAction(e) { + this._controller.updateDrawAction(e); + } + getCommandData() { + return this._controller.commandMangerController.getCommandData(); + } + getModel() { + return this._model; + } + destroy() { + this._bindListener.unbind(); + var e, + t = this._container, + i = this._controller.getInnerContainer(); + t.removeChild(i), + null === (e = this._controller.getOfflineCanvas()) || + void 0 === e || + e.destroy(); + } + constructor(e) { + super(e); + var { container: t } = e, + i = new u({ container: t }), + n = new I({ model: i, container: t }), + r = new S({ model: i, view: n }); + (this._controller = r), + (this._model = i), + (this._bindListener = new M({ controller: r, view: n })), + this._bindListener.bind(), + (this.brush = new C({ controller: this._controller })); + } + } + }, + 429398: function (e, t, i) { + "use strict"; + i.d(t, { + E: function () { + return a; + }, + }); + var n = i(293793), + r = i(218571), + a = (e) => { + var t = (0, r.useRef)(null), + [i, a] = (0, r.useState)({}), + o = (0, n.default)(() => i); + (0, r.useEffect)(() => { + var i = t.current; + if (!!i) + return ( + e.forEach((e) => + e.listen({ el: i, getElementStyle: o, setElementStyle: a }) + ), + () => { + e.forEach((e) => e.stop()); + } + ); + }, [o, e]); + var s = (0, n.default)(() => { + e.forEach((e) => e.reset()); + }), + l = (0, n.default)(() => { + e.forEach((e) => e.activate()); + }); + return { + elementRef: t, + elementStyle: i, + resetTransformStyle: s, + activateAllWatchers: l, + deactivatedAllWatchers: (0, n.default)(() => { + e.forEach((e) => e.deactivated()); + }), + }; + }; + }, + 934128: function (e, t, i) { + "use strict"; + i.d(t, { + m: function () { + return r; + }, + }); + var n = i(218571); + function r(e, t) { + return (0, n.useSyncExternalStore)( + (i) => ( + e.on(t, i), + () => { + e.off(t, i); + } + ), + () => e.getSnapshot() + ); + } + }, + 870599: function (e, t, i) { + "use strict"; + function n(e, t) { + Object.assign(e.style, t); + } + i.d(t, { + K: function () { + return n; + }, + }); + }, + 532128: function (e, t, i) { + "use strict"; + i.d(t, { + c: function () { + return r; + }, + }); + var n = i(246940); + function r(e) { + var { key: t, defaultSize: i, sizeLimit: r } = e; + try { + var a = n.T.getItem(t); + if (!a) return i; + var o = JSON.parse(a), + s = !1; + if ((s = Object.values(o).some((e) => e < r.min || e > r.max))) + return i; + return o; + } catch (e) { + return i; + } + } + }, + 976363: function (e, t, i) { + "use strict"; + i.d(t, { + e: function () { + return n; + }, + }); + class n { + listen(e) { + var { el: t, getElementStyle: i, setElementStyle: n } = e; + (this.element = t), + (this.getElementStyle = i), + (this.setElementStyle = n); + } + stop() { + (this.element = void 0), + (this.getElementStyle = void 0), + (this.setElementStyle = void 0); + } + reset() {} + activate() {} + deactivated() {} + constructor() { + (this.element = void 0), + (this.getElementStyle = void 0), + (this.getElementStyle = void 0); + } + } + }, + 627387: function (e, t, i) { + "use strict"; + i.d(t, { + t: function () { + return n; + }, + }); + var n = { transition: "transform 0.2s" }; + }, + 586167: function (e, t, i) { + "use strict"; + i.d(t, { D: () => f }); + var n = i("625572"), + r = i("639880"), + a = i("789786"), + o = i("345720"), + s = i("976363"), + l = i("592326"); + class c { + static addEventListener(e, t, i) { + var n = "keydown" === t ? c._keydownHandlers : c._keyupHandlers, + r = n.get(e), + a = 0 === n.size; + if (r) r.add(i); + else { + var o = new Set(); + o.add(i), n.set(e, o); + } + a && + document.addEventListener( + t, + "keydown" === t ? c._onKeydown : c._onKeyup + ); + } + static removeEventListener(e, t, i) { + var n = "keydown" === t ? c._keydownHandlers : c._keyupHandlers, + r = n.get(e); + if (!!r) + r.delete(i), + 0 === r.size && n.delete(e), + 0 === n.size && + document.removeEventListener( + t, + "keydown" === t ? c._onKeydown : c._onKeyup + ); + } + static _onKeydown(e) { + var t = e.key, + i = c._keydownHandlers.get(t); + if (!!i) i.forEach((t) => t(e)); + } + static _onKeyup(e) { + var t = e.key, + i = c._keyupHandlers.get(t); + if (!!i) i.forEach((t) => t(e)); + } + } + (c._keyupHandlers = new Map()), (c._keydownHandlers = new Map()); + var d = i("627387"), + u = " "; + class f extends s.e { + get containerWidth() { + var e, t; + return null !== + (t = + null === (e = this.element) || void 0 === e + ? void 0 + : e.clientWidth) && void 0 !== t + ? t + : 0; + } + get containerHeight() { + var e, t; + return null !== + (t = + null === (e = this.element) || void 0 === e + ? void 0 + : e.clientHeight) && void 0 !== t + ? t + : 0; + } + set status(e) { + var t = this._status, + i = e; + if (t !== i && (t !== o.L.Active || i !== o.L.Advent)) { + if (i === o.L.Disable) { + (this._status = e), + this._hideMask(), + this.changeCursor("default"), + this._unbindEvents(); + return; + } + t === o.L.Disable && this._bindEvents(), + this.changeCursor("pointer"), + this._showMask(), + (this._status = i), + this.notify("status", e); + } + } + get status() { + return this._status; + } + changeCursor(e) { + var t, + i, + a, + o, + s = (0, r._)( + (0, n._)( + {}, + d.t, + null === (t = (i = this).getElementStyle) || void 0 === t + ? void 0 + : t.call(i) + ), + { cursor: e } + ); + null === (a = (o = this).setElementStyle) || + void 0 === a || + a.call(o, s); + } + setRangeContainer(e, t) { + (this._rangeContainer = e), (this._rangeContainerSize = t); + } + _bindEvents() { + var e; + null === (e = this.element) || + void 0 === e || + e.addEventListener("mousedown", this._handleMouseDown), + document.addEventListener("mousemove", this._handleMouseMove), + document.addEventListener("mouseup", this._handleMouseUp), + document.addEventListener("mouseleave", this._handleMouseLeave); + } + _unbindEvents() { + var e; + null === (e = this.element) || + void 0 === e || + e.removeEventListener("mousedown", this._handleMouseDown), + document.removeEventListener("mousemove", this._handleMouseMove), + document.removeEventListener("mouseup", this._handleMouseUp), + document.removeEventListener("mouseleave", this._handleMouseLeave); + } + _mouseDown(e) { + this._status !== o.L.Disable && + ((this._startDrag = !0), + (this._startDragPosition = { x: e.clientX, y: e.clientY }), + this._resetTransition()); + } + _mouseMove(e) { + if (!this._startDrag) return; + var { x: t, y: i } = this._startDragPosition, + n = e.clientX - t, + r = e.clientY - i; + if (0 !== n || 0 !== r) + (this._isDragging = !0), + this._handleMove(n, r), + (this._startDragPosition = { x: e.clientX, y: e.clientY }); + } + _getCurrentMove() { + var e, + t, + i, + n = ( + null !== + (i = + null === (e = (t = this).getElementStyle) || void 0 === e + ? void 0 + : e.call(t).transform) && void 0 !== i + ? i + : "" + ).match(/translate\(([\-\d\.]+)px[^\d\.\-]+([\-\d\.]+)px\)/); + return n ? { x: Number(n[1]), y: Number(n[2]) } : { x: 0, y: 0 }; + } + _handleMove(e, t) { + var { x: i, y: n } = this._getCurrentMove(), + r = this._getCurrentScale(), + a = i + e / r, + o = n + t / r, + { x: s, y: l } = this._getRange(r); + (this._x = this._getValueInRange(a, s)), + (this._y = this._getValueInRange(o, l)), + this.notify("move", ""), + this._changeMoveStyle(r); + } + _getRange(e) { + if (e >= 1 || !this._rangeContainerSize) { + var t = Math.abs(this.containerWidth / 2), + i = Math.abs(this.containerHeight / 2); + return { x: { min: -t, max: t }, y: { min: -i, max: i } }; + } + var { width: n, height: r } = this._rangeContainerSize, + a = (n - this.containerWidth * e) / 2 / e, + o = (r - this.containerHeight * e) / 2 / e; + return { x: { min: -a, max: a }, y: { min: -o, max: o } }; + } + _getValueInRange(e, t) { + var { min: i, max: n } = t; + return Math.min(n, Math.max(i, e)); + } + _changeMoveStyle(e) { + var t, + i, + a, + o, + s = (0, r._)( + (0, n._)( + {}, + null === (t = (i = this).getElementStyle) || void 0 === t + ? void 0 + : t.call(i) + ), + { + transform: "scale(" + .concat(e, ") translate(") + .concat(this._x, "px, ") + .concat(this._y, "px)"), + } + ); + null === (a = (o = this).setElementStyle) || + void 0 === a || + a.call(o, s); + } + _resetTransition() { + var e, + t, + i, + a, + o, + s, + l, + c = + null === (e = (t = this).getElementStyle) || void 0 === e + ? void 0 + : e.call(t); + this._elementTransitionValue = + null !== (l = null == c ? void 0 : c.transition) && void 0 !== l + ? l + : ""; + var d = (0, r._)( + (0, n._)( + {}, + null === (i = (a = this).getElementStyle) || void 0 === i + ? void 0 + : i.call(a) + ), + { transition: "none" } + ); + null === (o = (s = this).setElementStyle) || + void 0 === o || + o.call(s, d); + } + _resumeTransition() { + var e, + t, + i, + a, + o = (0, r._)( + (0, n._)( + {}, + null === (e = (t = this).getElementStyle) || void 0 === e + ? void 0 + : e.call(t) + ), + { transition: this._elementTransitionValue } + ); + null === (i = (a = this).setElementStyle) || + void 0 === i || + i.call(a, o); + } + _getCurrentScale() { + var e, + t, + i = + null === (e = (t = this).getElementStyle) || void 0 === e + ? void 0 + : e.call(t), + n = null == i ? void 0 : i.transform; + if (!n) return 1; + var r = n.match(/scale\(([^)]+)\)/); + return (r && Number(r[1])) || 1; + } + _mouseUp() { + (this._isDragging = !1), + (this._startDrag = !1), + this.notify("onMouseUp", void 0), + this._resumeTransition(); + } + _mouseLeave() { + this._isDragging && this._startDrag && this._resumeTransition(), + (this._isDragging = !1), + (this._startDrag = !1); + } + listen(e) { + super.listen(e), this._initMask(); + } + _initMask() { + var e, + t, + i = "__mask__"; + if ( + null === (e = this.element) || void 0 === e + ? !void 0 + : !e.querySelector("#".concat(i)) + ) { + var n = document.createElement("div"); + n.setAttribute( + "style", + "position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 10; display: none;" + ), + (n.id = i), + null === (t = this.element) || void 0 === t || t.appendChild(n), + (this._mask = n); + } + } + _showMask() { + this._mask && (this._mask.style.display = "block"); + } + _hideMask() { + this._mask && (this._mask.style.display = "none"); + } + _bindGlobalEvents() { + c.addEventListener(u, "keydown", this._handleKeydown), + c.addEventListener(u, "keyup", this._handleKeyup); + } + _unbindGlobalEvents() { + c.removeEventListener(u, "keydown", this._handleKeydown), + c.removeEventListener(u, "keyup", this._handleKeyup); + } + _onKeydown(e) { + (this._beforeHotkeyDragStatus = this.status), + (this.status = o.L.Advent); + } + _onKeyup(e) { + this.status = + this._beforeHotkeyDragStatus === o.L.Active + ? o.L.Active + : o.L.Disable; + } + stop() { + super.stop(), + this.deactivated(), + this._unbindEvents(), + this._unbindGlobalEvents(); + } + changeStatus(e) { + this.status = e; + } + activate() { + this._bindGlobalEvents(); + } + deactivated() { + (this.status = o.L.Disable), this._unbindGlobalEvents(); + } + getSnapshot() { + return this.status; + } + getMoveDataSnapshot() { + return JSON.stringify({ x: this._x, y: this._y }); + } + reset() { + var e, t; + (this._x = 0), + (this._y = 0), + (this._status = o.L.Disable), + (this._startDrag = !1), + (this._startDragPosition = { x: 0, y: 0 }), + (this._isDragging = !1), + null === (e = (t = this).setElementStyle) || + void 0 === e || + e.call(t, (0, n._)({}, d.t)); + } + resetMove() { + (this._x = 0), (this._y = 0), this.notify("move", ""); + } + constructor() { + super(), + (this._x = 0), + (this._y = 0), + (this._status = o.L.Disable), + (this._startDrag = !1), + (this._startDragPosition = { x: 0, y: 0 }), + (this._isDragging = !1), + (this._handleMouseDown = this._mouseDown.bind(this)), + (this._handleMouseMove = this._mouseMove.bind(this)), + (this._handleMouseUp = this._mouseUp.bind(this)), + (this._handleMouseLeave = this._mouseLeave.bind(this)), + (this._handleKeydown = this._onKeydown.bind(this)), + (this._handleKeyup = this._onKeyup.bind(this)), + (this._mask = null), + (this._elementTransitionValue = ""), + (this._beforeHotkeyDragStatus = o.L.Disable), + (this._rangeContainer = null), + (this._rangeContainerSize = null); + } + } + f = (0, a.gn)( + [ + l.C, + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", []), + ], + f + ); + }, + 345720: function (e, t, i) { + "use strict"; + i.d(t, { + L: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e.Active = "active"), + (e.Advent = "advent"), + (e.Disable = "disabled"), + e + ); + })({}); + }, + 950466: function (e, t, i) { + "use strict"; + i.d(t, { Qd: () => g }); + var n = i("625572"), + r = i("639880"), + a = i("789786"), + o = i("592326"), + s = i("976363"), + l = 120, + c = (function (e) { + return ( + (e.TouchPadPinchUp = "TouchPadPinchUp"), + (e.TouchPadPinchDown = "TouchPadPinchDown"), + (e.TouchPadMoveUp = "TouchPadMoveUp"), + (e.TouchPadMoveDown = "TouchPadMoveDown"), + (e.MouseUp = "MouseUp"), + (e.MouseDown = "MouseDown"), + e + ); + })({}), + d = (e) => { + if (e.ctrlKey) + return { + action: e.deltaY > 0 ? "TouchPadPinchDown" : "TouchPadPinchUp", + }; + var t = null == e ? void 0 : e.wheelDeltaY; + return (t ? Math.abs(t) < l : 0 === e.deltaMode) + ? { action: e.deltaY > 0 ? "TouchPadMoveUp" : "TouchPadMoveDown" } + : { action: e.deltaY > 0 ? "MouseUp" : "MouseDown" }; + }, + u = i("342396"), + f = i("627387"), + h = 1.03, + p = 0.97, + v = 1.06, + m = 0.94; + class g extends s.e { + get scale() { + return this._scale; + } + set scale(e) { + if (e !== this._scale) + (this._scale = e), + this._changeElementStyle(), + this.notify("scale", void 0); + } + _changeElementStyle() { + var e, + t, + i, + a, + o, + s = + null !== + (o = + null === (e = (t = this).getElementStyle) || void 0 === e + ? void 0 + : e.call(t)) && void 0 !== o + ? o + : {}, + l = s.transform, + c = l + ? l.replace( + /scale\(([^)]+)\)/, + "scale(".concat(Math.abs(this._scale), ")") + ) + : "scale(".concat(Math.abs(this._scale), ")"), + d = (0, r._)((0, n._)({}, f.t, s), { transform: c }); + null === (i = (a = this).setElementStyle) || + void 0 === i || + i.call(a, d); + } + _handlePinch(e, t) { + var i = 1; + i = t ? (e ? h : p) : e ? v : m; + var n = Math.max(u.$A, Math.min(u.pv, Math.abs(this.scale * i))); + this.scale = n; + } + _onWheel(e) { + e.preventDefault(), + e.stopPropagation(), + null === (t = this.element) || void 0 === t || t.click(); + var t, + { action: i } = d(e); + if ( + !![ + c.MouseUp, + c.TouchPadPinchUp, + c.MouseDown, + c.TouchPadPinchDown, + ].includes(i) + ) { + var n = i === c.TouchPadPinchDown || i === c.TouchPadPinchUp, + r = i === c.MouseUp || i === c.TouchPadPinchUp; + this._handlePinch(r, n); + } + } + resetOffset() { + var e, + t, + i, + a, + o, + s = + null !== + (o = + null === (e = (t = this).getElementStyle) || void 0 === e + ? void 0 + : e.call(t)) && void 0 !== o + ? o + : {}; + null === (i = (a = this).setElementStyle) || + void 0 === i || + i.call( + a, + (0, r._)((0, n._)({}, f.t, s), { + transform: "scale(".concat(Math.abs(this._scale), ")"), + }) + ); + } + _bindEvents() { + var e; + null === (e = this.element) || + void 0 === e || + e.addEventListener("wheel", this._handleWheel); + } + _unbindEvents() { + var e; + null === (e = this.element) || + void 0 === e || + e.removeEventListener("wheel", this._handleWheel); + } + stop() { + this._unbindEvents(), + (this.element = void 0), + (this.getElementStyle = void 0), + (this.setElementStyle = void 0); + } + getSnapshot() { + return this._scale; + } + reset() { + var e, t; + (this._scale = u.hv), + null === (e = (t = this).setElementStyle) || + void 0 === e || + e.call(t, (0, n._)({}, f.t)); + } + activate() { + this._bindEvents(); + } + deactivated() { + this._unbindEvents(); + } + constructor() { + super(), + (this._scale = u.hv), + (this._handleWheel = this._onWheel.bind(this)); + } + } + g = (0, a.gn)( + [ + o.C, + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", []), + ], + g + ); + }, + 210708: function (e, t, i) { + "use strict"; + i.d(t, { q: () => C }); + var n = i("218571"), + r = i("37764"), + a = i("614854"), + o = i("867644"), + s = i("789786"), + l = i("592326"); + class c { + handleContainerVisible(e) { + this._model.isVisible = e; + } + updateRects(e) { + this._model.rectangles = e; + } + destroy() { + this._model.destroy(), this.clear(); + } + handleSelectRect(e) { + this.notify("select", e); + } + constructor(e) { + var { model: t } = e; + this._model = t; + } + } + c = (0, s.gn)( + [ + l.C, + (0, s.w6)("design:type", Function), + (0, s.w6)("design:paramtypes", [ + "undefined" == typeof ISelectControllerParams + ? Object + : ISelectControllerParams, + ]), + ], + c + ); + class d { + get rectangles() { + return this._rectangles; + } + set rectangles(e) { + (this._rectangles = e), this.notify("rectangles", e); + } + get isVisible() { + return this._isVisible; + } + set isVisible(e) { + (this._isVisible = e), this.notify("isVisible", e); + } + destroy() { + this.clear(), this.notify("onDestroy", void 0); + } + constructor() { + (this._isVisible = !1), + (this._rectangles = []), + (this._isVisible = !0); + } + } + d = (0, s.gn)( + [ + l.C, + (0, s.w6)("design:type", Function), + (0, s.w6)("design:paramtypes", []), + ], + d + ); + var u = i("625572"), + f = i("639880"), + h = i("2910"), + p = i("870599"), + v = i("105789"), + m = i.n(v), + g = { + rectContainer: "rectContainer-njaAgY", + largeRect: "largeRect-_kJs2C", + box: "box-nE_Hsg", + smallRect: "smallRect-NM9HLj", + rect: "rect-GPtTcJ", + rectActive: "rectActive-wdwkF5", + }, + _ = 58, + y = 16, + b = 16; + class I { + _initModelListeners() { + this._model.on("isVisible", this.changeContainerVisible), + this._model.on("rectangles", this.updateRectangleDoms), + this._model.on("onDestroy", this.destroy); + } + _createRectanglesContainer() { + var e = document.createElement("div"); + return (e.className = g.rectContainer), e; + } + _addRectangleDomsToContainer() { + var e, + t = document.createDocumentFragment(); + this._createRectangleDoms().forEach((e) => { + t.appendChild(e); + }), + null === (e = this._rectangleContainer) || + void 0 === e || + e.appendChild(t), + this._bindRectangleContainerListener(); + } + _handleClickRectangleContainer(e) { + for ( + var t, { target: i, currentTarget: n } = e, r = i; + r !== n && !(null == r ? void 0 : r.dataset.key); + + ) + r = + null !== (t = null == r ? void 0 : r.parentElement) && + void 0 !== t + ? t + : null; + var a = null == r ? void 0 : r.dataset.key, + o = null == r ? void 0 : r.className.includes(g.rectActive); + a && !o && this._selectRectangle(a); + } + _updateRectangleDoms() { + var e, + t, + i, + n = [].slice + .call( + null !== + (i = + null === (e = this._rectangleContainer) || void 0 === e + ? void 0 + : e.childNodes) && void 0 !== i + ? i + : [] + ) + .map((e) => e.dataset.key), + r = this._model.rectangles; + if ( + this._model.rectangles.length !== n.length || + r.some((e, t) => e.key !== n[t]) + ) { + this._replaceAllRectangleNodes(); + return; + } + var a = this._rectangleContainer.querySelector( + "div[class~='".concat(g.rectActive, "']") + ); + if ( + (null == a ? void 0 : a.dataset.key) !== + (null === (t = r.find((e) => e.isSelected)) || void 0 === t + ? void 0 + : t.key) + ) { + this._updateSelectedRectangleDom(); + return; + } + this._updateRectangleDomPosition(); + } + _bindRectangleContainerListener() { + this._rectangleContainer.addEventListener( + "click", + this.handleClickRectangleContainer + ); + } + _unbindRectangleContainerListener() { + this._rectangleContainer.removeEventListener( + "click", + this.handleClickRectangleContainer + ); + } + _destroy() { + this._unbindRectangleContainerListener(), + this._container.removeChild(this._rectangleContainer); + } + _changeContainerVisible(e) { + e + ? this._bindRectangleContainerListener() + : this._unbindRectangleContainerListener(), + (0, p.K)(this._rectangleContainer, { + display: e ? "block" : "none", + }); + } + _selectRectangle(e) { + this._controller.handleSelectRect(e); + } + _getRectangleDomClassNames(e) { + var { isSelected: t, rect: i } = e, + [n, r, a, o] = i, + s = Math.min(a, o) >= _; + return m()({ + [g.rect]: !0, + [g.rectActive]: t, + [g.smallRect]: !s, + [g.largeRect]: s, + }); + } + _createRectangleDoms() { + return this._model.rectangles.map((e) => { + var t = document.createElement("div"), + { key: i } = e; + return ( + (t.className = this._getRectangleDomClassNames(e)), + (t.dataset.key = i), + (0, p.K)(t, this._getRectangleDomPositionStyle(e)), + (t.innerHTML = (0, h.J)( + "\n
    \n
    \n
    \n
    "), + null, + { + logType: "js.innerHTML", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + } + )), + t + ); + }); + } + _updateSelectedRectangleDom() { + var e, + t, + i, + n = [].slice.call( + null !== + (i = + null === (e = this._rectangleContainer) || void 0 === e + ? void 0 + : e.childNodes) && void 0 !== i + ? i + : [] + ), + r = + null === (t = this._model.rectangles.find((e) => e.isSelected)) || + void 0 === t + ? void 0 + : t.key; + if ( + (n.forEach((e) => { + e.classList.remove(g.rectActive); + }), + r) + ) { + var a = this._rectangleContainer.querySelector( + "div[data-key='".concat(r, "']") + ); + null == a || a.classList.add(g.rectActive); + } + } + _updateRectangleDomPosition() { + var e = this._rectangleContainer, + t = this._model.rectangles.reduce( + (e, t) => (0, f._)((0, u._)({}, e), { [t.key]: t }), + {} + ); + [].slice.call(e.childNodes).forEach((e) => { + var i, + n = null !== (i = e.dataset.key) && void 0 !== i ? i : ""; + if (n && n in t) { + var r = t[n]; + (e.className = this._getRectangleDomClassNames(r)), + (0, p.K)(e, this._getRectangleDomPositionStyle(r)); + } + }); + } + _getRectangleDomPositionStyle(e) { + var { rect: t } = e, + [i, n, r, a] = t; + if (Math.min(r, a) > y) + return { + width: "".concat(r, "px"), + height: "".concat(a, "px"), + transform: "translate(".concat(i, "px, ").concat(n, "px)"), + }; + var o = i - (b - r) / 2, + s = n - (b - a) / 2; + return { + width: "".concat(b, "px"), + height: "".concat(b, "px"), + transform: "translate(".concat(o, "px, ").concat(s, "px)"), + }; + } + _replaceAllRectangleNodes() { + this._unbindRectangleContainerListener(), + (this._rectangleContainer.innerHTML = ""), + this._addRectangleDomsToContainer(); + } + constructor(e) { + var { controller: t, model: i, container: n } = e; + (this._controller = t), + (this._model = i), + (this._container = n), + (this._rectangleContainer = this._createRectanglesContainer()), + this._addRectangleDomsToContainer(), + this._container.appendChild(this._rectangleContainer), + (this.handleClickRectangleContainer = + this._handleClickRectangleContainer.bind(this)), + (this.updateRectangleDoms = this._updateRectangleDoms.bind(this)), + (this.destroy = this._destroy.bind(this)), + (this.changeContainerVisible = + this._changeContainerVisible.bind(this)), + this._initModelListeners(); + } + } + class w extends o.x { + updateRects(e) { + this._controller.updateRects(e); + } + show() { + this._controller.handleContainerVisible(!0); + } + hide() { + this._controller.handleContainerVisible(!1); + } + destroy() { + this._controller.destroy(); + } + on(e, t) { + return this._controller.on(e, t); + } + constructor(e) { + super(e); + var { container: t } = e, + i = new d(), + n = new c({ model: i }); + new I({ container: t, model: i, controller: n }), + (this._controller = n); + } + } + var x = i("417281"), + S = () => { + var e = (0, n.useRef)(null), + t = (0, n.useRef)(null); + return ( + (0, n.useEffect)(() => { + var i = t.current; + if (!!i) { + var n = new r.O({ container: i }); + return ( + (e.current = n), + n.registerMode(x.UI.BgPaint, a.o), + n.registerMode(x.UI.FaceGan, w), + () => { + n.destroy(); + } + ); + } + }, []), + { graphicEditorRef: e, containerRef: t } + ); + }, + M = i("124217"), + C = (e) => { + var { abilityType: t, image: i } = e, + { graphicEditorRef: r, containerRef: a } = S(), + { graphicEditorStatus: o, handleChangeMode: s } = (0, M.L)({ + image: i, + }), + l = (0, n.useRef)(); + return ( + (0, n.useEffect)(() => { + var e = r.current; + s(t, e), (l.current = null == e ? void 0 : e.modeInstances); + }, [t, s, r]), + { + graphicEditorStatus: o, + graphicEditorTools: (0, n.useMemo)( + () => ({ modeInstancesRef: l }), + [l] + ), + graphicEditorRef: r, + containerRef: a, + } + ); + }; + }, + 124217: function (e, t, i) { + "use strict"; + i.d(t, { x: () => M, L: () => C }); + var n = i("139646"), + r = i("293793"), + a = i("108982"); + function o(e, t) { + return t === a.s.BgPaint; + } + function s(e, t) { + return t === a.s.FaceGan; + } + var l = i("218571"), + c = i("733437"), + d = i("164763"), + u = i("466740"), + f = i("350138"), + h = (e) => + e.map((e) => ({ + rect: e.faceRect, + isSelected: e.isSelected, + key: e.faceKey, + })), + p = () => { + var e = (0, u.lS)(), + t = d.o.getGraphicToolStoreInstance(e), + i = null == t ? void 0 : t.faceGanInstance, + n = (0, c.k)(i, (e) => ({ rects: e.faceRects })), + a = (0, l.useRef)(); + return ( + (0, l.useEffect)(() => { + var e, + t, + i = h( + null !== (t = null == n ? void 0 : n.rects) && void 0 !== t + ? t + : [] + ); + null === (e = a.current) || void 0 === e || e.updateRects(i); + }, [n]), + { + setup: (0, r.default)((t) => { + var r; + (a.current = t), + t.updateRects( + h( + null !== (r = null == n ? void 0 : n.rects) && + void 0 !== r + ? r + : [] + ) + ), + t.on("select", (t) => { + if ("string" == typeof t) + null == i || i.selectFaceRect(t), + (0, f.x)(e, { position: f.h.Frame }); + }); + }), + } + ); + }; + class v { + static getCSSPropertyValue(e) { + var { declaration: t } = v; + return ( + !t && ((t = getComputedStyle(document.body)), (v.declaration = t)), + t.getPropertyValue(e) + ); + } + } + var m = i("228342"), + g = i("134077"), + _ = i("489897"), + y = i("238638"), + b = "canvasStyle-jIDIPb", + I = i("925367"), + w = i("106456"), + x = () => { + var e = (0, l.useRef)(), + t = (0, u.lS)(), + { triggerDrawMasks: i } = (0, y.z)(e), + n = d.o.getGraphicToolStoreInstance(t); + return { + setup: (0, r.default)((t, i) => { + e.current = t; + var { width: r, height: a } = i; + t.changeCanvasSize({ width: r, height: a }); + var o = null == n ? void 0 : n.bgPaintInstance; + null == o || o.updatePaintModeInstance(t), t.getCanvasContext2D(); + var s = v.getCSSPropertyValue("--main-default"), + l = (0, w.sd)((0, g.Ek)()), + c = I.o4.Brush, + d = _.og; + (t.getCanvasElement().className = b), + t.brush.changeBrushColor((0, m.O)(s, d)); + var u = (0, g.rW)(l[c]); + t.brush.changeBrushSize(u); + }), + }; + }, + S = i("880821"), + M = (function (e) { + return ( + (e[(e.Initial = 0)] = "Initial"), + (e[(e.Success = 1)] = "Success"), + (e[(e.Fail = 2)] = "Fail"), + e + ); + })({}), + C = (e) => { + var { image: t } = e, + { setup: i } = p(), + { setup: a } = x(), + [c, d] = (0, l.useState)(0), + u = (e, t, n) => { + if (o(e, t)) { + a(e, n); + return; + } + if (s(e, t)) { + i(e); + return; + } + }, + f = (function () { + var e = (0, n._)(function* (e, i) { + try { + d(0); + var n = ""; + n = "string" == typeof t ? t : URL.createObjectURL(t); + var r = yield (0, S.po)(n), + a = { width: r.width, height: r.height, url: r.src }; + u(e, i, a), d(1); + } catch (e) { + d(2); + } + }); + return function (t, i) { + return e.apply(this, arguments); + }; + })(); + return { + graphicEditorStatus: c, + handleChangeMode: (0, r.default)((e, t) => { + if (!t) return; + var i = t.modeInstances.has(e), + n = t.changeMode(e); + if (!!n && !i) f(n, e); + }), + }; + }; + }, + 238638: function (e, t, i) { + "use strict"; + i.d(t, { z: () => g }); + var n = i("139646"), + r = /^data:image\/(\w+);base64,/, + a = i("228342"), + o = i("880821"), + s = i("466740"), + l = i("379311"), + c = (function (e) { + return (e.Success = "success"), (e.Failed = "failed"), e; + })({}), + d = (function (e) { + return ( + (e.TransferError = "transfer error"), + (e.ImageLoadError = "image load error"), + e + ); + })({}), + u = (function (e) { + return (e.Base64 = "base64"), (e.Url = "url"), e; + })({}); + class f { + getEventParams() { + var { + status: e, + maskUrl: t, + failReason: i, + maskUrlType: n, + } = this._params; + return { status: e, mask_url: t, mask_url_type: n, fail_reason: i }; + } + constructor(e) { + (this._params = e), (this.eventName = "draw_bgpaint_mask"); + } + } + function h(e, t) { + (0, l.S$)(e, f, [t]); + } + var p = i("164763"), + v = i("733437"), + m = i("119814"), + g = (e, t) => { + var i = (0, s.lS)(), + l = p.o.getGraphicToolStoreInstance(i), + f = null == l ? void 0 : l.bgPaintInstance, + g = (0, v.k)(f, (e) => { + var t; + return null !== (t = e.maskList) && void 0 !== t ? t : []; + }), + _ = (function () { + var s = (0, n._)(function* (n) { + if (!!e.current) { + var s = n; + e.current.getCanvasContext2D(); + var l = !r.test(s), + p = e.current.getCanvasElement(), + v = document.createElement("canvas"), + g = v.getContext("2d"), + _ = e.current.getModel().canvasOriginSize; + (v.width = p.width / _.width), + (v.height = p.height / _.height); + var y = () => { + (g.imageSmoothingEnabled = !0), + (g.imageSmoothingQuality = "high"); + }; + if ((y(), l)) { + var [b, I] = yield (0, o.uX)( + n, + (0, a.U)(e.current.brush.getBrushColor(), !0) + ); + if ((null == t || t(), !I)) { + h(i, { + status: c.Failed, + maskUrl: s, + maskUrlType: u.Url, + failReason: d.TransferError, + }); + return; + } + (v.width = I.width), + (v.height = I.height), + y(), + g.putImageData(I, 0, 0), + e.current.drawImage({ image: v }), + e.current.recordFirstScreen(I), + h(i, { + status: c.Success, + maskUrl: s, + maskUrlType: u.Url, + }); + return; + } + var w = null == f ? void 0 : f.getMaskDataMap(s); + if (w) { + (v.width = w.width), + (v.height = w.height), + y(), + g.putImageData(w, 0, 0), + e.current.drawImage({ image: v }), + h(i, { status: c.Success, maskUrlType: u.Base64 }); + var x = null == f ? void 0 : f.getPaths(s); + x && e.current.drawPaths(x), e.current.recordFirstScreen(w); + return; + } + var S = yield (0, m.p)(s); + if (!S) { + h(i, { + status: c.Failed, + maskUrlType: u.Base64, + failReason: d.ImageLoadError, + }); + return; + } + g.drawImage(S, 0, 0), + e.current.drawImage({ image: v }), + e.current.recordFirstScreen( + g.getImageData(0, 0, v.width, v.height) + ), + h(i, { status: c.Success, maskUrlType: u.Base64 }); + } + }); + return function (e) { + return s.apply(this, arguments); + }; + })(); + return { + triggerDrawMasks: () => { + if ((null == g ? void 0 : g.length) !== 0) + null == g || + g.forEach((e) => { + _(e.mask.url); + }); + }, + }; + }; + }, + 461874: function (e, t, i) { + "use strict"; + i.d(t, { + R6: function () { + return c; + }, + q5: function () { + return s; + }, + rh: function () { + return l; + }, + }); + var n = i(489897), + r = i(314068), + a = i(224671), + o = i(752134); + function s(e) { + var t, i; + return ( + (null !== (t = null == e ? void 0 : e.width) && void 0 !== t + ? t + : r.jg.width) / + (null !== (i = null == e ? void 0 : e.height) && void 0 !== i + ? i + : r.jg.height) + ); + } + function l(e) { + var t = s(e); + for (var i of n.d7) if (i === t) return !1; + return !0; + } + function c(e) { + var t = s(e), + i = 0.004; + for (var r of [ + a.jP.OneOne, + a.jP.ThreeTwo, + a.jP.TwoThree, + a.jP.FourThree, + a.jP.ThreeFour, + a.jP.NineSixteen, + a.jP.SixteenNine, + a.jP.TwentyOneNine, + ]) + if (Math.abs(n.mg[r] - t) < i) return (0, o.d$)(r, e); + return !1; + } + }, + 134077: function (e, t, i) { + "use strict"; + i.d(t, { + Cg: function () { + return l; + }, + Ek: function () { + return c; + }, + rW: function () { + return f; + }, + }); + var n = i(44938), + r = i(200953), + a = i(925367), + o = i(532128), + s = i(489897), + l = { [a.o4.Brush]: s.KE, [a.o4.Eraser]: s.KE }; + function c() { + return (0, o.c)({ + key: n.u.bgPaintBrushSize, + defaultSize: l, + sizeLimit: { max: s.fx, min: s.zt }, + }); + } + var { k: d, b: u } = (0, r.j)({ x: s.zt, y: s.Up }, { x: s.fx, y: s.pb }); + function f(e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 1; + return Math.round((d * e + u) / Math.abs(t)); + } + }, + 239643: function (e, t, i) { + "use strict"; + i.d(t, { + VQ: function () { + return m; + }, + Vv: function () { + return g; + }, + _X: function () { + return _; + }, + tn: function () { + return v; + }, + }); + var n = i(185617), + r = i(489897), + a = i(108982), + o = i(461874), + s = 936, + l = 648, + c = 0.5, + d = 80, + u = 0, + f = 0, + h = 1; + function p(e, t) { + return isNaN(e) ? t : e; + } + function v() { + var e = Math.min(Math.max((0, n._U)() * c, l), s) - d; + return { width: e, height: e / r.Mu }; + } + function m(e) { + var t = e.offsetWidth; + return { width: t, height: t / r.Mu }; + } + function g(e, t, i) { + var n = t / i, + r = (0, o.q5)(e); + return r === n + ? { width: t, height: i } + : r > n + ? { width: t, height: t / r } + : { width: p(i * r, t), height: p(i, i) }; + } + function _(e) { + var { + paintWidth: t, + paintHeight: i, + imageWidth: n, + imageHeight: r, + fitMode: o, + } = e; + if (o === a.G.CenterCrop) return { scale: 1, width: t, height: i }; + var s = t / i, + l = n / r; + return l === s + ? { scale: t / n, width: t, height: i } + : l > s + ? { scale: t / n, width: t, height: t / l } + : { scale: p(i / r, h), width: p(i * l, u), height: p(i, f) }; + } + }, + 666204: function (e, t, i) { + "use strict"; + i.d(t, { u: () => l }); + var n = i("139646"), + r = i("159895"); + function a(e, t) { + var { width: i, height: n } = e, + { width: r, height: a } = t, + o = 0, + s = 0; + return ( + i > n + ? ((o = Math.min(r, i)), (s = Math.floor((n / i) * o))) + : ((s = Math.min(a, n)), (o = Math.floor((i / n) * s))), + { width: o, height: s } + ); + } + function o(e, t) { + var i = + arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 1, + n = t.width / t.height, + r = e.width / e.height; + if (n < r) { + var a = Math.floor(t.height / i); + return { width: Math.floor(r * a), height: a }; + } + var o = Math.floor(t.width / i); + return { width: o, height: Math.floor(o / r) }; + } + var s = 1920; + function l(e, t, i, n) { + return c.apply(this, arguments); + } + function c() { + return (c = (0, n._)(function* (e, t, i, n) { + var l = o(e, t, i), + c = yield null == n + ? void 0 + : n.aggregate.getImcConfigByKey(r.c.BlendConfig), + { bgPaintResizeSize: d = s } = null != c ? c : {}; + return a(l, { width: d, height: d }); + })).apply(this, arguments); + } + }, + 170197: function (e, t, i) { + "use strict"; + i.d(t, { G: () => o }); + var n = i("772322"), + r = { contentWrap: "contentWrap-BOtGMZ", cancel: "cancel-fl5xdN" }, + a = i("949274"), + o = (e) => { + var { + content: t, + onCancel: i, + showCancel: o = !0, + style: s = {}, + } = e; + return (0, n.jsxs)("div", { + className: r.contentWrap, + style: s, + children: [ + t, + o && + (0, n.jsx)("span", { + className: r.cancel, + onClick: () => (null == i ? void 0 : i()), + children: a.ZP.t("wimg2img_button_cancel", {}, "Cancel"), + }), + ], + }); + }; + }, + 930153: function (e, t, i) { + "use strict"; + i.d(t, { + T: function () { + return n; + }, + d: function () { + return r; + }, + }); + var n = 12, + r = 36; + }, + 876220: function (e, t, i) { + "use strict"; + i.d(t, { + o: function () { + return a; + }, + x: function () { + return r; + }, + }); + var n = i(930153); + function r(e, t, i) { + var n = + arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : 1, + r = (e / 180) * Math.PI, + a = t / Math.abs(n), + o = i / Math.abs(n); + return { + width: Math.abs(a * Math.cos(-r)) + Math.abs(o * Math.sin(-r)), + height: Math.abs(a * Math.sin(-r)) + Math.abs(o * Math.cos(-r)), + }; + } + function a(e, t, i, a, o, s) { + var { width: l, height: c } = r(e, t, i, s); + return { + x: { min: -l / 2 + n.T, max: a + l / 2 - n.T }, + y: { min: -c / 2 + n.T, max: o + c / 2 - n.T }, + }; + } + }, + 853270: function (e, t, i) { + "use strict"; + i.d(t, { D: () => c }); + var n = i("717742"); + function r(e, t) { + return e >= t.min && e <= t.max; + } + function a(e, t) { + return { x: { min: 0, max: e }, y: { min: 0, max: t } }; + } + var o = i("876220"), + s = i("239643"); + function l(e, t, i) { + var { width: n, height: r } = e, + { width: a, height: o } = t, + { width: l, height: c } = (0, s._X)({ + paintWidth: n, + paintHeight: r, + imageWidth: a, + imageHeight: o, + }); + return { width: l * i, height: c * i }; + } + function c(e) { + var { + currentMove: t, + currentSize: i, + targetSize: s, + imageSize: c, + imageScale: d, + imageRotate: u, + paintScale: f = 1, + needHandleEdge: h = !1, + } = e, + { moveX: p, moveY: v } = t, + { width: m, height: g } = i, + { width: _, height: y } = s, + { x: b, y: I } = a(m, g), + w = r(p, b), + x = r(v, I), + { width: S, height: M } = l(i, c, d), + { width: C, height: T } = (0, o.x)(u, S, M), + { width: A, height: k } = l(s, c, d), + { width: P, height: E } = (0, o.x)(u, A, k), + D = (0, n.c)((p / m) * _, 2); + if (!w && h) { + if (p < 0) { + var R = C / 2 + p; + D = (0, n.c)(-P / 2 + R, 2); + } else { + var N = C / 2 - (p - m); + D = (0, n.c)(P / 2 + _ - N, 2); + } + } + var L = (0, n.c)((v / g) * y, 2); + if (!x && h) { + if (v < 0) { + var j = T / 2 + v; + L = (0, n.c)(-E / 2 + j, 2); + } else { + var O = T / 2 - (v - g); + L = (0, n.c)(E / 2 + y - O, 2); + } + } + return { moveX: D, moveY: L }; + } + }, + 287967: function (e, t, i) { + "use strict"; + i.d(t, { + S: function () { + return n; + }, + }); + var n = (0, i(218571).createContext)(null); + }, + 494766: function (e, t, i) { + "use strict"; + i.d(t, { d: () => T, n: () => C }); + var n = i("772322"), + r = i("466740"), + a = i("218571"), + o = "controlNetInteract-Vw2xKV", + s = "divider-lJeIjd", + l = i("733437"), + c = i("489897"), + d = i("108982"), + u = i("743568"); + i("894672"); + var f = i("274993"), + h = i("105789"), + p = i.n(h), + v = i("188754"), + m = { + fitModeContainer: "fitModeContainer-bJORhC", + fitModeOption: "fitModeOption-EN0atX", + active: "active-NBf2Ze", + adjustMode: "adjustMode-YG1DVD", + interactArea: "interactArea-KhDKyF", + helpIcon: "helpIcon-dT25bq", + arrowIcon: "arrowIcon-L98cyn", + }, + g = i("443213"), + _ = i("949274"), + y = { + [d.G.AdaptToCanvas]: "depth_go_along", + [d.G.CenterCrop]: "depth_middle_cut", + }, + b = { [d.G.AdaptToCanvas]: "Fill", [d.G.CenterCrop]: "Center crop" }, + I = (e) => { + var { + fitMode: t, + isActive: i, + onChangeFitMode: r, + onVisibleChange: o, + onWarningTipVisible: s, + } = e, + [l, c] = (0, a.useState)(!1), + u = (0, a.useRef)(null), + h = (e) => { + c(e), o(e); + }, + I = (e) => { + var t; + r(e), null === (t = u.current) || void 0 === t || t.close(); + }; + return (0, n.jsx)(g.E, { + contentClassName: m.fitModeContainer, + onVisibleChange: h, + ref: u, + content: (0, n.jsxs)(n.Fragment, { + children: [ + (0, n.jsx)("div", { + className: p()(m.fitModeOption, { + [m.active]: t === d.G.CenterCrop, + }), + onClick: () => I(d.G.CenterCrop), + children: _.oc.t("depth_middle_cut", {}, "Center crop"), + }), + (0, n.jsxs)("div", { + className: p()(m.fitModeOption, m.adjustMode, { + [m.active]: t === d.G.AdaptToCanvas, + }), + onClick: () => I(d.G.AdaptToCanvas), + children: [ + _.oc.t("depth_go_along", {}, "Fill"), + (0, n.jsx)(f.Z, { + content: _.oc.t( + "depth_add", + {}, + "Blank areas will be filled in automatically." + ), + onVisibleChange: s, + children: (0, n.jsx)(v.NCl, { className: m.helpIcon }), + }), + ], + }), + ], + }), + children: (0, n.jsxs)("div", { + className: p()(m.interactArea, { [m.active]: i }), + children: [ + (0, n.jsx)("span", { children: _.oc.t(y[t], {}, b[t]) }), + (0, n.jsx)(v.f5h, { + className: p()(m.arrowIcon, l ? m.active : ""), + }), + ], + }), + }); + }, + w = i("164763"), + x = i("100900"), + S = i("133438"), + M = i("630516"), + C = (function (e) { + return ( + (e.AdjustReferenceLevel = "adjust_reference_level"), + (e.SelectCanvasMode = "select_canvas_mode"), + (e.None = ""), + e + ); + })({}), + T = (e) => { + var t, + { instance: i } = e, + [f, h] = (0, a.useState)(""), + p = (0, r.lS)(), + v = w.o.getGraphicToolStoreInstance(p), + m = (0, S.W9)(null == i ? void 0 : i.name), + { referenceLevel: g = c.XR.default, fitMode: _ = d.G.CenterCrop } = + null !== + (t = (0, l.k)(i, (e) => ({ + referenceLevel: null == e ? void 0 : e.referenceLevel, + fitMode: null == e ? void 0 : e.fitMode, + }))) && void 0 !== t + ? t + : {}, + y = (e) => { + if (!Array.isArray(e)) null == i || i.updateReferenceLevel(e); + }, + b = (e) => { + if (!Array.isArray(e)) + m && + (0, x.b)(p, { action: x.u.Click, type: c.hW[m], value: e }); + }, + C = (e) => { + e + ? (h("adjust_reference_level"), + m && (0, x.b)(p, { action: x.u.Show, type: c.hW[m] })) + : h(""); + }, + T = (e) => { + e + ? (h("select_canvas_mode"), + m && (0, M.c2)(p, { action: M.QV.Show, type: c.hW[m] })) + : h(""); + }, + A = (e) => { + e && + m && + (0, M.c2)(p, { + action: M.QV.Hover, + type: c.hW[m], + option: M.cU.NoCutout, + }); + }, + k = (e) => { + null == v || v.syncData({ fitMode: e }), + m && + (0, M.c2)(p, { + action: M.QV.Click, + type: c.hW[m], + option: c.rK[e], + }); + }; + return (0, n.jsxs)("div", { + className: o, + children: [ + (0, n.jsx)(u.s, { + referenceLevel: g, + isActive: "adjust_reference_level" === f, + onChange: y, + onAfterChange: b, + onUpdateActiveOption: h, + onReferenceLevelVisibleChange: C, + }), + (0, n.jsx)("div", { className: s }), + (0, n.jsx)(I, { + fitMode: _, + isActive: "select_canvas_mode" === f, + onChangeFitMode: k, + onVisibleChange: T, + onWarningTipVisible: A, + }), + ], + }); + }; + }, + 743568: function (e, t, i) { + "use strict"; + i.d(t, { s: () => y }); + var n = i("772322"), + r = i("105789"), + a = i.n(r), + o = i("188754"), + s = "referenceLevelContainer-I8TdNd", + l = "referenceContent-EpUEhq", + c = "sliderWrap-sNrOdL", + d = "slider-VGJR0g", + u = "interactArea-RCX1m2", + f = "active-rQpT5A", + h = "paramIcon-ixJkaz", + p = i("763284"), + v = i("443213"), + m = i("949274"), + g = i("494766"), + _ = i("489897"), + y = (e) => { + var { + referenceLevel: t, + isActive: i, + min: r = _.XR.min, + onChange: y, + onAfterChange: b, + onUpdateActiveOption: I, + onReferenceLevelVisibleChange: w, + } = e; + return (0, n.jsx)(v.E, { + containerClassName: s, + contentClassName: l, + onVisibleChange: w, + content: (0, n.jsxs)("div", { + className: c, + children: [ + (0, n.jsx)(p.i, { + max: _.XR.max, + min: r, + step: _.XR.step, + value: t, + onChange: y, + triggerBar: !0, + className: d, + onAfterChange: b, + }), + (0, n.jsx)("span", { children: Math.round(t) }), + ], + }), + children: (0, n.jsxs)("div", { + className: a()(u, { [f]: i }), + onClick: () => I(g.n.AdjustReferenceLevel), + children: [ + (0, n.jsx)(o.ygK, { className: h }), + (0, n.jsx)("span", { + children: m.oc.t("wimg2img_title_intensity", {}, "Intensity"), + }), + ], + }), + }); + }; + }, + 67608: function (e, t, i) { + "use strict"; + i.d(t, { e: () => w }); + var n = i("772322"), + r = i("218571"), + a = i("164763"), + o = i("466740"), + s = i("733437"), + l = i("293793"), + c = i("188754"), + d = i("2910"), + u = i("105789"), + f = i.n(u), + h = { + switchContainer: "switchContainer-cqaSzY", + switch: "switch-oT5oFu", + itemWrap: "itemWrap-zxCI5q", + item: "item-uxHxt8", + itemActive: "itemActive-zk0vK2", + image: "image-Z8UfmH", + prevIcon: "prevIcon-Io8wau", + nextIcon: "nextIcon-fk6gop", + switchArrow: "switchArrow-koyVF4", + }, + p = (0, r.forwardRef)((e, t) => { + var { faceKey: i, picture: r, active: a, onClick: o } = e, + s = () => { + null == o || o(i); + }; + return (0, n.jsx)("div", { + ref: t, + className: f()({ [h.item]: !0, [h.itemActive]: a }), + onClick: s, + children: (0, n.jsx)("img", { + className: h.image, + src: (0, d.C)(r, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + crossOrigin: "anonymous", + }), + }); + }), + v = (e) => { + var { icon: t, externalClassName: i, onClick: r } = e; + return (0, n.jsx)("div", { + className: f()(h.switchArrow, i), + onClick: r, + children: (0, n.jsx)(t, { size: 20 }), + }); + }, + m = i("528498"), + g = 44, + _ = 8, + y = (e, t) => { + var i = (0, r.useRef)(null), + [n, a] = (0, r.useState)(!1), + [o, s] = (0, m.CY)(void 0, () => { + a(!0); + }), + [c, d] = (0, m.CY)(), + [u, f] = (0, r.useState)(0), + h = n && !s && t > 1, + p = n && !d && t > 1, + v = (0, l.default)((e) => { + var n = i.current; + return n + ? Math.min( + 0, + Math.max(n.clientWidth - (g * t + _ * (t - 1)), e) + ) + : 0; + }), + y = (0, l.default)((e) => { + var n = i.current; + if (!n) return 0; + for (var r = n.clientWidth / 2, a = 0, o = 0; o < t; o++) { + var s = o * (g + _), + l = (o + 1) * (g + _); + if (r >= s && r < l) { + a = o; + break; + } + } + var c = -(e - a) * (g + _); + return e <= a ? 0 : v(c); + }), + b = (0, l.default)(() => { + f(y(e)); + }); + return ( + (0, r.useEffect)( + () => ( + window.addEventListener("resize", b), + () => { + window.removeEventListener("resize", b); + } + ), + [] + ), + (0, r.useEffect)(() => { + f(y(e)); + }, [e, t, y]), + { + firstElementRef: o, + lastElementRef: c, + wrapRef: i, + moveX: u, + showNext: p, + showPrev: h, + movePrevOne: () => { + f((e) => v(e + (g + _))); + }, + moveNextOne: () => { + f((e) => v(e - (g + _))); + }, + } + ); + }, + b = i("350138"), + I = (e) => { + var { faces: t, selectedIndex: i, onSelectFace: a } = e, + s = (0, o.lS)(), + d = (0, l.default)((e) => { + null == a || a(e), (0, b.x)(s, { position: b.h.Thumbnail }); + }), + { + moveX: u, + moveNextOne: f, + movePrevOne: m, + showNext: g, + showPrev: _, + wrapRef: I, + firstElementRef: w, + lastElementRef: x, + } = y(i, t.length), + S = () => { + m(); + }, + M = () => { + f(); + }, + C = (0, r.useMemo)( + () => + t.map((e, i) => + 0 === i + ? (0, n.jsx)( + p, + { + ref: w, + active: e.isSelected, + faceKey: e.faceKey, + picture: e.picture, + onClick: d, + }, + e.faceKey + ) + : i === t.length - 1 + ? (0, n.jsx)( + p, + { + ref: x, + active: e.isSelected, + faceKey: e.faceKey, + picture: e.picture, + onClick: d, + }, + e.faceKey + ) + : (0, n.jsx)( + p, + { + active: e.isSelected, + faceKey: e.faceKey, + picture: e.picture, + onClick: d, + }, + e.faceKey + ) + ), + [t, w, x, d] + ); + return (0, n.jsx)("div", { + className: h.switchContainer, + children: (0, n.jsxs)("div", { + className: h.switch, + ref: I, + children: [ + (0, n.jsx)("div", { + className: h.itemWrap, + style: { transform: "translateX(".concat(u, "px)") }, + children: C, + }), + _ && + (0, n.jsx)(v, { + externalClassName: h.prevIcon, + icon: c.USi, + onClick: S, + }), + g && + (0, n.jsx)(v, { + externalClassName: h.nextIcon, + icon: c.AQS, + onClick: M, + }), + ], + }), + }); + }, + w = (e) => { + var t, + i, + { image: l, imageScale: c } = e, + d = (0, o.lS)(), + u = a.o.getGraphicToolStoreInstance(d), + f = null == u ? void 0 : u.faceGanInstance, + h = (0, s.k)(f, (e) => { + var t, i; + return { + faceRects: null !== (t = e.faceRects) && void 0 !== t ? t : [], + selectedIndex: + null !== (i = e.selectRectIndex) && void 0 !== i ? i : -1, + }; + }); + (0, r.useEffect)(() => { + null == f || f.setScale(c); + }, [f, c]), + (0, r.useEffect)(() => { + null == f || f.clipFacePicture(l.url); + }, [f, l]); + var p = (e) => { + null == f || f.selectFaceRect(e); + }; + return (0, n.jsx)(I, { + selectedIndex: + null !== (t = null == h ? void 0 : h.selectedIndex) && + void 0 !== t + ? t + : -1, + faces: + null !== (i = null == h ? void 0 : h.faceRects) && void 0 !== i + ? i + : [], + onSelectFace: p, + }); + }; + }, + 899716: function (e, t, i) { + "use strict"; + i.d(t, { a: () => C }); + var n = i("772322"), + r = i("218571"), + a = "ipKeepInteract-yupASB", + o = i("733437"), + s = i("489897"), + l = i("105789"), + c = i.n(l), + d = i("188754"), + u = "referenceLevelContainer-KDzjq5", + f = "referenceContent-PGafI6", + h = "paramPanel-gQpPze", + p = "paramItem-SSPLpE", + v = "sliderTitle-kZqg6r", + m = "sliderWrap-pLJHn_", + g = "slider-WYpcPn", + _ = "sliderResult-xqniMw", + y = "interactArea-JIJtDg", + b = "active-FQajr0", + I = "paramIcon-yHxKyZ", + w = i("763284"), + x = i("443213"), + S = i("949274"), + M = (e) => { + var { + ipWeight: t, + idWeight: i, + isActive: r, + onIpWeightAfterChange: a, + onIdWeightAfterChange: o, + onIdWeightChange: l, + onIpWeightChange: M, + onUpdateReferenceBarActive: C, + onReferenceLevelVisibleChange: T, + } = e; + return (0, n.jsx)(x.E, { + containerClassName: u, + contentClassName: f, + onVisibleChange: T, + content: (0, n.jsxs)("div", { + className: h, + children: [ + (0, n.jsxs)("div", { + className: p, + children: [ + (0, n.jsx)("div", { + className: v, + children: S.oc.t( + "character_face_reference_intensity", + {}, + "Face guidance" + ), + }), + (0, n.jsxs)("div", { + className: m, + children: [ + (0, n.jsx)(w.i, { + max: s.ux.id.max, + min: s.ux.id.min, + step: s.ux.id.step, + value: i, + onChange: l, + triggerBar: !0, + className: g, + onAfterChange: o, + }), + (0, n.jsx)("span", { + className: _, + children: Math.round(i), + }), + ], + }), + ], + }), + (0, n.jsxs)("div", { + className: p, + children: [ + (0, n.jsx)("div", { + className: v, + children: S.oc.t( + "character_body_reference_intensity", + {}, + "Whole body guidance" + ), + }), + (0, n.jsxs)("div", { + className: m, + children: [ + (0, n.jsx)(w.i, { + max: s.ux.ip.max, + min: s.ux.ip.min, + step: s.ux.ip.step, + value: t, + onChange: M, + triggerBar: !0, + className: g, + onAfterChange: a, + }), + (0, n.jsx)("span", { + className: _, + children: Math.round(t), + }), + ], + }), + ], + }), + ], + }), + children: (0, n.jsxs)("div", { + className: c()(y, { [b]: r }), + onClick: () => C(), + children: [ + (0, n.jsx)(d.ygK, { className: I }), + (0, n.jsx)("span", { + children: S.oc.t("wimg2img_title_intensity", {}, "Intensity"), + }), + ], + }), + }); + }, + C = (e) => { + var t, + { instance: i } = e, + [l, c] = (0, r.useState)(!1), + { + refIdWeight: d = s.ux.id.default, + refIpWeight: u = s.ux.ip.default, + } = + null !== + (t = (0, o.k)(i, (e) => ({ + refIpWeight: null == e ? void 0 : e.refIpWeight, + refIdWeight: null == e ? void 0 : e.refIdWeight, + }))) && void 0 !== t + ? t + : {}, + f = (e) => { + if (!Array.isArray(e)) null == i || i.updateRefIdWeight(e); + }, + h = (e) => { + if (!Array.isArray(e)) null == i || i.updateRefIpWeight(e); + }, + p = (e) => { + c(e); + }, + v = () => { + c(!0); + }; + return (0, n.jsx)("div", { + className: a, + children: (0, n.jsx)(M, { + ipWeight: u, + idWeight: d, + isActive: l, + onIdWeightChange: f, + onIpWeightChange: h, + onUpdateReferenceBarActive: v, + onReferenceLevelVisibleChange: p, + }), + }); + }; + }, + 489897: function (e, t, i) { + "use strict"; + i.d(t, { + FY: function () { + return f; + }, + K5: function () { + return u; + }, + KE: function () { + return b; + }, + Mp: function () { + return h; + }, + Mu: function () { + return I; + }, + Up: function () { + return m; + }, + XR: function () { + return S; + }, + Ze: function () { + return A; + }, + cR: function () { + return d; + }, + d7: function () { + return R; + }, + fx: function () { + return y; + }, + go: function () { + return k; + }, + hR: function () { + return C; + }, + hW: function () { + return P; + }, + k0: function () { + return w; + }, + kQ: function () { + return l; + }, + mg: function () { + return D; + }, + og: function () { + return p; + }, + p4: function () { + return T; + }, + pb: function () { + return g; + }, + rK: function () { + return E; + }, + rj: function () { + return c; + }, + uS: function () { + return v; + }, + ux: function () { + return M; + }, + yY: function () { + return x; + }, + zt: function () { + return _; + }, + }); + var n = i(224671), + r = i(417281), + a = i(108982), + o = i(65830), + s = i(630516), + l = { + [a.s.ByteEdit]: "Custom", + [a.s.FaceGan]: "Human face", + [a.s.BgPaint]: "Object", + [a.s.BasicBlend]: "Reference image style", + [a.s.IpKeep]: "Character", + [a.s.ControlNetCanny]: "Edge", + [a.s.ControlNetDepth]: "Depth", + [a.s.ControlNetPose]: "Pose", + [a.s.Unknown]: "", + [a.s.ControlNet]: "", + [a.s.Text2image]: "", + [a.s.Image2image]: "", + [a.s.StyleReference]: "Reference image style", + [a.s.StyleCode]: "Style code", + }, + c = { + [a.s.ByteEdit]: "image_reference_option_custom", + [a.s.FaceGan]: "dre_t2i_reference_option_one_face", + [a.s.BgPaint]: "wimg2img_content_body", + [a.s.BasicBlend]: "wimg2img_content_spread", + [a.s.IpKeep]: "IP_web_control", + [a.s.ControlNetCanny]: "function_canny", + [a.s.ControlNetDepth]: "function_depth", + [a.s.ControlNetPose]: "function_pose", + [a.s.Unknown]: "", + [a.s.ControlNet]: "", + [a.s.Text2image]: "", + [a.s.Image2image]: "", + [a.s.StyleReference]: "style_image", + [a.s.StyleCode]: "dre_t2i_style_code_placeholder", + }, + d = { min: 1, max: 100, step: 1, default: 50 }, + u = { min: 0, max: 1, step: 0.05, default: 0.25 }, + f = { min: 0, max: 100, step: 1, default: 80 }, + h = "imagine-modal", + p = 0.5, + v = "imagine-modal-main", + m = 4, + g = 32, + _ = 1, + y = 20, + b = 3, + I = 16 / 9, + w = n.jP.OneOne, + x = 4, + S = { min: 1, max: 100, step: 1, default: 60 }, + M = { + ip: { min: 1, max: 100, step: 1, default: 70, rate: 100 }, + id: { min: 1, max: 100, step: 1, default: 90, rate: 100 }, + }, + C = 150, + T = 140, + A = 160, + k = { + [a.s.ControlNetCanny]: r.kR.ControlNetCanny, + [a.s.ControlNetDepth]: r.kR.ControlNetDepth, + [a.s.ControlNetPose]: r.kR.ControlNetPose, + }, + P = { + [a.s.ControlNetCanny]: o.gZ.Canny, + [a.s.ControlNetDepth]: o.gZ.Depth, + [a.s.ControlNetPose]: o.gZ.Pose, + [a.s.BgPaint]: o.gZ.Subject, + [a.s.FaceGan]: o.gZ.Face, + [a.s.BasicBlend]: o.gZ.Basic, + [a.s.Text2image]: o.gZ.Text2Image, + [a.s.Image2image]: o.gZ.Image2Image, + [a.s.IpKeep]: o.gZ.IpKeep, + [a.s.StyleReference]: o.gZ.Style, + [a.s.ByteEdit]: o.gZ.ByteEdit, + [a.s.StyleCode]: o.gZ.StyleCode, + }, + E = { + [a.G.AdaptToCanvas]: s.cU.NoCutout, + [a.G.CenterCrop]: s.cU.Cutout, + }, + D = { + [n.jP.OneOne]: 1, + [n.jP.ThreeFour]: 3 / 4, + [n.jP.SixteenNine]: 16 / 9, + [n.jP.TwentyOneNine]: 21 / 9, + [n.jP.FourThree]: 4 / 3, + [n.jP.NineSixteen]: 9 / 16, + [n.jP.TwoThree]: 2 / 3, + [n.jP.ThreeTwo]: 1.5, + }, + R = [1, 3 / 4, 16 / 9, 21 / 9, 4 / 3, 9 / 16, 2 / 3, 1.5]; + }, + 537201: function (e, t, i) { + "use strict"; + i.d(t, { + i: function () { + return a; + }, + }); + var n = i(417281), + r = i(108982), + a = { + [n.kR.ControlNetCanny]: r.s.ControlNetCanny, + [n.kR.ControlNetDepth]: r.s.ControlNetDepth, + [n.kR.ControlNetPose]: r.s.ControlNetPose, + [n.kR.ControlNetBgPaint]: r.s.BgPaint, + [n.UI.ControlNet]: r.s.ControlNet, + [n.UI.BasicBlend]: r.s.BasicBlend, + [n.UI.BgPaint]: r.s.BgPaint, + [n.UI.FaceGan]: r.s.FaceGan, + [n.UI.StyleReference]: r.s.StyleReference, + [n.UI.Unknown]: r.s.Unknown, + [n.UI.Text2image]: r.s.Text2image, + [n.UI.Image2image]: r.s.Image2image, + [n.UI.IpKeep]: r.s.IpKeep, + [n.UI.ByteEdit]: r.s.ByteEdit, + [n.UI.StyleCode]: r.s.StyleCode, + }; + }, + 466740: function (e, t, i) { + "use strict"; + i.d(t, { + Gj: function () { + return r; + }, + N_: function () { + return s; + }, + dR: function () { + return o; + }, + lS: function () { + return a; + }, + }); + var n = i(218571), + r = (0, n.createContext)(null), + a = () => (0, n.useContext)(r), + o = (0, n.createContext)(null), + s = () => { + var e; + return null !== (e = (0, n.useContext)(o)) && void 0 !== e ? e : {}; + }; + }, + 108982: function (e, t, i) { + "use strict"; + i.d(t, { + G: function () { + return a; + }, + s: function () { + return r; + }, + }); + var n = i(417281), + r = (function (e) { + return ( + (e[(e.ByteEdit = n.UI.ByteEdit)] = "ByteEdit"), + (e[(e.FaceGan = n.UI.FaceGan)] = "FaceGan"), + (e[(e.BgPaint = n.UI.BgPaint)] = "BgPaint"), + (e[(e.BasicBlend = n.UI.BasicBlend)] = "BasicBlend"), + (e[(e.IpKeep = n.UI.IpKeep)] = "IpKeep"), + (e[(e.Unknown = n.UI.Unknown)] = "Unknown"), + (e[(e.ControlNet = n.UI.ControlNet)] = "ControlNet"), + (e[(e.ControlNetCanny = n.kR.ControlNetCanny)] = "ControlNetCanny"), + (e[(e.ControlNetDepth = n.kR.ControlNetDepth)] = "ControlNetDepth"), + (e[(e.ControlNetPose = n.kR.ControlNetPose)] = "ControlNetPose"), + (e[(e.Text2image = n.UI.Text2image)] = "Text2image"), + (e[(e.Image2image = n.UI.Image2image)] = "Image2image"), + (e[(e.StyleReference = n.UI.StyleReference)] = "StyleReference"), + (e[(e.StyleCode = n.UI.StyleCode)] = "StyleCode"), + e + ); + })({}), + a = (function (e) { + return ( + (e.CenterCrop = "center_crop"), + (e.AdaptToCanvas = "adapt_to_canvas"), + e + ); + })({}); + }, + 787424: function (e, t, i) { + "use strict"; + i.d(t, { J: () => v }); + var n = i("625572"), + r = i("772322"), + a = i("218571"), + o = i("105789"), + s = i.n(o), + l = "hanging-XeriwE", + c = "fixed-bQRfc3", + d = "hangingMask-muaoQC", + u = "hangingMaskHidden-edsn1_", + f = 300, + h = (e) => { + var { + visible: t, + content: i, + onRemove: n, + mask: o = !0, + fixed: h = !0, + zIndex: p = "99999", + } = e; + return ( + (0, a.useEffect)(() => { + var e; + return ( + !t && + (e = setTimeout(() => { + null == n || n(); + }, f)), + () => clearTimeout(e) + ); + }, [t, n]), + (0, r.jsx)("div", { + style: { zIndex: p }, + className: s()(l, { [c]: h, [d]: o, [u]: !t }), + children: (0, r.jsx)("div", { children: i }), + }) + ); + }, + p = i("827955"); + class v { + show(e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : { container: document.body, zIndex: "9999" }, + { + showMask: i = !0, + container: n = document.body, + zIndex: r = "9999", + } = t, + a = document.createElement("div"); + (a.style.position = "relative"), + (a.style.zIndex = r), + n !== document.body && + ((a.style.left = "50%"), + (a.style.transform = "translateX(-50%)")), + n.appendChild(a), + (this._container = a); + var o = () => { + var e; + null === (e = this._hangingRoot) || void 0 === e || e.destroy(), + (this._hangingRoot = void 0), + a.parentNode && a.parentNode.removeChild(a); + }; + (this._hangingProps = { + content: e, + visible: !0, + mask: i, + onRemove: () => { + o(); + }, + zIndex: r, + fixed: n === document.body, + }), + this._render(this._hangingProps); + } + hide() { + this._hangingProps && + ((this._hangingProps.visible = !1), + this._render(this._hangingProps)); + } + constructor() { + this._render = (e) => { + if (!!this._container) { + var t = (0, r.jsx)(h, (0, n._)({}, e)), + i = this._hangingRoot; + i + ? i.render(t) + : (this._hangingRoot = (0, p.s)(t, this._container)); + } + }; + } + } + }, + 827955: function (e, t, i) { + "use strict"; + i.d(t, { + s: function () { + return r; + }, + }); + var n = i(570126), + r = (e, t) => { + var i = (0, n.createRoot)(t); + return ( + i.render(e), + (i.destroy = function () { + setTimeout(() => { + var e; + null == i || + null === (e = i.unmount) || + void 0 === e || + e.call(i); + }); + }), + i + ); + }; + }, + 193305: function (e, t, i) { + "use strict"; + i.d(t, { s: () => l }); + var n = i("772322"); + i("894672"); + var r = i("274993"), + a = "specialTipIconContainer-cJP3TU", + o = "specialTipIcon-JvaQ6N", + s = i("188754"), + l = (e) => { + var { content: t, containerStyle: i = {}, size: l } = e; + return (0, n.jsx)(r.Z, { + className: "specialTipWrapper", + content: t, + triggerProps: { mouseEnterDelay: 300 }, + children: (0, n.jsx)("div", { + className: a, + style: i, + children: (0, n.jsx)(s.oUg, { className: o, size: l }), + }), + }); + }; + }, + 820: function (e, t, i) { + "use strict"; + i.d(t, { + kt: function () { + return l; + }, + l3: function () { + return d; + }, + nv: function () { + return c; + }, + }); + var n = i(224671), + r = i(799108), + a = i(949274), + o = i(150022), + s = i(27433), + l = (e) => !!e && Object.keys(e).length > 1, + c = (e, t, i) => { + if (!e) return []; + var l = (e) => + !!i && + (0, s.be)({ scene: e, commercialStrategyService: i }) + .isStrategyFreeTrial, + c = { + [n.YD.ImageResolutionType_2k]: { + commercialKey: r.hO.ImageUhd, + showTooltip: t || l(r.hO.ImageUhd), + tooltipConfig: { + img: o, + text: a.ZP.t( + "dre_t2i_setting_resolution_option_2k", + {}, + "High (2K)" + ), + desc: a.ZP.t( + "dre_t2i_model_3_0_intro_desc", + {}, + "Supports native high-resolution generation, with enhanced structure and details." + ), + }, + hasRights: t || l(r.hO.ImageUhd), + }, + [n.YD.ImageResolutionType_1k]: { + commercialKey: void 0, + showTooltip: !1, + tooltipConfig: void 0, + hasRights: !0, + }, + }; + return Object.entries(e).map((e) => { + var t, + [i, n] = e, + r = i; + return { + value: r, + label: + null !== (t = n.resolutionName) && void 0 !== t ? t : String(i), + commercialKey: c[r].commercialKey, + showTooltip: c[r].showTooltip, + tooltipConfig: c[r].tooltipConfig, + hasRights: c[r].hasRights, + }; + }); + }, + d = (e, t, i) => { + if (!t || !i) return; + var n = t[e]; + if (!(null == n ? void 0 : n.imageRatioSizes)) return; + var r = n.imageRatioSizes.find((e) => e.ratioType === i); + if ( + !!(null == r ? void 0 : r.width) && + !!(null == r ? void 0 : r.height) + ) + return { width: r.width, height: r.height }; + }; + }, + 665498: function (e, t, i) { + "use strict"; + i.d(t, { + E7: function () { + return a; + }, + UW: function () { + return s; + }, + }); + var n = i(224671), + r = i(998463), + a = { + [n.jP.OneOne]: n.jP.OneOne, + [n.jP.FourThree]: n.jP.FourThree, + [n.jP.ThreeTwo]: n.jP.ThreeTwo, + [n.jP.SixteenNine]: n.jP.SixteenNine, + [n.jP.TwentyOneNine]: n.jP.TwentyOneNine, + [n.jP.ThreeFour]: n.jP.ThreeFour, + [n.jP.TwoThree]: n.jP.TwoThree, + [n.jP.NineSixteen]: n.jP.NineSixteen, + }, + o = [ + { text: r.pC[n.jP.TwentyOneNine], type: n.jP.TwentyOneNine }, + { text: r.pC[n.jP.SixteenNine], type: n.jP.SixteenNine }, + { text: r.pC[n.jP.ThreeTwo], type: n.jP.ThreeTwo }, + { text: r.pC[n.jP.FourThree], type: n.jP.FourThree }, + { text: r.pC[n.jP.OneOne], type: n.jP.OneOne }, + { text: r.pC[n.jP.ThreeFour], type: n.jP.ThreeFour }, + { text: r.pC[n.jP.TwoThree], type: n.jP.TwoThree }, + { text: r.pC[n.jP.NineSixteen], type: n.jP.NineSixteen }, + ], + s = (e, t) => { + if (t && e) { + var i = t[e]; + if (null == i ? void 0 : i.imageRatioSizes) + return i.imageRatioSizes.map((e) => { + var t, + i = + a[ + null !== (t = e.ratioType) && void 0 !== t + ? t + : n.jP.OneOne + ]; + return { text: r.pC[i], type: i }; + }); + } + return o; + }; + }, + 671235: function (e, t, i) { + "use strict"; + i.d(t, { b: () => u }); + var n = i("625572"), + r = i("639880"), + a = i("96"), + o = i("772322"); + i("894672"); + var s = i("274993"), + l = i("105789"), + c = i.n(l), + d = "infoTooltip-UbdA6M", + u = (e) => { + var { className: t, children: i } = e, + l = (0, a._)(e, ["className", "children"]); + return (0, o.jsx)( + s.Z, + (0, r._)( + (0, n._)( + { + className: c()(t, d), + showArrow: !0, + triggerProps: { popupAlign: { bottom: 4 } }, + }, + l + ), + { children: i } + ) + ); + }; + }, + 4255: function (e, t, i) { + "use strict"; + i.d(t, { F: () => L }); + var n = i("772322"); + i("894672"); + var r = i("293793"), + a = i("274993"), + o = i("949274"), + s = "insertQuotationMarksWrap-YV6mTg", + l = "disabled-I3nY9C", + c = "ettaIcon-M8gkfE", + d = "tipsInfo-qIxC96", + u = i("188754"), + f = i("218571"), + h = i("105789"), + p = i.n(h), + v = i("848303"), + m = i("2910"), + g = i("246940"), + _ = i("44938"), + y = "insert-quotation-marks-btn-guide-FA2ixa", + b = "insert-quotation-marks-btn-guide-content-Ua4AhC", + I = "insert-quotation-marks-btn-guide-mask-kBBpSO", + w = "tipContent-QAHraV", + x = "describe-_byA5Q", + S = "name-SRiIm2", + M = "img-akEA0n", + C = i.p + "static/image/image-text-etta-guide.560b9aa1.gif", + T = i.p + "static/image/image-text-etta-guide.92994ce4.webp", + A = () => { + var e = C, + t = T; + return (0, n.jsxs)("div", { + className: w, + children: [ + (0, n.jsxs)("picture", { + className: M, + children: [ + (0, n.jsx)("source", { srcSet: t, type: "image/webp" }), + (0, n.jsx)("img", { + src: (0, m.C)(e, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + className: M, + crossOrigin: "anonymous", + }), + ], + }), + (0, n.jsx)("div", { + className: S, + children: o.ZP.t( + "web_t2i_draw_words_popup_title", + {}, + 'Text in image Draw "text" on image' + ), + }), + (0, n.jsx)("div", { + className: x, + children: o.ZP.t( + "web_t2i_draw_words_popup_desc", + {}, + "Generate text in image via prompt by wrapping it inside quotation marks" + ), + }), + ], + }); + }, + k = (e) => { + var { elementRef: t, handleConfirm: i } = e; + return { + key: g.T.generateKey(_.u.isShowImageEttaGuide), + className: y, + maskClassName: I, + contentClassName: b, + maskBackgroundColor: "var(--mask-40)", + mask: !0, + maskClosable: !1, + showFooter: !0, + placeholderBorderWidth: "0px", + useNewArrow: !1, + showStepText: !1, + showSkipButton: !0, + cancelWithSkip: !0, + skipText: o.ZP.t("web_t2i_draw_words_popup_btn_ok", {}, "OK"), + okText: o.ZP.t("web_t2i_draw_words_popup_btn_try", {}, "Try it"), + placeholderRadius: 6, + steps: [ + { + target: t, + content: (0, n.jsx)(A, {}), + placement: "bl", + showCloseIcon: !1, + confirm: () => (null == i ? void 0 : i()), + }, + ], + }; + }, + P = i("699267"), + E = i("509320"), + D = i("178589"), + R = i("48252"), + N = 1e3 * parseFloat(v.Z.generateContainerAnimationDuration), + L = (e) => { + var { + disabled: t = !0, + disabledTips: i, + onClick: h, + needGuide: v = !1, + style: m, + } = e, + g = (0, P.G)(E.W), + _ = (0, f.useRef)(null), + y = (0, P.G)(D.e), + b = (0, r.default)(() => { + if (!t) null == h || h(); + }); + return ( + (0, f.useEffect)(() => { + if (!v || !_.current || t) return; + var e = k({ elementRef: _.current, handleConfirm: b }); + if (!g.getShowStateByKey(e.key)) { + setTimeout(() => { + g.trigger(e); + }, N); + var i = + null == y + ? void 0 + : y.onKeepAliveChange((t) => { + if (t.status === R.G.InActivated) { + var i = g.getCurrentShowState(); + i.key === e.key && i.show && g.clear(); + } + }); + return () => { + i.dispose(); + }; + } + }, [g, t, v, b, y]), + (0, n.jsx)(a.Z, { + content: t + ? i + : o.ZP.t( + "web_t2i_draw_words_feature_hover", + {}, + "Text in image Visualize text" + ), + className: d, + position: "top", + children: (0, n.jsx)("div", { + ref: _, + className: p()(s, { [l]: t }), + style: m, + onClick: b, + children: (0, n.jsx)(u.hkb, { className: c }), + }), + }) + ); + }; + }, + 161695: function (e, t, i) { + "use strict"; + i.d(t, { f: () => f }); + var n = i("772322"); + i("900992"); + var r = i("744932"), + a = i("159895"), + o = { + leftLabel: "leftLabel-UHs4bP", + rightContent: "rightContent-lkwP82", + itemTextarea: "itemTextarea-o61ksV", + itemWrapper: "itemWrapper-qJid9o", + itemTag: "itemTag-H0LWGd", + itemTagActivate: "itemTagActivate-llkdwA", + hidden: "hidden-pSWjlS", + }, + s = i("949274"), + l = i("218571"), + c = i("105789"), + d = i.n(c), + u = (0, l.memo)((e) => { + var { + config: t, + handleTagsChange: i, + handleOtherReasonChange: c, + } = e, + { + formType: u, + tagsValue: f, + category: h, + renderLabelHighLightFlag: p, + rightContentClassNames: v, + inputPlaceHolder: m, + } = t, + [g, _] = (0, l.useState)([]), + y = (e) => { + if (-1 !== g.findIndex((t) => t === e)) { + var t = g.filter((t) => t !== e); + _(t), null == i || i(h, t, e); + } else { + var n = [...g, e]; + _(n), null == i || i(h, n, e); + } + }, + b = (e) => { + null == c || c(e); + }; + switch (u) { + case a.T.tags: + return (0, n.jsxs)("div", { + className: o.itemWrapper, + children: [ + (0, n.jsxs)("div", { + className: o.leftLabel, + children: [s.ZP.t(h), null == p ? void 0 : p()], + }), + (0, n.jsx)("div", { + className: d()(o.rightContent, v), + children: f.map((e) => + (0, n.jsx)( + "div", + { + onClick: () => y(e), + className: d()({ + [o.itemTag]: !0, + [o.itemTagActivate]: g.includes(e), + }), + children: s.ZP.t(e), + }, + e + ) + ), + }), + ], + }); + case a.T.textarea: + return (0, n.jsxs)("div", { + className: o.itemWrapper, + children: [ + (0, n.jsxs)("div", { + className: o.leftLabel, + children: [s.ZP.t(h), null == p ? void 0 : p()], + }), + (0, n.jsx)("div", { + className: d()(o.rightContent, v), + children: (0, n.jsx)(r.Z.TextArea, { + autoFocus: !1, + maxLength: 400, + showWordLimit: !0, + onChange: b, + autoSize: !1, + className: o.itemTextarea, + placeholder: + null != m + ? m + : s.ZP.t( + "mreport_other", + {}, + "Why are you reporting this image?" + ), + }), + }), + ], + }); + default: + return null; + } + }), + f = (e) => { + var { + photoReportConfigs: t, + handleOtherReasonChange: i, + handleTagsChange: r, + } = e; + return (0, n.jsxs)(n.Fragment, { + children: [ + (0, n.jsx)("button", { className: o.hidden }), + (null != t ? t : []).map((e) => + (0, n.jsx)( + u, + { + handleOtherReasonChange: i, + handleTagsChange: r, + config: e, + }, + e.category + ) + ), + ], + }); + }; + }, + 898678: function (e, t, i) { + "use strict"; + i.d(t, { + xr: () => J, + lO: () => Y, + q8: () => q, + iU: () => X, + MY: () => Q, + }); + var n = i("139646"), + r = i("772322"); + i("245535"); + var a = i("76894"), + o = i("9156"), + s = i("81612"), + l = i("159895"), + c = i("949274"), + d = i("188754"), + u = i("625572"), + f = i("639880"), + h = i("161695"), + p = i("967355"), + v = "wrapper-eRU1ZP", + m = "button-qbLD2T", + g = i("218571"), + _ = i("369617"), + y = (e) => { + var { handleSubmit: t, onClose: i, disabled: a } = e, + [o, s] = (0, g.useState)(!1), + l = (function () { + var e = (0, n._)(function* () { + s(!0); + try { + yield null == t ? void 0 : t(), + _.s.success(c.ZP.t("mreport_submittoast", {}, "Submitted")), + i(); + } catch (e) { + _.s.warning( + c.ZP.t( + "mreport_networkerrortoast", + {}, + "Connect to the internet and try again" + ) + ); + } finally { + s(!1); + } + }); + return function () { + return e.apply(this, arguments); + }; + })(); + return (0, r.jsx)("div", { + className: v, + children: (0, r.jsx)(p.J, { + disabled: a, + loading: o, + type: "default", + onClick: l, + className: m, + text: c.ZP.t("mreport_submit_button", {}, "Submit"), + }), + }); + }, + b = i("105789"), + I = i.n(b), + w = "wrapper-c8UObY", + x = "imgItem-mBvfL5", + S = "activateImgItem-vm6fGH", + M = (e) => { + var { updateCurrentIndex: t, currentIndex: i, reportItemList: n } = e, + a = (e) => { + t(e); + }; + return n.length <= 1 + ? (0, r.jsx)(r.Fragment, {}) + : (0, r.jsx)("div", { + className: w, + children: n.map((e, t) => + (0, r.jsx)( + "div", + { + onClick: () => a(t), + className: I()({ [x]: !0, [S]: t === i }), + children: (0, r.jsx)("img", { + draggable: !1, + src: e.coverUrl, + alt: e.prompt, + crossOrigin: "anonymous", + }), + }, + e.id + ) + ), + }); + }, + C = i("379311"); + class T { + getEventParams() { + return { status: this._params.status }; + } + constructor(e) { + (this._params = e), (this.eventName = "picture_report_toast"); + } + } + function A(e, t) { + (0, C.Kl)(e, T, [t]); + } + var k = "tips-fLhRGR", + P = "redTips-X3et3J", + E = (e) => { + var { + photoReportConfigs: t, + reportItemList: i, + containerService: a, + mode: o, + onClose: s, + onSubmit: l, + } = e, + [d, p] = (0, g.useState)(0), + [v, m] = (0, g.useState)({}), + [_, b] = (0, g.useState)(""), + I = (0, g.useMemo)( + () => + 0 === _.length && + 0 === Object.values(v).reduce((e, t) => e + t.length, 0), + [v, _] + ), + w = (e, t) => { + m((0, f._)((0, u._)({}, v), { [e]: t })); + }, + x = (e) => { + b(e); + }, + S = (function () { + var e = (0, n._)(function* () { + var e = Object.values(v).flat(), + t = e.map((e) => c.ZP.t(e)); + _.length && (e.push("mreport_other_tittle"), t.push(_)); + var n = i[d]; + if ( + (yield l({ + itemId: n.id, + reasonKeyList: e, + reasonDescList: t, + selectedTags: v, + otherReason: _, + currentIndex: d, + })).ok + ) + A(a, { status: "success" }); + else + throw (A(a, { status: "fail" }), Error("'Submit data fail.")); + }); + return function () { + return e.apply(this, arguments); + }; + })(), + C = (e) => { + p(e); + }; + return (0, r.jsxs)(r.Fragment, { + children: [ + o === q.Photo + ? (0, r.jsx)(M, { + currentIndex: d, + updateCurrentIndex: C, + reportItemList: i, + }) + : null, + (0, r.jsxs)("div", { + className: k, + children: [ + c.ZP.t("mreport_select_tittle", {}, "Select reason"), + (0, r.jsx)("span", { className: P, children: "*" }), + ], + }), + (0, r.jsx)(h.f, { + handleOtherReasonChange: x, + handleTagsChange: w, + photoReportConfigs: t, + }), + (0, r.jsx)(y, { onClose: s, handleSubmit: S, disabled: I }), + ], + }); + }, + D = i("475578"), + R = i("881607"), + N = (function (e) { + return ( + (e.Image = "image"), (e.Canvas = "canvas"), (e.Audio = "audio"), e + ); + })({}); + class L { + getEventParams() { + return (0, u._)({}, (0, R.cu)(this._params)); + } + constructor(e) { + (this._params = e), (this.eventName = "picture_report"); + } + } + function j(e, t) { + (0, C.Kl)(e, L, [t]); + } + var O = i("229025"), + B = (e, t, i, n, r) => { + var { + commonAttr: { id: a }, + aigcImageParams: { + requestId: o, + text2imageParams: s, + generateType: l, + }, + } = e, + { + prompt: c, + modelConfig: { modelNameStarlingKey: d }, + } = s, + u = (0, O.Cg)(l), + f = []; + for (var h of Object.entries(i)) h[1].length && f.push(h[0]); + t.length && f.push("mreport_other_tittle"), + j(n, { + type: N.Image, + reportCategory: Object.keys(i).flat().join(","), + reportContent: Object.values(i).flat().join(","), + otherReportContent: t, + isSuperResolution: u ? D._O.True : D._O.False, + model: d, + pictureId: a, + templateId: a, + prompt: c, + requestId: o, + secondPage: r, + }); + }, + F = (e, t, i, n, r) => { + var { + commonAttr: { id: a }, + } = e, + o = []; + for (var s of Object.entries(i)) s[1].length && o.push(s[0]); + t.length && o.push("mreport_other_tittle"), + j(n, { + type: N.Canvas, + reportCategory: Object.keys(i).flat().join(","), + reportContent: Object.values(i).flat().join(","), + otherReportContent: t, + templateId: a, + secondPage: r, + }); + }, + U = "modelContainer-cH0x6U", + G = "modalWrapper-f_VR5U", + z = "closeBtn-vbBgHY", + V = (e) => + e + ? e.map((e) => { + var { + commonAttr: { id: t, coverUrl: i }, + aigcImageParams: { text2imageParams: n }, + } = e, + { prompt: r } = n; + return { coverUrl: i, id: t, prompt: r }; + }) + : [], + W = (e) => + e + ? e.map((e) => { + var { id: t, coverUrl: i, prompt: n, videoUrl: r } = e; + return { videoUrl: r, coverUrl: i, id: t, prompt: n }; + }) + : [], + Z = (e) => + e + ? e.map((e) => { + var { commonAttr: t } = e, + { id: i, coverUrl: n = "", title: r = "" } = t; + return { id: i, coverUrl: n, prompt: r }; + }) + : [], + K = i("487736"), + H = i("259435"), + q = (function (e) { + return ( + (e.Photo = "photo"), + (e.Video = "video"), + (e.Canvas = "canvas"), + (e.Audio = "audio"), + e + ); + })({}), + J = (function () { + var e = (0, n._)(function* (e, t) { + var { reportItemList: i, secondPage: u, onSubmitFinish: f } = t, + h = null == e ? void 0 : e.invokeFunction((e) => e.get(o.A)), + p = null == e ? void 0 : e.invokeFunction((e) => e.get(s.m)), + v = yield h.aggregate.getImcConfigByKey(l.c.PhotoReportConfigs), + m = null, + g = (function () { + var t = (0, n._)(function* (t) { + var { currentIndex: n, otherReason: r, selectedTags: a } = t, + o = yield p.repository.reportPhoto(t); + return B(i[n], r, a, e, u), null == f || f(), o; + }); + return function (e) { + return t.apply(this, arguments); + }; + })(), + _ = () => { + null == m || m.close(); + }, + y = (0, H.C)(e, K.M.ReportModal); + m = a.Z.confirm({ + footer: null, + icon: null, + maskClosable: !1, + afterClose: () => { + y.unmount(); + }, + escToExit: !1, + backspaceToExit: !1, + title: c.ZP.t("mreport_tittle", {}, "Report image"), + wrapClassName: G, + className: U, + closeIcon: (0, r.jsx)(d.Rnl, { className: z }), + content: (0, r.jsx)(E, { + photoReportConfigs: null != v ? v : [], + onSubmit: g, + onClose: _, + reportItemList: V(i), + containerService: e, + mode: "photo", + }), + }); + }); + return function (t, i) { + return e.apply(this, arguments); + }; + })(), + Y = (function () { + var e = (0, n._)(function* (e, t) { + var { reportItemList: i, secondPage: u } = t, + f = null == e ? void 0 : e.invokeFunction((e) => e.get(o.A)), + h = yield f.aggregate.getImcConfigByKey(l.c.VideoReportConfigs), + p = null == e ? void 0 : e.invokeFunction((e) => e.get(s.m)), + v = null, + m = (function () { + var e = (0, n._)(function* (e) { + var i, + n = yield p.repository.reportPhoto(e); + return ( + null === (i = t.onSubmit) || void 0 === i || i.call(t), n + ); + }); + return function (t) { + return e.apply(this, arguments); + }; + })(), + g = () => { + null == v || v.close(); + }, + _ = (0, H.C)(e, K.M.ReportModal); + v = a.Z.confirm({ + footer: null, + icon: null, + maskClosable: !1, + escToExit: !1, + afterClose: () => { + _.unmount(); + }, + backspaceToExit: !1, + title: c.ZP.t("mreport_tittle", {}, "Report image"), + wrapClassName: G, + className: U, + closeIcon: (0, r.jsx)(d.Rnl, { className: z }), + content: (0, r.jsx)(E, { + photoReportConfigs: null != h ? h : [], + onSubmit: m, + onClose: g, + reportItemList: W(i), + containerService: e, + mode: "video", + }), + }); + }); + return function (t, i) { + return e.apply(this, arguments); + }; + })(), + Q = (function () { + var e = (0, n._)(function* (e, t) { + var { reportItemList: i, secondPage: u } = t, + f = null == e ? void 0 : e.invokeFunction((e) => e.get(o.A)), + h = yield f.aggregate.getImcConfigByKey(l.c.VideoReportConfigs), + p = null == e ? void 0 : e.invokeFunction((e) => e.get(s.m)), + v = null, + m = (function () { + var r = (0, n._)(function* (n) { + var r, + { currentIndex: a, otherReason: o, selectedTags: s } = n, + l = yield p.repository.reportPhoto(n); + return ( + null === (r = t.onSubmit) || void 0 === r || r.call(t), + F(i[a], o, s, e, u), + l + ); + }); + return function (e) { + return r.apply(this, arguments); + }; + })(), + g = () => { + null == v || v.close(); + }; + v = a.Z.confirm({ + footer: null, + icon: null, + maskClosable: !1, + escToExit: !1, + backspaceToExit: !1, + title: c.ZP.t("mreport_tittle", {}, "Report image"), + wrapClassName: G, + className: U, + closeIcon: (0, r.jsx)(d.Rnl, { className: z }), + content: (0, r.jsx)(E, { + photoReportConfigs: null != h ? h : [], + onSubmit: m, + onClose: g, + reportItemList: Z(i), + containerService: e, + mode: "canvas", + }), + }); + }); + return function (t, i) { + return e.apply(this, arguments); + }; + })(), + X = (function () { + var e = (0, n._)(function* (e, t) { + var { reportItemList: i, secondPage: u } = t, + f = null == e ? void 0 : e.invokeFunction((e) => e.get(o.A)), + h = yield f.aggregate.getImcConfigByKey(l.c.AudioReportConfigs), + p = null == e ? void 0 : e.invokeFunction((e) => e.get(s.m)), + v = null, + m = (function () { + var e = (0, n._)(function* (e) { + var i, + n = yield p.repository.reportPhoto(e); + return ( + null === (i = t.onSubmit) || void 0 === i || i.call(t), n + ); + }); + return function (t) { + return e.apply(this, arguments); + }; + })(), + g = () => { + null == v || v.close(); + }; + v = a.Z.confirm({ + footer: null, + icon: null, + maskClosable: !1, + escToExit: !1, + backspaceToExit: !1, + title: c.ZP.t("ai_report_content", {}, "Report Audio"), + wrapClassName: G, + className: U, + closeIcon: (0, r.jsx)(d.Rnl, { className: z }), + content: (0, r.jsx)(E, { + photoReportConfigs: null != h ? h : [], + onSubmit: m, + onClose: g, + reportItemList: i, + containerService: e, + mode: "audio", + }), + }); + }); + return function (t, i) { + return e.apply(this, arguments); + }; + })(); + }, + 747029: function (e, t, i) { + "use strict"; + i.d(t, { + HG: function () { + return r; + }, + Jh: function () { + return s; + }, + OO: function () { + return l; + }, + Yo: function () { + return a; + }, + }); + var n = i(950835); + function r() { + return (0, n.Rl)().toString(); + } + var a = (e) => { + var t, i; + return null !== + (i = + null === (t = document.getElementById(e)) || void 0 === t + ? void 0 + : t.getBoundingClientRect()) && void 0 !== i + ? i + : { left: 0, top: 0, right: 0, bottom: 0 }; + }; + function o(e) { + return ( + !e || + (!!e.isText && + !!(e.text && "string" == typeof e.text && "" === e.text.trim())) + ); + } + function s(e, t) { + for (var i = t; i > 0; ) { + var n = e.state.doc.resolve(i - 1), + r = n.nodeBefore; + if (r && !o(r)) return r; + if (n.depth <= 0) break; + i = n.before(); + } + return null; + } + function l(e, t) { + for (var i = t; i < e.state.doc.content.size; ) { + var n = e.state.doc.resolve(i + 1), + r = n.nodeAfter; + if (r && !o(r)) return r; + if (n.depth <= 0) break; + i = n.after(); + } + return null; + } + }, + 264022: function (e, t, i) { + "use strict"; + i.d(t, { r: () => b }); + var n = i("139646"), + r = i("772322"); + i("155582"), i("645523"), i("596477"), i("120671"); + var a = i("56370"), + o = i("750633"), + s = i("216956"), + l = i("425962"), + c = i("188754"), + d = i("949274"), + u = i("218571"), + f = i("917730"), + h = i("798181"), + p = { + activityButton: "activityButton-eyqqBs", + staticActKey: "staticActKey-pEwLAj", + activitySelectorMenu: "activitySelectorMenu-FzwRBH", + activitySelectorMenuItem: "activitySelectorMenuItem-ySdsyy", + selectedIcon: "selectedIcon-nHe5XO", + emptyContent: "emptyContent-Ekp_nZ", + }, + v = i("967355"), + m = i("105789"), + g = i.n(m), + _ = i("41723"), + y = i.n(_), + b = (e) => { + var t, + { + mwebActivityService: i, + publishItemType: m, + className: _, + setSelectedActivityInfo: b, + emptyText: I = d.ZP.t( + "dreamina_publish_no_for_now", + {}, + "No ongoing activities for now" + ), + } = e, + [w, x] = (0, u.useState)([]), + [S, M] = (0, u.useState)(!1), + [C, T] = (0, u.useState)(!1), + { weeklyActivityKey: A } = (0, h.Xj)(), + [k, P] = (0, u.useState)({ key: "", name: "" }), + E = (0, u.useMemo)( + () => + w.filter((e) => e.actWorkTypeList.includes(m) && !e.actTerms), + [w, m] + ), + D = E.some( + (e) => e.actKey === k.key && e.actWorkTypeList.includes(m) + ), + R = E.some((e) => e.actKey === A && e.actWorkTypeList.includes(m)), + N = D ? k.key : "", + L = + k.name || + (null === (t = w.find((e) => e.actKey === N)) || void 0 === t + ? void 0 + : t.actName), + j = !R || !D, + O = (0, u.useRef)(b); + return ( + (O.current = b), + (0, u.useEffect)(() => { + var e; + null === (e = O.current) || + void 0 === e || + e.call(O, { key: N, name: null != L ? L : "" }); + }, [N, L]), + (0, u.useEffect)(() => { + if (!!i) + (function () { + var e = (0, n._)(function* () { + M(!0); + var e = yield i.getWeeklyChallengeList(); + if ((M(!1), !!e.ok)) + x( + e.value.actInfoList + .filter((e) => e.actStatus === f.Dh.InProgress) + .sort((e, t) => + y()(e.actStartTime).valueOf() > + y()(t.actStartTime).valueOf() + ? -1 + : 1 + ) + ), + P({ key: null != A ? A : "", name: "" }); + }); + return function () { + return e.apply(this, arguments); + }; + })()(); + }, [i]), + (0, r.jsx)(l.Z, { + position: "bl", + trigger: "click", + popupVisible: C, + onVisibleChange: (e) => { + if (!e || !!j) T(e); + }, + droplist: (0, r.jsx)(o.Z, { + loading: S, + children: (0, r.jsxs)(s.Z, { + selectedKeys: [N], + className: p.activitySelectorMenu, + children: [ + !(null == E ? void 0 : E.length) && + (0, r.jsx)("div", { + className: p.emptyContent, + children: I, + }), + !!(null == E ? void 0 : E.length) && + E.map((e) => + (0, r.jsxs)( + s.Z.Item, + { + className: p.activitySelectorMenuItem, + onClick: () => { + P({ key: e.actKey, name: e.actName }), T(!1); + }, + children: [ + (0, r.jsx)(a.Z.Paragraph, { + ellipsis: { expanded: !0, wrapper: "span" }, + children: e.actName, + }), + N === e.actKey && + (0, r.jsx)("div", { + className: p.selectedIcon, + children: (0, r.jsx)(c.DLY, { size: 12 }), + }), + ], + }, + e.actKey + ) + ), + ], + }), + }), + children: (0, r.jsx)(v.J, { + type: "tertiary", + PrevIcon: () => + N + ? (0, r.jsx)(c.yAf, { size: 14 }) + : (0, r.jsx)(c.zGS, { size: 14 }), + SuffixIcon: + j && N + ? () => + (0, r.jsx)(c.Rnl, { + size: 14, + onClick: (e) => { + e.stopPropagation(), + P({ key: "", name: "" }), + T(!1); + }, + }) + : void 0, + className: g()(p.activityButton, _, !j && p.staticActKey), + text: N + ? L || N + : d.ZP.t( + "dreamina_publish_add_challenge", + {}, + "Select activity" + ), + overflowEllipsis: !0, + }), + }) + ); + }; + }, + 624772: function (e, t, i) { + "use strict"; + i.d(t, { V: () => d }); + var n = i("772322"); + i("900992"); + var r = i("744932"), + a = i("218571"), + o = { + textContainer: "textContainer-Ak3Icp", + inputArea: "inputArea-SA7TIs", + positionWrapper: "positionWrapper-Dhgn6q", + focus: "focus-jb1APR", + bottomLeftModule: "bottomLeftModule-vtNn38", + lackTextInfo: "lackTextInfo-jHLVs5", + }, + s = i("79532"), + l = i("105789"), + c = i.n(l), + d = (e) => { + var { + title: t, + placeholder: i, + maxLength: l, + onTextChange: d, + onTextFocus: u, + onTextBlur: f, + errorInfo: h, + required: p, + wrapperClassName: v, + inputClassName: m, + bottomLeftModule: g, + } = e, + [_, y] = (0, a.useState)(!1); + return (0, n.jsxs)("div", { + className: c()(o.textContainer, v), + children: [ + (0, n.jsxs)("div", { + className: s.Z.textLabelContainer, + children: [ + (0, n.jsx)("span", { className: s.Z.textLabel, children: t }), + p && + (0, n.jsx)("span", { + className: s.Z.forceInputIcon, + children: "*", + }), + ], + }), + (0, n.jsxs)("div", { + className: c()(o.positionWrapper, _ && o.focus, m), + children: [ + (0, n.jsx)(r.Z.TextArea, { + className: o.inputArea, + onChange: (e) => { + null == d || d(e.trim()); + }, + onFocus: () => { + y(!0), null == u || u(); + }, + onBlur: () => { + y(!1), null == f || f(); + }, + placeholder: i, + maxLength: { length: l, errorOnly: !1 }, + showWordLimit: !0, + }), + (0, n.jsx)("div", { + className: o.bottomLeftModule, + children: g, + }), + (0, n.jsx)("div", { + className: o.lackTextInfo, + children: null != h ? h : "", + }), + ], + }), + ], + }); + }; + }, + 483487: function (e, t, i) { + "use strict"; + i.d(t, { F: () => u }); + var n = i("772322"); + i("218571"); + var r = i("161814"), + a = { + promptWithImgWrapperHeight: "24px", + promptWithImgWrapperWidth: "123px", + promptSeedIconSize: "12px", + videoPromptPaddingVertical: "12px", + videoControlsHeight: "32px", + videoPaddingTop: "20px", + videoMarginBottom: "28px", + generateListPadding: "24px", + generateListDateWidth: "46px", + videoContainerPaddingRight: "86px", + feedCarouselHeight: "220px", + videoFeedHeaderHeight: "45px", + generatePanelMarginLeft: "16px", + masonryGap: "8px", + generationEntryHeight: "172px", + generationEntryMarginBottom: "16px", + videoMenuItemWidth: "184px", + videoMenuWidth: "160px", + exploreFeedTabHeight: "32px", + exploreFeedTabPaddingBottom: "20px", + headerHeight: "76px", + exploreFeedCategoryHeight: "32px", + exploreFeedCategoryPaddingBottom: "16px", + videoMoreWidth: "16px", + generateListPaddingTop: "4px", + videoFailPaddingH: "12px", + videoFailPaddingV: "8px", + videoFailIconMargin: "8px", + videoFailIconSize: "16px", + personalMarginTop: "100px", + personalProfileHeight: "250px", + personalProfileWidthLarge: "360px", + personalProfileWidthSmall: "320px", + personalProfileWidthBreakPoint: "1536px", + personalScrollHeaderGap: "24px", + storyEditorPadding: "8px", + storyExSmallScreenWidth: "1146px", + storySmallScreenWidth: "1280px", + storyMiddleScreenWidth: "1280px", + storyLargeScreenWidth: "1280px", + storyExLargeScreenWidth: "1536px", + storySmallPromptWidth: "240px", + storyMiddlePromptWidth: "280px", + storyLargePromptWidth: "320px", + pageIconColor: "#8f9ca5", + videoRelaxProcessingHeight: "68px", + timelineLargeGap: "16px", + timelineThumbnailHeightTime: "125px", + timelineScrollWidth: "6px", + timelineInsertSegmentBtnWidth: "16px", + characterGenerateModalPanelWidth: "280px", + characterGenerateModalHeaderHeight: "48px", + largestScreenWidth: "1920px", + largeContainerWidth: "1650px", + smallScreenWidth: "1024px", + scrollBarWidth: "2px", + "largeScreenGenerate-Width": "1398px", + largeScreenGenerateWidth: "1398px", + middleScreenGenerateWidth: "1366px", + smallestScreenGenerateWidth: "1024px", + generateVideoCardMaxWidth: "526px", + generateVideoCardMinWidth: "383px", + generateCardMarginLeft: "12px", + generateCardSideBarWidth: "24px", + generateCardHoverButtonSize: "28px", + generateCardBgmButtonWidth: "68px", + storyboardContainerPadding: "16px", + storyboardGap: "4px", + generateContainerAnimationDuration: ".5s", + videoPromptTabHeight: "36px", + videoPromptTabMarginBottom: "8px", + agentChatMinHeight: "132px", + promptTabHeight: "44px", + "prompt-container": "prompt-container-eIJwbn", + promptContainer: "prompt-container-eIJwbn", + prompt: "prompt-lRcVvJ", + rotating: "rotating-VS7uCJ", + }, + o = i("79532"), + s = i("949274"), + l = i("105789"), + c = i.n(l), + d = i("418188"), + u = (e) => { + var t, + i, + { record: l, title: u, className: f, style: h } = e, + { prompt: p } = l.text2ImageParams, + { originPrompt: v } = + null !== (i = l.paintingParam) && void 0 !== i ? i : {}, + m = v || p, + g = (0, d.Jc)(l.generateType) ? m : p; + return (0, n.jsxs)("div", { + className: c()(a.publishPrompt, f), + style: h, + children: [ + (0, n.jsx)("div", { + className: o.Z.textLabelContainer, + children: (0, n.jsx)("span", { + className: o.Z.textLabel, + children: + null != u + ? u + : s.ZP.t("dreamina_publish_prompt_title", {}, "Prompt"), + }), + }), + (0, n.jsx)("div", { + className: a.promptContainer, + children: (0, n.jsx)("div", { + className: a.prompt, + children: (0, r.QT)( + g, + null === (t = l.blendImageParams) || void 0 === t + ? void 0 + : t.imagePromptList + ), + }), + }), + ], + }); + }; + }, + 140772: function (e, t, i) { + "use strict"; + i.d(t, { D: () => g }); + var n = i("772322"); + i("245535"); + var r = i("76894"), + a = i("44938"), + o = i("246940"), + s = i("2910"), + l = i("967355"), + c = i("541829"), + d = { + authorizedModal: "authorizedModal-FTalKl", + title: "title-WH325J", + content: "content-k7MbQw", + btnWrapper: "btnWrapper-DPEbD7", + loading: "loading-kjAtJI", + }, + u = i("384478"), + f = i.n(u), + h = i("652494"), + p = i("949274"), + v = i("882273"), + m = (e) => { + var { onAgree: t } = e, + [i, r] = (0, v.I)({ policyURL: h.y.AUTHOR_AGREEMENT(!1) }); + return (0, n.jsxs)("div", { + className: d.authorizedModal, + children: [ + (0, n.jsx)("h2", { className: d.title, children: i }), + r + ? (0, n.jsx)(c.y, { + className: d.content, + children: (0, n.jsx)("div", { + dangerouslySetInnerHTML: { + __html: (0, s.J)(f()(r, {}), null, { + logType: "react.dangerouslySetInnerHTML", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + }, + }), + }) + : (0, n.jsx)("div", { + className: d.loading, + children: p.ZP.t( + "homepage_tab_project_loading", + {}, + "Loading..." + ), + }), + (0, n.jsx)("div", { + className: d.btnWrapper, + children: (0, n.jsx)(l.J, { + text: "\u6211\u5DF2\u9605\u8BFB\u5E76\u540C\u610F", + className: d.agree, + onClick: t, + }), + }), + ], + }); + }; + function g() { + var e = a.u.hasPublished, + { promise: t, resolve: i } = Promise.withResolvers(); + if (o.T.getItem(e)) return i("granted"), t; + var s = r.Z.confirm({ + icon: null, + simple: !0, + closable: !0, + wrapClassName: "first-authorized-modal", + content: (0, n.jsx)(m, { + onCancel: () => { + s.close(), i("denied"); + }, + onAgree: () => { + s.close(), o.T.setItem(e, a.O.True), i("granted"); + }, + }), + footer: null, + }); + return t; + } + }, + 897905: function (e, t, i) { + "use strict"; + i.d(t, { e: () => V }); + var n = i("139646"), + r = i("625572"), + a = i("639880"), + o = i("772322"); + i("245535"); + var s = i("293793"), + l = i("76894"), + c = i("2910"), + d = i("218571"), + u = { + singleImageModalWrapper: "singleImageModalWrapper-RDRxkP", + singleImageModal: "singleImageModal-oXgRhU", + singleImageModalHeader: "singleImageModalHeader-fFIVgT", + title: "title-XgH6sN", + closeBtn: "closeBtn-a2_y86", + contentContainer: "contentContainer-d2YpEQ", + contentWrapper: "contentWrapper-zgXMl2", + imgContainer: "imgContainer-GPO_Um", + img: "img-eIS2RJ", + rightContainer: "rightContainer-LX1udg", + inputContainer: "inputContainer-TXZnb0", + publishContainer: "publishContainer-EVRQLy", + publishCollection: "publishCollection-jdxlNw", + publishButtonContainer: "publishButtonContainer-eq5uC9", + btn: "btn-V1A6y_", + publishButton: "publishButton-NNzY_D", + disabled: "disabled-Fh8T2n", + }, + f = i("949274"), + h = i("653061"), + p = i("642273"), + v = i("967355"), + m = i("70529"), + g = i("229025"), + _ = i("100470"), + y = i("369617"), + b = i("193305"), + I = i("259273"), + w = i("727279"), + x = i("487736"), + S = i("441828"), + M = i("887073"), + C = i("972394"), + T = i("699267"), + A = i("264022"), + k = i("624772"), + P = i("483487"), + E = i("79532"), + D = i("798181"), + R = i("105789"), + N = i.n(R), + L = i("188754"), + j = i("417442"), + O = i("700056"), + B = i("259435"), + F = i("917730"), + U = i("68442"), + G = 4, + z = (e) => { + var t, + i, + { + containerService: l, + mwebActivityService: x, + navigate: R, + record: B, + showGotoCollection: z, + onClickPublish: V, + onPublishSuccess: W, + closeModal: Z, + reportParams: K, + defaultSelectedIndex: H = 0, + multiple: q = !0, + beforeRouteLeave: J, + } = e, + [Y, Q] = (0, d.useState)(H), + X = (0, d.useMemo)(() => B.itemList[Y], [Y, B.itemList]), + [$, ee] = (0, d.useState)(""), + [et, ei] = (0, d.useState)(""), + [en, er] = (0, d.useState)({ key: "", name: "" }); + (0, T.G)(m.m); + var ea = (0, d.useRef)(!1), + eo = q && B.imageList.length > 1, + es = (0, g.Cg)(B.generateType), + el = (0, d.useMemo)(() => { + var e; + return (0, r._)( + { + type: "picture", + content_id: + null === (e = B.imageList) || void 0 === e + ? void 0 + : e[Y].itemId, + picture_cnt: 1, + title: $, + description: et, + activity_id: en.key, + activity: en.name, + }, + K + ); + }, [Y, B.imageList, K, en, $, et]), + ec = + null !== (t = null == X ? void 0 : X.commonAttr.coverUrl) && + void 0 !== t + ? t + : "", + ed = + null !== (i = null == X ? void 0 : X.commonAttr.coverUrlMap) && + void 0 !== i + ? i + : {}, + eu = (0, d.useCallback)((e) => { + Q(e); + }, []), + ef = (0, d.useCallback)(() => { + ea.current = !0; + }, []), + eh = (0, d.useCallback)(() => { + ea.current = !1; + }, []), + ep = (0, d.useCallback)(() => { + if ( + !!q && + !ea.current && + !( + (null === (e = B.itemList) || void 0 === e + ? void 0 + : e.length) < 2 + ) + ) { + var e, + t = Y - 1; + t < 0 && (t = G - 1), Q(t); + } + }, [Y, B.itemList]), + ev = (0, d.useCallback)(() => { + if ( + !!q && + !ea.current && + !( + (null === (e = B.itemList) || void 0 === e + ? void 0 + : e.length) < 2 + ) + ) { + var e, + t = Y + 1; + t === G && (t = 0), Q(t); + } + }, [Y, B.itemList]); + (0, M.r)(C.VD.ARROW_LEFT, ep), (0, M.r)(C.VD.ARROW_RIGHT, ev); + var [em, eg] = (0, d.useState)(!1), + e_ = d.useCallback(() => { + (0, j.Oc)(l, (0, r._)({ action: "go_to_collection" }, el)), + null == J || J(), + R( + "" + .concat(p.EZ[I.Sj.History]) + .concat( + (0, D.Wf)({ keepSearchList: [w.m.weeklyActivityKey] }) + ), + { state: { record: (0, O.Z)(B) }, replace: !0 } + ), + Z(); + }, [l, el, R, B, Z]), + ey = $.length > 0, + eb = (0, s.default)((e) => { + if (W) { + W(e); + return; + } + y.s.success( + f.ZP.t("result_toast_publish_success", {}, "Image posted") + ); + }), + eI = d.useCallback(() => { + if (!ey) { + y.s.warning( + f.ZP.t( + "dreamina_publish_desc_enter_must", + {}, + "Enter a description to continue" + ) + ); + return; + } + (0, j.Oc)(l, (0, r._)({ action: "publish" }, el)), eg(!0); + var e = { + singleItem: X, + title: $, + description: et, + weeklyActivityKey: en.key, + weeklyActivityName: en.name, + }; + V(e).then((t) => { + eg(!1); + var { code: i } = t; + i === _.b.ErrSuccess && t.ok + ? (eb( + (0, a._)((0, r._)({}, e), { resultItem: t.value.item }) + ), + Z()) + : i === _.b.ErrHasPublished + ? y.s.warning( + f.ZP.t( + "result_toast_publish_repeated", + {}, + "Image posted already" + ) + ) + : i === _.b.ErrSharkNotPass + ? y.s.error( + f.ZP.t( + "dreamina_web_user_violate_operation", + {}, + "\u60A8\u6D89\u53CA\u8FDD\u89C4\u64CD\u4F5C\uFF0C\u6682\u65F6\u65E0\u6CD5\u4F7F\u7528\u8BE5\u529F\u80FD" + ) + ) + : y.s.warning( + f.ZP.t( + "result_toast_publish_fail_retry", + {}, + "Couldn\u2019t post. Try again." + ) + ); + }); + }, [l, el, V, X, $, et, en.key, en.name, Z]); + (0, d.useEffect)(() => { + (function () { + var e = (0, n._)(function* () { + var { weeklyActivityKey: e } = (0, D.Xj)(), + { activity: t } = el; + if (e) { + var i, + n, + o = yield null == x ? void 0 : x.getWeeklyChallengeByKey(e); + if (!(null == o ? void 0 : o.ok)) return; + t = + null !== + (n = + null === (i = o.value) || void 0 === i + ? void 0 + : i.actName) && void 0 !== n + ? n + : ""; + } + (0, + j.Oc)(l, (0, a._)((0, r._)({ action: "show" }, el), { activity: t })); + }); + return function () { + return e.apply(this, arguments); + }; + })()(); + }, []); + var ew = [ + { + title: f.ZP.t("publish_title", {}, "Title"), + maxLength: U.z, + placeholder: f.ZP.t( + "publish_title_content", + {}, + "Tell us about your creation..." + ), + required: !0, + onTextChange: (e) => ee(e), + onTextFocus: ef, + onTextBlur: eh, + bottomLeftModule: (0, o.jsx)(A.r, { + publishItemType: F.KT.Image, + mwebActivityService: x, + setSelectedActivityInfo: er, + }), + }, + { + title: f.ZP.t("publish_description", {}, "Introduction"), + maxLength: U.s, + placeholder: f.ZP.t( + "publish_description_content", + {}, + "Tell us about your creation..." + ), + required: !1, + onTextChange: (e) => ei(e), + onTextFocus: ef, + onTextBlur: eh, + inputClassName: u.inputContainer, + }, + ]; + return (0, o.jsxs)("div", { + className: u.singleImageModal, + children: [ + (0, o.jsxs)("div", { + className: u.singleImageModalHeader, + children: [ + (0, o.jsxs)("div", { + className: u.title, + children: [ + (0, o.jsx)("span", { + children: f.ZP.t( + "dreamina_post_works_title", + {}, + "Publish work" + ), + }), + (0, o.jsx)(b.s, { + content: f.ZP.t( + "proportion_notice_public_display", + {}, + "By tapping \u201CPost,\u201D you acknowledge and agree that the reference images and prompt content you post will be visible to people who use Dreamina. Images you generate and post on Dreamina are hereby authorized to be synced with CapCut." + ), + }), + ], + }), + (0, o.jsx)(L.Rnl, { className: u.closeBtn, onClick: Z }), + ], + }), + (0, o.jsxs)("div", { + className: u.contentContainer, + children: [ + (0, o.jsxs)("div", { + className: u.contentWrapper, + children: [ + (0, o.jsxs)("div", { + className: u.imgContainer, + children: [ + (0, o.jsx)("div", { + className: E.Z.textLabelContainer, + children: (0, o.jsx)("span", { + className: E.Z.textLabel, + children: f.ZP.t( + "dreamina_publish_previews", + {}, + "Preview" + ), + }), + }), + (0, o.jsx)(h.k, { + className: u.img, + resolutionUrlMap: ed, + src: (0, c.C)(ec, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + imageStyle: { + objectFit: "contain", + height: "100%", + position: "unset", + }, + crossOrigin: "anonymous", + "data-apm-action": "publish-single-image-image", + }), + eo && + (0, o.jsx)(S.A, { + itemList: B.itemList, + currentItem: X, + updateCurrentItem: eu, + }), + ], + }), + (0, o.jsxs)("div", { + className: u.rightContainer, + children: [ + ew.map((e) => + (0, o.jsx)(k.V, (0, r._)({}, e), e.title) + ), + (0, o.jsx)(P.F, { record: B }), + ], + }), + ], + }), + (0, o.jsxs)("div", { + className: u.publishContainer, + children: [ + z && !eo && es + ? (0, o.jsx)("div", { + className: u.publishCollection, + onClick: e_, + children: f.ZP.t( + "collection_publish_publishcollection", + {}, + "Try posting collections" + ), + }) + : (0, o.jsx)("div", {}), + (0, o.jsx)("div", { + className: u.publishButtonContainer, + children: (0, o.jsx)(v.J, { + className: N()(u.publishButton, u.btn, { + [u.disabled]: !ey, + }), + text: f.ZP.t( + "collection_publish_publishbutton", + {}, + "Post" + ), + loading: em, + onClick: eI, + }), + }), + ], + }), + ], + }), + ], + }); + }; + function V(e) { + var t, + i, + n, + s, + c, + d, + f, + h, + { + containerService: p, + mwebActivityService: v, + navigate: m, + record: g, + showGotoCollection: _, + onClickPublish: y, + onPublishSuccess: b, + reportParams: I, + defaultSelectedIndex: w, + multiple: S, + beforeRouteLeave: M, + } = e, + C = () => { + null == h || h.close(), (h = void 0); + }, + A = (0, B.C)(p, x.M.PublishModal); + h = l.Z.confirm({ + wrapClassName: u.singleImageModalWrapper, + title: null, + footer: null, + simple: !1, + escToExit: !1, + icon: null, + afterClose: () => { + A.unmount(); + }, + closable: !1, + maskClosable: !1, + content: (0, o.jsx)(T.$, { + instantiationService: p, + children: (0, o.jsx)(z, { + containerService: p, + mwebActivityService: v, + navigate: m, + record: g, + showGotoCollection: _, + onClickPublish: y, + onPublishSuccess: b, + closeModal: C, + reportParams: (0, a._)((0, r._)({}, I), { + template_id: + null == g + ? void 0 + : null === (s = g.itemList) || void 0 === s + ? void 0 + : null === (n = s[0]) || void 0 === n + ? void 0 + : null === (i = n.refItem) || void 0 === i + ? void 0 + : null === (t = i.commonAttr) || void 0 === t + ? void 0 + : t.id, + impression_id: + null == g + ? void 0 + : null === (f = g.itemList) || void 0 === f + ? void 0 + : null === (d = f[0]) || void 0 === d + ? void 0 + : null === (c = d.clientTraceData) || void 0 === c + ? void 0 + : c.impressionId, + }), + defaultSelectedIndex: w, + multiple: S, + }), + }), + }); + } + }, + 441828: function (e, t, i) { + "use strict"; + i.d(t, { A: () => v }); + var n = i("772322"); + i("218571"); + var r = "itemSelector-SltNe5", + a = "singleItem-z402_n", + o = "singleItemActive-_qi49m", + s = "larger-KOT_1l", + l = "mask-G3Ne0T", + c = "singleItemImage-aXwAgI", + d = "selectedIcon-dZL1C2", + u = i("653061"), + f = i("188754"), + h = i("105789"), + p = i.n(h), + v = (e) => { + var { + itemList: t, + currentItem: i, + updateCurrentItem: h, + larger: v = !1, + } = e; + return (0, n.jsx)("div", { + className: r, + children: t.map((e, t) => { + var r = e.commonAttr.id, + m = r === i.commonAttr.id; + return (0, n.jsxs)( + "div", + { + className: p()({ [a]: !0, [o]: m, [s]: v }), + onClick: () => h(t), + children: [ + (0, n.jsx)(f.DLY, { + className: d, + style: { opacity: m ? 1 : 0 }, + }), + (0, n.jsx)("div", { + className: l, + style: { + opacity: m ? 0.4 : 0.2, + borderColor: m ? "var(--text-secondary)" : "", + }, + }), + (0, n.jsx)(u.k, { + className: c, + src: e.commonAttr.coverUrl, + "data-apm-action": "publish-single-image-item-selector", + }), + ], + }, + r + ); + }), + }); + }; + }, + 568386: function (e, t, i) { + "use strict"; + i.d(t, { U: () => m, W: () => g }); + var n = i("772322"), + r = i("293793"), + a = i("105789"), + o = i.n(a), + s = i("887073"), + l = i("972394"), + c = i("188754"), + d = "actionContainer-LwHxl4", + u = "leftIcon-yarKYr", + f = "rightIcon-IoHj5j", + h = "action-tKEPBj", + p = "sideAction-l3aOIi", + v = "actionDisabled-UfYYtE", + m = (e) => { + var { + hasPrev: t, + hasNext: i, + onNext: a, + onPrev: u, + listenerClosed: f, + className: p, + } = e, + m = (0, r.default)(() => { + t && u(); + }), + g = (0, r.default)(() => { + i && a(); + }); + return ( + (0, s.r)(l.VD.ARROW_UP, (null == f ? void 0 : f.up) ? void 0 : m), + (0, s.r)( + l.VD.ARROW_DOWN, + (null == f ? void 0 : f.down) ? void 0 : g + ), + (0, s.r)( + l.VD.ARROW_LEFT, + (null == f ? void 0 : f.left) ? void 0 : m + ), + (0, s.r)( + l.VD.ARROW_RIGHT, + (null == f ? void 0 : f.right) ? void 0 : g + ), + (0, n.jsxs)("div", { + className: o()(d, p), + children: [ + (0, n.jsx)(c.Ej_, { + className: o()(h, { [v]: !t }), + onClick: m, + }), + (0, n.jsx)(c.f5h, { + className: o()(h, { [v]: !i }), + onClick: g, + }), + ], + }) + ); + }, + g = (e) => { + var { + hasPrev: t, + hasNext: i, + onNext: a, + onPrev: d, + className: m, + } = e, + g = (0, r.default)(() => { + t && d(); + }), + _ = (0, r.default)(() => { + i && a(); + }); + return ( + (0, s.r)(l.VD.ARROW_LEFT, g), + (0, s.r)(l.VD.ARROW_RIGHT, _), + (0, n.jsxs)(n.Fragment, { + children: [ + (0, n.jsx)(c.Ej_, { + className: o()(h, p, u, { [v]: !t }), + onClick: g, + }), + (0, n.jsx)(c.f5h, { + className: o()(h, p, f, { [v]: !i }), + onClick: _, + }), + ], + }) + ); + }; + }, + 763284: function (e, t, i) { + "use strict"; + i.d(t, { i: () => x }); + var n = i("772322"); + i("894672"); + var r = i("274993"), + a = i("184620"), + o = i("293793"), + s = i("835628"), + l = i("218571"), + c = i("105789"), + d = i.n(c), + u = "slider-qVYRz3", + f = "with-marks-OJdEaw", + h = "slider-wrapper-Ue5Cnb", + p = "slider-road-jKH9w9", + v = "slider-bar-xg5G9h", + m = "active-BHnehq", + g = "slider-button-bar-BBkjJO", + _ = "slider-road-disable-_vQfCs", + y = "slider-button-brick-VtlI1x", + b = "slider-dot-eP9ob4", + I = i("52533"), + w = i("102974"), + x = (e) => { + var t, + i, + { + className: c, + min: x, + max: S, + step: M = 1, + marks: C, + onlyMarkValue: T, + value: A, + style: k, + cssConfigs: P, + onChange: E, + onAfterChange: D, + formatTooltip: R, + triggerBar: N = !1, + isDisable: L = !1, + showValueTooltip: j = !0, + disableTooltip: O, + } = e, + B = (0, w.Z)(C).map(Number).sort(), + F = B.length > 0, + U = (0, o.default)( + (e) => (Math.min(Math.max(x, e), S) - x) / (S - x) + ), + G = U(A), + z = (0, l.useRef)(null), + [V, W] = (0, l.useState)(G), + [Z, K, H] = (0, a.default)(!1), + [q, J] = (0, s.default)(), + Y = (0, o.default)((e) => { + var t, + i = + null === (t = z.current) || void 0 === t + ? void 0 + : t.getBoundingClientRect(); + return i ? Math.max(0, Math.min((e.x - i.x) / i.width, 1)) : 0; + }), + Q = (e) => { + var t = (S - x) * e + x; + if (T && B.length) { + for ( + var i = B[0], n = Math.abs(B[0] - t), r = 1; + r < B.length; + r++ + ) { + var a = Math.abs(B[r] - t); + a < n && ((n = a), (i = B[r])); + } + return i; + } + var o = Math.floor((t - x) / M), + s = x + o * M, + l = s + M; + return t - s < l - t ? s : Math.min(l, S); + }, + X = (0, o.default)((e) => { + if (!L) { + K(!0); + var t = Y(e); + W(t), null == E || E(Q(t)); + } + }), + $ = (0, o.default)((e) => { + if (!L && !!H()) { + K(!1); + var t = Y(e); + W(t), null == D || D(Q(t)); + } + }), + ee = (0, o.default)((e) => { + if (!L && !!H()) { + var t = Y(e); + W(t), null == E || E(Q(t)); + } + }); + (0, l.useEffect)(() => { + var e = z.current; + return ( + document.addEventListener("mouseup", $), + document.addEventListener("mousemove", ee), + null == e || e.addEventListener("mousedown", X), + () => { + document.removeEventListener("mouseup", $), + document.removeEventListener("mousemove", ee), + null == e || e.removeEventListener("mousedown", X); + } + ); + }, [X, ee, $]); + var et = Q(Z || (0, I.Z)(G) ? V : G), + ei = U(et), + en = R ? R(et) : "".concat(et), + er = B.map((e) => U(e)); + return (0, n.jsx)(r.Z, { + content: O, + disabled: !L, + triggerProps: { popupAlign: { top: 8 } }, + children: (0, n.jsx)("div", { + className: d()(c, u, { [f]: F }), + style: k, + children: (0, n.jsxs)("div", { + className: d()( + h, + null == P + ? void 0 + : null === (t = P.sliderWrapper) || void 0 === t + ? void 0 + : t.className + ), + style: + null == P + ? void 0 + : null === (i = P.sliderWrapper) || void 0 === i + ? void 0 + : i.style, + ref: z, + children: [ + (0, n.jsxs)("div", { + className: d()(p, { [m]: Z, [_]: L }), + children: [ + (0, n.jsx)("div", { + className: v, + style: { right: "".concat((1 - ei) * 100, "%") }, + }), + (0, n.jsx)(r.Z, { + content: en, + popupVisible: !!j && (Z || J), + triggerProps: { popupAlign: { top: 4 } }, + children: (0, n.jsx)("div", { + className: d()({ [g]: N, [y]: !N }), + ref: q, + style: { right: "".concat((1 - ei) * 100, "%") }, + }), + }), + ], + }), + er.map((e, t) => + (0, n.jsx)( + "div", + { + className: d()(b, { [m]: e <= ei }), + style: { right: "".concat((1 - e) * 100, "%") }, + }, + t + ) + ), + ], + }), + }), + }); + }; + }, + 718189: function (e, t, i) { + "use strict"; + i.d(t, { o: () => ee }); + var n = i("581148"), + r = i("58871"), + a = i("625572"), + o = i("639880"), + s = i("772322"); + i("2860"), i("245535"); + var l = i("298677"), + c = i("76894"), + d = i("218571"), + u = i("434712"), + f = i("699267"), + h = i("188754"), + p = i("949274"), + v = i("518814"), + m = i("799108"), + g = i("217448"), + _ = i("733437"), + y = i("967355"), + b = i("340471"), + I = i("405013"), + w = i("695001"), + x = i("236242"), + S = { + title: "title-x3Me0g", + defaultContent: "defaultContent-o1YzRS", + desc: "desc-kv2Buo", + planCard: "planCard-dUKXK2", + planItem: "planItem-_OqApe", + top: "top-hBk2sU", + vipIcon: "vipIcon-RIuuZR", + levelName: "levelName-u1uEPq", + infoTitle: "infoTitle-Otg33n", + infoValue: "infoValue-vMozfk", + planItemSingle: "planItemSingle-oakqQi", + left: "left-Opjlf4", + right: "right-fjJ904", + autoRenewalCard: "autoRenewalCard-SuO47k", + flexBox: "flexBox-ebpHxC", + bigTitle: "bigTitle-oJ3_ZP", + bigBtn: "bigBtn-QpeM3O", + infoList: "infoList-_JUuVa", + smallTitle: "smallTitle-dISsix", + info: "info-YvThJe", + text: "text-beNMkV", + copyIcon: "copyIcon-C83346", + }, + M = (e) => { + switch (e) { + case "ALI": + return "\u652F\u4ED8\u5B9D"; + case "WX": + return "\u5FAE\u4FE1\u652F\u4ED8"; + case "HZ": + return "\u6296\u97F3\u652F\u4ED8"; + default: + return e; + } + }; + function C(e) { + var { reportParam: t, onClose: i } = e, + n = (0, f.G)(g.q), + r = (0, f.G)(u.t), + { + vipLevels: l, + currentAutoRenewPlan: c, + isVipExpired: h, + currentVipLevel: C, + curLevelEndTime: T, + } = (0, _.k)(n, (e) => { + var t, i, n; + return { + vipLevels: + (null === (t = e.vipInfo) || void 0 === t + ? void 0 + : t.vipLevels) || [], + isVipExpired: e.isVipExpired, + currentAutoRenewPlan: + null === (i = e.vipInfo) || void 0 === i + ? void 0 + : i.currentAutoRenewPlan, + curLevelEndTime: + null === (n = e.vipInfo) || void 0 === n + ? void 0 + : n.curLevelEndTime, + currentVipLevel: e.currentVipLevel, + }; + }) || {}, + { source: A } = t || {}, + k = (0, d.useMemo)(() => { + try { + return l.map((e) => { + var t = c && (null == c ? void 0 : c.level) === e.level, + i = e.level === C, + n = h + ? p.ZP.t( + "dre_m10n_management_page_expired_date", + {}, + "Expired time" + ) + : t + ? i + ? p.ZP.t( + "dre_m10n_management_page_next_billing_date", + {}, + "Renew on" + ) + : p.ZP.t( + "dre_m10n_management_page_starting_from_date", + {}, + "Starts on" + ) + : p.ZP.t( + "dre_m10n_management_page_plan_ends_date", + {}, + "Expired on" + ), + r = t + ? i + ? (0, I.vc)("yyyy-MM-dd hh:mm", 1e3 * c.nextRenewalTime) + : (0, I.vc)("yyyy-MM-dd hh:mm", 1e3 * e.beginTime) + : (0, I.vc)("yyyy-MM-dd hh:mm", 1e3 * e.endTime); + return (0, o._)((0, a._)({}, e), { + title: n, + levelName: (0, m.J2)({ level: e.level }), + endTime: r, + }); + }); + } catch (e) { + return []; + } + }, [l, c, h]), + P = (0, d.useMemo)(() => { + try { + if (!c) return; + return { + levelName: (0, m.sG)({ level: c.level }), + infoList: [ + { + title: p.ZP.t( + "dre_m10n_management_page_auto_renew_subscription_type", + {}, + "Subscription Methods" + ), + value: + "YEAR" === c.cycleUnit + ? p.ZP.t( + "dre_m10n_management_page_auto_renew_subscription_type_yearly", + {}, + "YEARLY" + ) + : p.ZP.t( + "dre_m10n_management_page_auto_renew_subscription_type_monthly", + {}, + "MONTHLY" + ), + }, + { + title: p.ZP.t( + "dre_m10n_management_page_auto_renew_amount", + {}, + "Price" + ), + value: c.nextRenewalFee, + }, + { + title: p.ZP.t( + "dre_m10n_management_page_auto_renew_billing_date", + {}, + "Next billing time" + ), + value: (0, I.vc)( + "yyyy-MM-dd hh:mm", + 1e3 * c.nextRenewalTime + ), + }, + { + title: p.ZP.t( + "dre_m10n_management_page_auto_renew_payment_method", + {}, + "Payment method" + ), + value: M(c.payChannel), + }, + ].map((e) => + (0, o._)((0, a._)({}, e), { value: String(e.value) || "-" }) + ), + }; + } catch (e) { + return; + } + }, [c]), + E = () => { + (0, b.Q)({ + containerService: r, + preCreateRes: { + obtainedVipInfo: { + autoRenewEndTime: null == c ? void 0 : c.nextRenewalTime, + }, + upcomingVipInfo: {}, + subscriptionChangeInfo: { changeType: "DEGRADE" }, + }, + reportParam: { + source: w.fG.SubscribePlanManagePopupClickCancelAutoRenewal, + }, + }), + (0, x.KB)(r, { + action: x.Z.ClickCancelAutoRenewal, + currentTab: x.Ak.ManagePlans, + source: A, + }); + }, + D = (e) => { + var { title: t, desc: i, btnText: n, onClick: r } = e; + return (0, s.jsxs)("div", { + className: S.defaultContent, + children: [ + (0, s.jsx)("div", { className: S.title, children: t }), + i && (0, s.jsx)("div", { className: S.desc, children: i }), + n && (0, s.jsx)(y.J, { onClick: r, text: n, type: "tertiary" }), + ], + }); + }, + R = () => + k.length + ? (0, s.jsx)("div", { + className: S.planCard, + children: + k.length > 1 + ? k.map((e, t) => + (0, s.jsxs)( + "div", + { + className: S.planItem, + children: [ + (0, s.jsxs)("div", { + className: S.top, + children: [ + (0, s.jsx)(v.Z, { + className: S.vipIcon, + inactive: h, + size: 16, + level: e.level, + }), + (0, s.jsx)("div", { + className: S.levelName, + children: e.levelName, + }), + ], + }), + (0, s.jsx)("div", { + className: S.infoTitle, + children: e.title, + }), + (0, s.jsx)("div", { + className: S.infoValue, + children: e.endTime, + }), + ], + }, + t + ) + ) + : k.map((e, t) => + (0, s.jsxs)( + "div", + { + className: S.planItemSingle, + children: [ + (0, s.jsxs)("div", { + className: S.left, + children: [ + (0, s.jsx)(v.Z, { + inactive: h, + className: S.vipIcon, + size: 16, + level: e.level, + }), + (0, s.jsx)("div", { + className: S.levelName, + children: e.levelName, + }), + ], + }), + (0, s.jsxs)("div", { + className: S.right, + children: [ + (0, s.jsx)("div", { + className: S.infoTitle, + children: e.title, + }), + (0, s.jsx)("div", { + className: S.infoValue, + children: e.endTime, + }), + ], + }), + ], + }, + t + ) + ), + }) + : D({ title: "" }), + N = () => + P + ? (0, s.jsxs)("div", { + className: S.autoRenewalCard, + children: [ + (0, s.jsxs)("div", { + className: S.flexBox, + children: [ + (0, s.jsx)("div", { + className: S.bigTitle, + children: P.levelName, + }), + (0, s.jsx)(y.J, { + type: "tertiary", + text: p.ZP.t( + "dre_m10n_management_page_auto_renew_cancel", + {}, + "Cancel auto-renewal" + ), + className: S.bigBtn, + onClick: E, + }), + ], + }), + (0, s.jsx)("div", { + className: S.infoList, + children: P.infoList.map((e, t) => + (0, s.jsxs)( + "div", + { + className: S.flexBox, + children: [ + (0, s.jsx)("div", { + className: S.smallTitle, + children: e.title, + }), + (0, s.jsx)("div", { + className: S.info, + children: (0, s.jsx)("div", { + className: S.text, + children: e.value, + }), + }), + ], + }, + t + ) + ), + }), + ], + }) + : D({ + title: p.ZP.t( + "dre_m10n_management_page_auto_renew_null", + {}, + "You don't have an auto-renewal program yet" + ), + btnText: p.ZP.t( + "dre_m10n_management_page_auto_renew_see_more", + {}, + "View subscription plans" + ), + onClick: i, + }); + return (0, s.jsxs)("div", { + className: S.container, + children: [ + (0, s.jsx)("div", { + className: S.title, + children: p.ZP.t( + "dre_m10n_management_page_membership", + {}, + "My plans" + ), + }), + R(), + (0, s.jsx)("div", { + className: S.title, + style: { marginTop: "8px" }, + children: p.ZP.t( + "dre_m10n_management_page_auto_renew", + {}, + "Auto renewal" + ), + }), + N(), + ], + }); + } + var T = i("139646"); + i("645523"), i("214865"); + var A = i("804929"), + k = i("750633"), + P = i("644254"), + E = i("789786"), + D = i("260963"), + R = i("473877"), + N = i("787205"), + L = i("909854"), + j = i.n(L), + O = i("417699"), + B = 10; + class F { + get recordList() { + return this._observableData.recordList || []; + } + get hasMore() { + return this._observableData.hasMore; + } + get loading() { + return this._observableData.loading; + } + loadOrderRecordList() { + var e = this; + return (0, T._)(function* () { + try { + if (e._pending) return; + if ( + ((e._pending = !0), + (0, D.z)(() => { + e._observableData.loading = !0; + }), + (t = e._dreaminaEnvironmentService.isOversea + ? yield e._commerceDataService.fetchOverseaOrderRecords({ + appId: e._dreaminaEnvironmentService.appId, + cursor: Number(e._nextCursor), + count: e._count, + }) + : yield e._commerceDataService.fetchOrderRecords({ + cursor: e._nextCursor, + count: e._count, + })).ok) + ) { + var t, + { hasMore: i, nextCursor: n, recordList: r } = t.value; + (e._nextCursor = "".concat(n)), + (0, D.z)(() => { + (e._observableData.hasMore = i), + (e._observableData.recordList = [ + ...e._observableData.recordList, + ...(r.map((t) => e.formatData(t)) || []), + ]), + (e._observableData.loading = !1); + }); + } else + (0, D.z)(() => { + e._observableData.loading = !1; + }); + } catch (t) { + (0, D.z)(() => { + e._observableData.loading = !1; + }); + } finally { + e._pending = !1; + } + })(); + } + formatData(e) { + return "paymentInfo" in e + ? this.formatOverseaServerData(e) + : this.formatDomesticServerData(e); + } + formatDomesticServerData(e) { + return { + title: + "credit" === e.purchaseType + ? p.ZP.t( + "dre_m10n_management_page_tab_order_history_credits", + { number0: e.creditsNumber }, + "{number0} credits recharge" + ) + : (0, m.sG)({ level: null == e ? void 0 : e.level }), + price: + e.amount < 0 + ? "-" + : j()(e.amount / 100 || 0, { + symbol: "CNY" === e.currencyCode ? "\xa5" : e.currencyCode, + precision: 2, + separator: ",", + }).format(), + orderId: e.orderId, + purchaseDate: (0, I.vc)("yyyy-MM-dd hh:mm", 1e3 * e.payTime), + paymentMethod: e.payChannelText, + subscriptionMethods: e.cycleUnit + ? (0, m.d8)(e.cycleUnit, "unauto" === e.subscribeType) + : void 0, + }; + } + formatOverseaServerData(e) { + var t, + { skuInfo: i } = e, + { skuBenefit: n, skuCycle: r, skuType: a } = null != i ? i : {}; + return { + title: + "vip" === e.scene + ? (0, m.sG)({ level: null == n ? void 0 : n.level }) + : p.ZP.t( + "dre_m10n_management_page_tab_order_history_credits", + { + number0: + null == n + ? void 0 + : null === (t = n.creditBenefit) || void 0 === t + ? void 0 + : t.amount, + }, + "{number0} credits recharge" + ), + price: e.paymentInfo.paymentAmount.amountTips, + orderId: e.orderId, + purchaseDate: (0, I.vc)( + "yyyy-MM-dd hh:mm", + 1e3 * e.paymentInfo.purchaseDate + ), + paymentMethod: e.paymentInfo.paymentMethod, + subscriptionMethods: (null == r ? void 0 : r.cycleUnit) + ? (0, m.d8)(r.cycleUnit, a === R.EV.ONEOFF) + : void 0, + }; + } + constructor(e, t, i) { + (this._containerService = e), + (this._commerceDataService = t), + (this._dreaminaEnvironmentService = i), + (this._nextCursor = "0"), + (this._count = B), + (this._pending = !1), + (this._observableData = (0, D.LO)({ + recordList: [], + hasMore: !0, + loading: !0, + })); + } + } + F = (0, E.gn)( + [ + (0, E.fM)(0, u.t), + (0, E.fM)(1, N.$), + (0, E.fM)(2, O.e), + (0, E.w6)("design:type", Function), + (0, E.w6)("design:paramtypes", [ + void 0 === u.t ? Object : u.t, + void 0 === N.$ ? Object : N.$, + void 0 === O.e ? Object : O.e, + ]), + ], + F + ); + var U = { + container: "container-otwwYI", + defaultContent: "defaultContent-Oa2jzx", + title: "title-je11h7", + desc: "desc-_wg6rY", + recordCard: "recordCard-Z8iDF9", + flexBox: "flexBox-LAGihY", + bigTitle: "bigTitle-oGqMAy", + infoList: "infoList-J1Loqb", + smallTitle: "smallTitle-lictEL", + info: "info-tNpoLJ", + text: "text-VtQZ2x", + copyIcon: "copyIcon-ZHfMb3", + initSpin: "initSpin-lXh0Po", + loadSpin: "loadSpin-NftnuE", + spin: "spin-LYqdVF", + noMore: "noMore-sQPf3r", + }; + function G() { + var e = (0, f.G)(u.t), + t = (0, d.useRef)(e.createInstance(F)).current, + { + loading: i, + hasMore: n, + recordList: r, + } = (0, _.k)(t, (e) => ({ + loading: e.loading, + hasMore: e.hasMore, + recordList: e.recordList || [], + })) || {}, + [l, c] = (0, A.default)(void 0, { rootMargin: "0px 0px 100px 0px" }), + v = (0, d.useMemo)(() => { + try { + return r.map((e) => { + var t = []; + e.subscriptionMethods && + t.push({ + title: p.ZP.t( + "dre_m10n_management_page_tab_order_history_subscription_type", + {}, + "Plan" + ), + value: e.subscriptionMethods, + }); + var { title: i } = e; + return { + title: i, + orderId: e.orderId, + infoList: [ + ...t, + { + title: p.ZP.t( + "dre_m10n_management_page_tab_order_history_price", + {}, + "Price" + ), + value: e.price, + }, + { + title: p.ZP.t( + "dre_m10n_management_page_tab_order_history_date", + {}, + "Date of purchase" + ), + value: e.purchaseDate, + }, + { + title: p.ZP.t( + "dre_m10n_management_page_tab_order_history_order_no", + {}, + "Order number" + ), + value: e.orderId, + iconType: "copy", + }, + { + title: p.ZP.t( + "dre_m10n_management_page_tab_order_history_payment_method", + {}, + "Payment method" + ), + value: e.paymentMethod, + }, + ].map((e) => + (0, o._)((0, a._)({}, e), { value: String(e.value) || "-" }) + ), + }; + }); + } catch (e) { + return []; + } + }, [r]), + m = (function () { + var e = (0, T._)(function* (e) { + try { + yield navigator.clipboard.writeText(String(e)), + P.Z.success({ + icon: (0, s.jsx)(h.wR6, { + size: 20, + color: "rgba(17, 19, 24, 1)", + }), + content: p.ZP.t("copy_success", {}, "Copied"), + }); + } catch (e) { + P.Z.warning( + p.ZP.t( + "copy_failed_please_retry", + {}, + "Couldn't copy. Try again." + ) + ); + } + }); + return function (t) { + return e.apply(this, arguments); + }; + })(); + (0, d.useEffect)(() => { + t.loadOrderRecordList(); + }, []), + (0, d.useEffect)(() => { + c && t.loadOrderRecordList(); + }, [c]); + var g = (e) => { + var { title: t, desc: i } = e; + return (0, s.jsxs)("div", { + className: U.defaultContent, + children: [ + (0, s.jsx)("div", { className: U.title, children: t }), + i && (0, s.jsx)("div", { className: U.desc, children: i }), + ], + }); + }, + y = (e) => { + var { title: t, orderId: i, infoList: n } = e; + return (0, s.jsxs)( + "div", + { + className: U.recordCard, + children: [ + (0, s.jsx)("div", { + className: U.flexBox, + children: (0, s.jsx)("div", { + className: U.bigTitle, + children: t, + }), + }), + (0, s.jsx)("div", { + className: U.infoList, + children: n.map((e, t) => + (0, s.jsxs)( + "div", + { + className: U.flexBox, + children: [ + (0, s.jsx)("div", { + className: U.smallTitle, + children: e.title, + }), + (0, s.jsxs)("div", { + className: U.info, + children: [ + "copy" === e.iconType && + (0, s.jsx)(h.JmT, { + className: U.copyIcon, + size: 16, + style: { cursor: "pointer" }, + onClick: () => m(e.value), + }), + (0, s.jsx)("div", { + className: U.text, + children: e.value, + }), + ], + }), + ], + }, + t + ) + ), + }), + ], + }, + i + ); + }; + return (0, s.jsxs)("div", { + className: U.container, + children: [ + i && !v.length + ? (0, s.jsx)("div", { + className: U.initSpin, + children: (0, s.jsx)(k.Z, { className: U.spin, size: 24 }), + }) + : null, + i || v.length + ? null + : g({ + title: p.ZP.t( + "dre_m10n_management_page_tab_order_history_null", + {}, + "You don't have an payment record yet" + ), + }), + v.length ? v.map((e) => y(e)) : null, + (0, s.jsx)("div", { + className: U.loadSpin, + ref: l, + style: { display: n && v.length ? "flex" : "none" }, + children: (0, s.jsx)(k.Z, { className: U.spin, size: 16 }), + }), + i || !v.length || n + ? null + : (0, s.jsx)("div", { + className: U.noMore, + children: p.ZP.t( + "dre_m10n_credit_balance_end", + {}, + "You\u2019ve reached the end" + ), + }), + ], + }); + } + var z = "subscriptionManageModalWrapper-upQXzL", + V = "subscriptionManageModal-MPMvcg", + W = "header-ordD3P", + Z = "title-yDGPEi", + K = "closeBtn-IdwyA4", + H = "closeBtnIcon-oHaLNz", + q = "container-RKSaJH", + J = "tabs-m8U8C_", + Y = "tabTitleWrapper-AzfWqe", + Q = "scrollView-5trpx1", + X = { + [x.Ak.ManagePlans]: (e) => { + var t = (0, n._)({}, (0, r._)(e)); + return (0, s.jsx)( + "div", + (0, o._)((0, a._)({ className: Q }, t), { + children: (0, s.jsx)(C, { + onClose: t.onClose, + reportParam: t.reportParam, + }), + }) + ); + }, + [x.Ak.OrderRecords]: (e) => { + var t = (0, n._)({}, (0, r._)(e)); + return (0, s.jsx)( + "div", + (0, o._)((0, a._)({ className: Q }, t), { + children: (0, s.jsx)(G, {}), + }) + ); + }, + }; + function $(e) { + var { onClose: t, reportParam: i } = e, + n = (0, f.G)(u.t), + { source: r } = i || {}, + [a, o] = (0, d.useState)(x.Ak.ManagePlans), + c = () => { + null == t || t(); + }, + v = (e) => { + (0, x.KB)(n, { + action: x.Z.ClickTab, + currentTab: a, + clickTab: e, + source: r, + }), + o(e); + }; + return ( + (0, d.useEffect)(() => { + (0, x.KB)(n, { action: x.Z.Show, currentTab: a, source: r }); + }, []), + (0, s.jsxs)("div", { + className: V, + children: [ + (0, s.jsxs)("div", { + className: W, + children: [ + (0, s.jsx)("div", { + className: Z, + children: p.ZP.t( + "dre_m10n_management_page_title", + {}, + "Manage Subscription" + ), + }), + (0, s.jsx)("div", { + className: K, + onClick: c, + children: (0, s.jsx)(h.Rnl, { className: H }), + }), + ], + }), + (0, s.jsxs)("div", { + className: q, + children: [ + (0, s.jsxs)(l.Z, { + className: J, + activeTab: a, + onChange: v, + renderTabTitle: (e) => + (0, s.jsx)("div", { className: Y, children: e }), + children: [ + (0, s.jsx)( + l.Z.TabPane, + { + title: p.ZP.t( + "dre_m10n_management_page_tab_manage_plan", + {}, + "Manage Plans" + ), + }, + x.Ak.ManagePlans + ), + (0, s.jsx)( + l.Z.TabPane, + { + title: p.ZP.t( + "dre_m10n_management_page_tab_order_history", + {}, + "Payment Records" + ), + }, + x.Ak.OrderRecords + ), + ], + }), + [x.Ak.ManagePlans, x.Ak.OrderRecords].map((e) => { + var t = X[e]; + return (0, s.jsx)( + t, + { + onClose: c, + style: { display: e === a ? "block" : "none" }, + reportParam: i, + }, + e + ); + }), + ], + }), + ], + }) + ); + } + function ee(e) { + var { containerService: t, reportParam: i } = e, + n = c.Z.confirm({ + title: null, + footer: null, + icon: null, + simple: !0, + closable: !1, + maskClosable: !0, + maskStyle: { + backdropFilter: "blur(8px)", + WebkitBackdropFilter: "blur(8px)", + }, + wrapClassName: z, + content: (0, s.jsx)(f.$, { + instantiationService: t, + children: (0, s.jsx)($, { + onClose: () => n.close(), + reportParam: i, + }), + }), + }); + } + }, + 415467: function (e, t, i) { + "use strict"; + i.d(t, { e: () => T }); + var n = i("625572"), + r = i("639880"), + a = i("772322"); + i("894672"); + var o = i("274993"), + s = i("218571"), + l = i("733437"), + c = i("224671"), + d = i("949274"), + u = { title: "title-AqS3kR", icon: "icon-XIj4kF" }; + i("248405"); + var f = i("245848"), + h = i("105789"), + p = i.n(h), + v = i("188754"), + m = { + container: "container-ZC8D9b", + dimensionContainer: "dimensionContainer-trjU98", + dimension: "dimension-gmOMCZ", + kindText: "kindText-EMYvoJ", + valueInput: "valueInput-ifacyB", + lockIconContainer: "lockIconContainer-IEssA4", + lockIcon: "lockIcon-jHKf61", + lockIconDisable: "lockIconDisable-SUyZrS", + lockIconContainerDisable: "lockIconContainerDisable-ZbC3B6", + dimensionErrTips: "dimensionErrTips-Z0ygQf", + }, + g = (e) => { + var { + width: t, + height: i, + errTips: s, + isLocked: l, + className: c, + minValue: u, + maxValue: h, + isWidthError: g = !1, + isHeightError: _ = !1, + dimensionItemStyle: y, + isDisable: b, + onLockChange: I, + onWidthChange: w, + onWidthClick: x, + onWidthUpdateFinish: S, + onHeightChange: M, + onHeightClick: C, + onHeightUpdateFinish: T, + } = e, + A = void 0 !== s, + k = (l || (!l && t > 0 && i > 0)) && !b, + P = "".concat(u, "~").concat(h), + E = () => { + k && I(!l); + }, + D = () => { + null == S || S(); + }, + R = () => { + null == T || T(); + }, + N = () => { + null == x || x(); + }, + L = () => { + null == C || C(); + }, + j = l + ? d.ZP.t("canvas2_ratio_unbind", {}, "Unlock aspect ratio") + : d.ZP.t("canvas2_ratio_fixed", {}, "Lock aspect ratio"); + return (0, a.jsxs)("div", { + className: p()(m.container, c), + children: [ + (0, a.jsxs)("div", { + className: m.dimensionContainer, + children: [ + (0, a.jsxs)("div", { + className: m.dimension, + style: (0, r._)((0, n._)({}, y), { + border: g ? "1px solid var(--state-warning)" : "", + }), + children: [ + (0, a.jsx)("div", { + className: m.kindText, + children: "W", + }), + (0, a.jsx)(f.Z, { + disabled: b, + className: m.valueInput, + value: t, + onClick: N, + onBlur: D, + onChange: w, + precision: 0, + hideControl: !0, + placeholder: P, + }), + ], + }), + (0, a.jsx)("div", { + className: p()(m.lockIconContainer, { + [m.lockIconContainerDisable]: !k, + }), + onClick: E, + children: (0, a.jsx)(o.Z, { + content: j, + disabled: !k, + children: l + ? (0, a.jsx)(v.ikT, { + className: p()(m.lockIcon, { + [m.lockIconDisable]: !k, + }), + }) + : (0, a.jsx)(v.EA8, { + className: p()(m.lockIcon, { + [m.lockIconDisable]: !k, + }), + }), + }), + }), + (0, a.jsxs)("div", { + className: m.dimension, + style: (0, r._)((0, n._)({}, y), { + border: _ ? "1px solid var(--state-warning)" : "", + }), + children: [ + (0, a.jsx)("div", { + className: m.kindText, + children: "H", + }), + (0, a.jsx)(f.Z, { + disabled: b, + className: m.valueInput, + style: { color: _ ? "var(--state-warning)" : "" }, + value: i, + onBlur: R, + onChange: M, + onClick: L, + precision: 0, + hideControl: !0, + placeholder: P, + }), + ], + }), + ], + }), + A && + (0, a.jsx)("div", { + className: m.dimensionErrTips, + children: s, + }), + ], + }); + }, + _ = i("314068"), + y = i("575088"), + b = i("475578"), + I = i("528498"), + w = i("205253"), + x = i("486965"), + S = i("820"), + M = i("489897"), + C = (e, t, i) => e >= t && e <= i, + T = (e) => { + var t, + i, + f, + h, + p, + v, + { + instance: m, + containerService: T, + page: A, + hideTitle: k = !1, + isDisable: P = !1, + } = e, + [E, D] = (0, I.CY)(), + [R, N] = (0, s.useState)(""), + [L, j] = (0, s.useState)(!1), + [O, B] = (0, s.useState)(!1), + F = (0, l.k)(m, (e) => ({ + largeImageInfo: e.largeImageInfo, + isDimensionLocked: e.isDimensionLocked, + customRatio: null == e ? void 0 : e.customRatio, + selectModel: e.selectModel, + imageRatio: e.imageRatio, + })), + { + largeImageInfo: U = _.jg, + isDimensionLocked: G = !0, + customRatio: z, + selectModel: V, + imageRatio: W = c.jP.OneOne, + } = null != F ? F : {}, + Z = (0, s.useMemo)( + () => + (0, x.h)( + null == U ? void 0 : U.resolutionType, + null == V ? void 0 : V.resolutionMap + ), + [V, null == U ? void 0 : U.resolutionType] + ), + K = (0, s.useCallback)( + (e) => { + if (null == U ? void 0 : U.resolutionType) + return (0, S.l3)( + U.resolutionType, + null == V ? void 0 : V.resolutionMap, + e + ); + }, + [ + null == U ? void 0 : U.resolutionType, + null == V ? void 0 : V.resolutionMap, + ] + ), + H = (0, s.useMemo)(() => { + var e = Math.floor(Math.sqrt(Z.maxPixelNum * M.mg[W])), + t = Math.floor(e / M.mg[W]); + return { width: e, height: t }; + }, [Z.maxPixelNum, W]), + q = (0, s.useCallback)( + (e, t) => { + var i; + return ( + (i = G + ? Math.min(t, Math.floor(Z.maxPixelNum / e), Z.maxLength) + : Math.min(Z.maxLength, Math.floor(Z.maxPixelNum / e))), + d.ZP.t( + "canvas_tool_supported_inputs", + { stringx: "".concat(Z.minLength, "px~").concat(i, "px") }, + "Enter between: {stringx}" + ) + ); + }, + [Z, G] + ); + (0, s.useEffect)(() => { + D && (0, y.b_)(T, { page: A, item: y.xQ.Lock, action: b.tz.Show }); + }, [D]); + var J = (e) => { + if (!!e) { + var t = Math.min(Z.maxLength, Z.maxPixelNum / U.width), + i = void 0 === e || !C(e, Z.minLength, t); + B(i), + N(i ? q(U.width, H.height) : ""), + null == m || m.updateSelectedImageHeight(e); + } + }, + Y = (e) => { + if (!!e) { + var t = Math.min(Z.maxLength, Z.maxPixelNum / U.height), + i = void 0 === e || !C(e, Z.minLength, t); + j(i), + N(i ? q(U.height, H.width) : ""), + null == m || m.updateSelectedImageWidth(e); + } + }, + Q = (e) => { + null == m || m.updateIsDimensionLocked(e), + (0, y.b_)(T, { item: y.xQ.Lock, action: b.tz.Click, page: A }); + }, + X = () => { + if (!!m) { + var { width: e, height: t } = m.largeImageInfo; + if (e * t > Z.maxPixelNum) { + if (G) { + var i = K(W); + i && + m.updateLargeImageInfo( + (0, r._)((0, n._)({}, i), { + resolutionType: U.resolutionType, + }) + ); + } else { + var a = Math.floor(Z.maxPixelNum / t); + m.updateSelectedImageWidth(a); + } + } + j(!1), N(""); + } + }, + $ = () => { + if (!!m) { + var { width: e, height: t } = m.largeImageInfo; + if (e * t > Z.maxPixelNum) { + if (G) { + var i = K(W); + i && + m.updateLargeImageInfo( + (0, r._)((0, n._)({}, i), { + resolutionType: U.resolutionType, + }) + ); + } else { + var a = Math.floor(Z.maxPixelNum / e); + m.updateSelectedImageHeight(a); + } + } + B(!1), N(""); + } + }; + return (0, a.jsxs)("div", { + ref: E, + children: [ + !k && + (0, a.jsxs)("div", { + className: u.title, + children: [ + d.ZP.t("ratio_ratio_pic"), + (0, a.jsx)(o.Z, { + content: d.ZP.t( + "ratio_ratio_quality", + {}, + "The larger the image size, the better the image quality, but it may also take longer to generate." + ), + children: (0, a.jsx)(w.MFE, { className: u.icon }), + }), + ], + }), + (0, a.jsx)(g, { + width: + null !== + (h = + null !== (f = null == U ? void 0 : U.width) && + void 0 !== f + ? f + : null === (t = K(c.jP.OneOne)) || void 0 === t + ? void 0 + : t.width) && void 0 !== h + ? h + : _.jg.width, + height: + null !== + (v = + null !== (p = null == U ? void 0 : U.height) && + void 0 !== p + ? p + : null === (i = K(c.jP.OneOne)) || void 0 === i + ? void 0 + : i.height) && void 0 !== v + ? v + : _.jg.height, + minValue: Z.minLength, + maxValue: Z.maxLength, + isWidthError: L, + isHeightError: O, + isLocked: G, + errTips: R, + isDisable: P, + onHeightChange: J, + onWidthChange: Y, + onLockChange: Q, + onWidthUpdateFinish: X, + onHeightUpdateFinish: $, + }), + ], + }); + }; + }, + 310509: function (e, t, i) { + "use strict"; + i.d(t, { i: () => g }); + var n = i("625572"), + r = i("639880"), + a = i("96"), + o = i("772322"); + i("894672"); + var s = i("274993"), + l = i("218571"), + c = i("105789"), + d = i.n(c), + u = i("52533"), + f = { + timeoutTooltip: "timeoutTooltip-EeUjLC", + greyTip: "greyTip-N0KGXs", + flexBox: "flex-box-LZn6Dk", + closeIcon: "close-icon-FchpEf", + }, + h = i("699267"), + p = i("434712"), + v = i("259435"), + m = i("188754"), + g = (0, l.forwardRef)((e, t) => { + var { + children: i, + className: c, + content: g, + onVisibleChange: _, + waitingContextViewIds: y, + tooltipStyle: b, + needCloseIcon: I = !1, + } = e, + w = (0, a._)(e, [ + "children", + "className", + "content", + "onVisibleChange", + "waitingContextViewIds", + "tooltipStyle", + "needCloseIcon", + ]), + [x, S] = (0, l.useState)(!1), + [M, C] = (0, l.useState)(void 0), + T = (0, l.useRef)(), + A = (0, h.G)(p.t), + k = function (e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : 3e3; + !(0, u.Z)(e) && C(e), + S(!0), + T.current && clearTimeout(T.current), + (T.current = setTimeout(() => { + S(!1), C(g), (T.current = void 0); + }, t)); + }, + P = () => { + if (!!x) + T.current && clearTimeout(T.current), + S(!1), + C(g), + (T.current = void 0); + }, + E = function (e) { + var t, + i = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : 3e3; + if (y) { + for (var n of y) if ((t = (0, v.X)(A, n))) break; + } + t + ? t.onUnmount(() => { + k(e, i); + }) + : k(e, i); + }; + (0, l.useImperativeHandle)(t, () => ({ show: E, hide: P })); + var D = (e) => { + !T.current && g && (S(e), null == _ || _(e)); + }; + return (0, o.jsx)( + s.Z, + (0, r._)( + (0, n._)( + { + className: d()( + f.timeoutTooltip, + "grey" === b && f.greyTip, + c + ), + popupVisible: x, + content: (0, o.jsxs)("div", { + className: f.flexBox, + children: [ + null != M ? M : g, + I + ? (0, o.jsx)(m.Rnl, { + onClick: () => { + P(); + }, + size: 12, + className: f.closeIcon, + }) + : void 0, + ], + }), + showArrow: !0, + triggerProps: { popupAlign: { bottom: 4 } }, + onVisibleChange: D, + }, + w + ), + { children: i } + ) + ); + }); + }, + 518814: function (e, t, i) { + "use strict"; + i.d(t, { Z: () => d }); + var n = i("625572"), + r = i("772322"), + a = i("218571"), + o = i("188754"), + s = i("839141"), + l = { container: "container-GNgcRL" }, + c = { + [s.d.Standard]: { icon: o._VM, iconExpired: o.TrG }, + [s.d.Artisan]: { icon: o.PxL, iconExpired: o.q1Y }, + [s.d.Maestro]: { icon: o.lbg, iconExpired: o.enG }, + }; + function d(e) { + var { + className: t = "", + style: i, + level: o, + inactive: d, + enableClick: u = !1, + size: f = 20, + onClick: h, + } = e, + p = (0, a.useRef)(!1), + v = (0, a.useCallback)( + (e) => !!e && [s.d.Standard, s.d.Artisan, s.d.Maestro].includes(e), + [] + ), + m = (0, a.useCallback)(() => { + if (!!u) null == h || h(); + }, [u, h]), + g = (0, a.useCallback)(() => { + var e = null; + return o && v(o) && (e = d ? c[o].iconExpired : c[o].icon), e; + }, [o, d, v]), + _ = (0, a.useCallback)(() => { + var e = { + width: "".concat(f, "px"), + height: "".concat(f, "px"), + fontSize: "".concat(f, "px"), + }; + return u && (e.cursor = "pointer"), (0, n._)({}, e, i); + }, [f, u, i]), + y = (0, a.useCallback)((e) => { + if (!p.current) { + var t = null == e ? void 0 : e.querySelector("svg"); + if (t) { + var i = t.querySelectorAll("linearGradient"); + i.length > 0 && + (i.forEach((e) => { + var i = e.getAttribute("id"); + if (i) { + var n = "" + .concat(i, "_") + .concat(Math.random().toString(36).substr(2, 9)); + e.setAttribute("id", n), + t + .querySelectorAll('path[fill="url(#'.concat(i, ')"]')) + .forEach((e) => { + e.setAttribute("fill", "url(#".concat(n, ")")); + }); + } + }), + (p.current = !0)); + } + } + }, []), + b = g(); + return b + ? (0, r.jsx)("div", { + className: l.container, + ref: y, + children: (0, r.jsx)(b, { className: t, style: _(), onClick: m }), + }) + : null; + } + }, + 211580: function (e, t, i) { + "use strict"; + i.d(t, { w: () => u }); + var n = i("772322"), + r = i("2910"), + a = i("105789"), + o = i.n(a), + s = { + "image-editor-conflict-modal-z-index": "999999", + imageEditorConflictModalZIndex: "999999", + "box-selection-z-index": "10100", + boxSelectionZIndex: "10100", + "character-generate-modal-z-index": "1001", + characterGenerateModalZIndex: "1001", + "commerce-info-tooltip-z-index": "1001", + commerceInfoTooltipZIndex: "1001", + "boximator-modal-z-index": "1001", + boximatorModalZIndex: "1001", + "video-container-z-index": "9", + videoContainerZIndex: "9", + imageSm: "imageSm-vzVlWD", + disabled: "disabled-ECQbmc", + image: "image-UuNvBV", + imageContainer: "imageContainer-KiTN3y", + multiImageContainer: "multiImageContainer-oI3NME", + lastImageSm: "lastImageSm-SObf2k", + firstImageSm: "firstImageSm-J0fZjQ", + lastImage: "lastImage-iWibJ0", + editable: "editable-oKWxc3", + blank: "blank-ZrU_Dr", + imageItem: "imageItem-zngq8X", + itemText: "itemText-jYHS1_", + panelContainer: "panelContainer-lU1QNl", + imgContainer: "imgContainer-l7wqhH", + btnContainer: "btnContainer-cNaMyt", + imgBig: "imgBig-Sqiylo", + btnBig: "btnBig-Vw92Q6", + btnSm: "btnSm-c3H91P", + }, + l = i("128468"), + c = i("653061"), + d = (e) => { + var { + useRawImg: t, + src: i, + className: a, + loading: l, + imageClassName: d, + disabled: u, + resolutionUrlMap: f, + } = e; + return t + ? (0, n.jsx)("img", { + src: (0, r.C)(i, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + className: o()(s.imageSm, a, { [s.disabled]: u }), + style: { width: "20px", height: "20px" }, + crossOrigin: "anonymous", + }) + : (0, n.jsx)(c.k, { + src: (0, r.C)(i, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + }), + resolutionUrlMap: f, + className: o()(s.imageSm, a, { [s.disabled]: u }), + imageClassName: o()(s.image, d), + style: { width: "20px", height: "20px" }, + crossOrigin: "anonymous", + loading: l, + "data-apm-action": "work-detail-pure-image-prompt-item", + }); + }, + u = (e) => { + var { + mode: t, + coverList: i, + disabled: r, + loading: a, + index: c, + name: u, + useRawImg: f, + } = e, + [h] = null != i ? i : [], + p = + Array.isArray(i) && (null == i ? void 0 : i.length) > 1 + ? i[i.length - 1] + : void 0; + return (0, n.jsxs)("span", { + className: o()(s.imageItem, { + [s.story]: t === l.JU.Story, + [s.multiImageItem]: h && p, + }), + tabIndex: 0, + contentEditable: "false", + suppressContentEditableWarning: !0, + children: [ + (null == h ? void 0 : h.coverUrl) || + (null == h ? void 0 : h.coverUrlMap) + ? (0, n.jsxs)("div", { + className: o()(s.imageContainer, { + [s.multiImageContainer]: h && p, + }), + children: [ + (0, n.jsx)(d, { + src: h.coverUrl, + resolutionUrlMap: h.coverUrlMap, + className: o()({ [s.firstImageSm]: p }), + loading: a, + disabled: r, + useRawImg: f, + }), + (null == p ? void 0 : p.coverUrl) || + (null == p ? void 0 : p.coverUrlMap) + ? (0, n.jsx)(d, { + src: p.coverUrl, + resolutionUrlMap: p.coverUrlMap, + className: s.lastImageSm, + imageClassName: s.lastImage, + loading: a, + disabled: r, + useRawImg: f, + }) + : null, + ], + }) + : null, + (0, n.jsx)("span", { + className: o()(s.itemText, { [s.disabled]: r }), + children: u, + }), + ], + }); + }; + }, + 863896: function (e, t, i) { + "use strict"; + i.d(t, { + G: function () { + return n; + }, + Q: function () { + return r; + }, + }); + var n = 300, + r = 6e4; + }, + 94012: function (e, t, i) { + "use strict"; + i.d(t, { + S: function () { + return n; + }, + }); + class n { + static getInstance() { + return !this._instance && (this._instance = new n()), this._instance; + } + static makeExploreFavorite(e, t) { + var i; + null === (i = this._instance) || + void 0 === i || + i.makeExploreItemFavorite(e, t); + } + init(e) { + this._searchService = e; + } + setSearchFeedService(e) { + this._searchFeedService = e; + } + makeExploreItemFavorite(e, t) { + var i, n; + null === (i = this._searchService) || + void 0 === i || + i.setExploreItemFavorite(e, t), + null === (n = this._searchFeedService) || + void 0 === n || + n.updateVideoLikeStatus(e, t); + } + } + }, + 69529: function (e, t, i) { + "use strict"; + i.d(t, { + R: function () { + return f; + }, + z: function () { + return u; + }, + }); + var n = i(139646), + r = i(761615), + a = i(738210), + o = i(70529), + s = i(166320), + l = i(683973), + c = i(475578), + d = i(388977); + function u(e, t) { + if (0 === e.length) return !1; + for (var i of e) { + var n, + a, + o = + null !== + (n = null == t ? void 0 : t.getRecord(i.historyRecordId)) && + void 0 !== n + ? n + : i, + s = ( + null !== (a = i.selectedImageList) && void 0 !== a ? a : [] + ).map((e) => e.itemId); + if (s.length <= 0 && !(0, r.Mv)({ record: o })) return !1; + for (var l of s) + if (!(0, r.Mv)({ record: o, imageItemId: l })) return !1; + } + return !0; + } + function f(e) { + return h.apply(this, arguments); + } + function h() { + return (h = (0, n._)(function* (e) { + var { + selectedRecords: t, + containerService: i, + dreaminaAssetsDataService: n, + imageAssetsHistoryService: f, + contentRecordListManager: h, + overwriteSelectedRecords: p, + onSuccess: v, + } = e, + m = null == i ? void 0 : i.invokeFunction((e) => e.get(o.m)), + g = t.map((e) => { + var t; + return { + id: e.historyRecordId, + type: s.Eu.Image, + itemIdList: + null === (t = e.selectedImageList) || void 0 === t + ? void 0 + : t.map((e) => e.itemId), + }; + }); + t.forEach((e) => { + var t; + null === (t = e.selectedImageList) || + void 0 === t || + t.forEach((t) => { + (0, l.YA)(e, t, c.tz.Collect, m, {}, i); + }); + }); + var _ = !u(t, null == f ? void 0 : f.activeInstance); + if ( + (yield (0, r.uz)({ + containerService: i, + service: n, + hasFavorited: _, + ids: g, + onSuccess: () => { + null == f || f.setFavorite(g, _), null == v || v(); + }, + }), + p) + ) + for (var y of t) { + var b, + I = (0, d.ko)(i, a.u); + (0, r.i5)({ + curIdItem: { + id: y.historyRecordId, + type: s.Eu.Image, + itemIdList: + null === (b = y.selectedImageList) || void 0 === b + ? void 0 + : b.map((e) => e.itemId), + }, + storeService: I, + record: y, + hasFavorited: _, + }); + } + })).apply(this, arguments); + } + }, + 339128: function (e, t, i) { + "use strict"; + i.d(t, { + d$: function () { + return s; + }, + tF: function () { + return o; + }, + }); + var n = i(513294), + r = i(734696), + a = i(586315), + o = (function (e) { + return ( + (e.Init = "Init"), + (e.Generating = "Generating"), + (e.Success = "Success"), + (e.Fail = "Fail"), + (e.CanRetry = "CanRetry"), + e + ); + })({}); + class s extends r.JT { + delete() { + return ( + this._onDidDelete.fire(), + this.dispose(), + Promise.resolve((0, a.ly)()) + ); + } + constructor(...e) { + super(...e), + (this._onDidDelete = this._store.add(new n.Q())), + (this.onDidDelete = this._onDidDelete.event), + (this._onDidPolling = this._store.add(new n.Q())), + (this.onDidPolling = this._onDidPolling.event), + (this._onGenerateSuccess = this._store.add(new n.Q())), + (this.onGenerateSuccess = this._onGenerateSuccess.event), + (this._onGenerateFailure = this._store.add(new n.Q())), + (this.onGenerateFailure = this._onGenerateFailure.event), + (this._onModelChange = this._store.add(new n.Q())), + (this.onModelChange = this._onModelChange.event), + (this._onFavoriteChange = this._store.add(new n.Q())), + (this.onFavoriteChange = this._onFavoriteChange.event); + } + } + }, + 613983: function (e, t, i) { + "use strict"; + i.d(t, { + IU: function () { + return r; + }, + Qp: function () { + return a; + }, + kP: function () { + return o; + }, + pO: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e[(e.GenerateVideo = 0)] = "GenerateVideo"), + (e[(e.LipSync = 1)] = "LipSync"), + e + ); + })({}), + r = (function (e) { + return ( + (e.init = "init"), + (e.uploading = "uploading"), + (e.complete = "complete"), + e + ); + })({}), + a = (function (e) { + return (e.lastFrame = "lastFrame"), (e.firstFrame = "firstFrame"), e; + })({}), + o = (function (e) { + return (e.frame = "frame"), (e.custom = "custom"), e; + })({}); + }, + 776913: function (e, t, i) { + "use strict"; + i.d(t, { + Jg: function () { + return l; + }, + UD: function () { + return o; + }, + }); + var n = i(625572), + r = i(639880), + a = i(224671), + o = { + templateId: "", + generateCount: 1, + promptSource: a.U_.Custom, + templateSource: a.Q8.Default, + lastRequestId: "", + originRequestId: "", + }, + s = 1; + class l { + static getInstance() { + return !this._instance && (this._instance = new l()), this._instance; + } + setPendingResumeReportParam(e, t) { + var i = this._getFormatTextToImageGenerateParamJsonStringify(e); + (this._lastPendingReportParamKey = i), + (this._lastPendingReportParamPrompt = e.prompt), + (this._pendingResumeReportParamMap[i] = t); + } + resumeReportParam(e) { + var t = this._getFormatTextToImageGenerateParamJsonStringify(e), + i = this._pendingResumeReportParamMap[t], + s = + this._pendingResumeReportParamMap[ + this._lastPendingReportParamKey + ], + l = (null == s ? void 0 : s.promptSource) === a.U_.Template, + c = this._resumeGenerateCount(e); + return i + ? (0, r._)((0, n._)({}, i), { generateCount: c }) + : l + ? (0, r._)((0, n._)({}, s), { + promptSource: a.U_.TemplateEdit, + templatePrompt: this._lastPendingReportParamPrompt, + }) + : (this._resetReportParam(t), o); + } + _resetReportParam(e) { + (this._pendingResumeReportParamMap = {}), + (this._pendingResumeReportParamMap[e] = o), + (this._lastPendingReportParamKey = ""), + (this._lastPendingReportParamPrompt = ""); + } + _getFormatTextToImageGenerateParamJsonStringify(e) { + var { + prompt: t, + model: i, + sampleStrength: n, + imageRatio: r, + negativePrompt: a, + } = e, + o = { + prompt: t, + model: i, + sampleStrength: n, + imageRatio: r, + negativePrompt: a, + }; + try { + return JSON.stringify(o); + } catch (e) { + return ""; + } + } + _resumeGenerateCount(e) { + var t = this._getFormatTextToImageGenerateParamJsonStringify(e), + i = this._generateCountMap[t]; + if (!i) + return ( + (this._generateCountMap = {}), (this._generateCountMap[t] = s), s + ); + var n = i + 1; + return (this._generateCountMap[t] = n), n; + } + constructor() { + (this._pendingResumeReportParamMap = {}), + (this._generateCountMap = {}), + (this._lastPendingReportParamKey = ""), + (this._lastPendingReportParamPrompt = ""); + } + } + }, + 13523: function (e, t, i) { + "use strict"; + i.d(t, { + F: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e[(e.Updated = 0)] = "Updated"), + (e[(e.NotUpdated = 1)] = "NotUpdated"), + (e[(e.NoAvailableModel = 2)] = "NoAvailableModel"), + e + ); + })({}); + }, + 121365: function (e, t, i) { + "use strict"; + i.d(t, { + KY: function () { + return c; + }, + Ne: function () { + return a; + }, + T7: function () { + return d; + }, + X1: function () { + return r; + }, + au: function () { + return o; + }, + q5: function () { + return s; + }, + th: function () { + return l; + }, + }); + var n = i(314068); + function r(e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : n.D1, + i = + arguments.length > 2 && void 0 !== arguments[2] + ? arguments[2] + : n.vS; + return Math.min(Math.max(e, i), t); + } + function a(e, t) { + var i = + arguments.length > 2 && void 0 !== arguments[2] + ? arguments[2] + : n.D1, + a = + arguments.length > 3 && void 0 !== arguments[3] + ? arguments[3] + : n.vS, + o = e, + s = e / t; + return ( + s > i ? (o = (s = i) * t) : s < a && (o = (s = a) * t), + { width: r(Math.floor(o), i, a), height: r(Math.floor(s), i, a) } + ); + } + function o(e, t) { + var i = + arguments.length > 2 && void 0 !== arguments[2] + ? arguments[2] + : n.D1, + a = + arguments.length > 3 && void 0 !== arguments[3] + ? arguments[3] + : n.vS, + o = e, + s = e * t; + return ( + s > i ? (o = (s = i) / t) : s < n.vS && (o = (s = a) / t), + { width: r(Math.floor(s), i, a), height: r(Math.floor(o), i, a) } + ); + } + function s(e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : n.D1, + i = + arguments.length > 2 && void 0 !== arguments[2] + ? arguments[2] + : n.vS; + return e >= i && e <= t; + } + function l(e, t) { + var i = + arguments.length > 2 && void 0 !== arguments[2] + ? arguments[2] + : n.D1, + r = + arguments.length > 3 && void 0 !== arguments[3] + ? arguments[3] + : n.vS; + if (!e || !t) return n.jg; + var s = e / t; + return e > t ? a(Math.min(e, i), s, i, r) : o(Math.min(t, i), s, i, r); + } + function c(e, t) { + var i = e / t; + return e > t + ? { width: n.D1, height: Math.round(n.D1 / i) } + : { width: Math.round(n.D1 * i), height: n.D1 }; + } + function d(e, t) { + var i = + arguments.length > 2 && void 0 !== arguments[2] + ? arguments[2] + : n.vS, + r = + arguments.length > 3 && void 0 !== arguments[3] + ? arguments[3] + : n.D1, + a = + arguments.length > 4 && void 0 !== arguments[4] + ? arguments[4] + : n.U7, + o = e / t, + s = Math.min( + Math.floor(Math.floor(Math.sqrt(a / o)) * o), + Math.floor(r * o), + r + ), + l = Math.floor(s / o); + return ( + l > r && (s = Math.floor((l = r) * o)), + s < i && ((s = i), (l = Math.floor(i / o))), + s < i + ? (s = i) + : s > r + ? (s = r) + : l < i + ? (l = i) + : l > r && (l = r), + { width: s, height: l } + ); + } + }, + 486965: function (e, t, i) { + "use strict"; + i.d(t, { + E: function () { + return o; + }, + h: function () { + return s; + }, + }); + var n = i(314068), + r = i(665498), + a = i(591586), + o = (e, t) => { + if (!(null == e ? void 0 : e.resolutionMap) || !t) + return ( + a.t.log( + "getModelRatioSizeMap: \u6CA1\u6709\u9009\u62E9\u6A21\u578B\u6216\u5206\u8FA8\u7387\uFF0C\u8FD4\u56DE\u9ED8\u8BA4\u6620\u5C04" + ), + n.BN + ); + var i = e.resolutionMap[t]; + return (null == i ? void 0 : i.imageRatioSizes) + ? i.imageRatioSizes.reduce((e, t) => { + var i = r.E7[t.ratioType]; + return ( + i && + t.width && + t.height && + (e[i] = { width: t.width, height: t.height }), + e + ); + }, {}) + : (a.t.log( + "getModelRatioSizeMap: \u6307\u5B9A\u5206\u8FA8\u7387\u7684\u914D\u7F6E\u4E0D\u5B58\u5728\uFF0C\u8FD4\u56DE\u9ED8\u8BA4\u6620\u5C04" + ), + n.BN); + }, + s = (e, t) => { + var i = { minLength: n.vS, maxLength: n.D1, maxPixelNum: n.U7 }; + if (!t || !e) return i; + var r = t[e]; + if (!(null == r ? void 0 : r.imageRangeConfig)) return i; + var { + minLength: a, + maxLength: o, + maxPixelNum: s, + } = r.imageRangeConfig; + return { minLength: a, maxLength: o, maxPixelNum: s }; + }; + }, + 708171: function (e, t, i) { + "use strict"; + i.d(t, { + E: function () { + return o; + }, + Y: function () { + return a; + }, + }); + var n = i(891602), + r = i(224671); + function a(e) { + return (t) => (0, n.ox)(t, e); + } + var o = (e) => { + var t, + i = Object.keys( + null !== (t = null == e ? void 0 : e.resolutionMap) && void 0 !== t + ? t + : {} + ); + return 0 === i.length ? r.YD.ImageResolutionType_1k : i[0]; + }; + }, + 964917: function (e, t, i) { + "use strict"; + i.d(t, { m: () => D }); + var n = i("139646"), + r = i("625572"), + a = i("639880"), + o = i("789786"), + s = i("734696"), + l = i("586315"), + c = i("260963"), + d = i("128468"), + u = i("243302"), + f = i("166320"), + h = i("675601"), + p = i("257843"), + v = i("434712"), + m = i("442052"), + g = i("285993"), + _ = i("741310"), + y = i("761615"), + b = i("379311"); + class I { + getEventParams() { + var { result: e, mode: t, duration: i, action: n } = this._params; + return { + duration: i, + action: n, + status: e.ok ? "success" : "fail", + code: "".concat(e.code), + msg: e.msg, + mode: t, + }; + } + constructor(e) { + (this._params = e), (this.eventName = "perf_ai_video_history"); + } + } + function w(e, t) { + (0, b.US)(e, I, [t]); + } + var x = i("800088"), + S = i("869409"), + M = i("224671"), + C = i("831452"), + T = i("182688"), + A = i("54061"); + class k extends s.JT { + get isInitialized() { + return this._initialized; + } + get isLoading() { + return !!this._loadMorePromise; + } + get feedsTask() { + return this._tempData.feedsTask; + } + get feedsData() { + return this._tempData.feedsData; + } + insertTask(e) { + return ( + this._lastPageFeedsData.length > 0 && + ((this._observableData.feedsData = this._lastPageFeedsData), + (this._lastPageFeedsData = [])), + (this._observableData.feedsData = + this._observableData.feedsData.concat(e)), + !0 + ); + } + hardResetGeneratedList(e) { + this._observableData.feedsData = e; + } + initFeedsData() { + var e = this; + return (0, n._)(function* () { + return e.isInitialized ? (0, l.ly)() : yield e.loadMoreFeedsData(); + })(); + } + hasMoreData(e) { + return e === u.KB.PageUp + ? !this._isFeedsDataUpPageFetchEnd + : e === u.KB.PageDown + ? !this._isFeedsDataBottomPageFetchEnd + : !this._isFeedsDataUpPageFetchEnd || + !this._isFeedsDataBottomPageFetchEnd; + } + loadMoreFeedsData() { + var e = + arguments.length > 0 && void 0 !== arguments[0] + ? arguments[0] + : u.KB.PageUp, + t = arguments.length > 1 ? arguments[1] : void 0, + i = this; + return (0, n._)(function* () { + if (!i.hasMoreData(e)) return (0, l.ly)(); + if (i._option.mode === d.JU.Story && !t) + return (i._initialized = !0), (0, l.ly)(); + if (i._loadMorePromise) { + var n = yield i._loadMorePromise; + return n.ok ? (0, l.ly)() : (0, l.wf)(n.code, n.msg); + } + var r = + e === u.KB.PageUp + ? i._observableData.feedsData[0] + : i._observableData.feedsData[ + i._observableData.feedsData.length - 1 + ], + a = null == r ? void 0 : r.taskData.inputParams.createdTime; + i._loadMorePromise = i._dataService + .fetchTaskList({ + offset: null != a ? a : 0, + count: i._pageCount, + direction: e, + mode: i._option.mode, + historyOption: { storyId: t }, + option: { + orderBy: S.Q.CreateAt, + onlyFavorited: i._option.onlyFavorited, + }, + }) + .finally(() => { + i._loadMorePromise = void 0; + }); + var o = Date.now(), + s = yield i._loadMorePromise; + if ( + (w(i._containerService, { + duration: Date.now() - o, + action: a ? "pull" : "init", + result: s, + mode: i._option.mode, + }), + !s.ok) + ) + return (0, l.wf)(s.code, s.msg); + (i._initialized = !0), + i._updateIsContentListFetchEnd(e, !s.value.hasMore); + var c = i._formatServerDataToTask(s.value.data); + return ( + (i._observableData.feedsData = + e === u.KB.PageUp + ? (0, C.Z)( + c.reverse().concat(i._observableData.feedsData), + "id" + ) + : (0, C.Z)( + i._observableData.feedsData.concat(c.reverse()), + "id" + )), + (0, l.ly)() + ); + })(); + } + getHistoryRecord(e) { + var t = this; + return (0, n._)(function* () { + var i = t._observableData.feedsData.find((t) => t.id === e); + if (i) return (0, l.oW)(i.taskData); + var n = yield t._dataService.locateTask({ + historyRecordId: e, + preCount: 0, + nextCount: t._pageCount, + type: M.q.Text2Video, + mode: d.JU.Workbench, + }); + if (!n.ok) return n; + var r = n.value.data.find((t) => t.historyRecordId === e); + return r + ? (0, l.oW)(t._formatServerDataToTask([r])[0].taskData) + : (0, l.wf)(-1, "history record not found"); + })(); + } + locateHistory(e, t) { + var i = this; + return (0, n._)(function* () { + if ( + (i._loadMorePromise && (yield i._loadMorePromise), + i._lastPageFeedsData.some((t) => t.id === e)) + ) + return i._syncLastPageDataToFeedsData(), (0, l.ly)(); + i._loadMorePromise = i._dataService + .locateTask({ + historyRecordId: e, + preCount: i._pageCount, + nextCount: i._pageCount, + type: M.q.Text2Video, + mode: i._option.mode, + historyOption: { storyId: t }, + }) + .finally(() => { + i._loadMorePromise = void 0; + }); + var n = yield i._loadMorePromise; + if (!n.ok) return (0, l.wf)(n.code, n.msg); + var r = new Set(), + a = []; + for (var o of n.value.data) { + if (!r.has(o.historyRecordId)) { + if ( + (r.add(o.historyRecordId), a.push(o), a.length > i._pageCount) + ) + break; + } + } + i._refreshLastPageFeedsData(), + i._updateIsContentListFetchEnd(u.KB.PageDown, !1), + i._updateIsContentListFetchEnd(u.KB.PageUp, !1); + var s = i._formatServerDataToTask(a); + return (i._observableData.feedsData = s.reverse()), (0, l.ly)(); + })(); + } + deleteData(e) { + var t = this._observableData.feedsData.findIndex((t) => t.id === e); + if (!(t < 0)) + this._observableData.feedsData.splice(t, 1), + (this._observableData.feedsData = [ + ...this._observableData.feedsData, + ]); + } + markPublish(e, t) { + var i = this._observableData.feedsData.findIndex((t) => { + var i, n, r, a; + if (t.taskData.generateType && (0, T.sk)(t.taskData.generateType)) + return ( + (null === (n = t.observableData.data.videoDetail) || + void 0 === n + ? void 0 + : n.aigcItemId) === e || + (null === (a = t.taskData.videoDetail) || void 0 === a + ? void 0 + : null === (r = a.audioList) || void 0 === r + ? void 0 + : r.some((t) => { + var { mixAudioVideo: i } = t; + return (null == i ? void 0 : i.itemId) === e; + })) + ); + return ( + (null === (i = t.observableData.data.videoDetail) || + void 0 === i + ? void 0 + : i.aigcItemId) === e + ); + }), + n = this._observableData.feedsData[i]; + n && n.markPublished(t); + } + markFavorite(e) { + var t = + !(arguments.length > 1) || + void 0 === arguments[1] || + arguments[1], + i = {}, + n = () => { + (0, c.z)(() => { + this._observableData.feedsData.map( + (e) => ( + void 0 !== i[e.taskData.id] && + e.markFavorite(i[e.taskData.id]), + e + ) + ); + }); + }, + r = new Set(e.map((e) => e.id)); + return ( + this._observableData.feedsData.map( + (e) => ( + r.has(e.taskData.id) && + ((i[e.taskData.id] = !!e.taskData.hasFavorited), + e.markFavorite(t), + r.delete(e.taskData.id)), + e + ) + ), + r.size > 0 && + t && + (e + .filter((e) => r.has(e.taskData.id)) + .forEach((e) => { + var t, + n, + a = + null !== + (n = + null === (t = this._observableData.feedsData[0]) || + void 0 === t + ? void 0 + : t.taskData.inputParams.createdTime) && + void 0 !== n + ? n + : 1 / 0; + e.taskData.inputParams.createdTime >= a && + ((i[e.taskData.id] = !!e.taskData.hasFavorited), + this._observableData.feedsData.push(e), + r.delete(e.taskData.id)); + }), + this._observableData.feedsData.sort( + (e, t) => + e.taskData.inputParams.createdTime - + t.taskData.inputParams.createdTime + ), + r.size > 0 && this._updateIsContentListFetchEnd(u.KB.PageUp, !1)), + { + onError: () => n(), + onSuccess: (e) => { + e.forEach((e) => delete i[e]), + n(), + this.feedsData.length < 5 && this.loadMoreFeedsData(); + }, + } + ); + } + _formatServerDataToTask(e) { + var t = []; + for (var i of e) + try { + var n = this._containerService.createInstance(x.U, { + logger: this._logger, + serviceData: i, + option: this._option, + }); + t.push(n); + } catch (e) { + this._logger.error( + "generate task instance fail, taskId: ".concat(i.task.taskId) + ); + } + return t; + } + _refreshLastPageFeedsData() { + var e = + arguments.length > 0 && void 0 !== arguments[0] + ? arguments[0] + : -this._pageCount, + t = this._observableData.feedsData.slice(e); + this._lastPageFeedsData = t; + } + _syncLastPageDataToFeedsData() { + return ( + !!this._lastPageFeedsData.length && + ((this._observableData.feedsData = this._lastPageFeedsData), + (this._lastPageFeedsData = []), + this._updateIsContentListFetchEnd(u.KB.PageDown, !0), + this._updateIsContentListFetchEnd(u.KB.PageUp, !1), + !0) + ); + } + _updateIsContentListFetchEnd(e, t) { + e === u.KB.PageDown + ? (this._isFeedsDataBottomPageFetchEnd = t) + : (this._isFeedsDataUpPageFetchEnd = t); + } + constructor(e, t, i, n) { + super(), + (this._option = e), + (this._loggerService = t), + (this._containerService = i), + (this._dataService = n), + (this._pageCount = 10), + (this._initialized = !1), + (this._lastPageFeedsData = []), + (this._isFeedsDataUpPageFetchEnd = !1), + (this._isFeedsDataBottomPageFetchEnd = !0), + (this._observableData = (0, c.LO)({ feedsData: [] })), + (this._tempData = (0, c.LO)({ feedsData: [], feedsTask: [] })), + (this._logger = this._loggerService.createLogger( + "ai-video-store-instance-".concat( + this._option.onlyFavorited ? "favorite" : "all" + ) + )), + (0, c.U5)( + () => + this._observableData.feedsData + .filter((e) => { + var { taskData: t } = e; + return !this._option.onlyFavorited || t.hasFavorited; + }) + .map((e) => e.taskData), + (e) => { + (0, c.z)(() => { + this._tempData.feedsData = e; + }); + } + ), + (0, c.U5)( + () => + this._observableData.feedsData.filter((e) => { + var { taskData: t } = e; + return !this._option.onlyFavorited || t.hasFavorited; + }), + (e) => { + (0, c.z)(() => { + this._tempData.feedsTask = e; + }); + } + ); + } + } + (0, o.gn)( + [ + c.aD.bound, + (0, o.w6)("design:type", Function), + (0, o.w6)("design:paramtypes", []), + (0, o.w6)("design:returntype", void 0), + ], + k.prototype, + "_syncLastPageDataToFeedsData", + null + ), + (k = (0, o.gn)( + [ + (0, o.fM)(1, A.VZ), + (0, o.fM)(2, v.t), + (0, o.fM)(3, h.g), + (0, o.w6)("design:type", Function), + (0, o.w6)("design:paramtypes", [ + "undefined" == typeof GenerateVideoFeedsInstanceOptions + ? Object + : GenerateVideoFeedsInstanceOptions, + void 0 === A.VZ ? Object : A.VZ, + void 0 === v.t ? Object : v.t, + void 0 === h.g ? Object : h.g, + ]), + ], + k + )); + var P = i("351066"), + E = i("586961"); + class D extends s.JT { + static markPublished(e, t) { + if (!!this._instance) this._instance.markPublished(e, t); + } + insertTask(e) { + if (this._option.mode === d.JU.Workbench) { + var t = this; + return ( + (function () { + var i = (0, n._)(function* () { + if ( + t._option.mode === d.JU.Workbench && + e.taskData.historyGroupKeyMd5 + ) { + t._option.onRecordCreated(e); + return; + } + var i = yield (0, E.m4)({ + containerService: t._containerService, + submitId: e.submitId, + type: "video", + }); + if (i.ok && t._option.mode === d.JU.Workbench) { + var n, + { historyGroupKeyMd5: r } = i.value, + a = + null !== + (n = t.getHistoryGroupKeyMd5FromExistedTask(e)) && + void 0 !== n + ? n + : r; + e.updateHistoryGroupKeyMd5(a), t._option.onRecordCreated(e); + } + }); + return function () { + return i.apply(this, arguments); + }; + })()(), + !0 + ); + } + return ( + this.onlyFavorited && this.updateOnlyFavorited(!1), + this.activeInstance.insertTask(e), + !0 + ); + } + getHistoryGroupKeyMd5FromExistedTask(e) { + var t, i; + return null === + (i = this._allInstance.feedsTask.find((t) => + this.checkInputIsSame(t, e) + )) || void 0 === i + ? void 0 + : null === (t = i.taskData) || void 0 === t + ? void 0 + : t.historyGroupKeyMd5; + } + checkInputIsSame(e, t) { + var i, + { inputParams: n } = t.taskData, + { inputParams: r } = e.taskData; + return ( + !!( + (null === (i = n.inputImages) || void 0 === i + ? void 0 + : i.length) && + n.inputImages.every((e, t) => { + var i, n; + return ( + e.imageUri === + (null === (n = r.inputImages) || void 0 === n + ? void 0 + : null === (i = n[t]) || void 0 === i + ? void 0 + : i.imageUri) + ); + }) + ) || + (!!n.textPrompt && n.textPrompt === r.textPrompt) || + !1 + ); + } + hardResetGeneratedList(e) { + var { allTasks: t, favorTasks: i } = e; + this._allInstance.hardResetGeneratedList(t), + this._favorInstance.hardResetGeneratedList(i); + } + get activeInstance() { + return this._observableData.onlyFavorited + ? this._favorInstance + : this._allInstance; + } + get isLoading() { + return this.activeInstance.isLoading; + } + get feedsTask() { + return this.activeInstance.feedsTask; + } + get feedsData() { + return this.activeInstance.feedsData; + } + get generatingFeedsTask() { + return this.activeInstance.feedsTask.filter((e) => + [P.C.INIT, P.C.LOADING].includes(e.taskData.status) + ); + } + get highlightHistoryId() { + return this._observableData.highlightHistoryId; + } + get onlyFavorited() { + return this._observableData.onlyFavorited; + } + get isInitialized() { + return this._initialized || this.activeInstance.isInitialized; + } + initFeedsData() { + var e = this; + return (0, n._)(function* () { + return e.isInitialized ? (0, l.ly)() : yield e.loadMoreFeedsData(); + })(); + } + hasMoreData(e) { + return this.activeInstance.hasMoreData(e); + } + updateHighlightHistoryId(e) { + this._observableData.highlightHistoryId = e; + } + updateOnlyFavorited(e) { + this._observableData.onlyFavorited = e; + } + loadMoreFeedsData() { + var e = + arguments.length > 0 && void 0 !== arguments[0] + ? arguments[0] + : u.KB.PageUp; + return this.activeInstance.loadMoreFeedsData(e, this._storyId); + } + getHistoryRecord(e) { + return this.activeInstance.getHistoryRecord(e); + } + locateHistory(e) { + return ( + this.onlyFavorited && this.updateOnlyFavorited(!1), + this._allInstance.locateHistory(e, this._storyId) + ); + } + deleteData(e) { + var t = + !(arguments.length > 1) || + void 0 === arguments[1] || + arguments[1], + i = this; + return (0, n._)(function* () { + if (t) { + var n = i.activeInstance.feedsTask.findIndex((t) => t.id === e), + r = i.feedsData[n]; + if ( + ![P.C.FAIL, P.C.SUCCESS, P.C.RETRYABLE_FAIL].includes( + r.status + ) || + !r.taskDetail + ) + return (0, l.wf)( + -1, + "can not delete not final status task', " + .concat(e, ", ") + .concat(i.feedsData[n]) + ); + var a = yield i._dataService.deleteTask({ + idList: [String(r.taskDetail.historyId)], + }); + if (!a.ok) return (0, l.wf)(a.code, a.msg); + } + return i._option.mode === d.JU.Workbench + ? (i._option.onTaskRemove(e), (0, l.ly)()) + : (i._allInstance.deleteData(e), + i._favorInstance.deleteData(e), + (0, l.ly)()); + })(); + } + markFavorite(e) { + var t = + !(arguments.length > 1) || + void 0 === arguments[1] || + arguments[1], + i = + !(arguments.length > 2) || + void 0 === arguments[2] || + arguments[2], + n = this.feedsTask.filter((t) => e.includes(t.id)), + r = [ + this._allInstance.markFavorite(n, t), + this._favorInstance.markFavorite(n, t), + ]; + if (!!i) + (0, y.uz)({ + containerService: this._containerService, + service: this._assetsDataService, + ids: e.map((e) => ({ id: e, type: f.Eu.Video })), + hasFavorited: t, + onSuccess: (e) => { + r.forEach((t) => t.onSuccess(e)); + }, + onError: () => { + r.forEach((e) => e.onError()); + }, + }); + } + markPublished(e, t) { + this._allInstance.markPublish(e, t), + this._favorInstance.markPublish(e, t); + } + feedbackTask(e) { + var t = this; + return (0, n._)(function* () { + var { + id: i, + feedbackType: n, + reasonKeyList: r = [], + reasonDescList: a = [], + } = e, + o = yield t._dataService.feedbackTask({ + historyRecordId: i, + feedBackType: n, + }); + return ( + ((null == a ? void 0 : a.length) || + (null == r ? void 0 : r.length)) && + (yield (0, _.fK)({ + localItemId: i, + reasonDescList: a, + reasonKeyList: r, + })), + o + ); + })(); + } + syncDataFromServer(e) { + var t = this; + return (0, n._)(function* () { + var i = t.activeInstance.feedsTask.find( + (t) => t.taskData.taskId === e + ); + if (!!i) return yield i.forceUpdateTask(); + })(); + } + findTaskByHistoryId(e) { + return this.activeInstance.feedsTask.find((t) => t.id === e); + } + findTaskById(e) { + return this.activeInstance.feedsTask.find( + (t) => t.taskData.taskId === e + ); + } + updateDefaultAudio(e, t) { + var i, + n = this.findTaskById(e); + if ( + !!(null == n + ? void 0 + : null === (i = n.taskData.videoDetail) || void 0 === i + ? void 0 + : i.aigcItemId) && + !!t.vid + ) { + var r = { + videoItemId: n.taskData.videoDetail.aigcItemId, + bgmVid: t.vid, + }; + n instanceof m.A && + (n.updateDefaultBgm(t), + this._dataService.updateVideoDefaultBGM(r)), + n instanceof g.q && + (n.updateDefault(t), + this._dataService.updateVideoDefaultAudioEffect(r)); + } + } + constructor(e, t, i, n) { + if ( + (super(), + (this._dataService = t), + (this._assetsDataService = i), + (this._containerService = n), + (this._initialized = !1), + (this._observableData = (0, c.LO)({ + highlightHistoryId: "", + onlyFavorited: !1, + })), + (this._option = e), + (this._allInstance = this._containerService.createInstance(k, e)), + (this._favorInstance = this._containerService.createInstance( + k, + (0, a._)((0, r._)({}, e), { onlyFavorited: !0 }) + )), + this._option.mode === d.JU.Story) + ) { + var o = this._option.getStoryId(); + o + ? ((this._storyId = o), this.initFeedsData()) + : (this._register( + this._option.messageCenterAdapter.event.onCommitAccess(() => { + var e; + this._storyId = + null !== (e = this._option.getStoryId()) && void 0 !== e + ? e + : ""; + }) + ), + (this._initialized = !0)); + } + D._instance = this; + } + } + (D._instance = void 0), + (0, o.gn)( + [ + c.aD, + (0, o.w6)("design:type", Function), + (0, o.w6)("design:paramtypes", [Boolean]), + (0, o.w6)("design:returntype", void 0), + ], + D.prototype, + "updateOnlyFavorited", + null + ), + (D = (0, o.gn)( + [ + (0, o.fM)(1, h.g), + (0, o.fM)(2, p.K), + (0, o.fM)(3, v.t), + (0, o.w6)("design:type", Function), + (0, o.w6)("design:paramtypes", [ + "undefined" == typeof GenerateVideoFeedsManagerOption + ? Object + : GenerateVideoFeedsManagerOption, + void 0 === h.g ? Object : h.g, + void 0 === p.K ? Object : p.K, + void 0 === v.t ? Object : v.t, + ]), + ], + D + )); + }, + 761615: function (e, t, i) { + "use strict"; + i.d(t, { + Gd: function () { + return x; + }, + Mv: function () { + return w; + }, + i5: function () { + return m; + }, + od: function () { + return I; + }, + py: function () { + return y; + }, + uz: function () { + return g; + }, + }); + var n = i(139646), + r = i(625572), + a = i(639880), + o = i(586961), + s = i(388977), + l = i(369617), + c = i(738210), + d = i(938678), + u = i(229025), + f = i(166320), + h = i(949274), + p = i(260963), + v = "favorite_toast_id", + m = (e) => { + var { curIdItem: t, record: i, hasFavorited: n, storeService: r } = e; + if (!!i) { + if ( + (null === (a = t.itemIdList) || void 0 === a + ? void 0 + : a.length) && + (0, o.ZS)(i) && + (0, u.FO)(i) + ) { + var a, + s, + l, + c = [ + ...(null !== + (l = + null === (s = i.assetOption) || void 0 === s + ? void 0 + : s.favoriteItemIdList) && void 0 !== l + ? l + : []), + ]; + t.itemIdList.forEach((e) => { + var t = c.indexOf(e); + n ? -1 === t && c.push(e) : -1 !== t && c.splice(t, 1); + }), + (0, p.z)(() => { + i.assetOption + ? ((i.assetOption.hasFavorited = !!c.length), + (i.assetOption.favoriteItemIdList = c)) + : (i.assetOption = { + hasFavorited: !!c.length, + favoriteItemIdList: c, + }); + }); + } else + (0, p.z)(() => { + i.assetOption + ? (i.assetOption.hasFavorited = n) + : (i.assetOption = { hasFavorited: n }); + }); + if ((0, o.cU)(i)) { + var d = r.getVideoTaskById(i.id); + null == d || d.markFavorite(n); + } + if ((0, o.z2)(i)) { + var f = r.getAudioTaskById(i.id); + null == f || f.markFavorite(n); + } + } + }; + function g(e) { + return _.apply(this, arguments); + } + function _() { + return (_ = (0, n._)(function* (e) { + var { + service: t, + containerService: i, + ids: n, + hasFavorited: r, + onSuccess: a, + onError: o, + } = e, + d = (0, s.ko)(i, c.u), + u = r + ? h.ZP.t( + "assets_toast_favourite_success", + {}, + "Added to Favorites" + ) + : h.ZP.t( + "assets_toast_unfavourite_success", + {}, + "Removed from Favorites" + ), + p = r + ? h.ZP.t( + "assets_toast_favourite_fail", + {}, + "Couldn\u2019t add to Favorites. Try again later." + ) + : h.ZP.t( + "assets_toast_unfavourite_fail", + {}, + "Couldn\u2019t remove from Favorites. Try again later." + ), + g = !1, + _ = []; + try { + var y, + b = yield t.markFavorite({ + ids: n, + favoriteOp: r ? f.ie.FavoriteOpLike : f.ie.FavoriteOpUnLike, + }), + I = + b.ok && + b.value.every( + (e) => + (null == e ? void 0 : e.status) && + [f.o$.Failed, f.o$.InvalidAsset].includes(e.status) + ); + b.ok && + (null === (y = b.value) || void 0 === y ? void 0 : y.length) && + !I + ? (b.value.forEach((e) => { + var { id: t, status: i } = e; + i === f.o$.Success && + (_.push(String(t)), l.s.success({ id: v, content: u })); + }), + (g = _.length > 0)) + : (null == o || o(), l.s.error({ id: v, content: p })); + } catch (e) { + null == o || o(), l.s.error({ id: v, content: p }); + } + if (g) { + for (var w of n) { + if (!!w.id && !!_.includes(w.id)) { + var x = d.getUnifiedRecordById(w.id); + m({ + curIdItem: w, + storeService: d, + record: x, + hasFavorited: r, + }); + } + } + null == a || a(_); + } else null == o || o(), l.s.error({ id: v, content: p }); + })).apply(this, arguments); + } + function y(e) { + var { ids: t, recordList: i, hasFavorited: n } = e, + o = []; + if (!t.length || !i.length) + return { hasChanged: !1, resRecordList: i, markedRecordList: o }; + var s = [...t]; + return { + hasChanged: !0, + resRecordList: i.map((e) => { + var t = s.findIndex((t) => t.id === e.historyRecordId); + if (-1 === t) return e; + var i = s.splice(t, 1)[0], + l = (0, d.I)(e); + if ( + (null === (c = i.itemIdList) || void 0 === c + ? void 0 + : c.length) && + (0, u.FO)(l) + ) { + var c, + f, + h, + p, + v = [ + ...(null !== + (p = + null === (h = l.assetOption) || void 0 === h + ? void 0 + : h.favoriteItemIdList) && void 0 !== p + ? p + : []), + ]; + i.itemIdList.forEach((e) => { + var t = v.indexOf(e); + n ? -1 === t && v.push(e) : -1 !== t && v.splice(t, 1); + }), + (f = { hasFavorited: !!v.length, favoriteItemIdList: v }); + } else f = { hasFavorited: n }; + var m = (0, a._)((0, r._)({}, l), { + assetOption: (0, r._)({}, l.assetOption, f), + }); + return o.push(m), m; + }), + markedRecordList: o, + }; + } + var b = (e) => { + var t; + return null === (t = e.assetOption) || void 0 === t + ? void 0 + : t.hasFavorited; + }; + function I(e) { + return e.recordList.filter((e) => b(e)); + } + function w(e) { + var { record: t, imageItemId: i = "" } = e; + if ( + !(null === (n = t.assetOption) || void 0 === n + ? void 0 + : n.hasFavorited) + ) + return !1; + if ((0, o.ZS)(t) && i) { + var n, + r, + a, + s, + l, + c, + d = t; + if ( + null == d + ? void 0 + : null === (s = d.assetOption) || void 0 === s + ? void 0 + : null === (a = s.favoriteItemIdList) || void 0 === a + ? void 0 + : a.includes(i) + ) + return !0; + if ( + null == d + ? void 0 + : null === (c = d.assetOption) || void 0 === c + ? void 0 + : null === (l = c.favoriteItemIdList) || void 0 === l + ? void 0 + : l.length + ) + return !1; + } + return !!(null === (r = t.assetOption) || void 0 === r + ? void 0 + : r.hasFavorited); + } + function x(e, t) { + return e.map((e) => { + var { record: i, itemIdList: n = [] } = e; + return (0, u.FO)(i) + ? { id: i.historyRecordId, type: t, itemIdList: [...n] } + : { id: i.historyRecordId, type: t }; + }); + } + }, + 39333: function (e, t, i) { + "use strict"; + i.d(t, { + K: function () { + return d; + }, + }); + var n = i(789786), + r = i(586961), + a = i(923401), + o = i(19658), + s = i(869919), + l = i(733787), + c = "dreamina_ailab_generate_video_model_v1.2"; + class d { + getIsEnableToUseDraftGen(e, t) { + return ( + (null == t ? void 0 : t.input.modelReqKey) !== c && + ((null == t ? void 0 : t.scene) === s.eA.VideoTemplate || + this._configurationService.abTestManager.getBooleanAbTestValue( + a.$s.videoDraftGen + )) + ); + } + getIsEnableToUseDraftPolling(e, t) { + return ( + (null == e ? !!void 0 : !!e.isUseDraftGen) || + this.getIsEnableToUseDraftGen(e, t) + ); + } + getIsAppLipSyncEnabledToPostEdit(e) { + var { processFlows: t, isUseDraftGen: i } = null != e ? e : {}, + n = null == t ? void 0 : t.map((e) => e.curProcessFlows).flat(); + return ( + !( + i && + (null == n + ? void 0 + : n.some((e) => + [ + l.v8.LipSync, + l.v8.LipSyncImage, + l.v8.LipSyncUserVideo, + ].includes(e) + )) + ) || this.getIsEnableToUseDraftGen(e) + ); + } + getIsActionCopyTaskEnabledToPostEdit(e) { + return !(0, r.sG)(e) || this.getIsEnableToUseDraftGen(); + } + constructor(e) { + this._configurationService = e; + } + } + d = (0, n.gn)( + [ + (0, n.fM)(0, o.S), + (0, n.w6)("design:type", Function), + (0, n.w6)("design:paramtypes", [void 0 === o.S ? Object : o.S]), + ], + d + ); + }, + 652660: function (e, t, i) { + "use strict"; + i.d(t, { + Q: function () { + return u; + }, + }); + var n = i(789786), + r = i(331480), + a = i(317825), + o = i(734696), + s = i(509525), + l = i(586315), + c = i(57083), + d = "WebsocketPollingManager"; + class u extends o.JT { + startListening(e) { + this._pollingContext = e; + var { methodId: t, signal: i } = this._config; + if (null == i ? void 0 : i.aborted) { + (0, a.xD)(this._pollingContext, a.cl.bool("signal.aborted", !0)); + return; + } + if ( + (null == i || i.addEventListener("abort", this._handleAbort), + this._websocketService.state !== r.D8.OPEN) + ) { + this._fallbackToPolling("websocket state is not open"); + return; + } + return ( + (this._closeHandlerDisposable = this._websocketService.onClose( + this._handleWebsocketClose + )), + this._setFallbackTimer(), + (this._messageHandlerDisposable = + this._websocketService.registerEventHandler( + t, + this._handleWebsocketMessage.bind(this, e) + )), + this._taskBarrier.wait() + ); + } + dispose() { + this._clearFallbackTimer(), + this._disposeWebsocketHandlers(), + this._taskBarrier.open(), + super.dispose(); + } + _handleWebsocketMessage(e, t) { + if (!this._hasFallbacked) { + var { accepted: i, done: n } = this._config.websocketMessageHandler( + e, + t + ); + if (n) { + (0, a.xD)(e, a.cl.bool("done", !0)), + this._clearFallbackTimer(), + this._disposeWebsocketHandlers(), + this._taskBarrier.open(); + return; + } + i && + ((0, a.xD)(e, a.cl.bool("accepted", !0)), + this._clearFallbackTimer(), + this._setFallbackTimer()); + } + } + _setFallbackTimer() { + this._timeout = window.setTimeout( + this._handleTimeout, + this._config.timeout + ); + } + _clearFallbackTimer() { + clearTimeout(this._timeout); + } + _fallbackToPolling(e) { + (0, a.xD)(this._pollingContext, a.cl.string("fallbackToPolling", e)); + var { onFallbackToPolling: t, pollingHandler: i } = this._config; + (this._hasFallbacked = !0), this._disposeWebsocketHandlers(); + var n = (0, s.Tg)(); + i(n), (0, a.a2)(n, this._pollingContext), null == t || t(e); + } + _disposeWebsocketHandlers() { + var e, t; + null === (e = this._closeHandlerDisposable) || + void 0 === e || + e.dispose(), + null === (t = this._messageHandlerDisposable) || + void 0 === t || + t.dispose(); + } + constructor(e, t) { + super(), + (this._config = e), + (this._websocketService = t), + (this._hasFallbacked = !1), + (this._pollingContext = null), + (this._taskBarrier = new c.U()), + (this._handleWebsocketClose = () => { + this._taskBarrier.open(), + this._clearFallbackTimer(), + this._fallbackToPolling("websocket closed"); + }), + (this._handleAbort = () => { + var { signal: e } = this._config; + null == e || e.removeEventListener("abort", this._handleAbort), + this._pollingContext && + (0, a.uf)( + this._pollingContext, + (0, l.wf)(1e3, "signal aborted") + ), + this._disposeWebsocketHandlers(), + this._clearFallbackTimer(), + this._taskBarrier.open(); + }), + (this._handleTimeout = () => { + this._pollingContext && + (0, a.uf)(this._pollingContext, (0, l.wf)(1001, "timeout")), + this._clearFallbackTimer(), + this._fallbackToPolling("timeout"), + this._taskBarrier.open(); + }); + } + } + (0, n.gn)( + [ + (0, a.lI)(d, "startListening"), + (0, n.w6)("design:type", Function), + (0, n.w6)("design:paramtypes", [ + "undefined" == typeof Context ? Object : Context, + ]), + (0, n.w6)("design:returntype", void 0), + ], + u.prototype, + "startListening", + null + ), + (0, n.gn)( + [ + (0, a.lI)(d, "handleWebsocketMessage"), + (0, n.w6)("design:type", Function), + (0, n.w6)("design:paramtypes", [ + "undefined" == typeof Context ? Object : Context, + "undefined" == typeof WebsocketMessageMap + ? Object + : WebsocketMessageMap, + ]), + (0, n.w6)("design:returntype", void 0), + ], + u.prototype, + "_handleWebsocketMessage", + null + ), + (u = (0, n.gn)( + [ + (0, n.fM)(1, r.Dx), + (0, n.w6)("design:type", Function), + (0, n.w6)("design:paramtypes", [ + "undefined" == typeof WebsocketPollingConfig + ? Object + : WebsocketPollingConfig, + void 0 === r.Dx ? Object : r.Dx, + ]), + ], + u + )); + }, + 766663: function (e, t, i) { + "use strict"; + i.d(t, { + hk: function () { + return n; + }, + j6: function () { + return r; + }, + }); + var n = (function (e) { + return ( + (e.GenerateSong = "generate_song"), + (e.GenerateBackgroundMusic = "generate_background_music"), + (e.GenerateInstrumental = "generate_instrumental"), + e + ); + })({}), + r = (function (e) { + return ( + (e.Text = "text"), + (e.Paragraph = "paragraph"), + (e.LyricsTag = "lyrics_tag"), + e + ); + })({}); + }, + 127364: function (e, t, i) { + "use strict"; + i.d(t, { + e: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e.AIGCModeWorkbench = "workbench"), + (e.AIGCModeCanvas = "canvas"), + (e.AIGCModeStory = "story"), + (e.AIGCModeCharacter = "character"), + (e.AIGCModeAIGCDraft = "aigc_draft"), + (e.AIGCModeAIAgent = "ai_agent"), + e + ); + })({}); + }, + 906193: function (e, t, i) { + "use strict"; + i.d(t, { + Z: function () { + return a; + }, + }); + var n = i(417281); + class r { + getEventParams() { + return this._params; + } + markPreProcessFinish() { + return ( + (this._params.perf_pre_process_cost = + Date.now() - this._clickGenerateTime), + this + ); + } + markGenerateFinish() { + return ( + (this._params.perf_total_cost = + Date.now() - this._clickGenerateTime), + this + ); + } + setServerTotalCost(e) { + return (this._params.perf_server_total_cost = e), this; + } + setBlendRefImageTypes(e) { + try { + if ("blendParams" in e) { + var { blendParams: t } = e; + if (t && "imagePromptList" in t) { + var i, + { imagePromptList: r } = t; + this._params.blend_ref_types = + null !== + (i = + null == r + ? void 0 + : r + .map((e) => { + if (e.name !== n.UI.ControlNet) return e.name; + if ("controlNetList" in e) { + var t, i; + return null !== + (i = + null === (t = e.controlNetList) || + void 0 === t + ? void 0 + : t.map((e) => e.name).join(",")) && + void 0 !== i + ? i + : ""; + } + }) + .join(",")) && void 0 !== i + ? i + : void 0; + } + } + } catch (e) {} + return this; + } + setClickGenerateTime(e) { + return (this._clickGenerateTime = e), this; + } + mergeParams(e) { + return Object.assign(this._params, e), this; + } + constructor(e, t) { + (this.id = e), + (this._params = t), + (this.eventName = "perf_ai_image_generate_status"), + (this._clickGenerateTime = 0); + } + } + class a { + static createReporter(e) { + if (this._reporterList.has(e)) return this._reporterList.get(e); + var t = new r(e, { + perf_server_total_cost: 0, + perf_pre_process_cost: 0, + perf_total_cost: 0, + perf_unit_id: e, + }); + return this._reporterList.set(e, t), t; + } + static getReporter(e) { + return this._reporterList.get(e); + } + static removeReporter(e) { + this._reporterList.delete(e); + } + } + a._reporterList = new Map(); + }, + 67752: function (e, t, i) { + "use strict"; + i.d(t, { + i: function () { + return c; + }, + }); + var n = i(625572), + r = i(789786), + a = i(379311), + o = i(434712), + s = i(76931); + class l { + getEventParams() { + return (0, n._)({}, this._params, (0, s.Oj)(this._containerService)); + } + constructor(e, t) { + (this._params = e), + (this._containerService = t), + (this.eventName = "ai_video_generate_status"); + } + } + function c(e, t) { + (0, a.Kl)(e, l, [t]); + } + l = (0, r.gn)( + [ + (0, r.fM)(1, o.t), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === o.t ? Object : o.t, + ]), + ], + l + ); + }, + 424437: function (e, t, i) { + "use strict"; + i.d(t, { + M: function () { + return p; + }, + v: function () { + return u; + }, + }); + var n = i(625572), + r = i(639880), + a = i(789786), + o = i(27433), + s = i(379311), + l = i(799108), + c = i(870730), + d = i(484702), + u = (function (e) { + return ( + (e.regenerate = "regenerate"), + (e.rePrompt = "reprompt"), + (e.addMore = "add_more"), + (e.reDub = "re_dub"), + (e.delete = "delete"), + (e.lipSync = "lip_sync"), + (e.upScale = "upscale"), + (e.frameInterpolation = "frame_interpolation"), + (e.continueGenerate = "continue_generate"), + e + ); + })({}), + f = { + regenerate: l.hO.RetryButton, + reprompt: void 0, + add_more: l.hO.ExtendSeconds, + re_dub: l.hO.ReDub, + delete: void 0, + lip_sync: l.hO.LipSync, + upscale: l.hO.VideoUpscale, + frame_interpolation: l.hO.VideoFrameInterpolation, + continue_generate: l.hO.ContinueLabUpscaleVideo, + }; + class h { + getEventParams() { + var { action: e } = this._params, + t = { is_freetrial: 0, vip_right_trial_type: c.a.nonTrial }, + i = f[e]; + if (i) { + var a = (0, o.be)({ + scene: i, + commercialStrategyService: this._commercialStrategyService, + }); + t = { + is_freetrial: Number(a.isStrategyFreeTrial), + vip_right_trial_type: a.trialType, + }; + } + return (0, r._)((0, n._)({}, t), { + action: this._params.action, + video_id: this._params.video_id, + is_usable: this._params.is_usable, + page: this._params.page, + }); + } + constructor(e, t) { + (this._params = e), + (this._commercialStrategyService = t), + (this.eventName = "ai_video_result_action_show"); + } + } + function p(e, t) { + (0, s.Kl)(e, h, [t]); + } + h = (0, a.gn)( + [ + (0, a.fM)(1, d.N), + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === d.N ? Object : d.N, + ]), + ], + h + ); + }, + 593187: function (e, t, i) { + "use strict"; + i.d(t, { + $: function () { + return b; + }, + a: function () { + return g; + }, + }); + var n = i(625572), + r = i(639880), + a = i(96), + o = i(789786), + s = i(379311), + l = i(434712), + c = i(799108), + d = i(27433), + u = i(870730), + f = i(475578), + h = i(70137), + p = i(484702), + v = i(217448), + m = i(76931), + g = (function (e) { + return ( + (e.processShow = "process_show"), + (e.failShow = "fail_show"), + (e.completeShow = "complete_show"), + (e.regenerate = "regenerate"), + (e.reprompt = "reprompt"), + (e.addMore = "add_more"), + (e.download = "download"), + (e.fullScreen = "full_screen"), + (e.playStart = "play_start"), + (e.playEnd = "play_end"), + (e.pause = "pause"), + (e.reviewToastShow = "review_toast_show"), + (e.like = "like"), + (e.dislike = "dislike"), + (e.submitDislike = "submit_dislike"), + (e.closeReviewToast = "close_review_toast"), + (e.report = "report"), + (e.submitReport = "submit_report"), + (e.delete = "delete"), + (e.confirmDelete = "confirm_delete"), + (e.imageInputDetail = "image_input_detail"), + (e.seedDetail = "seed_detail"), + (e.copySeed = "copy_seed"), + (e.refresh = "refresh"), + (e.clickAddBackup = "click_add_backup"), + (e.use = "use"), + (e.clickLipSync = "click_lip_sync"), + (e.hoverLipSync = "hover_lip_sync"), + (e.backToOriginalVideo = "back_to_original_video"), + (e.videoSourceDetail = "video_source_detail"), + (e.audioSourceDetail = "audio_source_detail"), + (e.audioSourcePlay = "audio_source_play"), + (e.redub = "re_dub"), + (e.dragToBackup = "drag_to_backup"), + (e.collect = "collect"), + (e.uncollect = "uncollect"), + (e.frameInterpolation = "frame_interpolation"), + (e.upscale = "upscale"), + (e.continueGenerate = "continue_generate"), + (e.aiMusic = "ai_music"), + (e.aiMusicRegenerate = "ai_music_regenerate"), + (e.v2aGenerate = "v2a_generate"), + (e.v2aReGenerate = "v2a_re_generate"), + (e.v2aSwitch = "v2a_switch"), + e + ); + })({}), + _ = { + hover_lip_sync: c.hO.LipSync, + click_lip_sync: c.hO.LipSync, + re_dub: c.hO.ReDub, + regenerate: c.hO.RetryButton, + add_more: c.hO.ExtendSeconds, + }; + class y { + getEventParams() { + var e, + t, + i, + { isVip: o, currentVipLevel: s } = this._vipService, + l = this._params, + { + video_duration: h, + frame_rate: p, + scene_options: v, + template_id: g, + impression_id: y, + } = l, + b = (0, a._)(l, [ + "video_duration", + "frame_rate", + "scene_options", + "template_id", + "impression_id", + ]), + I = + null !== + (t = + null === (e = this._params) || void 0 === e + ? void 0 + : e.scene) && void 0 !== t + ? t + : _[b.action], + w = I + ? (0, d.Qp)({ + scene: I, + sceneOptions: v, + videoDuration: h, + commercialStrategyService: this._commercialStrategyService, + }).credits + : 0, + x = { is_freetrial: 0, vip_right_trial_type: u.a.nonTrial }; + if (I) { + var S = (0, d.be)({ + scene: I, + commercialStrategyService: this._commercialStrategyService, + }); + x = { + is_freetrial: Number(S.isStrategyFreeTrial), + vip_right_trial_type: S.trialType, + }; + } + return (0, n._)( + (0, r._)((0, n._)({}, b, x), { + video_duration: (null != h ? h : 0) * 1e3, + credits_now: + null !== (i = null == b ? void 0 : b.credits_now) && + void 0 !== i + ? i + : this._commercialCreditService.localCredit, + credits_need: w, + is_vip: o ? 1 : 0, + user_subscribe_type: o ? c.TK[s] : 0, + frame_rate: p, + event_page: (0, m.CB)(f.px.Video), + template_from: (0, m.lg)(g, f.px.Video), + template_type_id: f.px.Video, + template_id: g, + impression_id: null != y ? y : (0, m.ww)(g), + }), + (0, m.Oj)(this._containerService) + ); + } + constructor(e, t, i, n, r) { + (this._params = e), + (this._vipService = t), + (this._commercialCreditService = i), + (this._commercialStrategyService = n), + (this._containerService = r), + (this.eventName = "ai_video_result_action"); + } + } + function b(e, t) { + (0, s.Kl)(e, y, [t]); + } + y = (0, o.gn)( + [ + (0, o.fM)(1, v.q), + (0, o.fM)(2, h.aG), + (0, o.fM)(3, p.N), + (0, o.fM)(4, l.t), + (0, o.w6)("design:type", Function), + (0, o.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === v.q ? Object : v.q, + void 0 === h.aG ? Object : h.aG, + void 0 === p.N ? Object : p.N, + void 0 === l.t ? Object : l.t, + ]), + ], + y + ); + }, + 822040: function (e, t, i) { + "use strict"; + i.d(t, { + Z: function () { + return S; + }, + s: function () { + return x; + }, + }); + var n = i(625572), + r = i(639880), + a = i(96), + o = i(789786), + s = i(379311), + l = i(434712), + c = i(243302), + d = i(227700), + u = i(217448), + f = i(799108), + h = i(44938), + p = i(27433), + v = i(246940), + m = i(475578), + g = i(870730), + _ = i(484702), + y = i(76931), + b = i(773820), + I = i(490165); + class w { + getEventParams() { + var e, + t, + i, + o, + s = this._params, + { + scene: l, + discount: c, + withRelaxedGenerateModeSwitch: d, + isRelaxedGenerate: u, + aiType: h, + aiSubType: v, + video_duration: _, + scene_options: b, + impression_id: I, + template_id: w, + template_type_id: x, + } = s, + S = (0, a._)(s, [ + "scene", + "discount", + "withRelaxedGenerateModeSwitch", + "isRelaxedGenerate", + "aiType", + "aiSubType", + "video_duration", + "scene_options", + "impression_id", + "template_id", + "template_type_id", + ]), + M = l + ? (0, p.Qp)({ + scene: l, + sceneOptions: b, + videoDuration: + (null != _ ? _ : 0) * + (null !== + (t = + null === (e = this._params) || void 0 === e + ? void 0 + : e.generate_num) && void 0 !== t + ? t + : 1), + commercialStrategyService: this._commercialStrategyService, + discount: c, + }).credits + : 0, + C = !1; + u && + ((C = this._isFirstRelaxedGenerate()), + this._updateIsFirstRelaxedGenerate()); + var T = { is_freetrial: 0, vip_right_trial_type: g.a.nonTrial }; + if (l) { + var A = (0, p.be)({ + scene: l, + commercialStrategyService: this._commercialStrategyService, + }); + T = { + is_freetrial: Number(A.isStrategyFreeTrial), + vip_right_trial_type: A.trialType, + }; + } + var { isVip: k, currentVipLevel: P } = this._vipService; + return (0, n._)( + (0, r._)((0, n._)({}, S, T), { + video_duration: + (null !== (i = S.origin_video_duration) && void 0 !== i + ? i + : 0) + + (null !== (o = S.extend_duration_ms) && void 0 !== o ? o : 0), + credits_need: M, + is_vip: k ? 1 : 0, + user_subscribe_type: k ? f.TK[P] : 0, + is_first_relaxed_generate: C ? m.eD.True : m.eD.False, + with_relaxed_generate_mode_switch: d ? m.eD.True : m.eD.False, + is_relaxed_generate: u ? m.eD.True : m.eD.False, + ai_type: h, + ai_sub_type: v, + template_id: w, + impression_id: I, + event_page: (0, y.CB)(m.px.Video), + template_from: (0, y.lg)(w, m.px.Video), + template_type_id: x, + }), + (0, y.Oj)(this._containerService) + ); + } + _isFirstRelaxedGenerate() { + return !v.T.getItem(this._isFirstRelaxedGenerateKey); + } + _updateIsFirstRelaxedGenerate() { + v.T.setItem(this._isFirstRelaxedGenerateKey, Date.now().toString()); + } + constructor(e, t, i, n) { + (this._params = e), + (this._vipService = t), + (this._commercialStrategyService = i), + (this._containerService = n), + (this.eventName = "click_ai_video_generate"), + (this._isFirstRelaxedGenerateKey = v.T.generateKey( + h.u.isUsedRelaxMode + )); + } + } + function x(e, t) { + (0, s.Kl)(e, w, [t]); + } + function S(e, t) { + var { + submitId: i, + taskExtraInfo: n, + actionTemplateId: r, + actionTemplateName: a, + enterFrom: o, + } = t, + { resourceId: s, impressionId: l, promptSource: u } = n || {}, + f = u === b.K.Remix, + h = e.invokeFunction((e) => e.get(I.D)), + p = null == h ? void 0 : h.userProfile.uid; + x(e, { + submit_id: i, + template_id: f ? s : void 0, + impression_id: l, + video_action_template_id: r, + video_action_template_name: a, + enter_from: o, + author_id: f ? p : void 0, + prompt_source: null != u ? u : b.K.Custom, + page: m.WZ.ActionCopy, + generate_type: c.pi.VideoTemplate, + aigc_type: "generate", + image_prompt_cnt: 1, + prompt_cnt: 0, + prompt: "", + movement_type: d.UW.unknown, + video_speed: "", + template_type_id: "video_action_driver", + seed: "", + aiType: m.CO.Video, + aiSubType: m.sw.ActionCopy, + is_preset: 0, + is_quick_preview: 0, + is_from_preview: 0, + generate_num: 1, + magic_box_cnt: 0, + }); + } + w = (0, o.gn)( + [ + (0, o.fM)(1, u.q), + (0, o.fM)(2, _.N), + (0, o.fM)(3, l.t), + (0, o.w6)("design:type", Function), + (0, o.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === u.q ? Object : u.q, + void 0 === _.N ? Object : _.N, + void 0 === l.t ? Object : l.t, + ]), + ], + w + ); + }, + 227700: function (e, t, i) { + "use strict"; + i.d(t, { + $y: function () { + return f; + }, + Ep: function () { + return l; + }, + MY: function () { + return h; + }, + PY: function () { + return m; + }, + QG: function () { + return d; + }, + QN: function () { + return c; + }, + UW: function () { + return a; + }, + hp: function () { + return v; + }, + k$: function () { + return u; + }, + mb: function () { + return p; + }, + oT: function () { + return o; + }, + qb: function () { + return s; + }, + }); + var n = i(869919), + r = i(733787), + a = (function (e) { + return ( + (e.stillShot = "still_shot"), + (e.zoomIn = "zoom_in"), + (e.zoomOut = "zoom_out"), + (e.rotateClockwise = "rotate_clockwise"), + (e.rotateAnticlockwise = "rotate_anticlockwise"), + (e.panLeft = "pan_left"), + (e.panRight = "pan_right"), + (e.tiltUp = "tilt_up"), + (e.tiltDown = "tilt_down"), + (e.horizontalLeft = "horizontal_left"), + (e.horizontalRight = "horizontal_right"), + (e.verticalUp = "vertical_up"), + (e.verticalDown = "vertical_down"), + (e.unknown = ""), + e + ); + })({}), + o = (function (e) { + return (e.normal = "normal"), (e.fluent = "fluent"), e; + })({}), + s = (function (e) { + return ( + (e.success = "success"), (e.fail = "fail"), (e.cancel = "cancel"), e + ); + })({}), + l = { + [n.Mc.Low]: "small", + [n.Mc.Moderate]: "medium", + [n.Mc.High]: "large", + }, + c = { + [r.H7.StillShot]: "still_shot", + [r.H7.ZoomIn]: "zoom_in", + [r.H7.ZoomOut]: "zoom_out", + [r.H7.RotateAnticlockwise]: "rotate_clockwise", + [r.H7.RotateClockwise]: "rotate_anticlockwise", + [r.H7.HorizontalLeft]: "horizontal_left", + [r.H7.HorizontalRight]: "horizontal_right", + [r.H7.VerticalDown]: "vertical_down", + [r.H7.VerticalUp]: "vertical_up", + [r.H7.TiltUp]: "tilt_up", + [r.H7.TiltDown]: "tilt_down", + [r.H7.PanLeft]: "pan_left", + [r.H7.PanRight]: "pan_right", + [r.H7.Default]: "", + }, + d = { + [r.py.VideoAspectRatioType_21_9]: "21:9", + [r.py.VideoAspectRatioType_16_9]: "16:9", + [r.py.VideoAspectRatioType_4_3]: "4:3", + [r.py.VideoAspectRatioType_1_1]: "1:1", + [r.py.VideoAspectRatioType_3_4]: "3:4", + [r.py.VideoAspectRatioType_9_16]: "9:16", + }, + u = { + "21:9": r.py.VideoAspectRatioType_21_9, + "16:9": r.py.VideoAspectRatioType_16_9, + "4:3": r.py.VideoAspectRatioType_4_3, + "1:1": r.py.VideoAspectRatioType_1_1, + "3:4": r.py.VideoAspectRatioType_3_4, + "9:16": r.py.VideoAspectRatioType_9_16, + }, + f = (function (e) { + return ( + (e.show = "show"), + (e.addImage = "add_image"), + (e.deleteImage = "delete_image"), + (e.cancelImage = "cancel_image"), + (e.openLastFrame = "open_last_frame"), + (e.closeLastFrame = "close_last_frame"), + (e.textInput = "text_input"), + (e.imageInput = "image_input"), + (e.characterInput = "character_input"), + (e.characterFromLocal = "character_from_local"), + (e.characterFromAssets = "character_from_assets"), + (e.deleteCharacter = "delete_character"), + (e.replaceCharacter = "replace_character"), + (e.enterPrompt = "enter_prompt"), + (e.openCameraControl = "open_camera_control"), + (e.switchMovementType = "switch_movement_type"), + (e.openVideoSetting = "open_video_setting"), + (e.switchAspectRatio = "switch_aspect_ratio"), + (e.switchVideoSpeed = "switch_video_speed"), + (e.enterSeed = "enter_seed"), + (e.openMovementSetting = "open_movement_setting"), + (e.switchMovementStrength = "switch_movement_strength"), + (e.movementReset = "movement_reset"), + (e.movementApply = "movement_apply"), + (e.switchGenerateMode = "switch_generate_mode"), + (e.switchVideoDuration = "switch_video_duration"), + (e.presetEdit = "preset_edit"), + (e.presetReset = "preset_reset"), + (e.switchGenerateNum = "switch_generate_num"), + (e.clickMagicBox = "click_magic_box"), + (e.openFramePopupShow = "open_frame_popup_show"), + (e.openFramePopupConfirm = "open_frame_popup_confirm"), + (e.switchModel = "switch_model"), + e + ); + })({}), + h = (function (e) { + return ( + (e.SideBar = "side_bar"), + (e.FastEntrance = "fast_entrance"), + (e.FirstPage = "first_page"), + (e.Remix = "remix"), + (e.Assets = "assets"), + (e.UserTools = "userTools"), + (e.Banner = "homebanner"), + (e.Url = "url"), + (e.SelectScene = "select_scene"), + (e.GenerateVideo = "generate_video"), + (e.ProjectMgr = "project_mgr"), + (e.HomePage = "homepage"), + (e.SwitchTab = "switch_tab"), + (e.WorkCollection = "work_collection"), + (e.TemplateDetail = "template_detail"), + (e.Detail = "detail"), + (e.DeepseekAgent = "agent"), + e + ); + })({}), + p = (function (e) { + return (e.Normal = "normal"), (e.Collect = "collect"), e; + })({}), + v = (function (e) { + return ( + (e.frame = "music_based_on_picture"), + (e.custom = "custom_ai_music"), + e + ); + })({}), + m = (function (e) { + return ( + (e.AddImage = "add_image"), + (e.DeleteImage = "delete_image"), + (e.AddTemplate = "add_template"), + (e.DeleteTemplate = "delete_template"), + (e.SelectTemplate = "select_template"), + e + ); + })({}); + }, + 455091: function (e, t, i) { + "use strict"; + i.d(t, { + k: function () { + return c; + }, + }); + var n = i(625572), + r = i(789786), + a = i(379311), + o = i(434712), + s = i(76931); + class l { + getEventParams() { + return (0, n._)({}, this._params, (0, s.Oj)(this._containerService)); + } + constructor(e, t) { + (this._params = e), + (this._containerService = t), + (this.eventName = "export_status"); + } + } + function c(e, t) { + (0, a.S$)(e, l, [t]); + } + l = (0, r.gn)( + [ + (0, r.fM)(1, o.t), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === o.t ? Object : o.t, + ]), + ], + l + ); + }, + 99123: function (e, t, i) { + "use strict"; + i.d(t, { + FT: function () { + return p; + }, + hw: function () { + return v; + }, + lt: function () { + return h; + }, + q: function () { + return f; + }, + }); + var n = i(625572), + r = i(379311), + a = i(773820), + o = i(591586), + s = i(243302), + l = { + dreamina_ic_generate_video_model_vgfm_lite: "\u89C6\u9891 S2.0", + "dreamina_ic_generate_video_model_vgfm1.0": "\u89C6\u9891 S2.0 Pro", + "dreamina_ailab_generate_video_model_v1.2": "\u89C6\u9891 1.2", + "dreamina_ailab_generate_video_model_v1.4": "\u89C6\u9891 P2.0 Pro", + }; + class c { + getEventParams() { + var e, + t, + i, + n, + { + data: r, + status: o, + duration: s, + taskDuration: c, + serverDuration: d, + generateDuration: u, + taskError: f, + generateTaskStatus: h, + taskId: p, + mode: v, + generateType: m, + server2WebsocketDuration: g, + failCode: _, + generateId: y, + isDraftGen: b, + } = this._params, + I = null === (e = r.inputImages) || void 0 === e ? void 0 : e[0], + w = null === (t = r.inputImages) || void 0 === t ? void 0 : t[1]; + "taskFail" === o && (null == f ? void 0 : f.code) + ? (i = "".concat(f.code)) + : "fail" === o && (i = "".concat(h)); + var x = r.extra, + S = + null !== (n = null == x ? void 0 : x.promptSource) && void 0 !== n + ? n + : a.K.Custom; + return { + video_duration: r.originDurationMs, + fps: r.originFps, + generate_type: m, + generate_type_str: "".concat(m), + prompt_source: S, + model_key: r.modelReqKey, + model_name: r.modelReqKey ? l[r.modelReqKey] : void 0, + motion_speed: "".concat(r.motionSpeed), + motion_type: r.motionType, + seed: "".concat(r.seed), + video_ratio: r.videoRatio, + video_generate_type: (null == I ? void 0 : I.imageUri) ? 2 : 1, + first_frame_image_url: null == I ? void 0 : I.imageUrl, + first_frame_image_uri: null == I ? void 0 : I.imageUri, + last_frame_image_url: null == w ? void 0 : w.imageUrl, + last_frame_image_uri: null == w ? void 0 : w.imageUri, + text_prompt: r.textPrompt, + scene: r.scene, + task_duration: c, + generate_duration: u, + duration: s, + server_duration: d, + client_duration: s - d, + server_to_websocket_duration: g, + status: o, + fail_code: i, + task_fail_code: _, + fail_reason: null == f ? void 0 : f.msg, + task_id: p, + mode: v, + logId: this._logId, + generate_id: y, + is_draft_gen: b ? "1" : "0", + }; + } + constructor(e, t) { + (this._params = e), + (this._logId = t), + (this.eventName = "perf_ai_video_generate"); + } + } + function d(e) { + return [ + s.Pd.FinalSuccess, + s.Pd.FinalGenerateFail, + s.Pd.PreTnsCheckNotPass, + s.Pd.PostTnsCheckNotPass, + ].includes(e); + } + class u { + static getInstance() { + return !u._instance && (u._instance = new u()), u._instance; + } + updateTaskRecord(e, t) { + this._taskRecord[e] = (0, n._)({}, this._taskRecord[e], t); + } + getWebsocketFinishedTime(e) { + var t; + return null === (t = this._taskRecord[e]) || void 0 === t + ? void 0 + : t.websocketFinishedTime; + } + supplementTaskRecord(e, t, i) { + if (!this._taskRecord[e]) + this.updateTaskRecord(e, { data: t }), this.markTaskStart(e, i); + } + markTaskStart(e, t) { + this.updateTaskRecord(e, { + taskStartTime: null != t ? t : Date.now(), + }); + } + markTaskEnd(e) { + if ( + !(null === (t = this._taskRecord[e]) || void 0 === t + ? void 0 + : t.taskStartTime) + ) { + o.t.warn("markTaskStart first"); + return; + } + var t, + i = Date.now(); + this.updateTaskRecord(e, { + taskDuration: i - this._taskRecord[e].taskStartTime, + generateStartTime: i, + }); + } + markGenerateEnd(e) { + var t = this._taskRecord[e], + i = Date.now(); + if (!(null == t ? void 0 : t.taskStartTime)) { + o.t.warn("markTaskStart first"); + return; + } + this.updateTaskRecord(e, { + generateDuration: t.generateStartTime + ? i - t.generateStartTime + : -1, + duration: i - t.taskStartTime, + }); + } + report(e, t, i) { + if (!!this._taskRecord[t]) + (0, r.Kl)(e, c, [this._taskRecord[t], i]), this._deleteRecord(t); + } + _deleteRecord(e) { + this._taskRecord[e] && delete this._taskRecord[e]; + } + constructor() { + this._taskRecord = {}; + } + } + function f(e) { + u.getInstance().updateTaskRecord(e, { + websocketFinishedTime: Date.now(), + }); + } + function h(e, t, i, n, r) { + u + .getInstance() + .updateTaskRecord(e, { + data: t, + mode: i, + generateType: n, + isDraftGen: r, + }), + u.getInstance().markTaskStart(e); + } + function p(e, t, i, n, r) { + var { + createdTime: a, + task: o, + generateType: l, + failCode: c, + generateId: f, + } = t, + { + submitId: h, + status: p, + taskId: v, + finishTime: m, + isUseDraftGen: g, + } = o; + if ( + (r && + (u.getInstance().supplementTaskRecord(h, r, r.createdTime), + u.getInstance().updateTaskRecord(h, { mode: i, generateType: l })), + f && u.getInstance().updateTaskRecord(h, { generateId: f }), + void 0 !== g && + u.getInstance().updateTaskRecord(h, { isDraftGen: g }), + v && u.getInstance().updateTaskRecord(h, { taskId: v }), + p === s.Pd.SubmitOk) + ) + u.getInstance().markTaskEnd(h); + else if (d(p)) { + var _ = u.getInstance().getWebsocketFinishedTime(h), + y = _ ? _ - 1e3 * m : void 0; + u.getInstance().markGenerateEnd(h), + u + .getInstance() + .updateTaskRecord(h, { + status: p === s.Pd.FinalSuccess ? "success" : "fail", + generateTaskStatus: p, + serverDuration: 1e3 * m - a, + server2WebsocketDuration: y, + failCode: c, + }), + u.getInstance().report(e, h, n); + } + } + function v(e, t, i) { + if ((u.getInstance().markTaskEnd(t), !i.ok)) { + var n, + [r] = i.pair(); + u + .getInstance() + .updateTaskRecord(t, { status: "taskFail", taskError: r }), + u + .getInstance() + .report( + e, + t, + null === (n = i.errorInfo) || void 0 === n ? void 0 : n.logId + ); + } + } + }, + 114527: function (e, t, i) { + "use strict"; + i.d(t, { + $: function () { + return o; + }, + K: function () { + return s; + }, + }); + var n = i(379311); + class r { + getEventParams() { + var { cost: e, assetType: t } = this._params; + return { cost: e, asset_type: t }; + } + constructor(e) { + (this._params = e), (this.eventName = "get_history_time_consuming"); + } + } + class a { + getEventParams() { + var { cost: e, assetType: t } = this._params; + return { cost: e, asset_type: t }; + } + constructor(e) { + (this._params = e), + (this.eventName = "get_asset_list_time_consuming"); + } + } + function o(e, t) { + (0, n.S$)(e, r, [t]); + } + function s(e, t) { + (0, n.S$)(e, a, [t]); + } + }, + 841798: function (e, t, i) { + "use strict"; + i.d(t, { + E8: function () { + return c; + }, + GW: function () { + return o; + }, + gf: function () { + return s; + }, + }); + var n = i(625572), + r = i(379311), + a = i(881607), + o = (function (e) { + return ( + (e.Show = "show"), + (e.Edit = "edit"), + (e.DeleteRole = "delete_role"), + (e.CorrectPrompt = "correct_prompt"), + (e.DeleteRoleConfirm = "delete_role_confirm"), + (e.CorrectPromptConfirm = "correct_prompt_confirm"), + (e.Create = "create"), + (e.Select = "select"), + (e.AtDelete = "at_delete"), + (e.AtDeleteConfirm = "at_delete_confirm"), + (e.Reset = "reset"), + e + ); + })({}), + s = (function (e) { + return (e.Click = "click"), (e.At = "at"), (e.Hover = "hover"), e; + })({}); + class l { + getEventParams() { + return (0, n._)({}, (0, a.cu)(this._params)); + } + constructor(e) { + (this._params = e), (this.eventName = "ai_role_settings_popup"); + } + } + function c(e, t) { + (0, r.Kl)(e, l, [t]); + } + }, + 785106: function (e, t, i) { + "use strict"; + i.d(t, { + M: function () { + return l; + }, + }); + var n = i(139646), + r = i(325946), + a = i(561658), + o = i(509525); + class s extends r.C { + _registerChildLevelService(e) { + var { registry: t, lazyServiceRegister: i } = e; + return (0, n._)(function* () { + var e = [i({ lazy: a.r, real: a.N })]; + yield Promise.all(e); + })(); + } + } + var l = (e) => + e ? e.createInstance(s).createChild((0, o.fC)()) : Promise.resolve(e); + }, + 353790: function (e, t, i) { + "use strict"; + i.d(t, { + U: function () { + return m; + }, + r: function () { + return p; + }, + }); + var n = i(139646), + r = i(625572), + a = i(789786), + o = i(379311), + s = i(434712), + l = i(487736), + c = i(799108), + d = i(217448), + u = i(561658), + f = i(259435), + h = i(785106), + p = (function (e) { + return ( + (e.Show = "show"), + (e.ClickJoinVip = "click_join_vip"), + (e.ClickGetCredits = "click_get_credits"), + (e.Cancel = "cancel"), + (e.Close = "close"), + e + ); + })({}); + class v { + get otherReportParams() { + return { + second_page: (0, f.X)( + this._containerService, + l.M.WorkCollectionDetailModal + ) + ? "work_collection_detail" + : void 0, + show_type: this._contentGenerationService.contentRecordListManager + .isGroupView + ? "collect" + : "normal", + }; + } + getEventParams() { + var { + action: e, + source: t, + isQuickPreview: i, + isFromPreview: n, + batchNumber: a, + } = this._params, + { isVip: o, currentVipLevel: s } = this._vipService; + return (0, r._)( + { + action: e, + is_vip: o ? 1 : 0, + user_subscribe_type: o ? c.TK[s] : 0, + source: t, + is_quick_preview: Number(null != i ? i : 0), + is_from_preview: Number(null != n ? n : 0), + generate_num: a, + }, + this.otherReportParams + ); + } + constructor(e, t, i, n) { + (this._params = e), + (this._vipService = t), + (this._contentGenerationService = i), + (this._containerService = n), + (this.eventName = "credit_limit_popup"); + } + } + function m(e, t) { + return g.apply(this, arguments); + } + function g() { + return (g = (0, n._)(function* (e, t) { + var i = yield (0, h.M)(e); + (0, o.Kl)(i, v, [t]); + })).apply(this, arguments); + } + v = (0, a.gn)( + [ + (0, a.fM)(1, d.q), + (0, a.fM)(2, u.N), + (0, a.fM)(3, s.t), + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === d.q ? Object : d.q, + void 0 === u.N ? Object : u.N, + void 0 === s.t ? Object : s.t, + ]), + ], + v + ); + }, + 582152: function (e, t, i) { + "use strict"; + i.d(t, { + ZD: function () { + return b; + }, + wE: function () { + return g; + }, + zh: function () { + return _; + }, + }); + var n = i(139646), + r = i(625572), + a = i(789786), + o = i(379311), + s = i(217448), + l = i(434712), + c = i(487736), + d = i(799108), + u = i(475578), + f = i(664306), + h = i(899229), + p = i(561658), + v = i(259435), + m = i(785106), + g = (function (e) { + return ( + (e.ClickGenerateButton = "click_generate_button"), + (e.ClickTopAccountButtonAddCredits = + "click_top_account_button_add_credits"), + (e.CLICK_VIP_FUNCTION_3s = "click_vip_function_+3s"), + (e.CLICK_REGENERATE_BUTTON = "click_regenerate_button"), + (e.CREDIT_LIMIT_POPUP = "credit_limit_popup"), + (e.MULTI_VIP_POPUP_GET_CREDITS = "multi_vip_popup_get_credits"), + (e.SUBSCRIBE_PLAN_CHANGE_POPUP = "subscribe_plan_change_popup"), + e + ); + })({}), + _ = (function (e) { + return ( + (e.Show = "show"), + (e.SelectProduct = "select_product"), + (e.CheckDetail = "check_detail"), + (e.AgreeProtocol = "agree_protocol"), + (e.GetQrCode = "get_qr_code"), + (e.FailToGetQrCode = "fail_to_get_qr_code"), + (e.InvalidQrCode = "invalid_qr_code"), + (e.ShowQrCode = "show_qr_code"), + (e.VIPEnd = "vip_end"), + (e.PaySuccess = "pay_success"), + (e.PayFail = "pay_fail"), + (e.ClickPurchase = "click_purchase"), + e + ); + })({}); + class y { + get otherReportParams() { + return { + second_page: (0, v.X)( + this._containerService, + c.M.WorkCollectionDetailModal + ) + ? "work_collection_detail" + : void 0, + show_type: this._contentGenerationService.contentRecordListManager + .isGroupView + ? "collect" + : "normal", + }; + } + getEventParams() { + var { + source: e, + action: t, + creditNow: i, + selectCreditsAmount: n, + payChannel: a, + payCurrency: o, + payAmount: s, + orderId: l, + sku: c, + scene: p, + sceneOptions: v, + videoDuration: m, + isQuickPreview: g, + isFromPreview: _, + batchNumber: y, + } = this._params, + { isVip: b, currentVipLevel: I } = this._vipService, + w = {}, + x = {}; + return ( + p && + ((w.ai_type = (0, f.MJ)({ scene: p }) + ? u.CO.Video + : (0, f.K6)({ scene: p }) + ? u.CO.Audio + : u.CO.Image), + (w.vip_function_id = (0, h.cq)({ scene: p, sceneOptions: v })), + (x = { + video_mode: (() => { + if ((null == v ? void 0 : v.version) !== h.dt.V2CharVideo) { + if (v && "mode" in v) return v.mode; + } + })(), + video_duration: m, + vip_function_id: w.vip_function_id, + })), + (0, r._)( + { + source: e, + action: t, + is_vip: b ? 1 : 0, + user_subscribe_type: b ? d.TK[I] : 0, + credit_now: i, + select_credits_amount: n, + pay_channel: a, + pay_amount: s, + pay_currency: o, + order_id: l, + sku: c, + extra: x, + is_quick_preview: Number(null != g ? g : 0), + is_from_preview: Number(null != _ ? _ : 0), + generate_num: y, + }, + w, + this.otherReportParams + ) + ); + } + constructor(e, t, i, n) { + (this._params = e), + (this._vipService = t), + (this._contentGenerationService = i), + (this._containerService = n), + (this.eventName = "credit_popup"); + } + } + function b(e, t) { + return I.apply(this, arguments); + } + function I() { + return (I = (0, n._)(function* (e, t) { + var i = yield (0, m.M)(e); + (0, o.Kl)(i, y, [t]); + })).apply(this, arguments); + } + y = (0, a.gn)( + [ + (0, a.fM)(1, s.q), + (0, a.fM)(2, p.N), + (0, a.fM)(3, l.t), + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === s.q ? Object : s.q, + void 0 === p.N ? Object : p.N, + void 0 === l.t ? Object : l.t, + ]), + ], + y + ); + }, + 202070: function (e, t, i) { + "use strict"; + i.d(t, { + DT: function () { + return d; + }, + dz: function () { + return f; + }, + }); + var n = i(625572), + r = i(789786), + a = i(217448), + o = i(603026), + s = i(799108), + l = i(27433), + c = i(379311), + d = (function (e) { + return (e.Show = "show"), (e.Click = "click"), e; + })({}); + class u { + getEventParams() { + var { action: e } = this._params, + { isVip: t, currentVipLevel: i } = this._vipService, + { vipPriceList: r } = this._commercialGoodsService, + a = (0, l.c3)(r); + return (0, n._)( + { + action: e, + user_subscribe_type: t ? s.TK[i] : 0, + show_up_condition: "credit_not_enough", + }, + (0, l.Rg)(a) + ); + } + constructor(e, t, i) { + (this._params = e), + (this._vipService = t), + (this._commercialGoodsService = i), + (this.eventName = "generate_button_bubble"); + } + } + function f(e, t) { + (0, c.Kl)(e, u, [t]); + } + u = (0, r.gn)( + [ + (0, r.fM)(1, a.q), + (0, r.fM)(2, o.K), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === a.q ? Object : a.q, + void 0 === o.K ? Object : o.K, + ]), + ], + u + ); + }, + 344312: function (e, t, i) { + "use strict"; + i.d(t, { + Vq: function () { + return l; + }, + b1: function () { + return u; + }, + kD: function () { + return c; + }, + vg: function () { + return s; + }, + }); + var n = i(789786), + r = i(799108), + a = i(379311), + o = i(217448), + s = (function (e) { + return ( + (e.Show = "show"), + (e.ClickOk = "click_ok"), + (e.ClickPayAgain = "click_pay_again"), + (e.ClickReopenPipo = "click_reopen_pipo"), + e + ); + })({}), + l = (function (e) { + return ( + (e.PaySuccess = "pay_success"), + (e.PayFail = "pay_fail"), + (e.PayWaiting = "pay_waiting"), + e + ); + })({}), + c = (function (e) { + return (e.Vip = "vip"), (e.Credits = "credits"), e; + })({}); + class d { + getEventParams() { + var { currentVipLevel: e } = this._vipService, + { + action: t, + status: i, + isVip: n, + sku: a, + orderId: o, + payChannel: s, + source: l, + } = this._params; + return { + action: t, + status: i, + source: l, + is_vip: n ? 1 : 0, + user_subscribe_type: n ? r.TK[e] : 0, + sku: a, + pay_channel: s, + order_id: o, + }; + } + constructor(e, t) { + (this._params = e), + (this._vipService = t), + (this.eventName = "payment_detail_popup"); + } + } + function u(e, t) { + (0, a.Kl)(e, d, [t]); + } + d = (0, n.gn)( + [ + (0, n.fM)(1, o.q), + (0, n.w6)("design:type", Function), + (0, n.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === o.q ? Object : o.q, + ]), + ], + d + ); + }, + 563200: function (e, t, i) { + "use strict"; + i.d(t, { + E: function () { + return f; + }, + N: function () { + return d; + }, + }); + var n = i(789786), + r = i(379311), + a = i(475578), + o = i(217448), + s = i(27433), + l = i(70137), + c = i(484702), + d = (function (e) { + return (e.Show = "show"), (e.Click = "click"), e; + })({}); + class u { + getEventParams() { + var { + action: e, + aiType: t, + aiSubType: i, + scene: n, + benefits: r, + videoDuration: o, + } = this._params, + { credits: l } = (0, s.Qp)({ + scene: n, + extraBenefits: r, + videoDuration: o, + commercialStrategyService: this._commercialStrategyService, + }); + return { + action: e, + credits_now: this._commercialCreditService.localCredit, + credits_need: l, + ai_type: t, + ai_sub_type: i, + is_vip: this._vipService.isVip ? a.eD.True : a.eD.False, + is_time_limited_free: this._commercialStrategyService + .isInFreemiumStage + ? a.eD.True + : a.eD.False, + }; + } + constructor(e, t, i, n) { + (this._params = e), + (this._commercialCreditService = t), + (this._commercialStrategyService = i), + (this._vipService = n), + (this.eventName = "re_generate_credit_hover"); + } + } + function f(e, t) { + (0, r.Kl)(e, u, [t]); + } + u = (0, n.gn)( + [ + (0, n.fM)(1, l.aG), + (0, n.fM)(2, c.N), + (0, n.fM)(3, o.q), + (0, n.w6)("design:type", Function), + (0, n.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === l.aG ? Object : l.aG, + void 0 === c.N ? Object : c.N, + void 0 === o.q ? Object : o.q, + ]), + ], + u + ); + }, + 695001: function (e, t, i) { + "use strict"; + i.d(t, { + fG: function () { + return d; + }, + oF: function () { + return c; + }, + yf: function () { + return f; + }, + }); + var n = i(789786), + r = i(379311), + a = i(839141), + o = i(799108), + s = i(217448), + l = i(603026), + c = (function (e) { + return ( + (e.Show = "show"), + (e.Close = "close"), + (e.CancelSubscribe = "cancel_subscribe"), + (e.ChangeSubscribe = "change_subscribe"), + (e.GetPaymentQRCode = "get_payment_qr_code"), + (e.ClickGetCredits = "click_getcredits"), + (e.Success = "success"), + (e.Failed = "failed"), + e + ); + })({}), + d = (function (e) { + return ( + (e.MultiVipPopupClickSubscribe = "multi_vip_popup_click_subscribe"), + (e.SubscribePlanManagePopupClickCancelAutoRenewal = + "subscribe_plan_manage_popup_click_cancel_auto_renewal"), + e + ); + })({}); + class u { + getEventParams() { + var { action: e, source: t, toProductId: i } = this._params, + { isVip: n, currentVipLevel: r, vipInfo: s } = this._vipService, + { vipPriceList: l } = this._goodsService, + { cycleUnit: c, level: d } = + (null == s ? void 0 : s.currentAutoRenewPlan) || {}, + { + level: u, + cycleUnit: f, + priceType: h, + } = (l || []).find((e) => e.productId === i) || {}; + return { + action: e, + source: t, + membership_type_now: (() => + n ? (d ? o.TK[d] : o.TK[r]) : o.TK[a.d.None])(), + membership_pay_type_now: (() => { + if (!!n) return c ? o.Y[c] : "single_purchase"; + })(), + membership_type_buy: void 0 !== u ? o.TK[u] : void 0, + membership_pay_type_buy: (() => + "auto" === h + ? f + ? o.Y[f] + : void 0 + : "un-auto" === h + ? "single_purchase" + : void 0)(), + }; + } + constructor(e, t, i) { + (this._params = e), + (this._vipService = t), + (this._goodsService = i), + (this.eventName = "subscribe_plan_change_popup"); + } + } + function f(e, t) { + (0, r.Kl)(e, u, [t]); + } + u = (0, n.gn)( + [ + (0, n.fM)(1, s.q), + (0, n.fM)(2, l.K), + (0, n.w6)("design:type", Function), + (0, n.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === s.q ? Object : s.q, + void 0 === l.K ? Object : l.K, + ]), + ], + u + ); + }, + 236242: function (e, t, i) { + "use strict"; + i.d(t, { + Ak: function () { + return l; + }, + KB: function () { + return u; + }, + Z: function () { + return s; + }, + ym: function () { + return c; + }, + }); + var n = i(789786), + r = i(379311), + a = i(799108), + o = i(217448), + s = (function (e) { + return ( + (e.Show = "show"), + (e.ClickTab = "click_tab"), + (e.ClickCancelAutoRenewal = "click_cancel_auto_renewal"), + e + ); + })({}), + l = (function (e) { + return ( + (e.ManagePlans = "manage_plans"), + (e.OrderRecords = "payment_record"), + e + ); + })({}), + c = (function (e) { + return ( + (e.MultiVipPopupTop = "multi_vip_popup_top"), + (e.MultiVipPopupManagePlan = "multi_vip_popup_manage_plan"), + e + ); + })({}); + class d { + getEventParams() { + var { + action: e, + currentTab: t, + clickTab: i, + source: n, + } = this._params, + { isVip: r, currentVipLevel: o } = this._vipService; + return { + action: e, + current_tab: t, + click_tab: i, + is_vip: r ? 1 : 0, + user_subscribe_type: r ? a.TK[o] : 0, + source: n, + }; + } + constructor(e, t) { + (this._params = e), + (this._vipService = t), + (this.eventName = "subscribe_plan_manage_popup"); + } + } + function u(e, t) { + (0, r.Kl)(e, d, [t]); + } + d = (0, n.gn)( + [ + (0, n.fM)(1, o.q), + (0, n.w6)("design:type", Function), + (0, n.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === o.q ? Object : o.q, + ]), + ], + d + ); + }, + 71129: function (e, t, i) { + "use strict"; + i.d(t, { + s: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e.CLICK_TOP_ACCOUNT_BUTTON_JOIN_VIP = + "click_top_account_button_join_vip"), + (e.CLICK_TOP_ACCOUNT_BUBBLE_VIP_END = + "click_top_account_bubble_vip_end"), + (e.CLICK_TOP_ACCOUNT_BUBBLE_RENEW_VIP = + "click_top_account_bubble_renew_vip"), + (e.CLICK_VIP_FUNCTION_3s = "click_vip_function_+3s"), + (e.CLICK_VIP_FUNCTION_DELETE_WATERMARK = + "click_vip_function_delete_watermark"), + (e.CLICK_GENERATE_BUTTON = "click_generate_button"), + (e.CLICK_REGENERATE_BUTTON = "click_regenerate_button"), + (e.CLICK_VIP_END_CREDITS_PAGE = "click_vip_end_credits_page"), + (e.CLICK_RENEW_VIP_CREDITS_PAGE = "click_renew_vip_credits_page"), + (e.CLICK_PROFILE_VIP_BUTTON = "click_profile_vip_button"), + (e.LIP_SYNC = "lip_sync"), + (e.LIP_SYNC_AVATAR_SWITCH = "lip_sync_avatar_switch"), + (e.ACTION_COPY = "action_copy"), + (e.VIDEO_UPSCALE = "video_upscale"), + (e.VIDEO_FRAME_INTERPLATION = "video_frame_interpolation"), + (e.CONTINUE_LAB_UPSCALE_VIDEO = "continue_generate"), + (e.GENERATE_VIDEO_BGM = "ai_music"), + (e.RE_GENERATE_VIDEO_BGM = "ai_music_regenerate"), + (e.RE_DUB = "re_dub"), + (e.STORY_RENEW = "story_renew"), + (e.LIP_SYNC_AVATAR_STD = "lip_sync_avatar_std"), + (e.LIP_SYNC_AVATAR_LIVELY = "lip_sync_avatar_lively"), + (e.VIDEO_AUDIO_EFFECT = "video_audio_effect"), + (e.LIP_SYNC_AVATAR_MASTER = "lip_sync_avatar_master"), + (e.LIP_SYNC_AVATAR_MASTER_FAST = "lip_sync_avatar_master_fast"), + (e.BASIC_VIDEO_OPERATION_VGFM = "basic_video_operation_vgfm"), + (e.BASIC_VIDEO_OPERATION_LAB_14 = "basic_video_operation_lab_14"), + (e.CLICK_TEXT_TO_IMAGE_GENERATE_BUTTON = + "click_text_to_image_generate_button"), + (e.CLICK_CONTROL_NET = "click_controlnet"), + (e.TEXT_GENERATE_PROMPT_EDITOR = "text_generate_prompt_editor"), + (e.TEXT_GENERATE_RETRY_BUTTON = "text_generate_retry_button"), + (e.TEXT_GENERATE_OUTPAINT_BUTTON = "text_generate_outpaint_button"), + (e.TEXT_GENERATE_INPAINT_REPAINT_BUTTON = + "text_generate_inpaint_repaint_button"), + (e.TEXT_GENERATE_INPAINT_ERASER_BUTTON = + "text_generate_inpaint_eraser_button"), + (e.TEXT_GENERATE_MATTING_BUTTON = "text_generate_matting_button"), + (e.TEXT_GENERATE_MAGNIFIC_BUTTON = "text_generate_magnific_button"), + (e.TEXT_GENERATE_IMAGE_IP_KEEP = "text_generate_image_ip_keep"), + (e.TEXT_GENERATE_IMAGE_BYTE_EDIT = "text_generate_image_byte_edit"), + (e.RELAXED_GENERATE_MODE_VIP_GUIDE_ENTRANCE = + "relaxed_generate_mode_vip_guide_entrance"), + (e.CREDIT_LIMIT_POPUP = "credit_limit_popup"), + (e.VIP_EXCLUSIVE_HONER = "vip_exclusive_honer"), + (e.TEXT_GENERATE_FUSION_BUTTON = "TEXT_GENERATE_FUSION_BUTTON"), + (e.CLICK_IMAGE_INSTA_DRAG_GENERATION_BUTTON = + "click_insta_drag_generation_button"), + (e.CLICK_IMAGE_PAINT_EDIT = "click_image_paint_edit"), + (e.CLICK_IMAGE_UHD_BUTTON = "image_uhd"), + (e.CLICK_TEXT_ART_GENERATION_BUTTON = + "click_text_art_generation_button"), + (e.CLICK_TEXT_ART_GENERATION_RETRY_BUTTON = + "click_text_art_generation_retry_button"), + (e.CLICK_VIDEO_BATCH_GENERATE_BUTTON = + "click_video_batch_generate_button"), + (e.CLICK_TEXT_TO_AUDIO_GENERATE_BUTTON = + "click_text_to_audio_generate_button"), + (e.CLICK_TEXT_TO_AUDIO_REGENERATE_BUTTON = + "click_text_to_audio_regenerate_button"), + (e.TOP_ACCOUNT_BUTTON_BUBBLE = "top_account_button_bubble"), + (e.GENERATE_BUTTON_BUBBLE = "generate_button_bubble"), + e + ); + })({}); + }, + 846779: function (e, t, i) { + "use strict"; + i.d(t, { + Rc: function () { + return p; + }, + SM: function () { + return g; + }, + WL: function () { + return v; + }, + bI: function () { + return h; + }, + }); + var n = i(625572), + r = i(639880), + a = i(789786), + o = i(379311), + s = i(799108), + l = i(217448), + c = i(27433), + d = i(870730), + u = i(484702), + f = i(603026), + h = (function (e) { + return (e.Show = "show"), (e.Click = "click"), e; + })({}), + p = (function (e) { + return ( + (e.AddMore = "add_more"), + (e.LipSync = "lip_sync"), + (e.ReDub = "re_dub"), + (e.ImageControlNetCanny = "image_control_net_canny"), + (e.ImageControlNetDepth = "image_control_net_depth"), + (e.ImageControlNetPose = "image_control_net_pose"), + (e.VideoFrameInterpolation = "video_frame_interpolation"), + (e.VideoUpscale = "video_upscale"), + e + ); + })({}), + v = { + [s.hO.ExtendSeconds]: "add_more", + [s.hO.LipSync]: "lip_sync", + [s.hO.ReDub]: "re_dub", + [s.hO.ImageControlNetCanny]: "image_control_net_canny", + [s.hO.ImageControlNetDepth]: "image_control_net_depth", + [s.hO.ImageControlNetPose]: "image_control_net_pose", + }; + class m { + getEventParams() { + var { + action: e, + vipFuncName: t, + needVipLevel: i, + scene: a, + } = this._params, + { isVip: o, currentVipLevel: l } = this._vipService, + { vipPriceList: u } = this._commercialGoodsService, + f = (0, c.c3)(u), + h = { is_freetrial: 0, vip_right_trial_type: d.a.nonTrial }; + if (a) { + var p = (0, c.be)({ + scene: a, + commercialStrategyService: this._commercialStrategyService, + }); + h = { + is_freetrial: Number(p.isStrategyFreeTrial), + vip_right_trial_type: p.trialType, + }; + } + return (0, n._)( + (0, r._)((0, n._)({}, h), { + action: e, + is_vip: o ? 1 : 0, + user_subscribe_type: o ? s.TK[l] : 0, + vip_function_name: t, + vip_right_subscribe_type: s.TK[i] || 0, + }), + (0, c.Rg)(f) + ); + } + constructor(e, t, i, n) { + (this._params = e), + (this._vipService = t), + (this._commercialStrategyService = i), + (this._commercialGoodsService = n), + (this.eventName = "vip_exclusive_honer"); + } + } + function g(e, t) { + (0, o.Kl)(e, m, [t]); + } + m = (0, a.gn)( + [ + (0, a.fM)(1, l.q), + (0, a.fM)(2, u.N), + (0, a.fM)(3, f.K), + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === l.q ? Object : l.q, + void 0 === u.N ? Object : u.N, + void 0 === f.K ? Object : f.K, + ]), + ], + m + ); + }, + 399835: function (e, t, i) { + "use strict"; + i.d(t, { + V: function () { + return p; + }, + }); + var n = i(625572), + r = i(639880), + a = i(789786), + o = i(379311), + s = i(217448), + l = i(799108), + c = i(27433), + d = i(870730), + u = i(70137), + f = i(484702); + class h { + getEventParams() { + var { vipFunctionName: e, action: t, scene: i } = this._params, + { isVip: a, currentVipLevel: o } = this._vipService, + s = i + ? (0, c.Qp)({ + scene: i, + commercialStrategyService: this._commercialStrategyService, + }).credits + : 0, + u = { is_freetrial: 0, vip_right_trial_type: d.a.nonTrial }; + if (i) { + var f = (0, c.be)({ + scene: i, + commercialStrategyService: this._commercialStrategyService, + }); + u = { + is_freetrial: Number(f.isStrategyFreeTrial), + vip_right_trial_type: f.trialType, + }; + } + return (0, r._)((0, n._)({}, u), { + vip_function_name: e, + action: t, + credit_need: s, + credit_now: this._commercialCreditService.localCredit, + is_vip: a ? 1 : 0, + user_subscribe_type: a ? l.TK[o] : 0, + }); + } + constructor(e, t, i, n) { + (this._params = e), + (this._vipService = t), + (this._commercialCreditService = i), + (this._commercialStrategyService = n), + (this.eventName = "vip_function_button"); + } + } + function p(e, t) { + (0, o.Kl)(e, h, [t]); + } + h = (0, a.gn)( + [ + (0, a.fM)(1, s.q), + (0, a.fM)(2, u.aG), + (0, a.fM)(3, f.N), + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === s.q ? Object : s.q, + void 0 === u.aG ? Object : u.aG, + void 0 === f.N ? Object : f.N, + ]), + ], + h + ); + }, + 370549: function (e, t, i) { + "use strict"; + i.d(t, { + A: function () { + return f; + }, + G: function () { + return d; + }, + }); + var n = i(625572), + r = i(789786), + a = i(799108), + o = i(27433), + s = i(839141), + l = i(379311), + c = i(217448), + d = (function (e) { + return (e.Show = "show"), e; + })({}); + class u { + getEventParams() { + var { action: e, toProduct: t, currentTabKey: i } = this._params, + { isVip: r, currentVipLevel: l, vipInfo: c } = this._vipService, + { cycleUnit: d, level: u } = + (null == c ? void 0 : c.currentAutoRenewPlan) || {}, + { productId: f, totalAmount: h, level: p } = t || {}; + return (0, n._)( + { + action: e, + user_subscribe_type: r ? a.TK[l] : 0, + membership_type_buy: void 0 !== p ? a.TK[p] : void 0, + membership_pay_type_buy: i ? a.VG[i] : void 0, + membership_type_now: (() => + r ? (u ? a.TK[u] : a.TK[l]) : a.TK[s.d.None])(), + membership_pay_type_now: (() => { + if (!!r) return d ? a.Y[d] : "single_purchase"; + })(), + goods_id: f, + pay_amount: h, + }, + (0, o.Rg)(t) + ); + } + constructor(e, t) { + (this._params = e), + (this._vipService = t), + (this.eventName = "vip_popup_pay_button_hover"); + } + } + function f(e, t) { + (0, l.Kl)(e, u, [t]); + } + u = (0, r.gn)( + [ + (0, r.fM)(1, c.q), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === c.q ? Object : c.q, + ]), + ], + u + ); + }, + 604201: function (e, t, i) { + "use strict"; + i.d(t, { + K: function () { + return R; + }, + c: function () { + return E; + }, + }); + var n = i(139646), + r = i(625572), + a = i(639880), + o = i(789786), + s = i(379311), + l = i(839141), + c = i(417281), + d = i(243302), + u = i(434712), + f = i(487736), + h = i(799108), + p = i(259273), + v = i(364767), + m = i(561658), + g = i(36159), + _ = i(940140), + y = i(855421), + b = i(388977), + I = i(475578), + w = i(178589), + x = i(27433), + S = i(899229), + M = i(664306), + C = i(870730), + T = i(484702), + A = i(217448), + k = i(259435), + P = i(785106), + E = (function (e) { + return ( + (e.Show = "show"), + (e.AgreeProtocol = "agree_protocol"), + (e.GetQrCode = "get_qr_code"), + (e.FailToGetQrCode = "fail_to_get_qr_code"), + (e.InvalidQrCode = "invalid_qr_code"), + (e.ShowQrCode = "show_qr_code"), + (e.CloseQrCodeModal = "close_qr_code_modal"), + (e.VIPEnd = "vip_end"), + (e.PaySuccess = "pay_success"), + (e.PayFail = "pay_fail"), + (e.ClickTab = "click_tab"), + (e.VIPSelect = "vip_select"), + (e.ClickSubscribe = "click_subscribe"), + (e.ClickGetCredits = "click_get_credits"), + (e.ClickPlansAndBilling = "click_plans_and_billing"), + (e.ClickCurrentPlan = "click_current_plan"), + (e.Close = "close"), + (e.ClickBuy = "click_buy"), + (e.CancelSubscribe = "cancel_subscribe"), + (e.CLICK_PURCHASE = "click_purchase"), + e + ); + })({}); + class D { + get otherReportParams() { + return { + second_page: (0, k.X)( + this._containerService, + f.M.WorkCollectionDetailModal + ) + ? "work_collection_detail" + : void 0, + show_type: this._contentGenerationService.contentRecordListManager + .isGroupView + ? "collect" + : "normal", + }; + } + getEventParams() { + var { + action: e, + source: t, + scene: i, + benefits: n, + payChannel: o, + payAmount: s, + orderId: c, + toProduct: d, + currentTabKey: u, + clickTabKey: f, + payCurrency: p, + sku: v, + sceneOptions: m, + videoDuration: g, + isQuickPreview: _, + isFromPreview: b, + batchNumber: I, + } = this._params, + { isVip: w, currentVipLevel: M, vipInfo: T } = this._vipService, + { cycleUnit: A, level: k } = + (null == T ? void 0 : T.currentAutoRenewPlan) || {}, + { level: P, cycleUnit: E, priceType: D } = d || {}, + R = {}, + N = { is_freetrial: 0, vip_right_trial_type: C.a.nonTrial }; + if (i) + try { + var L = (0, x.be)({ + scene: i, + sceneOptions: m, + commercialStrategyService: this._commercialStrategyService, + }); + N = { + is_freetrial: Number(L.isStrategyFreeTrial), + vip_right_trial_type: L.trialType, + }; + var j = this._getExtraParam(i, n), + O = () => { + if ((null == m ? void 0 : m.version) !== S.dt.V2CharVideo) { + if (m && "mode" in m) return m.mode; + } + }; + R = { + ai_type: j.aiType, + ai_sub_type: j.aiSubType, + vip_function_name: j.vipFunctionName, + vip_function_id: j.vipFunctionId, + model: j.model, + generate_type: j.generateType, + video_mode: O(), + video_duration: g, + }; + } catch (e) { + y.t.error("report `vip_popup` error, cannot get extra param", e); + } + return (0, r._)( + (0, a._)((0, r._)({}, N, this.otherReportParams), { + action: e, + is_vip: w ? 1 : 0, + user_subscribe_type: w ? h.TK[M] : 0, + source: t, + current_tab: u ? h.VG[u] : void 0, + click_tab: f ? h.VG[f] : void 0, + membership_type_now: (() => + w ? (k ? h.TK[k] : h.TK[M]) : h.TK[l.d.None])(), + membership_pay_type_now: (() => { + if (!!w) return A ? h.Y[A] : "single_purchase"; + })(), + membership_type_buy: void 0 !== P ? h.TK[P] : void 0, + membership_pay_type_buy: u ? h.VG[u] : void 0, + pay_currency: p, + order_id: c, + pay_channel: o, + pay_amount: s, + sku: v, + extra: R, + is_quick_preview: Number(null != _ ? _ : 0), + is_from_preview: Number(null != b ? b : 0), + generate_num: I, + }), + (0, x.Rg)(d) + ); + } + _getExtraParam(e) { + var t, + i, + n, + r, + a, + o = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : [], + { sceneOptions: s } = this._params, + l = (0, S.cq)({ scene: e, sceneOptions: s }); + if ((0, M.XA)({ scene: e })) { + var c = this._getGenerateImageParam(); + (t = I.CO.Image), + (i = I.sw.Text2Image), + (r = c.selectModelKey), + (a = this._getImageGenerateType(e, o)); + } else if ((0, M.MJ)({ scene: e })) { + var d = this._getGenerateVideoParamsManager(); + (t = I.CO.Video), + (i = (null == d ? void 0 : d.videoBasicParams.useImage) + ? I.sw.Image2Video + : I.sw.Text2Video); + } else (t = I.CO.Audio), (i = I.sw.GenerateAudio); + return { + aiType: t, + aiSubType: i, + vipFunctionName: n, + vipFunctionId: l, + model: r, + generateType: a, + }; + } + _isStoryEditor() { + return this._getRouteId() === p.Sj.StoryEditor; + } + _isCanvasEditor() { + return this._getRouteId() === p.Sj.ImageEdit; + } + _getRouteId() { + var e, + { routeId: t } = + null !== (e = this._uiService.currentKeepAliveData) && + void 0 !== e + ? e + : {}; + return null != t ? t : p.Sj.Home; + } + _getGenerateImageParam() { + if (this._isStoryEditor()) { + var e = (0, b.ko)( + this._containerService, + g.L + ).getGenerateImageParamsManager(); + return { selectModelKey: null == e ? void 0 : e.selectModelKey }; + } + if (!this._isCanvasEditor()) + return { + selectModelKey: (0, b.ko)(this._containerService, m.N) + .imageParamsManager.selectModelKey, + }; + var t, + i = (0, b.ko)(this._containerService, v.C); + return { + selectModelKey: + this._params.canvasEditorGenerateType === _.xt.HybridToImage + ? c.Ij + : null === (t = i.textToImageManager) || void 0 === t + ? void 0 + : t.selectModelKey, + }; + } + _getGenerateVideoParamsManager() { + return this._isStoryEditor() + ? (0, b.ko)( + this._containerService, + g.L + ).getGenerateVideoParamsManager() + : (0, b.ko)(this._containerService, m.N); + } + _getImageGenerateType(e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : [], + i = [ + h.vJ.ImageControlNetCanny, + h.vJ.ImageControlNetDepth, + h.vJ.ImageControlNetHumanFace, + h.vJ.ImageControlNetObject, + h.vJ.ImageControlNetPose, + h.vJ.ImageControlNetReference, + ]; + switch (e) { + case h.hO.ImageOutPaintButton: + case h.hO.ImageOutPaintTextArea: + return d.pi.OutPaint; + case h.hO.ImageInPaintEraserButton: + case h.hO.ImageInPaintEraserTextArea: + return d.pi.InPaintRemove; + case h.hO.ImageInPaintRepaintButton: + case h.hO.ImageInPaintRepaintTextArea: + return d.pi.InPaint; + case h.hO.ImageMattingButton: + return d.pi.Unknown; + case h.hO.ImageBasicGenerate: + case h.hO.ImagePromptEditor: + return t.some((e) => i.includes(e)) + ? d.pi.Blend + : d.pi.Text2Image; + default: + return d.pi.Text2Image; + } + } + constructor(e, t, i, n, r, a) { + (this._params = e), + (this._vipService = t), + (this._containerService = i), + (this._uiService = n), + (this._commercialStrategyService = r), + (this._contentGenerationService = a), + (this.eventName = "vip_popup"); + } + } + function R(e, t) { + return N.apply(this, arguments); + } + function N() { + return (N = (0, n._)(function* (e, t) { + var i = yield (0, P.M)(e); + (0, s.Kl)(i, D, [t]); + })).apply(this, arguments); + } + D = (0, o.gn)( + [ + (0, o.fM)(1, A.q), + (0, o.fM)(2, u.t), + (0, o.fM)(3, w.e), + (0, o.fM)(4, T.N), + (0, o.fM)(5, m.N), + (0, o.w6)("design:type", Function), + (0, o.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === A.q ? Object : A.q, + void 0 === u.t ? Object : u.t, + void 0 === w.e ? Object : w.e, + void 0 === T.N ? Object : T.N, + void 0 === m.N ? Object : m.N, + ]), + ], + D + ); + }, + 2654: function (e, t, i) { + "use strict"; + i.d(t, { + K: function () { + return r; + }, + L: function () { + return o; + }, + }); + var n = i(379311), + r = (function (e) { + return ( + (e.FromModal = "from_model"), + (e.BeforeMergeZip = "before_merge_zip"), + (e.AfterMergeZip = "after_merge_zip"), + (e.FinalParams = "final_params"), + e + ); + })({}); + class a { + getEventParams() { + return { step: this._params.step, data: this._params.data }; + } + constructor(e) { + (this._params = e), (this.eventName = "blend_params"); + } + } + function o(e, t) { + (0, n.S$)(e, a, [t]); + } + }, + 168511: function (e, t, i) { + "use strict"; + i.d(t, { + N: function () { + return y; + }, + }); + var n = i(625572), + r = i(639880), + a = i(789786), + o = i(379311), + s = i(434712), + l = i(475578), + c = i(474297), + d = i(881607), + u = i(217448), + f = i(27433), + h = i(799108), + p = i(484702), + v = i(70137), + m = i(76931), + g = i(870730); + class _ { + getEventParams() { + var { + generateType: e, + generateParam: t, + reportParam: i, + paintingReportParam: a = {}, + blendReportParam: o = {}, + aiRoleReportParams: s = { aiRoleCount: 0 }, + customSizeReportParam: u = {}, + isRetry: p = !1, + lastRecord: v, + secondPage: _, + scene: y, + benefits: b, + commercialSceneOptions: I, + } = this._params, + { reportParam: w, imageList: x = [] } = null != v ? v : {}, + S = x.map((e) => e.itemId).join(","), + M = x.map((e) => e.requestId).join(","), + { generateId: C = "" } = null != w ? w : {}, + T = (0, r._)((0, n._)({}, i), { requestId: "", generateId: "" }), + { + templateId: A, + generateCount: k, + model: P, + prompt: E, + promptSource: D, + scale: R, + steps: N, + seed: L, + templateSource: j, + page: O, + templatePrompt: B, + impressionId: F, + templateTypeId: U, + resolutionType: G, + isWithinAgent: z, + } = (0, c.JD)(t, T), + V = (0, c.ZA)(i), + W = { + credits_need: 0, + is_freetrial: 0, + vip_right_trial_type: g.a.nonTrial, + }; + if (y) { + var { credits: Z } = (0, f.Qp)({ + scene: y, + extraBenefits: b, + sceneOptions: I, + commercialStrategyService: this._commercialStrategyService, + }), + K = (0, f.be)({ + scene: y, + commercialStrategyService: this._commercialStrategyService, + sceneOptions: I, + }); + W = { + credits_need: Z, + is_freetrial: Number(K.isStrategyFreeTrial), + vip_right_trial_type: K.trialType, + }; + } + return (0, r._)( + (0, n._)( + (0, r._)( + (0, n._)( + (0, r._)( + (0, n._)( + { + generate_type: e, + template_id: A, + generate_cnt: k, + model: P, + is_prompt_empty: E ? l.eD.False : l.eD.True, + prompt: E, + prompt_source: D, + scale: R, + steps: N, + seed: L, + page: O, + template_source: j, + last_request_id: M, + last_generate_id: C, + last_picture_id: S, + impression_id: F, + is_retry: p ? l.eD.True : l.eD.False, + second_page: _, + template_prompt: B, + ai_type: l.CO.Image, + ai_sub_type: l.sw.Text2Image, + is_vip: this._vipService.isVip ? l.eD.True : l.eD.False, + user_subscribe_type: this._vipService.isVip + ? h.TK[this._vipService.currentVipLevel] + : 0, + credits_now: this._commercialCreditService.localCredit, + is_time_limited_free: this._commercialStrategyService + .isInFreemiumStage + ? l.eD.True + : l.eD.False, + }, + (0, d.cu)((0, n._)({}, a)), + (0, d.cu)((0, n._)({}, o)) + ), + { + ai_role_cnt: null == s ? void 0 : s.aiRoleCount, + role_id: null == s ? void 0 : s.roleId, + role_face_intensity: + (null == s ? void 0 : s.roleFaceIntensity) !== void 0 + ? Math.round( + (null == s ? void 0 : s.roleFaceIntensity) * 100 + ) + : void 0, + role_subject_intensity: + (null == s ? void 0 : s.roleSubjectIntensity) !== void 0 + ? Math.round( + (null == s ? void 0 : s.roleSubjectIntensity) * + 100 + ) + : void 0, + } + ), + (0, d.cu)((0, n._)({}, u)) + ), + { + event_page: (0, m.CB)(U, j), + template_from: (0, m.lg)(A, l.px.Image), + template_type_id: U, + definition: G, + } + ), + (0, m.Oj)(this._containerService), + W, + V + ), + { is_within_agent: null != z ? z : 0 } + ); + } + constructor(e, t, i, n, r) { + (this._params = e), + (this._commercialStrategyService = t), + (this._commercialCreditService = i), + (this._vipService = n), + (this._containerService = r), + (this.eventName = "click_generate"); + } + } + function y(e, t) { + (0, o.Kl)(e, _, [t]); + } + _ = (0, a.gn)( + [ + (0, a.fM)(1, p.N), + (0, a.fM)(2, v.aG), + (0, a.fM)(3, u.q), + (0, a.fM)(4, s.t), + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === p.N ? Object : p.N, + void 0 === v.aG ? Object : v.aG, + void 0 === u.q ? Object : u.q, + void 0 === s.t ? Object : s.t, + ]), + ], + _ + ); + }, + 780144: function (e, t, i) { + "use strict"; + i.d(t, { + s: function () { + return o; + }, + }); + var n = i(625572), + r = i(379311); + class a { + getEventParams() { + return (0, n._)({}, this._params); + } + constructor(e) { + (this._params = e), (this.eventName = "click_quotation_mark"); + } + } + function o(e, t) { + (0, r.Kl)(e, a, [t]); + } + }, + 102678: function (e, t, i) { + "use strict"; + i.d(t, { + A: function () { + return o; + }, + _: function () { + return r; + }, + }); + var n = i(379311), + r = (function (e) { + return ( + (e.FrontPage = "front_page"), + (e.TextToImageEdit = "text_to_image_edit"), + e + ); + })({}); + class a { + getEventParams() { + var { action: e, page: t, pictureId: i } = this._params; + return { action: e, page: t, picture_id: i }; + } + constructor(e) { + (this._params = e), (this.eventName = "go_to_canvas"); + } + } + function o(e, t) { + (0, n.Kl)(e, a, [t]); + } + }, + 575088: function (e, t, i) { + "use strict"; + i.d(t, { + D$: function () { + return a; + }, + b_: function () { + return s; + }, + xQ: function () { + return r; + }, + }); + var n = i(379311), + r = (function (e) { + return (e.Ratio = "ratio"), (e.Lock = "lock"), e; + })({}), + a = (function (e) { + return ( + (e.Reference = "reference"), (e.TextToImage = "text_to_image"), e + ); + })({}); + class o { + getEventParams() { + var { + action: e, + item: t, + page: i, + ratioValue: n, + isWithinAgent: r, + } = this._params; + return { + action: e, + item: t, + page: i, + ratio_value: n, + is_within_agent: r, + }; + } + constructor(e) { + (this._params = e), (this.eventName = "picture_ratio"); + } + } + function s(e, t) { + (0, n.Kl)(e, o, [t]); + } + }, + 329870: function (e, t, i) { + "use strict"; + i.d(t, { + cZ: function () { + return a; + }, + io: function () { + return r; + }, + pi: function () { + return s; + }, + }); + var n = i(379311), + r = (function (e) { + return (e.Success = "success"), (e.Failed = "failed"), e; + })({}), + a = (function (e) { + return ( + (e.RateError = "rate error"), + (e.HeightError = "height error"), + (e.WidthError = "width error"), + (e.SizeError = "size error"), + (e.TypeError = "type error"), + (e.Unknown = "unknown error"), + e + ); + })({}); + class o { + getEventParams() { + var { status: e, failReason: t } = this._params; + return { status: e, fail_reason: t }; + } + constructor(e) { + (this._params = e), (this.eventName = "upload_blend_image_check"); + } + } + function s(e, t) { + (0, n.S$)(e, o, [t]); + } + }, + 242566: function (e, t, i) { + "use strict"; + i.d(t, { + G: function () { + return r; + }, + N: function () { + return o; + }, + }); + var n = i(379311), + r = (function (e) { + return (e.Success = "success"), (e.Failed = "failed"), e; + })({}); + class a { + getEventParams() { + var { + status: e, + failReason: t, + failCode: i, + format: n, + size: r, + costTime: a, + useCache: o, + source: s, + } = this._params; + return { + status: e, + fail_reason: t, + fail_code: i, + format: n, + size: r, + cost_time: a, + use_cache: o ? "1" : "0", + source: s, + }; + } + constructor(e) { + (this._params = e), (this.eventName = "upload_blend_imagex"); + } + } + function o(e, t) { + (0, n.S$)(e, a, [t]); + } + }, + 377898: function (e, t, i) { + "use strict"; + i.d(t, { + E: function () { + return c; + }, + }); + var n = i(789786), + r = i(70137), + a = i(799108), + o = i(379311), + s = i(217448); + class l { + getEventParams() { + var { + status: e, + duration: t, + orderId: i, + errMsg: n, + productId: r, + logId: o, + orderType: s, + } = this._params, + { isVip: l, currentVipLevel: c } = this._vipService; + return { + status: e, + duration: t, + order_id: i, + product_id: r, + err_msg: n, + order_type: s, + log_id: o, + is_vip: l ? 1 : 0, + user_subscribe_type: l ? a.TK[c] : 0, + credit_now: this._commercialCreditService.localCredit, + }; + } + constructor(e, t, i) { + (this._params = e), + (this._vipService = t), + (this._commercialCreditService = i), + (this.eventName = "make_order_dev"); + } + } + function c(e, t) { + (0, o.S$)(e, l, [t]); + } + l = (0, n.gn)( + [ + (0, n.fM)(1, s.q), + (0, n.fM)(2, r.aG), + (0, n.w6)("design:type", Function), + (0, n.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === s.q ? Object : s.q, + void 0 === r.aG ? Object : r.aG, + ]), + ], + l + ); + }, + 711800: function (e, t, i) { + "use strict"; + i.d(t, { + o: function () { + return d; + }, + }); + var n = i(789786), + r = i(70137), + a = i(603026), + o = i(799108), + s = i(379311), + l = i(217448); + class c { + getEventParams() { + var e, + { + status: t, + duration: i, + logId: n, + paymentMethod: r, + errMsg: a, + code: s, + orderId: l, + orderType: c, + productId: d, + } = this._params, + { isVip: u, currentVipLevel: f } = this._vipService, + h = this._commercialGoodsService.vipPriceList.find( + (e) => e.productId === d + ); + return { + status: t, + duration: i, + log_id: n, + err_msg: a, + cycle_type: + null !== (e = null == h ? void 0 : h.priceType) && void 0 !== e + ? e + : "un-auto", + code: s, + orderId: l, + orderType: c, + payment_method: r, + is_vip: u ? 1 : 0, + user_subscribe_type: u ? o.TK[f] : 0, + credit_now: this._commercialCreditService.localCredit, + }; + } + constructor(e, t, i, n) { + (this._params = e), + (this._vipService = t), + (this._commercialCreditService = i), + (this._commercialGoodsService = n), + (this.eventName = "order_pay_dev"); + } + } + function d(e, t) { + (0, s.S$)(e, c, [t]); + } + c = (0, n.gn)( + [ + (0, n.fM)(1, l.q), + (0, n.fM)(2, r.aG), + (0, n.fM)(3, a.K), + (0, n.w6)("design:type", Function), + (0, n.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === l.q ? Object : l.q, + void 0 === r.aG ? Object : r.aG, + void 0 === a.K ? Object : a.K, + ]), + ], + c + ); + }, + 331925: function (e, t, i) { + "use strict"; + i.d(t, { + X: function () { + return c; + }, + }); + var n = i(789786), + r = i(70137), + a = i(799108), + o = i(379311), + s = i(217448); + class l { + getEventParams() { + var { + productId: e, + orderId: t, + orderType: i, + confirmStatus: n, + } = this._params, + { isVip: r, currentVipLevel: o } = this._vipService; + return { + status: n, + product_id: e, + order_id: t, + order_type: i, + is_vip: r ? 1 : 0, + user_subscribe_type: r ? a.TK[o] : 0, + credit_now: this._commercialCreditService.localCredit, + }; + } + constructor(e, t, i) { + (this._params = e), + (this._vipService = t), + (this._commercialCreditService = i), + (this.eventName = "pay_benefits_confirm"); + } + } + function c(e, t) { + (0, o.S$)(e, l, [t]); + } + l = (0, n.gn)( + [ + (0, n.fM)(1, s.q), + (0, n.fM)(2, r.aG), + (0, n.w6)("design:type", Function), + (0, n.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === s.q ? Object : s.q, + void 0 === r.aG ? Object : r.aG, + ]), + ], + l + ); + }, + 283919: function (e, t, i) { + "use strict"; + i.d(t, { + h: function () { + return c; + }, + }); + var n = i(789786), + r = i(70137), + a = i(799108), + o = i(379311), + s = i(217448); + class l { + getEventParams() { + var { + status: e, + duration: t, + logId: i, + errMsg: n, + code: r, + orderId: o, + orderType: s, + } = this._params, + { isVip: l, currentVipLevel: c } = this._vipService; + return { + status: e, + duration: t, + log_id: i, + err_msg: n, + code: r, + order_id: o, + order_type: s, + is_vip: l ? 1 : 0, + user_subscribe_type: l ? a.TK[c] : 0, + credit_now: this._commercialCreditService.localCredit, + }; + } + constructor(e, t, i) { + (this._params = e), + (this._vipService = t), + (this._commercialCreditService = i), + (this.eventName = "query_order_dev"); + } + } + function c(e, t) { + (0, o.S$)(e, l, [t]); + } + l = (0, n.gn)( + [ + (0, n.fM)(1, s.q), + (0, n.fM)(2, r.aG), + (0, n.w6)("design:type", Function), + (0, n.w6)("design:paramtypes", [ + "undefined" == typeof IParams ? Object : IParams, + void 0 === s.q ? Object : s.q, + void 0 === r.aG ? Object : r.aG, + ]), + ], + l + ); + }, + 898387: function (e, t, i) { + "use strict"; + i.d(t, { + j: function () { + return a; + }, + }); + var n = i(379311); + class r { + getEventParams() { + var { + status: e, + duration: t, + err_msg: i, + type: n, + filter_type: r, + extra: a, + } = this._params; + return { + status: e, + duration: t, + err_msg: i, + type: n, + filter_type: r, + extra: a, + }; + } + constructor(e) { + (this._params = e), (this.eventName = "record_list_performance"); + } + } + function a(e, t) { + (0, n.S$)(e, r, [t]); + } + }, + 65830: function (e, t, i) { + "use strict"; + i.d(t, { + E: function () { + return s; + }, + gZ: function () { + return a; + }, + wU: function () { + return l; + }, + }); + var n = i(379311), + r = i(475578), + a = (function (e) { + return ( + (e.Face = "face"), + (e.Subject = "subject"), + (e.Canny = "canny"), + (e.Depth = "depth"), + (e.Pose = "pose"), + (e.Style = "style"), + (e.Basic = "basic"), + (e.IpKeep = "ip_keep"), + (e.ByteEdit = "instruct"), + (e.Text2Image = ""), + (e.Image2Image = ""), + (e.StyleCode = ""), + (e.Area = "area"), + e + ); + })({}); + class o { + getEventParams() { + var { + status: e, + failReason: t, + type: i, + importType: n, + generateType: r, + } = this._params; + return { + status: e, + fail_reason: t, + type: i, + import_type: n, + generate_type: r, + }; + } + constructor(e) { + (this._params = e), (this.eventName = "identification_status"); + } + } + function s(e, t) { + (0, n.Kl)(e, o, [t]); + } + function l(e, t, i) { + s(e, { + status: t, + type: "subject", + importType: r.ge.aigcRole, + failReason: i, + }); + } + }, + 186827: function (e, t, i) { + "use strict"; + i.d(t, { + OG: function () { + return d; + }, + Yb: function () { + return l; + }, + ZF: function () { + return s; + }, + bc: function () { + return h; + }, + fB: function () { + return p; + }, + mG: function () { + return c; + }, + rR: function () { + return f; + }, + }); + var n = i(625572), + r = i(639880), + a = i(379311), + o = i(475578), + s = (function (e) { + return ( + (e.Add = "add"), (e.Replace = "replace"), (e.Cancel = "cancel"), e + ); + })({}), + l = (function (e) { + return ( + (e.firstFrame = "first_frame"), (e.lastFrame = "last_frame"), e + ); + })({}), + c = (function (e) { + return (e.Click = "click"), (e.Drag = "drag"), e; + })({}), + d = (function (e) { + return (e.StyleControl = "style_control"), e; + })({}); + class u { + getEventParams() { + var { + status: e, + failReason: t, + type: i, + page: n, + importType: r, + aiVideoImageType: a, + actionType: o, + source: s, + costTime: l, + useCache: c, + } = this._params; + return { + status: e, + fail_reason: t, + type: i, + page: n, + import_type: r, + ai_video_image_type: a, + action_type: o, + source: s, + time_cost: null != l ? l : 0, + use_cache: c ? "1" : "0", + }; + } + constructor(e) { + (this._params = e), (this.eventName = "photo_import_status"); + } + } + function f(e, t) { + (0, a.S$)(e, u, [t]); + } + function h(e, t) { + f( + e, + (0, r._)((0, n._)({}, t), { + page: o.R7.aigcStory, + importType: o.ge.aigcRole, + type: "add", + }) + ); + } + function p(e, t) { + f( + e, + (0, r._)((0, n._)({}, t), { + page: o.R7.actionCopy, + importType: o.ge.actionCopy, + type: "add", + }) + ); + } + }, + 630516: function (e, t, i) { + "use strict"; + i.d(t, { + QV: function () { + return r; + }, + c2: function () { + return s; + }, + cU: function () { + return a; + }, + }); + var n = i(379311), + r = (function (e) { + return (e.Show = "show"), (e.Click = "click"), (e.Hover = "hover"), e; + })({}), + a = (function (e) { + return (e.NoCutout = "no_cutout"), (e.Cutout = "cutout"), e; + })({}); + class o { + getEventParams() { + return { + action: this._params.action, + option: this._params.option, + type: this._params.type, + }; + } + constructor(e) { + (this._params = e), (this.eventName = "reference_cutout_option"); + } + } + function s(e, t) { + (0, n.Kl)(e, o, [t]); + } + }, + 100900: function (e, t, i) { + "use strict"; + i.d(t, { + b: function () { + return o; + }, + u: function () { + return r; + }, + }); + var n = i(379311), + r = (function (e) { + return (e.Show = "show"), (e.Click = "click"), e; + })({}); + class a { + getEventParams() { + var { action: e, type: t, value: i } = this._params, + n = { action: e, type: t }; + return i && (n.value = i), n; + } + constructor(e) { + (this._params = e), (this.eventName = "reference_level_bar"); + } + } + function o(e, t) { + (0, n.Kl)(e, a, [t]); + } + }, + 547850: function (e, t, i) { + "use strict"; + i.d(t, { + Ix: function () { + return r; + }, + rx: function () { + return s; + }, + xh: function () { + return a; + }, + }); + var n = i(379311), + r = (function (e) { + return ( + (e.Show = "show"), (e.Cancel = "cancel"), (e.Confirm = "confirm"), e + ); + })({}), + a = (function (e) { + return ( + (e.PhotoImport = "photo_import"), + (e.Feedback = "feedback"), + (e.Delete = "delete"), + (e.Publish = "publish"), + (e.ChangeScale = "change_scale"), + e + ); + })({}); + class o { + getEventParams() { + return { action: this._params.action, type: this._params.type }; + } + constructor(e) { + (this._params = e), (this.eventName = "reference_popup"); + } + } + function s(e, t) { + (0, n.Kl)(e, o, [t]); + } + }, + 350138: function (e, t, i) { + "use strict"; + i.d(t, { + h: function () { + return r; + }, + x: function () { + return o; + }, + }); + var n = i(379311), + r = (function (e) { + return (e.Thumbnail = "thumbnail"), (e.Frame = "frame"), e; + })({}); + class a { + getEventParams() { + var { position: e } = this._params; + return { position: e }; + } + constructor(e) { + (this._params = e), (this.eventName = "select_face"); + } + } + function o(e, t) { + (0, n.Kl)(e, a, [t]); + } + }, + 539686: function (e, t, i) { + "use strict"; + i.d(t, { + M: function () { + return o; + }, + }); + var n = i(379311), + r = i(526967); + class a { + getEventParams() { + var e = new URLSearchParams(location.search).get(r.KL.isShared); + return { + second_page: this._params.secondPage, + template_id: this._params.templateId, + is_shared: e ? 1 : 0, + }; + } + constructor(e) { + (this._params = e), (this.eventName = "second_page_view"); + } + } + function o(e, t) { + (0, n.Kl)(e, a, [t]); + } + }, + 417442: function (e, t, i) { + "use strict"; + i.d(t, { + Oc: function () { + return h; + }, + TC: function () { + return p; + }, + hg: function () { + return v; + }, + }); + var n = i(625572), + r = i(639880), + a = i(789786), + o = i(379311), + s = i(434712), + l = i(475578), + c = i(259273), + d = i(727279), + u = i(76931); + class f { + getEventParams() { + var e, t; + return (0, n._)( + (0, r._)((0, n._)({}, this._params), { + template_from: (0, u.lg)( + this._params.template_id, + this._params.type + ), + template_type_id: (0, u.pm)( + this._params.template_id, + this._params.type + ), + impression_id: + null !== (t = this._params.impression_id) && void 0 !== t + ? t + : (0, u.ww)( + (null !== (e = this._params.template_id) && void 0 !== e + ? e + : "" + ) + .split(",") + .shift() + ), + }), + (0, u.Oj)(this._containerService) + ); + } + constructor(e, t) { + (this._params = e), + (this._containerService = t), + (this.eventName = "publish_page"); + } + } + function h(e, t) { + (0, o.Kl)(e, f, [t]); + } + function p(e) { + return e === c.Sj.Activity || + new URLSearchParams(location.search).get(d.m.weeklyActivityKey) + ? "activity" + : e === c.Sj.Asset + ? "asset" + : e === c.Sj.ImageEdit + ? "canvas" + : "generation"; + } + function v() { + return { + type: "story", + page: l.WZ.StoryEditor, + channel: "story", + author_type: l.nQ.Creator, + }; + } + f = (0, a.gn)( + [ + (0, a.fM)(1, s.t), + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [ + "undefined" == typeof IPublishPageParams + ? Object + : IPublishPageParams, + void 0 === s.t ? Object : s.t, + ]), + ], + f + ); + }, + 474182: function (e, t, i) { + "use strict"; + i.d(t, { + D8: function () { + return b; + }, + Iz: function () { + return I; + }, + dx: function () { + return _; + }, + zj: function () { + return y; + }, + }); + var n = i(625572), + r = i(639880), + a = i(789786), + o = i(379311), + s = i(417281), + l = i(434712), + c = i(243302), + d = i(100470), + u = i(474297), + f = i(475578), + h = i(76931), + p = i(683973); + function v(e, t) { + var i, + n = e.itemList.find((e) => e.commonAttr.id === t); + return null == n + ? void 0 + : null === (i = n.aigcImageParams.text2imageParams) || void 0 === i + ? void 0 + : i.usePe; + } + function m(e) { + var t, + { imagePromptList: i = [] } = + null !== (t = e.blendImageParams) && void 0 !== t ? t : {}; + return { + templateStyleCode: i + .reduce((e, t) => { + if (t.name === s.UI.StyleCode) { + var i; + return e.concat( + null !== (i = t.commonAsset.assetCode) && void 0 !== i + ? i + : "" + ); + } + return e; + }, []) + .filter(Boolean), + }; + } + class g { + getEventParams() { + var e, t, i, a; + return (0, r._)( + (0, n._)( + (0, r._)((0, n._)({}, this._params), { + template_from: (0, h.lg)( + this._params.template_id, + this._params.type + ), + template_type_id: (0, h.pm)( + this._params.template_id, + this._params.type + ), + impression_id: + null !== (a = this._params.impression_id) && void 0 !== a + ? a + : (0, h.ww)( + (null !== (i = this._params.template_id) && void 0 !== i + ? i + : "" + ) + .split(",") + .shift() + ), + }), + (0, h.Oj)(this._containerService) + ), + { + agent_info: ( + null === (e = this._params) || void 0 === e + ? void 0 + : e.agent_info + ) + ? JSON.stringify( + null === (t = this._params) || void 0 === t + ? void 0 + : t.agent_info + ) + : void 0, + } + ); + } + constructor(e, t) { + (this._params = e), + (this._containerService = t), + (this.eventName = "publish_status"); + } + } + function _(e, t) { + (0, o.Kl)(e, g, [t]); + } + function y(e) { + var t = function (e) { + var t, + i, + a = G.find((t) => t.commonAttr.id === e.itemId); + if (!a) return "continue"; + var { commonAttr: o, aigcImageParams: s, clientTraceData: l } = a, + { + text2imageParams: d, + requestId: h, + firstGenerateType: v, + } = s || {}, + { modelConfig: m } = d || {}, + { + generateId: g, + model: _, + prompt: y, + promptSource: b, + scale: U, + steps: z, + seed: V, + generateCount: W, + templateId: Z, + templateSource: K, + usePe: H, + resolutionType: q, + } = (0, u.JD)( + (0, r._)((0, n._)({}, d), { + model: + null !== (t = null == m ? void 0 : m.modelReqKey) && + void 0 !== t + ? t + : "", + }), + s + ); + q && F.push(q), + I.push(o.id), + w.push(h), + x.push(g), + S.push(_), + M.push(y), + C.push(b), + T.push(U), + A.push(z), + k.push(V), + P.push(W), + E.push(Z), + D.push(K), + R.push(f.eD.True), + N.push(v === c.pi.Blend), + L.push(H ? f.eD.True : f.eD.False), + (null == l ? void 0 : l.impressionId) && j.push(l.impressionId), + O.push((0, p.$S)(a)), + B.push( + null !== (i = null == d ? void 0 : d.scheduleConf) && + void 0 !== i + ? i + : "" + ); + }, + { + records: i, + imageItems: a, + resultCode: o, + collectionId: s, + channel: l, + activity: h, + activityId: v, + title: g, + description: _, + authorType: y, + publishStyleCode: b, + } = e, + I = [], + w = [], + x = [], + S = [], + M = [], + C = [], + T = [], + A = [], + k = [], + P = [], + E = [], + D = [], + R = [], + N = [], + L = [], + j = [], + O = [], + B = [], + F = [], + U = i.reduce((e, t) => { + var { templateStyleCode: i } = m(t); + return e.concat(i); + }, []), + G = i.flatMap((e) => e.itemList); + for (var z of null != a ? a : []) t(z); + var V = o === d.b.ErrSuccess ? f.T9.Success : f.T9.Fail, + W = o ? f.r$[o] : "", + Z = {}; + return ( + G.forEach((e) => { + var t = e.commonAttr.id, + n = i.find((e) => e.itemList.some((e) => e.commonAttr.id === t)); + if (n) { + var r, + a, + o, + s, + l, + c, + d, + u, + f = + null !== + (l = + null === (r = n.reportParam) || void 0 === r + ? void 0 + : r.aigcMode) && void 0 !== l + ? l + : "", + h = + null !== + (c = + null === (a = n.reportParam) || void 0 === a + ? void 0 + : a.imageTags) && void 0 !== c + ? c + : "", + p = + null !== + (d = + null === (o = n.reportParam) || void 0 === o + ? void 0 + : o.replyMessageId) && void 0 !== d + ? d + : "", + v = + null !== + (u = + null === (s = n.reportParam) || void 0 === s + ? void 0 + : s.chatSessionId) && void 0 !== u + ? u + : ""; + Z[t] = { + aigc_mode: f, + image_tags: h, + reply_message_id: p, + chat_session_id: v, + }; + } + }), + { + request_id: w.join(","), + generate_id: x.join(","), + content_id: I.join(","), + is_super_resolution: R.join(","), + model: S.join(","), + prompt: M.join(","), + prompt_source: C.join(","), + scale: T.join(","), + steps: A.join(","), + seed: k.join(","), + template_source: D.join(","), + status: V, + fail_reason: W, + generate_cnt: P.join(","), + template_id: E.join(","), + picture_cnt: i.length, + collection_id: s, + is_reference: N.join(","), + type: "composition", + channel: l, + activity_id: v, + activity: h, + title: g, + description: _, + author_type: y, + use_pre_llm: L.join(","), + impression_id: j.shift(), + ab_tags: O.join(";"), + schedule_conf: B.join(";"), + template_style_code: U.join(","), + publish_style_code: b, + definition: F.join(","), + agent_info: JSON.stringify(Z), + } + ); + } + function b(e) { + var t, + i, + a, + o, + s, + l, + h, + g, + _, + y, + b, + { + record: I, + resultCode: w, + channel: x, + activity: S, + activityId: M, + title: C, + description: T, + authorType: A, + itemId: k, + publishStyleCode: P, + } = e, + { + commonAttr: E, + aigcImageParams: D, + clientTraceData: R, + } = I.itemList[0], + { text2imageParams: N, requestId: L, firstGenerateType: j } = D || {}, + { modelConfig: O } = N || {}, + B = (0, p.$S)(I.itemList[0]), + { templateStyleCode: F } = m(I), + { + generateId: U, + model: G, + prompt: z, + promptSource: V, + scale: W, + steps: Z, + seed: K, + generateCount: H, + templateId: q, + templateSource: J, + resolutionType: Y, + } = (0, u.JD)( + (0, r._)((0, n._)({}, N), { + model: + null !== (h = null == O ? void 0 : O.modelReqKey) && + void 0 !== h + ? h + : "", + }), + D + ), + Q = w === d.b.ErrSuccess ? f.T9.Success : f.T9.Fail, + X = w ? f.r$[w] : "", + $ = v(I, k), + ee = JSON.stringify({ + [k]: { + aigc_mode: + null !== + (g = + null === (t = I.reportParam) || void 0 === t + ? void 0 + : t.aigcMode) && void 0 !== g + ? g + : "", + image_tags: + null !== + (_ = + null === (i = I.reportParam) || void 0 === i + ? void 0 + : i.imageTags) && void 0 !== _ + ? _ + : "", + reply_message_id: + null !== + (y = + null === (a = I.reportParam) || void 0 === a + ? void 0 + : a.replyMessageId) && void 0 !== y + ? y + : "", + chat_session_id: + null !== + (b = + null === (o = I.reportParam) || void 0 === o + ? void 0 + : o.chatSessionId) && void 0 !== b + ? b + : "", + }, + }); + return { + request_id: L, + generate_id: U, + content_id: E.id, + is_super_resolution: "true", + model: G, + prompt: z, + prompt_source: V, + scale: W, + steps: + null == Z + ? void 0 + : null === (s = Z.toString) || void 0 === s + ? void 0 + : s.call(Z), + seed: + null == K + ? void 0 + : null === (l = K.toString) || void 0 === l + ? void 0 + : l.call(K), + template_source: J, + status: Q, + fail_reason: X, + generate_cnt: H, + template_id: q, + picture_cnt: 1, + is_reference: j === c.pi.Blend, + type: "picture", + channel: x, + title: C, + description: T, + activity_id: M, + activity: S, + author_type: A, + use_pre_llm: "".concat($ ? f.eD.True : f.eD.False), + impression_id: null == R ? void 0 : R.impressionId, + ab_tags: null != B ? B : "", + schedule_conf: null == N ? void 0 : N.scheduleConf, + template_style_code: F.join(","), + publish_style_code: P, + definition: Y, + agent_info: ee, + }; + } + function I(e) { + var { + authorType: t, + activityId: i, + activity: n, + resultCode: r, + channel: a, + title: o, + description: s, + draftId: l, + isPublishTemplate: c, + } = e; + return { + content_id: l, + template_source: "canvas", + status: r === d.b.ErrSuccess ? f.T9.Success : f.T9.Fail, + fail_reason: r ? f.r$[r] : "", + type: "canvas", + channel: a, + title: o, + description: s, + activity_id: i, + activity: n, + author_type: t, + is_publish_template: c ? f.eD.True : f.eD.False, + }; + } + g = (0, a.gn)( + [ + (0, a.fM)(1, l.t), + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [ + "undefined" == typeof IPublishStatusParams + ? Object + : IPublishStatusParams, + void 0 === l.t ? Object : l.t, + ]), + ], + g + ); + }, + 288632: function (e, t, i) { + "use strict"; + i.d(t, { + y: function () { + return r; + }, + }); + var n = i(798181); + function r(e) { + var t = e.item, + i = (0, n.vu)(t); + return null == i ? void 0 : i.join(","); + } + }, + 382070: function (e, t, i) { + "use strict"; + i.d(t, { + S: function () { + return o; + }, + f: function () { + return r; + }, + }); + var n = i(379311), + r = (function (e) { + return (e.max4 = "max_4"), (e.oneSubjectOnly = "one_subject_only"), e; + })({}); + class a { + getEventParams() { + var { failToast: e, page: t, importType: i } = this._params; + return { page: t, fail_toast: e, import_type: i }; + } + constructor(e) { + (this._params = e), (this.eventName = "photo_import"); + } + } + function o(e, t) { + (0, n.Kl)(e, a, [t]); + } + }, + 835787: function (e, t, i) { + "use strict"; + i.d(t, { + T: function () { + return o; + }, + f: function () { + return r; + }, + }); + var n = i(379311), + r = (function (e) { + return ( + (e.Show = "show"), + (e.ChangeSetting = "change_setting"), + (e.Replace = "replace"), + (e.Delate = "delete"), + e + ); + })({}); + class a { + getEventParams() { + var { action: e } = this._params; + return { action: e }; + } + constructor(e) { + (this._params = e), + (this.eventName = "reference_prompt_hover_action"); + } + } + function o(e, t) { + (0, n.Kl)(e, a, [t]); + } + }, + 740242: function (e, t, i) { + "use strict"; + i.d(t, { + bY: function () { + return c; + }, + dz: function () { + return l; + }, + k$: function () { + return s; + }, + }); + var n = i(379311); + class r { + getEventParams() { + var { msg: e } = this._params; + return { msg: e }; + } + constructor(e) { + (this._params = e), (this.eventName = "websocket-error"); + } + } + class a { + getEventParams() { + var { taskName: e, taskId: t, submitId: i, reason: n } = this._params; + return { taskName: e, taskId: t, submitId: i, reason: n }; + } + constructor(e) { + (this._params = e), + (this.eventName = "websocket-fallback-to-polling"); + } + } + class o { + getEventParams() { + var { + taskName: e, + taskId: t, + submitId: i, + taskStatus: n, + duration: r, + } = this._params; + return { + taskName: e, + taskId: t, + submitId: i, + taskStatus: n, + duration: r, + }; + } + constructor(e) { + (this._params = e), (this.eventName = "websocket-aigc-done-msg"); + } + } + function s(e, t) { + (0, n.US)(e, r, [t]); + } + function l(e, t) { + (0, n.US)(e, a, [t]); + } + function c(e, t) { + (0, n.US)(e, o, [t]); + } + }, + 923401: function (e, t, i) { + "use strict"; + i.d(t, { + $s: function () { + return c; + }, + tQ: function () { + return d; + }, + }); + var n = i(139646), + r = i(789786), + a = i(969015), + o = i(490165), + s = i(855421), + l = i(417699), + c = (function (e) { + return ( + (e.imageCustomSize = "image_custom_size"), + (e.enableIM = "enable_im"), + (e.imagePostEditEnable = "post_edit_enable"), + (e.draftGen = "draft_gen"), + (e.videoDraftGen = "video_draft_gen"), + (e.enableRuntimePrefetch = "web_runtime_prefetch_enable"), + (e.enableRuntimePrefetchExtraFeed = + "web_runtime_prefetch_extra_feed_enable"), + (e.virtualListRenderStrategy = "virtualListRenderStrategy"), + (e.lipSyncHDModel = "lip_sync_hd_enable"), + (e.deepSeekEntrance = "deepseek_entrance"), + (e.lipSyncHDFastModel = "lip_sync_hd_fast_enable"), + e + ); + })({}); + class d { + get _isOverSea() { + return this._environmentService.isOversea; + } + initAndExposeAbTest() { + this._teaAdapterService.getABTestVar("enable_im", !1).then((e) => { + (this._abGroupResult.enable_im = e), + this._onDidChangeConfiguration.fire({ + changedConfig: { [a.C0.AB_TEST]: { enable_im: e } }, + source: a.C0.AB_TEST, + previousConfig: { [a.C0.AB_TEST]: {} }, + affectedSections: new Set([""]), + }); + }), + this._teaAdapterService.getABTestVar("draft_gen", !1).then((e) => { + (this._abGroupResult.draft_gen = e), + this._onDidChangeConfiguration.fire({ + changedConfig: { [a.C0.AB_TEST]: { draft_gen: e } }, + source: a.C0.AB_TEST, + previousConfig: { [a.C0.AB_TEST]: {} }, + affectedSections: new Set([""]), + }); + }), + this._teaAdapterService + .getABTestVar("video_draft_gen", !1) + .then((e) => { + (this._abGroupResult.video_draft_gen = e), + this._onDidChangeConfiguration.fire({ + changedConfig: { [a.C0.AB_TEST]: { video_draft_gen: e } }, + source: a.C0.AB_TEST, + previousConfig: { [a.C0.AB_TEST]: {} }, + affectedSections: new Set([""]), + }); + }), + this._teaAdapterService + .getABTestVar("deepseek_entrance", !1) + .then((e) => { + (this._abGroupResult.deepseek_entrance = e), + this._onDidChangeConfiguration.fire({ + changedConfig: { [a.C0.AB_TEST]: { deepseek_entrance: e } }, + source: a.C0.AB_TEST, + previousConfig: { [a.C0.AB_TEST]: {} }, + affectedSections: new Set([""]), + }); + }), + [ + "post_edit_enable", + "web_runtime_prefetch_enable", + "web_runtime_prefetch_extra_feed_enable", + "lip_sync_hd_fast_enable", + ].forEach((e) => { + this._teaAdapterService.getABTestVar(e, !1).then((t) => { + this._abGroupResult[e] = t; + }); + }); + } + getBooleanRecommendTestValue() { + if (this._isOverSea) return Promise.resolve(false); + if (this._getLocalDreaminaRecommend()) return Promise.resolve(true); + var e, + t, + i = + null === (e = window) || void 0 === e + ? void 0 + : e._libra_server_abtest, + n = + null == i + ? void 0 + : null === (t = i.dreamina_recommend) || void 0 === t + ? void 0 + : t.all_tab_use_rec; + return void 0 === n + ? Promise.resolve(false) + : (this._setLocalDreaminaRecommend(n), Promise.resolve(!!n)); + } + _getLocalDreaminaRecommend() { + try { + var e, + t, + i = + null !== + (t = + null === (e = this._accountService) || void 0 === e + ? void 0 + : e.userProfile) && void 0 !== t + ? t + : {}; + if ("{}" === JSON.stringify(i)) { + var n = window.localStorage.getItem( + "dreamina_recommend_hit_not_login" + ); + return null !== n && JSON.parse(n); + } + var { webId: r = "" } = null != i ? i : {}; + if (!r) return !1; + var a = window.localStorage.getItem( + "dreamina_recommend_hit_".concat(r) + ); + return s.t.log("userProfile", r, a), null !== a && JSON.parse(a); + } catch (e) { + return !1; + } + } + _setLocalDreaminaRecommend(e) { + try { + var t, + i, + n = + null !== + (i = + null === (t = this._accountService) || void 0 === t + ? void 0 + : t.userProfile) && void 0 !== i + ? i + : {}; + if ("{}" === JSON.stringify(n) && e) { + window.localStorage.setItem( + "dreamina_recommend_hit_not_login", + JSON.stringify(e) + ); + return; + } + var { webId: r = "" } = null != n ? n : {}; + r && + e && + window.localStorage.setItem( + "dreamina_recommend_hit_".concat(r), + JSON.stringify(e) + ); + } catch (e) { + return !1; + } + } + constructor(e, t, i, r) { + var a = this; + (this._teaAdapterService = e), + (this._onDidChangeConfiguration = t), + (this._environmentService = i), + (this._accountService = r), + (this._abGroupResult = {}), + (this.getBooleanAbTestValue = (e, t) => { + var i, + n = + null === (i = window) || void 0 === i + ? void 0 + : i._libra_abtest; + return !!( + (null == n ? void 0 : n[e]) || + this._abGroupResult[e] || + t + ); + }), + (this.getAbTestValue = (function () { + var e = (0, n._)(function* (e, t) { + var i, + n, + r = + null === (n = window) || void 0 === n + ? void 0 + : null === (i = n._libra_abtest) || void 0 === i + ? void 0 + : i[e]; + return void 0 === r + ? yield a._teaAdapterService.getABTestVar(e, t) + : (a._teaAdapterService.getABTestVar(e, t), r || t); + }); + return function (t, i) { + return e.apply(this, arguments); + }; + })()), + (this.getBooleanAbTestValueAsync = (e, t) => { + var i, + n, + r = + null === (n = window) || void 0 === n + ? void 0 + : null === (i = n._libra_server_abtest) || void 0 === i + ? void 0 + : i.dreamina_generate_image; + return (null == r ? void 0 : r[e]) === void 0 + ? this._teaAdapterService.getABTestVar(e, !!t) + : (this._teaAdapterService.getABTestVar(e, !!t), + Promise.resolve( + !!( + (null == r ? void 0 : r[e]) || + this._abGroupResult[e] || + t + ) + )); + }); + } + } + d = (0, r.gn)( + [ + (0, r.fM)(2, l.e), + (0, r.fM)(3, o.D), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + "undefined" == typeof ITeaAdapterService + ? Object + : ITeaAdapterService, + "undefined" == typeof Emitter ? Object : Emitter, + void 0 === l.e ? Object : l.e, + void 0 === o.D ? Object : o.D, + ]), + ], + d + ); + }, + 19658: function (e, t, i) { + "use strict"; + i.d(t, { + S: function () { + return a; + }, + }); + var n = i(333597), + r = i(969015), + a = (0, n.LO)(r.Ui); + }, + 760021: function (e, t, i) { + "use strict"; + i.d(t, { + G: function () { + return u; + }, + q: function () { + return f; + }, + }); + var n = i(139646), + r = i(789786), + a = i(513294), + o = i(243090), + s = i(861312), + l = i(576261), + c = i(712942), + d = i(573293), + u = (function (e) { + return (e.dreaminaOmniVip = "dreamina_omni_vip"), e; + })({}); + class f { + get onDidChangeConfiguration() { + return this._onDidChangeConfiguration.event; + } + initAndExposeAbTest() { + var e = this; + return (0, n._)(function* () { + yield e._checkAbReady(); + })(); + } + getAbTestValue(e, t) { + var i = this; + return (0, n._)(function* () { + var n; + return ( + yield i._checkAbReady(), + Promise.resolve( + null !== (n = i._experimentParamsResult[e]) && void 0 !== n + ? n + : t + ) + ); + })(); + } + getBooleanAbTestValue(e, t) { + var i, n; + return ( + null !== + (n = + null !== (i = this._experimentParamsResult[e]) && void 0 !== i + ? i + : t) && + void 0 !== n && + n + ); + } + _fetchAbTestConfig() { + var e = this; + return (0, n._)(function* () { + var t, + i = yield e._experimentService.getExperimentParams({ + keys: ["dreamina_omni_vip"], + aid: Number((0, c.Iv)()), + }); + i.ok && + ((e._experimentParamsResult.dreamina_omni_vip = + null === + (t = (0, o.D)(i.value.params.dreamina_omni_vip || "{}")) || + void 0 === t + ? void 0 + : t.enable), + e._onDidChangeConfiguration.fire(e._experimentParamsResult)); + })(); + } + _checkAbReady() { + var e = this; + return (0, n._)(function* () { + yield e._abMutex.lock(); + try { + if (e._abReady) return; + yield (0, l.Hp)(() => e._fetchAbTestConfig(), 3e3), + (e._abReady = !0); + } finally { + e._abMutex.unLock(); + } + })(); + } + constructor(e) { + (this._experimentService = e), + (this._experimentParamsResult = {}), + (this._onDidChangeConfiguration = new a.Q()), + (this._abReady = !1), + (this._abMutex = new s.L()); + } + } + f = (0, r.gn)( + [ + (0, r.fM)(0, d.S), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [void 0 === d.S ? Object : d.S]), + ], + f + ); + }, + 917730: function (e, t, i) { + "use strict"; + i.d(t, { + Dh: function () { + return n; + }, + Hx: function () { + return a; + }, + KT: function () { + return r; + }, + }); + var n = (function (e) { + return ( + (e.Pending = "pending"), + (e.InProgress = "in_progress"), + (e.InEvaluation = "in_evaluation"), + (e.Awarded = "awarded"), + e + ); + })({}), + r = (function (e) { + return ( + (e.Video = "video"), + (e.Image = "image"), + (e.ShortVideo = "short_video"), + (e.External = "external"), + e + ); + })({}), + a = (function (e) { + return (e.POINT = "point"), (e.OTHER = "other"), e; + })({}); + }, + 980598: function (e, t, i) { + "use strict"; + i.d(t, { + u: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("mWeb-activity-service"); + }, + 104818: function (e, t, i) { + "use strict"; + i.d(t, { + P: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("get-content-generation-history-service"); + }, + 455392: function (e, t, i) { + "use strict"; + i.d(t, { + B: function () { + return a; + }, + D: function () { + return r; + }, + }); + var n = i(172834); + function r(e) { + var t = new n.DABlendPromptPlaceHolderInfo(); + return (t.abilityIndex = e.abilityIndex), t; + } + function a(e) { + var t; + return { + abilityIndex: null !== (t = e.abilityIndex) && void 0 !== t ? t : 0, + }; + } + }, + 376564: function (e, t, i) { + "use strict"; + i.d(t, { + J: function () { + return o; + }, + a: function () { + return a; + }, + }); + var n = i(172834), + r = i(716467); + function a(e) { + var t = new n.DACommonAssetResource(); + return ( + (t.assetType = r.d6[e.assetType]), (t.assetCode = e.assetCode), t + ); + } + function o(e, t) { + var i, + n, + a = + null == t + ? void 0 + : null === (n = t.find((t) => t.key === e.assetCode)) || + void 0 === n + ? void 0 + : null === (i = n.assetInfo) || void 0 === i + ? void 0 + : i.referImageList; + return { + assetType: r.H[e.assetType], + assetCode: e.assetCode, + referImageList: a, + }; + } + }, + 23290: function (e, t, i) { + "use strict"; + i.d(t, { + F: function () { + return a; + }, + _: function () { + return r; + }, + }); + var n = i(172834); + function r(e) { + var t = new n.DAImageControlNet(); + return ( + (t.name = e.name), + (t.strength = e.strength), + (t.imageIndex = e.imageIndex), + (t.maskIndex = e.maskIndex), + t + ); + } + function a(e) { + var t; + if (!!e.name) + return { + name: e.name, + strength: e.strength, + imageIndex: null !== (t = e.imageIndex) && void 0 !== t ? t : 0, + maskIndex: e.maskIndex, + }; + } + }, + 954681: function (e, t, i) { + "use strict"; + i.d(t, { + X: function () { + return r; + }, + b: function () { + return a; + }, + }); + var n = i(172834); + function r(e) { + var t = new n.DAImageFaceRecognize(); + return ( + (t.keypoint = null == e ? void 0 : e.keypoint), + (t.faceRect = null == e ? void 0 : e.faceRect), + (t.isSelected = null == e ? void 0 : e.isSelected), + t + ); + } + function a(e) { + var t, i; + return { + keypoint: + null !== (t = null == e ? void 0 : e.keypoint) && void 0 !== t + ? t + : [], + faceRect: + null !== (i = null == e ? void 0 : e.faceRect) && void 0 !== i + ? i + : [], + isSelected: !!(null == e ? void 0 : e.isSelected), + }; + } + }, + 51520: function (e, t, i) { + "use strict"; + i.d(t, { + J: function () { + return a; + }, + V: function () { + return r; + }, + }); + var n = i(172834); + function r(e) { + var t = new n.DAImageIpKeep(); + return ( + (t.description = e.description), + (t.refIdWeight = e.refIdWeight), + (t.refIpWeight = e.refIpWeight), + (t.characterId = e.characterId), + (t.characterName = e.characterName), + t + ); + } + function a(e) { + var t, i, n, r, a; + return { + description: null !== (t = e.description) && void 0 !== t ? t : "", + refIdWeight: null !== (i = e.refIdWeight) && void 0 !== i ? i : 0, + refIpWeight: null !== (n = e.refIpWeight) && void 0 !== n ? n : 0, + characterId: String( + null !== (r = e.characterId) && void 0 !== r ? r : "0" + ), + characterName: + null !== (a = e.characterName) && void 0 !== a ? a : "", + }; + } + }, + 191414: function (e, t, i) { + "use strict"; + i.d(t, { + _: function () { + return o; + }, + t: function () { + return s; + }, + }); + var n = i(60684), + r = i(172834), + a = i(716467); + function o(e) { + var t = new r.DAImageStyleReference(); + return ( + (t.styleWeight = e.styleWeight), + (t.styleItemId = e.styleItemId), + (t.styleTitle = e.styleTitle), + (t.styleTitleStarlingKey = e.styleTitleStarlingKey), + (t.styleType = e.styleType && a.ed[e.styleType]), + (t.image = (0, n.m)(e.image)), + t + ); + } + function s(e, t) { + var i, r; + return { + styleWeight: null !== (i = e.styleWeight) && void 0 !== i ? i : 0, + styleItemId: e.styleItemId, + styleTitle: e.styleTitle, + styleTitleStarlingKey: e.styleTitleStarlingKey, + styleType: e.styleType && a.BH[e.styleType], + image: null !== (r = (0, n.F)(e.image, t)) && void 0 !== r ? r : {}, + }; + } + }, + 716467: function (e, t, i) { + "use strict"; + i.d(t, { + MD: () => g, + ed: () => _, + $P: () => A, + H: () => T, + db: () => I, + BH: () => y, + sc: () => v, + Zv: () => M, + $p: () => m, + uC: () => x, + d6: () => C, + CB: () => b, + nA: () => S, + Di: () => w, + }); + var n = i("339128"), + r = i("127364"), + a = (function (e) { + return ( + (e.BgPaint = "bg_paint"), + (e.Face = "face"), + (e.Ip = "ip"), + (e.StyleReference = "style_reference"), + (e.Canny = "canny"), + (e.Depth = "depth"), + (e.Pose = "pose"), + e + ); + })({}), + o = i("128468"), + s = i("243302"), + l = i("955625"), + c = i("100470"), + d = i("417281"), + u = i("749314"), + f = i("224671"), + h = i("552607"), + p = i("172834"); + r.e.AIGCModeWorkbench, + o.JU.Workbench, + r.e.AIGCModeAIGCDraft, + o.JU.AIGCDraft, + r.e.AIGCModeCanvas, + o.JU.Canvas, + r.e.AIGCModeCharacter, + o.JU.Character, + r.e.AIGCModeStory, + o.JU.Story; + var v = { + [o.JU.Workbench]: p.DAAIGCMode.workbench, + [o.JU.Canvas]: p.DAAIGCMode.canvas, + [o.JU.Character]: p.DAAIGCMode.character, + [o.JU.Story]: p.DAAIGCMode.story, + [o.JU.AIGCDraft]: p.DAAIGCMode.aigcDraft, + [o.JU.PostEditor]: p.DAAIGCMode.postEditor, + [o.JU.CreationAgent]: p.DAAIGCMode.creationAgent, + }, + m = { + [p.DAAIGCMode.none]: o.JU.Workbench, + [p.DAAIGCMode.workbench]: o.JU.Workbench, + [p.DAAIGCMode.canvas]: o.JU.Canvas, + [p.DAAIGCMode.character]: o.JU.Character, + [p.DAAIGCMode.story]: o.JU.Story, + [p.DAAIGCMode.aigcDraft]: o.JU.AIGCDraft, + [p.DAAIGCMode.postEditor]: o.JU.PostEditor, + [p.DAAIGCMode.creationAgent]: o.JU.CreationAgent, + }; + n.tF.Init, + s.Pd.Init, + n.tF.Fail, + s.Pd.PreTnsCheckNotPass, + n.tF.Generating, + s.Pd.SubmitOk, + n.tF.Success, + s.Pd.FinalSuccess, + n.tF.CanRetry, + s.Pd.FinalGenerateFail; + var g = { + [l.l.OutputImageRisk]: c.b.ErrPreImgRiskNotPass, + [l.l.InputTextRisk]: c.b.ErrPreTextRiskNotPass, + [l.l.InputTextIpBlock]: c.b.ErrPreTextIPBlockList, + [l.l.GenerateFail]: c.b.ErrGenerate, + [l.l.RateLimit1]: c.b.ErrRateLimit, + [l.l.UnsupportedByBeta]: c.b.ErrUnsupportedByBeta, + [l.l.ErrParam]: c.b.ErrParam, + [l.l.ErrPostImgRiskNotPass]: c.b.ErrPostImgRiskNotPass, + [l.l.ErrDownloadImage]: c.b.ErrDownloadImage, + [l.l.ErrSuccess]: c.b.ErrSuccess, + [l.l.ErrAssetsCodeNotExist]: c.b.ErrAssetsCodeNotExist, + [l.l.ErrAssetsStatusInvalid]: c.b.ErrAssetsStatusInvalid, + [l.l.ErrRateLimitForNonCommercialRegion]: + c.b.ErrRateLimitForNonCommercialRegion, + }; + c.b.ErrPreImgRiskNotPass, + l.l.OutputImageRisk, + c.b.ErrPreTextRiskNotPass, + l.l.InputTextRisk, + c.b.ErrPreTextIPBlockList, + l.l.InputTextIpBlock, + c.b.ErrGenerate, + l.l.GenerateFail, + c.b.ErrRateLimit, + l.l.RateLimit1, + c.b.ErrUnsupportedByBeta, + l.l.UnsupportedByBeta, + c.b.ErrParam, + l.l.ErrParam, + c.b.ErrDownloadImage, + l.l.ErrDownloadImage, + c.b.ErrSuccess, + l.l.ErrSuccess, + c.b.ErrPostImgRiskNotPass, + l.l.ErrPostImgRiskNotPass, + d.kR.ControlNetPose, + a.Pose, + d.kR.ControlNetDepth, + a.Depth, + d.kR.ControlNetCanny, + a.Canny, + d.kR.ControlNetBgPaint, + a.BgPaint; + var _ = { + [u.l.Preset]: p.DAImageStyleStyleType.Default, + [u.l.Custom]: p.DAImageStyleStyleType.Customize, + }, + y = { + [p.DAImageStyleStyleType.Default]: u.l.Preset, + [p.DAImageStyleStyleType.Customize]: u.l.Custom, + }, + b = { + [f.jP.OneOne]: p.DAImageRatioType.ImageRatioType_11, + [f.jP.ThreeFour]: p.DAImageRatioType.ImageRatioType_34, + [f.jP.FourThree]: p.DAImageRatioType.ImageRatioType_43, + [f.jP.NineSixteen]: p.DAImageRatioType.ImageRatioType_916, + [f.jP.SixteenNine]: p.DAImageRatioType.ImageRatioType_169, + [f.jP.TwoThree]: p.DAImageRatioType.ImageRatioType_23, + [f.jP.ThreeTwo]: p.DAImageRatioType.ImageRatioType_32, + [f.jP.TwentyOneNine]: p.DAImageRatioType.ImageRatioType_219, + }, + I = { + [p.DAImageRatioType.ImageRatioType_11]: f.jP.OneOne, + [p.DAImageRatioType.ImageRatioType_34]: f.jP.ThreeFour, + [p.DAImageRatioType.ImageRatioType_43]: f.jP.FourThree, + [p.DAImageRatioType.ImageRatioType_916]: f.jP.NineSixteen, + [p.DAImageRatioType.ImageRatioType_169]: f.jP.SixteenNine, + [p.DAImageRatioType.ImageRatioType_23]: f.jP.TwoThree, + [p.DAImageRatioType.ImageRatioType_32]: f.jP.ThreeTwo, + [p.DAImageRatioType.ImageRatioType_219]: f.jP.TwentyOneNine, + }, + w = { + [d.UI.FaceGan]: p.DABlendAbilityName.FaceGan, + [d.UI.BgPaint]: p.DABlendAbilityName.BgPaint, + [d.UI.Image2image]: p.DABlendAbilityName.I2I, + [d.UI.ControlNet]: p.DABlendAbilityName.ControlNet, + [d.UI.StyleReference]: p.DABlendAbilityName.StyleReference, + [d.UI.IpKeep]: p.DABlendAbilityName.IpKeep, + [d.UI.Unknown]: p.DABlendAbilityName.Unknown, + [d.UI.Text2image]: p.DABlendAbilityName.T2I, + [d.UI.ByteEdit]: p.DABlendAbilityName.ByteEdit, + [d.UI.StyleCode]: p.DABlendAbilityName.StyleCode, + }, + x = { + [p.DABlendAbilityName.FaceGan]: d.UI.FaceGan, + [p.DABlendAbilityName.BgPaint]: d.UI.BgPaint, + [p.DABlendAbilityName.I2I]: d.UI.Image2image, + [p.DABlendAbilityName.ControlNet]: d.UI.ControlNet, + [p.DABlendAbilityName.StyleReference]: d.UI.StyleReference, + [p.DABlendAbilityName.IpKeep]: d.UI.IpKeep, + [p.DABlendAbilityName.Unknown]: d.UI.Unknown, + [p.DABlendAbilityName.T2I]: d.UI.Text2image, + [p.DABlendAbilityName.ByteEdit]: d.UI.ByteEdit, + [p.DABlendAbilityName.StyleCode]: d.UI.StyleCode, + }, + S = { + [s.pi.Unknown]: p.DAAIGCGenerateType.none, + [s.pi.Text2Image]: p.DAAIGCGenerateType.text2image, + [s.pi.SuperResolution]: p.DAAIGCGenerateType.superResolution, + [s.pi.FineTunePromptWithText2Image]: + p.DAAIGCGenerateType.fineTunePromptWithText2Image, + [s.pi.FineTunePromptWithSuperResolution]: + p.DAAIGCGenerateType.fineTunePromptWithSuperResolution, + [s.pi.Text2CreativeText]: p.DAAIGCGenerateType.text2CreativeTxet, + [s.pi.SpecialEffect]: p.DAAIGCGenerateType.specialEffect, + [s.pi.InPaint]: p.DAAIGCGenerateType.inPainting, + [s.pi.OutPaint]: p.DAAIGCGenerateType.outPainting, + [s.pi.InPaintRemove]: p.DAAIGCGenerateType.inPaintingRemove, + [s.pi.Text2Video]: p.DAAIGCGenerateType.text2Video, + [s.pi.Blend]: p.DAAIGCGenerateType.blend, + [s.pi.SuperDefinition]: p.DAAIGCGenerateType.normalHD, + [s.pi.Matting]: p.DAAIGCGenerateType.imageCut, + [s.pi.Fusion]: p.DAAIGCGenerateType.imageFusion, + [s.pi.VideoBGM]: p.DAAIGCGenerateType.videoBGM, + [s.pi.AudioVideoMix]: p.DAAIGCGenerateType.audioVideoMix, + [s.pi.InstaDrag]: p.DAAIGCGenerateType.instaDrag, + [s.pi.Image2Avatar]: p.DAAIGCGenerateType.image2Avatar, + [s.pi.Video2Avatar]: p.DAAIGCGenerateType.video2Avatar, + [s.pi.Text2Song]: p.DAAIGCGenerateType.text2Song, + [s.pi.Text2Instrumental]: p.DAAIGCGenerateType.text2Instrumental, + [s.pi.LipSync]: p.DAAIGCGenerateType.lipSync, + [s.pi.InPaintAndOutPaint]: + p.DAAIGCGenerateType.inPaintingAndOutPainting, + [s.pi.ByteEditPainting]: p.DAAIGCGenerateType.byteEditPainting, + [s.pi.VideoTemplate]: p.DAAIGCGenerateType.videoTemplate, + [s.pi.AIEffectWorkImage]: p.DAAIGCGenerateType.aIEffectWorkImage, + [s.pi.AIEffectWorkVideo]: p.DAAIGCGenerateType.aIEffectWorkVideo, + [s.pi.VideoAudioEffect]: p.DAAIGCGenerateType.none, + [s.pi.VideoAudioEffectMix]: p.DAAIGCGenerateType.none, + }, + M = { + [p.DAAIGCGenerateType.none]: s.pi.Unknown, + [p.DAAIGCGenerateType.text2image]: s.pi.Text2Image, + [p.DAAIGCGenerateType.superResolution]: s.pi.SuperResolution, + [p.DAAIGCGenerateType.fineTunePromptWithText2Image]: + s.pi.FineTunePromptWithText2Image, + [p.DAAIGCGenerateType.fineTunePromptWithSuperResolution]: + s.pi.FineTunePromptWithSuperResolution, + [p.DAAIGCGenerateType.text2CreativeTxet]: s.pi.Text2CreativeText, + [p.DAAIGCGenerateType.specialEffect]: s.pi.SpecialEffect, + [p.DAAIGCGenerateType.inPainting]: s.pi.InPaint, + [p.DAAIGCGenerateType.outPainting]: s.pi.OutPaint, + [p.DAAIGCGenerateType.inPaintingRemove]: s.pi.InPaintRemove, + [p.DAAIGCGenerateType.text2Video]: s.pi.Text2Video, + [p.DAAIGCGenerateType.blend]: s.pi.Blend, + [p.DAAIGCGenerateType.normalHD]: s.pi.SuperDefinition, + [p.DAAIGCGenerateType.imageCut]: s.pi.Matting, + [p.DAAIGCGenerateType.imageFusion]: s.pi.Fusion, + [p.DAAIGCGenerateType.videoBGM]: s.pi.VideoBGM, + [p.DAAIGCGenerateType.audioVideoMix]: s.pi.AudioVideoMix, + [p.DAAIGCGenerateType.instaDrag]: s.pi.InstaDrag, + [p.DAAIGCGenerateType.image2Avatar]: s.pi.Image2Avatar, + [p.DAAIGCGenerateType.video2Avatar]: s.pi.Video2Avatar, + [p.DAAIGCGenerateType.text2Song]: s.pi.Text2Song, + [p.DAAIGCGenerateType.text2Instrumental]: s.pi.Text2Instrumental, + [p.DAAIGCGenerateType.lipSync]: s.pi.LipSync, + [p.DAAIGCGenerateType.inPaintingAndOutPainting]: + s.pi.InPaintAndOutPaint, + [p.DAAIGCGenerateType.byteEditPainting]: s.pi.ByteEditPainting, + [p.DAAIGCGenerateType.videoTemplate]: s.pi.VideoTemplate, + [p.DAAIGCGenerateType.aIEffectWorkImage]: s.pi.AIEffectWorkImage, + [p.DAAIGCGenerateType.aIEffectWorkVideo]: s.pi.AIEffectWorkVideo, + [p.DAAIGCGenerateType.videoAudioEffect]: s.pi.VideoAudioEffect, + }, + C = { [o.d_.Style]: p.DACommonAssetType.Style }, + T = { [p.DACommonAssetType.Style]: o.d_.Style }; + function A(e) { + if (!e) return; + var t = new p.DADraft({ JSONString: e }), + i = new p.DADraft(), + n = t.componentList.findIndex((e) => (0, h.r4)(e)), + r = t.componentList.slice(0, n); + if (0 !== r.length) { + var a = r.pop(); + return ( + (i.componentList = r), a && i.setMainComponent(a), i.toJSONString() + ); + } + } + }, + 645968: function (e, t, i) { + "use strict"; + i.d(t, { d: () => R, n: () => N }); + var n = i("789786"), + r = i("333597"), + a = i("139646"), + o = i("625572"), + s = i("639880"), + l = i("586315"), + c = i("538337"), + d = i("940140"), + u = { + getFeedList: { hostNameType: d.b_.Default, url: "/mweb/v1/feed" }, + geExplorList: { + hostNameType: d.b_.Default, + url: "/mweb/v1/get_explore", + }, + getFeedPanel: { + hostNameType: d.b_.Default, + url: "/mweb/v1/get_panel_info", + }, + }, + f = i("643590"), + h = i("416105"), + p = i("804274"), + v = i("875649"), + m = i("879976"); + function g(e) { + var t = new f.y().build({ + headers: (0, o._)({ "Content-Type": "application/json" }, e), + withCredentials: !0, + }); + return (0, m.V)(t), (0, h.mH)(t), (0, p.xP)(t), (0, v.e_)(t), t; + } + var _ = i("820266"), + y = i("280166"), + b = i("712942"), + I = i("242089"), + w = i("100470"), + x = i("104974"), + S = i("757330"), + M = i("423719"), + C = i("793723"), + T = i("389657"), + A = i("265587"); + function k(e) { + return P.apply(this, arguments); + } + function P() { + return (P = (0, a._)(function* (e) { + var t = (0, _.b)(e, p.D1), + i = e.__cacheSyncToken, + n = e.__logId; + if (i && n && t.item_list) { + var r = yield T.Li.decryptIV(i, n); + yield (0, M.sh)(T.Li.decrypt.bind(T.Li), t.item_list, r); + } + var a = yield T.sn.getSignOptions(); + if (((0, C.$U)(T.sn.sign.bind(T.sn), t.item_list, a), t.item_list)) + for (var o = 0; o < t.item_list.length; o++) + t.item_list[o].video && + (t.item_list[o] = (0, A.Q)( + t.item_list[o], + t.item_list[o].video.origin_video + )), + (t.item_list[o].request_id = t.request_id), + (t.item_list[o].impression_id = t.request_id); + return (0, _.b)(t, p.zW, !1); + })).apply(this, arguments); + } + class E { + getFeedList(e) { + var t = this; + return (0, a._)(function* () { + try { + var i = "".concat((0, b.H4)()).concat(u.getFeedList.url), + n = "".concat(i, "_").concat((0, c.SZ)(e)), + r = yield (0, I.O)(n, () => + t._networkClient.post( + i, + { + category_id: e.categoryId, + count: e.count, + image_info: e.imageInfo, + offset: e.offset, + pack_item_opt: { need_data_integrity: !0 }, + }, + { params: { aid: t._environmentService.appId } } + ) + ), + a = yield t._formateRes(r); + return (0, l.oW)((0, S.s)(a)); + } catch (e) { + var { ret: o, errmsg: s } = e || {}, + d = o ? Number(o) : w.b.ErrCommon; + return (0, l.wf)(d, null != s ? s : "unknown error"); + } + })(); + } + getFeedListForRecommend(e) { + var t = this; + return (0, a._)(function* () { + try { + var i = "".concat((0, b.H4)()).concat(u.geExplorList.url), + n = "".concat(i, "_").concat((0, c.SZ)(e)), + r = yield (0, I.O)(n, () => + t._networkClient.post( + i, + (0, _.X)( + (0, s._)((0, o._)({}, e), { + packItemOpt: { needDataIntegrity: !0 }, + }) + ), + { + params: { + aigc_flow_version: x.currentDreaminaAgreementVersion, + }, + } + ) + ), + a = yield t._formateRes(r); + return (0, l.oW)((0, S.s)(a)); + } catch (e) { + var { ret: d, errmsg: f } = e || {}, + h = d ? Number(d) : w.b.ErrCommon; + return (0, l.wf)(h, null != f ? f : "unknown error"); + } + })(); + } + getFeedPanel(e) { + var t = this; + return (0, a._)(function* () { + try { + var i = "".concat((0, b.H4)()).concat(u.getFeedPanel.url), + n = yield (0, I.O)(i, () => + t._networkClient.post( + "".concat((0, b.H4)()).concat(u.getFeedPanel.url), + (0, o._)({}, e) + ) + ); + return (0, l.oW)(n); + } catch (e) { + var { ret: r, errmsg: a } = e || {}, + s = r ? Number(r) : w.b.ErrCommon; + return (0, l.wf)(s, null != a ? a : "unknown error"); + } + })(); + } + _formateRes(e) { + return k(e); + } + constructor(e) { + (this._environmentService = e), + (this._networkClient = g({ ch: "online" })); + } + } + E = (0, n.gn)( + [ + (0, n.fM)(0, y.Y), + (0, n.w6)("design:type", Function), + (0, n.w6)("design:paramtypes", [void 0 === y.Y ? Object : y.Y]), + ], + E + ); + var D = i("434712"), + R = (0, r.yh)("mWeb-feed-service"); + class N { + get feedRepository() { + return this._feedRepository; + } + constructor(e) { + (this._containerService = e), + (this._feedRepository = this._containerService.createInstance(E)); + } + } + N = (0, n.gn)( + [ + (0, n.fM)(0, D.t), + (0, n.w6)("design:type", Function), + (0, n.w6)("design:paramtypes", [void 0 === D.t ? Object : D.t]), + ], + N + ); + }, + 757330: function (e, t, i) { + "use strict"; + i.d(t, { + s: function () { + return o; + }, + }); + var n = i(625572), + r = i(639880), + a = i(247465); + function o(e) { + var t = e.itemList.map((e) => (0, a.q)(e)); + return (0, r._)((0, n._)({}, e), { itemList: t }); + } + }, + 247465: function (e, t, i) { + "use strict"; + i.d(t, { q: () => x }); + var n = i("433965"), + r = i("625572"), + a = i("639880"), + o = i("96"), + s = i("936690"), + l = i("601191"), + c = i("128468"), + d = i("60684"), + u = i("172834"), + f = i("716467"), + h = i("455392"), + p = i("191414"), + v = i("954681"), + m = i("51520"), + g = i("23290"), + _ = i("376564"), + y = i("727280"), + b = i("997166"); + class I { + convert() { + var e, + t, + i, + n, + d = this._blendParams(); + if (!d) return (0, r._)({}, this._item); + var { originPrompt: u } = d, + f = (0, o._)(d, ["originPrompt"]), + h = (0, a._)((0, r._)({}, this._item.aigcImageParams), { + blendParams: f, + }); + void 0 !== u && (0, s.V8)(h, u); + var p = (0, s.qv)(this._item), + v = (0, s.Uq)(f), + m = (0, l.Mu)(p, f, c.JU.Workbench), + g = (0, s.DI)(this._item, m), + _ = + null !== + (n = + null === (i = this._item) || void 0 === i + ? void 0 + : null === (t = i.commonAttr) || void 0 === t + ? void 0 + : null === (e = t.itemUrls) || void 0 === e + ? void 0 + : e[0]) && void 0 !== n + ? n + : ""; + return (0, a._)((0, r._)({}, this._item), { + aigcImageParams: h, + blendParams: { + blendAttributes: v, + imagePromptList: m, + promptPlaceholderInfoList: g, + imagePromptZipUrl: _, + }, + }); + } + _blendParams() { + var e, + t, + i, + n, + a, + o, + s, + l, + c, + y, + b, + I = this._item.aigcImageParams.blendParams; + if (!!I) { + if (!this._mainComponent) return I; + var { abilities: w } = + null !== (o = this._mainComponent) && void 0 !== o ? o : {}, + x = + null === (e = this._draft) || void 0 === e + ? void 0 + : e.findRootComponent(), + S = x instanceof u.DAImageBaseComponent ? x : void 0, + M = + null !== (s = null == w ? void 0 : w.blend) && void 0 !== s + ? s + : null == S + ? void 0 + : null === (t = S.abilities) || void 0 === t + ? void 0 + : t.blend; + if (!M) return I; + var C = { + promptPlaceholderInfoList: + null !== + (l = + null === (i = M.promptPlaceholderInfoList) || void 0 === i + ? void 0 + : i.map(h.B)) && void 0 !== l + ? l + : null == I + ? void 0 + : I.promptPlaceholderInfoList, + abilityList: (null !== + (c = + null === (n = M.abilityList) || void 0 === n + ? void 0 + : n.map((e) => { + var t, + i, + n, + r, + a = e.name && f.uC[e.name]; + if (!!a) { + var o = this._item.aigcDraftResources, + s = e.styleReference + ? (0, p.t)(e.styleReference, o) + : void 0, + l = + null === (t = e.faceRecognizeList) || + void 0 === t + ? void 0 + : t.map((e) => e.map(v.b)), + c = + null === (i = e.ipKeepList) || void 0 === i + ? void 0 + : i.map(m.J).filter(Boolean), + u = + null === (n = e.controlNetList) || void 0 === n + ? void 0 + : n.map(g.F).filter(Boolean), + h = + null === (r = e.imageList) || void 0 === r + ? void 0 + : r + .map((e) => (0, d.F)(e, o)) + .filter(Boolean), + y = e.commonAsset + ? (0, _.J)(e.commonAsset, o) + : void 0; + return { + name: a, + extra: e.extra, + strength: e.strength, + largeImageList: h, + coverImageList: h, + imageList: [], + controlNetList: u, + ipKeepList: c, + styleReference: s, + faceRecognizeList: l, + commonAsset: y, + }; + } + })) && void 0 !== c + ? c + : [] + ).filter(Boolean), + hasItemUrls: I.hasItemUrls, + model: I.model, + sampleStrength: I.sampleStrength, + styleReference: I.styleReference, + }, + T = this._resolveStyleCodeBlendAbilityParams( + null !== + (y = + null === (a = M.coreParam) || void 0 === a + ? void 0 + : a.prompt) && void 0 !== y + ? y + : "", + C.abilityList, + null !== (b = C.promptPlaceholderInfoList) && void 0 !== b + ? b + : [] + ); + return (0, r._)({ originPrompt: T.prompt }, C, T); + } + } + _resolveStyleCodeBlendAbilityParams(e, t, i) { + var n, + r = (0, y.DH)({ + prompt: e, + imagePromptList: t.filter((e) => void 0 !== e), + commonAssetList: + null !== (n = this._item.aigcImageParams.publishAssetList) && + void 0 !== n + ? n + : [], + promptPlaceholderInfoList: i, + }); + return r + ? r + : { + prompt: (0, b.IA)(this._item.aigcImageParams), + abilityList: t, + promptPlaceholderInfoList: i, + }; + } + constructor(e) { + this._item = e; + var { aigcDraft: t } = e; + if (null == t ? void 0 : t.content) { + var i = new u.DADraft({ JSONString: t.content }); + this._draft = i; + var n = i.componentList.find((e) => e.id === i.mainComponentId); + n instanceof u.DAImageBaseComponent && (this._mainComponent = n); + } + } + } + class w { + convert() { + var e, + t, + i = ( + null !== + (t = + null === (e = this._item.collection) || void 0 === e + ? void 0 + : e.itemList) && void 0 !== t + ? t + : [] + ).map((e) => new I(e).convert()); + return (0, a._)((0, r._)({}, this._item), { + collection: { itemList: i }, + }); + } + constructor(e) { + this._item = e; + } + } + function x(e) { + return (0, n.DF)(e) + ? new I(e).convert() + : (0, n.Rb)(e) + ? new w(e).convert() + : e; + } + }, + 884569: function (e, t, i) { + "use strict"; + i.d(t, { o: () => P, M: () => E }); + var n = i("789786"), + r = i("333597"), + a = i("139646"), + o = i("625572"), + s = i("639880"), + l = i("643590"), + c = i("416105"), + d = i("879976"), + u = i("956719"); + function f() { + var e = new l.y().build({ + headers: { "Content-Type": "application/json" }, + withCredentials: !0, + }); + return (0, d.V)(e), (0, c.mH)(e), (0, u.E)(e), e; + } + var h = i("940140"), + p = { + getHomePage: { + hostNameType: h.b_.Default, + url: "/mweb/v1/get_homepage", + }, + getLikeList: { + hostNameType: h.b_.Default, + url: "/mweb/v1/get_favorite_list", + }, + doFollowUser: { hostNameType: h.b_.Default, url: "/mweb/v1/follow" }, + }, + v = i("586315"), + m = i("820266"), + g = i("423719"), + _ = i("793723"), + y = i("389657"), + b = i("712942"), + I = i("242089"), + w = i("265587"), + x = i("100470"), + S = i("433965"), + M = i("247465"); + function C(e) { + var t = e.itemList.map((e) => + (0, S.jD)(e) || (0, S.Rb)(e) || (0, S.DF)(e) ? (0, M.q)(e) : e + ); + return (0, s._)((0, o._)({}, e), { itemList: t }); + } + function T(e) { + return e ? e.replace(/_([a-z])/g, (e, t) => t.toUpperCase()) : ""; + } + class A { + getDataList(e) { + var t = this; + return (0, a._)(function* () { + try { + var i, + n = "".concat((0, b.H4)()).concat(p.getHomePage.url), + r = "" + .concat(n, "_") + .concat( + null !== (i = e.imageType) && void 0 !== i + ? i + : e.imageTypeList + ); + e.packItemOpt = (0, s._)((0, o._)({}, e.packItemOpt), { + needDataIntegrity: !0, + }); + var a = yield (0, I.O)( + r, + () => t._networkClient.post(n, (0, m.X)(e)), + !0 + ), + l = a.__cacheSyncToken, + c = a.__logId; + if (l) { + var d = yield y.Li.decryptIV(l, c); + yield (0, g.sh)(y.Li.decrypt.bind(y.Li), a.item_list, d); + } + var u = yield y.sn.getSignOptions(); + (0, _.$U)(y.sn.sign.bind(y.sn), a.item_list, u); + for (var f = 0; f < a.item_list.length; f++) + a.item_list[f].video && + (a.item_list[f] = (0, w.Q)(a.item_list[f])); + var h = (0, m.b)(a, T), + S = C(h); + return (0, v.oW)(S); + } catch (e) { + var { ret: M, errmsg: A } = e || {}, + k = M ? Number(M) : x.b.ErrCommon; + return (0, v.wf)(k, null != A ? A : "unknown error"); + } + })(); + } + getLikeDataList(e) { + var t = this; + return (0, a._)(function* () { + try { + for ( + var i, + n = "".concat((0, b.H4)()).concat(p.getLikeList.url), + r = "" + .concat(n, "_") + .concat( + null !== (i = e.imageType) && void 0 !== i + ? i + : e.imageTypeList + ), + a = yield (0, I.O)( + r, + () => t._networkClient.post(n, (0, o._)({}, (0, m.X)(e))), + !0 + ), + s = 0; + s < a.item_list.length; + s++ + ) + a.item_list[s].video && + (a.item_list[s] = (0, w.Q)(a.item_list[s])); + var l = (0, m.b)(a, T), + c = C(l); + return (0, v.oW)(c); + } catch (e) { + var { ret: d, errmsg: u } = e || {}, + f = d ? Number(d) : x.b.ErrCommon; + return (0, v.wf)(f, null != u ? u : "unknown error"); + } + })(); + } + doFollowUser(e) { + var t = this; + return (0, a._)(function* () { + try { + var i = "".concat((0, b.H4)()).concat(p.doFollowUser.url), + n = "".concat(i, "_").concat(e.op, "_").concat(e.secUid), + r = yield (0, I.O)(n, () => + t._networkClient.post(i, (0, o._)({}, (0, m.X)(e))) + ); + return (0, v.oW)(r); + } catch (e) { + var { ret: a, errmsg: s } = e || {}, + l = a ? Number(a) : x.b.ErrCommon; + return (0, v.wf)(l, null != s ? s : "unknown error"); + } + })(); + } + constructor() { + this._networkClient = f(); + } + } + var k = i("434712"), + P = (0, r.yh)("mWeb-home-page-service"); + class E { + get homePageRepository() { + return this._homePageRepository; + } + constructor(e) { + (this._containerService = e), + (this._homePageRepository = + this._containerService.createInstance(A)); + } + } + E = (0, n.gn)( + [ + (0, n.fM)(0, k.t), + (0, n.w6)("design:type", Function), + (0, n.w6)("design:paramtypes", [void 0 === k.t ? Object : k.t]), + ], + E + ); + }, + 902519: function (e, t, i) { + "use strict"; + i.d(t, { + PK: function () { + return a; + }, + Ym: function () { + return r; + }, + im: function () { + return o; + }, + lX: function () { + return n; + }, + }); + var n = (function (e) { + return (e.Post = "post"), (e.Like = "like"), e; + })({}), + r = (function (e) { + return (e.Template = "template"), (e.Story = "story"), e; + })({}), + a = (function (e) { + return ( + (e[(e.IMAGE_SINGLE = 1)] = "IMAGE_SINGLE"), + (e[(e.IMAGE_COLLECTION = 2)] = "IMAGE_COLLECTION"), + (e[(e.SINGLE_AND_COLLECTION = 3)] = "SINGLE_AND_COLLECTION"), + (e[(e.VIDEO = 4)] = "VIDEO"), + (e[(e.MASTERPIECE = 5)] = "MASTERPIECE"), + (e[(e.MIXED_ROWS = 6)] = "MIXED_ROWS"), + (e[(e.CANVAS_PRODUCTION = 7)] = "CANVAS_PRODUCTION"), + e + ); + })({}), + o = (function (e) { + return ( + (e[(e.Follow = 1)] = "Follow"), + (e[(e.CancelFollow = 2)] = "CancelFollow"), + e + ); + })({}); + }, + 665588: function (e, t, i) { + "use strict"; + i.d(t, { + B9: function () { + return r; + }, + B_: function () { + return a; + }, + G8: function () { + return s; + }, + dS: function () { + return o; + }, + oE: function () { + return n; + }, + }); + var n = "storyboard-backup-drag-content", + r = "storyboard-draft-backup-drag-content", + a = "storyboard-timeline-drag-content", + o = "image-input-drag-content", + s = "story-image-input-drag-content"; + }, + 462537: function (e, t, i) { + "use strict"; + i.d(t, { + R: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("dragUploadFileService"); + }, + 331480: function (e, t, i) { + "use strict"; + i.d(t, { + D8: function () { + return r; + }, + Dx: function () { + return s; + }, + Te: function () { + return a; + }, + xq: function () { + return o; + }, + }); + var n = i(333597), + r = (function (e) { + return ( + (e.DISCONNECTED = "disconnected"), + (e.CONNECTING = "connecting"), + (e.OPEN = "open"), + e + ); + })({}), + a = (function (e) { + return ( + (e[(e.GeneralMessage = 11015)] = "GeneralMessage"), + (e[(e.AigcVideoTask = 10001)] = "AigcVideoTask"), + (e[(e.AigcVideoFirstFrame = 10002)] = "AigcVideoFirstFrame"), + (e[(e.TextArt = 10003)] = "TextArt"), + (e[(e.GroupKeyGenerated = 10004)] = "GroupKeyGenerated"), + (e[(e.AigcFlow = 10005)] = "AigcFlow"), + (e[(e.AudioTaskProcessingMessage = 10006)] = + "AudioTaskProcessingMessage"), + (e[(e.GenerateTaskStatusMessage = 10007)] = + "GenerateTaskStatusMessage"), + (e[(e.IllegalAccountKickOut = 20001)] = "IllegalAccountKickOut"), + (e[(e.VoiceTaskChange = 10013)] = "VoiceTaskChange"), + (e[(e.VideoAudioMixed = 10014)] = "VideoAudioMixed"), + (e[(e.LipSyncVideoDetectTask = 10015)] = "LipSyncVideoDetectTask"), + (e[(e.PreProcessDetectTask = 10010)] = "PreProcessDetectTask"), + e + ); + })({}), + o = (function (e) { + return ( + (e[(e.Init = 0)] = "Init"), + (e[(e.Processing = 10)] = "Processing"), + (e[(e.Success = 20)] = "Success"), + (e[(e.Fail = 30)] = "Fail"), + e + ); + })({}), + s = (0, n.yh)("dreamina-websocket-service"); + }, + 222721: function (e, t, i) { + "use strict"; + i.d(t, { + e: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("feed-prefetch-service"); + }, + 364767: function (e, t, i) { + "use strict"; + i.d(t, { + C: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("generate-image-params-service"); + }, + 285993: function (e, t, i) { + "use strict"; + i.d(t, { + q: function () { + return E; + }, + }); + var n = i(139646), + r = i(625572), + a = i(639880), + o = i(789786), + s = i(243302), + l = i(76212), + c = i(992393), + d = i(869919), + u = i(434712), + f = i(675601), + h = i(77922), + p = i(260963), + v = i(208540), + m = i(182688), + g = i(351066), + _ = i(566291), + y = i(950835), + b = i(586315), + I = i(699813), + w = i(899229), + x = i(645421), + S = i(800088), + M = i(799108), + C = i(292180), + T = i(70137), + A = i(484702), + k = i(624515), + P = i(99123); + class E extends S.U { + get status() { + return this.taskData.status; + } + get audioData() { + return this.observableAudioData; + } + startTask() { + var e = this; + return (0, n._)(function* () { + try { + if (e.observableData.data.status !== g.C.INIT) + return (0, b.wf)(-1, "task can not start"); + e._logger.info( + "generate video audio effect start, submitId ".concat( + e.observableData.data.id + ) + ); + var t, + i = e._formatSubmitParams(); + (0, + P.lt)(e.observableData.data.id, e.observableData.data.inputParams, e._option.mode, e.observableData.data.generateType, e._videoDraftGenerationManager.getIsEnableToUseDraftGen(e.taskData.taskDetail)); + var n = (0, x.T)({ + submitId: e.observableData.data.id, + scene: e.observableData.data.scene, + needCredits: e.observableData.data.needCredits, + commercialStrategyService: e._commercialStrategyService, + }), + r = e._commercialCreditService.addLocalCreditHistory(n), + a = yield e._submitAudioEffectTask(i); + if ( + (a.code && (e.observableData.data.errorCode = a.code), + (0, P.hw)(e._containerService, e.observableData.data.id, a), + !a.ok) + ) + return ( + (0, p.z)(() => { + e.observableData.data.status = g.C.FAIL; + }), + e._logger.error( + "generate video audio effect fail, submitId " + .concat(e.id, ", logId ") + .concat( + null === (t = a.errorInfo) || void 0 === t + ? void 0 + : t.logId + ) + ), + (0, _.Y)(a), + r.dispose(), + e._commercialCreditService.syncRemoteCreditHistory(), + a + ); + var { + value: { task: o, historyRecordId: l, videoDreamina: c }, + } = a; + return ( + (0, p.z)(() => { + (e.observableData.data.taskId = o.taskId), + (e.id = l), + (e.observableData.data.id = l), + (e.observableData.data.taskDetail = o), + (e.observableData.data.videoDetail = c), + (e.observableData.data.status = e._formatServerStatus( + a.value + )), + (e.observableData.data.forecastGenerateCost = + a.value.forecastGenerateCost), + (e.observableData.data.forecastQueueCost = + a.value.forecastQueueCost); + }), + e._logger.info( + "generate task success, task id " + .concat(o.taskId, ", params is ") + .concat(JSON.stringify(i)) + ), + v.BW.includes(o.status) && + e._createAndExecuteWebsocketPollingManager(), + o.status === s.Pd.FinalSuccess && + (e.observableData.data.videoResource = e._getResource( + a.value + )), + (0, b.oW)(e.taskData) + ); + } catch (e) { + return (0, b.wf)(-1, "submit Task fail", e); + } + })(); + } + _submitAudioEffectTask(e) { + if (this._videoDraftGenerationManager.getIsEnableToUseDraftGen()) { + var t = this._formatGenerateAudioEffectRequestParams(e); + return this._dataService.submitTaskByDraft(t, { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: "to_audio_effect", + feature_entrance: (0, l.b2)(), + feature_entrance_detail: "".concat( + (0, l.b2)(), + "-audio-effect" + ), + }), + }); + } + return this._dataService.submitVideoAudioEffectTask(e, { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: "to_audio_effect", + feature_entrance: (0, l.b2)(), + feature_entrance_detail: "".concat((0, l.b2)(), "-audio-effect"), + }), + }); + } + _formatGenerateAudioEffectRequestParams(e) { + return new c.s(e).convert(); + } + updateDefault(e) { + (0, p.z)(() => { + var t; + (this.observableAudioData.default = e), + (null === (t = this.observableData.data.videoDetail) || + void 0 === t + ? void 0 + : t.default) && + (this.observableData.data.videoDetail.default = e); + }); + } + markPublished(e) { + var t, + { videoDetail: i } = this.observableData.data; + if (!!i) { + var n = + null === (t = i.audioList) || void 0 === t + ? void 0 + : t.map((t) => { + var n, + { audio: o, mixAudioVideo: s } = t; + return o.vid === + (null === (n = i.default) || void 0 === n + ? void 0 + : n.vid) && s + ? { + audio: o, + mixAudioVideo: (0, a._)((0, r._)({}, s), { + hasPublished: !!e, + publishItemId: e, + }), + } + : t; + }); + (0, p.z)(() => { + this.observableData.data.videoDetail = (0, a._)((0, r._)({}, i), { + audioList: n, + }); + }); + } + } + createMixTask(e, t) { + var i = this; + return (0, n._)(function* () { + var n = (0, y.Rl)(), + o = { + submitId: n, + status: g.C.INIT, + inputParams: { input: e, submitId: n, scene: d.zk.AudioEffect }, + createdTime: Date.now(), + }, + s = i._containerService.createInstance( + k.j, + { data: o }, + (0, a._)((0, r._)({}, t), { + onMixSuccess: (e, n) => { + var r; + (0, p.z)(() => { + i.observableData.data.videoDetail = e.videoDetail; + }), + null === (r = t.onMixSuccess) || + void 0 === r || + r.call(t, e, n); + }, + }) + ); + return ( + yield s.startTask(), Promise.resolve((0, r._)({}, s.taskData)) + ); + })(); + } + _formatServerStatus(e) { + var t, + { videoDreamina: i, task: n } = e; + return n.status !== s.Pd.FinalSuccess || + (null == i + ? void 0 + : null === (t = i.audioList) || void 0 === t + ? void 0 + : t.length) + ? (0, m.KZ)(n.status) + : g.C.FAIL; + } + _formatServerData2AudioData(e) { + var { videoDreamina: t } = e; + return ( + (0, p.z)(() => { + this.observableData.data.status = this._formatServerStatus(e); + }), + { default: null == t ? void 0 : t.default } + ); + } + _formatSubmitParams() { + var e, + t, + i, + n, + r, + a, + { inputParams: o, scene: s, videoDetail: l } = this.taskData, + { transcode: c, originVideo: d } = null != l ? l : {}, + u = + null !== + (i = + null !== + (t = + null !== (e = null == c ? void 0 : c["720p"]) && + void 0 !== e + ? e + : null == c + ? void 0 + : c["360p"]) && void 0 !== t + ? t + : null == c + ? void 0 + : c.origin) && void 0 !== i + ? i + : d; + return { + submitId: this.submitId, + mode: this._option.mode, + commerceInfo: { + resourceId: M.Zw, + resourceIdType: "str", + resourceSubType: "aigc", + benefitType: (0, C.Z)( + (0, w.cq)({ + scene: s, + sceneOptions: { + version: w.dt.V2, + mode: (0, w.xc)(o.originFps), + containerService: this._containerService, + }, + }) + ), + }, + historyOption: { storyId: this._option.storyId }, + taskExtra: JSON.stringify(o.extra), + videoAudioInput: { + originHistoryId: + null !== (n = this._originHistoryId) && void 0 !== n ? n : "", + originItemId: + null !== (r = null == l ? void 0 : l.aigcItemId) && void 0 !== r + ? r + : "", + originVideoDetail: { + videoId: + null !== (a = null == l ? void 0 : l.videoId) && void 0 !== a + ? a + : "", + coverUrl: null == l ? void 0 : l.coverUrl, + durationMs: null == l ? void 0 : l.durationMs, + duration: null == l ? void 0 : l.duration, + originVideo: { + videoUrl: (null == u ? void 0 : u.url) || "", + width: null == u ? void 0 : u.width, + height: null == u ? void 0 : u.height, + }, + }, + }, + draftContent: this._option.originDraftContent, + v2vOpt: o.v2vOpt, + }; + } + constructor(e, t, i, n, r, a) { + super(e, t, i, n, r, a), + (this._containerService = t), + (this._dataService = i), + (this._resourceService = n), + (this._commercialCreditService = r), + (this._commercialStrategyService = a), + (this.observableAudioData = {}); + var { data: o, serviceData: s, videoAudioData: l } = e; + if ( + ((0, I.Y2)(null != o ? o : s), + (this._originHistoryId = null == l ? void 0 : l.originHistoryId), + s) + ) { + var c = this._formatServerData2AudioData(s); + this.observableAudioData = (0, p.LO)(c); + } + this.observableData.data.status === g.C.LOADING && + this._createAndExecuteWebsocketPollingManager(); + } + } + E = (0, o.gn)( + [ + (0, o.fM)(1, u.t), + (0, o.fM)(2, f.g), + (0, o.fM)(3, h.c), + (0, o.fM)(4, T.aG), + (0, o.fM)(5, A.N), + (0, o.w6)("design:type", Function), + (0, o.w6)("design:paramtypes", [ + "undefined" == typeof VideoAudioEffectTaskParams + ? Object + : VideoAudioEffectTaskParams, + void 0 === u.t ? Object : u.t, + void 0 === f.g ? Object : f.g, + void 0 === h.c ? Object : h.c, + void 0 === T.aG ? Object : T.aG, + void 0 === A.N ? Object : A.N, + ]), + ], + E + ); + }, + 442052: function (e, t, i) { + "use strict"; + i.d(t, { A: () => F }); + var n = i("139646"), + r = i("625572"), + a = i("639880"), + o = i("96"), + s = i("789786"), + l = i("243302"), + c = i("76212"), + d = i("869919"), + u = i("868725"), + f = i("434712"), + h = i("675601"), + p = i("77922"), + v = i("260963"), + m = i("208540"), + g = i("182688"), + _ = i("351066"), + y = i("566291"), + b = i("950835"), + I = i("586315"), + w = i("699813"), + x = i("899229"), + S = i("645421"), + M = i("800088"), + C = i("799108"), + T = i("292180"), + A = i("613983"), + k = i("99123"), + P = i("379311"), + E = i("475578"), + D = i("217448"); + class R { + getEventParams() { + var { + status: e, + errorCode: t, + errorMsg: i, + rank: n, + aiMusicType: r, + submitId: a, + taskId: o, + time: s, + videoId: l, + musicPrompt: c, + aiMusicId: d, + } = this._params, + { isVip: u, currentVipLevel: f } = this._vipService; + return { + status: e, + error_code: t, + error_msg: i, + rank: n, + ai_music_type: r, + video_id: l, + submit_id: a, + task_id: o, + ai_music_id: d, + time: s, + music_prompt: c, + page: E.WZ.AigcVideo, + is_vip: u ? 1 : 0, + user_subscribe_type: u ? C.TK[f] : 0, + }; + } + constructor(e, t) { + (this._params = e), + (this._vipService = t), + (this.eventName = "ai_music_generate_status"); + } + } + R = (0, s.gn)( + [ + (0, s.fM)(1, D.q), + (0, s.w6)("design:type", Function), + (0, s.w6)("design:paramtypes", [ + "undefined" == typeof AiMusicGenerateStatusParams + ? Object + : AiMusicGenerateStatusParams, + void 0 === D.q ? Object : D.q, + ]), + ], + R + ); + var N = (e, t) => (0, P.Kl)(e, R, [t]), + L = i("227700"), + j = i("70137"), + O = i("484702"), + B = i("624515"); + class F extends M.U { + get taskData() { + return this.observableData.data; + } + get status() { + return this.taskData.status; + } + get bgmData() { + return this.observableBgmData.data; + } + startTask() { + var e = this; + return (0, n._)(function* () { + try { + if (e.observableData.data.status !== _.C.INIT) + return (0, I.wf)(-1, "task can not start"); + e._logger.info( + "generate bgm start, submitId ".concat(e.observableData.data.id) + ), + (0, k.lt)( + e.observableData.data.id, + e.observableData.data.inputParams, + e._option.mode, + e.observableData.data.generateType, + e._videoDraftGenerationManager.getIsEnableToUseDraftGen( + e.taskData.taskDetail + ) + ); + var t, + i = (0, S.T)({ + submitId: e.observableData.data.id, + scene: e.observableData.data.scene, + needCredits: e.observableData.data.needCredits, + commercialStrategyService: e._commercialStrategyService, + }), + n = e._commercialCreditService.addLocalCreditHistory(i), + r = e._formatSubmitParams(), + a = yield e._submitBGMTask(r); + if ( + (a.code && (e.observableData.data.errorCode = a.code), + (0, k.hw)(e._containerService, e.observableData.data.id, a), + !a.ok) + ) + return ( + (0, v.z)(() => { + e.observableData.data.status = _.C.FAIL; + }), + e._logger.error( + "generate bgm fail, submitId " + .concat(e.id, ", logId ") + .concat( + null === (t = a.errorInfo) || void 0 === t + ? void 0 + : t.logId + ) + ), + (0, y.Y)(a), + n.dispose(), + e._commercialCreditService.syncRemoteCreditHistory(), + a + ); + var { + value: { task: o, historyRecordId: s, videoDreamina: c }, + } = a; + return ( + (0, v.z)(() => { + (e.observableData.data.taskId = o.taskId), + (e.id = s), + (e.observableData.data.id = s), + (e.observableData.data.taskDetail = o), + (e.observableData.data.videoDetail = c), + (e.observableData.data.status = e._formatServerStatus( + a.value + )), + (e.observableData.data.forecastGenerateCost = + a.value.forecastGenerateCost), + (e.observableData.data.forecastQueueCost = + a.value.forecastQueueCost); + }), + e._logger.info( + "generate task success, task id " + .concat(o.taskId, ", params is ") + .concat(JSON.stringify(r)) + ), + m.BW.includes(o.status) && + e._createAndExecuteWebsocketPollingManager(), + o.status === l.Pd.FinalSuccess && + (e.observableData.data.videoResource = e._getResource( + a.value + )), + e._reportAiMusicGenerateStatus(), + (0, I.oW)(e.taskData) + ); + } catch (e) { + return (0, I.wf)(-1, "submit Task fail", e); + } + })(); + } + _submitBGMTask(e) { + if (this._videoDraftGenerationManager.getIsEnableToUseDraftGen()) { + var t = this._formatGenerateBgmRequestParams(e); + return this._dataService.submitTaskByDraft(t, { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: "to_video_bgm", + feature_entrance: (0, c.b2)(), + feature_entrance_detail: "".concat((0, c.b2)(), "-bgm"), + }), + }); + } + return this._dataService.submitVideoBGMTask(e, { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: "to_video_bgm", + feature_entrance: (0, c.b2)(), + feature_entrance_detail: "".concat((0, c.b2)(), "-bgm"), + }), + }); + } + updateDefaultBgm(e) { + (0, v.z)(() => { + var t; + (this.observableBgmData.data.defaultBgm = e), + (null === (t = this.observableData.data.videoDetail) || + void 0 === t + ? void 0 + : t.default) && + (this.observableData.data.videoDetail.default = e); + }); + } + markPublished(e) { + var t, + { videoDetail: i } = this.observableData.data; + if (!!i) { + var n = + null === (t = i.audioList) || void 0 === t + ? void 0 + : t.map((t) => { + var n, + { audio: o, mixAudioVideo: s } = t; + return o.vid === + (null === (n = i.default) || void 0 === n + ? void 0 + : n.vid) && s + ? { + audio: o, + mixAudioVideo: (0, a._)((0, r._)({}, s), { + hasPublished: !!e, + publishItemId: e, + }), + } + : t; + }); + (0, v.z)(() => { + this.observableData.data.videoDetail = (0, a._)((0, r._)({}, i), { + audioList: n, + }); + }); + } + } + createMixTask(e, t) { + var i = this; + return (0, n._)(function* () { + var n = (0, b.Rl)(), + o = { + submitId: n, + status: _.C.INIT, + inputParams: { input: e, submitId: n, scene: d.zk.BGM }, + createdTime: Date.now(), + }, + s = i._containerService.createInstance( + B.j, + { data: o }, + (0, a._)((0, r._)({}, t), { + onMixSuccess: (e, n) => { + var r; + (0, v.z)(() => { + i.observableData.data.videoDetail = e.videoDetail; + }), + null === (r = t.onMixSuccess) || + void 0 === r || + r.call(t, e, n); + }, + }) + ); + return ( + yield s.startTask(), Promise.resolve((0, r._)({}, s.taskData)) + ); + })(); + } + _formatGenerateBgmRequestParams(e) { + return new u.V(e).convert(); + } + _formatServerStatus(e) { + var t, + { videoDreamina: i, task: n } = e; + return n.status !== l.Pd.FinalSuccess || + (null == i + ? void 0 + : null === (t = i.audioList) || void 0 === t + ? void 0 + : t.length) + ? (0, g.KZ)(n.status) + : _.C.FAIL; + } + _formatServerData2BgmData(e) { + var t, + i, + n, + r, + a, + o, + s, + l, + c, + u, + f, + { videoDreamina: h, task: p } = e; + return ( + (0, v.z)(() => { + this.observableData.data.status = this._formatServerStatus(e); + }), + { + input: { + originHistoryId: + null !== + (c = + null === (t = p.videoBGMInfo) || void 0 === t + ? void 0 + : t.originHistoryId) && void 0 !== c + ? c + : "", + originItemId: + null !== + (u = + null === (i = p.videoBGMInfo) || void 0 === i + ? void 0 + : i.originItemId) && void 0 !== u + ? u + : "", + duration: + null !== + (f = + null === (n = p.videoBGMInfo) || void 0 === n + ? void 0 + : n.duration) && void 0 !== f + ? f + : 0, + tags: + null === (r = p.videoBGMInfo) || void 0 === r + ? void 0 + : r.tags, + accord: + (null === (a = p.videoBGMInfo) || void 0 === a + ? void 0 + : a.promptSource) === d.X2.Tag + ? A.kP.custom + : A.kP.frame, + frameUrl: + null === (s = p.videoBGMInfo) || void 0 === s + ? void 0 + : null === (o = s.videoFirstFrame) || void 0 === o + ? void 0 + : o.imageUrl, + videoFirstFrame: + null === (l = p.videoBGMInfo) || void 0 === l + ? void 0 + : l.videoFirstFrame, + }, + } + ); + } + _formatSubmitParams() { + var { inputParams: e, scene: t } = this.taskData, + { input: i } = this.bgmData; + return { + submitId: this.submitId, + input: { + duration: i.duration, + originHistoryId: i.originHistoryId, + originItemId: i.originItemId, + tags: i.accord === A.kP.custom ? i.tags : void 0, + videoFirstFrame: + i.accord === A.kP.frame ? i.videoFirstFrame : void 0, + }, + mode: this._option.mode, + commerceInfo: { + resourceId: C.Zw, + resourceIdType: "str", + resourceSubType: "aigc", + benefitType: (0, T.Z)( + (0, x.cq)({ + scene: t, + sceneOptions: { + version: x.dt.V2, + mode: (0, x.xc)(e.originFps), + containerService: this._containerService, + }, + }) + ), + }, + historyOption: { storyId: this._option.storyId }, + draftContent: this._option.originDraftContent, + taskExtra: JSON.stringify(e.extra), + v2vOpt: e.v2vOpt, + }; + } + _reportAiMusicGenerateStatus() { + var { + status: e, + videoDetail: t, + taskDetail: i, + createdTime: n, + submitId: r, + errorCode: a, + } = this.taskData; + if (!![_.C.FAIL, _.C.SUCCESS].includes(e)) { + var o = e === _.C.SUCCESS; + if ( + (null == t ? void 0 : t.audioList) && + (null == i ? void 0 : i.videoBGMInfo) + ) { + var s, + l = + null === (s = i.videoBGMInfo.tags) || void 0 === s + ? void 0 + : s + .map((e) => { + var { name: t } = e; + return t; + }) + .join(","); + t.audioList.forEach((e, s) => { + var c, + u = o && "success" === e.audio.status; + N(this._containerService, { + status: u ? "success" : "fail", + time: Date.now() - n, + submitId: r, + errorCode: o ? a : void 0, + rank: s + 1, + aiMusicType: + (null === (c = i.videoBGMInfo) || void 0 === c + ? void 0 + : c.promptSource) === d.X2.Tag + ? L.hp.custom + : L.hp.frame, + taskId: i.taskId, + videoId: t.videoId, + musicPrompt: l, + aiMusicId: e.audio.vid, + }); + }); + } + } + } + constructor(e, t, i, n, r, a) { + var { bgmData: s } = e, + l = (0, o._)(e, ["bgmData"]); + super(l, t, i, n, r, a), + (this._containerService = t), + (this._dataService = i), + (this._resourceService = n), + (this._commercialCreditService = r), + (this._commercialStrategyService = a); + var { data: c, serviceData: d } = l; + if (((0, w.Y2)(null != c ? c : d), s)) + this.observableBgmData = (0, v.LO)({ data: s }); + else if (d) { + var u = this._formatServerData2BgmData(d); + this.observableBgmData = (0, v.LO)({ data: u }); + } else throw Error("init bgm info loss"); + this.observableData.data.status === _.C.LOADING && + this._createAndExecuteWebsocketPollingManager(); + } + } + F = (0, s.gn)( + [ + (0, s.fM)(1, f.t), + (0, s.fM)(2, h.g), + (0, s.fM)(3, p.c), + (0, s.fM)(4, j.aG), + (0, s.fM)(5, O.N), + (0, s.w6)("design:type", Function), + (0, s.w6)("design:paramtypes", [ + "undefined" == typeof AigcVideoBGMTaskParams + ? Object + : AigcVideoBGMTaskParams, + void 0 === f.t ? Object : f.t, + void 0 === h.g ? Object : h.g, + void 0 === p.c ? Object : p.c, + void 0 === j.aG ? Object : j.aG, + void 0 === O.N ? Object : O.N, + ]), + ], + F + ); + }, + 800088: function (e, t, i) { + "use strict"; + i.d(t, { + U: function () { + return Q; + }, + }); + var n = i(139646), + r = i(625572), + a = i(639880), + o = i(789786), + s = i(260963), + l = i(773820), + c = i(317825), + d = i(509525), + u = i(586315), + f = i(699813), + h = i(588735), + p = i(733787), + v = i(76212), + m = i(434487), + g = i(224671), + _ = i(243302), + y = i(434712), + b = i(675601), + I = i(77922), + w = i(474956), + x = i(799108), + S = i(292180), + M = i(566291), + C = i(3329), + T = i(584531), + A = i(331480), + k = i(99123), + P = i(227700), + E = i(67752), + D = i(70137), + R = i(484702), + N = i(899229), + L = i(652660), + j = i(388977), + O = i(740242), + B = i(475578), + F = i(645421), + U = i(351066), + G = i(182688), + z = i(208540), + V = i(76931), + W = i(97075), + Z = i(39333), + K = i(412961), + H = i(673326), + q = i(542462), + J = i(950835), + Y = "AigcVideoTask"; + class Q { + get submitId() { + var e, t; + return null !== (t = this._submitId) && void 0 !== t + ? t + : null === (e = this.taskData) || void 0 === e + ? void 0 + : e.submitId; + } + get taskData() { + return this.observableData.data; + } + get status() { + return this.taskData.status; + } + forceUpdateTask() { + var e = this; + return (0, n._)(function* () { + if (!!e.taskData.taskId) + try { + var t, + i = yield e._queryTask(); + if (!i.ok) { + e._logger.error( + "generate task query fail, history id " + .concat(e.taskData.id, " task id ") + .concat(e.taskData.taskId, ", logId ") + .concat( + null === (t = i.errorInfo) || void 0 === t + ? void 0 + : t.logId + ) + ); + return; + } + var n = i.value.taskResult; + n.createdTime = + 0 === n.createdTime + ? e.observableData.data.createdTime + : n.createdTime; + var r = e._formateServerData(n, !0); + return (e.observableData.data = r), r; + } catch (t) { + e._logger.error( + "generate task query fail, history id " + .concat(e.taskData.id, " task id ") + .concat(e.taskData.taskId) + ); + return; + } + })(); + } + startTask() { + var e = this; + return (0, n._)(function* () { + return yield e._startTask(); + })(); + } + startTaskFromOuterPromise(e) { + var t = this; + return (0, n._)(function* () { + return yield t._startTask(e); + })(); + } + _startTask(e) { + var t = this; + return (0, n._)(function* () { + try { + if (t.observableData.data.status !== U.C.INIT) + return (0, u.wf)(-1, "task can not start"); + (t.observableData.data.errorCode = h.sb.Pending), + t._logger.info( + "generate task start, submitId ".concat( + t.observableData.data.id + ) + ); + var i, + n, + r, + a = t._formatTaskDataToParams(); + (0, + k.lt)(t.observableData.data.id, t.observableData.data.inputParams, t._option.mode, t.observableData.data.generateType, t._videoDraftGenerationManager.getIsEnableToUseDraftGen(t.taskData.taskDetail, a)); + var o = (0, F.T)({ + submitId: t.observableData.data.id, + scene: t.observableData.data.scene, + needCredits: t.observableData.data.needCredits, + commercialStrategyService: t._commercialStrategyService, + }), + l = t._commercialCreditService.addLocalCreditHistory(o), + c = yield t._submitTask(a, e); + if ( + ((t.observableData.data.errorCode = void 0), + (0, k.hw)(t._containerService, t.observableData.data.id, c), + c.code && (t.observableData.data.errorCode = c.code), + !c.ok) + ) + return ( + [ + h.sb.NoCredit, + h.sb.NotInvited, + h.sb.RateLimit, + h.sb.TnsNotPass, + h.sb.ErrPunishLimitAIGenerate, + h.sb.ErrSharkNotPass, + h.sb.ErrRateLimitForNonCommercialRegion, + ].includes(c.code) + ? (0, s.z)(() => { + (t.observableData.data.status = U.C.FAIL), + (t.observableData.data.taskDetail = + c.errorInfo.data.task); + }) + : (0, s.z)(() => { + (t.observableData.data.status = U.C.RETRYABLE_FAIL), + (t.observableData.data.taskDetail = + c.errorInfo.data.task); + }), + t._logger.error( + "generate task fail, submitId " + .concat(t.id, ", logId ") + .concat( + null === (r = c.errorInfo) || void 0 === r + ? void 0 + : r.logId + ) + ), + (0, M.Y)(c), + l.dispose(), + t._commercialCreditService.syncRemoteCreditHistory(), + c + ); + return ( + (null === (i = c.value.firstFrameImage) || void 0 === i + ? void 0 + : i.imageUrl) && + (t.observableData.data.firstFrameImage = + c.value.firstFrameImage), + (null === (n = c.value.lastFrameImage) || void 0 === n + ? void 0 + : n.imageUrl) && + (t.observableData.data.lastFrameImage = + c.value.lastFrameImage), + (0, s.z)(() => { + (t.observableData.data.taskId = c.value.task.taskId), + (t.id = c.value.historyRecordId), + (t.observableData.data.id = c.value.historyRecordId), + (t.observableData.data.taskDetail = c.value.task), + (t.observableData.data.videoDetail = c.value.videoDreamina), + (t.observableData.data.status = (0, G.KZ)( + c.value.task.status + )), + (t.observableData.data.forecastGenerateCost = + c.value.forecastGenerateCost), + (t.observableData.data.forecastQueueCost = + c.value.forecastQueueCost), + (t.observableData.data.failCode = c.value.failCode), + (t.observableData.data.generateId = c.value.generateId); + }), + t._logger.info( + "generate task success, task id " + .concat(c.value.task.taskId, ", commercialScene is ") + .concat(t.observableData.data.scene, " creditPatch is ") + .concat(JSON.stringify(o), " currentCredit is ") + .concat( + t._commercialCreditService.localCredit, + ", params is " + ) + .concat(JSON.stringify(a)) + ), + z.BW.includes(c.value.task.status) && + c.value.task.priority !== p.T8.Relax && + t._createAndExecuteWebsocketPollingManager(), + (0, u.oW)(t.taskData) + ); + } catch (e) { + return (0, u.wf)(-1, "submit Task fail", e); + } + })(); + } + _submitTask(e, t) { + var i = (0, C.r)(e); + if ( + this._videoDraftGenerationManager.getIsEnableToUseDraftGen( + this.taskData.taskDetail, + e + ) + ) + return this._dataService.submitTaskByDraft( + this._formatGenerateVideoRequestParams(e), + { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: i, + feature_entrance: (0, v.b2)(), + feature_entrance_detail: "" + .concat((0, v.b2)(), "-") + .concat("to_video-lipsync" === i ? "lipsync" : i), + }), + } + ); + var n = this._dataService.submitTask.bind(this); + return (null != t ? t : n)(e, { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: i, + feature_entrance: (0, v.b2)(), + feature_entrance_detail: "" + .concat((0, v.b2)(), "-") + .concat("to_video-lipsync" === i ? "lipsync" : i), + }), + }); + } + retryTask() { + var e = this; + return (0, n._)(function* () { + return e.observableData.data.status !== U.C.RETRYABLE_FAIL + ? (0, u.wf)(-1, "task can not Retry") + : ((e.observableData.data.status = U.C.INIT), + (e.observableData.data.inputParams.createdTime = Date.now()), + yield e.startTask()); + })(); + } + updateHistoryGroupKeyMd5(e) { + (0, s.z)(() => { + this.observableData.data.historyGroupKeyMd5 = e; + }); + } + markFavorite(e) { + this.observableData.data.hasFavorited = e; + } + markPublished(e) { + this.observableData.data.videoDetail && + (this.observableData.data.videoDetail = (0, a._)( + (0, r._)({}, this.observableData.data.videoDetail), + { publishedItemId: e } + )); + } + _queryTask() { + var e = this; + return (0, n._)(function* () { + var t = e._formatTaskDataToParams(); + if ( + e._videoDraftGenerationManager.getIsEnableToUseDraftPolling( + e.taskData.taskDetail, + t + ) + ) { + var i = e.taskData.id, + n = yield e._dataService.queryTaskByDraft({ historyIds: [i] }); + return n.ok + ? (0, u.oW)({ + logId: n.value.logId, + taskResult: n.value.taskMap[i], + }) + : n; + } + var r = "".concat(e.taskData.taskId), + a = yield e._dataService.queryTask({ taskIdList: [r] }); + return a.ok + ? (0, u.oW)({ + logId: a.value.logId, + taskResult: a.value.taskMap[r], + }) + : a; + })(); + } + _pollProgress() { + var e = this; + return (0, n._)(function* () { + if (!!e.taskData.taskId) + try { + var t, + i, + n, + o = yield e._queryTask(); + if (!o.ok) { + e._logger.error( + "generate task query fail, isUseDraftGen is " + .concat( + null === (i = e.taskData.taskDetail) || void 0 === i + ? void 0 + : i.isUseDraftGen, + " task submitId " + ) + .concat(e.taskData.submitId, " task id ") + .concat(e.taskData.taskId, ", logId ") + .concat( + null === (n = o.errorInfo) || void 0 === n + ? void 0 + : n.logId + ) + ), + (e._pollErrorCount += 1), + e._pollErrorCount < z.nf && + setTimeout(() => { + e._pollProgress(); + }, z.cr); + return; + } + var { taskResult: l } = o.value; + (e._pollErrorCount = 0), + e._logger.info( + "generate task query success, isUseDraftGen is " + .concat( + null === (t = e.taskData.taskDetail) || void 0 === t + ? void 0 + : t.isUseDraftGen, + " task submitId " + ) + .concat(e.taskData.submitId, " task id ") + .concat(e.taskData.taskId, ", status ") + .concat(l.task.status, ", logId ") + .concat(o.value.logId) + ), + z.BW.includes(l.task.status) && + setTimeout(() => { + e._pollProgress(); + }, z.cr), + (l.createdTime = + 0 === l.createdTime + ? e.observableData.data.createdTime + : l.createdTime), + (0, k.FT)( + e._containerService, + l, + e._option.mode, + o.value.logId, + e.observableData.data.inputParams + ); + var c = e._formateServerData(l); + !e.observableData.data.firstFrameImage && + c.firstFrameImage && + (e.observableData.data.firstFrameImage = c.firstFrameImage); + var d = (0, G.KZ)(l.task.status); + if (d === e.observableData.data.status) return; + if ( + ((0, s.z)(() => { + e.observableData.data = (0, a._)( + (0, r._)({}, e.observableData.data, c), + { + status: d, + taskDetail: c.taskDetail, + videoDetail: c.videoDetail, + createdTime: c.createdTime, + } + ); + }), + [U.C.FAIL, U.C.SUCCESS].includes(d)) + ) { + var u = (0, T.Y)(l); + (e.observableData.data.inputParams = u), + e._commercialCreditService.syncRemoteCreditHistory(); + } + d === U.C.SUCCESS && + (e.observableData.data.videoResource = e._getResource(l)); + } catch (t) { + (e._pollErrorCount += 1), + e._pollErrorCount < z.nf && + setTimeout(() => { + e._pollProgress(); + }, z.cr); + } + })(); + } + _formatTaskDataToParams() { + var e, + t, + i, + n, + o, + c, + { inputParams: d, scene: u } = this.taskData, + { + originDraftContent: f, + isRegenerate: h, + originHistoryId: p, + originItemId: v, + } = this._option; + return { + submitId: this.observableData.data.submitId, + input: { + videoGenInputs: (0, r._)( + { + firstFrameImage: + null === (e = d.inputImages) || void 0 === e + ? void 0 + : e.find((e) => e.type === l.z.FirstFrame), + endFrameImage: + null === (t = d.inputImages) || void 0 === t + ? void 0 + : t.find((e) => e.type === l.z.LastFrame), + lensMotionType: d.motionType, + motionSpeed: d.motionSpeed, + prompt: d.textPrompt, + vid: d.vid, + audioVid: d.audioVid, + v2vOpt: (0, s.ZN)(d.v2vOpt), + i2vOpt: (0, s.ZN)(d.i2vOpt), + originDurationMs: d.originDurationMs, + originFps: d.originFps, + videoMode: d.videoMode, + motionIntensity: d.motionIntensity, + batchNumber: d.batchNumber, + templateId: d.templateId, + }, + d.boximator + ? { boximator: (0, r._)({ enable: !0 }, d.boximator) } + : {} + ), + seed: d.seed, + videoAspectRatio: d.videoRatio, + priority: d.priority, + modelReqKey: d.modelReqKey, + }, + templateId: d.templateId, + taskPayload: { + taskExtra: (0, a._)( + (0, r._)({}, null !== (n = d.extra) && void 0 !== n ? n : {}), + { + originTemplateId: d.templateId, + impressionId: + null !== (o = d.impressionId) && void 0 !== o + ? o + : (0, V.ww)(d.templateId), + imageNameMapping: + null === (i = d.inputImages) || void 0 === i + ? void 0 + : i.reduce( + (e, t) => (t.name && (e[t.imageUri] = t.name), e), + {} + ), + } + ), + }, + commerceInfo: { + resourceId: x.Zw, + resourceIdType: "str", + resourceSubType: "aigc", + benefitType: (0, S.Z)( + (0, N.cq)({ + scene: u, + sceneOptions: (0, N.S9)(u) + ? { + version: N.dt.V2CharVideo, + characterMode: d.videoMode, + containerService: this._containerService, + } + : { + version: N.dt.V2, + mode: (0, N.xc)(d.originFps), + containerService: this._containerService, + modelReqKey: d.modelReqKey, + }, + }) + ), + }, + scene: d.scene, + aiGenInfo: d.aiGenInfo, + preTaskId: d.preTaskId, + mode: this._option.mode, + historyOption: { storyId: this._option.storyId }, + clientTraceData: { + impressionId: + null !== (c = d.impressionId) && void 0 !== c + ? c + : (0, V.ww)(d.templateId), + }, + draftContent: f, + originHistoryId: p, + originItemId: v, + isRegenerate: h, + }; + } + _formatGenerateVideoRequestParams(e) { + return new W.Z(e).convert(); + } + _formateServerData(e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] && arguments[1], + i = (0, T.o)(e); + return ( + [U.C.SUCCESS, U.C.FAIL].includes(i.status) && + (i.videoResource = this._getResource(e, t)), + i + ); + } + _getResource(e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] && arguments[1]; + if (!!e.videoDreamina) { + var i = String(e.videoDreamina.key); + t && this._resourceService.delete(i, w._g.VideoDreamina); + var n = (0, m.nQ)( + this._resourceService, + w._g.VideoDreamina, + e.videoDreamina + ); + return null == n || n.getCoverResourceToken().startImmediately(), n; + } + } + _createPollingManager(e) { + var { websocketMessageHandler: t, onFallbackToPolling: i } = e, + n = this._formatTaskDataToParams(); + return this._videoDraftGenerationManager.getIsEnableToUseDraftPolling( + this.taskData.taskDetail, + n + ) + ? this._containerService.createInstance(L.Q, { + methodId: A.Te.GenerateTaskStatusMessage, + websocketMessageHandler: (e, i) => + t({ submitId: i.submitId, status: i.status }), + onFallbackToPolling: i, + pollingHandler: this._pollProgress.bind(this), + timeout: 6e4, + }) + : this._containerService.createInstance(L.Q, { + methodId: A.Te.AigcVideoTask, + websocketMessageHandler: (e, i) => + t({ submitId: i.submitId, status: i.taskStatus }), + onFallbackToPolling: i, + pollingHandler: this._pollProgress.bind(this), + timeout: 3e5, + }); + } + _createAndExecuteWebsocketPollingManager() { + if (!this._websocketManager) { + var e = Date.now(), + t = this._createPollingManager({ + websocketMessageHandler: (t) => + this.observableData.data.submitId !== t.submitId || + void 0 === t.status || + [g.j0.Init, g.j0.SubmitOk].includes(t.status) + ? { accepted: !1, done: !1 } + : ((0, k.q)(t.submitId), + (0, O.bY)(this._containerService, { + taskName: "aigc-video", + taskId: this.observableData.data.taskId, + submitId: this.observableData.data.submitId, + taskStatus: t.status, + duration: Date.now() - e, + }), + this._pollProgress(), + { accepted: !0, done: !0 }), + onFallbackToPolling: (e) => { + (0, O.dz)(this._containerService, { + taskName: "aigc-video", + taskId: this.observableData.data.taskId, + submitId: this.observableData.data.submitId, + reason: e, + }); + }, + }); + (0, j.ko)(this._containerService, A.Dx).registerEventHandler( + A.Te.AigcVideoFirstFrame, + (e) => { + this.observableData.data.taskId === e.taskId && + (0, s.z)(() => { + var { + width: t, + height: i, + format: n, + imageUrl: r, + } = e.imageInfo; + this.observableData.data.firstFrameImage = { + width: t, + height: i, + format: n, + imageUrl: r, + }; + }); + } + ), + (0, c.Rr)((e) => t.startListening(e), { + contextType: d.zO.Task, + processName: Y, + }), + (this._websocketManager = t); + } + } + _registerTaskStateChangeReport() { + (0, s.U5)( + () => this.observableData.data.status, + (e) => { + var t; + if (!![U.C.SUCCESS, U.C.FAIL].includes(e)) + this._reportTaskStateChange( + this.observableData.data, + null === (t = this._option.reportParams) || void 0 === t + ? void 0 + : t.enterFrom + ); + } + ); + } + _reportTaskStateChange(e) { + var t, + i, + n, + o, + s, + c, + d, + u, + f, + p, + v = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : P.MY.FirstPage; + if (Q.finishReportFlagMapper.get(this.submitId)) return; + Q.finishReportFlagMapper.set(this.submitId, !0); + var { + videoDetail: m, + status: g, + id: y, + taskDetail: b, + errorCode: I, + inputParams: w, + failCode: x, + generateType: S, + generateId: M, + } = e; + if (!![U.C.SUCCESS, U.C.FAIL].includes(g)) { + var C = g === U.C.FAIL ? P.qb.fail : P.qb.success, + T = (0, K.iS)(m, b, y, w, S), + A = (0, K.Wo)(w, b), + k = + null === (t = w.boximator) || void 0 === t + ? void 0 + : t.boxes.map((e, t) => { + var i, + n = e.motionPath.length ? 1 : 0, + r = + (null === (i = e.boundingBox) || void 0 === i + ? void 0 + : i.length) > 1 + ? 1 + : 0; + return { + ["Box".concat(t + 1)]: { + is_path_added: n, + is_end_added: r, + }, + }; + }), + D = [ + _.Pd.PostTnsCheckNotPass, + _.Pd.FinalGenerateFail, + _.Pd.PostTnsCheckNotPass, + _.Pd.PreTnsCheckNotPass, + ], + R = + null !== + (u = + null == b + ? void 0 + : null === (i = b.taskPayload) || void 0 === i + ? void 0 + : i.taskExtra) && void 0 !== u + ? u + : w.extra, + N = null == R ? void 0 : R.generateTimes, + L = null == m ? void 0 : m.aigcParams.text2videoParams, + j = (0, K.J8)({ taskDetail: b, videoDetail: m }), + O = + null !== (f = R.templateType) && void 0 !== f ? f : B.px.Video; + (null == L + ? void 0 + : null === (c = L.videoGenInputs) || void 0 === c + ? void 0 + : null === (s = c[0]) || void 0 === s + ? void 0 + : null === (o = s.firstFrameImage) || void 0 === o + ? void 0 + : null === (n = o.aigcImage) || void 0 === n + ? void 0 + : n.itemId) && (O = B.px.TextToImageTOVideo); + var { v2vOpt: F, i2vOpt: G } = + null !== + (p = + null == b ? void 0 : b.originalInput.videoGenInputs[0]) && + void 0 !== p + ? p + : w, + z = null == R ? void 0 : R.lipSyncInfo, + W = null == R ? void 0 : R.originSubmitId; + null === (d = (0, q.Cb)(this._containerService)) || + void 0 === d || + d.then((t) => { + var i, n, o, s, c, d, u, f, p, g, _, y; + (0, E.i)( + this._containerService, + (0, r._)( + (0, a._)( + (0, r._)( + (0, a._)( + (0, r._)( + { + page: B.WZ.AigcVideo, + status: C, + is_draft_gen: ( + null == b ? void 0 : b.isUseDraftGen + ) + ? B._O.True + : B._O.False, + time: Date.now() - e.createdTime, + submit_id: e.submitId, + error_code: + void 0 !== I && I !== h.sb.Success + ? "".concat(I) + : void 0, + task_error_code: + (null == b ? void 0 : b.status) && + D.includes(b.status) + ? "".concat(b.status) + : void 0, + fail_code: x, + fail_reason: b ? "".concat(x) : "taskFail", + video_duration: m + ? Number(m.durationMs) + : w.originDurationMs, + }, + T + ), + { + enter_from: v, + origin_submit_id: W, + add_more_cnt: + T.prompt_source === l.K.AddMore && N ? N : void 0, + original_frame_rate: A.originalFrameRate + ? "".concat(A.originalFrameRate, "fps") + : void 0, + new_frame_rate: A.newFrameRate + ? "".concat(A.newFrameRate, "fps") + : void 0, + original_resolution: A.originalResolution, + new_resolution: A.newResolution, + frame_interpolation_cnt: + T.prompt_source === l.K.FrameInterpolation + ? A.frameInterpolationCnt - 1 + : A.frameInterpolationCnt, + upscale_cnt: + T.prompt_source === l.K.Upscale + ? A.upscaleCnt - 1 + : A.upscaleCnt, + is_from_preview: b && (0, K.bN)(b) ? 1 : 0, + is_quick_preview: (0, K.Iu)(w.videoMode) ? 1 : 0, + is_preset: 0, + generate_num: + null !== (_ = T.batch_number) && void 0 !== _ + ? _ + : 1, + magic_box_cnt: + null !== + (y = + null === (i = w.boximator) || void 0 === i + ? void 0 + : i.boxes.length) && void 0 !== y + ? y + : 0, + magic_box_info: JSON.stringify(k), + model_key: w.modelReqKey, + model_name: (0, K.CU)({ + taskDetail: b, + videoDetail: m, + }), + last_picture_id: null == j ? void 0 : j.itemId, + last_generate_id: + null == j + ? void 0 + : null === (n = j.aigcImageParams) || + void 0 === n + ? void 0 + : n.generateId, + picture_generate_type: + null == j + ? void 0 + : null === (o = j.aigcImageParams) || + void 0 === o + ? void 0 + : o.generateType, + template_id: + null == w + ? void 0 + : null === (s = w.extra) || void 0 === s + ? void 0 + : s.originTemplateId, + impression_id: + null == w + ? void 0 + : null === (c = w.extra) || void 0 === c + ? void 0 + : c.impressionId, + event_page: (0, V.CB)(O, t), + template_from: (0, V.lg)( + null == w + ? void 0 + : null === (d = w.extra) || void 0 === d + ? void 0 + : d.originTemplateId, + O + ), + template_type_id: (0, V.pm)( + null == w + ? void 0 + : null === (u = w.extra) || void 0 === u + ? void 0 + : u.impressionId, + O + ), + template_source: t, + generate_type: S, + generate_id: M, + blend_image_uri_list: + null === (p = w.inputImages) || void 0 === p + ? void 0 + : null === + (f = p.map((e) => { + var t; + return null !== (t = e.imageUri) && + void 0 !== t + ? t + : ""; + })) || void 0 === f + ? void 0 + : f.join(";"), + } + ), + (0, K.AX)(m, S) + ), + { + emotion_key: + null == z + ? void 0 + : null === (g = z.toneEmotion) || void 0 === g + ? void 0 + : g.nameKey, + is_voice_clone: (0, H.$l)(F, G) ? 1 : 0, + is_audio_to_audio: (0, H.eE)(z) ? 1 : 0, + } + ), + (0, K.wu)(b) + ) + ); + }); + } + } + constructor( + { logger: e, data: t, serviceData: i, option: n }, + r, + a, + o, + l, + c + ) { + if ( + ((this._containerService = r), + (this._dataService = a), + (this._resourceService = o), + (this._commercialCreditService = l), + (this._commercialStrategyService = c), + (this._pollErrorCount = 0), + (this.debugId = (0, J.Rl)()), + (this._logger = e), + (this._option = n), + (0, f.Y2)(t || i), + t) + ) + (this.id = t.id), + (this._submitId = t.id), + (this.observableData = (0, s.LO)({ data: t })); + else if (i) { + var d = this._formateServerData(i); + (this.id = d.id), (this.observableData = (0, s.LO)({ data: d })); + } else throw Error("init imformation loss"); + (this._videoDraftGenerationManager = + this._containerService.createInstance(Z.K)), + [U.C.LOADING, U.C.INIT].includes(this.observableData.data.status) && + this.observableData.data.inputParams.priority !== p.T8.Relax && + this._createAndExecuteWebsocketPollingManager(), + i && + [U.C.SUCCESS, U.C.FAIL].includes( + this.observableData.data.status + ) && + (this.observableData.data.videoResource = this._getResource(i)), + this._registerTaskStateChangeReport(); + } + } + (Q.finishReportFlagMapper = new Map()), + (Q = (0, o.gn)( + [ + (0, o.fM)(1, y.t), + (0, o.fM)(2, b.g), + (0, o.fM)(3, I.c), + (0, o.fM)(4, D.aG), + (0, o.fM)(5, R.N), + (0, o.w6)("design:type", Function), + (0, o.w6)("design:paramtypes", [ + "undefined" == typeof AigcVideoTaskParams + ? Object + : AigcVideoTaskParams, + void 0 === y.t ? Object : y.t, + void 0 === b.g ? Object : b.g, + void 0 === I.c ? Object : I.c, + void 0 === D.aG ? Object : D.aG, + void 0 === R.N ? Object : R.N, + ]), + ], + Q + )); + }, + 208540: function (e, t, i) { + "use strict"; + i.d(t, { + BW: function () { + return o; + }, + cr: function () { + return r; + }, + nf: function () { + return a; + }, + }); + var n = i(243302), + r = 2e4, + a = 5, + o = [n.Pd.Init, n.Pd.SubmitOk]; + }, + 773820: function (e, t, i) { + "use strict"; + i.d(t, { + K: function () { + return n; + }, + z: function () { + return r; + }, + }); + var n = (function (e) { + return ( + (e.Custom = "custom"), + (e.Regenerate = "regenerate"), + (e.Remix = "remix"), + (e.AddMore = "add_more"), + (e.Reprompt = "reprompt"), + (e.LipSync = "lip_sync"), + (e.PhotoLipSync = "photo_lip_sync"), + (e.VideoLipSync = "video_lip_sync"), + (e.Redub = "re_dub"), + (e.ActionCopy = "video_action_driver"), + (e.FrameInterpolation = "frame_interpolation"), + (e.Upscale = "upscale"), + (e.Clip = "clip"), + (e.ImageToVideo = "image_to_video"), + (e.AiMusic = "ai_music"), + (e.AiMusicReGenerate = "ai_music_regenerate"), + (e.VideoAudioEffect = "v2a_generate"), + (e.VideoAudioEffectReGenerate = "v2a_re_generate"), + (e.DeepSeekAgent = "agent"), + e + ); + })({}), + r = (function (e) { + return ( + (e.FirstFrame = "first_frame"), (e.LastFrame = "last_frame"), e + ); + })({}); + }, + 624515: function (e, t, i) { + "use strict"; + i.d(t, { + j: function () { + return S; + }, + }); + var n = i(139646), + r = i(625572), + a = i(639880), + o = i(789786), + s = i(351066), + l = i(182688), + c = i(740242), + d = i(331480), + u = i(208540), + f = i(509525), + h = i(586315), + p = i(869919), + v = i(76212), + m = i(243302), + g = i(202401), + _ = i(434712), + y = i(675601), + b = i(173590), + I = i(260963), + w = i(652660), + x = { + [p.zk.BGM]: { + featureKey: "to_video_bgm", + featureEntranceDetailSuffix: "-bgm-mix_audio_video", + }, + [p.zk.AudioEffect]: { + featureKey: "to_audio_effect", + featureEntranceDetailSuffix: "-audio_effect-mix_audio_video", + }, + }; + class S { + get taskData() { + return this.observableData.data; + } + get status() { + return this.taskData.status; + } + get findMixData() { + var e, t, i; + return null === (i = this.taskData.videoDetail) || void 0 === i + ? void 0 + : null === (t = i.audioList) || void 0 === t + ? void 0 + : null === + (e = t.find((e) => { + var { audio: t } = e; + return t.vid === this.taskData.inputParams.input.audioVid; + })) || void 0 === e + ? void 0 + : e.mixAudioVideo; + } + startTask() { + var e = this; + return (0, n._)(function* () { + try { + if (e.observableData.data.status !== s.C.INIT) + return (0, h.wf)(-1, "task can not start"); + var t, + i, + n, + a, + { + input: o, + submitId: c, + scene: d, + } = e.observableData.data.inputParams; + if (d === p.zk.AudioEffect && (yield e._handleAudioEffect())) + return (0, h.oW)(e.taskData); + var f = x[null != d ? d : p.zk.BGM], + m = yield e._dataService.mixAudioVideoTask( + { input: (0, r._)({}, o), submitId: c, scene: d }, + { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: f.featureKey, + feature_entrance: (0, v.b2)(), + feature_entrance_detail: "" + .concat((0, v.b2)()) + .concat(f.featureEntranceDetailSuffix), + }), + } + ); + if (!m.ok) + return ( + (0, I.z)(() => { + e.observableData.data.status = s.C.RETRYABLE_FAIL; + }), + null === (n = (a = e._hooks).onMixError) || + void 0 === n || + n.call(a), + m + ); + var g = (0, l.KZ)(m.value.task.status); + return ( + (0, I.z)(() => { + (e.id = m.value.historyRecordId), + (e.observableData.data.taskId = m.value.task.taskId), + (e.observableData.data.taskDetail = m.value.task), + (e.observableData.data.status = g); + }), + u.BW.includes(m.value.task.status) && + e._createAndExecuteWebsocketPollingManager(), + g === s.C.SUCCESS && e._pollSuccess(), + (0, h.oW)(e.taskData) + ); + } catch (n) { + return ( + null === (t = (i = e._hooks).onMixError) || + void 0 === t || + t.call(i), + (0, h.wf)(-1, "submit Task fail", n) + ); + } + })(); + } + retryTask() { + var e = this; + return (0, n._)(function* () { + if (e.observableData.data.status !== s.C.RETRYABLE_FAIL) { + var t, i; + return ( + null === (t = (i = e._hooks).onMixError) || + void 0 === t || + t.call(i), + (0, h.wf)(-1, "task can not Retry") + ); + } + return ( + (e.observableData.data.status = s.C.INIT), + (e.observableData.data.createdTime = Date.now()), + yield e.startTask() + ); + })(); + } + _pollSuccess() { + var e = this; + return (0, n._)(function* () { + if (!!e.taskData.inputParams.input.videoItemId) + try { + var t, + i, + n, + o = yield e._dataService.fetchDownloadTask({ + itemIdList: [e.taskData.inputParams.input.videoItemId], + }); + if (!o.ok) { + e._retryFunUntilErrorLimit(e._pollSuccess.bind(e)); + return; + } + e._pollErrorCount = 0; + var l = + null === (t = o.value.itemList) || void 0 === t + ? void 0 + : t[0]; + l && + ((0, I.z)(() => { + e.observableData.data = (0, a._)( + (0, r._)({}, e.observableData.data), + { status: s.C.SUCCESS, videoDetail: l } + ); + }), + null === (i = (n = e._hooks).onMixSuccess) || + void 0 === i || + i.call(n, e.taskData, e.findMixData)); + } catch (t) { + e._retryFunUntilErrorLimit(e._pollSuccess.bind(e)); + } + })(); + } + _pollProgress() { + var e = this; + return (0, n._)(function* () { + if (!!e.taskData.taskId) + try { + var t, + i, + n = yield e._dataService.queryTask({ + taskIdList: ["".concat(e.taskData.taskId)], + }); + if (!n.ok) { + e._retryFunUntilErrorLimit(e._pollProgress.bind(e)); + return; + } + var o = n.value.taskMap["".concat(e.taskData.taskId)]; + (e._pollErrorCount = 0), + u.BW.includes(o.task.status) && + setTimeout(() => { + e._pollProgress(); + }, u.cr), + (o.createdTime = + 0 === o.createdTime + ? e.observableData.data.createdTime + : o.createdTime); + var c = e._formateServerData(o), + d = (0, l.KZ)(o.task.status); + if (d === e.observableData.data.status) return; + (0, I.z)(() => { + e.observableData.data = (0, a._)( + (0, r._)({}, e.observableData.data), + { + status: d, + taskDetail: c.taskDetail, + createdTime: c.createdTime, + } + ); + }), + d === s.C.SUCCESS && + (null === (t = (i = e._hooks).onMixSuccess) || + void 0 === t || + t.call(i, e.taskData, e.findMixData)); + } catch (t) { + e._retryFunUntilErrorLimit(e._pollProgress.bind(e)); + } + })(); + } + _retryFunUntilErrorLimit(e) { + if (((this._pollErrorCount += 1), this._pollErrorCount < u.nf)) + setTimeout(() => { + e(); + }, u.cr); + else { + var t, i; + null === (t = (i = this._hooks).onMixError) || + void 0 === t || + t.call(i); + } + } + _formateServerData(e) { + var { task: t, createdTime: i } = e, + n = (0, l.KZ)(t.status); + return { + submitId: t.submitId, + status: n, + createdTime: i, + inputParams: { + input: { audioVid: "", videoItemId: "" }, + submitId: t.submitId, + }, + taskDetail: t, + }; + } + _createAndExecuteWebsocketPollingManager() { + var e = Date.now(); + this._containerService + .createInstance(w.Q, { + methodId: d.Te.AigcVideoTask, + websocketMessageHandler: (t, i) => + this.observableData.data.taskId !== i.taskId || + void 0 === i.taskStatus || + [m.Pd.Init, m.Pd.SubmitOk].includes(i.taskStatus) + ? { accepted: !1, done: !1 } + : ((0, c.bY)(this._containerService, { + taskName: "mix-audio-and-video", + taskId: this.observableData.data.taskId, + taskStatus: i.taskStatus, + duration: Date.now() - e, + }), + this._pollSuccess(), + { accepted: !0, done: !0 }), + onFallbackToPolling: (e) => { + (0, c.dz)(this._containerService, { + taskName: "mix-audio-and-video", + taskId: this.observableData.data.taskId, + reason: e, + }); + }, + pollingHandler: this._pollProgress.bind(this), + timeout: 18e4, + }) + .startListening((0, f.Tg)()); + } + _handleAudioEffect() { + var e = this; + return (0, n._)(function* () { + try { + var t, + i, + n, + o, + l, + c, + d = [e.observableData.data.inputParams.input.videoItemId]; + if (!(null == d ? void 0 : d.length)) return !1; + var u = yield e._dataService.fetchDownloadTask({ itemIdList: d }); + if ( + !u.ok || + !(null === (t = u.value.itemList) || void 0 === t + ? void 0 + : t[0]) + ) + return !1; + var { + itemList: [f], + } = u.value, + h = + null === (i = f.audioList) || void 0 === i + ? void 0 + : i.find((t) => { + var { audio: i } = t; + return ( + (null == i ? void 0 : i.vid) === + e.observableData.data.inputParams.input.audioVid + ); + }); + if ( + (null == h + ? void 0 + : null === (n = h.mixAudioVideo) || void 0 === n + ? void 0 + : n.status) === g.O.Fail + ) + return !1; + if ( + (null == h + ? void 0 + : null === (o = h.mixAudioVideo) || void 0 === o + ? void 0 + : o.status) === g.O.Success + ) + return ( + (0, I.z)(() => { + e.observableData.data = (0, a._)( + (0, r._)({}, e.observableData.data), + { status: s.C.SUCCESS, videoDetail: f } + ); + }), + null === (l = (c = e._hooks).onMixSuccess) || + void 0 === l || + l.call(c, e.taskData, e.findMixData), + !0 + ); + return yield e._waitForAudioEffectCompletion(d); + } catch (e) { + return !1; + } + })(); + } + _waitForAudioEffectCompletion(e) { + var { promise: t, resolve: i } = Promise.withResolvers(), + n = Date.now(); + return ( + this._containerService + .createInstance(w.Q, { + methodId: d.Te.VideoAudioMixed, + websocketMessageHandler: (e, t) => { + var { videoItemId: r, mixedVideoStatus: a, audioVid: o } = t, + { inputParams: s } = this.observableData.data, + { + input: { videoItemId: l, audioVid: d }, + } = s; + return l === r && + d === o && + [g.O.Success, g.O.Fail].includes(a) + ? a === g.O.Success + ? ((0, c.bY)(this._containerService, { + taskName: "mix-audio-and-video", + taskId: this.observableData.data.taskId, + taskStatus: + t.mixedVideoStatus === g.O.Success + ? m.Pd.FinalSuccess + : m.Pd.FinalGenerateFail, + duration: Date.now() - n, + }), + this._pollSuccess(), + i(!0), + { accepted: !0, done: !0 }) + : (i(!1), { accepted: !0, done: !0 }) + : { accepted: !1, done: !1 }; + }, + onFallbackToPolling: (e) => { + (0, c.dz)(this._containerService, { + taskName: "mix-audio-and-video", + taskId: this.observableData.data.taskId, + reason: e, + }), + i(!1); + }, + pollingHandler: () => {}, + timeout: 1e4, + }) + .startListening((0, f.Tg)()), + t + ); + } + constructor(e, t, i, n, r) { + (this._containerService = i), + (this._dataService = n), + (this._historyDataService = r), + (this._pollErrorCount = 0), + (this.id = e.data.submitId), + (this.observableData = { data: e.data }), + (this._hooks = t); + } + } + S = (0, o.gn)( + [ + (0, o.fM)(2, _.t), + (0, o.fM)(3, y.g), + (0, o.fM)(4, b.m), + (0, o.w6)("design:type", Function), + (0, o.w6)("design:paramtypes", [ + "undefined" == typeof MixAudioAndVideoParams + ? Object + : MixAudioAndVideoParams, + "undefined" == typeof MixAudioAndVideoHooks + ? Object + : MixAudioAndVideoHooks, + void 0 === _.t ? Object : _.t, + void 0 === y.g ? Object : y.g, + void 0 === b.m ? Object : b.m, + ]), + ], + S + ); + }, + 584531: function (e, t, i) { + "use strict"; + i.d(t, { + Y: function () { + return v; + }, + o: function () { + return g; + }, + }); + var n = i(625572), + r = i(639880), + a = i(549654), + o = i(733787), + s = i(117275), + l = i(936690), + c = i(243302), + d = i(773820), + u = i(182688), + f = i(737451), + h = i(260963), + p = i(464974); + function v(e) { + var t, + i, + s, + l, + c, + u, + p, + v, + m, + g, + _, + y, + b, + I, + w, + x, + { createdTime: S, task: M } = e, + { originalInput: C, taskPayload: T, lipSyncInfo: A, priority: k } = M, + P = + null == C + ? void 0 + : null === (t = C.videoGenInputs[0]) || void 0 === t + ? void 0 + : t.boximator, + E = null == C ? void 0 : C.videoGenInputs[0].i2vOpt, + D = null == C ? void 0 : C.videoGenInputs[0].v2vOpt, + R = { + modelReqKey: C.modelReqKey, + textPrompt: + null === (i = C.videoGenInputs[0]) || void 0 === i + ? void 0 + : i.prompt, + inputImages: [ + ( + null == C + ? void 0 + : null === (s = C.videoGenInputs[0]) || void 0 === s + ? void 0 + : s.firstFrameImage + ) + ? (0, r._)( + (0, n._)( + {}, + null == C + ? void 0 + : null === (l = C.videoGenInputs[0]) || void 0 === l + ? void 0 + : l.firstFrameImage + ), + { + type: d.z.FirstFrame, + coverUrlMap: + null === (c = e.firstFrameImage) || void 0 === c + ? void 0 + : c.coverUrlMap, + } + ) + : void 0, + ( + null == C + ? void 0 + : null === (u = C.videoGenInputs[0]) || void 0 === u + ? void 0 + : u.endFrameImage + ) + ? (0, r._)( + (0, n._)( + {}, + null == C + ? void 0 + : null === (p = C.videoGenInputs[0]) || void 0 === p + ? void 0 + : p.endFrameImage + ), + { + type: d.z.LastFrame, + coverUrlMap: + null === (v = e.lastFrameImage) || void 0 === v + ? void 0 + : v.coverUrlMap, + } + ) + : void 0, + ].filter(Boolean), + motionSpeed: + a.E[ + null !== + (x = + null == C + ? void 0 + : null === (m = C.videoGenInputs[0]) || void 0 === m + ? void 0 + : m.motionSpeed) && void 0 !== x + ? x + : o.BY.Moderate + ], + videoRatio: null == C ? void 0 : C.videoAspectRatio, + seed: null == C ? void 0 : C.seed, + motionType: + null == C + ? void 0 + : null === (g = C.videoGenInputs[0]) || void 0 === g + ? void 0 + : g.lensMotionType, + createdTime: S, + priority: k, + scene: null == T ? void 0 : T.taskScene, + extra: null == T ? void 0 : T.taskExtra, + lipSyncExtra: (0, f.Z)(null == A ? void 0 : A.lipSyncExtra) + ? JSON.parse(null == A ? void 0 : A.lipSyncExtra) + : null == A + ? void 0 + : A.lipSyncExtra, + i2vOpt: (0, h.ZN)(E), + v2vOpt: (0, h.ZN)(D), + originFps: + null == C + ? void 0 + : null === (_ = C.videoGenInputs[0]) || void 0 === _ + ? void 0 + : _.fps, + originDurationMs: + null == C + ? void 0 + : null === (y = C.videoGenInputs[0]) || void 0 === y + ? void 0 + : y.durationMs, + videoMode: + null == C + ? void 0 + : null === (b = C.videoGenInputs[0]) || void 0 === b + ? void 0 + : b.videoMode, + motionIntensity: + null == C + ? void 0 + : null === (I = C.videoGenInputs[0]) || void 0 === I + ? void 0 + : I.cameraStrength, + boximator: P + ? { + boxes: P.boxes.map((e) => ({ + color: e.color, + boundingBox: e.boxes.map((e) => ({ + boxEdgeType: e.edgeType, + vertex: e.vertexs, + })), + motionPath: e.motionPath, + prompt: e.prompt, + })), + draft: P.draft, + boximatorImage: P.boximatorImage, + draftFile: P.draftFile + ? { + fileUri: P.draftFile.fileUri, + fileUrl: P.draftFile.fileUrl, + } + : void 0, + } + : void 0, + }; + return ( + (null === (w = R.inputImages) || void 0 === w ? void 0 : w.length) === + 0 && (R.inputImages = void 0), + R + ); + } + function m(e) { + var t, i; + if ( + !(null == e + ? void 0 + : null === (i = e.aigcParams) || void 0 === i + ? void 0 + : null === (t = i.text2videoParams) || void 0 === t + ? void 0 + : t.videoGenInputs) + ) + return e; + e.aigcParams.text2videoParams.videoGenInputs.forEach((e) => { + var t, + i, + a, + { aigcImageParams: o } = + null !== + (i = + null === (t = e.firstFrameImage) || void 0 === t + ? void 0 + : t.aigcImage) && void 0 !== i + ? i + : {}; + if (!!(null == o ? void 0 : o.blendParams)) { + var c = (0, s.o)({ + prompt: (0, p.I)(o), + abilityList: + null !== (a = o.blendParams.abilityList) && void 0 !== a + ? a + : [], + promptPlaceholderInfoList: + o.blendParams.promptPlaceholderInfoList, + }); + (0, l.V8)(o, c.prompt), + (o.blendParams = (0, r._)((0, n._)({}, o.blendParams), { + abilityList: c.abilityList, + promptPlaceholderInfoList: c.promptPlaceholderInfoList, + })); + } + }); + } + function g(e) { + var t, + i, + n = (0, u.KZ)(e.task.status), + { historyRecordId: r, task: a, assetOption: o } = e, + { submitId: s, taskPayload: l, taskId: d } = a; + null == l || l.taskExtra; + var f = v(e); + return ( + m(e.videoDreamina), + { + id: r, + submitId: s, + taskId: d, + status: n, + inputParams: f, + createdTime: e.createdTime, + firstFrameImage: ( + null === (t = e.firstFrameImage) || void 0 === t + ? void 0 + : t.imageUrl + ) + ? e.firstFrameImage + : void 0, + lastFrameImage: ( + null === (i = e.lastFrameImage) || void 0 === i + ? void 0 + : i.imageUrl + ) + ? e.lastFrameImage + : void 0, + hasFavorited: null == o ? void 0 : o.hasFavorited, + taskDetail: e.task, + videoDetail: e.videoDreamina, + historyGroupKeyMd5: e.historyGroupKeyMd5, + generateType: e.generateType, + firstGenerateType: e.firstGenerateType, + isDeleted: e.task.status === c.Pd.Deleted, + forecastGenerateCost: e.forecastGenerateCost, + forecastQueueCost: e.forecastQueueCost, + failCode: e.failCode, + } + ); + } + }, + 3329: function (e, t, i) { + "use strict"; + function n(e) { + return "lip_sync" === e.scene + ? "to_video-lipsync" + : e.input.videoGenInputs.firstFrameImage || + e.input.videoGenInputs.endFrameImage + ? "image_to_video" + : "text_to_video"; + } + i.d(t, { + r: function () { + return n; + }, + }); + }, + 566291: function (e, t, i) { + "use strict"; + i.d(t, { + Y: function () { + return a; + }, + }); + var n = i(799108), + r = i(369617), + a = (e) => { + !e.ok && + String(e.code) === n.HR.GenerateViolation && + r.s.warningByThrottle({ style: { zIndex: 9999 }, content: e.msg }); + }; + }, + 97075: function (e, t, i) { + "use strict"; + var n = i(869919), + r = i(724196), + a = i(790915), + o = i(106621), + s = i(280275), + l = i(611422), + c = i(179419), + d = i(19205); + class u { + convert() { + return this._params.scene === n.eA.LipSync + ? new r.D(this._params).convert() + : this._params.scene === n.eA.VideoTemplate + ? new a.r(this._params).convert() + : this._params.scene === n.eA.InsertFrame + ? new o.C(this._params).convert() + : this._params.scene === n.eA.SuperResolution + ? new s._(this._params).convert() + : this._params.scene === n.eA.LipSyncImage || + this._params.scene === n.eA.LipSyncUserVideo + ? new l.F(this._params).convert() + : this._params.scene === n.eA.VideoExtend + ? new c.Q(this._params).convert() + : new d.b(this._params).convert(); + } + constructor(e) { + this._params = e; + } + } + t.Z = u; + }, + 932683: function (e, t, i) { + "use strict"; + i.d(t, { + E: function () { + return r; + }, + N: function () { + return a; + }, + }); + var n = i(333597), + r = (function (e) { + return ( + (e[(e.All = 1)] = "All"), + (e[(e.Generate = 2)] = "Generate"), + (e[(e.SuperResolution = 3)] = "SuperResolution"), + (e[(e.Favoraite = 4)] = "Favoraite"), + e + ); + })({}), + a = (0, n.yh)("image-assets-history-service"); + }, + 200294: function (e, t, i) { + "use strict"; + i.d(t, { + d: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("prefetch-request-service"); + }, + 993308: function (e, t, i) { + "use strict"; + i.d(t, { + _: function () { + return g; + }, + s: function () { + return m; + }, + }); + var n = i(139646), + r = i(625572), + a = i(639880), + o = i(789786), + s = i(513294), + l = i(734696), + c = i(586315), + d = i(241047), + u = i(875488), + f = i(863896), + h = i(902519), + p = i(884569), + v = { + offset: 0, + count: d.iV.count, + imageTypeList: [...d.fk[h.Ym.Template]], + }, + m = "homepage"; + class g extends l.JT { + get secUid() { + return this._params.secUid; + } + get expiredAt() { + return this._expiredAt; + } + isMatchByParams(e) { + return this._params.secUid === e.secUid; + } + isMatchByRequestParams(e) { + return ( + !( + !this._paramsHomepage || + e.secUid !== this._paramsHomepage.secUid || + e.count !== this._paramsHomepage.count || + e.offset !== this._paramsHomepage.offset || + (void 0 !== e.imageType && + void 0 !== this._paramsHomepage.imageType && + e.imageType !== this._paramsHomepage.imageType) || + (Array.isArray(e.imageTypeList) && + Array.isArray(this._paramsHomepage.imageTypeList) && + e.imageTypeList.join("_") !== + this._paramsHomepage.imageTypeList.join("_")) + ) && + (void 0 === e.imageInfo || + void 0 === this._paramsHomepage.imageInfo || + e.imageInfo.format === this._paramsHomepage.imageInfo.format) && + !0 + ); + } + _fetchHomepage() { + var e = this; + return (0, n._)(function* () { + return ( + (e._paramsHomepage = (0, a._)((0, r._)({}, v), { + secUid: e._params.secUid, + })), + (e._paramsHomepage.imageInfo = yield (0, u.FI)()), + e._homePageService.homePageRepository.getDataList( + (0, a._)((0, r._)({}, e._paramsHomepage), { + imageTypeList: [...e._paramsHomepage.imageTypeList], + imageInfo: (0, r._)({}, e._paramsHomepage.imageInfo), + }) + ) + ); + })(); + } + _clearHomepage() { + if (!this._paramsHomepage) return; + } + dispose() { + this._clearHomepage(), super.dispose(); + } + constructor(e, t) { + super(), + (this._params = e), + (this._homePageService = t), + (this.displayName = m), + (this._onSuccess = this._store.add(new s.Q())), + (this.onSuccess = this._onSuccess.event), + (this._onFailed = this._store.add(new s.Q())), + (this.onFailed = this._onFailed.event), + (this._onDidDone = this._store.add(new s.Q())), + (this.onDidDone = this._onDidDone.event), + (this.pRequest = this._fetchHomepage()), + this.pRequest.then( + (e) => { + (this._expiredAt = Date.now() + f.Q), + e.ok + ? this._onSuccess.fire({ + value: e, + expiredAt: this._expiredAt, + }) + : this._onFailed.fire({ + value: e, + expiredAt: this._expiredAt, + }), + this._onDidDone.fire({ + value: e, + expiredAt: this._expiredAt, + }); + }, + (e) => { + this._onFailed.fire({ + value: (0, c.Mx)(-1, "prefetech failed", e), + expiredAt: -1, + }), + this._onDidDone.fire({ + value: (0, c.Mx)(-1, "prefetech failed", e), + expiredAt: -1, + }); + } + ); + } + } + g = (0, o.gn)( + [ + (0, o.fM)(1, p.o), + (0, o.w6)("design:type", Function), + (0, o.w6)("design:paramtypes", [ + "undefined" == typeof IHomepagePrefetchTaskParams + ? Object + : IHomepagePrefetchTaskParams, + void 0 === p.o ? Object : p.o, + ]), + ], + g + ); + }, + 161041: function (e, t, i) { + "use strict"; + i.d(t, { + Z: function () { + return u; + }, + s: function () { + return d; + }, + }); + var n = i(625572), + r = i(789786), + a = i(513294), + o = i(734696), + s = i(586315), + l = i(758261), + c = i(863896), + d = "user-info"; + class u extends o.JT { + get secUid() { + return this._params.secUid; + } + get expiredAt() { + return this._expiredAt; + } + isMatchByParams(e) { + return this._params.secUid === e.secUid; + } + isMatchByRequestParams(e) { + return ( + !!this._requestParams && e.secUid === this._requestParams.secUid + ); + } + _fetchUserInfo() { + return ( + (this._requestParams = { secUid: this._params.secUid }), + this._userService.repository.getUserInfo( + (0, n._)({}, this._requestParams) + ) + ); + } + _clearUserInfo() { + if (!this._requestParams) return; + } + dispose() { + this._clearUserInfo(), super.dispose(); + } + constructor(e, t) { + super(), + (this._params = e), + (this._userService = t), + (this.displayName = d), + (this._onSuccess = this._store.add(new a.Q())), + (this.onSuccess = this._onSuccess.event), + (this._onFailed = this._store.add(new a.Q())), + (this.onFailed = this._onFailed.event), + (this._onDidDone = this._store.add(new a.Q())), + (this.onDidDone = this._onDidDone.event), + (this.pRequest = this._fetchUserInfo()), + this.pRequest.then( + (e) => { + (this._expiredAt = Date.now() + c.Q), + e.ok + ? this._onSuccess.fire({ + value: e, + expiredAt: this._expiredAt, + }) + : this._onFailed.fire({ value: e, expiredAt: -1 }), + this._onDidDone.fire({ + value: e, + expiredAt: this._expiredAt, + }); + }, + (e) => { + this._onFailed.fire({ + value: (0, s.Mx)(-1, "prefetech failed", e), + expiredAt: -1, + }), + this._onDidDone.fire({ + value: (0, s.Mx)(-1, "prefetech failed", e), + expiredAt: -1, + }); + } + ); + } + } + u = (0, r.gn)( + [ + (0, r.fM)(1, l.h), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + "undefined" == typeof IUserInfoPrefetchTaskParams + ? Object + : IUserInfoPrefetchTaskParams, + void 0 === l.h ? Object : l.h, + ]), + ], + u + ); + }, + 738210: function (e, t, i) { + "use strict"; + i.d(t, { + u: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("record-store-service"); + }, + 214090: function (e, t, i) { + "use strict"; + i.d(t, { + p: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("dreamina-request-cache-service"); + }, + 970419: function (e, t, i) { + "use strict"; + i.d(t, { + G: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("server-injected-data-service"); + }, + 325563: function (e, t, i) { + "use strict"; + i.d(t, { + v: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("user-publish-authority-service"); + }, + 532185: function (e, t, i) { + "use strict"; + i.d(t, { G: () => O }); + var n = i("139646"), + r = i("789786"), + a = i("2910"), + o = i("41723"), + s = i.n(o), + l = i("260963"), + c = i("518376"), + d = i("538638"), + u = i("166320"), + f = i("882644"), + h = i("434712"), + p = i("77922"), + v = i("257843"), + m = i("675601"), + g = i("657600"), + _ = i("474956"), + y = i("761615"), + b = i("949274"), + I = i("369617"), + w = i("869409"), + x = i("243302"), + S = i("283349"), + M = i("128468"), + C = i("243494"), + T = i("434487"), + A = i("800088"), + k = i("738210"), + P = i("104818"), + E = i("114527"), + D = i("54061"), + R = 50; + class N { + get listData() { + return this._listData; + } + get ready() { + return this._ready; + } + get loading() { + return this._loading; + } + get hasMore() { + return this._queryToken.hasMore; + } + get isError() { + return this._isError; + } + get _onlyFavorited() { + return this._type === d.F.Favor; + } + init() { + return this.ready ? Promise.resolve() : this.loadMore(); + } + reInit() { + return ( + (0, l.z)(() => { + (this._ready = !1), + (this._loading = !1), + (this._isError = !1), + this._resetQueryToken(), + (this._listData = this._listData.slice(0, R)); + }), + this.init() + ); + } + loadMore() { + var e = this; + return (0, n._)(function* () { + if (e.loading || !e.hasMore) return (0, l.gx)(() => !e.loading); + (e._loading = !0), (e._isError = !1); + try { + var t = Date.now(), + i = yield e._historyService.getAssetList({ + assetType: w.d.Video, + offset: e._queryToken.offset, + count: e._queryToken.config.limit, + direction: e._queryToken.config.direction, + option: { + orderBy: e._queryToken.config.orderBy, + onlyFavorited: e._queryToken.config.onlyFavorited, + withTaskStatus: [x.Pd.FinalSuccess], + }, + assetTypeList: [w.d.VideoBGM, w.d.VideoAudioEffect], + }); + (0, E.K)(e._containerService, { + cost: Date.now() - t, + assetType: w.d.Video, + }), + i.ok + ? ((e._queryToken = (0, C.ib)( + e._queryToken.config, + i.value.list.filter((e) => { + var t; + return ( + (0, S.w)(e.generateType) && + !!(null === (t = e.itemList) || void 0 === t + ? void 0 + : t.length) + ); + }), + { hasMore: i.value.hasMore, offset: i.value.offset } + )), + e._addResource(e._queryToken.value), + e._setListData(e._queryToken.value)) + : (e._isError = !0); + } catch (t) { + e._isError = !0; + } finally { + (e._loading = !1), (e._ready = !0); + } + })(); + } + markFavorite(e, t) { + var i = {}, + n = () => { + (0, l.z)(() => { + this.listData.forEach((e) => { + void 0 !== i[e.historyRecordId] && + (e.assetOption = { hasFavorited: i[e.historyRecordId] }); + }); + }); + }, + r = new Set(e); + return ( + this.listData.forEach((e) => { + if (r.has(e.historyRecordId)) { + var n; + (i[e.historyRecordId] = !!(null === (n = e.assetOption) || + void 0 === n + ? void 0 + : n.hasFavorited)), + (e.assetOption = { hasFavorited: t }); + } + }), + { + onError: () => n(), + onSuccess: (e) => { + e.forEach((e) => delete i[e]), n(); + }, + } + ); + } + markPublished(e, t) { + var i = this.listData.findIndex((t) => t.aigcItemId === e); + this.listData[i] && + ((this.listData[i].itemList[0].commonAttr.publishedItemId = t), + this.listData[i].videoDreamina && + (this.listData[i].videoDreamina.publishedItemId = t)); + } + addAssets(e) { + if (e) { + var t = new Set(this.listData.map((e) => e.historyRecordId)), + i = e.filter((e) => !t.has(e.historyRecordId)); + this._setListData(this.listData.concat(i)); + } + } + deleteAssets(e) { + this._listData = this._listData.filter((t) => { + var { historyRecordId: i } = t; + return !e.includes(i); + }); + } + getRecord(e) { + return this._listData.find((t) => t.historyRecordId === e); + } + _resetQueryToken() { + return ( + (this._queryToken = (0, C.ib)( + { + limit: R, + onlyFavorited: this._onlyFavorited, + orderBy: w.Q.CreateAt, + direction: x.KB.PageUp, + }, + [], + { hasMore: !0, offset: void 0 } + )), + this._queryToken + ); + } + _setListData(e) { + if (!this._ready && this.listData.length) { + var t = this.listData + .filter( + (t) => !e.some((e) => e.historyRecordId === t.historyRecordId) + ) + .map((e) => e.historyRecordId); + this.deleteAssets(t); + } + e + .filter((e) => { + var { task: t } = e; + return t.status === x.Pd.FinalSuccess; + }) + .forEach((e) => { + var t = this.listData.findIndex( + (t) => t.historyRecordId === e.historyRecordId + ); + -1 !== t ? (this.listData[t] = e) : this.listData.push(e), + this._registerRecordOrTaskToStore(e); + }), + this.listData.sort((e, t) => t.createdTime - e.createdTime); + } + _addResource(e) { + e.forEach((e) => { + (0, T.U3)( + this._resourceService, + _._g.VideoDreamina, + e.videoDreamina + ); + }); + } + _registerRecordOrTaskToStore(e) { + try { + var t = this._containerService.createInstance(A.U, { + logger: this._logger, + serviceData: e, + option: { mode: M.JU.Workbench }, + }); + this._recordStoreService.setVideoTaskById(t.taskData.submitId, t); + } catch (t) { + this._logger.error( + "generate task instance fail, taskId: ".concat(e.id) + ); + } + } + constructor(e, t, i, n, r, a) { + (this._type = e), + (this._resourceService = t), + (this._containerService = i), + (this._loggerService = n), + (this._recordStoreService = r), + (this._historyService = a), + (this._listData = []), + (this._ready = !1), + (this._loading = !1), + (this._isError = !1), + (0, l.rC)(this), + (this._logger = + this._loggerService.createLogger("video-asset-list")), + (this._queryToken = this._resetQueryToken()); + } + } + (0, r.gn)( + [l.LO, (0, r.w6)("design:type", Array)], + N.prototype, + "_listData", + void 0 + ), + (0, r.gn)([l.LO], N.prototype, "_ready", void 0), + (0, r.gn)([l.LO], N.prototype, "_loading", void 0), + (0, r.gn)([l.LO], N.prototype, "_isError", void 0), + (0, r.gn)( + [ + l.aD, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", []), + (0, r.w6)("design:returntype", Promise), + ], + N.prototype, + "loadMore", + null + ), + (0, r.gn)( + [ + l.aD, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Array, Boolean]), + (0, r.w6)("design:returntype", void 0), + ], + N.prototype, + "markFavorite", + null + ), + (0, r.gn)( + [ + l.aD, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [String, String]), + (0, r.w6)("design:returntype", void 0), + ], + N.prototype, + "markPublished", + null + ), + (0, r.gn)( + [ + l.aD, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Array]), + (0, r.w6)("design:returntype", void 0), + ], + N.prototype, + "_setListData", + null + ), + (0, r.gn)( + [ + l.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + "undefined" == typeof IDreaminaGenerateVideoRecord + ? Object + : IDreaminaGenerateVideoRecord, + ]), + (0, r.w6)("design:returntype", void 0), + ], + N.prototype, + "_registerRecordOrTaskToStore", + null + ), + (N = (0, r.gn)( + [ + (0, r.fM)(1, p.c), + (0, r.fM)(2, h.t), + (0, r.fM)(3, D.VZ), + (0, r.fM)(4, k.u), + (0, r.fM)(5, P.P), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + void 0 === d.F ? Object : d.F, + void 0 === p.c ? Object : p.c, + void 0 === h.t ? Object : h.t, + void 0 === D.VZ ? Object : D.VZ, + void 0 === k.u ? Object : k.u, + void 0 === P.P ? Object : P.P, + ]), + ], + N + )); + var L = i("561658"), + j = i("719494"); + class O { + static markPublished(e, t) { + if (!!this._instance) this._instance.markPublished(e, t); + } + preloadWithCheck(e, t) { + return t.reInit + ? this.reInit() + : this._allInstance.ready && this._favorInstance.ready + ? Promise.all([Promise.resolve(), Promise.resolve()]) + : this.init(); + } + init() { + return Promise.all([ + this._allInstance.init(), + this._favorInstance.init(), + ]); + } + reInit() { + return Promise.all([ + this._allInstance.reInit(), + this._favorInstance.reInit(), + ]); + } + getInstance(e) { + return { + [d.F.ALL]: this._allInstance, + [d.F.Favor]: this._favorInstance, + }[e]; + } + changeActiveInstance(e) { + this.activeType = e; + var t = { + [d.F.ALL]: this._allInstance, + [d.F.Favor]: this._favorInstance, + }; + return ( + (0, l.z)(() => { + this.activeInstance = t[e]; + }), + this.activeInstance + ); + } + markPublished(e, t) { + this._allInstance.markPublished(e, t), + this._favorInstance.markPublished(e, t); + } + markFavorite(e, t) { + var i = [ + this._allInstance.markFavorite(e, t), + this._favorInstance.markFavorite(e, t), + ], + { activeInstance: r } = this; + return new Promise((a, o) => { + var s = this; + (0, y.uz)({ + containerService: this._containerService, + service: this._assetService, + ids: e.map((e) => ({ id: e, type: u.Eu.Video })), + hasFavorited: t, + onSuccess: (function () { + var e = (0, n._)(function* (e) { + var n = yield s._lazyContentGenerationService.getInstance(); + if (t) { + var o = r.listData.filter((t) => + e.includes(t.historyRecordId) + ); + s._favorInstance.addAssets(o); + } else s._favorInstance.deleteAssets(e); + i.forEach((t) => (null == t ? void 0 : t.onSuccess(e))), + n.feedManager.markFavorite(e, t, !1), + a(e); + }); + return function (t) { + return e.apply(this, arguments); + }; + })(), + onError: () => { + i.forEach((e) => (null == e ? void 0 : e.onError())), o(); + }, + }); + }); + } + downloadAssets(e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : "dreamina_".concat(s()().format("YYYYMMDDHHmmss")), + i = this; + return (0, n._)(function* () { + var n = yield i._createExportTask( + t, + e.map((e) => { + var t; + return { + type: f.z.AIGCHistory, + packFileName: "" + .concat( + (0, j.Lr)( + null !== + (t = e.task.originalInput.videoGenInputs[0].prompt) && + void 0 !== t + ? t + : "", + 100 + ), + "_" + ) + .concat(e.historyRecordId), + aigcHistoryItem: { + historyId: e.historyRecordId, + itemId: e.videoDreamina.aigcItemId, + }, + }; + }) + ); + n && (yield i._getCreateTaskPolling(n, t)); + })(); + } + deleteAssets(e) { + var t = this; + return (0, n._)(function* () { + return (yield t._videoService.deleteTask({ idList: e })).ok + ? (e.forEach((e) => + t._recordStoreService.deleteUnifiedRecordById(e) + ), + yield t._clearAssetsInListManager(e), + I.s.success(b.ZP.t("video_deleted_toast", {}, "Deleted")), + !0) + : (I.s.error( + b.ZP.t( + "video_no_internet_connection", + {}, + "No Internet Connection" + ) + ), + !1); + })(); + } + _clearAssetsInListManager(e) { + var t = this; + return (0, n._)(function* () { + var i = yield t._lazyContentGenerationService.getInstance(); + t._allInstance.deleteAssets(e), + t._favorInstance.deleteAssets(e), + e.forEach((e) => { + i.feedManager.deleteData(e, !1); + }); + })(); + } + getResourceInstance(e) { + return this._resourceService.get(e, _._g.VideoDreamina); + } + _createExportTask(e, t) { + var i = this; + return (0, n._)(function* () { + var [n, r] = + (yield i._dreaminaStoryExportMaterialsDataService.createTask({ + packFileName: e, + materialList: t, + })).pair(); + if (n) { + I.s.warning( + b.ZP.t( + "result_toast_saved_fail_retry", + {}, + "Couldn\u2019t download. Try again." + ) + ); + return; + } + return r.taskId; + })(); + } + _getCreateTaskPolling(e, t) { + var i = this; + return (0, n._)(function* () { + var [n, r] = + (yield i._dreaminaStoryExportMaterialsDataService.getTask({ + taskIdList: [e], + })).pair(); + if (n) { + I.s.warning( + b.ZP.t( + "result_toast_saved_fail_retry", + {}, + "Couldn\u2019t download. Try again." + ) + ); + return; + } + var { taskMap: a } = r, + [{ status: o, payload: s }] = Object.values(a); + if (o === f.w.FinalSuccess) { + i._download(s.result.downloadUrl, t), + I.s.success(b.ZP.t("video_downloaded_toast", {}, "Downloaded")); + return; + } + if (o === f.w.Fail) { + I.s.warning( + b.ZP.t( + "result_toast_saved_fail_retry", + {}, + "Couldn\u2019t download. Try again." + ) + ); + return; + } + yield (0, c._)(1e3), yield i._getCreateTaskPolling(e, t); + })(); + } + _download(e, t) { + var i = document.createElement("a"); + (i.href = (0, a.C)(e, null, { + logType: "js.href/src", + reportOnly: "false", + blackConfig: "{}", + configMode: "merge", + isCloseSSRReport: !1, + bid: "cc_dreamina", + region: "cn", + urlLimit: "-1", + htmlLimit: "-1", + isSaveValidUrl: !1, + isRuntimeLog: !1, + isDOMParser: !1, + escapeRule: "escape-report", + })), + i.setAttribute("download", t), + document.body.appendChild(i), + i.click(), + document.body.removeChild(i); + } + constructor(e, t, i, n, r, a, o) { + (this._containerService = e), + (this._resourceService = t), + (this._assetService = i), + (this._videoService = n), + (this._dreaminaStoryExportMaterialsDataService = r), + (this._lazyContentGenerationService = a), + (this._recordStoreService = o), + (this.activeType = d.F.ALL), + (this._allInstance = this._containerService.createInstance( + N, + d.F.ALL + )), + (this._favorInstance = this._containerService.createInstance( + N, + d.F.Favor + )), + (this.activeInstance = this._allInstance), + (0, l.rC)(this, { + activeType: l.LO, + activeInstance: l.LO, + changeActiveInstance: l.aD, + }), + (O._instance = this); + } + } + (O._instance = void 0), + (O = (0, r.gn)( + [ + (0, r.fM)(0, h.t), + (0, r.fM)(1, p.c), + (0, r.fM)(2, v.K), + (0, r.fM)(3, m.g), + (0, r.fM)(4, g._), + (0, r.fM)(5, L.r), + (0, r.fM)(6, k.u), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + void 0 === h.t ? Object : h.t, + void 0 === p.c ? Object : p.c, + void 0 === v.K ? Object : v.K, + void 0 === m.g ? Object : m.g, + void 0 === g._ ? Object : g._, + void 0 === L.r ? Object : L.r, + void 0 === k.u ? Object : k.u, + ]), + ], + O + )); + }, + 648326: function (e, t, i) { + "use strict"; + i.d(t, { p: () => q }); + var n = i("139646"), + r = i("789786"), + a = i("241047"), + o = i("645968"), + s = i("214090"), + l = i("417699"), + c = i("222721"), + d = i("970419"), + u = i("19658"), + f = i("625572"), + h = i("639880"), + p = i("260963"), + v = i("875488"), + m = i("791628"), + g = i("586315"), + _ = i("927457"), + y = i("7197"), + b = i("757330"), + I = { params: "__get_explore_params", result: "__get_explore_result" }, + w = { params: "__get_feed_params", result: "__get_feed_result" }; + function x(e) { + return S.apply(this, arguments); + } + function S() { + return (S = (0, n._)(function* (e) { + var t, + i, + { params: n, result: r } = k.includes(e.categoryId) ? I : w, + a = window[n]; + if ( + (null == a ? void 0 : a.category_id) !== e.categoryId || + (null == a ? void 0 : a.offset) !== e.offset || + (null == a + ? void 0 + : null === (t = a.image_info) || void 0 === t + ? void 0 + : t.format) !== + (null === (i = e.imageInfo) || void 0 === i ? void 0 : i.format) + ) + return Promise.resolve((0, g.wf)(-1, "request params mismatched")); + if (((window[n] = void 0), !window[r])) + try { + yield window.pExploreFeedList; + } catch (e) { + (0, _.P)(e); + } + var o = window[r]; + if (((window[r] = void 0), !o)) + return Promise.resolve( + (0, g.wf)(-1, "failed to retrieve jsonp result") + ); + if ("0" !== o.ret) + return Promise.resolve((0, g.wf)(Number(o.ret), o.msg)); + var s = yield (0, y.G)(o.data, o.logid, o.cache_sync_token), + l = (0, b.s)(s); + return Promise.resolve((0, g.oW)(l)); + })).apply(this, arguments); + } + var M = i("538337"), + C = i("433965"), + T = i("826717"), + A = i("76931"), + k = [11222, 11190]; + class P { + triggerRecommendType(e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] && arguments[1]; + k.includes(e) && !this._envService.isOversea + ? this._setRecommendType(!0) + : this._setRecommendType(!1), + this._setDisableCache(t); + } + _setRecommendType(e) { + this._useRecommendApi = e; + } + _setDisableCache(e) { + this._disableCache = e; + } + get _fetchFeedList() { + var e = !!new URLSearchParams(location.search).get("isDebug"); + return this._requestCacheService.wrapperFetchFuncWithCache({ + fetchFunc: this._feedService.feedRepository.getFeedList.bind( + this._feedService.feedRepository + ), + calcRequestCacheKey: (e) => { + var t = (0, M.SZ)(e); + return "dreamina_inspairation_getFeedList_" + .concat(this._envService.region, "_") + .concat(this._envService.appEnv, "_") + .concat(t); + }, + shouldDisableCache: () => !0, + onOriginRequestDone: (e) => { + if (!!e.ok) { + var t, + i, + { itemList: n } = e.value, + r = new Map(); + for (var a of n || []) + r.set( + null !== + (i = + null === (t = a.commonAttr) || void 0 === t + ? void 0 + : t.id) && void 0 !== i + ? i + : a.key, + a + ); + this.itemList.some((e) => { + var t = (0, C.w3)(e) ? e.key : e.commonAttr.id, + i = r.get(t); + return ( + (null == i ? !!void 0 : !!i.statistic) && + (e.statistic.usageNum !== i.statistic.usageNum || + e.statistic.favoriteNum !== i.statistic.favoriteNum || + e.statistic.hasFavorited !== i.statistic.hasFavorited) + ); + }) && + (0, p.z)(() => { + this.itemList = this.itemList.map((e) => { + var t, + i = (0, C.w3)(e) ? e.key : e.commonAttr.id, + n = r.get(i); + return n + ? (0, h._)((0, f._)({}, e), { + statistic: + null !== (t = null == n ? void 0 : n.statistic) && + void 0 !== t + ? t + : e.statistic, + }) + : (0, f._)({}, e); + }); + }); + } + }, + cacheExpirationDuration: 432e5, + minUseCacheThresholdTime: 0, + shouldLogDebugInfo: e, + }); + } + get _fetchRecommendFeedList() { + var e = !!new URLSearchParams(location.search).get("isDebug"); + return this._requestCacheService.wrapperFetchFuncWithCache({ + fetchFunc: + this._feedService.feedRepository.getFeedListForRecommend.bind( + this._feedService.feedRepository + ), + calcRequestCacheKey: (e) => { + var t = (0, M.SZ)(e); + return "dreamina_inspairation_recommennd_feedList_" + .concat(this._envService.region, "_") + .concat(this._envService.appEnv, "_") + .concat(t); + }, + shouldDisableCache: () => !0, + onOriginRequestDone: (e) => { + if (!!e.ok) { + var t, + i, + { itemList: n } = e.value, + r = new Map(); + for (var a of n || []) + r.set( + null !== + (i = + null === (t = a.commonAttr) || void 0 === t + ? void 0 + : t.id) && void 0 !== i + ? i + : a.key, + a + ); + this.itemList.some((e) => { + var t = (0, C.w3)(e) ? e.key : e.commonAttr.id, + i = r.get(t); + return ( + (null == i ? !!void 0 : !!i.statistic) && + (e.statistic.usageNum !== i.statistic.usageNum || + e.statistic.favoriteNum !== i.statistic.favoriteNum || + e.statistic.hasFavorited !== i.statistic.hasFavorited) + ); + }) && + (0, p.z)(() => { + this.itemList = this.itemList.map((e) => { + var t, + i = (0, C.w3)(e) ? e.key : e.commonAttr.id, + n = r.get(i); + return n + ? (0, h._)((0, f._)({}, e), { + statistic: + null !== (t = null == n ? void 0 : n.statistic) && + void 0 !== t + ? t + : e.statistic, + }) + : (0, f._)({}, e); + }); + }); + } + }, + cacheExpirationDuration: 432e5, + minUseCacheThresholdTime: 0, + shouldLogDebugInfo: e, + }); + } + getDataList(e) { + var t = this; + return (0, n._)(function* () { + t.hasInitialized = !0; + var i, + n = yield (0, v.FI)(), + { count: r, offset: o, imageInfo: s, feedRefer: l } = e, + c = 0 === o ? a.Zc.firstTimeFetchCount : a.Zc.count, + d = { + offset: null != o ? o : t.offset, + count: null != r ? r : c, + imageInfo: null != s ? s : n, + categoryId: t.categoryId, + }; + if ( + (!((i = yield x(d)).ok && i.value) && + (i = t._useRecommendApi + ? yield t._fetchRecommendFeedList( + (0, h._)((0, f._)({}, d), { + feedRefer: null != l ? l : t.feedRefer, + filter: { + work_type_list: [T.X.Video, T.X.Image, T.X.Canvas], + }, + }) + ) + : yield t._fetchFeedList(d)), + (0, p.z)(() => { + t.hadFetch = !0; + }), + i.ok) + ) { + var u = i.value, + { itemList: g } = u, + _ = g.map((e) => { + var t = (0, f._)({}, e); + if ((0, C.DF)(e) || (0, C.jD)(e)) { + var i, + n, + { width: r, height: a } = + null !== + (n = + null === (i = e.image.largeImages) || void 0 === i + ? void 0 + : i[0]) && void 0 !== n + ? n + : {}; + (t.width = r), (t.height = a); + } + return ( + (0, C.w3)(e) && + ((t.width = e.video.originVideo.width), + (t.height = e.video.originVideo.height)), + t + ); + }); + _.forEach((e) => { + var t, i, n, r; + (0, C.DF)(e) || (0, C.jD)(e) + ? (0, A.WK)( + null === (t = e.commonAttr) || void 0 === t + ? void 0 + : t.publishedItemId, + e.impressionId + ) + : (0, C.w3)(e) + ? (0, A.WK)(e.publishedItemId, e.impressionId) + : (0, C.Rb)(e) && + ((0, A.WK)( + null === (i = e.commonAttr) || void 0 === i + ? void 0 + : i.publishedItemId, + e.impressionId + ), + null === (r = e.collection) || + void 0 === r || + null === (n = r.itemList) || + void 0 === n || + n.forEach((t) => { + var i; + (0, A.WK)( + null === (i = t.commonAttr) || void 0 === i + ? void 0 + : i.publishedItemId, + e.impressionId + ); + })); + }), + 0 !== o && + t._feedPrefetchService.dispatchEvent({ + name: "get-data-list-done", + data: _, + }), + (0, p.z)(() => { + 0 === o + ? (t.itemList = _) + : (t.itemList = (0, m.Ck)(t.itemList, _)), + (t.hasMore = u.hasMore), + (t._useRecommendApi || (0 === u.nextOffset && _.length)) && + (t.feedRefer = T.p.FeedLoadmore), + (t.offset = u.nextOffset); + }); + } + return i; + })(); + } + constructor(e, t, i, n, r) { + (this._feedService = t), + (this._requestCacheService = i), + (this._envService = n), + (this._feedPrefetchService = r), + (this.categoryId = 0), + (this.hadFetch = !1), + (this.hasMore = !0), + (this.itemList = []), + (this.offset = 0), + (this.hasInitialized = !1), + (this.feedRefer = T.p.FeedEnterauto), + (this._useRecommendApi = !1), + (this._disableCache = !1), + (this.categoryId = e), + (0, p.rC)(this); + } + } + (0, r.gn)([p.LO], P.prototype, "hadFetch", void 0), + (0, r.gn)([p.LO], P.prototype, "hasMore", void 0), + (0, r.gn)( + [p.LO, (0, r.w6)("design:type", Array)], + P.prototype, + "itemList", + void 0 + ), + (0, r.gn)([p.LO], P.prototype, "offset", void 0), + (0, r.gn)([p.LO], P.prototype, "hasInitialized", void 0), + (0, r.gn)([p.LO], P.prototype, "feedRefer", void 0), + (P = (0, r.gn)( + [ + (0, r.fM)(1, o.d), + (0, r.fM)(2, s.p), + (0, r.fM)(3, l.e), + (0, r.fM)(4, c.e), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + Number, + void 0 === o.d ? Object : o.d, + void 0 === s.p ? Object : s.p, + void 0 === l.e ? Object : l.e, + void 0 === c.e ? Object : c.e, + ]), + ], + P + )); + var E = i("422600"), + D = i("923253"), + R = i("460029"), + N = i("519927"), + L = i("252805"), + j = i("503006"), + O = i("917730"), + B = i("980598"), + F = { result: "__get_weekly_challenge_list_result" }; + function U() { + return G.apply(this, arguments); + } + function G() { + return (G = (0, n._)(function* () { + var e, + { result: t } = F; + if (!(null === (e = window) || void 0 === e ? void 0 : e[t])) + try { + yield window.pWeeklyList; + } catch (e) { + (0, _.P)(e); + } + var i = window[t]; + return i + ? "0" !== i.ret + ? Promise.resolve((0, g.wf)(Number(i.ret), i.msg)) + : Promise.resolve((0, g.oW)(yield (0, y.G)(i.data))) + : Promise.resolve((0, g.wf)(-1, "failed to retrieve jsonp result")); + })).apply(this, arguments); + } + class z { + getActList() { + var e = this; + return (0, n._)(function* () { + if (e.hadFetchAct) return; + var t = yield U(); + if ( + (!(t.ok && t.value) && + (t = yield e._mwebActivityService.getWeeklyChallengeList()), + (0, p.z)(() => { + e.hadFetchAct = !0; + }), + !!t.ok) + ) { + var i = t.value.actInfoList.filter( + (e) => e.actStatus === O.Dh.InProgress + ); + (0, p.z)(() => { + e.carouselActList = i; + }); + } + })(); + } + constructor(e) { + (this._mwebActivityService = e), + (this.hadFetchAct = !1), + (this.carouselActList = []), + (0, p.rC)(this); + } + } + (0, r.gn)([p.LO], z.prototype, "hadFetchAct", void 0), + (0, r.gn)( + [p.LO, (0, r.w6)("design:type", Array)], + z.prototype, + "carouselActList", + void 0 + ), + (z = (0, r.gn)( + [ + (0, r.fM)(0, B.u), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [void 0 === B.u ? Object : B.u]), + ], + z + )); + var V = i("409625"), + W = i("720979"); + function Z(e) { + var t = new URLSearchParams(globalThis.location.search).get( + W.i.category + ), + i = 0; + if (t) { + var n = e.findIndex((e) => e.id === Number(t)); + return -1 !== n ? n : i; + } + return i; + } + var K = i("949274"), + H = "DREAMINA_DEFAULT_COMMUNITY_CATEGORY_ID"; + class q { + static getCommunityStoreInstance(e) { + return ( + !this._instance && + (this._instance = null == e ? void 0 : e.createInstance(q, e)), + this._instance + ); + } + static makeItemFavoriteByInstance(e, t, i) { + if (!!i) { + var n = i.itemList.findIndex( + (t) => ((0, C.w3)(t) ? t.key : t.commonAttr.id) === e + ); + if (n > -1) { + var r = i.itemList[n]; + (0, p.z)(() => { + r.statistic && + ((r.statistic.favoriteNum += t ? 1 : -1), + (r.statistic.hasFavorited = t)); + }); + } + } + } + static makeItemFavorite(e, t) { + var i, n; + if ( + !!(null === (i = this._instance) || void 0 === i + ? void 0 + : i._instanceMap) + ) + for (var r of null === (n = this._instance) || void 0 === n + ? void 0 + : n._instanceMap.values()) + q.makeItemFavoriteByInstance(e, t, r); + } + get _fetchPanel() { + var e = !!new URLSearchParams(location.search).get("isDebug"); + return this._requestCacheService.wrapperFetchFuncWithCache({ + fetchFunc: this._feedService.feedRepository.getFeedPanel.bind( + this._feedService.feedRepository + ), + calcRequestCacheKey: (e) => { + var t = "" + .concat(this._envService.region, "_") + .concat(this._envService.appEnv, "_") + .concat(e.panel, "_") + .concat(K.ZP.language); + return "dreamina_inspairation_fetch_panel_".concat(t); + }, + minUseCacheThresholdTime: 0, + shouldLogDebugInfo: e, + }); + } + _getOrCreateCategoryInstance(e, t) { + var i = this._instanceMap.get(t); + return i ? i : null == e ? void 0 : e.createInstance(P, t); + } + _preloadDefaultInstance(e, t) { + (0, R.Ie)(V.iE); + try { + if (!e) return ""; + var i, + n = t.keyValue.query(H); + if (!n.ok || !n.value) return ""; + var r = Number.parseInt(n.value, 10); + if (r) { + var a = null == e ? void 0 : e.createInstance(P, r); + null == a || + a.triggerRecommendType(r, this._isAbTestForRecommend), + this._instanceMap.set(r, a), + null == a || + a.getDataList({ offset: 0 }).then((e) => { + e.ok && + (this._feedPrefetchService.dispatchEvent({ + name: "get-data-list-done", + data: e.value.itemList, + }), + this._feedPrefetchService.dispatchEvent({ + name: "fetch-recommends", + data: { offset: 0 }, + })); + }); + } + return ( + !this._envService.isOversea && + (null === (i = this.activityInstance) || + void 0 === i || + i.getActList()), + r + ); + } finally { + (0, R.oe)(V.iE), (0, R.XH)(V.iE); + } + } + getCategories() { + var e = this; + return (0, n._)(function* () { + try { + (0, R.Ie)(V.i_); + var t = (0, E.b)( + { panel: a.Zc.panel }, + e._serverInjectedDataService + ); + if (t) + return ( + (0, p.z)(() => (e.categories = t.categoryList)), + t.categoryList + ); + var i = !!new URLSearchParams(location.search).get( + "use_test_pannel" + ), + { panel: n } = a.Zc; + e._envService.isOversea && i && (n = a.JI.panel); + var r = yield e._fetchPanel({ panel: n }); + if (!r.ok) return []; + var o = r.value.categoryList; + return (0, p.z)(() => (e.categories = o)), o; + } catch (e) { + return []; + } finally { + (0, R.oe)(V.i_), (0, R.XH)(V.i_); + } + })(); + } + changeActiveInstance(e) { + var t = this.categories[e].id, + i = this._instanceMap.get(t); + !(null == i ? void 0 : i.hadFetch) && + (null == i || i.getDataList({ offset: 0 })), + (0, p.z)(() => { + (this.activeInstance = i), (this.activeCategoryIndex = e); + }); + } + getStoreInstanceByCategoryId(e) { + return this._instanceMap.get(e); + } + _start() { + var e = this; + return (0, n._)(function* () { + (e._isAbTestForRecommend = + yield e.configurationService.abTestManager.getBooleanRecommendTestValue()), + e._preloadDefaultInstance(e.containerService, e._storageService), + e.getCategories().then(() => { + var t = Z(e.categories); + e.categories.forEach((i, n) => { + var r = e._getOrCreateCategoryInstance( + e.containerService, + i.id + ), + a = n === t; + if ( + (null == r || + r.triggerRecommendType(i.id, e._isAbTestForRecommend), + a) + ) { + if ( + ((0, R.Ie)(V.U7), null == r ? void 0 : r.hasInitialized) + ) + (0, p.gx)( + () => (null == r ? void 0 : r.hadFetch), + () => { + (0, R.oe)(V.U7), (0, R.XH)(V.U7); + } + ); + else { + var o, + s = null == r ? void 0 : r.getDataList({ offset: 0 }); + Promise.all([ + e._envService.isOversea + ? Promise.resolve() + : null === (o = e.activityInstance) || void 0 === o + ? void 0 + : o.getActList(), + s, + ]).finally(() => { + (0, R.oe)(V.U7), (0, R.XH)(V.U7); + }), + null == s || + s.then((t) => { + t.ok && + (e._feedPrefetchService.dispatchEvent({ + name: "get-data-list-done", + data: t.value.itemList, + }), + e._feedPrefetchService.dispatchEvent({ + name: "fetch-recommends", + data: { offset: 0 }, + })); + }); + } + e._storageService.keyValue.set(H, "".concat(i.id)), + (0, p.z)(() => { + (e.activeInstance = r), (e.activeCategoryIndex = t); + }); + } else + e._preloadService.addPreloadTask({ + signal: N.l.PAGE_IDLE, + runTask: () => + null == r ? void 0 : r.getDataList({ offset: 0 }), + priorityLevel: D.q.LowPriority, + }); + e._instanceMap.set(i.id, r); + }); + }); + })(); + } + constructor(e, t, i, n, r, a, o, s, l) { + (this.containerService = e), + (this._feedService = t), + (this._requestCacheService = i), + (this._envService = n), + (this._preloadService = r), + (this._feedPrefetchService = a), + (this._storageService = o), + (this._serverInjectedDataService = s), + (this.configurationService = l), + (this._instanceMap = new Map()), + (this.categories = []), + (this.activeInstance = void 0), + (this.activeCategoryIndex = 0), + (this._isAbTestForRecommend = !1), + (this.activityInstance = null == e ? void 0 : e.createInstance(z)), + (0, p.rC)(this), + this._start(); + } + } + (0, r.gn)( + [p.LO, (0, r.w6)("design:type", Array)], + q.prototype, + "categories", + void 0 + ), + (0, r.gn)( + [p.LO, (0, r.w6)("design:type", Object)], + q.prototype, + "activeInstance", + void 0 + ), + (0, r.gn)( + [p.LO, (0, r.w6)("design:type", Number)], + q.prototype, + "activeCategoryIndex", + void 0 + ), + (q = (0, r.gn)( + [ + (0, r.fM)(1, o.d), + (0, r.fM)(2, s.p), + (0, r.fM)(3, l.e), + (0, r.fM)(4, L.f), + (0, r.fM)(5, c.e), + (0, r.fM)(6, j.U), + (0, r.fM)(7, d.G), + (0, r.fM)(8, u.S), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + Object, + void 0 === o.d ? Object : o.d, + void 0 === s.p ? Object : s.p, + void 0 === l.e ? Object : l.e, + void 0 === L.f ? Object : L.f, + void 0 === c.e ? Object : c.e, + void 0 === j.U ? Object : j.U, + void 0 === d.G ? Object : d.G, + void 0 === u.S ? Object : u.S, + ]), + ], + q + )); + }, + 106863: function (e, t, i) { + "use strict"; + i.d(t, { B: () => f }); + var n = i("85952"), + r = i("139646"), + a = i("789786"), + o = i("875488"), + s = i("526967"), + l = i("317825"), + c = i("509525"), + d = i("260963"); + class u { + refreshData() { + var e = this; + return (0, r._)(function* () { + e.setLoading(!0); + try { + var t = yield (0, o.FI)(), + i = yield (0, l.Rr)( + (i) => + e._publishProductionService.repository.getProduction(i, { + publishedItemId: e.publishedId, + imageInfo: t, + }), + { + contextType: c.zO.Task, + processName: "ContentPublishedStoreInstance", + operationName: "refreshData", + } + ); + if (i.ok) { + var n = new URL(location.href).searchParams.get( + s.KL.impressionId + ); + n && (i.value.impressionId = n), + (i.value.fromSSR = !1), + e.setData(i.value); + } + } finally { + e.setLoading(!1); + } + })(); + } + setLoading(e) { + this.loading = e; + } + setData(e) { + this.data = e; + } + updateFavoriteNum(e) { + var t; + if ( + !!(null === (t = this.data) || void 0 === t ? void 0 : t.statistic) + ) + this.data.statistic.favoriteNum = e; + } + updateIsFavorite(e) { + var t; + if ( + !!(null === (t = this.data) || void 0 === t ? void 0 : t.statistic) + ) + this.data.statistic.hasFavorited = e; + } + constructor(e, t) { + (this._publishProductionService = t), + (this.loading = !1), + (this.publishedId = e), + (0, d.rC)(this); + } + } + (0, a.gn)( + [d.LO, (0, a.w6)("design:type", String)], + u.prototype, + "publishedId", + void 0 + ), + (0, a.gn)( + [d.LO, (0, a.w6)("design:type", Object)], + u.prototype, + "data", + void 0 + ), + (0, a.gn)([d.LO], u.prototype, "loading", void 0), + (0, a.gn)( + [ + d.aD.bound, + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [Boolean]), + (0, a.w6)("design:returntype", void 0), + ], + u.prototype, + "setLoading", + null + ), + (0, a.gn)( + [ + d.aD.bound, + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [ + "undefined" == typeof TMWebProductionItem + ? Object + : TMWebProductionItem, + ]), + (0, a.w6)("design:returntype", void 0), + ], + u.prototype, + "setData", + null + ), + (0, a.gn)( + [ + d.aD.bound, + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [Number]), + (0, a.w6)("design:returntype", void 0), + ], + u.prototype, + "updateFavoriteNum", + null + ), + (0, a.gn)( + [ + d.aD.bound, + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [Boolean]), + (0, a.w6)("design:returntype", void 0), + ], + u.prototype, + "updateIsFavorite", + null + ); + class f { + static getInstance(e) { + return !this._instance && (this._instance = new f(e)), this._instance; + } + static makeItemFavorite(e, t) { + this._makeItemFavoriteByInstance(e, t, this._instance); + } + static _makeItemFavoriteByInstance(e, t, i) { + if (!i) return; + var n = i._publishedIdToPublishedInfoMap[e]; + if (!!(null == n ? void 0 : n.data)) { + var { + statistic: { favoriteNum: r = 0 }, + } = n.data; + n.updateFavoriteNum(r + (t ? 1 : -1)), n.updateIsFavorite(t); + } + } + getPublishedWebEffectItem(e) { + var t = this._publishedIdToPublishedInfoMap[e]; + if (t) return t; + var i = new u( + e, + this._containerService.invokeFunction((e) => e.get(n.p)) + ); + return ( + i.refreshData(), (this._publishedIdToPublishedInfoMap[e] = i), i + ); + } + constructor(e) { + (this._publishedIdToPublishedInfoMap = {}), + (this._containerService = e); + } + } + }, + 857611: function (e, t, i) { + "use strict"; + i.d(t, { + h: function () { + return s; + }, + }); + var n = i(139646), + r = i(685665), + a = i(645078), + o = i(297425); + class s { + reset() { + this.mutexLock.isLocked && this.mutexLock.release(); + } + setRecognizeCache(e, t) { + this.recognizeCacheMap.put(e, t); + } + getRecognizeCache(e) { + return this.recognizeCacheMap.get(e); + } + getCacheKey(e, t) { + return (0, n._)(function* () { + return t + ? t instanceof File + ? yield (0, a.r)(t) + : (0, a.V)(t) + : e; + })(); + } + constructor() { + (this.mutexLock = new r.w()), (this.recognizeCacheMap = new o.z(10)); + } + } + }, + 476295: function (e, t, i) { + "use strict"; + i.d(t, { + C9: function () { + return x; + }, + HK: function () { + return w; + }, + OS: function () { + return I; + }, + }); + var n = i(139646), + r = i(789786), + a = i(925367), + o = i(128468), + s = i(76212), + l = i(100470), + c = i(417281), + d = i(871770), + u = i(243090), + f = i(260963), + h = i(649843), + p = i(133438), + v = i(853270), + m = i(717742), + g = i(857611), + _ = i(880821), + y = 3, + b = 4, + I = (function (e) { + return ( + (e[(e.Resize = 0)] = "Resize"), + (e[(e.Move = 1)] = "Move"), + (e[(e.Rotate = 2)] = "Rotate"), + (e[(e.None = 3)] = "None"), + e + ); + })({}), + w = (function (e) { + return ( + (e.Default = "default"), + (e.ResizeTopLeftToBottomRight = "resize_top_left_to_bottom_right"), + (e.ResizeTopRightToBottomLeft = "resize_top_right_to_bottom_left"), + (e.Move = "move"), + (e.RotateTop = "rotate_top"), + (e.RotateRight = "rotate_right"), + (e.RotateBottom = "rotate_bottom"), + (e.RotateLeft = "rotate_left"), + e + ); + })({}); + class x extends g.h { + get isTransforming() { + return 3 !== this.transformType; + } + preRecognize(e) { + var t = this; + return (0, n._)(function* () { + yield t.mutexLock.acquire(); + try { + var i = yield t.getCacheKey(e), + n = t.getRecognizeCache(i), + r = + null == n + ? void 0 + : null === (f = n.resp) || void 0 === f + ? void 0 + : null === (u = f.response) || void 0 === u + ? void 0 + : u.ok; + if (n && r) return n; + var a = t.graphicToolService.graphicTool.getSaliencySEG( + { imageUriList: [e], mode: o.JU.Canvas }, + { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: "to_image_referenceimage", + feature_entrance: (0, s.b2)(), + feature_entrance_detail: "".concat( + (0, s.b2)(), + "-referenceimage-object_detection" + ), + }), + } + ), + l = yield t.graphicToolService.graphicTool.getSaliencySEG( + { imageUriList: [e] }, + { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: "to_image_referenceimage", + feature_entrance: (0, s.b2)(), + feature_entrance_detail: "".concat( + (0, s.b2)(), + "-referenceimage-object_detection" + ), + }), + } + ), + [c, d] = yield Promise.all([a, l]); + if ( + (c.response.ok && + (d.response.ok && + (null === (p = c.response.value) || void 0 === p + ? void 0 + : null === (h = p[0]) || void 0 === h + ? void 0 + : h.mask) && + (null === (m = d.response.value) || void 0 === m + ? void 0 + : null === (v = m[0]) || void 0 === v + ? void 0 + : v.mask) && + (c.response.value[0].mask.url = + null === (y = d.response.value) || void 0 === y + ? void 0 + : null === (g = y[0]) || void 0 === g + ? void 0 + : g.mask.url), + t.setRecognizeCache(i, { resp: c })), + c.response.ok) + ) { + var u, + f, + h, + p, + v, + m, + g, + y, + b, + I, + w = c.response.value, + x = + null == w + ? void 0 + : null === (I = w[0]) || void 0 === I + ? void 0 + : null === (b = I.mask) || void 0 === b + ? void 0 + : b.url; + (0, _.po)(x); + } + return { resp: c }; + } finally { + t.mutexLock.release(); + } + })(); + } + recognize(e) { + var t = this; + return (0, n._)(function* () { + (t._isCancelRecognize = !1), (t.originURI = e); + var { resp: i } = yield t.preRecognize(e), + { response: n } = i; + if (n.ok) { + if (!t._isCancelRecognize) { + var r = n.value; + return ( + (t._recognizeImageUrl = null == r ? void 0 : r[0].mask.url), + (0, f.z)(() => { + t.maskList = r; + }), + h.J.Success + ); + } + return h.J.Cancelled; + } + var { code: a } = n; + return a === l.b.ErrNoSegmentObjectFound + ? h.J.NoSegmentObjectFoundError + : a === l.b.ErrSegmentFailed + ? h.J.SegmentFailedError + : h.J.NetworkError; + })(); + } + getImagineParams() { + if (!!this.paintModeInstance) { + var e = this.paintModeInstance.generatePaintContent(), + t = this.paintModeInstance.getImageData(); + this.maskUriToImageDataMap.clear(), + this.maskUriToImageDataMap.set(e, t), + this.paths.set(e, this.paintModeInstance.getPaths()); + var { moveX: i, moveY: n } = (0, v.D)({ + currentMove: { moveX: this.moveX, moveY: this.moveY }, + currentSize: { width: this.paintWidth, height: this.paintHeight }, + targetSize: this._actualPaintSize, + imageSize: this._rawImageSize, + imageScale: this.scale, + imageRotate: this.rotate, + paintScale: this._paintScale, + }); + return { + uri: this.originURI, + name: c.UI.BgPaint, + imageUriList: ["", "", e, this.originURI], + extra: JSON.stringify({ + paintWidth: this._actualPaintSize.width, + paintHeight: this._actualPaintSize.height, + originImageUrl: this._rawImageUrl, + originMaskUrl: e, + recognizeImageUrl: this._recognizeImageUrl, + moveX: (0, m.c)(i, 2), + moveY: (0, m.c)(n, 2), + scale: (0, m.c)(this.scale, 2), + rotate: (0, m.c)(this.rotate, 2), + }), + }; + } + } + getMaskDataMap(e) { + return this.maskUriToImageDataMap.get(e); + } + getPaths(e) { + return this.paths.get(e); + } + cancelRecognize() { + this._isCancelRecognize = !0; + } + updateBrushSize(e) { + this.brushSize = e; + } + updateEraserSize(e) { + this.eraserSize = e; + } + updateDrawAction(e) { + this.drawAction = e; + } + updatePaintModeInstance(e) { + this.paintModeInstance = e; + } + reset() { + (this.brushSize = 1), + (this.eraserSize = 1), + (this.maskList = []), + (this.paintModeInstance = void 0), + (this.moveX = 0), + (this.moveY = 0), + (this.scale = 1), + (this.rotate = 0), + (this.extra = ""), + (this.paintHeight = 0), + (this.paintWidth = 0), + (this.drawAction = a.o4.Select), + (this.isSelectImage = !0), + (this.isSelectActive = !0), + (this._actualPaintSize = { width: 0, height: 0 }), + (this._isInitActualSize = !1), + (this._paintScale = -1), + (this._rawImageSize = { width: 0, height: 0 }), + (this._rawImageUrl = ""), + (this._recognizeImageUrl = ""), + super.reset(); + } + initActualPaintSize(e, t) { + this._actualPaintSize = { width: e, height: t }; + var i = Object.keys((0, u.D)(this.extra)), + n = i.length === b, + r = 0 === i.length; + if (n || r) { + (this._isInitActualSize = !0), + (0, f.z)(() => { + (this.moveX = e / 2), + (this.moveY = t / 2), + (this.paintWidth = e), + (this.paintHeight = t); + }); + return; + } + var { + paintWidth: a = 0, + paintHeight: o = 0, + moveX: s = 0, + moveY: l = 0, + } = (0, u.D)(this.extra), + { width: c, height: d } = this._rawImageSize, + { moveX: h, moveY: p } = (0, v.D)({ + currentMove: { moveX: s, moveY: l }, + currentSize: { width: a, height: o }, + targetSize: { width: e, height: t }, + imageSize: { width: c, height: d }, + imageScale: this.scale, + imageRotate: this.rotate, + paintScale: this._paintScale, + }); + (this._isInitActualSize = !0), + (0, f.z)(() => { + (this.moveX = h), + (this.moveY = p), + (this.paintWidth = e), + (this.paintHeight = t); + }); + } + updateActualPaintSize(e, t) { + this._actualPaintSize = { width: e, height: t }; + } + updateRawImageSize(e, t) { + this._rawImageSize = { width: e, height: t }; + } + updatePaintSize(e, t) { + var i = + arguments.length > 2 && void 0 !== arguments[2] && arguments[2]; + if (!!this._isInitActualSize) { + var { moveX: n, moveY: r } = this, + { width: a, height: o } = this._rawImageSize, + { moveX: s, moveY: l } = (0, v.D)({ + currentMove: { moveX: n, moveY: r }, + currentSize: { + width: this.paintWidth, + height: this.paintHeight, + }, + targetSize: { width: e, height: t }, + imageSize: { width: a, height: o }, + imageScale: this.scale, + imageRotate: this.rotate, + paintScale: this._paintScale, + needHandleEdge: i, + }); + (0, f.z)(() => { + (this.moveX = s), + (this.moveY = l), + (this.paintWidth = e), + (this.paintHeight = t); + }); + } + } + updateMoveX(e) { + this.moveX = e; + } + updateMoveY(e) { + this.moveY = e; + } + updateScale(e) { + this.scale = e; + } + updateRotate(e) { + this.rotate = e; + } + updateImageUrl(e) { + this._rawImageUrl = e; + } + updatePaintScale(e) { + this._paintScale = e; + } + updateIsSelectActive(e) { + this.isSelectActive = e; + } + updateIsSelectImage(e) { + this.isSelectImage = e; + } + updateTransformType(e) { + this.transformType = e; + } + resetTransformType() { + this.transformType = 3; + } + updateActionCursor(e) { + this.actionCursor = e; + } + resetActionCursor() { + this.actionCursor = "default"; + } + initWithImagineParams(e, t) { + if (!!(0, p.cj)(t)) { + var i, + n, + { originMaskUrl: r = "", recognizeImageUrl: a = "" } = (0, u.D)( + t.extra + ); + (this.originURI = + null !== + (n = + null === (i = t.imageUriList) || void 0 === i + ? void 0 + : i[y]) && void 0 !== n + ? n + : ""), + (this._recognizeImageUrl = a), + (this.maskList = [{ mask: { uri: this.originURI, url: r } }]), + this.initExtra(t.extra); + } + } + initExtra(e) { + this.extra = e; + var { scale: t = 1, rotate: i = 0 } = (0, u.D)(e); + this.updateScale(t), this.updateRotate(i); + } + get isRecognized() { + return 0 !== this.maskList.length; + } + get isInitActualSize() { + return this._isInitActualSize; + } + constructor(e) { + super(), + (this.graphicToolService = e), + (this.originURI = ""), + (this.maskList = []), + (this.brushSize = 1), + (this.eraserSize = 1), + (this.drawAction = a.o4.Brush), + (this.paintWidth = 0), + (this.paintHeight = 0), + (this.moveX = 0), + (this.moveY = 0), + (this.scale = 1), + (this.rotate = 0), + (this.isSelectActive = !1), + (this.isSelectImage = !1), + (this.maskUriToImageDataMap = new Map()), + (this.paths = new Map()), + (this.transformType = 3), + (this.extra = ""), + (this.actionCursor = "default"), + (this._actualPaintSize = { width: 0, height: 0 }), + (this._rawImageUrl = ""), + (this._recognizeImageUrl = ""), + (this._rawImageSize = { width: 0, height: 0 }), + (this._paintScale = -1), + (this._isCancelRecognize = !1), + (this._isInitActualSize = !1), + (0, f.rC)(this); + } + } + (0, r.gn)( + [ + f.LO, + (0, r.w6)( + "design:type", + "undefined" == typeof IMWebSaliencySEGMaskList + ? Object + : IMWebSaliencySEGMaskList + ), + ], + x.prototype, + "maskList", + void 0 + ), + (0, r.gn)([f.LO], x.prototype, "brushSize", void 0), + (0, r.gn)([f.LO], x.prototype, "eraserSize", void 0), + (0, r.gn)([f.LO], x.prototype, "drawAction", void 0), + (0, r.gn)([f.LO], x.prototype, "paintWidth", void 0), + (0, r.gn)([f.LO], x.prototype, "paintHeight", void 0), + (0, r.gn)([f.LO], x.prototype, "moveX", void 0), + (0, r.gn)([f.LO], x.prototype, "moveY", void 0), + (0, r.gn)([f.LO], x.prototype, "scale", void 0), + (0, r.gn)([f.LO], x.prototype, "rotate", void 0), + (0, r.gn)([f.LO], x.prototype, "isSelectActive", void 0), + (0, r.gn)([f.LO], x.prototype, "isSelectImage", void 0), + (0, r.gn)([f.LO], x.prototype, "transformType", void 0), + (0, r.gn)([f.LO], x.prototype, "extra", void 0), + (0, r.gn)([f.LO], x.prototype, "actionCursor", void 0), + (0, r.gn)( + [ + f.Fl, + (0, r.w6)("design:type", Boolean), + (0, r.w6)("design:paramtypes", []), + ], + x.prototype, + "isTransforming", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Number]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "updateBrushSize", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Number]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "updateEraserSize", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [void 0 === a.o4 ? Object : a.o4]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "updateDrawAction", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", []), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "reset", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Number, Number]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "initActualPaintSize", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Number, Number, void 0]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "updatePaintSize", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Number]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "updateMoveX", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Number]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "updateMoveY", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Number]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "updateScale", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Number]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "updateRotate", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [String]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "updateImageUrl", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Number]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "updatePaintScale", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Boolean]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "updateIsSelectActive", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Boolean]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "updateIsSelectImage", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [void 0 === I ? Object : I]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "updateTransformType", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", []), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "resetTransformType", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [void 0 === w ? Object : w]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "updateActionCursor", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", []), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "resetActionCursor", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + String, + "undefined" == typeof TImagineModalAbilityParams + ? Object + : TImagineModalAbilityParams, + ]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "initWithImagineParams", + null + ), + (0, r.gn)( + [ + f.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [String]), + (0, r.w6)("design:returntype", void 0), + ], + x.prototype, + "initExtra", + null + ), + (0, r.gn)( + [ + f.Fl, + (0, r.w6)("design:type", void 0), + (0, r.w6)("design:paramtypes", []), + ], + x.prototype, + "isRecognized", + null + ), + (x = (0, r.gn)( + [ + (0, r.fM)(0, d.fQ), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [void 0 === d.fQ ? Object : d.fQ]), + ], + x + )); + }, + 649843: function (e, t, i) { + "use strict"; + i.d(t, { + J: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e.Success = "success"), + (e.Cancelled = "cancelled"), + (e.Empty = "empty"), + (e.DownloadImageError = "downloadImageError"), + (e.FacePredictError = "facePredictError"), + (e.NoSegmentObjectFoundError = "noSegmentObjectFoundError"), + (e.SegmentFailedError = "segmentFailedError"), + (e.NetworkError = "networkError"), + (e.PoseDetectError = "poseDetectError"), + (e.SafetyCheckError = "safetyCheckError"), + (e.IpKeepMultipySubject = "ipKeepMultipySubject"), + (e.IpKeepNoSubject = "ipKeepNoSubject"), + (e.ImageIPIsBlocked = "imageIpIsBlocked"), + e + ); + })({}); + }, + 164763: function (e, t, i) { + "use strict"; + i.d(t, { o: () => es }); + var n = i("139646"), + r = i("789786"), + a = i("417281"), + o = i("871770"), + s = i("260963"), + l = i("649843"), + c = i("489897"), + d = i("133438"), + u = i("857611"), + f = 0, + h = 0; + class p extends u.h { + recognize(e) { + var t = this; + return (0, n._)(function* () { + return (t.originURI = e), yield Promise.resolve(), l.J.Success; + })(); + } + preRecognize(e) { + return (0, n._)(function* () { + yield Promise.resolve(); + })(); + } + cancelRecognize() {} + getImagineParams() { + return { + uri: this.originURI, + name: a.UI.BasicBlend, + imageUriList: [this.originURI], + imageWeightList: [this.referenceLevel], + }; + } + updateReferenceLevel(e) { + this.referenceLevel = e; + } + reset() { + (this.referenceLevel = Math.round((c.K5.max + c.K5.min) / 2)), + (this.originURI = ""), + super.reset(); + } + initWithImagineParams(e, t) { + var i, n, r, a; + if (!!(0, d.q0)(t)) + (this.referenceLevel = + null !== + (r = + null === (i = t.imageWeightList) || void 0 === i + ? void 0 + : i[f]) && void 0 !== r + ? r + : Math.round((c.K5.max + c.K5.min) / 2)), + (this.originURI = + null !== + (a = + null === (n = t.imageUriList) || void 0 === n + ? void 0 + : n[h]) && void 0 !== a + ? a + : ""); + } + get isRecognized() { + return "" !== this.originURI; + } + constructor(e) { + super(), + (this.graphicToolService = e), + (this.referenceLevel = c.K5.default), + (this.originURI = ""), + (0, s.rC)(this); + } + } + (0, r.gn)([s.LO], p.prototype, "referenceLevel", void 0), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Number]), + (0, r.w6)("design:returntype", void 0), + ], + p.prototype, + "updateReferenceLevel", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", []), + (0, r.w6)("design:returntype", void 0), + ], + p.prototype, + "reset", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + String, + "undefined" == typeof TImagineModalAbilityParams + ? Object + : TImagineModalAbilityParams, + ]), + (0, r.w6)("design:returntype", void 0), + ], + p.prototype, + "initWithImagineParams", + null + ), + (0, r.gn)( + [ + s.Fl, + (0, r.w6)("design:type", void 0), + (0, r.w6)("design:paramtypes", []), + ], + p.prototype, + "isRecognized", + null + ), + (p = (0, r.gn)( + [ + (0, r.fM)(0, o.fQ), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [void 0 === o.fQ ? Object : o.fQ]), + ], + p + )); + var v = i("625572"), + m = i("639880"), + g = i("96"), + _ = i("910629"), + y = i("100470"), + b = i("76212"), + I = i("356868"), + w = i("880821"); + class x { + init(e, t, i) { + var r = this; + return (0, n._)(function* () { + if (!r._clipCanvas) throw Error("fail to init clip"); + r._clipCanvas.clear(), + (r._clipCanvas.width = t), + (r._clipCanvas.height = i), + (r._paintHeight = i), + (r._paintWidth = t), + (r._fileSrc = e); + var n = yield (0, w.po)(r._fileSrc); + r._imageElement = n; + })(); + } + clipRect(e, t, i, n) { + if ((this._clipCanvas.clear(), !this._imageElement)) return ""; + var r, + a, + { ctx: o } = this._clipCanvas; + if (!o) return ""; + (this._clipCanvas.width = this._paintWidth), + (this._clipCanvas.height = this._paintHeight), + o.drawImage( + this._imageElement, + 0, + 0, + this._paintWidth, + this._paintHeight + ); + var s = o.getImageData(e, t, i, n); + return ( + this._clipCanvas.clear(), + (this._clipCanvas.width = i), + (this._clipCanvas.height = n), + o.putImageData(s, 0, 0), + null !== + (a = + null === (r = this._clipCanvas.element) || void 0 === r + ? void 0 + : r.toDataURL()) && void 0 !== a + ? a + : "" + ); + } + clear() { + var e; + null === (e = this._clipCanvas) || void 0 === e || e.clear(); + } + destroy() { + this._clipCanvas.destroy(); + } + constructor() { + (this._clipCanvas = new I.E(0, 0)), + (this._fileSrc = ""), + (this._imageElement = null), + (this._paintHeight = 0), + (this._paintWidth = 0); + } + } + var S = i("586315"), + M = i("509525"), + C = 0, + T = (e) => { + var [t, i, n, r] = e; + return "".concat(t, "_").concat(i, "_").concat(n, "_").concat(r); + }, + A = (e) => + e + .map((e) => { + var { faceRect: t } = e, + i = T(t); + return (0, m._)((0, v._)({}, e), { picture: "", faceKey: i }); + }) + .sort((e, t) => { + var i, + n, + { faceRect: r } = e, + { faceRect: a } = t; + return (null !== (i = r[0]) && void 0 !== i ? i : 0) > + (null !== (n = a[0]) && void 0 !== n ? n : 0) + ? 1 + : -1; + }); + function k(e, t, i, n) { + return i > n + ? [e, Math.max(0, t - (i - n) / 2), i, i] + : [Math.max(0, e - (n - i) / 2), t, n, n]; + } + function P(e, t) { + var { faceRect: i, keypoint: n } = e, + r = (0, g._)(e, ["faceRect", "keypoint"]), + [a, o, s, l] = i; + return (0, m._)((0, v._)({}, r), { + faceRect: [a * t, o * t, s * t, l * t], + keypoint: n.map((e) => e * t), + }); + } + function E(e, t) { + var [i, n, r, a] = t.faceRect, + o = k(i, n, r, a); + return e.clipRect(...o); + } + class D extends u.h { + get faceRects() { + return this.faceRecognizeList.map((e) => + P( + (0, m._)((0, v._)({}, e), { + isSelected: this.selectedKey === e.faceKey, + }), + this.scale + ) + ); + } + get selectRectIndex() { + return this.faceRects.findIndex((e) => e.isSelected); + } + preRecognize(e) { + var t = this; + return (0, n._)(function* () { + yield t.mutexLock.acquire(); + try { + var i, + n, + r, + a, + o = yield t.getCacheKey(e), + s = t.getRecognizeCache(o), + l = + (null == s + ? void 0 + : null === (n = s.auditResp) || void 0 === n + ? void 0 + : null === (i = n.response) || void 0 === i + ? void 0 + : i.ok) && + (null == s + ? void 0 + : null === (a = s.recognizeResp) || void 0 === a + ? void 0 + : null === (r = a.response) || void 0 === r + ? void 0 + : r.ok); + if (s && l) return s; + var c = t._auditImage(e), + d = t._recognizeFace(e), + [u, f] = yield Promise.all([c, d]), + h = [u, f].every((e) => e.response.ok), + p = { recognizeResp: f, auditResp: u }; + return h && t.setRecognizeCache(o, p), p; + } finally { + t.mutexLock.release(); + } + })(); + } + recognize(e) { + var t = this; + return (0, n._)(function* () { + t._isCancelRecognize = !1; + var { recognizeResp: i, auditResp: n } = yield t.preRecognize(e); + if (!n.response.ok) return l.J.NetworkError; + if (t._isCancelRecognize) return l.J.Cancelled; + if (0 !== n.response.value.status) return l.J.ImageIPIsBlocked; + var { response: r } = i; + if (r.ok) { + if (t._isCancelRecognize) return l.J.Cancelled; + var a, + { faceRecognizeList: o } = r.value, + c = null !== (a = o[C]) && void 0 !== a ? a : [], + d = A(c); + return ((0, s.z)(() => { + (t.imageUriList = [e]), + (t.faceRecognizeList = d), + (t.selectedKey = t.getDefaultSelectedFaceKey(d)); + }), + c.length) + ? l.J.Success + : l.J.Empty; + } + var { code: u } = r; + if (u === y.b.ErrDownloadImage) return l.J.DownloadImageError; + if (u === y.b.ErrFacePredict) return l.J.FacePredictError; + if (u === y.b.ErrPreTextIPBlockList) return l.J.ImageIPIsBlocked; + return l.J.NetworkError; + })(); + } + _recognizeFace(e) { + var t = this; + return (0, n._)(function* () { + return yield t.graphicToolService.graphicTool.getFaceRecognize( + { imageUriList: [e] }, + { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: "to_image_referenceimage", + feature_entrance: (0, b.b2)(), + feature_entrance_detail: "".concat( + (0, b.b2)(), + "-referenceimage-human_face" + ), + }), + } + ); + })(); + } + _auditImage(e) { + var t = this; + return (0, n._)(function* () { + var i = (0, M.fC)(), + n = + yield t.mWebContentGenerateService.repository.requestAlgorithm( + i, + "benchmark_test_user_upload_image_input.image_face_ip", + { + params: {}, + fileList: [{ fileUri: e }], + options: { ipCheck: !0 }, + }, + { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: "aigc_to_image", + feature_entrance: (0, b.b2)(), + feature_entrance_detail: "".concat( + (0, b.b2)(), + "-algo_proxy" + ), + }), + } + ), + { response: r } = n, + a = r.ok && n.logId ? 0 : 1; + return (0, + m._)((0, v._)({}, n), { response: (0, S.oW)({ status: a }) }); + })(); + } + getDefaultSelectedFaceKey(e) { + var t = 0, + i = ""; + return ( + e.forEach((e) => { + var { faceRect: n, faceKey: r } = e, + [, , a, o] = n, + s = a * o; + s > t && ((t = s), (i = r)); + }), + i + ); + } + getImagineParams() { + var e, + t = this.faceRecognizeList.map((e) => ({ + keypoint: e.keypoint, + faceRect: e.faceRect, + isSelected: T(e.faceRect) === this.selectedKey, + })), + i = (0, s.ZN)(this.imageUriList); + return { + uri: + null !== (e = null == i ? void 0 : i[0]) && void 0 !== e ? e : "", + name: a.UI.FaceGan, + imageUriList: i, + faceRecognizeList: [t], + }; + } + cancelRecognize() { + this._isCancelRecognize = !0; + } + selectFaceRect(e) { + this.selectedKey = e; + } + reset() { + var e; + (this.faceRecognizeList = []), + (this.imageUriList = []), + (this.selectedKey = ""), + (this.scale = 1), + null === (e = this._clipInstance) || void 0 === e || e.clear(), + (this._clipInstance = null), + super.reset(); + } + setScale(e) { + this.scale = e; + } + initWithImagineParams(e, t) { + if (!!(0, d.jq)(t)) { + var i, + n, + r, + { faceRecognizeList: a } = t, + o = A( + null !== (n = null == a ? void 0 : a[C]) && void 0 !== n + ? n + : [] + ); + (this.faceRecognizeList = o.map((e) => { + var { isSelected: t } = e; + return (0, g._)(e, ["isSelected"]); + })), + (this.selectedKey = + null !== + (r = + null === (i = o.find((e) => e.isSelected)) || void 0 === i + ? void 0 + : i.faceKey) && void 0 !== r + ? r + : ""), + (this.imageUriList = [e]); + } + } + clipFacePicture(e) { + var t = this; + return (0, n._)(function* () { + !t._clipInstance && (t._clipInstance = new x()); + var i = t._clipInstance; + try { + var { width: n, height: r } = yield (0, w.po)(e); + yield i.init(e, n, r); + var a = t.faceRecognizeList.map((e) => + (0, m._)((0, v._)({}, e), { picture: E(i, e) }) + ); + (0, s.z)(() => { + t.faceRecognizeList = a; + }); + } catch (e) {} + })(); + } + get isRecognized() { + return 0 !== this.faceRecognizeList.length; + } + constructor(e, t) { + super(), + (this.graphicToolService = e), + (this.mWebContentGenerateService = t), + (this.imageUriList = []), + (this.faceRecognizeList = []), + (this.selectedKey = ""), + (this.scale = 1), + (this._isCancelRecognize = !1), + (this._clipInstance = null), + (0, s.rC)(this); + } + } + (0, r.gn)( + [s.LO, (0, r.w6)("design:type", Array)], + D.prototype, + "imageUriList", + void 0 + ), + (0, r.gn)( + [s.LO, (0, r.w6)("design:type", Array)], + D.prototype, + "faceRecognizeList", + void 0 + ), + (0, r.gn)( + [s.LO, (0, r.w6)("design:type", String)], + D.prototype, + "selectedKey", + void 0 + ), + (0, r.gn)( + [s.LO, (0, r.w6)("design:type", Number)], + D.prototype, + "scale", + void 0 + ), + (0, r.gn)( + [ + s.Fl, + (0, r.w6)("design:type", Array), + (0, r.w6)("design:paramtypes", []), + ], + D.prototype, + "faceRects", + null + ), + (0, r.gn)( + [ + s.Fl, + (0, r.w6)("design:type", Number), + (0, r.w6)("design:paramtypes", []), + ], + D.prototype, + "selectRectIndex", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [String]), + (0, r.w6)("design:returntype", void 0), + ], + D.prototype, + "selectFaceRect", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", []), + (0, r.w6)("design:returntype", void 0), + ], + D.prototype, + "reset", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Number]), + (0, r.w6)("design:returntype", void 0), + ], + D.prototype, + "setScale", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + String, + "undefined" == typeof TImagineModalAbilityParams + ? Object + : TImagineModalAbilityParams, + ]), + (0, r.w6)("design:returntype", void 0), + ], + D.prototype, + "initWithImagineParams", + null + ), + (0, r.gn)( + [ + s.Fl, + (0, r.w6)("design:type", void 0), + (0, r.w6)("design:paramtypes", []), + ], + D.prototype, + "isRecognized", + null + ), + (D = (0, r.gn)( + [ + (0, r.fM)(0, o.fQ), + (0, r.fM)(1, _.M), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + void 0 === o.fQ ? Object : o.fQ, + void 0 === _.M ? Object : _.M, + ]), + ], + D + )); + var R = i("476295"), + N = i("128468"), + L = i("317825"); + class j extends u.h { + preRecognize(e) { + var t = this; + return (0, n._)(function* () { + yield t.mutexLock.acquire(); + try { + var i, + n = yield t.getCacheKey(e), + r = t.getRecognizeCache(n), + a = + (null == r + ? void 0 + : null === (i = r.safetyCheckResp) || void 0 === i + ? void 0 + : i.status) === null; + if (r && a) return r; + var o = t._safetyCheck(e), + s = t._subjectCheck(e), + l = t._image2description(e), + [c, d, u] = yield Promise.all([o, s, l]), + f = { + safetyCheckResp: c, + subjectCheckResp: d, + image2descriptionResp: u, + }; + return ( + [c, d, u].every((e) => !e.stop) && t.setRecognizeCache(n, f), f + ); + } finally { + t.mutexLock.release(); + } + })(); + } + recognize(e) { + var t = this; + return (0, n._)(function* () { + t._isCancelRecognize = !1; + var i, + n, + r, + a, + { + safetyCheckResp: o, + subjectCheckResp: c, + image2descriptionResp: d, + } = yield t.preRecognize(e); + if (null == o ? void 0 : o.stop) + return null !== (i = o.status) && void 0 !== i + ? i + : l.J.NetworkError; + var u = l.J.Success; + return c.stop + ? null !== (n = c.status) && void 0 !== n + ? n + : l.J.NetworkError + : ((u = + null !== (r = c.status) && void 0 !== r ? r : l.J.Success), + d.stop) + ? null !== (a = d.status) && void 0 !== a + ? a + : l.J.NetworkError + : (d.description && + (0, s.z)(() => { + var i; + (t.imageDescription = + null !== (i = d.description) && void 0 !== i ? i : ""), + (t.imageUriList = [e]); + }), + u); + })(); + } + _safetyCheck(e) { + var t = this; + return (0, n._)(function* () { + var { ctx: i, span: n } = (0, L.VL)( + (0, M.Tg)(), + "text-to-image-ip-keep", + "benchmark_test_user_upload_image_input" + ), + r = + yield t.mWebContentGenerateService.repository.requestAlgorithm( + i, + "benchmark_test_user_upload_image_input.image_face_ip", + { + params: {}, + fileList: [{ fileUri: e }], + options: { ipCheck: !0 }, + }, + { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: "aigc_to_image", + feature_entrance: (0, b.b2)(), + feature_entrance_detail: "".concat( + (0, b.b2)(), + "-algo_proxy" + ), + }), + } + ); + return (n.end(), t._isCancelRecognize) + ? { stop: !0, status: l.J.Cancelled } + : r.response.ok + ? { stop: !1, status: null } + : { + stop: !0, + status: r.logId ? l.J.SafetyCheckError : l.J.NetworkError, + }; + })(); + } + _subjectCheck(e) { + var t = this; + return (0, n._)(function* () { + var i = t.graphicToolService.graphicTool.getFaceRecognize( + { imageUriList: [e] }, + { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: "to_image_referenceimage", + feature_entrance: (0, b.b2)(), + feature_entrance_detail: "".concat( + (0, b.b2)(), + "-referenceimage-human_face" + ), + }), + } + ), + n = t.graphicToolService.graphicTool.getSaliencySEG( + { imageUriList: [e], mode: N.JU.Canvas }, + { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: "to_image_referenceimage", + feature_entrance: (0, b.b2)(), + feature_entrance_detail: "".concat( + (0, b.b2)(), + "-referenceimage-object_detection" + ), + }), + } + ), + [r, a] = yield Promise.all([i, n]); + if (t._isCancelRecognize) + return { stop: !0, status: l.J.Cancelled }; + var { response: o } = r; + if (!o.ok) return { stop: !1, status: null }; + var { faceRecognizeList: s } = o.value, + c = s[0].length, + d = !1, + { response: u } = a; + return (u.ok && (d = !0), c > 1) + ? { stop: !1, status: l.J.IpKeepMultipySubject } + : 0 !== c || d + ? { stop: !1, status: null } + : { stop: !1, status: l.J.IpKeepNoSubject }; + })(); + } + _image2description(e) { + var t = this; + return (0, n._)(function* () { + var { ctx: i, span: n } = (0, L.VL)( + (0, M.Tg)(), + "text-to-image-ip-keep", + "image-to-text" + ), + r = + yield t.mWebContentGenerateService.repository.getImageDescription( + i, + { fileUri: e }, + { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: "aigc_to_image", + feature_entrance: (0, b.b2)(), + feature_entrance_detail: "".concat( + (0, b.b2)(), + "-get_image_description" + ), + }), + } + ); + if ((n.end(), t._isCancelRecognize)) + return { stop: !0, status: l.J.Cancelled }; + if (!r.response.ok) return { stop: !0, status: l.J.NetworkError }; + var { description: a } = r.response.value; + return { stop: !1, description: a, status: l.J.Success }; + })(); + } + getImagineParams() { + var e, + t = (0, s.ZN)(this.imageUriList); + return { + uri: + null !== (e = null == t ? void 0 : t[0]) && void 0 !== e ? e : "", + name: a.UI.IpKeep, + imageUriList: t, + ipKeepList: [ + { + description: this.imageDescription, + refIpWeight: this.refIpWeight / c.ux.ip.rate, + refIdWeight: this.refIdWeight / c.ux.id.rate, + }, + ], + }; + } + cancelRecognize() { + this._isCancelRecognize = !0; + } + updateRefIpWeight(e) { + this.refIpWeight = e; + } + updateRefIdWeight(e) { + this.refIdWeight = e; + } + reset() { + (this.imageUriList = []), + (this.imageDescription = ""), + (this.refIdWeight = c.ux.id.default), + (this.refIpWeight = c.ux.ip.default), + super.reset(); + } + initWithImagineParams(e, t) { + if (!!(0, d.PA)(t)) { + var i, + { imageUriList: n, ipKeepList: r } = t, + { + refIpWeight: a = c.ux.ip.default, + refIdWeight: o = c.ux.id.default, + description: l, + } = null !== (i = r[0]) && void 0 !== i ? i : {}; + (0, s.z)(() => { + (this.imageUriList = n), + (this.refIpWeight = a * c.ux.ip.rate), + (this.refIdWeight = o * c.ux.id.rate), + (this.imageDescription = l); + }); + } + } + getRecognizeStatus(e) { + return e > 1 ? l.J.IpKeepMultipySubject : l.J.Success; + } + get isRecognized() { + return 0 !== this.imageDescription.length; + } + constructor(e, t) { + super(), + (this.graphicToolService = e), + (this.mWebContentGenerateService = t), + (this.imageUriList = []), + (this.refIpWeight = c.ux.ip.default), + (this.refIdWeight = c.ux.id.default), + (this.imageDescription = ""), + (this._isCancelRecognize = !1), + (0, s.rC)(this); + } + } + (0, r.gn)( + [s.LO, (0, r.w6)("design:type", Array)], + j.prototype, + "imageUriList", + void 0 + ), + (0, r.gn)( + [s.LO, (0, r.w6)("design:type", Number)], + j.prototype, + "refIpWeight", + void 0 + ), + (0, r.gn)( + [s.LO, (0, r.w6)("design:type", Number)], + j.prototype, + "refIdWeight", + void 0 + ), + (0, r.gn)([s.LO], j.prototype, "imageDescription", void 0), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Number]), + (0, r.w6)("design:returntype", void 0), + ], + j.prototype, + "updateRefIpWeight", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Number]), + (0, r.w6)("design:returntype", void 0), + ], + j.prototype, + "updateRefIdWeight", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", []), + (0, r.w6)("design:returntype", void 0), + ], + j.prototype, + "reset", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + String, + "undefined" == typeof TImagineModalAbilityParams + ? Object + : TImagineModalAbilityParams, + ]), + (0, r.w6)("design:returntype", void 0), + ], + j.prototype, + "initWithImagineParams", + null + ), + (0, r.gn)( + [ + s.Fl, + (0, r.w6)("design:type", void 0), + (0, r.w6)("design:paramtypes", []), + ], + j.prototype, + "isRecognized", + null + ), + (j = (0, r.gn)( + [ + (0, r.fM)(0, o.fQ), + (0, r.fM)(1, _.M), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + void 0 === o.fQ ? Object : o.fQ, + void 0 === _.M ? Object : _.M, + ]), + ], + j + )); + var O = i("434712"), + B = i("280166"), + F = i("537201"), + U = i("108982"), + G = i("819340"), + z = i("417699"), + V = i("745017"), + W = i("875488"), + Z = i("388977"), + K = i("460911"), + H = i("645078"), + q = i("242566"), + J = (function () { + var e = (0, n._)(function* (e) { + var { fileOrUrl: t, containerService: i } = e, + n = "", + r = !1; + if (t instanceof File) { + if ("image/png" !== t.type) return (0, S.oW)(void 0); + (n = URL.createObjectURL(t)), (r = !0); + } else if (((n = t), "image/png" !== (yield (0, W.io)(n)))) return (0, S.oW)(void 0); + var a = "", + { transferredUrl: o, hasChanged: s } = yield (0, w.$d)({ + imageUrl: n, + containerService: i, + }); + if ((r && URL.revokeObjectURL(n), !(a = null != o ? o : "") || !s)) + return (0, S.oW)(void 0); + var l = (0, Z.ko)(i, z.e), + c = (0, Z.ko)(i, G.Z), + d = yield (0, w.u)(a), + u = c.getImageXUploader(l.appId, V.I), + f = yield u.uploadImage({ file: d }); + return f.ok + ? (0, S.oW)(f.value.uri) + : (0, S.wf)(-1, "upload failed"); + }); + return function (t) { + return e.apply(this, arguments); + }; + })(), + Y = (() => { + var e = new K.V("transparent-png-upload-image"), + t = new Map(); + return (function () { + var i = (0, n._)(function* (i) { + var n, + r = Date.now(), + a = 0, + o = "unknown"; + i.fileOrUrl instanceof File + ? ((n = yield (0, H.r)(i.fileOrUrl)), + (a = i.fileOrUrl.size), + (o = i.fileOrUrl.type)) + : (n = (0, H.V)(i.fileOrUrl)); + var s = t.get(n); + if (s) { + var l = yield s; + return l.ok ? l.value : void 0; + } + var c = e.getItem(n); + if (c) + return ( + (0, q.N)(i.containerService, { + status: q.G.Success, + size: a, + format: o, + costTime: Date.now() - r, + useCache: !0, + source: "transparent_png", + }), + c + ); + var d = J(i); + t.set(n, d); + var u = yield d; + return ( + u.ok && + u.value && + ((0, q.N)(i.containerService, { + status: q.G.Success, + size: a, + format: o, + costTime: Date.now() - r, + useCache: !1, + source: "transparent_png", + }), + e.setItem(n, u.value)), + !u.ok && + (0, q.N)(i.containerService, { + status: q.G.Failed, + size: a, + format: o, + costTime: Date.now() - r, + useCache: !1, + source: "transparent_png", + }), + t.delete(n), + u.ok ? u.value : void 0 + ); + }); + return function (e) { + return i.apply(this, arguments); + }; + })(); + })(), + Q = 1; + class X extends u.h { + preRecognize(e, t) { + var i = this; + return (0, n._)(function* () { + yield i.mutexLock.acquire(); + try { + var n, + r, + o, + s, + l, + d, + u, + f = yield i.getCacheKey(e, t), + h = i.getRecognizeCache(f), + p = + i.name === U.s.ControlNetPose + ? (null == h + ? void 0 + : null === (r = h.blendPreviewRes) || void 0 === r + ? void 0 + : null === (n = r.response) || void 0 === n + ? void 0 + : n.ok) && + "poseDetectRes" in h && + (null === (s = h.poseDetectRes) || void 0 === s + ? void 0 + : null === (o = s.response) || void 0 === o + ? void 0 + : o.ok) + : null == h + ? void 0 + : null === (d = h.blendPreviewRes) || void 0 === d + ? void 0 + : null === (l = d.response) || void 0 === l + ? void 0 + : l.ok; + if (h && p) return h; + var v = yield i.getRecognizeUri(e, t), + m = i.graphicToolService.graphicTool.generateBlendPreview( + { + model: a.Ij, + ability: { + name: a.UI.ControlNet, + imageUriList: [v], + controlNetList: [ + { + name: c.go[i.name], + strength: c.XR.default / c.XR.max, + imageIndex: 0, + }, + ], + }, + }, + { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: "to_image_referenceimage", + feature_entrance: (0, b.b2)(), + feature_entrance_detail: "" + .concat((0, b.b2)(), "-referenceimage-") + .concat(i.name), + }), + } + ); + i.name === U.s.ControlNetPose && + (u = i.graphicToolService.graphicTool.poseDetect( + { uri: v }, + { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: "to_image_referenceimage", + feature_entrance: (0, b.b2)(), + feature_entrance_detail: "".concat( + (0, b.b2)(), + "-referenceimage-pose_detection" + ), + }), + } + )); + var [g, _] = yield Promise.all([m, u]); + return ( + i.name === U.s.ControlNetPose + ? g.response.ok && + (null == _ ? void 0 : _.response.ok) && + i.setRecognizeCache(f, { + blendPreviewRes: g, + poseDetectRes: _, + name: U.s.ControlNetPose, + }) + : g.response.ok && + i.setRecognizeCache(f, { + blendPreviewRes: g, + name: i.name, + }), + { name: i.name, blendPreviewRes: g, poseDetectRes: _ } + ); + } finally { + i.mutexLock.release(); + } + })(); + } + getRecognizeUri(e, t) { + var i = this; + return (0, n._)(function* () { + if (!t) return e; + var n = yield Y({ + fileOrUrl: t, + containerService: i._containerService, + }); + return n ? n : e; + })(); + } + recognize(e, t) { + var i = this; + return (0, n._)(function* () { + var { name: n } = i; + if (!(0, d.W9)(n)) return l.J.Empty; + (i._isCancelRecognize = !1), (i.originUri = e); + var r = yield i.preRecognize(e, t); + if (r.name === U.s.ControlNetPose) { + var { poseDetectRes: a } = r, + { response: o } = a; + if (!o.ok) return l.J.PoseDetectError; + var { isPose: c } = o.value; + if (!c) return l.J.PoseDetectError; + } + var { blendPreviewRes: u } = r, + { response: f } = u; + if (f.ok) { + if (i._isCancelRecognize) return l.J.Cancelled; + var { ability: h } = f.value; + return ((0, s.z)(() => { + var e, t, n, r, a, o; + (i.previewUrl = + null !== + (a = + null == h + ? void 0 + : null === (t = h.largeImageList) || void 0 === t + ? void 0 + : null === (e = t[0]) || void 0 === e + ? void 0 + : e.imageUrl) && void 0 !== a + ? a + : ""), + (i.previewUri = + null !== + (o = + null == h + ? void 0 + : null === (r = h.largeImageList) || void 0 === r + ? void 0 + : null === (n = r[0]) || void 0 === n + ? void 0 + : n.imageUri) && void 0 !== o + ? o + : ""); + }), + h) + ? l.J.Success + : l.J.Empty; + } + var { code: p } = f; + return p === y.b.ErrPreImgRiskNotPass + ? l.J.ImageIPIsBlocked + : l.J.NetworkError; + })(); + } + cancelRecognize() { + this._isCancelRecognize = !0; + } + getImagineParams() { + var { name: e } = this, + t = (0, d.W9)(e); + return t + ? { + uri: this.originUri, + name: a.UI.ControlNet, + imageUriList: ["", this.originUri, this.previewUri], + previewInfo: { + imageUri: this.previewUri, + imageUrl: this.previewUrl, + }, + extra: JSON.stringify([ + { name: this.name, fitMode: this.fitMode, imageIndex: 0 }, + ]), + controlNetList: [ + { + name: c.go[t], + strength: this.referenceLevel / c.XR.max, + imageIndex: 0, + }, + ], + } + : { + uri: this.originUri, + name: a.UI.ControlNet, + imageUriList: ["", this.originUri, this.previewUri], + controlNetList: [], + }; + } + updateReferenceLevel(e) { + this.referenceLevel = e; + } + updateFitMode(e) { + this.fitMode = e; + } + syncData(e) { + var { level: t, fitMode: i } = e; + t && (this.referenceLevel = t), i && (this.fitMode = i); + } + reset() { + (this.referenceLevel = Math.round(c.XR.default)), + (this.originUri = ""), + (this.previewUri = ""), + (this.previewUrl = ""), + super.reset(); + } + initWithImagineParams(e, t) { + if (!(0, d.od)(t)) return; + var { + controlNetList: i, + extra: n, + previewInfo: r, + imageUriList: a, + } = t, + { strength: o, name: s } = + null !== (l = null == i ? void 0 : i[0]) && void 0 !== l ? l : {}; + if (F.i[s] === this.name) { + if ( + (o && (this.referenceLevel = o * c.XR.max), + r && + ((this.previewUrl = r.imageUrl), + (this.previewUri = r.imageUri)), + n) + ) { + var l, + u, + f = JSON.parse(null != n ? n : "[]"), + { fitMode: h } = + null !== (u = null == f ? void 0 : f[0]) && void 0 !== u + ? u + : {}; + this.fitMode = h; + } + this.originUri = null == a ? void 0 : a[Q]; + } + } + get isRecognized() { + return "" !== this.previewUrl; + } + constructor(e, t, i, n, r) { + super(), + (this.name = e), + (this.graphicToolService = t), + (this._uploadService = i), + (this._containerService = n), + (this._environmentService = r), + (this.referenceLevel = c.XR.default), + (this.fitMode = U.G.CenterCrop), + (this.previewUrl = ""), + (this.originUri = ""), + (this.previewUri = ""), + (this._isCancelRecognize = !1), + (0, s.rC)(this); + } + } + (0, r.gn)([s.LO], X.prototype, "referenceLevel", void 0), + (0, r.gn)([s.LO], X.prototype, "fitMode", void 0), + (0, r.gn)([s.LO], X.prototype, "previewUrl", void 0), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Number]), + (0, r.w6)("design:returntype", void 0), + ], + X.prototype, + "updateReferenceLevel", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [void 0 === U.G ? Object : U.G]), + (0, r.w6)("design:returntype", void 0), + ], + X.prototype, + "updateFitMode", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + "undefined" == typeof IControlNetSyncData + ? Object + : IControlNetSyncData, + ]), + (0, r.w6)("design:returntype", void 0), + ], + X.prototype, + "syncData", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", []), + (0, r.w6)("design:returntype", void 0), + ], + X.prototype, + "reset", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + String, + "undefined" == typeof TImagineModalAbilityParams + ? Object + : TImagineModalAbilityParams, + ]), + (0, r.w6)("design:returntype", void 0), + ], + X.prototype, + "initWithImagineParams", + null + ), + (0, r.gn)( + [ + s.Fl, + (0, r.w6)("design:type", void 0), + (0, r.w6)("design:paramtypes", []), + ], + X.prototype, + "isRecognized", + null + ), + (X = (0, r.gn)( + [ + (0, r.fM)(1, o.fQ), + (0, r.fM)(2, G.Z), + (0, r.fM)(3, O.t), + (0, r.fM)(4, B.Y), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + "undefined" == typeof TValidControlNet + ? Object + : TValidControlNet, + void 0 === o.fQ ? Object : o.fQ, + void 0 === G.Z ? Object : G.Z, + void 0 === O.t ? Object : O.t, + void 0 === B.Y ? Object : B.Y, + ]), + ], + X + )); + var $ = 0, + ee = 0; + class et extends u.h { + preRecognize(e) { + return (0, n._)(function* () {})(); + } + recognize(e) { + var t = this; + return (0, n._)(function* () { + return (t.originURI = e), yield Promise.resolve(), l.J.Success; + })(); + } + cancelRecognize() {} + getImagineParams() { + return { + uri: this.originURI, + name: a.UI.StyleReference, + imageUriList: [this.originURI], + imageWeightList: [this.referenceLevel], + }; + } + updateReferenceLevel(e) { + this.referenceLevel = e; + } + reset() { + (this.referenceLevel = Math.round(c.FY.default)), + (this.originURI = ""), + super.reset(); + } + initWithImagineParams(e, t) { + var i, n, r, a; + if (!!(0, d.iP)(t)) + (this.referenceLevel = + null !== + (r = + null === (i = t.imageWeightList) || void 0 === i + ? void 0 + : i[$]) && void 0 !== r + ? r + : Math.round(c.FY.default)), + (this.originURI = + null !== + (a = + null === (n = t.imageUriList) || void 0 === n + ? void 0 + : n[ee]) && void 0 !== a + ? a + : ""); + } + get isRecognized() { + return !1; + } + constructor(e) { + super(), + (this.graphicToolService = e), + (this.referenceLevel = c.FY.default), + (this.originURI = ""), + (0, s.rC)(this); + } + } + (0, r.gn)([s.LO], et.prototype, "referenceLevel", void 0), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Number]), + (0, r.w6)("design:returntype", void 0), + ], + et.prototype, + "updateReferenceLevel", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", []), + (0, r.w6)("design:returntype", void 0), + ], + et.prototype, + "reset", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + String, + "undefined" == typeof TImagineModalAbilityParams + ? Object + : TImagineModalAbilityParams, + ]), + (0, r.w6)("design:returntype", void 0), + ], + et.prototype, + "initWithImagineParams", + null + ), + (0, r.gn)( + [ + s.Fl, + (0, r.w6)("design:type", void 0), + (0, r.w6)("design:paramtypes", []), + ], + et.prototype, + "isRecognized", + null + ), + (et = (0, r.gn)( + [ + (0, r.fM)(0, o.fQ), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [void 0 === o.fQ ? Object : o.fQ]), + ], + et + )); + var ei = 0; + class en extends u.h { + preRecognize(e) { + var t = this; + return (0, n._)(function* () { + yield t.mutexLock.acquire(); + try { + var i, + n = yield t.getCacheKey(e), + r = t.getRecognizeCache(n), + a = + (null == r + ? void 0 + : null === (i = r.safetyCheckResp) || void 0 === i + ? void 0 + : i.status) === null; + if (r && a) return r; + var o = yield t._safetyCheck(e), + s = { safetyCheckResp: o }; + return !o.stop && t.setRecognizeCache(n, s), s; + } finally { + t.mutexLock.release(); + } + })(); + } + recognize(e) { + var t = this; + return (0, n._)(function* () { + (t.originURI = e), (t._isCancelRecognize = !1); + var i, + { safetyCheckResp: n } = yield t.preRecognize(e); + return n.stop + ? null !== (i = n.status) && void 0 !== i + ? i + : l.J.NetworkError + : l.J.Success; + })(); + } + _safetyCheck(e) { + var t = this; + return (0, n._)(function* () { + var { ctx: i, span: n } = (0, L.VL)( + (0, M.Tg)(), + "text-to-image-ip-keep", + "benchmark_test_user_upload_image_input" + ), + r = + yield t.mWebContentGenerateService.repository.requestAlgorithm( + i, + "benchmark_test_user_upload_image_input.image_face_ip", + { + params: {}, + fileList: [{ fileUri: e }], + options: { ipCheck: !0 }, + }, + { + babi_param: JSON.stringify({ + scenario: "image_video_generation", + feature_key: "aigc_to_image", + feature_entrance: (0, b.b2)(), + feature_entrance_detail: "".concat( + (0, b.b2)(), + "-algo_proxy" + ), + }), + } + ); + return (n.end(), t._isCancelRecognize) + ? { stop: !0, status: l.J.Cancelled } + : r.response.ok + ? { stop: !1, status: null } + : { + stop: !0, + status: r.logId ? l.J.SafetyCheckError : l.J.NetworkError, + }; + })(); + } + cancelRecognize() { + this._isCancelRecognize = !0; + } + getImagineParams() { + return { + uri: this.originURI, + name: a.UI.ByteEdit, + imageUriList: [this.originURI], + strength: this.referenceLevel / c.cR.max, + }; + } + updateReferenceLevel(e) { + this.referenceLevel = e; + } + reset() { + (this.referenceLevel = Math.round(c.cR.default)), + (this.originURI = ""), + super.reset(); + } + initWithImagineParams(e, t) { + var i, n; + if (!!(0, d.fA)(t)) + (this.referenceLevel = t.strength + ? Math.floor(t.strength * c.cR.max) + : Math.round(c.cR.default)), + (this.originURI = + null !== + (n = + null === (i = t.imageUriList) || void 0 === i + ? void 0 + : i[ei]) && void 0 !== n + ? n + : ""); + } + get isRecognized() { + return !1; + } + constructor(e, t) { + super(), + (this.graphicToolService = e), + (this.mWebContentGenerateService = t), + (this.referenceLevel = c.cR.default), + (this.originURI = ""), + (this._isCancelRecognize = !1), + (0, s.rC)(this); + } + } + (0, r.gn)([s.LO], en.prototype, "referenceLevel", void 0), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [Number]), + (0, r.w6)("design:returntype", void 0), + ], + en.prototype, + "updateReferenceLevel", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", []), + (0, r.w6)("design:returntype", void 0), + ], + en.prototype, + "reset", + null + ), + (0, r.gn)( + [ + s.aD.bound, + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + String, + "undefined" == typeof TImagineModalAbilityParams + ? Object + : TImagineModalAbilityParams, + ]), + (0, r.w6)("design:returntype", void 0), + ], + en.prototype, + "initWithImagineParams", + null + ), + (0, r.gn)( + [ + s.Fl, + (0, r.w6)("design:type", void 0), + (0, r.w6)("design:paramtypes", []), + ], + en.prototype, + "isRecognized", + null + ), + (en = (0, r.gn)( + [ + (0, r.fM)(0, o.fQ), + (0, r.fM)(1, _.M), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + void 0 === o.fQ ? Object : o.fQ, + void 0 === _.M ? Object : _.M, + ]), + ], + en + )); + var er = i("663456"); + class ea { + handleUploadTransparentPngInIdleTime(e) { + var t, i; + ( + (null === (t = window) || void 0 === t + ? void 0 + : t.requestIdleCallback) || + (null === (i = window) || void 0 === i ? void 0 : i.setTimeout) + )(() => { + Y({ fileOrUrl: e, containerService: this._containerService }); + }); + } + addPreloadTask(e) { + for (var t of e) this._asyncQueue.addTask(t.loader); + } + constructor(e) { + (this._containerService = e), + (this._asyncQueue = new er.z({ concurrent: 2 })); + } + } + ea = (0, r.gn)( + [ + (0, r.fM)(0, O.t), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [void 0 === O.t ? Object : O.t]), + ], + ea + ); + var eo = i("111709"); + class es { + static getGraphicToolStoreInstance(e) { + return ( + !this._instance && + (this._instance = null == e ? void 0 : e.createInstance(es, e)), + this._instance + ); + } + setGenerateImageParamsManager(e) { + this._generateImageParamsManager = e; + } + changeCurrentAbility(e) { + this.currentAbility = e; + var t = this.getInstanceByAbility(this.currentAbility); + this.activeInstance = t; + } + getInstanceByAbility(e) { + return { + [U.s.BasicBlend]: this.basicBlendInstance, + [U.s.FaceGan]: this.faceGanInstance, + [U.s.BgPaint]: this.bgPaintInstance, + [U.s.IpKeep]: this.ipKeepInstance, + [U.s.ControlNetCanny]: this.cannyInstance, + [U.s.ControlNetDepth]: this.depthInstance, + [U.s.ControlNetPose]: this.poseInstance, + [U.s.Unknown]: void 0, + [U.s.ControlNet]: void 0, + [U.s.Text2image]: void 0, + [U.s.Image2image]: void 0, + [U.s.StyleReference]: this.styleInstance, + [U.s.ByteEdit]: this.byteEditInstance, + [U.s.StyleCode]: void 0, + }[e]; + } + getImagineParam() { + var e, + t = + null === (e = this.activeInstance) || void 0 === e + ? void 0 + : e.getImagineParams(); + return t ? t : null; + } + preloadRecognize(e, t, i) { + var r, + a = this; + null === (r = this.preloadManager) || + void 0 === r || + r.addPreloadTask([ + { + loader: (0, n._)(function* () { + var i; + if (!!e.includes(U.s.ByteEdit)) + yield null === (i = a.byteEditInstance) || void 0 === i + ? void 0 + : i.preRecognize(t); + }), + }, + { + loader: (0, n._)(function* () { + var i; + if (!!e.includes(U.s.BgPaint)) + yield null === (i = a.bgPaintInstance) || void 0 === i + ? void 0 + : i.preRecognize(t); + }), + }, + { + loader: (0, n._)(function* () { + var i; + if (!!e.includes(U.s.FaceGan)) + yield null === (i = a.faceGanInstance) || void 0 === i + ? void 0 + : i.preRecognize(t); + }), + }, + { + loader: (0, n._)(function* () { + var n; + if (!!e.includes(U.s.ControlNetCanny)) + yield null === (n = a.cannyInstance) || void 0 === n + ? void 0 + : n.preRecognize(t, i); + }), + }, + { + loader: (0, n._)(function* () { + var i; + if (!!e.includes(U.s.IpKeep)) + yield null === (i = a.ipKeepInstance) || void 0 === i + ? void 0 + : i.preRecognize(t); + }), + }, + ]); + } + reset() { + var e, t, i, n, r, a, o, s; + null === (e = this.basicBlendInstance) || void 0 === e || e.reset(), + null === (t = this.faceGanInstance) || void 0 === t || t.reset(), + null === (i = this.bgPaintInstance) || void 0 === i || i.reset(), + null === (n = this.ipKeepInstance) || void 0 === n || n.reset(), + null === (r = this.cannyInstance) || void 0 === r || r.reset(), + null === (a = this.depthInstance) || void 0 === a || a.reset(), + null === (o = this.poseInstance) || void 0 === o || o.reset(), + null === (s = this.byteEditInstance) || void 0 === s || s.reset(), + this._resetStrength(); + } + _resetStrength() { + var e, + t, + i, + n, + r, + a = this._generateImageParamsManager; + if (a) { + var o = a.getStrength(eo.oo.ByteEdit); + null === (e = this.byteEditInstance) || + void 0 === e || + e.updateReferenceLevel(o); + var s = a.getStrength(eo.oo.StyleReference); + null === (t = this.styleInstance) || + void 0 === t || + t.updateReferenceLevel(s); + var l = a.getStrength(eo.oo.Canny); + null === (i = this.cannyInstance) || + void 0 === i || + i.updateReferenceLevel(l); + var c = a.getStrength(eo.oo.Depth); + null === (n = this.depthInstance) || + void 0 === n || + n.updateReferenceLevel(c); + var d = a.getStrength(eo.oo.Pose); + null === (r = this.poseInstance) || + void 0 === r || + r.updateReferenceLevel(d); + } + } + syncData(e) { + var t, i, n; + null === (t = this.cannyInstance) || void 0 === t || t.syncData(e), + null === (i = this.depthInstance) || void 0 === i || i.syncData(e), + null === (n = this.poseInstance) || void 0 === n || n.syncData(e); + } + constructor(e) { + (this.currentAbility = U.s.Unknown), + (this.basicBlendInstance = + null == e ? void 0 : e.createInstance(p)), + (this.faceGanInstance = null == e ? void 0 : e.createInstance(D)), + (this.bgPaintInstance = + null == e ? void 0 : e.createInstance(R.C9)), + (this.ipKeepInstance = null == e ? void 0 : e.createInstance(j)), + (this.cannyInstance = + null == e ? void 0 : e.createInstance(X, U.s.ControlNetCanny)), + (this.depthInstance = + null == e ? void 0 : e.createInstance(X, U.s.ControlNetDepth)), + (this.poseInstance = + null == e ? void 0 : e.createInstance(X, U.s.ControlNetPose)), + (this.styleInstance = null == e ? void 0 : e.createInstance(et)), + (this.byteEditInstance = null == e ? void 0 : e.createInstance(en)), + (this.preloadManager = null == e ? void 0 : e.createInstance(ea)), + (this.activeInstance = void 0); + } + } + }, + 133438: function (e, t, i) { + "use strict"; + i.d(t, { + PA: function () { + return c; + }, + W9: function () { + return u; + }, + cj: function () { + return o; + }, + fA: function () { + return r; + }, + iP: function () { + return d; + }, + jq: function () { + return a; + }, + od: function () { + return l; + }, + q0: function () { + return s; + }, + }); + var n = i(108982); + function r(e) { + return e.name === n.s.ByteEdit && 1 !== Object.keys(e).length; + } + function a(e) { + return e.name === n.s.FaceGan && 1 !== Object.keys(e).length; + } + function o(e) { + return e.name === n.s.BgPaint && 1 !== Object.keys(e).length; + } + function s(e) { + return e.name === n.s.BasicBlend && 1 !== Object.keys(e).length; + } + function l(e) { + return e.name === n.s.ControlNet && 1 !== Object.keys(e).length; + } + function c(e) { + return e.name === n.s.IpKeep && 1 !== Object.keys(e).length; + } + function d(e) { + return e.name === n.s.StyleReference && 1 !== Object.keys(e).length; + } + function u(e) { + return ( + (e === n.s.ControlNetCanny || + e === n.s.ControlNetDepth || + e === n.s.ControlNetPose) && + e + ); + } + }, + 498973: function (e, t, i) { + "use strict"; + i.d(t, { e: () => C }); + var n = i("625572"), + r = i("639880"), + a = i("789786"), + o = i("433965"), + s = i("260963"), + l = i("902519"), + c = i("200294"), + d = i("139646"), + u = i("241047"), + f = i("875488"), + h = i("936690"); + function p(e, t) { + var i, + n = new Map(); + for (var r of [...t, ...e]) + n.set( + (0, o.w3)(r) || (0, o.sQ)(r) + ? r.key + : null === (i = r.commonAttr) || void 0 === i + ? void 0 + : i.id, + r + ); + return Array.from(n.values()).sort( + (e, t) => + ((0, o.w3)(t) || (0, o.sQ)(t) + ? t.createTime + : t.commonAttr.createTime) - + ((0, o.w3)(e) || (0, o.sQ)(e) + ? e.createTime + : e.commonAttr.createTime) + ); + } + function v(e, t) { + var i, + n, + r = new Map(), + a = []; + for (var s of [...e, ...t]) { + if ( + !r.has( + (0, o.w3)(s) || (0, o.sQ)(s) + ? s.key + : null === (i = s.commonAttr) || void 0 === i + ? void 0 + : i.id + ) + ) + r.set( + (0, o.w3)(s) || (0, o.sQ)(s) + ? s.key + : null === (n = s.commonAttr) || void 0 === n + ? void 0 + : n.id, + s + ), + a.push(s); + } + return a; + } + var m = i("586315"), + g = i("927457"), + _ = i("7197"); + function y(e) { + return b.apply(this, arguments); + } + function b() { + return (b = (0, d._)(function* (e) { + var t, + i, + n, + r, + a, + o, + { secUid: s, imageTypeList: l } = e; + if ( + !(null === (t = window) || void 0 === t + ? void 0 + : t._personalFeedSecUid) || + (null === (i = window) || void 0 === i + ? void 0 + : i._personalFeedSecUid) !== s + ) + return Promise.resolve((0, m.wf)(-1, "secUid mismatch")); + if ( + !(null === (n = window) || void 0 === n + ? void 0 + : n._personalFeedImageTypeList) || + Array.isArray( + null === (r = window) || void 0 === r + ? void 0 + : r._personalFeedImageTypeList + ) + ) { + var c = new Set(l), + d = new Set(window._personalFeedImageTypeList); + if (0 !== c.difference(d).size || 0 !== d.difference(c).size) + return Promise.resolve((0, m.wf)(-1, "subTab mismatch")); + } + if ( + !(null === (a = window) || void 0 === a + ? void 0 + : a.__get_homepage_info_result) + ) + try { + yield window.pPersonalFeedList; + } catch (e) { + (0, g.P)(e); + } + var u = + null === (o = window) || void 0 === o + ? void 0 + : o.__get_homepage_info_result; + return u + ? "0" !== u.ret + ? Promise.resolve((0, m.wf)(Number(u.ret), u.errmsg)) + : ((window.__get_homepage_info_result = void 0), + (window._personalFeedSecUid = void 0), + (window._personalFeedImageTypeList = void 0), + Promise.resolve( + (0, m.oW)(yield (0, _.G)(u.data, u.logid, u.cache_sync_token)) + )) + : Promise.resolve((0, m.ly)()); + })).apply(this, arguments); + } + var I = i("884569"), + w = i("993308"); + class x { + get author() { + var e; + return null === (e = this.itemList[0]) || void 0 === e + ? void 0 + : e.author; + } + reset() { + (this.hasMore = !0), + (this.itemList = []), + (this.offset = 0), + (this.hadFetch = !1); + } + getDataList(e) { + var t = this; + return (0, d._)(function* () { + var i, + r = yield (0, f.FI)(), + { count: a, secUid: c, offset: d, imageInfo: m } = e, + g = { + offset: null != d ? d : t.offset, + count: null != a ? a : u.iV.count, + imageTypeList: t.imageTypeList, + secUid: null != c ? c : "", + imageInfo: null != m ? m : r, + }; + if (t.tabType === l.lX.Post) { + if ( + !(i = yield y({ + secUid: g.secUid, + imageTypeList: t.imageTypeList, + })) || + !(i.ok && i.value) + ) { + var _ = + t._prefetchRequestService.findReusableConnectByRequestParams({ + displayName: w.s, + requestParams: { + secUid: g.secUid, + offset: 0, + count: u.iV.count, + imageTypeList: t.imageTypeList, + }, + }); + _ + ? (t._prefetchRequestService.burnLater(_), + (i = yield _.pRequest)) + : (i = + yield t._homePageService.homePageRepository.getDataList( + g + )); + } + } else i = yield t._homePageService.homePageRepository.getLikeDataList(g); + if ( + ((0, s.z)(() => { + t.hadFetch = !0; + }), + i.ok) + ) { + var b = i.value, + I = b.itemList + .filter((e) => { + var t; + return ( + !( + (0, o.Rb)(e) && + !(null === (t = e.collection) || void 0 === t + ? void 0 + : t.itemList) + ) && !((0, o.w3)(e) && !e.video) + ); + }) + .map((e) => { + var t, + i, + r = (0, n._)({}, e); + if ((0, o.DF)(r)) { + var a, + s, + { width: l, height: c } = + null !== + (s = + null === (a = r.image.largeImages) || void 0 === a + ? void 0 + : a[0]) && void 0 !== s + ? s + : {}; + (r.width = l), + (r.height = c), + (r.blendParams = (0, h.tA)(r)); + } else if ((0, o.jD)(r)) { + var d, + u, + { width: f, height: p } = + null !== + (u = + null === (d = r.image.largeImages) || void 0 === d + ? void 0 + : d[0]) && void 0 !== u + ? u + : {}; + (r.width = f), (r.height = p); + } else + (0, o.Rb)(r) && + (null === (i = r.collection) || + void 0 === i || + null === (t = i.itemList) || + void 0 === t || + t.forEach((e) => { + (e.author = r.author), + (e.blendParams = (0, h.tA)(e)); + })); + return r; + }); + (0, s.z)(() => { + if (0 === d) t.itemList = I; + else { + var e = t.tabType === l.lX.Post ? p : v; + t.itemList = e(t.itemList, I); + } + (t.hasMore = b.hasMore), + (t.totalCount = b.totalCount), + (t.offset = b.nextOffset); + }); + } + return i; + })(); + } + constructor(e, t, i, n) { + (this._homePageService = i), + (this._prefetchRequestService = n), + (this.tabType = l.lX.Post), + (this.imageTypeList = [l.PK.SINGLE_AND_COLLECTION]), + (this.hadFetch = !1), + (this.totalCount = 0), + (this.hasMore = !0), + (this.itemList = []), + (this.offset = 0), + (this.tabType = e), + (this.imageTypeList = t), + (0, s.rC)(this); + } + } + (0, a.gn)([s.LO], x.prototype, "hadFetch", void 0), + (0, a.gn)([s.LO], x.prototype, "totalCount", void 0), + (0, a.gn)([s.LO], x.prototype, "hasMore", void 0), + (0, a.gn)( + [s.LO, (0, a.w6)("design:type", Array)], + x.prototype, + "itemList", + void 0 + ), + (0, a.gn)([s.LO], x.prototype, "offset", void 0), + (0, a.gn)( + [ + s.Fl, + (0, a.w6)("design:type", Object), + (0, a.w6)("design:paramtypes", []), + ], + x.prototype, + "author", + null + ), + (x = (0, a.gn)( + [ + (0, a.fM)(2, I.o), + (0, a.fM)(3, c.d), + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [ + void 0 === l.lX ? Object : l.lX, + Array, + void 0 === I.o ? Object : I.o, + void 0 === c.d ? Object : c.d, + ]), + ], + x + )); + var S = i("699813"); + class M { + resetFeedListIfNeed() { + if (this.hasLikeStateChanged) { + var e; + (this.hasLikeStateChanged = !1), + null === (e = this._instanceAll) || void 0 === e || e.reset(); + } + } + refetchData(e) { + var t, i, n; + null === (t = this._instanceAllAndVideo) || + void 0 === t || + t.getDataList({ secUid: e, offset: 0 }), + null === (i = this._instanceMasterpiece) || + void 0 === i || + i.getDataList({ secUid: e, offset: 0 }), + null === (n = this._instanceAll) || + void 0 === n || + n.getDataList({ secUid: e, offset: 0 }); + } + removeTargetItem(e) { + this.removeTargetItemByInstance(e, this._instanceAllAndVideo), + this.removeTargetItemByInstance(e, this._instanceMasterpiece), + this.removeTargetItemByInstance(e, this.instanceAll); + } + makeItemFavorite(e, t) { + this.makeItemFavoriteByInstance(e, t, this._instanceAllAndVideo), + this.makeItemFavoriteByInstance(e, t, this._instanceMasterpiece), + this.makeItemFavoriteByInstance(e, t, this._instanceAll), + (this.hasLikeStateChanged = !0); + } + removeTargetItemByInstance(e, t) { + if (!!t) { + var i = t.itemList.findIndex( + (t) => + ((0, o.w3)(t) || (0, o.sQ)(t) + ? t.publishedItemId + : t.commonAttr.id) === e + ); + i > -1 && + (0, s.z)(() => { + (t.itemList = t.itemList.filter((e, t) => t !== i)), + t.totalCount && (t.totalCount -= 1); + }); + } + } + updateHasLikeReady(e) { + this.hasLikeReady = e; + } + makeItemFavoriteByInstance(e, t, i) { + if (!!i) { + var n = i.itemList.findIndex( + (t) => + ((0, o.w3)(t) || (0, o.sQ)(t) ? t.key : t.commonAttr.id) === e + ); + if (n > -1) { + var r = i.itemList[n]; + (0, s.z)(() => { + r.statistic && + ((r.statistic.favoriteNum += t ? 1 : -1), + (r.statistic.hasFavorited = t)); + }); + } + (0, s.z)(() => { + i.tabType === l.lX.Like && (i.totalCount += t ? 1 : -1); + }); + } + } + get instanceAll() { + return this._instanceAll; + } + get activeImageType() { + var e, t, i; + return (null === (e = this.activeInstance) || void 0 === e + ? void 0 + : e.imageTypeList.length) === 1 && + null !== + (i = + null === (t = this.activeInstance) || void 0 === t + ? void 0 + : t.imageTypeList[0]) && + void 0 !== i + ? i + : l.PK.SINGLE_AND_COLLECTION; + } + get isActiveInstanceHadFetch() { + var e, t; + return ( + null !== + (t = + null === (e = this.activeInstance) || void 0 === e + ? void 0 + : e.hadFetch) && + void 0 !== t && + t + ); + } + get isActiveImageTypeEmpty() { + var e; + return ( + (null === (e = this.activeInstance) || void 0 === e + ? void 0 + : e.itemList.length) === 0 + ); + } + get allWorkCardCount() { + var e, t; + return null !== + (t = + null === (e = this._instanceAll) || void 0 === e + ? void 0 + : e.totalCount) && void 0 !== t + ? t + : 0; + } + get workCardList() { + var e, t; + return null !== + (t = + null === (e = this.activeInstance) || void 0 === e + ? void 0 + : e.itemList) && void 0 !== t + ? t + : []; + } + setActiveInstance(e) { + this.activeInstance = e; + } + setActiveSubTabType(e) { + this.activeSubTabType = e; + } + changeCurrentSubTabType(e) { + switch (e) { + case l.Ym.Story: + this.setActiveSubTabType(l.Ym.Story), + this.setActiveInstance(this._instanceMasterpiece); + break; + case l.Ym.Template: + this.setActiveSubTabType(l.Ym.Template), + this.setActiveInstance(this._instanceAllAndVideo); + break; + default: + (0, S.bP)(e, "unknown sub tab type"); + } + } + changeCurrentImageType(e) { + switch (e) { + case l.PK.IMAGE_SINGLE: + (0, S.ss)( + "currently no implementation for MWebImageType.IMAGE_SINGLE" + ); + case l.PK.IMAGE_COLLECTION: + (0, S.ss)( + "currently no implementation for MWebImageType.IMAGE_COLLECTION" + ); + case l.PK.SINGLE_AND_COLLECTION: + this.setActiveInstance(this._instanceAll); + break; + case l.PK.MASTERPIECE: + this.setActiveSubTabType(l.Ym.Story), + this.setActiveInstance(this._instanceMasterpiece); + break; + default: + this.setActiveSubTabType(l.Ym.Template), + this.setActiveInstance(this._instanceAllAndVideo); + } + } + constructor(e, t) { + (this.hasLikeStateChanged = !1), + (this.hasLikeReady = !0), + (this._instanceAllAndVideo = void 0), + (this._instanceMasterpiece = void 0), + (this._instanceAll = void 0), + (this.activeInstance = void 0), + (this.activeSubTabType = l.Ym.Template), + (this.listDataType = t), + (this._instanceAllAndVideo = e.createInstance(x, t, [ + ...u.fk[l.Ym.Template], + ])), + (this._instanceMasterpiece = e.createInstance(x, t, [ + ...u.fk[l.Ym.Story], + ])), + (this._instanceAll = e.createInstance(x, t, [ + l.PK.SINGLE_AND_COLLECTION, + ])), + (this.activeInstance = this._instanceAllAndVideo), + (0, s.rC)(this); + } + } + (0, a.gn)( + [s.LO, (0, a.w6)("design:type", Object)], + M.prototype, + "activeInstance", + void 0 + ), + (0, a.gn)( + [s.LO, (0, a.w6)("design:type", void 0 === l.Ym ? Object : l.Ym)], + M.prototype, + "activeSubTabType", + void 0 + ), + (0, a.gn)( + [ + s.Fl, + (0, a.w6)("design:type", void 0 === l.PK ? Object : l.PK), + (0, a.w6)("design:paramtypes", []), + ], + M.prototype, + "activeImageType", + null + ), + (0, a.gn)( + [ + s.Fl, + (0, a.w6)("design:type", Boolean), + (0, a.w6)("design:paramtypes", []), + ], + M.prototype, + "isActiveInstanceHadFetch", + null + ), + (0, a.gn)( + [ + s.Fl, + (0, a.w6)("design:type", Boolean), + (0, a.w6)("design:paramtypes", []), + ], + M.prototype, + "isActiveImageTypeEmpty", + null + ), + (0, a.gn)( + [ + s.Fl, + (0, a.w6)("design:type", Number), + (0, a.w6)("design:paramtypes", []), + ], + M.prototype, + "allWorkCardCount", + null + ), + (0, a.gn)( + [ + s.Fl, + (0, a.w6)("design:type", void 0), + (0, a.w6)("design:paramtypes", []), + ], + M.prototype, + "workCardList", + null + ), + (0, a.gn)( + [ + s.aD.bound, + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [Object]), + (0, a.w6)("design:returntype", void 0), + ], + M.prototype, + "setActiveInstance", + null + ), + (0, a.gn)( + [ + s.aD.bound, + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [void 0 === l.Ym ? Object : l.Ym]), + (0, a.w6)("design:returntype", void 0), + ], + M.prototype, + "setActiveSubTabType", + null + ); + class C { + static getHomePageStoreInstance(e, t) { + return ( + (!this._instance || t.needCreateNewInstance) && + (this._instance = null == e ? void 0 : e.createInstance(C, e, t)), + this._instance + ); + } + static removeTargetItem(e) { + var t, i, n, r; + null === (i = this._instance) || + void 0 === i || + null === (t = i._postTabInstanceMap) || + void 0 === t || + t.removeTargetItem(e), + null === (r = this._instance) || + void 0 === r || + null === (n = r._likeTabInstanceMap) || + void 0 === n || + n.removeTargetItem(e); + } + static makeItemFavorite(e, t) { + var i, a, s, l; + if ( + (null === (a = this._instance) || + void 0 === a || + null === (i = a._postTabInstanceMap) || + void 0 === i || + i.makeItemFavorite(e, t), + null === (l = this._instance) || + void 0 === l || + null === (s = l._likeTabInstanceMap) || + void 0 === s || + s.makeItemFavorite(e, t), + t) + ) { + var c, + d, + u, + f, + h, + p = + null === (u = this._instance) || void 0 === u + ? void 0 + : null === (d = u._postTabInstanceMap) || void 0 === d + ? void 0 + : null === (c = d.activeInstance) || void 0 === c + ? void 0 + : c.itemList.find( + (t) => + ((0, o.w3)(t) || (0, o.sQ)(t) + ? t.key + : t.commonAttr.id) === e + ); + p && + (null === (h = this._instance) || void 0 === h + ? void 0 + : null === (f = h._likeTabInstanceMap) || void 0 === f + ? void 0 + : f.activeInstance) && + (this._instance._likeTabInstanceMap.activeInstance.itemList = [ + (0, r._)((0, n._)({}, p), { + statistic: (0, n._)({}, p.statistic), + }), + ...this._instance._likeTabInstanceMap.activeInstance.itemList, + ]); + } else { + var v, + m, + g, + _, + y, + b = + null === (g = this._instance) || void 0 === g + ? void 0 + : null === (m = g._likeTabInstanceMap) || void 0 === m + ? void 0 + : null === (v = m.activeInstance) || void 0 === v + ? void 0 + : v.itemList.find( + (t) => + ((0, o.w3)(t) || (0, o.sQ)(t) + ? t.key + : t.commonAttr.id) === e + ); + b && + (null === (y = this._instance) || void 0 === y + ? void 0 + : null === (_ = y._likeTabInstanceMap) || void 0 === _ + ? void 0 + : _.activeInstance) && + (this._instance._likeTabInstanceMap.activeInstance.itemList = + this._instance._likeTabInstanceMap.activeInstance.itemList.filter( + (e) => e !== b + )); + } + } + static refetchPostDataList(e) { + var t, i; + null === (i = this._instance) || + void 0 === i || + null === (t = i._postTabInstanceMap) || + void 0 === t || + t.refetchData(e); + } + static deletePrefetchCache(e) { + var t, i; + null === (i = this._instance) || + void 0 === i || + null === (t = i.deletePrefetchCache) || + void 0 === t || + t.call(i, e); + } + setActiveListTabInstance(e) { + this.activeTabInstance = e; + } + get postTabInstance() { + return this._postTabInstanceMap; + } + get likeTabInstance() { + return this._likeTabInstanceMap; + } + changeTabImageType(e) { + var t, i; + null === (t = this.postTabInstance) || + void 0 === t || + t.changeCurrentImageType(e), + null === (i = this.likeTabInstance) || + void 0 === i || + i.changeCurrentImageType(e); + } + changeCurrentListDataType(e) { + switch (e) { + case l.lX.Post: + this.setActiveListTabInstance(this._postTabInstanceMap); + break; + case l.lX.Like: + this.setActiveListTabInstance(this._likeTabInstanceMap); + break; + default: + this.setActiveListTabInstance(this._postTabInstanceMap); + } + } + deletePrefetchCache(e) { + if (!!this._containerService) { + var t = this._containerService.invokeFunction((e) => e.get(c.d)); + t.deleteCache({ displayName: "homepage", params: { secUid: e } }), + t.deleteCache({ + displayName: "user-info", + params: { secUid: e }, + }); + } + } + constructor(e, t) { + if ( + ((this._postTabInstanceMap = void 0), + (this._likeTabInstanceMap = void 0), + (this._containerService = void 0), + (this.activeTabInstance = void 0), + !e) + ) + return; + this._containerService = e; + var { hasPublishAuthority: i } = t; + (this._postTabInstanceMap = e.createInstance(M, e, l.lX.Post)), + (this._likeTabInstanceMap = e.createInstance(M, e, l.lX.Like)), + (this.activeTabInstance = i + ? this._postTabInstanceMap + : this._likeTabInstanceMap), + (0, s.rC)(this); + } + } + (C._instance = void 0), + (0, a.gn)( + [s.LO, (0, a.w6)("design:type", Object)], + C.prototype, + "activeTabInstance", + void 0 + ), + (0, a.gn)( + [ + s.aD.bound, + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [M]), + (0, a.w6)("design:returntype", void 0), + ], + C.prototype, + "setActiveListTabInstance", + null + ); + }, + 610806: function (e, t, i) { + "use strict"; + i.d(t, { + v: function () { + return u; + }, + }); + var n = i(139646), + r = i(789786), + a = i(836703), + o = i(748312), + s = i(260963), + l = i(791628), + c = i(875488), + d = Math.max(16, Math.ceil(window.innerHeight / 62)); + class u { + static getNoticeStoreInstance(e) { + return ( + !this._instance && + (this._instance = null == e ? void 0 : e.createInstance(u)), + this._instance + ); + } + static changeWorkValidStatus(e) { + var t; + if (!!this._instance) + null === (t = this._instance.messageList) || + void 0 === t || + t.forEach((t) => { + var i; + (null === (i = t.noticeItem) || void 0 === i + ? void 0 + : i.itemId) === e && + (0, s.z)(() => { + t.noticeItem.status = a.p_.InValid; + }); + }); + } + static followUser(e) { + var t; + if (!!this._instance) + null === (t = this._instance.messageList) || + void 0 === t || + t.forEach((t) => { + t.messageFrom.secUid === e && + (0, s.z)(() => { + t.hasFollowed = !0; + }); + }); + } + static cancelFollowUser(e) { + var t; + if (!!this._instance) + null === (t = this._instance.messageList) || + void 0 === t || + t.forEach((t) => { + t.messageFrom.secUid === e && + (0, s.z)(() => { + t.hasFollowed = !1; + }); + }); + } + get totalNewMessageCount() { + return ( + this.newMessageCount[a.O8.Community] + + this.newMessageCount[a.O8.System] + ); + } + getUnreadCount() { + var e = this; + return (0, n._)(function* () { + var t = yield e._noticeService.noticeRepository.getUnreadCount({ + noticeTypeList: [a.O8.Community, a.O8.System], + }); + return ( + t.ok && + (0, s.z)(() => { + e.newMessageCount = t.value; + }), + t + ); + })(); + } + requestNoticeList(e, t) { + var i = this; + return (0, n._)(function* () { + var n = yield (0, c.FI)(); + return yield i._noticeService.noticeRepository.getNoticeList({ + count: d, + noticeType: e, + cursor: t, + imageInfo: n, + }); + })(); + } + fetchNoticeList(e) { + var t = this; + return (0, n._)(function* () { + var i = yield t.requestNoticeList(e, t.cursor[e]); + if (i.ok) { + var { + hasMore: n, + nextCursor: r, + noticeList: o, + messageList: c, + } = i.value; + (0, s.z)(() => { + e === a.O8.Community + ? (t.messageList = (0, l.xk)( + t.messageList, + null != c ? c : [] + )) + : (t.noticeList = (0, l.xk)( + t.noticeList, + null != o ? o : [] + )), + (t.hasMore[e] = n), + (t.cursor[e] = r); + }); + } + return i; + })(); + } + fetchFirstPageNotice(e) { + var t = this; + return (0, n._)(function* () { + if (!t.hasInitialized[e] || !(t.newMessageCount[e] <= 0)) { + var i = yield t.requestNoticeList(e, 0); + if (i.ok) { + var { + hasMore: n, + nextCursor: r, + noticeList: o, + messageList: l, + } = i.value; + (0, s.z)(() => { + e === a.O8.System ? (t.noticeList = o) : (t.messageList = l), + (t.hasMore[e] = n), + (t.hasInitialized[e] = !0), + (t.cursor[e] = r); + }); + } + return i; + } + })(); + } + fetchAllTypeFirstPageNotice() { + var e = this; + return (0, n._)(function* () { + yield Promise.all([ + e.fetchFirstPageNotice(a.O8.Community), + e.fetchFirstPageNotice(a.O8.System), + ]); + })(); + } + setNewMessageCount(e) { + (0, s.z)(() => { + this.newMessageCount = { [a.O8.Community]: e, [a.O8.System]: e }; + }); + } + constructor(e) { + (this._noticeService = e), + (this.newMessageCount = { [a.O8.Community]: 0, [a.O8.System]: 0 }), + (this.hasMore = { [a.O8.Community]: !1, [a.O8.System]: !1 }), + (this.hasInitialized = { [a.O8.Community]: !1, [a.O8.System]: !1 }), + (this.cursor = { [a.O8.Community]: 0, [a.O8.System]: 0 }), + (this.noticeList = []), + (this.messageList = []), + (0, s.rC)(this); + } + } + (0, r.gn)( + [ + s.LO, + (0, r.w6)( + "design:type", + "undefined" == typeof Record ? Object : Record + ), + ], + u.prototype, + "newMessageCount", + void 0 + ), + (0, r.gn)( + [ + s.LO, + (0, r.w6)( + "design:type", + "undefined" == typeof Record ? Object : Record + ), + ], + u.prototype, + "hasMore", + void 0 + ), + (0, r.gn)( + [ + s.LO, + (0, r.w6)( + "design:type", + "undefined" == typeof Record ? Object : Record + ), + ], + u.prototype, + "hasInitialized", + void 0 + ), + (0, r.gn)( + [ + s.LO, + (0, r.w6)( + "design:type", + "undefined" == typeof Record ? Object : Record + ), + ], + u.prototype, + "cursor", + void 0 + ), + (0, r.gn)( + [s.LO, (0, r.w6)("design:type", Array)], + u.prototype, + "noticeList", + void 0 + ), + (0, r.gn)( + [s.LO, (0, r.w6)("design:type", Array)], + u.prototype, + "messageList", + void 0 + ), + (0, r.gn)( + [ + s.Fl, + (0, r.w6)("design:type", Number), + (0, r.w6)("design:paramtypes", []), + ], + u.prototype, + "totalNewMessageCount", + null + ), + (u = (0, r.gn)( + [ + (0, r.fM)(0, o.Z), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [void 0 === o.Z ? Object : o.Z]), + ], + u + )); + }, + 735138: function (e, t, i) { + "use strict"; + i.d(t, { e: () => R }); + var n = i("241047"), + r = i("139646"), + a = i("789786"), + o = i("260963"), + s = i("699813"), + l = i("433965"), + c = i("936690"), + d = i("952739"), + u = i("224671"), + f = i("625572"), + h = i("639880"), + p = (e) => (Array.isArray(e) ? e : [e, e]); + class v { + addItems(e) { + var t = e.map((e) => + (0, h._)((0, f._)({}, e), { + x: 0, + y: 0, + width: 0, + height: 0, + spanIndex: 0, + }) + ); + this._originalItems.push(...t), + this._prepared && t.forEach((e) => this._computeLayout(e)); + } + removeItem(e) { + this._removeById(this._originalItems, e), + this._removeById(this._crossSpanItems, e), + this._layout.forEach((t) => this._removeById(t.items, e)), + this._removeById(this.renderedItems, e); + } + replaceItem(e, t) { + this._replaceById(this._originalItems, e, t), + this._replaceById(this._crossSpanItems, e, t), + this._layout.forEach((i) => this._replaceById(i.items, e, t)), + this._replaceById(this.renderedItems, e, t); + } + repaint(e) { + e && + ((this._cellWidth = e.cellWidth), + (this._columns = e.columns), + (this._gutter = p(e.gutter))), + (this._prepared = !0), + this._initLayout(), + (this._lastInsertIndex = -1), + (this._crossSpanItems = []), + (this.renderedItems = []), + this._originalItems.forEach((e) => this._computeLayout(e)); + } + _initLayout() { + this._layout = Array.from({ length: this._columns }, (e, t) => ({ + index: t, + height: 0, + items: [], + })); + } + _computeLayout(e) { + e.span > 1 && this._crossSpanItems.push(e); + for ( + var t = this._getMinHeightColumnIndex(), + i = { canInsert: !1, clips: [], reason: "OK" }; + this._crossSpanItems.length; + + ) { + var n = this._crossSpanItems[0]; + if (!(i = this._canInsertCrossSpanItem(t, n)).canInsert) break; + this._clipLayoutByCrossSpanItem(t, n, i.clips), + this._updateSizeAndPosition(t, n), + this._updateLayout(t, n), + this._crossSpanItems.shift(), + this.renderedItems.push(n), + (this._lastInsertIndex = this.renderedItems.length - 1), + (t = this._getMinHeightColumnIndex()); + } + e.span <= 1 && + (this._updateSizeAndPosition(t, e), + this._updateLayout(t, e), + this.renderedItems.push(e)); + } + _canInsertCrossSpanItem(e, t) { + if ( + this.renderedItems.length - this._lastInsertIndex <= + this._crossSpanFrequency && + this._lastInsertIndex >= 0 + ) + return { + canInsert: !1, + clips: [], + reason: "Frequency control: skipped by frequency control", + }; + var { span: i } = t, + n = this._layout.slice(e, e + i); + if (n.length < i) + return { + canInsert: !1, + clips: [], + reason: "No Space: not enough space to insert at this row", + }; + if (!this._allowFirstRowCrossSpan && n.every((e) => 0 === e.height)) + return { + canInsert: !1, + clips: [], + reason: "Bad position: cannot insert at first row", + }; + var r = n.map((e) => e.height), + a = Math.min(...r), + o = r.map((e) => e - a); + return n.some((e, t) => !this._canClipped(e, o[t])) + ? { + canInsert: !1, + clips: [], + reason: "Bad clips: clipped images is not good enough", + } + : { canInsert: !0, clips: o, reason: "OK" }; + } + _canClipped(e, t) { + var i = e.items.at(-1); + return !i || (i.height - t) / i.width >= this._clipRatioLimit; + } + _getMinHeightColumnIndex() { + var e = 1 / 0, + t = -1; + return ( + this._layout.forEach((i) => { + i.height < e && ((e = i.height), (t = i.index)); + }), + t + ); + } + _updateSizeAndPosition(e, t) { + var i = (this._cellWidth + this._gutter[0]) * e, + n = + this._layout[e].height && + this._layout[e].height + this._gutter[1], + r = (this._cellWidth + this._gutter[0]) * t.span - this._gutter[0], + a = r * (t.originHeight / t.originWidth); + return ( + (t.x = i), + (t.y = n), + (t.width = r), + (t.height = a + t.extraHeight), + t + ); + } + _updateLayout(e, t) { + var [i = 0, n = 0] = p(t.extraMargin); + t.y += t.y ? i : 0; + for (var r = 0; r < t.span; r++) { + var a = this._layout[e + r]; + (t.spanIndex = r), + a.items.push(t), + (a.height = t.y + ~~t.height + n); + } + } + _clipLayoutByCrossSpanItem(e, t, i) { + for (var n = 0; n < t.span; n++) { + var r = this._layout[e + n], + a = r.items.at(-1), + o = i.at(n); + a && o && ((a.height -= o), (r.height -= o)); + } + } + _removeById(e, t) { + var i = e.findIndex((e) => e.id === t); + -1 !== i && e.splice(i, 1); + } + _replaceById(e, t, i) { + var n = e.findIndex((e) => e.id === t); + -1 !== n && (e[n].data = i); + } + constructor(e) { + (this._crossSpanItems = []), + (this._layout = []), + (this._lastInsertIndex = -1), + (this._originalItems = []), + (this._cellWidth = 0), + (this._columns = 0), + (this._gutter = [0, 0]), + (this._prepared = !1), + (this.renderedItems = []); + var { + allowFirstRowCrossSpan: t = !0, + crossSpanFrequency: i = 1, + clipRatioLimit: n = 1, + } = null != e ? e : {}; + (0, s.Y2)(i > 0, "crossSpanFrequency should be greater than 0"), + (this._allowFirstRowCrossSpan = t), + (this._crossSpanFrequency = i), + (this._clipRatioLimit = n), + this._initLayout(); + } + } + var m = i("591586"), + g = i("915814"), + _ = i("6080"), + y = i("645968"), + b = 12; + class I { + get itemList() { + return this._masonryStore.renderedItems.map((e) => e.data); + } + getFeedList(e) { + var t = this; + return (0, r._)(function* () { + if (!!t.hasMore) { + var i = yield t._feedService.feedRepository.getFeedList({ + offset: t.offset, + categoryId: t._categoryId, + count: e.count, + imageInfo: e.imageInfo, + }); + if (!i.ok) return i; + var { itemList: n, hasMore: r } = i.value, + a = []; + return ( + n.forEach((e) => { + if ((0, l.Rb)(e)) { + if (!e.collection.itemList.length) + return m.t.error("Feed list dirty data", e); + e.collection.itemList.forEach( + (t) => ( + (t.blendParams = (0, c.tA)(t)), (t.author = e.author), t + ) + ); + var i = (0, _.q)(e.collection.itemList.length, 100, 100); + (e.width = 100 * i.ratioWidth), + (e.height = 100 * i.ratioHeight); + } else if ((0, l.DF)(e)) { + var n, + r, + { text2imageParams: o } = e.aigcImageParams, + { width: s, height: u } = + null !== + (r = + null === (n = e.image.largeImages) || void 0 === n + ? void 0 + : n[0]) && void 0 !== r + ? r + : {}; + (o.imageRatio = (0, d.Ir)(o.imageRatio, s, u)), + (e.width = s), + (e.height = u), + (e.blendParams = (0, c.tA)(e)); + } else if ((0, l.jD)(e)) { + var f, + h, + { width: p, height: v } = + null !== + (h = + null === (f = e.image.largeImages) || void 0 === f + ? void 0 + : f[0]) && void 0 !== h + ? h + : {}; + (e.width = p), (e.height = v); + } + !t._idSet.has(e.commonAttr.id) && + (a.push(e), t._idSet.add(e.commonAttr.id)); + }), + a.length && + (0, o.z)(() => { + (t.hasMore = r), + (t.offset += e.count), + t._masonryStore.addItems( + a.map((e) => { + var t, + i, + n = e.commonAttr.effectType === u.O5.Single; + return { + id: e.commonAttr.id, + originWidth: + null !== (t = e.width) && void 0 !== t ? t : 0, + originHeight: + null !== (i = e.height) && void 0 !== i ? i : 0, + extraHeight: n ? 0 : g.$P, + extraMargin: n ? void 0 : b, + span: n ? 1 : 2, + data: e, + }; + }) + ), + (t.renderedItems = t._masonryStore.renderedItems); + }), + i + ); + } + })(); + } + removeTargetItem(e) { + this._masonryStore.removeItem(e), + this._masonryStore.repaint(), + (this.renderedItems = this._masonryStore.renderedItems); + } + makeItemFavorite(e, t) { + var i = this.renderedItems.findIndex((t) => t.id === e); + if (-1 !== i) { + var n = this.renderedItems[i].data; + n.statistic && + ((n.statistic.favoriteNum += t ? 1 : -1), + (n.statistic.hasFavorited = t)), + this._masonryStore.replaceItem(e, this.renderedItems[i].data); + } + } + repaint(e) { + this._masonryStore.repaint(e), + (this.renderedItems = this._masonryStore.renderedItems); + } + constructor(e, t) { + (this._feedService = t), + (this.hasMore = !0), + (this.offset = 0), + (this.renderedItems = []), + (this._categoryId = e), + (this._masonryStore = new v()), + (this._idSet = new Set()), + (0, o.rC)(this); + } + } + (0, a.gn)( + [o.LO, (0, a.w6)("design:type", v)], + I.prototype, + "_masonryStore", + void 0 + ), + (0, a.gn)( + [o.LO, (0, a.w6)("design:type", Boolean)], + I.prototype, + "hasMore", + void 0 + ), + (0, a.gn)( + [o.LO, (0, a.w6)("design:type", Number)], + I.prototype, + "offset", + void 0 + ), + (0, a.gn)( + [o.LO, (0, a.w6)("design:type", Array)], + I.prototype, + "renderedItems", + void 0 + ), + (0, a.gn)( + [ + o.Fl, + (0, a.w6)("design:type", void 0), + (0, a.w6)("design:paramtypes", []), + ], + I.prototype, + "itemList", + null + ), + (0, a.gn)( + [ + o.aD.bound, + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [ + "undefined" == typeof IGetFeedListParam + ? Object + : IGetFeedListParam, + ]), + (0, a.w6)("design:returntype", Promise), + ], + I.prototype, + "getFeedList", + null + ), + (0, a.gn)( + [ + o.aD.bound, + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [String]), + (0, a.w6)("design:returntype", void 0), + ], + I.prototype, + "removeTargetItem", + null + ), + (0, a.gn)( + [ + o.aD.bound, + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [String, Boolean]), + (0, a.w6)("design:returntype", void 0), + ], + I.prototype, + "makeItemFavorite", + null + ), + (0, a.gn)( + [ + o.aD.bound, + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [ + "undefined" == typeof MasonryLayoutOptions + ? Object + : MasonryLayoutOptions, + ]), + (0, a.w6)("design:returntype", void 0), + ], + I.prototype, + "repaint", + null + ), + (I = (0, a.gn)( + [ + (0, a.fM)(1, y.d), + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [ + Number, + void 0 === y.d ? Object : y.d, + ]), + ], + I + )); + var w = 0, + x = 300; + class S { + static createFeedStoreInstance(e, t, i) { + if (e) { + var n, + r = e.createInstance(I, t); + null === (n = this._instance) || + void 0 === n || + n._feedStoreInstanceMap.set(i, r); + } + } + static prepare(e) { + return new Promise((t) => { + var i; + null === (i = this._instance) || + void 0 === i || + i + ._getFeedPanel() + .then((t) => { + (0, s.Y2)(t.length > 0, "feed panel is empty"), + t.forEach((t, i) => { + var { id: n } = t; + return this.createFeedStoreInstance(e, n, i); + }); + }) + .catch(() => this.createFeedStoreInstance(e, n.qs, 0)) + .finally(t); + }); + } + static getFeedPanelInstance(e) { + return this._instance + ? { instance: this._instance, isFirstCreated: !1 } + : ((this._instance = null == e ? void 0 : e.createInstance(S)), + this._instance && (this._instance._prepareLock = this.prepare(e)), + { instance: this._instance, isFirstCreated: !0 }); + } + static removeTargetItem(e) { + (0, o.z)(() => { + var t; + if (!!this._instance) + null === + (t = this._instance._feedStoreInstanceMap.get( + this._instance.selectIndex + )) || + void 0 === t || + t.removeTargetItem(e); + }); + } + static makeItemFavorite(e, t) { + (0, o.z)(() => { + var i; + if (!!this._instance) + null === + (i = this._instance._feedStoreInstanceMap.get( + this._instance.selectIndex + )) || + void 0 === i || + i.makeItemFavorite(e, t); + }); + } + get _stores() { + return this.panelList.map((e, t) => + this._feedStoreInstanceMap.get(t) + ); + } + get renderItems() { + return this._stores.map((e) => { + var t; + return null !== (t = null == e ? void 0 : e.renderedItems) && + void 0 !== t + ? t + : []; + }); + } + get feedData() { + return this.renderItems.map((e) => e.map((e) => e.data)); + } + get repaintCurrentPanel() { + var e = this._stores[this.selectIndex]; + return e ? e.repaint.bind(e) : () => null; + } + prefetchAllPanelList(e) { + var t = this; + return (0, r._)(function* () { + var i = function (i) { + i !== t.selectIndex && + setTimeout(() => { + t._getIndexFeedList(e, i).then((e) => { + (0, o.z)(() => { + var n, r; + t.prefetchStatus[i] = + null !== + (r = + null == e + ? void 0 + : null === (n = e.response) || void 0 === n + ? void 0 + : n.ok) && + void 0 !== r && + r; + }); + }); + }, x); + }, + { panelList: n } = t; + !n.length && (n = yield t._getFeedPanel()); + for (var r = 0; r < n.length; r++) i(r); + (0, o.z)(() => { + (t.prefetchStatus[t.selectIndex] = !0), (t.panelList = n); + }); + })(); + } + updateSelectIndex(e) { + this.selectIndex = e; + } + getFeedList(e) { + var t = this; + return (0, r._)(function* () { + return yield t._getIndexFeedList(e, t.selectIndex); + })(); + } + _getIndexFeedList(e, t) { + var i = this; + return (0, r._)(function* () { + yield i._prepareLock; + var n = !i.panelList.length, + r = i._feedStoreInstanceMap.get(t); + if (n || !(null == r ? void 0 : r.hasMore)) return; + var a = yield r.getFeedList(e); + if (!!a) return { response: a, panelList: i.panelList }; + })(); + } + _getFeedPanel() { + var e = this; + return (0, r._)(function* () { + var t = yield e._feedService.feedRepository.getFeedPanel({ + panel: n.Zc.panel, + }); + if (!t.ok) return []; + var i = t.value.categoryList; + return (0, o.z)(() => (e.panelList = i)), i; + })(); + } + constructor(e) { + (this._feedService = e), + (this._feedStoreInstanceMap = new Map()), + (this.visible = !1), + (this.prefetchStatus = []), + (this.panelList = []), + (this.selectIndex = w), + (0, o.rC)(this); + } + } + (0, a.gn)( + [ + o.LO, + (0, a.w6)("design:type", "undefined" == typeof Map ? Object : Map), + ], + S.prototype, + "_feedStoreInstanceMap", + void 0 + ), + (0, a.gn)( + [o.LO, (0, a.w6)("design:type", Boolean)], + S.prototype, + "visible", + void 0 + ), + (0, a.gn)( + [o.LO, (0, a.w6)("design:type", Array)], + S.prototype, + "prefetchStatus", + void 0 + ), + (0, a.gn)( + [o.LO, (0, a.w6)("design:type", Array)], + S.prototype, + "panelList", + void 0 + ), + (0, a.gn)( + [o.LO, (0, a.w6)("design:type", Number)], + S.prototype, + "selectIndex", + void 0 + ), + (0, a.gn)( + [ + o.Fl, + (0, a.w6)("design:type", void 0), + (0, a.w6)("design:paramtypes", []), + ], + S.prototype, + "_stores", + null + ), + (0, a.gn)( + [ + o.Fl, + (0, a.w6)("design:type", void 0), + (0, a.w6)("design:paramtypes", []), + ], + S.prototype, + "renderItems", + null + ), + (0, a.gn)( + [ + o.Fl, + (0, a.w6)("design:type", void 0), + (0, a.w6)("design:paramtypes", []), + ], + S.prototype, + "feedData", + null + ), + (0, a.gn)( + [ + o.Fl, + (0, a.w6)("design:type", void 0), + (0, a.w6)("design:paramtypes", []), + ], + S.prototype, + "repaintCurrentPanel", + null + ), + (0, a.gn)( + [ + o.aD.bound, + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [ + "undefined" == typeof IGetFeedListParam + ? Object + : IGetFeedListParam, + ]), + (0, a.w6)("design:returntype", Promise), + ], + S.prototype, + "prefetchAllPanelList", + null + ), + (0, a.gn)( + [ + o.aD.bound, + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [Number]), + (0, a.w6)("design:returntype", void 0), + ], + S.prototype, + "updateSelectIndex", + null + ), + (0, a.gn)( + [ + o.aD.bound, + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", []), + (0, a.w6)("design:returntype", Promise), + ], + S.prototype, + "_getFeedPanel", + null + ), + (S = (0, a.gn)( + [ + (0, a.fM)(0, y.d), + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [void 0 === y.d ? Object : y.d]), + ], + S + )); + var M = i("498973"), + C = i("661551"), + T = i("106863"), + A = i("610806"), + k = i("648326"), + P = i("964917"), + E = i("532185"), + D = i("94012"); + class R { + static setActivityDetailManager(e) { + this.activityDetailManager = e; + } + static publishProduction(e, t, i, r) { + null == i || i.changePublishStatus(n.UN.Publish, e, t), + null == r || r.changePublishStatus(n.UN.Publish, e, t), + C.j.selfSecUid && M.e.deletePrefetchCache(C.j.selfSecUid), + C.j.selfSecUid && M.e.refetchPostDataList(C.j.selfSecUid); + } + static unPublishProduction(e, t) { + var i; + M.e.removeTargetItem(e), + S.removeTargetItem(e), + null == t || t.changePublishStatus(n.UN.Delete, e, "0", !0), + A.v.changeWorkValidStatus(e), + null === (i = this.activityDetailManager) || + void 0 === i || + i.removeItem(e), + C.j.selfSecUid && M.e.deletePrefetchCache(C.j.selfSecUid); + } + static publishVideo(e, t) { + P.m.markPublished(e, t), + E.G.markPublished(e, t), + C.j.selfSecUid && M.e.deletePrefetchCache(C.j.selfSecUid), + C.j.selfSecUid && M.e.refetchPostDataList(C.j.selfSecUid); + } + static unpublishVideo(e, t) { + var i; + P.m.markPublished(null != e ? e : ""), + E.G.markPublished(null != e ? e : ""), + M.e.removeTargetItem(t), + S.removeTargetItem(t), + A.v.changeWorkValidStatus(t), + null === (i = this.activityDetailManager) || + void 0 === i || + i.removeItem(t), + C.j.selfSecUid && M.e.deletePrefetchCache(C.j.selfSecUid); + } + static likeProduction(e, t) { + var i, n; + k.p.makeItemFavorite(e, !0), + M.e.makeItemFavorite(e, !0), + S.makeItemFavorite(e, !0), + T.B.makeItemFavorite(e, !0), + t && C.j.handlerLikeProduction(t), + t && M.e.deletePrefetchCache(t), + null === (n = this.activityDetailManager) || + void 0 === n || + null === (i = n.makeItemFavorite) || + void 0 === i || + i.call(n, e, !0), + D.S.makeExploreFavorite(e, !0); + } + static unlikeProduction(e, t) { + var i, n; + k.p.makeItemFavorite(e, !1), + M.e.makeItemFavorite(e, !1), + S.makeItemFavorite(e, !1), + T.B.makeItemFavorite(e, !1), + t && C.j.handlerUnlikeProduction(t), + t && M.e.deletePrefetchCache(t), + null === (n = this.activityDetailManager) || + void 0 === n || + null === (i = n.makeItemFavorite) || + void 0 === i || + i.call(n, e, !1), + D.S.makeExploreFavorite(e, !1); + } + static removePersonHistoryItems(e, t, i) { + null == t || t.deleteContentRecords(e), + null == i || i.deleteHistoryList(e); + } + static followUser(e) { + C.j.handlerFollowUser(e), + A.v.followUser(e), + M.e.deletePrefetchCache(e); + } + static cancelFollowUser(e) { + C.j.handlerCancelFollowUser(e), + A.v.cancelFollowUser(e), + M.e.deletePrefetchCache(e); + } + static usePromote(e) { + C.j.handlerUsePromote(e); + } + } + }, + 661551: function (e, t, i) { + "use strict"; + i.d(t, { j: () => S }); + var n = i("139646"), + r = i("366103"), + a = i("789786"), + o = i("758261"), + s = i("280166"), + l = i("260963"), + c = i("586315"), + d = i("927457"), + u = i("7197"); + function f(e) { + return h.apply(this, arguments); + } + function h() { + return (h = (0, n._)(function* (e) { + if ( + !(null === (t = window) || void 0 === t ? void 0 : t._secUid) || + (null === (i = window) || void 0 === i ? void 0 : i._secUid) !== e + ) + return Promise.resolve((0, c.wf)(-1, "secUid mismatch")); + if ( + !(null === (n = window) || void 0 === n + ? void 0 + : n.__get_user_info_result) + ) + try { + yield window.pSecUserInfo; + } catch (e) { + (0, d.P)(e); + } + var t, + i, + n, + r, + a = + null === (r = window) || void 0 === r + ? void 0 + : r.__get_user_info_result; + return a + ? "0" !== a.ret + ? Promise.resolve((0, c.wf)(Number(a.ret), a.errmsg)) + : ((window.__get_user_info_result = void 0), + (window._secUid = void 0), + Promise.resolve( + (0, c.oW)(yield (0, u.G)(a.data, a.logid, a.cache_sync_token)) + )) + : Promise.resolve((0, c.ly)()); + })).apply(this, arguments); + } + var p = i("745017"), + v = i("819340"), + m = i("200294"), + g = i("161041"); + class _ { + refreshUserInfo(e) { + var t = this; + return (0, n._)(function* () { + if (!(!e && t.isValid()) && !t.loading) { + (0, l.z)(() => { + t.loading = !0; + }); + var i = null; + if ( + (null === t.userInfo && (i = yield f(t.secUid)), + !i || !(i.ok && i.value)) + ) { + var n = t._prefetchRequestService.findReusableConnect({ + displayName: g.s, + params: { secUid: t.secUid }, + }); + n + ? (t._prefetchRequestService.burnLater(n), + (i = yield n.pRequest)) + : (i = yield t._userService.repository.getUserInfo({ + secUid: t.secUid, + })); + } + return ( + (0, l.z)(() => { + t.loading = !1; + }), + i.ok && + (0, l.z)(() => { + (t.userInfo = i.value), (t.updateTime = Date.now()); + }), + i + ); + } + })(); + } + isValid() { + var e = + arguments.length > 0 && void 0 !== arguments[0] + ? arguments[0] + : this.maxAge; + return !!(this.userInfo && Date.now() - this.updateTime <= e) || !1; + } + updateUserInfo(e) { + var t = this; + return (0, n._)(function* () { + return yield t._userService.repository.updateUserInfo(e); + })(); + } + follow(e, t) { + (0, l.z)(() => { + if (!!this.userInfo) + t ? (this.userInfo.follow += 1) : (this.userInfo.fans += 1), + e === this.userInfo.secUid && (this.userInfo.hasFollowed = !0); + }); + } + cancelFollow(e, t) { + (0, l.z)(() => { + if (!!this.userInfo) + t && this.userInfo.follow > 0 + ? (this.userInfo.follow -= 1) + : !t && this.userInfo.fans > 0 && (this.userInfo.fans -= 1), + e === this.userInfo.secUid && (this.userInfo.hasFollowed = !1); + }); + } + increaseLikeCount() { + (0, l.z)(() => { + if (!!this.userInfo) this.userInfo.totalMaterialsFavorite += 1; + }); + } + decreaseLikeCount() { + (0, l.z)(() => { + if (!!this.userInfo) + this.userInfo.totalMaterialsFavorite > 0 && + (this.userInfo.totalMaterialsFavorite -= 1); + }); + } + increaseUsageCount() { + (0, l.z)(() => { + if (!!this.userInfo) this.userInfo.totalMaterialsUsage += 1; + }); + } + updateAvatarImage(e) { + var t = this; + return (0, n._)(function* () { + var i = t._uploadService.getImageXUploader( + t._environmentService.appId, + p.I + ), + n = yield i.uploadImage({ file: e }); + if (n.ok) return n.value.uri; + })(); + } + clear() { + (0, l.z)(() => { + this.userInfo = null; + }); + } + constructor(e, t, i, n, r) { + (this._userService = t), + (this._environmentService = i), + (this._uploadService = n), + (this._prefetchRequestService = r), + (this.userInfo = null), + (this.secUid = ""), + (this.loading = !1), + (this.updateTime = 0), + (this.maxAge = 36e4), + (0, l.rC)(this), + (this.secUid = e); + } + } + (0, a.gn)( + [l.LO, (0, a.w6)("design:type", Object)], + _.prototype, + "userInfo", + void 0 + ), + (0, a.gn)([l.LO], _.prototype, "secUid", void 0), + (0, a.gn)([l.LO], _.prototype, "loading", void 0), + (0, a.gn)([l.LO], _.prototype, "updateTime", void 0), + (_ = (0, a.gn)( + [ + (0, a.fM)(1, o.h), + (0, a.fM)(2, s.Y), + (0, a.fM)(3, v.Z), + (0, a.fM)(4, m.d), + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [ + String, + void 0 === o.h ? Object : o.h, + void 0 === s.Y ? Object : s.Y, + void 0 === v.Z ? Object : v.Z, + void 0 === m.d ? Object : m.d, + ]), + ], + _ + )); + var y = i("894803"), + b = i("902519"), + I = i("884569"); + class w { + addFollowUser(e) { + var t = this._webHomePageService.homePageRepository.doFollowUser({ + secUid: e, + op: b.im.Follow, + }); + return ( + t.then((e) => { + (0, y.m)(e.code); + }), + t + ); + } + cancelFollowUser(e) { + return this._webHomePageService.homePageRepository.doFollowUser({ + secUid: e, + op: b.im.CancelFollow, + }); + } + constructor(e) { + this._webHomePageService = e; + } + } + w = (0, a.gn)( + [ + (0, a.fM)(0, I.o), + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [void 0 === I.o ? Object : I.o]), + ], + w + ); + class x { + loadData() { + var e = + arguments.length > 0 && void 0 !== arguments[0] && arguments[0], + t = this; + return (0, n._)(function* () { + if ( + (e && ((t.offset = 0), (t.hasMore = !0), (t.userList = [])), + !!t.hasMore) + ) { + (0, l.z)(() => { + t.loading = !0; + }); + var i = yield t.getFollowingUserList(); + return ( + (0, l.z)(() => { + t.loading = !1; + }), + i.ok && + (0, l.z)(() => { + (t.userList = [ + ...(e ? [] : t.userList), + ...i.value.userList, + ]), + (t.offset = i.value.nextOffset), + (t.hasMore = i.value.hasMore), + (t.totalCount = i.value.totalCount); + }), + i + ); + } + })(); + } + getFollowingUserList() { + var e = + arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 20; + return this._userService.repository.getFollowList({ + listType: this.followListType, + count: e, + offset: this.offset, + }); + } + follow(e) { + var t = this.userList.find((t) => t.secUid === e); + t && + (0, l.z)(() => { + (t.hasFollowed = !0), (t.fans += 1); + }); + } + cancelFollow(e) { + var t = this.userList.find((t) => t.secUid === e); + t && + (0, l.z)(() => { + (t.hasFollowed = !1), t.fans > 0 && (t.fans -= 1); + }); + } + constructor(e, t) { + (this._userService = t), + (this.followListType = r.bK.Fans), + (this.offset = 0), + (this.totalCount = 0), + (this.hasMore = !0), + (this.userList = []), + (this.loading = !1), + (this.followListType = e), + (0, l.rC)(this); + } + } + (0, a.gn)([l.LO], x.prototype, "offset", void 0), + (0, a.gn)([l.LO], x.prototype, "totalCount", void 0), + (0, a.gn)([l.LO], x.prototype, "hasMore", void 0), + (0, a.gn)( + [l.LO, (0, a.w6)("design:type", Array)], + x.prototype, + "userList", + void 0 + ), + (0, a.gn)([l.LO], x.prototype, "loading", void 0), + (x = (0, a.gn)( + [ + (0, a.fM)(1, o.h), + (0, a.w6)("design:type", Function), + (0, a.w6)("design:paramtypes", [ + void 0 === r.bK ? Object : r.bK, + void 0 === o.h ? Object : o.h, + ]), + ], + x + )); + class S { + static get selfSecUid() { + return S._selfSecUid; + } + static initUserInfoInstance(e, t, i) { + return this.updateSelfSecUid(t), this.getUserInfoInstance(e, i); + } + static updateSelfSecUid(e) { + this._selfSecUid = e; + } + static getUserInfoInstance(e, t) { + var i = this._userInfoInstanceCacheMap.get(t); + return i + ? (i.refreshUserInfo(), i) + : this.createUserInfoInstance(e, t); + } + static getFollowInstance(e) { + return ( + !this._followStoreInstance && + (this._followStoreInstance = e.createInstance(w)), + this._followStoreInstance + ); + } + static getMyFollowingListInstance(e) { + return ( + !this._myFollowingListInstance && + (this._myFollowingListInstance = e.createInstance( + x, + r.bK.Follow + )), + this._myFollowingListInstance + ); + } + static getMyFansListInstance(e) { + return ( + !this._myFansListInstance && + (this._myFansListInstance = e.createInstance(x, r.bK.Fans)), + this._myFansListInstance + ); + } + static createUserInfoInstance(e, t) { + var i = e.createInstance(_, t); + return ( + i.refreshUserInfo(), this._userInfoInstanceCacheMap.set(t, i), i + ); + } + static handlerFollowUser(e) { + var t, + i, + n = this._userInfoInstanceCacheMap.get(e), + r = this._userInfoInstanceCacheMap.get(this._selfSecUid); + n && n.follow(e, !1), + r && r.follow(e, !0), + null === (t = this._myFansListInstance) || + void 0 === t || + t.follow(e), + null === (i = this._myFollowingListInstance) || + void 0 === i || + i.follow(e); + } + static handlerCancelFollowUser(e) { + var t, + i, + n = this._userInfoInstanceCacheMap.get(e), + r = this._userInfoInstanceCacheMap.get(this._selfSecUid); + n && n.cancelFollow(e, !1), + r && r.cancelFollow(e, !0), + null === (t = this._myFansListInstance) || + void 0 === t || + t.cancelFollow(e), + null === (i = this._myFollowingListInstance) || + void 0 === i || + i.cancelFollow(e); + } + static handlerLikeProduction(e) { + var t = this._userInfoInstanceCacheMap.get(e); + t && t.increaseLikeCount(); + } + static handlerUnlikeProduction(e) { + var t = this._userInfoInstanceCacheMap.get(e); + t && t.decreaseLikeCount(); + } + static handlerUsePromote(e) { + var t = this._userInfoInstanceCacheMap.get(e); + t && t.increaseUsageCount(); + } + static updateSelfUserInfo(e, t) { + var i = this; + return (0, n._)(function* () { + var n = i.getUserInfoInstance(e, i._selfSecUid); + return yield null == n ? void 0 : n.updateUserInfo(t); + })(); + } + static getSelfUserInfoInstance(e) { + return this.getUserInfoInstance(e, this._selfSecUid); + } + } + S._userInfoInstanceCacheMap = new Map(); + }, + 791628: function (e, t, i) { + "use strict"; + i.d(t, { + Ck: function () { + return r; + }, + j$: function () { + return o; + }, + xk: function () { + return a; + }, + }); + var n = i(433965); + function r(e, t) { + var i = new Map(), + r = []; + for (var a of [...e, ...t]) { + var o = (0, n.w3)(a) ? a.key : a.commonAttr.id; + if (!i.has(o)) i.set(o, a), r.push(a); + } + return r; + } + function a(e, t) { + var i = + arguments.length > 2 && void 0 !== arguments[2] + ? arguments[2] + : "id", + n = new Map(), + r = []; + for (var a of [...e, ...t]) { + if (!n.has(a[i])) n.set(a[i], a), r.push(a); + } + return r; + } + function o(e, t) { + var i = + arguments.length > 2 && void 0 !== arguments[2] + ? arguments[2] + : "id", + n = new Map(), + r = []; + for (var a of [...e, ...t]) { + if (!n.has(a[i])) n.set(a[i], a), r.push(a); + } + return Array.from(n.values()).sort((e, t) => t[i] - e[i]); + } + }, + 36159: function (e, t, i) { + "use strict"; + i.d(t, { + L: function () { + return a; + }, + }); + var n = i(333597), + r = i(110850), + a = (0, n.LO)(r.v); + }, + 645421: function (e, t, i) { + "use strict"; + i.d(t, { + T: function () { + return a; + }, + }); + var n = i(27433), + r = i(834634), + a = (e) => { + var { + submitId: t, + scene: i, + commercialStrategyService: a, + extraBenefits: o, + sceneOptions: s, + discount: l, + needCredits: c, + videoDuration: d, + } = e, + { credits: u } = (0, n.Qp)({ + scene: i, + videoDuration: d, + extraBenefits: o, + commercialStrategyService: a, + discount: l, + sceneOptions: s, + }); + return { + amount: c || u, + createTime: Date.now() / 1e3, + title: "MOCK_DATA", + historyType: r.P.CONSUMED, + submitId: t, + extraContent: "MOCK_DATA", + tradeSource: r.v.EMPTY, + }; + }; + }, + 7197: function (e, t, i) { + "use strict"; + i.d(t, { + G: function () { + return d; + }, + }); + var n = i(139646), + r = i(389657), + a = i(265587), + o = i(820266), + s = i(804274), + l = i(423719), + c = i(793723); + function d(e, t, i) { + return u.apply(this, arguments); + } + function u() { + return (u = (0, n._)(function* (e, t, i) { + var n = (0, o.b)(e, s.D1); + if (i && t && n.item_list) { + var d = yield r.Li.decryptIV(i, t); + yield (0, l.sh)(r.Li.decrypt.bind(r.Li), n.item_list, d); + } + if (Array.isArray(n.item_list)) { + var u = yield r.sn.getSignOptions(); + (0, c.$U)(r.sn.sign.bind(r.sn), n.item_list, u); + } + if (n.item_list) + for (var f = 0; f < n.item_list.length; f++) + n.item_list[f].video && + (n.item_list[f] = (0, a.Q)( + n.item_list[f], + n.item_list[f].video.origin_video + )), + 0 !== n.next_offset && + n.request_id && + (n.item_list[f].impressionId = n.request_id); + return (0, o.b)(n, s.zW, !1); + })).apply(this, arguments); + } + }, + 422600: function (e, t, i) { + "use strict"; + i.d(t, { + b: function () { + return r; + }, + }); + var n = i(259273); + function r(e, t) { + var i, + { panel: r } = e, + a = t.getData(n.Sj.Home); + return a && a.panel === r && a.panelInfo + ? (null === (i = a.panelInfo) || void 0 === i ? void 0 : i.ok) && + a.panelInfo.value + ? a.panelInfo.value + : null + : null; + } + }, + 555192: function (e, t, i) { + "use strict"; + i.d(t, { + u: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("context-view-service"); + }, + 509320: function (e, t, i) { + "use strict"; + i.d(t, { + W: function () { + return a; + }, + c: function () { + return r; + }, + }); + var n = i(333597), + r = (function (e) { + return ( + (e.CancelBtn = "CancelBtn"), + (e.CancelLable = "CancelLable"), + (e.ConfirmBtn = "ConfirmBtn"), + (e.ConfirmLabel = "ConfirmLabel"), + (e.CloseIcon = "CloseIcon"), + (e.VisibleChange = "VisibleChange"), + (e.ClickMask = "ClickMask"), + (e.ClickFocus = "ClickFocus"), + (e.ClickTarget = "ClickTarget"), + e + ); + })({}), + a = (0, n.yh)("guide"); + }, + 471605: function (e, t, i) { + "use strict"; + i.d(t, { + S: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("i18n-service"); + }, + 969015: function (e, t, i) { + "use strict"; + i.d(t, { + C0: function () { + return d; + }, + Ui: function () { + return f; + }, + aU: function () { + return u; + }, + }); + var n = i(625572), + r = i(639880), + a = i(333597), + o = i(513294), + s = i(699813), + l = i(266828), + c = i(487059), + d = (function (e) { + return ( + (e[(e.DYNAMIC_CONFIGURATION = 0)] = "DYNAMIC_CONFIGURATION"), + (e[(e.AB_TEST = 1)] = "AB_TEST"), + (e[(e.USER = 2)] = "USER"), + e + ); + })({}); + class u { + getRegisteredConfigurations(e) { + (0, s.ss)("not implemented"); + } + registerSectionConfigurations(e, t) { + (0, s.ss)("not implemented"); + } + removeSectionConfiguration(e) { + (0, s.ss)("not implemented"); + } + getConfigurationValues(e, t) { + (0, s.ss)("not implemented"); + } + updateConfigurationValues(e, t) { + (0, s.ss)("not implemented"); + } + reloadConfigurations() { + (0, s.ss)("not implemented"); + } + getResourceTypeByPanel(e) { + return Object.keys(this.resourcePanel).reduce((e, t) => { + var i, + a = this.resourcePanel[t], + o = null !== (i = c.vJ[a]) && void 0 !== i ? i : a; + return (0, r._)((0, n._)({}, e), { [o]: t }); + }, {})[e]; + } + initAppConfiguration(e) { + this._appConfiguration.init(e); + } + getAppConfigurationValue(e) { + return this._appConfiguration.getValue(e); + } + setAppConfigurationValue(e, t) { + this._appConfiguration.setValue(e, t); + } + constructor() { + (this._onDidChangeConfiguration = new o.Q()), + (this._appConfiguration = new l.V()), + (this.onDidChangeConfiguration = + this._onDidChangeConfiguration.event); + } + } + var f = (0, a.yh)("configuration"); + }, + 266828: function (e, t, i) { + "use strict"; + i.d(t, { + V: function () { + return o; + }, + }); + var n = i(716913), + r = i(386527), + a = i(824547); + class o { + get contents() { + return this._contents; + } + getValue(e) { + return (0, n.Z)(this._contents, e); + } + setValue(e, t) { + (0, r.Z)(this._contents, e, t); + } + isEmpty() { + return 0 === Object.keys(this._contents).length; + } + init(e) { + this._contents = e; + } + reset(e) { + this._contents = e; + } + merge(e) { + return (0, a.Z)(this._contents, e), this; + } + constructor(e = {}) { + this._contents = e; + } + } + }, + 917598: function (e, t, i) { + "use strict"; + i.d(t, { + L2: function () { + return s; + }, + M8: function () { + return r; + }, + br: function () { + return o; + }, + uy: function () { + return a; + }, + wQ: function () { + return n; + }, + }); + var n = "48.0.0", + r = (function (e) { + return (e.Loki = "loki"), e; + })({}), + a = (function (e) { + return ( + (e[(e.CN = 2515)] = "CN"), (e[(e.OVERSEAS = 7356)] = "OVERSEAS"), e + ); + })({}), + o = 513695, + s = 513695; + }, + 542994: function (e, t, i) { + "use strict"; + i.d(t, { + T: function () { + return r; + }, + }); + var n = i(243090); + function r(e, t) { + var i, + r, + a, + o, + s, + l = (0, n.D)(e.common_attr.extra); + return { + key: "".concat(t, "_").concat(e.common_attr.id || e.common_attr.md5), + resourceId: e.common_attr.id, + effectId: e.common_attr.effect_id.toString(), + effectType: e.common_attr.effect_type, + publishSource: e.common_attr.publish_source, + aspectRatio: e.common_attr.aspect_ratio, + isBusiness: e.common_attr.is_business, + md5: e.common_attr.md5, + isVip: null !== (a = l.is_vip) && void 0 !== a && a, + title: e.common_attr.title, + description: e.common_attr.description, + coverUrl: e.common_attr.cover_url, + originUrl: + null !== + (s = + null !== + (o = + null === (i = e.common_attr.item_urls) || void 0 === i + ? void 0 + : i[0]) && void 0 !== o + ? o + : null === (r = e.common_attr.download_info) || void 0 === r + ? void 0 + : r.url) && void 0 !== s + ? s + : "", + isFavorite: e.common_attr.has_favorited, + createTime: e.common_attr.create_time, + coverUrlMap: e.common_attr.cover_url_map, + localItemId: e.common_attr.local_item_id, + thirdResourceId: e.common_attr.third_resource_id, + status: e.common_attr.status, + }; + } + }, + 733787: function (e, t, i) { + "use strict"; + i.d(t, { + BY: function () { + return s; + }, + Dq: function () { + return o; + }, + H7: function () { + return a; + }, + IM: function () { + return r; + }, + T8: function () { + return u; + }, + Vr: function () { + return l; + }, + eV: function () { + return h; + }, + l$: function () { + return d; + }, + os: function () { + return c; + }, + py: function () { + return n; + }, + v8: function () { + return f; + }, + }); + var n = (function (e) { + return ( + (e.VideoAspectRatioType_1_1 = "1:1"), + (e.VideoAspectRatioType_3_4 = "3:4"), + (e.VideoAspectRatioType_16_9 = "16:9"), + (e.VideoAspectRatioType_4_3 = "4:3"), + (e.VideoAspectRatioType_9_16 = "9:16"), + (e.VideoAspectRatioType_21_9 = "21:9"), + e + ); + })({}), + r = { + "1:1": 1, + "3:4": 0.75, + "16:9": 1.7778, + "4:3": 1.3333, + "9:16": 0.5625, + "21:9": 2.3333, + }, + a = (function (e) { + return ( + (e.StillShot = "Still"), + (e.ZoomIn = "ZoomIn"), + (e.ZoomOut = "ZoomOut"), + (e.RotateClockwise = "RotateClockwise"), + (e.RotateAnticlockwise = "RotateAnticlockwise"), + (e.PanLeft = "PanLeft"), + (e.PanRight = "PanRight"), + (e.TiltUp = "TiltUp"), + (e.TiltDown = "TiltDown"), + (e.HorizontalLeft = "HorizontalLeft"), + (e.HorizontalRight = "HorizontalRight"), + (e.VerticalUp = "VerticalUp"), + (e.VerticalDown = "VerticalDown"), + (e.Default = ""), + e + ); + })({}), + o = (function (e) { + return ( + (e[(e.Level1 = 2)] = "Level1"), + (e[(e.Level2 = 3)] = "Level2"), + (e[(e.Level3 = 4)] = "Level3"), + e + ); + })({}), + s = (function (e) { + return ( + (e.Low = "Low"), (e.Moderate = "Moderate"), (e.High = "High"), e + ); + })({}), + l = (function (e) { + return ( + (e[(e.Unknow = 0)] = "Unknow"), + (e[(e.NoWatermark = 1)] = "NoWatermark"), + (e[(e.HasWatermark = 2)] = "HasWatermark"), + e + ); + })({}), + c = (function (e) { + return ( + (e[(e.Landscape = 1)] = "Landscape"), + (e[(e.Portrait = 2)] = "Portrait"), + (e[(e.Square = 3)] = "Square"), + e + ); + })({}), + d = (function (e) { + return ( + (e[(e.Pending = -1)] = "Pending"), + (e[(e.Ok = 2e5)] = "Ok"), + (e[(e.InputInvalid = 201e3)] = "InputInvalid"), + (e[(e.NoFace = 204001)] = "NoFace"), + (e[(e.FaceMouthOcclude = 204003)] = "FaceMouthOcclude"), + (e[(e.MultiFace = 204006)] = "MultiFace"), + (e[(e.InternalError = 200001)] = "InternalError"), + (e[(e.StarFaceAuditError = 100)] = "StarFaceAuditError"), + e + ); + })({}), + u = (function (e) { + return ( + (e[(e.Normal = 0)] = "Normal"), (e[(e.Relax = 1)] = "Relax"), e + ); + })({}), + f = (function (e) { + return ( + (e[(e.VideoGen = 1)] = "VideoGen"), + (e[(e.SuperResolution = 2)] = "SuperResolution"), + (e[(e.InsertFrame = 3)] = "InsertFrame"), + (e[(e.LipSync = 4)] = "LipSync"), + (e[(e.Extend = 5)] = "Extend"), + (e[(e.LabSR = 6)] = "LabSR"), + (e[(e.MixBGM = 7)] = "MixBGM"), + (e[(e.BGMGenerate = 8)] = "BGMGenerate"), + (e[(e.LipSyncImage = 9)] = "LipSyncImage"), + (e[(e.LipSyncUserVideo = 10)] = "LipSyncUserVideo"), + (e[(e.VideoTemplate = 11)] = "VideoTemplate"), + (e[(e.VideoAudioEffect = 12)] = "VideoAudioEffect"), + e + ); + })({}), + h = (function (e) { + return ( + (e[(e.Eight = 8)] = "Eight"), + (e[(e.Twelve = 12)] = "Twelve"), + (e[(e.TwentyFour = 24)] = "TwentyFour"), + (e[(e.Thirty = 30)] = "Thirty"), + (e[(e.Sixty = 60)] = "Sixty"), + e + ); + })({}); + }, + 387285: function (e, t, i) { + "use strict"; + i.d(t, { + r: function () { + return r; + }, + }); + var n = i(585567), + r = (e) => (e ? n.N : n.T); + }, + 380908: function (e, t, i) { + "use strict"; + i.d(t, { + bd: function () { + return a; + }, + qi: function () { + return n; + }, + rO: function () { + return r; + }, + }); + var n = "##", + r = RegExp("(".concat(n, ")"), "g"), + a = [{ abilityIndex: 0 }]; + }, + 826717: function (e, t, i) { + "use strict"; + i.d(t, { + X: function () { + return n; + }, + p: function () { + return r; + }, + }); + var n = (function (e) { + return ( + (e.Image = "image"), + (e.Video = "video"), + (e.Canvas = "canvas"), + (e.ShortVideo = "short_video"), + e + ); + })({}), + r = (function (e) { + return ( + (e.FeedEnterauto = "feed_enterauto"), + (e.FeedLoadmore = "feed_loadmore"), + (e.FeedRefresh = "feed_refresh"), + (e.FeedPreloadMore = "feed_preloadmore"), + e + ); + })({}); + }, + 830563: function (e, t, i) { + "use strict"; + i.d(t, { + X: function () { + return r; + }, + l: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e[(e.transcoding = 0)] = "transcoding"), + (e[(e.success = 1)] = "success"), + (e[(e.fail = 2)] = "fail"), + e + ); + })({}), + r = (function (e) { + return ( + (e[(e.Uploading = 1)] = "Uploading"), + (e[(e.UploadFailed = 2)] = "UploadFailed"), + (e[(e.WaitingForUploading = 3)] = "WaitingForUploading"), + (e[(e.UploadSuccess = 4)] = "UploadSuccess"), + (e[(e.EncodeSuccess = 10)] = "EncodeSuccess"), + (e[(e.EncodeFailed = 20)] = "EncodeFailed"), + (e[(e.Encoding = 30)] = "Encoding"), + (e[(e.NonExist = 40)] = "NonExist"), + e + ); + })({}); + }, + 599045: function (e, t, i) { + "use strict"; + i.d(t, { + M: function () { + return n; + }, + r: function () { + return r; + }, + }); + var n = (function (e) { + return ( + (e.TextToSpeech = "text-to-speech"), (e.LocalFile = "local-file"), e + ); + })({}), + r = (function (e) { + return (e[(e.Hard = 1)] = "Hard"), (e[(e.Soft = 2)] = "Soft"), e; + })({}); + }, + 538638: function (e, t, i) { + "use strict"; + i.d(t, { + F: function () { + return n; + }, + }); + var n = (function (e) { + return (e.ALL = "all"), (e.Favor = "favor"), e; + })({}); + }, + 128468: function (e, t, i) { + "use strict"; + i.d(t, { + HJ: function () { + return a; + }, + JU: function () { + return n; + }, + d_: function () { + return o; + }, + ok: function () { + return r; + }, + }); + var n = (function (e) { + return ( + (e.Canvas = "canvas"), + (e.Workbench = "workbench"), + (e.Story = "story"), + (e.Character = "character"), + (e.PostEditor = "post_editor"), + (e.AIGCDraft = "aigc_draft"), + (e.CreationAgent = "creation_agent"), + e + ); + })({}), + r = (function (e) { + return (e[(e.Small = 360)] = "Small"), e; + })({}), + a = [16, 32, 100, 150, 360], + o = (function (e) { + return (e.Style = "style"), e; + })({}); + }, + 243302: function (e, t, i) { + "use strict"; + i.d(t, { + KB: function () { + return n; + }, + Pd: function () { + return a; + }, + pi: function () { + return r; + }, + }); + var n = (function (e) { + return ( + (e[(e.PageUp = 1)] = "PageUp"), + (e[(e.PageDown = 2)] = "PageDown"), + e + ); + })({}), + r = (function (e) { + return ( + (e[(e.Unknown = -1)] = "Unknown"), + (e[(e.Text2Image = 1)] = "Text2Image"), + (e[(e.SuperResolution = 2)] = "SuperResolution"), + (e[(e.FineTunePromptWithText2Image = 3)] = + "FineTunePromptWithText2Image"), + (e[(e.FineTunePromptWithSuperResolution = 4)] = + "FineTunePromptWithSuperResolution"), + (e[(e.Text2CreativeText = 5)] = "Text2CreativeText"), + (e[(e.SpecialEffect = 6)] = "SpecialEffect"), + (e[(e.InPaint = 7)] = "InPaint"), + (e[(e.OutPaint = 8)] = "OutPaint"), + (e[(e.InPaintRemove = 9)] = "InPaintRemove"), + (e[(e.Text2Video = 10)] = "Text2Video"), + (e[(e.Blend = 12)] = "Blend"), + (e[(e.SuperDefinition = 13)] = "SuperDefinition"), + (e[(e.Matting = 14)] = "Matting"), + (e[(e.Fusion = 15)] = "Fusion"), + (e[(e.VideoBGM = 16)] = "VideoBGM"), + (e[(e.AudioVideoMix = 17)] = "AudioVideoMix"), + (e[(e.InstaDrag = 18)] = "InstaDrag"), + (e[(e.Image2Avatar = 20)] = "Image2Avatar"), + (e[(e.Video2Avatar = 21)] = "Video2Avatar"), + (e[(e.Text2Song = 22)] = "Text2Song"), + (e[(e.Text2Instrumental = 23)] = "Text2Instrumental"), + (e[(e.LipSync = 24)] = "LipSync"), + (e[(e.InPaintAndOutPaint = 26)] = "InPaintAndOutPaint"), + (e[(e.ByteEditPainting = 27)] = "ByteEditPainting"), + (e[(e.VideoTemplate = 29)] = "VideoTemplate"), + (e[(e.AIEffectWorkImage = 30)] = "AIEffectWorkImage"), + (e[(e.AIEffectWorkVideo = 31)] = "AIEffectWorkVideo"), + (e[(e.VideoAudioEffect = 32)] = "VideoAudioEffect"), + (e[(e.VideoAudioEffectMix = 33)] = "VideoAudioEffectMix"), + e + ); + })({}), + a = (function (e) { + return ( + (e[(e.Init = 0)] = "Init"), + (e[(e.PreTnsCheckNotPass = 10)] = "PreTnsCheckNotPass"), + (e[(e.SubmitOk = 20)] = "SubmitOk"), + (e[(e.FinalGenerateFail = 30)] = "FinalGenerateFail"), + (e[(e.PostTnsCheckNotPass = 40)] = "PostTnsCheckNotPass"), + (e[(e.FinalSuccess = 50)] = "FinalSuccess"), + (e[(e.Deleted = 100)] = "Deleted"), + e + ); + })({}); + }, + 955625: function (e, t, i) { + "use strict"; + i.d(t, { + J: function () { + return r; + }, + l: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e.ErrSuccess = "0"), + (e.OutputImageRisk = "2039"), + (e.InputTextRisk = "2038"), + (e.InputTextIpBlock = "2047"), + (e.GenerateFail = "2036"), + (e.RateLimit1 = "1057"), + (e.UnsupportedByBeta = "1182"), + (e.ErrParam = "1001"), + (e.ErrDownloadImage = "1059"), + (e.ErrPostImgRiskNotPass = "2041"), + (e.ErrAssetsCodeNotExist = "1190"), + (e.ErrAssetsStatusInvalid = "1189"), + (e.ErrRateLimitForNonCommercialRegion = "10020"), + e + ); + })({}), + r = (function (e) { + return ( + (e[(e.Unknown = 0)] = "Unknown"), + (e[(e.ImageX = 1)] = "ImageX"), + (e[(e.VCloud = 2)] = "VCloud"), + (e[(e.Artist = 3)] = "Artist"), + e + ); + })({}); + }, + 111709: function (e, t, i) { + "use strict"; + i.d(t, { + Ao: function () { + return o; + }, + Wn: function () { + return a; + }, + fM: function () { + return n; + }, + oo: function () { + return r; + }, + }); + var n = "high_aes_general_v30l:general_v3.0_18b", + r = (function (e) { + return ( + (e.FaceWrap = "face_swap"), + (e.BgPaint = "bg_paint"), + (e.Canny = "canny"), + (e.Depth = "depth"), + (e.Pose = "pose"), + (e.IpKeep = "ip_keep"), + (e.Character = "character"), + (e.StyleReference = "style_reference"), + (e.ByteEdit = "byte_edit"), + (e.ImageToImage = "i2i"), + (e.Default = "default_scene"), + (e.StyleCode = "style_code"), + e + ); + })({}), + a = (function (e) { + return ( + (e.BetaModel = "beta_model"), + (e.NewModel = "new_model"), + (e.ReadOnlySampleStrength = "read_only_sample_steps"), + (e.ReadOnlySize = "read_only_size"), + (e.readOnlyRatio = "read_only_ratio"), + (e.ThirdParty = "third_party"), + (e.Etta = "etta"), + e + ); + })({}), + o = (function (e) { + return (e.LimitTimeDiscount = "limit_time_discout"), e; + })({}); + }, + 202401: function (e, t, i) { + "use strict"; + i.d(t, { + O: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e[(e.Init = 0)] = "Init"), + (e[(e.Processing = 1)] = "Processing"), + (e[(e.Fail = 2)] = "Fail"), + (e[(e.Success = 3)] = "Success"), + e + ); + })({}); + }, + 869919: function (e, t, i) { + "use strict"; + i.d(t, { + Mc: function () { + return s; + }, + N7: function () { + return l; + }, + RM: function () { + return a; + }, + WP: function () { + return r; + }, + X2: function () { + return d; + }, + eA: function () { + return n; + }, + tB: function () { + return o; + }, + zk: function () { + return c; + }, + }); + var n = (function (e) { + return ( + (e.LipSync = "lip_sync"), + (e.InsertFrame = "insert_frame"), + (e.SuperResolution = "super_resolution"), + (e.LipSyncImage = "lip_sync_image"), + (e.LipSyncUserVideo = "lip_sync_user_video"), + (e.VideoExtend = "video_extend"), + (e.VideoTemplate = "video_template"), + (e.VideoBGM = "video_bgm"), + (e.VideoAudioEffect = "video_audio_effect"), + e + ); + })({}), + r = (function (e) { + return ( + (e[(e.Normal = 8)] = "Normal"), + (e[(e.Fluency = 12)] = "Fluency"), + (e[(e.Cinematic = 24)] = "Cinematic"), + e + ); + })({}), + a = (function (e) { + return ( + (e[(e.second3 = 3e3)] = "second3"), + (e[(e.second4 = 4e3)] = "second4"), + (e[(e.second5 = 5e3)] = "second5"), + (e[(e.second6 = 6e3)] = "second6"), + (e[(e.second8 = 8e3)] = "second8"), + (e[(e.second9 = 9e3)] = "second9"), + (e[(e.second10 = 1e4)] = "second10"), + (e[(e.second12 = 12e3)] = "second12"), + e + ); + })({}), + o = (function (e) { + return ( + (e[(e.Preview = 1)] = "Preview"), + (e[(e.Default = 2)] = "Default"), + (e[(e.Livephoto = 3)] = "Livephoto"), + (e[(e.LipSyncDefault = 4)] = "LipSyncDefault"), + (e[(e.LipSyncLively = 5)] = "LipSyncLively"), + (e[(e.LipSyncMaster = 6)] = "LipSyncMaster"), + (e[(e.LipSyncMasterFast = 7)] = "LipSyncMasterFast"), + e + ); + })({}), + s = (function (e) { + return (e.Low = "0"), (e.Moderate = "1"), (e.High = "2"), e; + })({}), + l = (function (e) { + return ( + (e[(e.Init = 0)] = "Init"), + (e[(e.Processing = 1)] = "Processing"), + (e[(e.Fail = 2)] = "Fail"), + (e[(e.Success = 3)] = "Success"), + e + ); + })({}), + c = (function (e) { + return ( + (e[(e.BGM = 0)] = "BGM"), + (e[(e.AudioEffect = 1)] = "AudioEffect"), + e + ); + })({}), + d = (function (e) { + return ( + (e[(e.Unknown = 0)] = "Unknown"), + (e[(e.Tag = 1)] = "Tag"), + (e[(e.FirstFrame = 2)] = "FirstFrame"), + e + ); + })({}); + }, + 839141: function (e, t, i) { + "use strict"; + i.d(t, { + d: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e.Standard = "standard"), + (e.Artisan = "artisan"), + (e.Maestro = "maestro"), + (e.None = ""), + e + ); + })({}); + }, + 956719: function (e, t, i) { + "use strict"; + function n(e) { + e.interceptors.response.use((e) => { + if (200 === e.status) { + var t, + i = e.data; + if ( + (i.data && + ((null == i ? void 0 : i.logId) || + (null == i ? void 0 : i.logid) || + (null == i ? void 0 : i.log_id)) && + (i.data.__logId = i.logId || i.logid || i.log_id), + i.data && + ((null == i ? void 0 : i.cache_sync_token) || + (null == i ? void 0 : i.cacheSyncToken)) && + (i.data.__cacheSyncToken = + i.cache_sync_token || + (null == i ? void 0 : i.cacheSyncToken)), + (null == i ? void 0 : i.ret) === "0" || + (null == i ? void 0 : i.ret) === "1020" || + (null == i + ? void 0 + : null === (t = i.BaseResp) || void 0 === t + ? void 0 + : t.StatusCode) === 0) + ) + return Promise.resolve(null == i ? void 0 : i.data); + } + return Promise.reject(e.data); + }); + } + function r(e, t) { + e.interceptors.response.use((e) => { + var { disableRetCheck: i = !1 } = null != t ? t : {}; + if (200 === e.status) { + var n, + r = e.data; + return i || + (null == r ? void 0 : r.ret) === "0" || + (null == r ? void 0 : r.ret) === "1020" || + (null == r + ? void 0 + : null === (n = r.BaseResp) || void 0 === n + ? void 0 + : n.StatusCode) === 0 || + (null == r ? void 0 : r.status_code) === 0 || + (null == r ? void 0 : r.ret) === "" || + (null == r ? void 0 : r.err_no) === 0 + ? Promise.resolve(r) + : Promise.reject(r); + } + return Promise.reject(e); + }); + } + i.d(t, { + C: function () { + return r; + }, + E: function () { + return n; + }, + }); + }, + 601191: function (e, t, i) { + "use strict"; + i.d(t, { f4: () => h, vp: () => _, Mu: () => P }); + var n = i("625572"), + r = i("639880"), + a = i("96"), + o = i("243090"), + s = i("417281"), + l = i("380908"); + function c(e) { + var { name: t, largeImageList: i = [] } = e; + return t === s.UI.BgPaint && 2 === i.length; + } + var d = [ + s.UI.FaceGan, + s.UI.BasicBlend, + s.UI.BgPaint, + s.UI.ControlNet, + s.UI.Image2image, + s.UI.IpKeep, + s.UI.StyleReference, + s.UI.ByteEdit, + s.UI.StyleCode, + ], + u = i("128468"), + f = i("952739"); + function h(e) { + return e.name === s.UI.FaceGan; + } + function p(e) { + return e.name === s.UI.BgPaint; + } + function v(e) { + return e.name === s.UI.Image2image; + } + function m(e) { + return e.name === s.UI.ControlNet; + } + function g(e) { + return e.name === s.UI.IpKeep; + } + function _(e) { + return e.name === s.UI.StyleReference; + } + function y(e) { + return e.name === s.UI.ByteEdit; + } + function b(e, t) { + try { + var i = JSON.parse(e); + return JSON.stringify((0, n._)({}, i, t)); + } catch (e) { + return JSON.stringify(t); + } + } + function I(e, t) { + var i, + r, + a, + o, + l, + c, + { + largeImageList: d = [], + coverImageList: u = [], + faceRecognizeList: f = [], + extra: h, + } = e, + p = d.filter((e) => !!e).map((e) => e.imageUri), + v = null !== (i = u[0]) && void 0 !== i ? i : {}, + m = null !== (r = d[0]) && void 0 !== r ? r : {}, + g = { + coverUrl: null !== (a = v.imageUrl) && void 0 !== a ? a : "", + coverUrlMap: v.coverUrlMap, + url: null !== (o = m.imageUrl) && void 0 !== o ? o : "", + width: null !== (l = m.width) && void 0 !== l ? l : 0, + height: null !== (c = m.height) && void 0 !== c ? c : 0, + extra: h, + }, + _ = { name: s.UI.FaceGan, faceRecognizeList: f, imageUriList: p }; + return (0, n._)({}, g, _); + } + function w(e, t) { + var i, + r, + a, + o, + l, + d, + u, + f, + h, + p, + v, + m, + g, + _, + y, + I, + w, + x, + S, + M, + C, + T, + A, + k, + P, + E, + D, + { generatedImageSize: R } = t, + { + largeImageList: N = [], + coverImageList: L = [], + strength: j, + extra: O = "", + } = e, + B = c(e), + F = B + ? [ + "", + "", + null !== + (v = + null === (i = N[0]) || void 0 === i + ? void 0 + : i.imageUri) && void 0 !== v + ? v + : "", + null !== + (m = + null === (r = N[1]) || void 0 === r + ? void 0 + : r.imageUri) && void 0 !== m + ? m + : "", + ] + : [ + null !== + (g = + null === (a = N[0]) || void 0 === a + ? void 0 + : a.imageUri) && void 0 !== g + ? g + : "", + null !== + (_ = + null === (o = N[1]) || void 0 === o + ? void 0 + : o.imageUri) && void 0 !== _ + ? _ + : "", + null !== + (y = + null === (l = N[2]) || void 0 === l + ? void 0 + : l.imageUri) && void 0 !== y + ? y + : "", + null !== + (I = + null === (d = N[3]) || void 0 === d + ? void 0 + : d.imageUri) && void 0 !== I + ? I + : "", + ], + { width: U = 0, height: G = 0 } = B + ? null != R + ? R + : {} + : null !== (w = N[1]) && void 0 !== w + ? w + : {}, + z = { + originMaskUrl: B + ? null !== + (x = + null === (u = N[0]) || void 0 === u + ? void 0 + : u.imageUrl) && void 0 !== x + ? x + : "" + : null !== + (S = + null === (f = N[2]) || void 0 === f + ? void 0 + : f.imageUrl) && void 0 !== S + ? S + : "", + originImageUrl: B + ? null !== + (M = + null === (h = N[1]) || void 0 === h + ? void 0 + : h.imageUrl) && void 0 !== M + ? M + : "" + : null !== + (C = + null === (p = N[3]) || void 0 === p + ? void 0 + : p.imageUrl) && void 0 !== C + ? C + : "", + paintWidth: U, + paintHeight: G, + }, + V = null !== (T = B ? L[1] : L[3]) && void 0 !== T ? T : {}, + W = null !== (A = B ? N[1] : N[3]) && void 0 !== A ? A : {}, + Z = O ? b(O, z) : JSON.stringify(z), + K = { + coverUrlMap: V.coverUrlMap, + coverUrl: null !== (k = V.imageUrl) && void 0 !== k ? k : "", + extra: Z, + url: null !== (P = W.imageUrl) && void 0 !== P ? P : "", + width: null !== (E = W.width) && void 0 !== E ? E : 0, + height: null !== (D = W.height) && void 0 !== D ? D : 0, + }, + H = { name: s.UI.BgPaint, imageUriList: F, extra: Z, strength: j }; + return (0, n._)({}, K, H); + } + function x(e, t) { + var i, + r, + a, + o, + l, + c, + d, + u, + { + largeImageList: f = [], + coverImageList: h = [], + extra: p, + strength: v, + } = e, + m = null !== (r = h[0]) && void 0 !== r ? r : {}, + g = null !== (a = f[0]) && void 0 !== a ? a : {}, + _ = { + coverUrl: null !== (o = m.imageUrl) && void 0 !== o ? o : "", + coverUrlMap: m.coverUrlMap, + extra: p, + url: null !== (l = g.imageUrl) && void 0 !== l ? l : "", + width: null !== (c = g.width) && void 0 !== c ? c : 0, + height: null !== (d = g.height) && void 0 !== d ? d : 0, + }, + y = { + name: s.UI.Image2image, + imageUriList: [ + null !== + (u = + null === (i = f.filter((e) => !!e).map((e) => e.imageUri)) || + void 0 === i + ? void 0 + : i[0]) && void 0 !== u + ? u + : "", + ], + strength: v, + }; + return (0, n._)({}, _, y); + } + function S(e, t) { + if (!e) + return { + coverUrl: "", + extra: "", + url: "", + width: 0, + height: 0, + name: s.UI.BasicBlend, + imageUriList: [""], + imageWeightList: [0], + }; + var i, + r, + a, + o, + l, + c, + d, + u, + { largeImageList: f = [], coverImageList: h = [], extra: p } = e, + v = [ + null !== + (r = + null === (i = f.filter((e) => !!e).map((e) => e.imageUri)) || + void 0 === i + ? void 0 + : i[0]) && void 0 !== r + ? r + : "", + ], + m = null !== (a = h[0]) && void 0 !== a ? a : {}, + g = null !== (o = f[0]) && void 0 !== o ? o : {}, + _ = { + coverUrl: null !== (l = m.imageUrl) && void 0 !== l ? l : "", + coverUrlMap: m.coverUrlMap, + extra: p, + url: null !== (c = g.imageUrl) && void 0 !== c ? c : "", + width: null !== (d = g.width) && void 0 !== d ? d : 0, + height: null !== (u = g.height) && void 0 !== u ? u : 0, + }, + y = { name: s.UI.BasicBlend, imageUriList: v, imageWeightList: [0] }; + return (0, n._)({}, _, y); + } + function M(e, t) { + var { generatedImageSize: i } = t, + { + largeImageList: r = [], + coverImageList: a = [], + controlNetList: l = [], + extra: c, + } = e, + d = (0, o.D)(null != c ? c : "[]"); + return l.map((e, t) => { + var i, + o, + l, + c, + u, + f, + h, + p, + v, + m, + g = e.name === s.kR.ControlNetBgPaint, + { imageIndex: _, name: y, maskIndex: b, strength: I } = e; + if (g) { + var w, + x, + S, + M, + C, + T, + A, + k, + P, + E, + D, + R, + N, + L, + j, + O, + B, + F, + U, + G, + z, + V, + W = d[t], + Z = [ + null !== + (E = + null === (M = r[null != b ? b : 0]) || void 0 === M + ? void 0 + : M.imageUri) && void 0 !== E + ? E + : "", + null !== + (D = + null === (C = r[_]) || void 0 === C + ? void 0 + : C.imageUri) && void 0 !== D + ? D + : "", + null !== + (R = + null === (T = r[_ + 1]) || void 0 === T + ? void 0 + : T.imageUri) && void 0 !== R + ? R + : "", + null !== + (N = + null === (A = r[_ + 2]) || void 0 === A + ? void 0 + : A.imageUri) && void 0 !== N + ? N + : "", + ], + K = null !== (L = a[_ + 2]) && void 0 !== L ? L : {}, + H = null !== (j = r[_ + 2]) && void 0 !== j ? j : {}, + q = { + coverUrl: null !== (O = K.imageUrl) && void 0 !== O ? O : "", + coverUrlMap: K.coverUrlMap, + url: null !== (B = H.imageUrl) && void 0 !== B ? B : "", + width: null !== (F = H.width) && void 0 !== F ? F : 0, + height: null !== (U = H.height) && void 0 !== U ? U : 0, + }, + { width: J = 0, height: Y = 0 } = + null !== (G = r[_]) && void 0 !== G ? G : {}, + Q = { + originMaskUrl: + null !== + (z = + null === (k = r[_ + 1]) || void 0 === k + ? void 0 + : k.imageUrl) && void 0 !== z + ? z + : "", + originImageUrl: + null !== + (V = + null === (P = r[_ + 2]) || void 0 === P + ? void 0 + : P.imageUrl) && void 0 !== V + ? V + : "", + paintWidth: J, + paintHeight: Y, + }, + X = W ? JSON.stringify((0, n._)({}, W, Q)) : JSON.stringify(Q), + $ = { + name: s.UI.BgPaint, + imageUriList: Z, + strength: I, + extra: X, + }; + return (0, n._)({}, q, $); + } + var ee = [ + null !== + (i = + null === (w = r[_]) || void 0 === w ? void 0 : w.imageUri) && + void 0 !== i + ? i + : "", + null !== + (o = + null === (x = r[_ + 1]) || void 0 === x + ? void 0 + : x.imageUri) && void 0 !== o + ? o + : "", + null !== + (l = + null === (S = r[_ + 2]) || void 0 === S + ? void 0 + : S.imageUri) && void 0 !== l + ? l + : "", + ], + et = null !== (c = a[_ + 1]) && void 0 !== c ? c : {}, + ei = null !== (u = r[_ + 1]) && void 0 !== u ? u : {}, + en = null !== (f = r[_ + 2]) && void 0 !== f ? f : {}, + er = [{ imageIndex: 0, name: y, strength: I }], + ea = { + coverUrl: null !== (h = et.imageUrl) && void 0 !== h ? h : "", + coverUrlMap: et.coverUrlMap, + url: null !== (p = ei.imageUrl) && void 0 !== p ? p : "", + width: null !== (v = ei.width) && void 0 !== v ? v : 0, + height: null !== (m = ei.height) && void 0 !== m ? m : 0, + previewInfo: en, + controlNetList: er, + }, + eo = JSON.stringify([d[t]]), + es = { + name: s.UI.ControlNet, + imageUriList: ee, + controlNetList: er, + extra: eo, + }; + return (0, n._)({}, ea, es); + }); + } + function C(e, t) { + var i, + o, + l, + c, + d, + u, + f, + { + ipKeepList: h = [], + coverImageList: p = [], + largeImageList: v = [], + } = e, + m = [ + null !== + (o = + null === (i = v.filter((e) => !!e).map((e) => e.imageUri)) || + void 0 === i + ? void 0 + : i[0]) && void 0 !== o + ? o + : "", + ], + g = null !== (l = p[0]) && void 0 !== l ? l : {}; + return { + name: s.UI.IpKeep, + url: null !== (c = g.imageUrl) && void 0 !== c ? c : "", + coverUrl: null !== (d = g.imageUrl) && void 0 !== d ? d : "", + coverUrlMap: g.coverUrlMap, + width: null !== (u = g.width) && void 0 !== u ? u : 0, + height: null !== (f = g.height) && void 0 !== f ? f : 0, + imageUriList: m, + ipKeepList: h.map((e) => { + var { status: t, characterId: i } = e, + o = (0, a._)(e, ["status", "characterId"]); + return (0, r._)((0, n._)({}, o), { characterId: "".concat(i) }); + }), + }; + } + function T(e, t) { + var i, + n, + r, + a, + o, + l, + c, + d, + h, + p, + { mode: v } = t, + { styleReference: m } = e; + if (!!(null == m ? void 0 : m.styleItemId) || v !== u.JU.Story) { + var g = + (null == m + ? void 0 + : null === (i = m.image) || void 0 === i + ? void 0 + : i.imageUrl) || + (0, f.a0)( + null !== + (l = + null == m + ? void 0 + : null === (n = m.image) || void 0 === n + ? void 0 + : n.coverUrlMap) && void 0 !== l + ? l + : {} + ); + return { + name: s.UI.StyleReference, + url: g, + coverUrl: g, + coverUrlMap: + null == m + ? void 0 + : null === (r = m.image) || void 0 === r + ? void 0 + : r.coverUrlMap, + width: + null !== + (c = + null == m + ? void 0 + : null === (a = m.image) || void 0 === a + ? void 0 + : a.width) && void 0 !== c + ? c + : 0, + height: + null !== + (d = + null == m + ? void 0 + : null === (o = m.image) || void 0 === o + ? void 0 + : o.height) && void 0 !== d + ? d + : 0, + imageUriList: [ + null !== (h = null == m ? void 0 : m.image.imageUri) && + void 0 !== h + ? h + : "", + ], + imageWeightList: [ + (null !== (p = null == m ? void 0 : m.styleWeight) && void 0 !== p + ? p + : 0) * 100, + ], + styleReference: null != m ? m : {}, + }; + } + } + function A(e, t) { + var i, + r, + a, + o, + l, + c, + d, + { largeImageList: u = [], coverImageList: f = [], strength: h } = e, + p = u.filter((e) => !!e).map((e) => e.imageUri), + v = null !== (i = f[0]) && void 0 !== i ? i : {}, + m = null !== (r = u[0]) && void 0 !== r ? r : {}, + g = { + coverUrl: null !== (a = v.imageUrl) && void 0 !== a ? a : "", + coverUrlMap: v.coverUrlMap, + url: null !== (o = m.imageUrl) && void 0 !== o ? o : "", + width: null !== (l = m.width) && void 0 !== l ? l : 0, + height: null !== (c = m.height) && void 0 !== c ? c : 0, + }, + _ = { + name: s.UI.ByteEdit, + imageUriList: [null !== (d = p[0]) && void 0 !== d ? d : ""], + strength: h, + }; + return (0, n._)({}, g, _); + } + function k(e, t) { + var i, + { + commonAsset: a = { + assetCode: "", + assetType: u.d_.Style, + referImageList: [], + }, + } = e, + o = { + coverUrl: void 0, + coverUrlMap: void 0, + url: void 0, + width: void 0, + height: void 0, + }, + l = { + name: s.UI.StyleCode, + commonAsset: (0, r._)((0, n._)({}, a), { + referImageList: + null === (i = a.referImageList) || void 0 === i + ? void 0 + : i.map((e) => { + var t; + return (0, r._)((0, n._)({}, e), { + styleWeight: + (null !== (t = e.styleWeight) && void 0 !== t + ? t + : 0) * 100, + }); + }), + }), + }; + return (0, n._)({}, o, l); + } + function P(e, t) { + var i = + arguments.length > 2 && void 0 !== arguments[2] + ? arguments[2] + : u.JU.Workbench; + if (!t) return []; + try { + var n, + { abilityList: r = [], promptPlaceholderInfoList: a } = t, + o = + null == r + ? void 0 + : r.filter((e) => { + var { name: t } = e; + return d.includes(t); + }), + c = (null == a ? void 0 : a.length) ? a : l.bd, + f = { generatedImageSize: e, mode: i }, + b = [], + P = 0; + for (var E of c) { + var { abilityIndex: D } = E, + R = o[D]; + if (!!R) + if (h(R)) { + var N = I(R, f); + b.push(N); + } else if (p(R)) { + var L = w(R, f); + b.push(L); + } else if (m(R)) !n && (n = M(R, f)), b.push(n[P]), P++; + else if (v(R)) { + var j = x(R, f); + b.push(j); + } else if (g(R)) { + var O = C(R, f); + b.push(O); + } else if (_(R)) { + var B = T(R, f); + B && b.push(B); + } else if (y(R)) { + var F = A(R, f); + b.push(F); + } else if ((0, s.iB)(R)) { + var U = k(R, f); + b.push(U); + } else { + var G = S(R, f); + b.push(G); + } + } + return b; + } catch (e) { + return; + } + } + }, + 76212: function (e, t, i) { + "use strict"; + i.d(t, { + Rb: function () { + return c; + }, + b2: function () { + return a; + }, + jb: function () { + return o; + }, + kB: function () { + return s; + }, + lh: function () { + return l; + }, + }); + var n = i(243302), + r = i(417281); + function a() { + switch (!0) { + case location.pathname.includes("image/generate"): + return "to_image"; + case location.pathname.includes("image-edit"): + return "canvas"; + case location.pathname.includes("video/generate"): + return "to_video"; + case location.pathname.includes("story-editor"): + return "story"; + case location.pathname.includes("audio/generate"): + return "to_music"; + case location.pathname.includes("workflow"): + return "aigc"; + default: + return "makesame"; + } + } + function o(e) { + switch (e) { + case n.pi.InPaint: + return "to_image_inpaint"; + case n.pi.OutPaint: + return "to_image_expand"; + case n.pi.InPaintRemove: + return "to_image_remove"; + default: + return; + } + } + function s(e) { + var t = a(), + i = ""; + switch (e) { + case n.pi.InPaint: + i = "inpaint"; + break; + case n.pi.OutPaint: + i = "expand"; + break; + case n.pi.InPaintRemove: + i = "inpaintremove"; + } + return "".concat(t, "_").concat(i); + } + function l(e) { + var t = a(), + i = ""; + switch (e) { + case "text2image_high_aes_general_jianying": + i = "generalv1.1"; + break; + case "text2image_high_aes_general_jianying_v12_hw": + case "text2image_high_aes_general_jianying_v12": + i = "generalv1.2"; + break; + case "high_aes_scheduler_svr": + case "high_aes_scheduler_svr:anime_v1.3": + i = "artflexxl"; + break; + case "text2img_xl_sft": + i = "generalvxl"; + break; + case "text2image_high_aes_anime_jianying": + i = "animev1.1"; + break; + default: + i = e; + } + return "".concat(t, "-").concat(i); + } + function c(e) { + var t = []; + for (var i of e) + switch (i.name) { + case r.UI.ControlNet: + if ("controlNetList" in i) { + for (var n of i.controlNetList) t.push(n.name); + break; + } + default: + t.push(i.name); + } + return t.join(","); + } + }, + 549654: function (e, t, i) { + "use strict"; + i.d(t, { + E: function () { + return r; + }, + o: function () { + return a; + }, + }); + var n = i(733787), + r = { + [n.BY.High]: n.Dq.Level3, + [n.BY.Moderate]: n.Dq.Level2, + [n.BY.Low]: n.Dq.Level1, + }, + a = { + [n.Dq.Level3]: n.BY.High, + [n.Dq.Level2]: n.BY.Moderate, + [n.Dq.Level1]: n.BY.Low, + }; + }, + 913390: function (e, t, i) { + "use strict"; + i.d(t, { + i: function () { + return o; + }, + l: function () { + return a; + }, + }); + var n = i(625572), + r = i(172834); + function a(e, t) { + var i, + r = null == e ? void 0 : e.vid; + if (!!r) { + var a = + null == t + ? void 0 + : null === (i = t.find((e) => e.key === r)) || void 0 === i + ? void 0 + : i.videoInfo; + return (0, n._)({ videoId: r }, a); + } + } + function o(e, t) { + if (!!(null == e ? void 0 : e.videoId)) { + var i, + n, + a, + o = new r.DAAudioResource(); + return ( + (o.sourceFrom = + null !== (i = null == t ? void 0 : t.sourceFrom) && void 0 !== i + ? i + : r.DAResourceSourceFrom.upload), + (o.vid = e.videoId), + o.setDurationSecond( + null !== (n = e.duration) && void 0 !== n ? n : 0 + ), + (o.name = + null !== (a = null == t ? void 0 : t.name) && void 0 !== a + ? a + : ""), + o + ); + } + } + }, + 384295: function (e, t, i) { + "use strict"; + i.d(t, { j: () => s }); + var n = i("172834"), + r = i("869919"), + a = { + [r.zk.BGM]: n.DAGenerateVideoAudioScene.BGM, + [r.zk.AudioEffect]: n.DAGenerateVideoAudioScene.EFFECT, + }; + function o(e) { + if (!!e) return a[e]; + } + function s(e) { + if (!!e) { + var t = new n.DAVideoGenV2VAVMix(); + return ( + (t.enable = e.enable), + (t.videoItemId = e.videoItemId), + (t.audioVid = e.audioVid), + (t.scene = o(e.scene)), + t + ); + } + } + n.DAGenerateVideoAudioScene.BGM, + r.zk.BGM, + n.DAGenerateVideoAudioScene.EFFECT, + r.zk.AudioEffect; + }, + 324319: function (e, t, i) { + "use strict"; + i.d(t, { IM: () => f, s3: () => p, mi: () => h }); + var n = i("172834"), + r = i("599045"), + a = i("266352"), + o = i("201636"), + s = i("224671"), + l = (e) => { + if (!!e) { + var t = new n.LipSyncInfoToneEmotion(); + return ( + (t.nameKey = e.nameKey), + (t.text = e.text), + (t.emotion = e.emotion), + (t.emotionScale = e.emotionScale), + t + ); + } + }, + c = (e) => { + if (!!e) + return { + nameKey: e.nameKey, + text: e.text, + emotion: e.emotion, + emotionScale: e.emotionScale, + }; + }, + d = "upload_audio_placeholder_tone_id", + u = (e) => + e.sourceType === r.M.LocalFile && e.toneId === d + ? "\u97F3\u9891\u539F\u58F0" + : e.toneItemPlatform === o.oH.Local || + e.toneItemPlatform === o.oH.Template + ? "\u81EA\u5B9A\u4E49\u97F3\u8272" + : e.toneKey; + function f(e) { + if ((null == e ? void 0 : e.sourceType) === r.M.LocalFile) + return e.name; + } + function h(e) { + if (!e) return new n.DALipSyncAbility(); + var t, + i = new n.DALipSyncAbility(); + return e.sourceType === r.M.LocalFile + ? ((i.ttsContent = void 0), + (i.audioToneId = u(e)), + (i.audioItemPlatform = (0, a.c)(e.toneItemPlatform)), + (i.audioToneEmotion = l(e.toneEmotion)), + (i.audioResourceId = ( + null == e + ? void 0 + : null === (t = e.toneId) || void 0 === t + ? void 0 + : t.includes(d) + ) + ? void 0 + : String(e.toneId)), + (i.audioSpeed = void 0), + (i.audioEffectId = void 0), + (i.ttsContent = void 0), + i) + : ((i.ttsContent = e.text), + (i.audioToneId = u(e)), + (i.audioEffectId = e.toneEffectId), + (i.audioResourceId = String(e.toneId)), + (i.audioItemPlatform = (0, a.c)(e.toneItemPlatform)), + (i.audioToneEmotion = l(e.toneEmotion)), + (i.audioSpeed = e.speed), + i); + } + function p(e) { + if (!!e) { + var t, + i, + n, + l, + u, + f, + h, + p, + v, + m, + g, + _, + y, + b, + I, + w, + x, + S = e.ttsContent ? r.M.TextToSpeech : r.M.LocalFile, + M = c(e.audioToneEmotion); + return S === r.M.TextToSpeech + ? { + sourceType: S, + name: null !== (i = e.audioToneId) && void 0 !== i ? i : "", + toneId: + null !== (n = e.audioResourceId) && void 0 !== n ? n : "", + toneItemPlatform: + null !== (l = (0, a.S)(e.audioItemPlatform)) && void 0 !== l + ? l + : o.oH.Loki, + text: null !== (u = e.ttsContent) && void 0 !== u ? u : "", + speed: null !== (f = e.audioSpeed) && void 0 !== f ? f : 1, + toneEffectId: + null !== (h = e.audioEffectId) && void 0 !== h ? h : "", + toneCategoryId: 0, + toneCategoryKey: "all", + toneKey: null !== (p = e.audioToneId) && void 0 !== p ? p : "", + toneEmotion: M, + } + : { + sourceType: S, + toneCategoryId: 0, + toneCategoryKey: "all", + toneKey: null !== (v = e.audioToneId) && void 0 !== v ? v : "", + name: + null !== + (m = + (null === (t = e.audio) || void 0 === t + ? void 0 + : t.name) || e.audioToneId) && void 0 !== m + ? m + : d, + toneId: + null !== (g = e.audioResourceId) && void 0 !== g ? g : d, + tone: e.audioResourceId + ? { + id: + null !== (_ = e.audioResourceId) && void 0 !== _ + ? _ + : "", + idInfo: { + id: + null !== (y = e.audioResourceId) && void 0 !== y + ? y + : "", + itemPlatform: + null !== (b = (0, a.S)(e.audioItemPlatform)) && + void 0 !== b + ? b + : o.oH.Loki, + }, + title: + null !== (I = e.audioToneId) && void 0 !== I ? I : "", + resourceId: + null !== (w = e.audioResourceId) && void 0 !== w + ? w + : "", + lokiInfo: "", + isVip: !1, + disableSpeedRate: !1, + effectType: s.O5.DreaminaCloneTone, + toneType: {}, + } + : void 0, + toneItemPlatform: + null !== (x = (0, a.S)(e.audioItemPlatform)) && void 0 !== x + ? x + : o.oH.Loki, + toneEmotion: M, + }; + } + } + }, + 675679: function (e, t, i) { + "use strict"; + i.d(t, { + a: function () { + return n; + }, + }); + var n = (e) => { + if (e && "object" == typeof e) return JSON.stringify(e); + }; + }, + 766079: function (e, t, i) { + "use strict"; + i.d(t, { + c: function () { + return a; + }, + o: function () { + return r; + }, + }); + var n = i(172834); + function r(e) { + if (!!e) { + var t = new n.DAVideoGenV2VExtend(); + return ( + (t.enable = !0), + (t.extendDurationMs = e.extendDurationMs), + (t.extendFps = e.extendFps), + (t.extendPrompt = e.extendPrompt), + t + ); + } + } + function a(e) { + var t, i, n, r; + if (!!e) + return { + enable: null !== (t = e.enable) && void 0 !== t && t, + extendDurationMs: Number( + null !== (i = e.extendDurationMs) && void 0 !== i ? i : 0 + ), + extendFps: Number( + null !== (n = e.extendFps) && void 0 !== n ? n : 0 + ), + extendPrompt: + null !== (r = e.extendPrompt) && void 0 !== r ? r : "", + }; + } + }, + 872432: function (e, t, i) { + "use strict"; + i.d(t, { + e: function () { + return s; + }, + }); + var n = i(172834), + r = i(549654), + a = i(770449), + o = i(839517), + s = (e) => { + var t = new n.DAVideoGenInput(), + i = e.motionSpeed ? r.o[e.motionSpeed] : void 0, + s = e.firstFrameImage, + l = e.endFrameImage; + return ( + (t.prompt = e.prompt), + (t.firstFrameImage = (0, a.QL)(s, (0, a.SW)(s))), + (t.endFrameImage = (0, a.QL)(l, (0, a.SW)(l))), + (t.lensMotionType = e.lensMotionType), + (t.motionSpeed = i), + (t.vid = e.vid), + (t.audioVid = e.audioVid ? BigInt(e.audioVid) : void 0), + (t.videoMode = (0, o.x)(e.videoMode)), + (t.fps = e.originFps), + (t.durationMs = e.originDurationMs), + (t.cameraStrength = e.motionIntensity), + (t.templateId = e.templateId), + (t.endingControl = e.endFrameImage ? "1.0" : void 0), + t + ); + }; + }, + 803188: function (e, t, i) { + "use strict"; + i.d(t, { + $O: function () { + return r; + }, + }); + var n = i(172834); + function r() { + var e = new n.DAVideoGenerateAbilities(), + t = new n.DAGenVideoAbility(); + e.genVideo = t; + var i = new n.DAText2VideoParams(); + t.text2VideoParams = i; + var r = new n.DAVideoGenInput(); + i.videoGenInputs = [r]; + var a = new n.DAVideoGenV2V(); + return ( + (r.v2vOpt = a), + { + abilities: e, + ability: t, + textToVideoParams: i, + videoGenInput: r, + v2vOpt: a, + } + ); + } + }, + 593233: function (e, t, i) { + "use strict"; + i.d(t, { + I: function () { + return r; + }, + W: function () { + return a; + }, + }); + var n = i(172834); + function r(e) { + if (!!e) { + var t = new n.DAVideoGenV2VInsertFrame(); + return ( + (t.enable = !0), + (t.targetFps = e.targetFps), + (t.originFps = e.originFps), + (t.durationMs = e.durationMs), + t + ); + } + } + function a(e) { + var t, i, n; + if (!!e) + return { + enable: null !== (t = e.enable) && void 0 !== t && t, + targetFps: Number( + null !== (i = e.targetFps) && void 0 !== i ? i : 0 + ), + originFps: Number( + null !== (n = e.originFps) && void 0 !== n ? n : 0 + ), + durationMs: e.durationMs ? Number(e.durationMs) : void 0, + }; + } + }, + 43637: function (e, t, i) { + "use strict"; + i.d(t, { + o: function () { + return r; + }, + }); + var n = i(172834); + function r(e) { + if (!!e) { + var t = new n.DAVideoRefParam(); + return ( + (t.originHistoryId = e.originHistoryId), + (t.itemId = e.originItemId), + t + ); + } + } + }, + 570697: function (e, t, i) { + "use strict"; + i.d(t, { + N: function () { + return r; + }, + y: function () { + return a; + }, + }); + var n = i(172834); + function r(e) { + if (!!e) { + var t = new n.DAVideoGenV2VSuperResolution(); + return ( + (t.enable = !0), + (t.targetHeight = e.targetHeight), + (t.targetWidth = e.targetWidth), + (t.originWidth = e.originWidth), + (t.originHeight = e.originHeight), + t + ); + } + } + function a(e) { + var t, i, n, r, a; + if (!!e) + return { + enable: null !== (t = e.enable) && void 0 !== t && t, + targetWidth: Number( + null !== (i = e.targetWidth) && void 0 !== i ? i : 0 + ), + targetHeight: Number( + null !== (n = e.targetHeight) && void 0 !== n ? n : 0 + ), + originWidth: Number( + null !== (r = e.originWidth) && void 0 !== r ? r : 0 + ), + originHeight: Number( + null !== (a = e.originHeight) && void 0 !== a ? a : 0 + ), + }; + } + }, + 295976: function (e, t, i) { + "use strict"; + i.d(t, { S: () => d, f: () => c }); + var n = i("625572"), + r = i("172834"), + a = i("43212"), + o = i("60684"); + function s(e, t) { + if (!e || !(null == t ? void 0 : t.length)) return; + var { videoTemplate: i } = e; + if (!i) return; + var n = t.find((e) => e.key === String(i)); + if (!!(null == n ? void 0 : n.effectRefItemInfo)) + return n.effectRefItemInfo; + } + var l = i("626173"); + function c(e) { + if (!!e) { + var t = new r.DAVideoGenVideoTemplate(); + t.enable = !0; + var i = new r.DAImageResource(); + if ( + ((i.sourceFrom = r.DAResourceSourceFrom.upload), + (i.platformType = r.DAImageResourcePlatformType.imageX), + (i.uri = e.imageInfo.imageUri), + e.imageInfo.aigcImage) + ) { + var n = new r.DAAIGCImage(); + (n.itemId = e.imageInfo.aigcImage.itemId), + (i.aigcImage = n), + (i.sourceFrom = r.DAResourceSourceFrom.produced); + } + return ( + (t.imageInfo = i), + (t.videoTemplate = e.videoTemplateItemId), + (t.videoInfo = (0, a.E)(e.videoInfo)), + t + ); + } + } + function d(e, t, i) { + if (!e) return; + var r, + c, + d = (0, o.F)(e.imageInfo, t), + u = (0, a.f)(e.videoInfo, t); + if (!!d) { + var f = null !== (r = s(e, t)) && void 0 !== r ? r : i, + h = u || (null == f ? void 0 : f.video); + return { + enable: null === (c = e.enable) || void 0 === c || c, + videoTemplateItemId: e.videoTemplate + ? String(e.videoTemplate) + : void 0, + imageInfo: d, + videoInfo: h + ? (0, n._)( + {}, + (0, l.Z)(e.videoInfo, [ + "name", + "vid", + "width", + "height", + "aigcVideo", + ]), + h + ) + : void 0, + videoTemplateItem: f, + }; + } + } + }, + 362477: function (e, t, i) { + "use strict"; + i.d(t, { + a: function () { + return a; + }, + r: function () { + return r; + }, + }); + var n = i(172834); + function r(e) { + if (!!e) { + var t = new n.DAEverPhoto(); + return (t.workspaceId = e.workspaceId), (t.assetId = e.assetId), t; + } + } + function a(e) { + if (!!e) return { workspaceId: e.workspaceId, assetId: e.assetId }; + } + }, + 60684: function (e, t, i) { + "use strict"; + i.d(t, { + F: function () { + return o; + }, + m: function () { + return a; + }, + }); + var n = i(172834), + r = i(362477); + function a(e) { + if (!!e) { + var t, + i, + a, + o = new n.DAImageResource(); + return ( + (o.sourceFrom = n.DAResourceSourceFrom.upload), + (o.platformType = n.DAImageResourcePlatformType.imageX), + (o.uri = e.imageUri), + (o.width = null !== (t = e.width) && void 0 !== t ? t : 0), + (o.height = null !== (i = e.height) && void 0 !== i ? i : 0), + (o.format = null !== (a = e.format) && void 0 !== a ? a : ""), + (o.everPhoto = (0, r.r)(e.everPhoto)), + o + ); + } + } + function o(e, t) { + if (!!(null == e ? void 0 : e.uri)) { + var i, + n, + a, + o, + s, + l = + null == t + ? void 0 + : null === (i = t.find((t) => t.key === e.uri)) || void 0 === i + ? void 0 + : i.imageInfo; + return { + imageUri: e.uri, + imageUrl: null == l ? void 0 : l.imageUrl, + width: + null !== (n = null == l ? void 0 : l.width) && void 0 !== n + ? n + : e.width, + height: + null !== (a = null == l ? void 0 : l.height) && void 0 !== a + ? a + : e.height, + format: + null !== (o = null == l ? void 0 : l.format) && void 0 !== o + ? o + : e.format, + everPhoto: + null !== (s = null == l ? void 0 : l.everPhoto) && void 0 !== s + ? s + : (0, r.a)(e.everPhoto), + coverUrlMap: null == l ? void 0 : l.coverUrlMap, + }; + } + } + }, + 770449: function (e, t, i) { + "use strict"; + i.d(t, { + QL: function () { + return o; + }, + SW: function () { + return a; + }, + Wc: function () { + return s; + }, + }); + var n = i(172834), + r = i(362477); + function a(e) { + return (null == e ? void 0 : e.aigcImage) + ? n.DAResourceSourceFrom.produced + : n.DAResourceSourceFrom.upload; + } + function o(e, t) { + if (!!e) { + var i, + a, + o, + s = new n.DAImageResource(); + if ( + ((s.sourceFrom = null != t ? t : n.DAResourceSourceFrom.upload), + (s.platformType = n.DAImageResourcePlatformType.imageX), + (s.uri = e.imageUri), + (s.width = null !== (i = e.width) && void 0 !== i ? i : 0), + (s.height = null !== (a = e.height) && void 0 !== a ? a : 0), + (s.format = null !== (o = e.format) && void 0 !== o ? o : ""), + e.aigcImage) + ) { + var l = new n.DAAIGCImage(); + (l.itemId = e.aigcImage.itemId), (s.aigcImage = l); + } + return (s.everPhoto = (0, r.r)(e.everPhoto)), s; + } + } + function s(e, t) { + if (!!(null == e ? void 0 : e.uri)) { + var i, + n, + a, + o, + s, + l = + null == t + ? void 0 + : null === (i = t.find((t) => t.key === e.uri)) || void 0 === i + ? void 0 + : i.imageInfo; + return { + imageUri: e.uri, + imageUrl: null == l ? void 0 : l.imageUrl, + width: + null !== (n = null == l ? void 0 : l.width) && void 0 !== n + ? n + : e.width, + height: + null !== (a = null == l ? void 0 : l.height) && void 0 !== a + ? a + : e.height, + format: + null !== (o = null == l ? void 0 : l.format) && void 0 !== o + ? o + : e.format, + everPhoto: + null !== (s = null == l ? void 0 : l.everPhoto) && void 0 !== s + ? s + : (0, r.a)(e.everPhoto), + coverUrlMap: null == l ? void 0 : l.coverUrlMap, + }; + } + } + }, + 266352: function (e, t, i) { + "use strict"; + i.d(t, { + S: function () { + return l; + }, + c: function () { + return s; + }, + }); + var n = i(201636), + r = i(172834), + a = { + [n.oH.Loki]: r.CommonItemPlatform.Loki, + [n.oH.Local]: r.CommonItemPlatform.Local, + [n.oH.Template]: r.CommonItemPlatform.Template, + }, + o = { + [r.CommonItemPlatform.Loki]: n.oH.Loki, + [r.CommonItemPlatform.Local]: n.oH.Local, + [r.CommonItemPlatform.Template]: n.oH.Template, + }; + function s(e) { + if (!!e) return a[e]; + } + function l(e) { + if (!!e) return o[e]; + } + }, + 763217: function (e, t, i) { + "use strict"; + i.d(t, { + M: function () { + return s; + }, + g: function () { + return l; + }, + }); + var n = i(869919), + r = i(172834), + a = { + [n.tB.LipSyncDefault]: r.DALipSyncMode.standard, + [n.tB.LipSyncLively]: r.DALipSyncMode.loopy, + [n.tB.LipSyncMaster]: r.DALipSyncMode.hq, + [n.tB.LipSyncMasterFast]: r.DALipSyncMode.hq480, + }, + o = { + [r.DALipSyncMode.standard]: n.tB.LipSyncDefault, + [r.DALipSyncMode.loopy]: n.tB.LipSyncLively, + [r.DALipSyncMode.hq]: n.tB.LipSyncMaster, + [r.DALipSyncMode.hq480]: n.tB.LipSyncMasterFast, + }; + function s(e) { + if (!!e) return a[e]; + } + function l(e) { + if (!!e) return o[e]; + } + }, + 43212: function (e, t, i) { + "use strict"; + i.d(t, { + E: function () { + return o; + }, + f: function () { + return a; + }, + }); + var n = i(625572), + r = i(172834); + function a(e, t) { + var i, + r = null == e ? void 0 : e.vid; + if (!!r) { + var a = + null == t + ? void 0 + : null === (i = t.find((e) => e.key === r)) || void 0 === i + ? void 0 + : i.videoInfo; + return (0, n._)({ videoId: r }, a); + } + } + function o(e) { + if (!!(null == e ? void 0 : e.videoId)) { + var t, + i, + n, + a, + o, + s, + l, + c, + d, + u, + f = new r.DAVideoResource(); + (f.sourceFrom = r.DAResourceSourceFrom.upload), (f.vid = e.videoId); + var h = + null !== + (s = + null !== + (o = + null !== + (a = + null == e + ? void 0 + : null === (t = e.transcodedVideo) || void 0 === t + ? void 0 + : t["720p"]) && void 0 !== a + ? a + : null == e + ? void 0 + : null === (i = e.transcodedVideo) || void 0 === i + ? void 0 + : i["360p"]) && void 0 !== o + ? o + : null == e + ? void 0 + : null === (n = e.transcodedVideo) || void 0 === n + ? void 0 + : n.origin) && void 0 !== s + ? s + : null == e + ? void 0 + : e.originVideo; + return ( + (f.width = + null !== (l = null == h ? void 0 : h.width) && void 0 !== l + ? l + : 0), + (f.height = + null !== (c = null == h ? void 0 : h.height) && void 0 !== c + ? c + : 0), + (f.coverImage = null == h ? void 0 : h.coverUrl), + e.durationMs && + f.setDurationMilliSecond( + null !== (d = e.durationMs) && void 0 !== d ? d : 0 + ), + e.duration && + f.setDurationSecond( + null !== (u = e.duration) && void 0 !== u ? u : 0 + ), + f + ); + } + } + }, + 839517: function (e, t, i) { + "use strict"; + i.d(t, { + r: function () { + return l; + }, + x: function () { + return s; + }, + }); + var n = i(172834), + r = i(869919), + a = { + [r.tB.Preview]: n.DAVideoMode.preview, + [r.tB.Default]: n.DAVideoMode._default, + [r.tB.Livephoto]: n.DAVideoMode.iCLivePhoto, + [r.tB.LipSyncDefault]: n.DAVideoMode.avatar, + [r.tB.LipSyncLively]: n.DAVideoMode.avatarLoopy, + [r.tB.LipSyncMaster]: n.DAVideoMode.avatarHq, + }, + o = { + [n.DAVideoMode.preview]: r.tB.Preview, + [n.DAVideoMode._default]: r.tB.Default, + [n.DAVideoMode.iCLivePhoto]: r.tB.Livephoto, + [n.DAVideoMode.avatar]: r.tB.LipSyncDefault, + [n.DAVideoMode.avatarLoopy]: r.tB.LipSyncLively, + [n.DAVideoMode.avatarHq]: r.tB.LipSyncMaster, + }; + function s(e) { + if (!!e) return a[e]; + } + function l(e) { + if (!!e) return o[e]; + } + }, + 43169: function (e, t, i) { + "use strict"; + i.d(t, { + S: function () { + return a; + }, + }); + var n = i(243302), + r = i(869919); + function a(e) { + var { + bgmData: t, + aigcImageParams: i, + mixAvData: a, + videoAudioEffect: o, + } = e; + if (i.generateType === n.pi.VideoBGM) + return { + audioList: t + ? t.bgmList.map((e) => { + var t, + i, + n = + null == a + ? void 0 + : a.artifactList.find((t) => { + var { audioVid: i } = t; + return i === (null == e ? void 0 : e.vid); + }); + return { + audio: { + vid: null == e ? void 0 : e.vid, + audioUrl: null == e ? void 0 : e.originAudio.url, + status: e ? "success" : "fail", + }, + mixAudioVideo: n + ? { + itemId: null == n ? void 0 : n.itemId, + videoItemId: null == n ? void 0 : n.videoItemId, + audioVid: null == n ? void 0 : n.audioVid, + videoUrl: + null == n + ? void 0 + : null === (i = n.video) || void 0 === i + ? void 0 + : null === (t = i.originVideo) || void 0 === t + ? void 0 + : t.videoUrl, + hasPublished: null == n ? void 0 : n.hasPublished, + publishItemId: (null == n ? void 0 : n.hasPublished) + ? null == n + ? void 0 + : n.publishedItemId + : void 0, + status: null == n ? void 0 : n.status, + } + : void 0, + }; + }) + : void 0, + default: t + ? { + vid: t.defaultBgm.vid, + audioUrl: t.defaultBgm.originAudio.url, + } + : void 0, + }; + if (i.generateType === n.pi.VideoAudioEffect && o) { + var { resultList: s, defaultAudio: l } = o; + return { + audioList: s.map((e) => { + var t, + i, + { audio: n, mixedVideo: a, generateStatus: o, failCode: s } = e; + return { + audio: { + vid: null == n ? void 0 : n.vid, + audioUrl: null == n ? void 0 : n.originAudio.url, + status: o === r.N7.Success ? "success" : "fail", + failCode: s, + }, + mixAudioVideo: a + ? { + itemId: null == a ? void 0 : a.itemId, + videoItemId: null == a ? void 0 : a.videoItemId, + audioVid: null == a ? void 0 : a.audioVid, + videoUrl: + null == a + ? void 0 + : null === (i = a.video) || void 0 === i + ? void 0 + : null === (t = i.originVideo) || void 0 === t + ? void 0 + : t.videoUrl, + hasPublished: null == a ? void 0 : a.hasPublished, + publishItemId: (null == a ? void 0 : a.hasPublished) + ? null == a + ? void 0 + : a.publishedItemId + : void 0, + status: null == a ? void 0 : a.status, + } + : void 0, + }; + }), + default: { vid: l.vid, audioUrl: l.originAudio.url }, + }; + } + } + }, + 936690: function (e, t, i) { + "use strict"; + i.d(t, { + A1: function () { + return m; + }, + DI: function () { + return d; + }, + Dx: function () { + return p; + }, + Hp: function () { + return v; + }, + Tu: function () { + return h; + }, + Uq: function () { + return u; + }, + V8: function () { + return g; + }, + qv: function () { + return c; + }, + tA: function () { + return f; + }, + }); + var n = i(625572), + r = i(639880), + a = i(243302), + o = i(601191), + s = i(380908), + l = i(128468); + function c(e) { + var t, + i, + n, + { width: r = 0, height: a = 0 } = + null !== + (n = + null == e + ? void 0 + : null === (i = e.image) || void 0 === i + ? void 0 + : null === (t = i.largeImages) || void 0 === t + ? void 0 + : t[0]) && void 0 !== n + ? n + : {}; + return { width: r, height: a }; + } + function d(e, t) { + var i, n, r; + return (null == t ? void 0 : t.length) + ? null !== + (r = + null == e + ? void 0 + : null === (n = e.aigcImageParams) || void 0 === n + ? void 0 + : null === (i = n.blendParams) || void 0 === i + ? void 0 + : i.promptPlaceholderInfoList) && void 0 !== r + ? r + : s.bd + : []; + } + function u(e) { + return { treatBgPaintAsControlNet: !1 }; + } + function f(e) { + if (null == e ? void 0 : e.blendParams) + return null == e ? void 0 : e.blendParams; + var t, + i, + n, + r, + a = e && "mode" in e ? e.mode : l.JU.Workbench, + s = + null == e + ? void 0 + : null === (t = e.aigcImageParams) || void 0 === t + ? void 0 + : t.blendParams, + f = c(e), + h = u(s), + p = (0, o.Mu)(f, s, a), + v = d(e, p); + return { + blendAttributes: h, + promptPlaceholderInfoList: v, + imagePromptList: p, + imagePromptZipUrl: + null !== + (r = + null == e + ? void 0 + : null === (n = e.commonAttr) || void 0 === n + ? void 0 + : null === (i = n.itemUrls) || void 0 === i + ? void 0 + : i[0]) && void 0 !== r + ? r + : "", + }; + } + function h(e) { + return e === a.pi.Blend; + } + function p(e) { + return e === a.pi.ByteEditPainting; + } + function v(e) { + var t; + return !!( + e.canvasData || + (null === (t = e.paintingParam) || void 0 === t + ? void 0 + : t.canvasData) + ); + } + function m(e) { + var t, + i, + n, + { + inPaintingParams: r, + outPaintingParams: o, + text2imageParams: s, + generateType: l, + } = e; + return l === a.pi.InPaint + ? null !== (t = null == r ? void 0 : r.originPrompt) && void 0 !== t + ? t + : "" + : l === a.pi.OutPaint + ? null !== (i = null == o ? void 0 : o.originPrompt) && void 0 !== i + ? i + : "" + : null !== (n = null == s ? void 0 : s.prompt) && void 0 !== n + ? n + : ""; + } + function g(e, t) { + var { + inPaintingParams: i, + outPaintingParams: o, + text2imageParams: s, + generateType: l, + } = e; + if (l === a.pi.InPaint && i) { + e.inPaintingParams = (0, r._)((0, n._)({}, i), { originPrompt: t }); + return; + } + if (l === a.pi.OutPaint && o) { + e.outPaintingParams = (0, r._)((0, n._)({}, o), { originPrompt: t }); + return; + } + if (s) { + e.text2imageParams = (0, r._)((0, n._)({}, s), { prompt: t }); + return; + } + } + }, + 952739: function (e, t, i) { + "use strict"; + i.d(t, { + Ir: function () { + return r; + }, + a0: function () { + return o; + }, + fe: function () { + return a; + }, + }); + var n = i(639985); + function r(e, t, i) { + if (t && i) { + var r = n.L2["0"].type, + a = 1 / 0; + for (var o of n.L2) { + var s = Math.abs(o.value * t - i); + s < a && ((r = o.type), (a = s)); + } + return r; + } + return e; + } + function a(e) { + if (!e) return {}; + var t = {}; + return ( + e.forEach((e) => { + t[e.width.toString()] = e.imageUrl; + }), + t + ); + } + function o(e) { + var t, + i = 1 / 0; + for (var n in e) Number(n) <= i && (i = Number(n)); + return null !== (t = e[i]) && void 0 !== t ? t : ""; + } + }, + 117275: function (e, t, i) { + "use strict"; + i.d(t, { + o: function () { + return f; + }, + }); + var n = i(625572), + r = i(639880), + a = i(380908), + o = i(417281), + s = i(128468), + l = i(699813), + c = ""; + function d(e) { + var t, + i, + a, + l, + d, + { + imageUri: u = "", + imageUrl: f = "", + width: h = 0, + height: p = 0, + aigcImage: v, + } = null !== + (l = + null === (t = e.styleReference) || void 0 === t + ? void 0 + : t.image) && void 0 !== l + ? l + : {}, + m = { + image: (0, r._)( + (0, n._)( + {}, + null === (i = e.styleReference) || void 0 === i + ? void 0 + : i.image + ), + { + aigcImage: (0, r._)((0, n._)({}, v), { itemId: "" }), + imageUri: u, + imageUrl: f, + width: h, + height: p, + } + ), + styleWeight: + null !== + (d = + null === (a = e.styleReference) || void 0 === a + ? void 0 + : a.styleWeight) && void 0 !== d + ? d + : 0, + }; + return { + name: o.UI.StyleCode, + commonAsset: { + assetType: s.d_.Style, + assetCode: c, + referImageList: [m], + }, + imageList: [], + ipKeepList: [], + }; + } + function u(e, t) { + var i, + a, + l, + d, + u, + f, + h, + { + imageUri: p = "", + imageUrl: v = "", + width: m = 0, + height: g = 0, + aigcImage: _, + } = null !== + (u = + null === (i = e.styleReference) || void 0 === i + ? void 0 + : i.image) && void 0 !== u + ? u + : {}, + y = { + image: (0, r._)( + (0, n._)( + {}, + null === (a = e.styleReference) || void 0 === a + ? void 0 + : a.image + ), + { + aigcImage: (0, r._)((0, n._)({}, _), { itemId: "" }), + imageUri: p, + imageUrl: v, + width: m, + height: g, + } + ), + styleWeight: + null !== + (f = + null === (l = e.styleReference) || void 0 === l + ? void 0 + : l.styleWeight) && void 0 !== f + ? f + : 0, + }; + return { + name: o.UI.StyleCode, + commonAsset: { + assetType: s.d_.Style, + assetCode: c, + referImageList: [ + ...(null !== + (h = + null === (d = t.commonAsset) || void 0 === d + ? void 0 + : d.referImageList) && void 0 !== h + ? h + : []), + y, + ], + }, + imageList: [], + ipKeepList: [], + }; + } + function f(e) { + var { prompt: t, abilityList: i, promptPlaceholderInfoList: n } = e; + if (i.filter((e) => (0, o.D3)(e)).length <= 1) + return { prompt: t, abilityList: i, promptPlaceholderInfoList: n }; + var r = t.replace(a.rO, "__$1__").split("__"), + s = [], + c = [], + f = [], + h = 0, + p = -1, + v = !1, + m = + null !== (_ = null == n ? void 0 : n.length) && void 0 !== _ + ? _ + : 0; + for (var g of r) { + var _, + y, + b = g === a.qi; + if (!g) { + s.push(g); + continue; + } + if (!b) { + s.push(g), (v = !g.trim() && v); + continue; + } + if (h >= m) break; + var I = + i[ + null !== (y = null == n ? void 0 : n[h].abilityIndex) && + void 0 !== y + ? y + : 0 + ]; + if (I.name === o.UI.StyleReference) { + if (v) { + var w = c.pop(); + (0, l.ZB)(w); + var x = u( + I, + (null == w ? void 0 : w.name) === o.UI.StyleReference ? d(w) : w + ); + c.push(x); + } else c.push(I), s.push(g), f.push({ abilityIndex: c.length - 1 }); + v = !0; + } else + I.name === o.UI.ControlNet + ? ((v = !1), + -1 === p && (c.push(I), (p = c.length - 1)), + s.push(g), + f.push({ abilityIndex: p })) + : ((v = !1), + c.push(I), + s.push(g), + f.push({ abilityIndex: c.length - 1 })); + h++; + } + return { + prompt: s.join(""), + abilityList: c, + promptPlaceholderInfoList: f.length ? f : void 0, + }; + } + }, + 283349: function (e, t, i) { + "use strict"; + i.d(t, { + L: function () { + return a; + }, + w: function () { + return r; + }, + }); + var n = i(243302), + r = (e) => + [ + n.pi.Text2Video, + n.pi.VideoBGM, + n.pi.AudioVideoMix, + n.pi.Image2Avatar, + n.pi.Video2Avatar, + n.pi.VideoTemplate, + n.pi.VideoAudioEffect, + n.pi.VideoAudioEffectMix, + n.pi.LipSync, + ].includes(e), + a = (e) => [n.pi.Text2Song, n.pi.Text2Instrumental].includes(e); + }, + 910629: function (e, t, i) { + "use strict"; + i.d(t, { M: () => L, y: () => j }); + var n = i("333597"), + r = i("317825"), + a = i("139646"), + o = i("625572"), + s = i("639880"), + l = i("789786"), + c = i("655901"), + d = i("340733"), + u = i("820266"), + f = i("100470"), + h = i("243090"), + p = i("586315"), + v = i("242089"), + m = i("712942"), + g = i("923810"), + _ = i("940140"), + y = { + queryTask: { + hostNameType: _.b_.Default, + url: "/mweb/v1/mget_generate_task", + }, + getRandomPrompt: { + hostNameType: _.b_.Default, + url: "/mweb/v1/random_prompt", + }, + generateContent: { + hostNameType: _.b_.Default, + url: "/mweb/v1/generate", + }, + generateBlendContent: { + hostNameType: _.b_.Default, + url: "/mweb/v1/blend", + }, + getGenerateContentHistory: { + hostNameType: _.b_.Default, + url: "/mweb/v1/get_history", + }, + generateSuperResolutionContent: { + hostNameType: _.b_.Default, + url: "/mweb/v1/super_resolution", + }, + generateSuperDefinitionContent: { + hostNameType: _.b_.Default, + url: "/mweb/v1/normal_hd", + }, + generatePaintingContent: { + hostNameType: _.b_.Default, + url: "/mweb/v1/painting", + }, + generateFusionContent: { + hostNameType: _.b_.Default, + url: "/mweb/v1/fusion", + }, + generateInstaDragContent: { + HostNameType: _.b_.Default, + url: "/mweb/v1/insta_drag", + }, + generateDoodleContent: { + hostNameType: _.b_.Default, + url: "/mweb/v1/doodle", + }, + generateDoodleContentAudit: { + hostNameType: _.b_.Default, + url: "/mweb/v1/doodle_audit", + }, + locateGenerateContent: { + hostNameType: _.b_.Default, + url: "/mweb/v1/locate_workbench", + }, + getLocalItemList: { + hostNameType: _.b_.Default, + url: "/mweb/v1/get_local_item_list", + }, + getItemInfo: { + hostNameType: _.b_.Default, + url: "/mweb/v1/mget_item_info", + }, + generateMixBlendContent: { + hostNameType: _.b_.Default, + url: "/mweb/v1/mixblend", + }, + saveLocalItemByCut: { + hostNameType: _.b_.Default, + url: "/mweb/v1/save_local_item_by_cut", + }, + requestAlgorithm: { + hostNameType: _.b_.Default, + url: "/mweb/v1/algo_proxy", + }, + getImageDescription: { + HostNameType: _.b_.Default, + url: "/mweb/v1/get_image_description", + }, + }, + b = i("643590"), + I = i("904337"), + w = i("416105"), + x = i("804274"), + S = i("453604"), + M = i("875649"), + C = i("879976"); + function T() { + var e = new b.y().build({ + headers: { "Content-Type": "application/json" }, + withCredentials: !0, + }); + return ( + (0, C.V)(e), + (0, I.$)(e), + (0, w.mH)(e), + (0, x.xP)(e), + (0, S.d)(e), + (0, M.i3)(e), + e + ); + } + var A = i("389657"), + k = "CGRepository"; + class P { + getRandomPrompt(e, t) { + var i = this; + return (0, a._)(function* () { + var n = "".concat((0, m.H4)()).concat(y.getRandomPrompt.url); + return yield (0, v.O)(n, () => i._request(e, n, t)); + })(); + } + queryTask(e, t) { + var i = this; + return (0, a._)(function* () { + var { taskId: n, imageInfo: r } = t; + return yield i._request( + e, + "".concat((0, m.H4)()).concat(y.queryTask.url), + { task_id_list: [n], image_info: r } + ); + })(); + } + generateContent(e, t, i) { + var n = this; + return (0, a._)(function* () { + return yield n._request( + e, + "".concat((0, m.H4)()).concat(y.generateContent.url), + t, + i + ); + })(); + } + generateBlendContent(e, t, i) { + var n = this; + return (0, a._)(function* () { + return yield n._request( + e, + "".concat((0, m.H4)()).concat(y.generateBlendContent.url), + t, + i + ); + })(); + } + getHistoryById(e, t) { + var i = this; + return (0, a._)(function* () { + var n = "".concat((0, m.H4)()).concat(g.v.getHistoryById.url); + return yield i._request(e, n, { historyId: t }); + })(); + } + generateSuperResolutionContent(e, t, i) { + var n = this; + return (0, a._)(function* () { + return yield n._request( + e, + "" + .concat((0, m.H4)()) + .concat(y.generateSuperResolutionContent.url), + t, + i + ); + })(); + } + generateSuperDefinitionContent(e, t, i) { + var n = this; + return (0, a._)(function* () { + return yield n._request( + e, + "" + .concat((0, m.H4)()) + .concat(y.generateSuperDefinitionContent.url), + t, + i + ); + })(); + } + locateGenerateContent(e, t) { + var i = this; + return (0, a._)(function* () { + return yield i._request( + e, + "".concat((0, m.H4)()).concat(y.locateGenerateContent.url), + t + ); + })(); + } + generatePaintingContent(e, t, i) { + var n = this; + return (0, a._)(function* () { + return yield n._request( + e, + "".concat((0, m.H4)()).concat(y.generatePaintingContent.url), + t, + i + ); + })(); + } + generateFusionContent(e, t, i) { + var n = this; + return (0, a._)(function* () { + return yield n._request( + e, + "".concat((0, m.H4)()).concat(y.generateFusionContent.url), + t, + i + ); + })(); + } + generateInstaDragContent(e, t, i) { + var n = this; + return (0, a._)(function* () { + return yield n._request( + e, + "".concat((0, m.H4)()).concat(y.generateInstaDragContent.url), + t, + i + ); + })(); + } + generateMixBlendContent(e, t, i) { + var n = this; + return (0, a._)(function* () { + return yield n._request( + e, + "".concat((0, m.H4)()).concat(y.generateMixBlendContent.url), + t, + i + ); + })(); + } + generateDoodleContent(e, t, i) { + var n = this; + return (0, a._)(function* () { + return yield n._request( + e, + "".concat((0, m.H4)()).concat(y.generateDoodleContent.url), + t, + i + ); + })(); + } + doodleContentAudit(e, t, i) { + var n = this; + return (0, a._)(function* () { + return yield n._request( + e, + "".concat((0, m.H4)()).concat(y.generateDoodleContentAudit.url), + t, + i + ); + })(); + } + getLocalItemList(e, t) { + var i = this; + return (0, a._)(function* () { + return yield i._request( + e, + "".concat((0, m.H4)()).concat(y.getLocalItemList.url), + t + ); + })(); + } + getItemInfo(e, t) { + var i = this; + return (0, a._)(function* () { + t.packItemOpt = (0, s._)((0, o._)({}, t.packItemOpt), { + needDataIntegrity: !0, + }); + var n = yield i._request( + e, + "".concat((0, m.H4)()).concat(y.getItemInfo.url), + t + ); + if (!n.response.ok) return n; + var r = n.response.value, + a = n.cacheSyncToken, + { logId: l } = n; + if (a && l) { + var u = yield A.Li.decryptIV(a, l); + yield (0, c.PM)(A.Li.decrypt.bind(A.Li), r.effectItemList, u); + } + var f = yield A.sn.getSignOptions(); + return (0, d.PY)(A.sn.sign.bind(A.sn), r.effectItemList, f), n; + })(); + } + saveLocalItemByCut(e, t) { + var i = this; + return (0, a._)(function* () { + return yield i._request( + e, + "".concat((0, m.H4)()).concat(y.saveLocalItemByCut.url), + t + ); + })(); + } + requestAlgorithm(e, t, i, n) { + var r = this; + return (0, a._)(function* () { + var a = !0, + o = [String(f.b.ErrUploadImageCopyrightBlock)], + { + response: s, + costTime: l, + logId: c, + } = yield r._request( + e, + "".concat((0, m.H4)()).concat(y.requestAlgorithm.url), + r._formatAlgorithmRequest(t, i), + n, + a, + o + ); + return s.ok + ? { + response: (0, p.oW)({ + fileList: s.value.fileList, + data: s.value.respParams + ? (0, u.b)((0, h.D)(s.value.respParams)) + : void 0, + }), + costTime: l, + logId: c, + } + : { response: s, costTime: l, logId: c }; + })(); + } + getImageDescription(e, t, i) { + var n = this; + return (0, a._)(function* () { + return yield n._request( + e, + "".concat((0, m.H4)()).concat(y.getImageDescription.url), + t, + i + ); + })(); + } + _formatAlgorithmRequest(e, t) { + var [i, n] = e.split("."), + { fileList: r, options: a } = t; + return { + reqKey: i, + scene: n, + fileList: r, + reqParams: this._formatAlgorithmRequestParams(t.params), + options: a, + }; + } + _formatAlgorithmRequestParams(e) { + return Object.fromEntries( + Object.entries(e).flatMap(this._formatAlgorithmRequestParamEntry) + ); + } + _handleError(e, t) { + var i = "ret" in t && void 0 !== t.ret, + n = navigator.onLine ? f.b.ErrClientCommon : f.b.ErrOffline, + r = i ? Number(t.ret) : n, + a = this._formatErrorMessage(t); + return (0, p.wf)(r, a); + } + _request(e, t, i, n) { + var r = + arguments.length > 4 && void 0 !== arguments[4] && arguments[4], + l = + arguments.length > 5 && void 0 !== arguments[5] + ? arguments[5] + : [], + c = this; + return (0, a._)(function* () { + var a = Date.now(); + try { + var { + data: d, + logid: u, + cacheSyncToken: f, + } = yield c._networkClient.post(t, i, { + ctx: e, + params: (0, s._)((0, o._)({}, n), { + needCache: r, + cacheErrorCodes: l, + }), + }); + return { + response: (0, p.oW)(d), + costTime: Date.now() - a, + logId: u, + cacheSyncToken: f, + }; + } catch (t) { + return { + response: c._handleError(e, t), + costTime: Date.now() - a, + logId: "ret" in t && void 0 !== t.ret ? t.logid : "", + }; + } + })(); + } + constructor() { + (this._formatAlgorithmRequestParamEntry = (e) => { + var [t, i] = e; + return Array.isArray(i) + ? i.flatMap((e, i) => + this._formatAlgorithmRequestParamEntry([ + "".concat(t, ".").concat(i), + e, + ]) + ) + : "string" == typeof i + ? [[t, { stringValue: i }]] + : "number" == typeof i + ? [[t, i % 1 > 0 ? { doubleValue: i } : { intValue: i }]] + : Object.entries(i).flatMap((e) => { + var [i, n] = e; + return this._formatAlgorithmRequestParamEntry([ + "".concat(t, ".").concat(i), + n, + ]); + }); + }), + (this._formatErrorMessage = (e) => { + var t, + i, + n = "logid" in e ? e.logid : ""; + return JSON.stringify({ + errMsg: + "ret" in e + ? e.errmsg + : "message: " + .concat( + null !== (t = e.message) && void 0 !== t ? t : "", + ", stack: " + ) + .concat( + null !== (i = e.stack) && void 0 !== i ? i : "" + ), + logId: n, + }); + }), + (this._networkClient = T()); + } + } + (0, l.gn)( + [ + (0, r.f1)(k, "queryTask"), + (0, l.w6)("design:type", Function), + (0, l.w6)("design:paramtypes", [ + "undefined" == typeof Context ? Object : Context, + "undefined" == typeof IGenerateTaskRequest + ? Object + : IGenerateTaskRequest, + ]), + (0, l.w6)("design:returntype", Promise), + ], + P.prototype, + "queryTask", + null + ), + (0, l.gn)( + [ + (0, r.f1)(k, "genContent"), + (0, l.w6)("design:type", Function), + (0, l.w6)("design:paramtypes", [ + "undefined" == typeof Context ? Object : Context, + "undefined" == typeof IGenerateContentRequest + ? Object + : IGenerateContentRequest, + "undefined" == typeof Record ? Object : Record, + ]), + (0, l.w6)("design:returntype", Promise), + ], + P.prototype, + "generateContent", + null + ), + (0, l.gn)( + [ + (0, r.f1)(k, "genBlendContent"), + (0, l.w6)("design:type", Function), + (0, l.w6)("design:paramtypes", [ + "undefined" == typeof Context ? Object : Context, + "undefined" == typeof IGenerateBlendContentRequest + ? Object + : IGenerateBlendContentRequest, + "undefined" == typeof Record ? Object : Record, + ]), + (0, l.w6)("design:returntype", Promise), + ], + P.prototype, + "generateBlendContent", + null + ), + (0, l.gn)( + [ + (0, r.f1)(k, "genSuperResolutionContent"), + (0, l.w6)("design:type", Function), + (0, l.w6)("design:paramtypes", [ + "undefined" == typeof Context ? Object : Context, + "undefined" == typeof IGenerateSuperResolutionContentRequest + ? Object + : IGenerateSuperResolutionContentRequest, + "undefined" == typeof Record ? Object : Record, + ]), + (0, l.w6)("design:returntype", Promise), + ], + P.prototype, + "generateSuperResolutionContent", + null + ), + (0, l.gn)( + [ + (0, r.f1)(k, "genSuperDefinitionContent"), + (0, l.w6)("design:type", Function), + (0, l.w6)("design:paramtypes", [ + "undefined" == typeof Context ? Object : Context, + "undefined" == typeof IGenerateSuperDefinitionRequest + ? Object + : IGenerateSuperDefinitionRequest, + "undefined" == typeof Record ? Object : Record, + ]), + (0, l.w6)("design:returntype", Promise), + ], + P.prototype, + "generateSuperDefinitionContent", + null + ), + (0, l.gn)( + [ + (0, r.f1)(k, "genPaintingContent"), + (0, l.w6)("design:type", Function), + (0, l.w6)("design:paramtypes", [ + "undefined" == typeof Context ? Object : Context, + "undefined" == typeof IMWebGeneratePaintingParam + ? Object + : IMWebGeneratePaintingParam, + "undefined" == typeof Record ? Object : Record, + ]), + (0, l.w6)("design:returntype", Promise), + ], + P.prototype, + "generatePaintingContent", + null + ), + (0, l.gn)( + [ + (0, r.f1)(k, "genFusionContent"), + (0, l.w6)("design:type", Function), + (0, l.w6)("design:paramtypes", [ + "undefined" == typeof Context ? Object : Context, + "undefined" == typeof IMWebGenerateFusionParam + ? Object + : IMWebGenerateFusionParam, + "undefined" == typeof Record ? Object : Record, + ]), + (0, l.w6)("design:returntype", Promise), + ], + P.prototype, + "generateFusionContent", + null + ), + (0, l.gn)( + [ + (0, r.f1)(k, "genInstaDragContent"), + (0, l.w6)("design:type", Function), + (0, l.w6)("design:paramtypes", [ + "undefined" == typeof Context ? Object : Context, + "undefined" == typeof InstaDragRequestData + ? Object + : InstaDragRequestData, + "undefined" == typeof Record ? Object : Record, + ]), + (0, l.w6)("design:returntype", Promise), + ], + P.prototype, + "generateInstaDragContent", + null + ), + (0, l.gn)( + [ + (0, r.f1)(k, "genMixBlendContent"), + (0, l.w6)("design:type", Function), + (0, l.w6)("design:paramtypes", [ + "undefined" == typeof Context ? Object : Context, + "undefined" == typeof IMWebMixBlendRequest + ? Object + : IMWebMixBlendRequest, + "undefined" == typeof Record ? Object : Record, + ]), + (0, l.w6)("design:returntype", Promise), + ], + P.prototype, + "generateMixBlendContent", + null + ), + (0, l.gn)( + [ + (0, r.f1)(k, "genDoodleContent"), + (0, l.w6)("design:type", Function), + (0, l.w6)("design:paramtypes", [ + "undefined" == typeof Context ? Object : Context, + "undefined" == typeof IMWebDoodleRequest + ? Object + : IMWebDoodleRequest, + "undefined" == typeof Record ? Object : Record, + ]), + (0, l.w6)("design:returntype", Promise), + ], + P.prototype, + "generateDoodleContent", + null + ), + (0, l.gn)( + [ + (0, r.lI)("ContentGenerateRepository", "handleError"), + (0, l.w6)("design:type", Function), + (0, l.w6)("design:paramtypes", [ + "undefined" == typeof Context ? Object : Context, + Object, + ]), + (0, l.w6)("design:returntype", void 0), + ], + P.prototype, + "_handleError", + null + ); + var E = i("518376"), + D = i("229025"), + R = i("243302"); + class N { + generateContent(e, t, i, n) { + var r = this; + return (0, a._)(function* () { + var a = (0, o._)({}, t); + a.modelConfig && (a.modelConfig = void 0); + var s = yield r._contentGenerateRepository.generateContent(e, a, i); + return r._getFormatNetworkResponseResult(s, (e, t) => + (0, D.cQ)(e, t, n) + ); + })(); + } + generateBlendContent(e, t, i, n) { + var r = this; + return (0, a._)(function* () { + var a = yield r._contentGenerateRepository.generateBlendContent( + e, + t, + i + ); + return r._getFormatNetworkResponseResult(a, (e, t) => + (0, D.cQ)(e, t, n) + ); + })(); + } + generateMixBlendContent(e, t, i) { + var n = this; + return (0, a._)(function* () { + var r = yield n._contentGenerateRepository.generateMixBlendContent( + e, + t, + i + ); + return n._getFormatNetworkResponseResult(r, D.cQ); + })(); + } + locateGenerateContent(e, t, i) { + var n = this; + return (0, a._)(function* () { + var r = yield n._contentGenerateRepository.locateGenerateContent( + e, + t + ); + return n._getFormatNetworkResponseResult(r, (e, t) => { + var n, + r = null !== (n = e.recordsList) && void 0 !== n ? n : [], + a = (0, D.Qd)(e.nextOffset); + return (0, s._)((0, o._)({}, e), { + nextOffset: a, + recordList: r.map((e) => (0, D.cQ)(e, t, i)), + }); + }); + })(); + } + getHistoryById(e, t) { + var i = this; + return (0, a._)(function* () { + var n = yield i._contentGenerateRepository.getHistoryById(e, t); + return i._getFormatNetworkResponseResult(n, D.cQ); + })(); + } + generateSuperResolutionContent(e, t, i, n) { + var r = this; + return (0, a._)(function* () { + var a = + yield r._contentGenerateRepository.generateSuperResolutionContent( + e, + t, + i + ); + return r._getFormatNetworkResponseResult(a, (e, t) => + (0, D.cQ)(e, t, n) + ); + })(); + } + generateSuperDefinitionContent(e, t, i, n) { + var r = this; + return (0, a._)(function* () { + var a = + yield r._contentGenerateRepository.generateSuperDefinitionContent( + e, + t, + i + ); + return r._getFormatNetworkResponseResult(a, (e, t) => + (0, D.cQ)(e, t, n) + ); + })(); + } + generatePaintingContent(e, t, i, n) { + var r = this; + return (0, a._)(function* () { + var a = yield r._contentGenerateRepository.generatePaintingContent( + e, + t, + i + ); + return r._getFormatNetworkResponseResult(a, (e, t) => + (0, D.cQ)(e, t, n) + ); + })(); + } + _getFormatNetworkResponseResult(e, t) { + var { response: i, costTime: n, logId: r } = e; + if (i.ok) { + var { value: a } = i, + o = t.call(this, a, n); + return { response: (0, p.oW)(o), costTime: n, logId: r }; + } + return { response: i, costTime: n, logId: r }; + } + queryTask(e, t, i, n) { + var r = this; + return (0, a._)(function* () { + var a = yield r._contentGenerateRepository.queryTask(e, { + taskId: t, + imageInfo: i, + }); + return r._getFormatNetworkResponseResult(a, (e, i) => + (0, D.cQ)(e.taskMap[t], i, n) + ); + })(); + } + getTaskResult(e, t, i, n, r, o) { + var s = this; + return (0, a._)(function* () { + var a, + l, + c = yield s.queryTask(e, t, n, r); + for ( + null == o || + null === (a = o.afterEach) || + void 0 === a || + a.call(o, c); + c.response.ok && + [R.Pd.Init, R.Pd.SubmitOk].includes(c.response.value.status); + + ) + yield (0, E._)((0, D.nV)(i)), + (c = yield s.queryTask(e, t, n, r)), + null == o || + null === (l = o.afterEach) || + void 0 === l || + l.call(o, c); + return c; + })(); + } + constructor(e) { + this._contentGenerateRepository = e; + } + } + var L = (0, n.yh)("mWeb-content-generate-service"); + class j { + get repository() { + return this._repository; + } + get aggregate() { + return this._aggregate; + } + constructor() { + (this._repository = (0, r.bu)("ContentGenerateRepository", new P())), + (this._aggregate = (0, r.bu)( + "ContentGenerateAggregate", + new N(this._repository) + )); + } + } + }, + 229025: function (e, t, i) { + "use strict"; + i.d(t, { + Cg: function () { + return u; + }, + FO: function () { + return f; + }, + KG: function () { + return m; + }, + Qd: function () { + return x; + }, + cQ: function () { + return S; + }, + nV: function () { + return M; + }, + }); + var n = i(625572), + r = i(639880), + a = i(243302), + o = i(224671), + s = i(107520), + l = i(100470), + c = i(936690), + d = i(591586); + function u(e) { + return [ + a.pi.SuperResolution, + a.pi.InPaintRemove, + a.pi.SuperDefinition, + ].includes(e); + } + function f(e) { + return e.itemList.length > 1; + } + function h(e, t) { + var i = {}; + if (t) + try { + i = JSON.parse(t); + } catch (e) { + d.t.error("metricsExtra parse error", e); + } + if (!e) + return (0, n._)( + { + promptSource: o.U_.Default, + templateSource: o.Q8.Default, + templateId: "", + generateCount: 1, + generateId: "", + lastRequestId: "", + originRequestId: "", + }, + i + ); + var { + promptSource: r, + templateSource: a, + templateId: s, + generateCount: l, + generateId: c, + lastRequestId: u, + originRequestId: f, + } = e; + return (0, n._)( + { + generateId: c, + templateId: s, + promptSource: r, + templateSource: a, + generateCount: l || 1, + lastRequestId: u, + originRequestId: f, + }, + i + ); + } + function p(e, t, i) { + if (!e) + return { + prompt: "", + seed: -1, + model: "", + sampleStrength: 0.5, + negativePrompt: "", + imageRatio: o.jP.OneOne, + largeImageInfo: { + width: 1024, + height: 1024, + resolutionType: o.YD.ImageResolutionType_1k, + }, + }; + var a, + s = + null === (a = e.modelConfig) || void 0 === a + ? void 0 + : a.modelReqKey; + return (0, r._)((0, n._)({}, e), { model: s }); + } + function v() { + var e = 1e3 * Math.random(); + return { + imageUri: "", + requestId: "", + itemId: "itemId-".concat(Date.now(), "-").concat(e), + coverUri: "", + coverUrl: "", + downloadUri: "", + downloadUrl: "", + isErrorBlank: !0, + imageRatio: o.jP.OneOne, + publishedItemId: "", + }; + } + function m(e, t) { + var i, + n = + null !== + (i = + null == e + ? void 0 + : e.map((e) => { + var t, + i, + n, + r, + a, + o, + s, + { + commonAttr: l, + image: c, + aigcImageParams: d, + } = null != e ? e : {}, + { + id: u = "", + coverUrl: f = "", + coverUri: h = "", + publishedItemId: p = "", + } = null != l ? l : {}, + { requestId: v = "" } = null != d ? d : {}, + m = + null !== + (a = + null == c + ? void 0 + : null === (i = c.largeImages) || void 0 === i + ? void 0 + : null === (t = i[0]) || void 0 === t + ? void 0 + : t.imageUrl) && void 0 !== a + ? a + : "", + g = + null !== + (o = + null == c + ? void 0 + : null === (r = c.largeImages) || void 0 === r + ? void 0 + : null === (n = r[0]) || void 0 === n + ? void 0 + : n.imageUri) && void 0 !== o + ? o + : "", + { largeImages: _ = [] } = null != c ? c : {}, + { + width: y, + height: b, + imageUri: I, + } = null !== (s = _[0]) && void 0 !== s ? s : {}; + return { + imageUri: I, + itemId: u, + requestId: v, + coverUrl: f, + coverUri: h, + coverUrlMap: e.commonAttr.coverUrlMap, + downloadUri: g, + downloadUrl: m, + publishedItemId: p, + width: y, + height: b, + }; + })) && void 0 !== i + ? i + : [], + { length: r } = n, + a = 1, + o = 4; + return ( + t && r < a + ? n.push(v()) + : !t && + r < o && + Array(o - r) + .fill(0) + .map((e) => v()), + n + ); + } + function g(e) { + var t; + return null !== + (t = + null == e + ? void 0 + : e.map((e) => { + var { commonAttr: t } = null != e ? e : {}, + { id: i = "" } = null != t ? t : {}; + return { + imageUri: "", + itemId: i, + requestId: "", + coverUrl: "", + coverUri: "", + downloadUrl: "", + downloadUri: "", + publishedItemId: "", + width: 100, + height: 100, + genResultData: e.genResultData, + }; + })) && void 0 !== t + ? t + : []; + } + function _(e, t) { + var { isSuperResolution: i, hasPublished: n } = e, + { hasPublishAuthority: r = !1 } = null != t ? t : {}, + a = [ + o.Zz.SuperResolute, + o.Zz.SuperDefinition, + o.Zz.Download, + o.Zz.Reedit, + o.Zz.Regenerate, + o.Zz.PhotoReport, + o.Zz.GenerateVideo, + o.Zz.Delete, + o.Zz.DeepSeek, + o.Zz.BatchDelete, + o.Zz.Favorites, + o.Zz.ImagePostEdit, + ], + s = [ + o.Zz.Download, + o.Zz.SuperDefinition, + o.Zz.SuperResolute, + o.Zz.ZoomIn, + o.Zz.Inpaint, + o.Zz.Outpaint, + o.Zz.PhotoReport, + o.Zz.InPaintRemove, + o.Zz.GenerateVideo, + o.Zz.Reedit, + o.Zz.Regenerate, + o.Zz.Delete, + o.Zz.DeepSeek, + o.Zz.Favorites, + o.Zz.ImagePostEdit, + ]; + return r && (s.push(o.Zz.Publish), a.push(o.Zz.Publish)), i ? s : a; + } + function y(e) { + var t, + i, + { ret: n, isSuperResolution: r, publishParam: a } = e, + s = { + [l.b.ErrSuccess]: () => _(e, a), + [l.b.ErrGenerate]: () => + r ? [o.Zz.Delete] : [o.Zz.Reedit, o.Zz.Regenerate, o.Zz.Delete], + [l.b.ErrPreTextRiskNotPass]: () => + r ? [o.Zz.Delete] : [o.Zz.Reedit, o.Zz.Delete], + }; + return null !== + (i = null === (t = s[n]) || void 0 === t ? void 0 : t.call(s)) && + void 0 !== i + ? i + : s[l.b.ErrGenerate](); + } + function b(e, t, i, o) { + var s, + { prompt: l } = t, + { aigcImageParams: c } = null != i ? i : {}; + if (!!c) { + var { + inPaintingParams: d, + outPaintingParams: u, + inPaintingRemoveParams: f, + byteEditParams: h, + } = c, + p = { generateType: e, prompt: l }, + v = { + [a.pi.InPaint]: () => { + var { + originItemId: e = "", + maskUri: t, + maskUrl: i, + originPrompt: a = "", + } = null != d ? d : {}; + return (0, r._)((0, n._)({}, p), { + itemId: e, + maskUri: t, + maskUrl: i, + submitId: null != o ? o : "", + originPrompt: a, + }); + }, + [a.pi.InPaintRemove]: () => { + var { + originItemId: e = "", + maskUri: t, + maskUrl: i, + } = null != f ? f : {}; + return (0, r._)((0, n._)({}, p), { + itemId: e, + maskUri: t, + maskUrl: i, + submitId: null != o ? o : "", + }); + }, + [a.pi.OutPaint]: () => { + var { + originItemId: e = "", + upScale: t, + originPrompt: i = "", + } = null != u ? u : {}; + return (0, r._)((0, n._)({}, p), { + itemId: e, + upScale: t, + submitId: null != o ? o : "", + originPrompt: i, + }); + }, + [a.pi.InPaintAndOutPaint]: () => { + var { maskUri: e, maskUrl: t } = null != d ? d : {}, + { + originItemId: i = "", + upScale: a, + originPrompt: s = "", + } = null != u ? u : {}; + return (0, r._)((0, n._)({}, p), { + maskUri: e, + maskUrl: t, + itemId: i, + upScale: a, + submitId: null != o ? o : "", + originPrompt: s, + }); + }, + [a.pi.ByteEditPainting]: () => { + var { + uri: e, + strength: t, + originItemId: i = "", + originPrompt: a = "", + } = null != h ? h : {}; + return (0, r._)((0, n._)({}, p), { + originUri: e, + strength: t, + itemId: i, + submitId: null != o ? o : "", + originPrompt: a, + }); + }, + }; + return null === (s = v[e]) || void 0 === s ? void 0 : s.call(v); + } + } + function I(e, t) { + if (!!e && !!(null == t ? void 0 : t.length)) + return { historyRecordId: e, itemList: t }; + } + function w(e, t) { + var { aigcImageParams: i } = null != t ? t : {}, + { + inPaintingParams: n, + inPaintingRemoveParams: r, + outPaintingParams: o, + byteEditParams: s, + normalHdParams: l, + superResolutionParams: c, + } = null != i ? i : {}; + return e === a.pi.InPaintRemove + ? null == r + ? void 0 + : r.originItemId + : e === a.pi.OutPaint + ? null == o + ? void 0 + : o.originItemId + : e === a.pi.ByteEditPainting + ? null == s + ? void 0 + : s.originItemId + : e === a.pi.InPaint || e === a.pi.InPaintAndOutPaint + ? null == n + ? void 0 + : n.originItemId + : e === a.pi.SuperDefinition + ? null == l + ? void 0 + : l.originItemId + : e === a.pi.SuperResolution + ? null == c + ? void 0 + : c.originItemId + : void 0; + } + function x(e) { + return e < 946656e6 ? 1e3 * e : e; + } + function S(e, t, i, n) { + var r, + o, + d, + f, + v, + _, + S, + M, + C, + T, + A, + k, + P, + E, + { + generateId: D, + generateType: R = a.pi.Text2Image, + historyRecordId: N, + createdTime: L, + finishTime: j, + ret: O, + originHistoryRecordId: B, + task: F, + assetOption: U, + status: G, + submitId: z, + metricsExtra: V, + draftContent: W, + modelInfo: Z, + resources: K, + failCode: H, + forecastGenerateCost: q, + forecastQueueCost: J, + } = e, + Y = null !== (_ = e.itemList) && void 0 !== _ ? _ : [], + Q = null !== (S = e.failedItemList) && void 0 !== S ? S : [], + X = null !== (M = e.originItemList) && void 0 !== M ? M : [], + $ = x(null != L ? L : Date.now()), + ee = x(null != j ? j : Date.now()), + et = Number( + null !== + (C = + null != O + ? O + : null == F + ? void 0 + : null === (r = F.respRet) || void 0 === r + ? void 0 + : r.ret) && void 0 !== C + ? C + : l.b.ErrSuccess + ), + ei = + null !== (A = null !== (T = Y[0]) && void 0 !== T ? T : Q[0]) && + void 0 !== A + ? A + : { + aigcImageParams: + null === (o = e.task) || void 0 === o + ? void 0 + : o.aigcImageParams, + mode: n, + blendParams: + null === (f = e.task) || void 0 === f + ? void 0 + : null === (d = f.aigcImageParams) || void 0 === d + ? void 0 + : d.blendParams, + }, + { image: en } = ei, + er = + null !== (k = ei.aigcImageParams) && void 0 !== k + ? k + : null == F + ? void 0 + : F.aigcImageParams, + { width: ea = 0, height: eo = 0 } = + null !== + (P = + null == en + ? void 0 + : null === (v = en.largeImages) || void 0 === v + ? void 0 + : v[0]) && void 0 !== P + ? P + : {}, + es = h(null != er ? er : {}, V), + { + text2imageParams: el, + firstGenerateType: ec, + generateId: ed, + lastGenerate: eu, + } = null != er ? er : {}, + ef = Y.map((e) => e.commonAttr.hasPublished).includes(!0), + eh = p(el, ea, eo), + ep = u(R), + ev = m(Y, ep), + em = g(Q), + eg = Y.map((e) => (0, s.Z)(e, N)), + e_ = y({ + ret: et, + isSuperResolution: ep, + hasPublished: ef, + publishParam: i, + hasFavorited: + null !== (E = null == U ? void 0 : U.hasFavorited) && + void 0 !== E && + E, + }), + ey = b(R, eh, ei, null == F ? void 0 : F.submitId), + eb = I(B, X), + eI = (0, c.tA)(ei); + Y.forEach((e) => { + (e.blendParams = eI), (e.mode = n); + }); + var ew = w(R, ei); + return { + id: N, + generateId: null != ed ? ed : D, + generateType: R, + firstGenerateType: ec, + lastGenerate: eu, + ret: et, + historyRecordId: N, + originItemId: ew, + historyGroupKeyMd5: null == e ? void 0 : e.historyGroupKeyMd5, + imageList: ev, + photosDreamina: eg, + costTime: t, + reportParam: es, + text2ImageParams: eh, + blendImageParams: eI, + isSuperResolution: ep, + createdTime: $, + finishTime: ee, + sortCreateTime: $, + operationAuthorityList: e_, + publishParam: i, + itemList: Y, + failedImageList: em, + paintingParam: ey, + originRecord: eb, + mode: n, + assetOption: U, + task: F, + status: G, + submitId: z, + draftContent: W, + modelInfo: Z, + resources: K, + failCode: H, + isDraftGen: !!W, + forecastGenerateCost: q, + forecastQueueCost: J, + }; + } + a.pi.Text2Image, a.pi.OutPaint, a.pi.Blend; + var M = (e) => { + switch (e) { + case a.pi.Blend: + return o.Z8.Blend; + case a.pi.SuperDefinition: + return o.Z8.SuperDefinition; + case a.pi.InPaint: + case a.pi.OutPaint: + case a.pi.InPaintRemove: + return o.Z8.Painting; + case a.pi.Text2Image: + default: + return o.Z8.Text2Image; + } + }; + }, + 869409: function (e, t, i) { + "use strict"; + i.d(t, { + Q: function () { + return r; + }, + d: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e[(e.All = 0)] = "All"), + (e[(e.Image = 1)] = "Image"), + (e[(e.Video = 2)] = "Video"), + (e[(e.Story = 3)] = "Story"), + (e[(e.Canvas = 4)] = "Canvas"), + (e[(e.VideoBGM = 5)] = "VideoBGM"), + (e[(e.Audio = 6)] = "Audio"), + (e[(e.VideoAudioEffect = 7)] = "VideoAudioEffect"), + e + ); + })({}), + r = (function (e) { + return ( + (e[(e.CreateAt = 0)] = "CreateAt"), + (e[(e.ModifyAt = 1)] = "ModifyAt"), + e + ); + })({}); + }, + 166320: function (e, t, i) { + "use strict"; + i.d(t, { + Eu: function () { + return n; + }, + ie: function () { + return r; + }, + o$: function () { + return a; + }, + }); + var n = (function (e) { + return ( + (e[(e.Image = 1)] = "Image"), + (e[(e.Video = 2)] = "Video"), + (e[(e.Story = 3)] = "Story"), + (e[(e.Canvas = 4)] = "Canvas"), + (e[(e.VideoBGM = 5)] = "VideoBGM"), + (e[(e.Audio = 6)] = "Audio"), + (e[(e.VideoAudioEffect = 7)] = "VideoAudioEffect"), + (e[(e.VimoItem = 100)] = "VimoItem"), + e + ); + })({}), + r = (function (e) { + return ( + (e[(e.FavoriteOpLike = 1)] = "FavoriteOpLike"), + (e[(e.FavoriteOpUnLike = 2)] = "FavoriteOpUnLike"), + e + ); + })({}), + a = (function (e) { + return ( + (e[(e.Success = 0)] = "Success"), + (e[(e.Failed = 1)] = "Failed"), + (e[(e.InvalidAsset = 2)] = "InvalidAsset"), + e + ); + })({}); + }, + 257843: function (e, t, i) { + "use strict"; + i.d(t, { + K: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("dreamina-assets-data-service"); + }, + 787205: function (e, t, i) { + "use strict"; + i.d(t, { + $: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("dreamina-commerce-data-service"); + }, + 834634: function (e, t, i) { + "use strict"; + i.d(t, { + P: function () { + return n; + }, + v: function () { + return r; + }, + }); + var n = (function (e) { + return ( + (e[(e.ISSUED = 1)] = "ISSUED"), + (e[(e.CONSUMED = 2)] = "CONSUMED"), + e + ); + })({}), + r = (function (e) { + return ( + (e.VIP_ISSUED = "VIP_GIFT"), + (e.DAILY_ISSUED = "FREEMIUM_RECEIVE"), + (e.ONEOFF_PURCHASE = "ONE_OFF_PURCHASE"), + (e.ACTIVITY_GIFT = "ACTIVITY_GIFT"), + (e.GENERATE_VIDEO = "GENERATE_VIDEO"), + (e.REFUND = "REFUND"), + (e.INIT_DATA = "INIT_DATA"), + (e.EMPTY = ""), + e + ); + })({}); + }, + 804362: function (e, t, i) { + "use strict"; + i.d(t, { + I: function () { + return r; + }, + N: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e.UPGRADE = "UPGRADE"), + (e.DOWNGRADE = "DOWNGRADE"), + (e.LATERAL = "LATERAL"), + e + ); + })({}), + r = (function (e) { + return ( + (e.FREE_TRIAL = "free_trial"), + (e.INTRO = "intro"), + (e.PAY_UP_FRONT = "pay_up_front"), + (e.MULTI_PROMOTE = "multi_promote"), + e + ); + })({}); + }, + 416794: function (e, t, i) { + "use strict"; + i.d(t, { + o: function () { + return a; + }, + }); + var n = /([a-zA-Z])(_)(\d)|(\d)(_|$)([a-zA-Z])/g; + function r(e) { + var t = e.replace(n, (e, t, i, n, r, a, o) => + t && n ? t + n : r && o ? r + o : e + ); + return t.length !== e.length ? r(t) : t; + } + function a(e) { + if ("object" == typeof e && null !== e) + for (var t of Object.keys(e)) { + var i = r(t); + i !== t && !(i in e) && (e[i] = e[t]), + "object" == typeof e[t] && a(e[t]); + } + } + }, + 265587: function (e, t, i) { + "use strict"; + i.d(t, { + Q: function () { + return y; + }, + }); + var n = i(625572), + r = i(639880), + a = i(474956), + o = i(820266), + s = i(804274), + l = i(936690), + c = i(733787), + d = i(830563), + u = i(542994), + f = i(416794), + h = i(938678), + p = i(243090), + v = i(296194), + m = i(117275), + g = i(782650); + function _(e) { + var t = (0, o.b)((0, h.I)(e), s.zW); + return ( + t.videoGenInputs.forEach((e) => { + if ( + ((null === (i = e.i2vOpt) || void 0 === i + ? void 0 + : null === (t = i.realmanAvatar) || void 0 === t + ? void 0 + : t.ttsInfo) && + (e.i2vOpt.realmanAvatar.ttsInfo = (0, o.b)( + (0, p.D)( + null === (h = e.i2vOpt) || void 0 === h + ? void 0 + : null === (f = h.realmanAvatar) || void 0 === f + ? void 0 + : f.ttsInfo + ) + )), + (null === (s = e.v2vOpt) || void 0 === s + ? void 0 + : null === (a = s.lipSyncUserVideo) || void 0 === a + ? void 0 + : a.ttsInfo) && + (e.v2vOpt.lipSyncUserVideo.ttsInfo = (0, o.b)( + (0, p.D)(e.v2vOpt.lipSyncUserVideo.ttsInfo) + )), + null === (u = e.firstFrameImage) || void 0 === u + ? void 0 + : null === (d = u.aigcImage) || void 0 === d + ? void 0 + : null === (c = d.aigcImageParams) || void 0 === c + ? void 0 + : c.blendParams) + ) { + var t, + i, + a, + s, + c, + d, + u, + f, + h, + v, + g, + { aigcImageParams: _ } = e.firstFrameImage.aigcImage; + if ( + !!(null == _ + ? void 0 + : null === (v = _.blendParams) || void 0 === v + ? void 0 + : v.abilityList) + ) { + var y = (0, m.o)({ + prompt: (0, l.A1)(_), + abilityList: + null == _ + ? void 0 + : null === (g = _.blendParams) || void 0 === g + ? void 0 + : g.abilityList, + promptPlaceholderInfoList: + null == _ + ? void 0 + : _.blendParams.promptPlaceholderInfoList, + }); + (_.blendParams = (0, r._)((0, n._)({}, _.blendParams), { + abilityList: y.abilityList, + promptPlaceholderInfoList: y.promptPlaceholderInfoList, + })), + (0, l.V8)(_, y.prompt); + } + } + }), + t + ); + } + var y = (e, t) => { + var i, + l, + p, + m, + y, + b, + I, + w, + x, + S = (0, h.I)(e); + (0, f.o)(S), + (0, g.jc)(S), + (S.video.transcoded_video = (0, v.Z)( + S.video.transcoded_video, + (e, t) => /^\d+_p$/.test(t) + )); + var M = (0, u.T)(S, a._g.DreaminaAiVideo), + { aigc_image_params: C, statistic: T } = S, + A = + null !== + (m = + null !== + (p = + null !== + (l = + null !== (i = S.video.transcoded_video["720p"]) && + void 0 !== i + ? i + : S.video.transcoded_video["360p"]) && void 0 !== l + ? l + : S.video.transcoded_video.origin) && void 0 !== p + ? p + : t) && void 0 !== m + ? m + : S.video.origin_video, + k = Object.keys( + null !== (y = S.video.transcoded_video) && void 0 !== y ? y : {} + ), + P = null == C ? void 0 : C.text2video_params, + E = null == C ? void 0 : C.generate_type, + D = P + ? _(P) + : { + videoGenInputs: [], + seed: 0, + videoAspectRatio: c.py.VideoAspectRatioType_16_9, + }, + R = null == C ? void 0 : C.publish_opt; + return ( + R && + (b = { + publicCloneVoice: R.public_clone_voice, + publicUserAudio: R.public_user_audio, + }), + (0, r._)((0, n._)({}, M), { + generateType: E, + publishedItemId: S.common_attr.published_item_id, + author: S.author + ? { + avatar: S.author.avatar_url, + name: S.author.name, + uid: S.author.uid, + secUid: S.author.sec_uid, + } + : { avatar: "", name: "", uid: "", secUid: "" }, + video: { + duration: S.video.duration, + durationMs: BigInt(S.video.duration_ms), + watermarkType: S.video.watermark_type, + originVideo: A && { + definition: A.definition, + format: A.format, + height: A.height, + size: A.size, + width: A.width, + videoUrl: A.video_url, + }, + videoTranscodeInfo: k.reduce((e, t) => { + var i, + a, + o = + null !== + (a = + null === (i = S.video.transcoded_video) || void 0 === i + ? void 0 + : i[t]) && void 0 !== a + ? a + : {}, + s = (0, r._)((0, n._)({}, e), { videoUrl: o.video_url }); + return (0, r._)((0, n._)({}, e), { [t]: s }); + }, {}), + videoId: S.video.video_id, + transcodeStatus: S.video.transcode_status, + videoSizeType: S.video.video_size_type, + }, + fixedVdaStatus: + S.video.vda_status === d.X.Encoding && k.length + ? d.X.EncodeSuccess + : S.video.vda_status, + aigcVideoParam: (0, r._)((0, n._)({}, D), { publishOpt: b }), + genVideoParams: D, + statistic: { + usageNum: null !== (I = T.usage_num) && void 0 !== I ? I : 0, + hasFavorited: null !== (w = T.has_favorited) && void 0 !== w && w, + favoriteNum: + null !== (x = T.favorite_num) && void 0 !== x ? x : 0, + }, + coverUrlMap: S.common_attr.cover_url_map, + categoryIdList: S.category_id_list, + actData: S.act_data + ? { + weeklyChallengeList: S.act_data.weekly_challenge_list.map( + (e) => { + var { act_key: t, act_name: i, award_ranking: n } = e; + return { actKey: t, actName: i, awardRanking: n }; + } + ), + } + : void 0, + competitionData: S.competition_data + ? { + competitionKey: S.competition_data.competition_key, + competitionTitle: S.competition_data.competition_title, + award: S.competition_data.award, + } + : void 0, + shortVideoData: S.short_video_data + ? { + aiTools: S.short_video_data.ai_tools, + storyId: S.short_video_data.story_id, + downloadable: S.short_video_data.downloadable, + } + : void 0, + requestId: S.request_id, + impressionId: S.request_id, + publishOpt: b, + videoTemplateItem: (0, o.b)(S.video_template_item, s.zW), + }) + ); + }; + }, + 473877: function (e, t, i) { + "use strict"; + i.d(t, { + EV: function () { + return r; + }, + iF: function () { + return n; + }, + sW: function () { + return a; + }, + }); + var n = (function (e) { + return ( + (e.INIT = "init"), + (e.PROCESSING = "processing"), + (e.SUCCESS = "success"), + (e.FAILED = "failed"), + e + ); + })({}), + r = (function (e) { + return ( + (e.UNAUTO = "unauto"), + (e.CONSUMABLES = "consumables"), + (e.ONEOFF = "oneoff"), + (e.SUBSCRIPTION = "subscription"), + e + ); + })({}), + a = (function (e) { + return ( + (e.INIT = "INIT"), + (e.SUBMITTED = "SUBMITTED"), + (e.SUCCESS = "SUCCESS"), + (e.CLOSED = "CLOSED"), + e + ); + })({}); + }, + 304483: function (e, t, i) { + "use strict"; + i.d(t, { + fJ: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("dreamina-pay-data-service"); + }, + 882644: function (e, t, i) { + "use strict"; + i.d(t, { + w: function () { + return r; + }, + z: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e[(e.Unknown = 0)] = "Unknown"), + (e[(e.AIGCHistory = 1)] = "AIGCHistory"), + (e[(e.EverPhoto = 2)] = "EverPhoto"), + e + ); + })({}), + r = (function (e) { + return ( + (e[(e.Init = 0)] = "Init"), + (e[(e.Fail = 30)] = "Fail"), + (e[(e.FinalSuccess = 50)] = "FinalSuccess"), + (e[(e.Processing = 60)] = "Processing"), + e + ); + })({}); + }, + 657600: function (e, t, i) { + "use strict"; + i.d(t, { + _: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("dreamina-story-export-materials-data-service"); + }, + 749314: function (e, t, i) { + "use strict"; + i.d(t, { + l: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e[(e.Preset = 109)] = "Preset"), (e[(e.Custom = 214)] = "Custom"), e + ); + })({}); + }, + 201636: function (e, t, i) { + "use strict"; + i.d(t, { + BQ: function () { + return o; + }, + I: function () { + return r; + }, + X0: function () { + return n; + }, + dP: function () { + return s; + }, + oH: function () { + return a; + }, + }); + var n = (function (e) { + return ( + (e[(e.VoiceAdd = 1)] = "VoiceAdd"), + (e[(e.VoiceConversion = 2)] = "VoiceConversion"), + e + ); + })({}), + r = (function (e) { + return ( + (e[(e.Init = 0)] = "Init"), + (e[(e.Processing = 10)] = "Processing"), + (e[(e.Success = 20)] = "Success"), + (e[(e.Fail = 30)] = "Fail"), + e + ); + })({}), + a = (function (e) { + return ( + (e[(e.Loki = 1)] = "Loki"), + (e[(e.Local = 2)] = "Local"), + (e[(e.Template = 3)] = "Template"), + e + ); + })({}), + o = (function (e) { + return ( + (e[(e.Generating = 1)] = "Generating"), + (e[(e.Success = 2)] = "Success"), + (e[(e.Fail = 3)] = "Fail"), + e + ); + })({}), + s = (function (e) { + return (e[(e.CloneVoice = 218)] = "CloneVoice"), e; + })({}); + }, + 573293: function (e, t, i) { + "use strict"; + i.d(t, { + S: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("experiment-service"); + }, + 871770: function (e, t, i) { + "use strict"; + i.d(t, { fQ: () => I, dF: () => w }); + var n = i("333597"), + r = i("139646"), + a = i("625572"), + o = i("639880"), + s = i("643590"), + l = i("904337"), + c = i("416105"), + d = i("804274"), + u = i("453604"), + f = i("875649"), + h = i("879976"); + function p() { + var e = new s.y().build({ + headers: { "Content-Type": "application/json" }, + withCredentials: !0, + }); + return ( + (0, h.V)(e), + (0, l.$)(e), + (0, c.mH)(e), + (0, d.xP)(e), + (0, u.d)(e), + (0, f.i3)(e), + e + ); + } + var v = i("940140"), + m = { + getRecognizeFace: { + hostNameType: v.b_.Default, + url: "/mweb/v1/face_recognize", + }, + getSaliencySEG: { + hostNameType: v.b_.Default, + url: "/mweb/v1/saliency_seg", + }, + generateBlendPreview: { + HostNameType: v.b_.Default, + url: "/mweb/v1/blend_preview", + }, + poseDetect: { + HostNameType: v.b_.Default, + url: "/mweb/v1/pose_detect", + }, + }, + g = i("586315"), + _ = i("712942"), + y = i("100470"); + class b { + getFaceRecognize(e, t) { + var i = this; + return (0, r._)(function* () { + return yield i._request( + "".concat((0, _.H4)()).concat(m.getRecognizeFace.url), + e, + t, + !0 + ); + })(); + } + _request(e, t, i) { + var n = + arguments.length > 3 && void 0 !== arguments[3] && arguments[3], + s = this; + return (0, r._)(function* () { + var r = Date.now(); + try { + var { data: l, logid: c } = yield s._networkClient.post(e, t, { + params: (0, o._)((0, a._)({}, null != i ? i : {}), { + needCache: n, + }), + }); + return { + response: (0, g.oW)(l), + costTime: Date.now() - r, + logId: c, + }; + } catch (e) { + var { ret: d, errmsg: u = "", logid: f = "" } = e || {}, + h = d ? Number(d) : y.b.ErrCommon, + p = JSON.stringify({ errMsg: u, logId: f }); + return { + response: (0, g.wf)(h, p), + costTime: Date.now() - r, + logId: f, + }; + } + })(); + } + getSaliencySEG(e, t) { + var i = this; + return (0, r._)(function* () { + return yield i._request( + "".concat((0, _.H4)()).concat(m.getSaliencySEG.url), + e, + t, + !0 + ); + })(); + } + generateBlendPreview(e, t) { + var i = this; + return (0, r._)(function* () { + return yield i._request( + "".concat((0, _.H4)()).concat(m.generateBlendPreview.url), + e, + t + ); + })(); + } + poseDetect(e, t) { + var i = this; + return (0, r._)(function* () { + return yield i._request( + "".concat((0, _.H4)()).concat(m.poseDetect.url), + e, + t + ); + })(); + } + constructor() { + this._networkClient = p(); + } + } + var I = (0, n.yh)("mWeb-graphic-tool-service"); + class w { + get graphicTool() { + return this._graphicTool; + } + constructor() { + this._graphicTool = new b(); + } + } + }, + 417281: function (e, t, i) { + "use strict"; + i.d(t, { + D3: function () { + return d; + }, + G7: function () { + return a; + }, + Ij: function () { + return h; + }, + OC: function () { + return l; + }, + Ti: function () { + return o; + }, + U0: function () { + return s; + }, + UI: function () { + return r; + }, + hD: function () { + return u; + }, + iB: function () { + return f; + }, + kR: function () { + return n; + }, + qB: function () { + return c; + }, + }); + var n = (function (e) { + return ( + (e.ControlNetCanny = "canny"), + (e.ControlNetDepth = "depth"), + (e.ControlNetPose = "pose"), + (e.ControlNetBgPaint = "bgpaint"), + e + ); + })({}), + r = (function (e) { + return ( + (e.ByteEdit = "byte_edit"), + (e.Text2image = "text2image"), + (e.FaceGan = "face_gan"), + (e.BgPaint = "bg_paint"), + (e.BasicBlend = "fuzz_blend"), + (e.Image2image = "image2image"), + (e.ControlNet = "control_net"), + (e.StyleReference = "style_reference"), + (e.IpKeep = "ip_keep"), + (e.StyleCode = "style_code"), + (e.Unknown = ""), + e + ); + })({}); + function a(e) { + return "face_gan" === e.name; + } + function o(e) { + return "bg_paint" === e.name; + } + function s(e) { + return "control_net" === e.name; + } + function l(e) { + return "image2image" === e.name; + } + function c(e) { + return "ip_keep" === e.name; + } + function d(e) { + return "style_reference" === e.name; + } + function u(e) { + return "byte_edit" === e.name; + } + function f(e) { + return "style_code" === e.name; + } + var h = "img2img_xl_sft"; + }, + 923810: function (e, t, i) { + "use strict"; + i.d(t, { + v: function () { + return r; + }, + }); + var n = i(940140), + r = { + removeHistory: { + hostNameType: n.b_.Default, + url: "/mweb/v1/remove_history", + }, + getHistoryById: { + hostNameType: n.b_.Default, + url: "/mweb/v1/get_history_by_id", + }, + getHistoryByIds: { + hostNameType: n.b_.Default, + url: "/mweb/v1/get_history_by_ids", + }, + getLocalItemList: { + hostNameType: n.b_.Default, + url: "/mweb/v1/get_local_item_list", + }, + }; + }, + 173590: function (e, t, i) { + "use strict"; + i.d(t, { m: () => v, T: () => m }); + var n = i("139646"), + r = i("586315"), + a = i("643590"), + o = i("416105"), + s = i("804274"), + l = i("875649"), + c = i("879976"); + function d() { + var e = new a.y().build({ + headers: { "Content-Type": "application/json" }, + withCredentials: !0, + }); + return (0, c.V)(e), (0, o.mH)(e), (0, s.xP)(e), (0, l.e_)(e), e; + } + var u = i("923810"), + f = i("712942"), + h = i("100470"); + class p { + removeHistory(e) { + var t = this; + return (0, n._)(function* () { + var i = "".concat((0, f.H4)()).concat(u.v.removeHistory.url); + return yield t._request(i, e); + })(); + } + getHistoryById(e) { + var t = this; + return (0, n._)(function* () { + var i = "".concat((0, f.H4)()).concat(u.v.getHistoryById.url); + return yield t._request(i, { historyId: e }); + })(); + } + getHistoryByIds(e) { + var t = this; + return (0, n._)(function* () { + var i = "".concat((0, f.H4)()).concat(u.v.getHistoryByIds.url); + return yield t._request(i, { historyIds: e }); + })(); + } + getHistoryBySubmitIds(e) { + var t = this; + return (0, n._)(function* () { + var i = "".concat((0, f.H4)()).concat(u.v.getHistoryByIds.url); + return yield t._request(i, { submitIds: e }); + })(); + } + getLocalItemList(e) { + var t = this; + return (0, n._)(function* () { + var i = "".concat((0, f.H4)()).concat(u.v.getLocalItemList.url); + return yield t._request(i, { itemIdList: e }); + })(); + } + _request(e, t) { + var i = this; + return (0, n._)(function* () { + try { + var n = yield i._networkClient.post(e, t); + return (0, r.oW)(n); + } catch (e) { + var { errNo: a, errTips: o } = e || {}, + s = a ? Number(a) : h.b.ErrCommon; + return (0, r.wf)(s, null != o ? o : "unknown error"); + } + })(); + } + constructor() { + this._networkClient = d(); + } + } + var v = (0, i("333597").yh)("mWeb-history-service"); + class m { + get repository() { + return this._repository; + } + constructor() { + this._repository = new p(); + } + } + }, + 748312: function (e, t, i) { + "use strict"; + i.d(t, { Z: () => _, N: () => y }); + var n = i("333597"), + r = i("139646"), + a = i("643590"), + o = i("416105"), + s = i("804274"), + l = i("875649"), + c = i("879976"); + function d() { + var e = new a.y().build({ + headers: { "Content-Type": "application/json" }, + withCredentials: !0, + }); + return (0, c.V)(e), (0, o.mH)(e), (0, s.xP)(e), (0, l.e_)(e), e; + } + var u = i("940140"), + f = { + getUnreadCount: { + hostNameType: u.b_.Default, + url: "/mweb/v1/get_unread_count", + }, + getNoticeList: { + hostNameType: u.b_.Default, + url: "/mweb/v1/get_notice_list", + }, + }, + h = i("586315"), + p = i("712942"), + v = i("100470"), + m = i("242089"); + class g { + getUnreadCount(e) { + var t = this; + return (0, r._)(function* () { + return yield t._request( + "".concat((0, p.H4)()).concat(f.getUnreadCount.url), + e + ); + })(); + } + getNoticeList(e) { + var t = this; + return (0, r._)(function* () { + var i = "".concat((0, p.H4)()).concat(f.getNoticeList.url), + n = "".concat(i, "_").concat(e.noticeType); + return yield (0, m.O)(n, () => t._request(i, e)); + })(); + } + _request(e, t) { + var i = this; + return (0, r._)(function* () { + try { + var n = yield i._networkClient.post(e, t); + return (0, h.oW)(n); + } catch (e) { + var { ret: r, errmsg: a } = e || {}, + o = r ? Number(r) : v.b.ErrCommon; + return (0, h.wf)(o, null != a ? a : "unknown error"); + } + })(); + } + constructor() { + this._networkClient = d(); + } + } + var _ = (0, n.yh)("mWeb-notice-service"); + class y { + get noticeRepository() { + return this._noticeRepository; + } + constructor() { + this._noticeRepository = new g(); + } + } + }, + 81612: function (e, t, i) { + "use strict"; + i.d(t, { m: () => v, x: () => m }); + var n = i("139646"), + r = i("586315"), + a = i("643590"), + o = i("416105"), + s = i("804274"), + l = i("875649"), + c = i("879976"); + function d() { + var e = new a.y().build({ + headers: { "Content-Type": "application/json" }, + withCredentials: !0, + }); + return (0, c.V)(e), (0, o.mH)(e), (0, s.xP)(e), (0, l.i3)(e), e; + } + var u = { + photoReport: { + hostNameType: i("940140").b_.Default, + url: "/mweb/v1/add_report", + }, + }, + f = i("712942"), + h = i("100470"); + class p { + reportPhoto(e) { + var t = this; + return (0, n._)(function* () { + var i = "".concat((0, f.H4)()).concat(u.photoReport.url); + return yield t._request(i, e); + })(); + } + _request(e, t) { + var i = this; + return (0, n._)(function* () { + try { + return yield i._networkClient.post(e, t), (0, r.ly)(); + } catch (e) { + var { errNo: n, errTips: a } = e || {}, + o = n ? Number(n) : h.b.ErrCommon; + return (0, r.wf)(o, null != a ? a : "unknown error"); + } + })(); + } + constructor() { + this._networkClient = d(); + } + } + var v = (0, i("333597").yh)("mWeb-photo-report-service"); + class m { + get repository() { + return this._repository; + } + constructor() { + this._repository = new p(); + } + } + }, + 104170: function (e, t, i) { + "use strict"; + i.d(t, { + $: function () { + return r; + }, + u: function () { + return n; + }, + }); + var n = (function (e) { + return (e[(e.Like = 1)] = "Like"), (e[(e.Unlike = 2)] = "Unlike"), e; + })({}), + r = (function (e) { + return ( + (e[(e.Image = 9)] = "Image"), + (e[(e.Video = 53)] = "Video"), + (e[(e.Collection = 109)] = "Collection"), + (e[(e.TextArt = 116)] = "TextArt"), + (e[(e.Canvas = 211)] = "Canvas"), + e + ); + })({}); + }, + 85952: function (e, t, i) { + "use strict"; + i.d(t, { + p: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("mWeb-production-service"); + }, + 230467: function (e, t, i) { + "use strict"; + i.d(t, { j: () => w }); + var n = i("139646"), + r = i("789786"), + a = i("366103"), + o = i("643590"), + s = i("416105"), + l = i("804274"), + c = i("453604"), + d = i("875649"), + u = i("879976"); + function f() { + var e = new o.y().build({ + headers: { "Content-Type": "application/json" }, + withCredentials: !0, + }); + return ( + (0, u.V)(e), (0, s.mH)(e), (0, l.xP)(e), (0, c.d)(e), (0, d.e_)(e), e + ); + } + var h = i("940140"), + p = { + getEnableList: { + hostNameType: h.b_.Default, + url: "/lv/v1/user/get_enable_list", + }, + getInviteStatus: { + hostNameType: h.b_.Default, + url: "/mweb/v1/get_invite_status", + }, + postAuthorMarkupInviteCode: { + hostNameType: h.b_.Default, + url: "/mweb/v1/author_markup", + }, + getUserInfo: { + hostNameType: h.b_.Default, + url: "/mweb/v1/get_user_info", + }, + getUgRegisteredInfo: { + hostNameType: h.b_.Default, + url: "/mweb/v1/get_ug_info", + }, + updateUserInfo: { + hostNameType: h.b_.Default, + url: "/lv/v1/user/update", + }, + getBlockStatus: { hostNameType: h.b_.Default, url: "/mweb/v1/block" }, + getFollowList: { + hostNameType: h.b_.Default, + url: "/mweb/v1/get_follow_list", + }, + postFeelGoodRecord: { + hostNameType: h.b_.Default, + url: "/lv/v1/user/feel_good", + }, + }, + v = i("586315"), + m = i("242089"), + g = i("712942"), + _ = i("100470"), + y = i("949274"), + b = i("280166"), + I = i("917598"); + class w { + getEnableList() { + var e = this; + return (0, n._)(function* () { + var t = "".concat((0, g.H4)()).concat(p.getEnableList.url); + return yield (0, + m.O)(t, () => e._request(t, {}, { params: { needCache: !0 } })); + })(); + } + getUgRegisteredInfo() { + var e = this; + return (0, n._)(function* () { + var t = "".concat((0, g.H4)()).concat(p.getUgRegisteredInfo.url); + return yield (0, m.O)(t, () => e._request(t)); + })(); + } + getInviteStatus() { + var e = this; + return (0, n._)(function* () { + var t = "".concat((0, g.Ab)()).concat(p.getInviteStatus.url); + return yield (0, m.O)(t, () => e._request(t)); + })(); + } + getBlockStatus() { + var e = this; + return (0, n._)(function* () { + return yield e._request( + "".concat((0, g.Ab)()).concat(p.getBlockStatus.url) + ); + })(); + } + postAuthorMarkupInviteCode(e) { + var t = this; + return (0, n._)(function* () { + return yield t._request( + "".concat((0, g.H4)()).concat(p.postAuthorMarkupInviteCode.url), + e + ); + })(); + } + getUserInfo(e) { + var t = this; + return (0, n._)(function* () { + return yield t._request( + "".concat((0, g.H4)()).concat(p.getUserInfo.url), + e + ); + })(); + } + updateUserInfo(e) { + var t = this; + return (0, n._)(function* () { + try { + var i, + n, + r = yield t._networkClient.post( + "".concat((0, g.H4)()).concat(p.updateUserInfo.url), + e, + { + headers: { + appid: + null !== + (n = + null === (i = t._environmentService) || void 0 === i + ? void 0 + : i.appId) && void 0 !== n + ? n + : I.L2, + }, + } + ); + return (0, v.oW)(r); + } catch (e) { + var { ret: o, errmsg: s } = e || {}, + l = o ? Number(o) : _.b.ErrCommon, + c = s; + if (l === a.Ou.reviewing) + c = y.ZP.t( + "information_toast_last_in_check", + {}, + "\u66F4\u65B0\u5931\u8D25,\u8BF7\u7B49\u5F85\u4E0A\u6B21\u8D44\u6599\u5BA1\u6838\u901A\u8FC7" + ); + else + c = y.ZP.t( + "result_toast_abnormal_retry", + {}, + "Something went wrong. Try again later." + ); + return (0, v.wf)(l, c); + } + })(); + } + _request(e, t, i) { + var r = this; + return (0, n._)(function* () { + try { + var n = yield r._networkClient.post(e, t, i); + return (0, v.oW)(n); + } catch (e) { + var { ret: a, errmsg: o } = e || {}, + s = a ? Number(a) : _.b.ErrCommon; + return (0, v.wf)(s, null != o ? o : "unknown error"); + } + })(); + } + getFollowList(e) { + var t = this; + return (0, n._)(function* () { + return yield t._request( + "".concat((0, g.H4)()).concat(p.getFollowList.url), + e + ); + })(); + } + setSubmitRecord(e) { + var t = this; + return (0, n._)(function* () { + var i = (0, g.H4)(), + n = "".concat(i).concat(p.postFeelGoodRecord.url); + return yield t._request(n, { + type: a.$B.Set, + questionnaireIds: e.questionnaireIds, + }); + })(); + } + getSubmitRecord(e) { + var t = this; + return (0, n._)(function* () { + var i = (0, g.H4)(), + n = "".concat(i).concat(p.postFeelGoodRecord.url), + r = yield t._request(n, { + type: a.$B.Get, + questionnaireIds: e.questionnaireIds, + }); + return ( + r.ok && + (r.value.hasFinishQuestionnaireMap = (0, l.fs)( + r.value.hasFinishQuestionnaireMap, + l.D1 + )), + r + ); + })(); + } + constructor(e) { + (this._environmentService = e), (this._networkClient = f()); + } + } + w = (0, r.gn)( + [ + (0, r.fM)(0, b.Y), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [void 0 === b.Y ? Object : b.Y]), + ], + w + ); + }, + 758261: function (e, t, i) { + "use strict"; + i.d(t, { h: () => h, P: () => p }); + var n = i("139646"), + r = i("789786"), + a = i("333597"), + o = i("575588"), + s = i("230467"), + l = i("224671"), + c = i("366103"), + d = [l.$7.PublishImage, l.$7.PublishVideo, l.$7.PublishCanvas]; + class u { + getHasMWebUseAuthority() { + var e = this; + return (0, n._)(function* () { + var t = yield e._userRepository.getInviteStatus(); + return !!t.ok && t.value.inviteStatus === c.sN.BIND; + })(); + } + getHasPublishAuthority() { + var e = + arguments.length > 0 && void 0 !== arguments[0] + ? arguments[0] + : d, + t = this; + return (0, n._)(function* () { + if ( + [] + .concat(e) + .every((e) => + [l.$7.PublishVideo, l.$7.PublishImage].includes(e) + ) + ) + return !0; + var i = yield t._userRepository.getEnableList(); + return ( + !!i.ok && + [] + .concat(e) + .some((e) => + i.value.enableList.some( + (t) => t.whitelistType === e && t.isEnable + ) + ) + ); + })(); + } + isDreaminaPublisher() { + var e = this; + return (0, n._)(function* () { + var t = yield e._userRepository.getEnableList(); + if (t.ok) { + var i = !1; + return ( + t.value.enableList.forEach((e) => { + e.isEnable && d.includes(e.whitelistType) && (i = !0); + }), + i + ); + } + return !1; + })(); + } + constructor(e) { + this._userRepository = e; + } + } + var f = i("14606"), + h = (0, a.yh)("mWeb-user-service"); + class p { + get repository() { + return this._repository; + } + get aggregate() { + return this._aggregate; + } + getDreaminaUserInfo() { + var e = this; + return (0, n._)(function* () { + var t = yield e._commonConfigService.aggregate.getCommonConfigByKey( + "secUid", + !0 + ); + if (!t) throw Error(); + return e.repository.getUserInfo({ secUid: t }); + })(); + } + getIsInternalNet() { + var e = this; + return (0, n._)(function* () { + var t = yield e._commonConfigService.repository.getCommonConfig(!1); + if (t.ok) return t.value.isInternal; + throw Error(t.msg); + })(); + } + constructor(e, t) { + (this._instantiationService = e), + (this._commonConfigService = t), + (this._repository = this._instantiationService.createInstance(s.j)), + (this._aggregate = new u(this._repository)); + } + } + p = (0, r.gn)( + [ + (0, r.fM)(0, o.T), + (0, r.fM)(1, f.A), + (0, r.w6)("design:type", Function), + (0, r.w6)("design:paramtypes", [ + void 0 === o.T ? Object : o.T, + void 0 === f.A ? Object : f.A, + ]), + ], + p + ); + }, + 588735: function (e, t, i) { + "use strict"; + i.d(t, { + Ix: function () { + return r; + }, + sQ: function () { + return o; + }, + sb: function () { + return a; + }, + wd: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e[(e.Normal = 0)] = "Normal"), + (e[(e.Like = 1)] = "Like"), + (e[(e.Dislike = 2)] = "Dislike"), + e + ); + })({}), + r = (function (e) { + return (e[(e.Like = 1)] = "Like"), (e[(e.UnLike = 2)] = "UnLike"), e; + })({}), + a = (function (e) { + return ( + (e[(e.Pending = -1)] = "Pending"), + (e[(e.Success = 0)] = "Success"), + (e[(e.RateLimit = 1)] = "RateLimit"), + (e[(e.NotInvited = 2)] = "NotInvited"), + (e[(e.NoCredit = 3)] = "NoCredit"), + (e[(e.TnsNotPass = 4)] = "TnsNotPass"), + (e[(e.ErrPunishLimitAIGenerate = 1018)] = + "ErrPunishLimitAIGenerate"), + (e[(e.ErrSharkNotPass = 1019)] = "ErrSharkNotPass"), + (e[(e.VideoNoAudioEffectGenerate = 4007)] = + "VideoNoAudioEffectGenerate"), + (e[(e.ErrRateLimitForNonCommercialRegion = 10020)] = + "ErrRateLimitForNonCommercialRegion"), + e + ); + })({}), + o = (function (e) { + return ( + (e[(e.ImageSecurityBlock = 2039)] = "ImageSecurityBlock"), + (e[(e.ImageCopyrightBlock = 2048)] = "ImageCopyrightBlock"), + (e[(e.TextSecurityBlock = 2038)] = "TextSecurityBlock"), + (e[(e.TextCopyrightBlock = 2050)] = "TextCopyrightBlock"), + (e[(e.VideoSecurityBlock = 2042)] = "VideoSecurityBlock"), + (e[(e.AudioSecurityBlock = 2044)] = "AudioSecurityBlock"), + (e[(e.SecurityNotRetry = 2043)] = "SecurityNotRetry"), + (e[(e.SecurityNotPass = 2035)] = "SecurityNotPass"), + (e[(e.ExternalNoCredits = 4001)] = "ExternalNoCredits"), + (e[(e.VideoTemplateImageNotMatch = 4107)] = + "VideoTemplateImageNotMatch"), + (e[(e.ICDetectVideoNoAvailablePerson = 4101)] = + "ICDetectVideoNoAvailablePerson"), + (e[(e.ICDetectVideoSizeTooSmall = 4102)] = + "ICDetectVideoSizeTooSmall"), + (e[(e.ICDetectVideoSizeTooLarge = 4103)] = + "ICDetectVideoSizeTooLarge"), + (e[(e.ICDetectVideoDurationTooShort = 4104)] = + "ICDetectVideoDurationTooShort"), + (e[(e.ICDetectVideoDurationTooLong = 4105)] = + "ICDetectVideoDurationTooLong"), + (e[(e.ICDetectVideoScaleError = 4106)] = "ICDetectVideoScaleError"), + (e[(e.RateLimit = 1057)] = "RateLimit"), + (e[(e.InputAudioContainEnglishContent = 2056)] = + "InputAudioContainEnglishContent"), + e + ); + })({}); + }, + 675601: function (e, t, i) { + "use strict"; + i.d(t, { + g: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("dreamina-video-generate-data-service"); + }, + 971745: function (e, t, i) { + "use strict"; + i.d(t, { + $: function () { + return a; + }, + }); + var n = i(591586), + r = i(172834); + class a { + _getDraft() { + var e = new r.DADraft(); + if (this._sourceDraftContent) { + for ( + var t = function (e) { + var t = i.componentList.find((t) => t.id === e); + if (!t) return "break"; + n.unshift(t), (a = t.parentId); + }, + i = new r.DADraft({ JSONString: this._sourceDraftContent }), + n = [], + a = i.mainComponentId, + o = a; + o && "break" !== t(o); + o = a + ); + this._isReplaceMain && n.pop(), + n.forEach((t) => { + e.setMainComponent(t); + }); + } + return e.setMainComponent(this._mainComponent), e; + } + _getMetadata() { + var e = new r.DADraftMetadata(); + return ( + (e.createdPlatform = r.DADraftCreatedPlatform.WEB), + (e.createdTimeInMs = Date.now().toString()), + e + ); + } + constructor(e) { + if ( + ((this._submitId = e.submitId), + (this._templateId = e.templateId), + (this._subTemplateId = e.subTemplateId), + (this._sourceDraftContent = e.draftContent), + (this._isReplaceMain = e.isRegenerate), + e.reportParam) + ) + try { + this._metricsExtra = JSON.stringify(e.reportParam); + } catch (e) { + n.t.error( + "ParamsConverter: ".concat( + this.constructor.name, + " JSON.stringify error" + ), + e + ); + } + (this._mainComponent = this.getComponent(e)), + (this._mainComponent.metaData = this._getMetadata()); + } + } + }, + 868144: function (e, t, i) { + "use strict"; + i.d(t, { + BB: function () { + return s; + }, + qb: function () { + return l; + }, + sc: function () { + return o; + }, + }); + var n = i(128468), + r = i(733787), + a = i(172834), + o = { + [n.JU.Workbench]: a.DAAIGCMode.workbench, + [n.JU.Canvas]: a.DAAIGCMode.canvas, + [n.JU.Character]: a.DAAIGCMode.character, + [n.JU.Story]: a.DAAIGCMode.story, + [n.JU.AIGCDraft]: a.DAAIGCMode.aigcDraft, + [n.JU.PostEditor]: a.DAAIGCMode.postEditor, + [n.JU.CreationAgent]: a.DAAIGCMode.creationAgent, + }; + function s(e) { + return Object.entries(r.IM) + .map((t) => { + var [i, n] = t; + return { key: i, diff: Math.abs(e - n) }; + }) + .sort((e, t) => e.diff - t.diff)[0].key; + } + function l() { + return Math.floor(0x7fffffff * Math.random()); + } + }, + 106621: function (e, t, i) { + "use strict"; + i.d(t, { + C: function () { + return p; + }, + }); + var n = i(54969), + r = i(868144), + a = i(172834), + o = i(128468), + s = i(803188), + l = i(872432), + c = i(593233), + d = i(384295), + u = i(675679), + f = i(43637); + class h { + convert() { + var e, + t, + { + abilities: i, + ability: n, + v2vOpt: r, + textToVideoParams: a, + } = (0, s.$O)(), + o = (0, l.e)(this._params.input.videoGenInputs); + return ( + (a.videoGenInputs = [o]), + (a.modelReqKey = this._params.input.modelReqKey), + (a.videoAspectRatio = this._params.input.videoAspectRatio), + (o.originHistoryId = this._params.originHistoryId), + (o.v2vOpt = r), + (r.insertFrame = (0, c.I)( + null === (e = this._params.input.videoGenInputs.v2vOpt) || + void 0 === e + ? void 0 + : e.insertFrame + )), + (r.avMix = (0, d.j)( + null === (t = this._params.input.videoGenInputs.v2vOpt) || + void 0 === t + ? void 0 + : t.avMix + )), + (n.scene = this._params.scene), + (n.videoTaskExtra = (0, u.a)(this._params.taskPayload.taskExtra)), + (n.videoRefParams = (0, f.o)(this._params)), + i + ); + } + constructor(e) { + this._params = e; + } + } + class p extends n.l { + getComponent(e) { + var t, + i, + n = new a.DAVideoBaseComponent(); + return ( + (n.generateType = a.DAVideoGenerateType.genVideo), + (n.aigcMode = + null !== + (i = + r.sc[ + null !== (t = e.mode) && void 0 !== t ? t : o.JU.Workbench + ]) && void 0 !== i + ? i + : a.DAAIGCMode.workbench), + (n.abilities = new h(e).convert()), + (n.processType = a.DAVideoProcessType.InsertFrame), + n + ); + } + } + }, + 611422: function (e, t, i) { + "use strict"; + i.d(t, { + F: function () { + return v; + }, + }); + var n = i(625572), + r = i(54969), + a = i(868144), + o = i(172834), + s = i(324319), + l = i(913390), + c = i(599045), + d = i(43212), + u = i(763217), + f = i(770449), + h = i(128468); + class p { + convert() { + var { v2vOpt: e, i2vOpt: t } = this._params.input.videoGenInputs, + i = null == e ? void 0 : e.lipSyncUserVideo, + r = null == t ? void 0 : t.realmanAvatar, + h = null != i ? i : r, + p = null == h ? void 0 : h.ttsInfo, + v = (0, s.mi)(p), + m = new o.DAVideoGenerateAbilities(); + (m.lipSync = v), + (v.audio = (0, l.i)( + { + videoId: + null !== + (b = + null == h + ? void 0 + : null === (_ = h.originAudio) || void 0 === _ + ? void 0 + : _.vid) && void 0 !== b + ? b + : "", + duration: + null !== + (I = + null == h + ? void 0 + : null === (y = h.originAudio) || void 0 === y + ? void 0 + : y.duration) && void 0 !== I + ? I + : 0, + }, + { + sourceFrom: + (null == p ? void 0 : p.sourceType) === c.M.LocalFile + ? o.DAResourceSourceFrom.upload + : o.DAResourceSourceFrom.produced, + name: (0, s.IM)(p), + } + )); + var { videoMode: g } = this._params.input.videoGenInputs; + if (i) { + var _, + y, + b, + I, + w, + x, + S, + M, + C, + { audioBeforeConversion: T } = i; + (v.referenceType = o.DALipSyncReferenceType.video), + (v.video = (0, d.E)(i.originVideo)), + (v.mode = + null !== (S = (0, u.M)(g)) && void 0 !== S + ? S + : o.DALipSyncMode.standard), + (v.supportedModes = + null !== + (M = + null === (x = i.supportedModes) || void 0 === x + ? void 0 + : null === (w = x.map(u.M)) || void 0 === w + ? void 0 + : w.filter((e) => void 0 !== e)) && void 0 !== M + ? M + : [o.DALipSyncMode.standard]), + (v.audioBeforeConversion = (0, l.i)( + (0, n._)( + { + videoId: + null !== (C = null == T ? void 0 : T.vid) && void 0 !== C + ? C + : "", + }, + T + ) + )); + } + if (r) { + var A, + k, + P, + E, + { audioBeforeConversion: D } = r; + (v.referenceType = o.DALipSyncReferenceType.image), + (v.image = (0, f.QL)(r.originImage)), + (v.mode = (0, u.M)(g)), + (v.audioBeforeConversion = (0, l.i)( + (0, n._)( + { + videoId: + null !== (P = null == D ? void 0 : D.vid) && void 0 !== P + ? P + : "", + }, + D + ) + )), + (v.supportedModes = + null === + (k = + null !== (E = r.supportedModes) && void 0 !== E + ? E + : [g]) || void 0 === k + ? void 0 + : null === (A = k.map(u.M)) || void 0 === A + ? void 0 + : A.filter((e) => void 0 !== e)); + } + return (v.seed = (0, a.qb)().toString()), m; + } + constructor(e) { + this._params = e; + } + } + class v extends r.l { + getComponent(e) { + var t, + i, + n = new o.DAVideoBaseComponent(); + return ( + (n.generateType = o.DAVideoGenerateType.lipSync), + (n.aigcMode = + null !== + (i = + a.sc[ + null !== (t = e.mode) && void 0 !== t ? t : h.JU.Workbench + ]) && void 0 !== i + ? i + : o.DAAIGCMode.workbench), + (n.abilities = new p(e).convert()), + n + ); + } + } + }, + 724196: function (e, t, i) { + "use strict"; + i.d(t, { + D: function () { + return m; + }, + }); + var n = i(625572), + r = i(54969), + a = i(868144), + o = i(172834), + s = i(324319), + l = i(869919), + c = i(913390), + d = i(599045), + u = i(43212), + f = i(763217), + h = i(43637), + p = i(128468); + class v { + convert() { + var e, + t, + i, + r, + p, + v, + m, + g = + null === (e = this._params.input.videoGenInputs.v2vOpt) || + void 0 === e + ? void 0 + : e.lipSync, + _ = null == g ? void 0 : g.ttsInfo, + y = new o.DAVideoGenerateAbilities(), + b = (0, s.mi)(_); + (y.lipSync = b), (b.referenceType = o.DALipSyncReferenceType.aiVideo); + var { videoMode: I } = this._params.input.videoGenInputs, + w = + null === (t = this._params.input.videoGenInputs.v2vOpt) || + void 0 === t + ? void 0 + : t.avMix; + return ( + w && + (w.scene === l.zk.AudioEffect + ? (b.videoEffectAudio = (0, c.i)( + { videoId: w.audioVid }, + { sourceFrom: o.DAResourceSourceFrom.produced } + )) + : (b.videoBgmAudio = (0, c.i)( + { videoId: w.audioVid }, + { sourceFrom: o.DAResourceSourceFrom.produced } + ))), + g && + ((b.audio = (0, c.i)( + { videoId: g.audioVid }, + { + sourceFrom: + (null == _ ? void 0 : _.sourceType) === d.M.LocalFile + ? o.DAResourceSourceFrom.upload + : o.DAResourceSourceFrom.produced, + name: (0, s.IM)(_), + } + )), + (b.video = (0, u.E)(g.originVideo)), + b.video && + ((b.video.sourceFrom = o.DAResourceSourceFrom.produced), + (b.video.aigcVideo = new o.DAAIGCVideo()), + (b.video.aigcVideo.itemId = g.videoItemId)), + (b.audioBeforeConversion = (0, c.i)( + (0, n._)( + { + videoId: + null !== + (v = + null === (i = g.audioBeforeConversion) || void 0 === i + ? void 0 + : i.vid) && void 0 !== v + ? v + : "", + }, + g.audioBeforeConversion + ) + )), + (b.supportedModes = + null === + (p = + null !== (m = g.supportedModes) && void 0 !== m + ? m + : [I]) || void 0 === p + ? void 0 + : null === (r = p.map(f.M)) || void 0 === r + ? void 0 + : r.filter((e) => void 0 !== e))), + (b.seed = (0, a.qb)().toString()), + (b.mode = o.DALipSyncMode.standard), + (b.supportedModes = [o.DALipSyncMode.standard]), + (b.videoRefParams = (0, h.o)(this._params)), + y + ); + } + constructor(e) { + this._params = e; + } + } + class m extends r.l { + getComponent(e) { + var t, + i, + n = new o.DAVideoBaseComponent(); + return ( + (n.generateType = o.DAVideoGenerateType.lipSync), + (n.aigcMode = + null !== + (i = + a.sc[ + null !== (t = e.mode) && void 0 !== t ? t : p.JU.Workbench + ]) && void 0 !== i + ? i + : o.DAAIGCMode.workbench), + (n.abilities = new v(e).convert()), + (n.processType = o.DAVideoProcessType.LipSync), + n + ); + } + } + }, + 992393: function (e, t, i) { + "use strict"; + i.d(t, { + s: function () { + return v; + }, + }); + var n = i(625572), + r = i(639880), + a = i(54969), + o = i(868144), + s = i(172834), + l = i(160706), + c = i(243090), + d = i(43212), + u = i(128468), + f = i(43637), + h = i(384295); + class p { + convert() { + var e, + t = new s.DAVideoGenerateAbilities(), + i = new s.DAVideoAudioEffectAbility(); + t.videoAudioEffect = i; + var n = new s.DAVideoRefParam(); + return ( + (n.generateType = s.DAAIGCGenerateType.videoAudioEffect), + (i.videoRefParams = n), + (n.originHistoryId = this._params.videoAudioInput.originHistoryId), + (n.itemId = this._params.videoAudioInput.originItemId), + (i.originHistoryId = this._params.videoAudioInput.originHistoryId), + (i.originItemId = this._params.videoAudioInput.originItemId), + (i.videoResource = (0, d.E)( + this._params.videoAudioInput.originVideoDetail + )), + (i.videoRefParams = (0, f.o)(this._params.videoAudioInput)), + (i.avMix = (0, h.j)( + null === (e = this._params.v2vOpt) || void 0 === e + ? void 0 + : e.avMix + )), + t + ); + } + constructor(e) { + this._params = e; + } + } + class v extends a.l { + getComponent(e) { + var t, + i, + n = new s.DAVideoBaseComponent(); + return ( + (n.generateType = s.DAVideoGenerateType.videoAudioEffect), + (n.aigcMode = + null !== + (i = + o.sc[ + null !== (t = e.mode) && void 0 !== t ? t : u.JU.Workbench + ]) && void 0 !== i + ? i + : s.DAAIGCMode.workbench), + (n.abilities = new p(e).convert()), + n + ); + } + constructor(e) { + var t, i; + super( + (0, r._)((0, n._)({}, e), { + reportParam: (0, l.Z)( + null !== (t = e.reportParam) && void 0 !== t ? t : {}, + (0, c.D)( + null !== (i = null == e ? void 0 : e.taskExtra) && + void 0 !== i + ? i + : "{}", + {} + ) + ), + }) + ); + } + } + }, + 868725: function (e, t, i) { + "use strict"; + i.d(t, { + V: function () { + return v; + }, + }); + var n = i(625572), + r = i(639880), + a = i(54969), + o = i(868144), + s = i(172834), + l = i(243090), + c = i(160706), + d = i(770449), + u = i(128468), + f = i(384295), + h = i(43637); + class p { + convert() { + var e, + t, + i = new s.DAVideoGenerateAbilities(), + n = new s.DAVideoBGMAbility(); + return ( + (n.duration = this._params.input.duration), + (n.tags = + null === (e = this._params.input.tags) || void 0 === e + ? void 0 + : e.map((e) => { + var t = new s.DAAudioTag(); + return (t.key = e.key), (t.name = e.name), t; + })), + (n.originHistoryId = this._params.input.originHistoryId), + (n.originItemId = this._params.input.originItemId), + (n.avMix = (0, f.j)( + null === (t = this._params.v2vOpt) || void 0 === t + ? void 0 + : t.avMix + )), + (n.firstFrameImage = (0, d.QL)(this._params.input.videoFirstFrame)), + (n.videoRefParams = (0, h.o)(this._params.input)), + (i.videoBGM = n), + i + ); + } + constructor(e) { + this._params = e; + } + } + class v extends a.l { + getComponent(e) { + var t, + i, + n = new s.DAVideoBaseComponent(); + return ( + (n.generateType = s.DAVideoGenerateType.videoBgm), + (n.aigcMode = + null !== + (i = + o.sc[ + null !== (t = e.mode) && void 0 !== t ? t : u.JU.Workbench + ]) && void 0 !== i + ? i + : s.DAAIGCMode.workbench), + (n.abilities = new p(e).convert()), + (n.processType = s.DAVideoProcessType.VideoBGM), + n + ); + } + constructor(e) { + var t, i; + super( + (0, r._)((0, n._)({}, e), { + reportParam: (0, c.Z)( + null !== (t = e.reportParam) && void 0 !== t ? t : {}, + (0, l.D)( + null !== (i = null == e ? void 0 : e.taskExtra) && + void 0 !== i + ? i + : "{}", + {} + ) + ), + }) + ); + } + } + }, + 179419: function (e, t, i) { + "use strict"; + i.d(t, { + Q: function () { + return p; + }, + }); + var n = i(54969), + r = i(868144), + a = i(172834), + o = i(128468), + s = i(803188), + l = i(872432), + c = i(766079), + d = i(384295), + u = i(675679), + f = i(43637); + class h { + convert() { + var e, + t, + { + abilities: i, + ability: n, + v2vOpt: r, + textToVideoParams: a, + } = (0, s.$O)(), + o = (0, l.e)(this._params.input.videoGenInputs); + return ( + (a.videoGenInputs = [o]), + (a.modelReqKey = this._params.input.modelReqKey), + (a.videoAspectRatio = this._params.input.videoAspectRatio), + (o.originHistoryId = this._params.originHistoryId), + (o.v2vOpt = r), + (r.extend = (0, c.o)( + null === (e = this._params.input.videoGenInputs.v2vOpt) || + void 0 === e + ? void 0 + : e.extend + )), + (r.avMix = (0, d.j)( + null === (t = this._params.input.videoGenInputs.v2vOpt) || + void 0 === t + ? void 0 + : t.avMix + )), + (n.scene = this._params.scene), + (n.videoTaskExtra = (0, u.a)(this._params.taskPayload.taskExtra)), + (n.videoRefParams = (0, f.o)(this._params)), + i + ); + } + constructor(e) { + this._params = e; + } + } + class p extends n.l { + getComponent(e) { + var t, + i, + n = new a.DAVideoBaseComponent(); + return ( + (n.generateType = a.DAVideoGenerateType.genVideo), + (n.aigcMode = + null !== + (i = + r.sc[ + null !== (t = e.mode) && void 0 !== t ? t : o.JU.Workbench + ]) && void 0 !== i + ? i + : a.DAAIGCMode.workbench), + (n.abilities = new h(e).convert()), + (n.processType = a.DAVideoProcessType.Extend), + n + ); + } + } + }, + 19205: function (e, t, i) { + "use strict"; + i.d(t, { b: () => h }); + var n = i("54969"), + r = i("868144"), + a = i("172834"), + o = i("733787"), + s = { + [o.T8.Normal]: a.DAPriority.Normal, + [o.T8.Relax]: a.DAPriority.Relax, + }; + function l(e) { + return e ? s[e] : void 0; + } + a.DAPriority.Normal, o.T8.Normal, a.DAPriority.Relax, o.T8.Relax; + var c = i("128468"), + d = i("675679"), + u = i("872432"); + class f { + convert() { + var e, + t = new a.DAVideoGenerateAbilities(), + i = new a.DAGenVideoAbility(), + n = new a.DAText2VideoParams(), + { input: r, scene: o, taskPayload: s } = this._params, + { seed: c, videoAspectRatio: u, modelReqKey: f } = r, + h = this._getVideoGenInput(r); + return ( + (n.videoGenInputs = [h]), + (n.seed = c), + (n.modelReqKey = f), + (n.priority = l(this._params.input.priority)), + (n.videoAspectRatio = + null != u + ? u + : this._getImageAspectRatio( + null !== (e = h.firstFrameImage) && void 0 !== e + ? e + : h.endFrameImage + )), + (i.text2VideoParams = n), + (i.scene = o), + (i.videoTaskExtra = (0, d.a)(s.taskExtra)), + (t.genVideo = i), + t + ); + } + _getImageAspectRatio(e) { + if (!!e) { + var { width: t, height: i } = e; + return (0, r.BB)(t / i); + } + } + _getVideoGenInput(e) { + var { videoGenInputs: t } = e; + return (0, u.e)(t); + } + constructor(e) { + this._params = e; + } + } + class h extends n.l { + getComponent(e) { + var t, + i, + n = new a.DAVideoBaseComponent(); + return ( + (n.generateType = a.DAVideoGenerateType.genVideo), + (n.aigcMode = + null !== + (i = + r.sc[ + null !== (t = e.mode) && void 0 !== t ? t : c.JU.Workbench + ]) && void 0 !== i + ? i + : a.DAAIGCMode.workbench), + (n.abilities = new f(e).convert()), + (n.processType = a.DAVideoProcessType.VideoGen), + n + ); + } + } + }, + 54969: function (e, t, i) { + "use strict"; + i.d(t, { + l: function () { + return l; + }, + }); + var n = i(625572), + r = i(639880), + a = i(172834), + o = i(971745), + s = i(160706); + class l extends o.$ { + convert() { + var e = this._getDraft(), + t = e.findRootComponent(); + return { + submitId: this._submitId, + metricsExtra: this._metricsExtra, + draftContent: e.toJSONString(), + extend: { + mVideoCommerceInfo: this._commerceInfo, + templateId: this._templateId, + rootModel: this._getRootModel(t), + historyOption: this._historyOption, + }, + }; + } + _getRootModel(e) { + if (e instanceof a.DAVideoBaseComponent) { + var t, i, n; + return null === (n = e.abilities) || void 0 === n + ? void 0 + : null === (i = n.genVideo) || void 0 === i + ? void 0 + : null === (t = i.text2VideoParams) || void 0 === t + ? void 0 + : t.modelReqKey; + } + } + constructor(e) { + var t, i, a; + super( + (0, r._)((0, n._)({}, e), { + reportParam: (0, s.Z)( + null !== (i = e.reportParam) && void 0 !== i ? i : {}, + null !== + (a = + null === (t = e.taskPayload) || void 0 === t + ? void 0 + : t.taskExtra) && void 0 !== a + ? a + : {} + ), + }) + ), + (this._commerceInfo = e.commerceInfo), + (this._historyOption = e.historyOption); + } + } + }, + 280275: function (e, t, i) { + "use strict"; + i.d(t, { + _: function () { + return p; + }, + }); + var n = i(54969), + r = i(868144), + a = i(172834), + o = i(128468), + s = i(803188), + l = i(872432), + c = i(570697), + d = i(384295), + u = i(675679), + f = i(43637); + class h { + convert() { + var e, + t, + { + abilities: i, + ability: n, + v2vOpt: r, + textToVideoParams: a, + } = (0, s.$O)(), + o = (0, l.e)(this._params.input.videoGenInputs); + return ( + (a.videoGenInputs = [o]), + (a.modelReqKey = this._params.input.modelReqKey), + (a.videoAspectRatio = this._params.input.videoAspectRatio), + (o.originHistoryId = this._params.originHistoryId), + (o.v2vOpt = r), + (r.superResolution = (0, c.N)( + null === (e = this._params.input.videoGenInputs.v2vOpt) || + void 0 === e + ? void 0 + : e.superResolution + )), + (r.avMix = (0, d.j)( + null === (t = this._params.input.videoGenInputs.v2vOpt) || + void 0 === t + ? void 0 + : t.avMix + )), + (n.scene = this._params.scene), + (n.videoTaskExtra = (0, u.a)(this._params.taskPayload.taskExtra)), + (n.videoRefParams = (0, f.o)(this._params)), + i + ); + } + constructor(e) { + this._params = e; + } + } + class p extends n.l { + getComponent(e) { + var t, + i, + n = new a.DAVideoBaseComponent(); + return ( + (n.generateType = a.DAVideoGenerateType.genVideo), + (n.aigcMode = + null !== + (i = + r.sc[ + null !== (t = e.mode) && void 0 !== t ? t : o.JU.Workbench + ]) && void 0 !== i + ? i + : a.DAAIGCMode.workbench), + (n.abilities = new h(e).convert()), + (n.processType = a.DAVideoProcessType.SR), + n + ); + } + } + }, + 790915: function (e, t, i) { + "use strict"; + i.d(t, { + r: function () { + return f; + }, + }); + var n = i(54969), + r = i(868144), + a = i(172834), + o = i(128468), + s = i(803188), + l = i(295976), + c = i(675679), + d = i(43637); + class u { + convert() { + var e, + { + abilities: t, + ability: i, + v2vOpt: n, + textToVideoParams: r, + } = (0, s.$O)(); + return ( + (r.seed = this._params.input.seed), + (n.videoTemplate = (0, l.f)( + null === (e = this._params.input.videoGenInputs.v2vOpt) || + void 0 === e + ? void 0 + : e.videoTemplate + )), + (i.scene = this._params.scene), + (i.videoTaskExtra = (0, c.a)(this._params.taskPayload.taskExtra)), + (i.videoRefParams = (0, d.o)(this._params)), + t + ); + } + constructor(e) { + this._params = e; + } + } + class f extends n.l { + getComponent(e) { + var t, + i, + n = new a.DAVideoBaseComponent(); + return ( + (n.generateType = a.DAVideoGenerateType.videoTemplate), + (n.aigcMode = + null !== + (i = + r.sc[ + null !== (t = e.mode) && void 0 !== t ? t : o.JU.Workbench + ]) && void 0 !== i + ? i + : a.DAAIGCMode.workbench), + (n.abilities = new u(e).convert()), + n + ); + } + } + }, + 782650: function (e, t, i) { + "use strict"; + i.d(t, { + Ks: () => ek, + jc: () => eP, + $q: () => eR, + Lr: () => eA, + ZF: () => eE, + }); + var n = i("625572"), + r = i("639880"), + a = i("820266"), + o = i("804274"), + s = i("243090"), + l = i("43169"), + c = i("283349"), + d = i("243302"), + u = i("699813"), + f = i("56168"), + h = i("938678"), + p = i("160706"), + v = i("626173"), + m = (function (e) { + return ( + (e.VALIDATE = "validate"), + (e.PREPROCESS = "preprocess"), + (e.FORMAT = "format"), + e + ); + })({}); + class g { + constructor(e) { + this.stage = e; + } + } + class _ extends g { + execute(e) { + this.preprocess(e); + } + constructor() { + super("preprocess"); + } + } + class y extends g { + execute(e) { + this.validate(e); + } + constructor() { + super("validate"); + } + } + class b extends g { + execute(e) { + this.executeFormat(e); + } + constructor() { + super("format"); + } + } + var I = i("591586"), + w = i("950835"); + class x { + addProcessor(e) { + var { stage: t } = e, + i = this._processorsMap.get(t) || []; + return this._processorsMap.set(t, [...i, e]), this; + } + addProcessors(e) { + for (var t of e) this.addProcessor(t); + return this; + } + executeFormatting(e) { + var t = + arguments.length > 1 && void 0 !== arguments[1] + ? arguments[1] + : (0, w.Vj)(), + i = arguments.length > 2 && void 0 !== arguments[2] && arguments[2], + n = { + inputData: (0, h.I)(e), + outputData: void 0, + errors: [], + updateInputData: (e) => { + (0, p.Z)(n.inputData, e); + }, + updateOutputData: (e) => { + if (!n.outputData) { + n.outputData = (0, h.I)(e); + return; + } + (0, p.Z)(n.outputData, e); + }, + }; + if ( + (this._runStage(m.VALIDATE, n), + this._runStage(m.PREPROCESS, n), + this._runStage(m.FORMAT, n), + !n.outputData && + n.errors.push(Error("Format error. Cause output is nil.")), + n.errors.length > 0 || !n.outputData) + ) { + var r = AggregateError(n.errors); + throw ( + (!i && + (I.t.error( + "FormattedDataPipeline[" + .concat(this._name, "][summary][") + .concat(t, "]\n"), + (0, v.Z)(n, ["inputData", "outputData"]) + ), + n.errors.forEach((e) => { + I.t.error( + "FormattedDataPipeline[" + .concat(this._name, "][") + .concat(t, "]\n"), + e + ); + })), + r) + ); + } + return n.outputData; + } + _runStage(e, t) { + for (var i of this._processorsMap.get(e) || []) + try { + i.execute(t); + } catch (r) { + var n = r instanceof Error ? r : Error(String(r)); + (n.message = "FormattedDataPipeline[" + .concat(this._name, "][") + .concat(e, "][") + .concat(i.constructor.name, "]: \n") + .concat(n.message)), + t.errors.push(n); + } + } + constructor(e) { + (this._name = e), (this._processorsMap = new Map()); + } + } + class S extends y { + validate(e) { + var { inputData: t } = e, + { generateType: i } = t; + !(0, c.w)(i) && + (0, u.ss)("Video record can only be created from video type"); + } + } + var M = i("552607"); + class C extends _ { + preprocess(e) { + var { + inputData: { draftContent: t }, + } = e; + if (!t) return; + var i = (0, M.DN)(t), + n = (0, M.Zu)(t), + r = (0, M.Ij)(i), + a = (0, M.Ij)(n); + if (!!r && !!a) + e.updateInputData({ + firstGenerateType: r, + generateType: a, + task: { firstGenerateType: r }, + }); + } + } + class T extends _ { + preprocess(e) { + var t, + { inputData: i } = e; + ek(null === (t = i.itemList) || void 0 === t ? void 0 : t[0], { + draftContent: i.draftContent, + draftResources: i.resources, + }); + } + } + var A = i("172834"), + k = i("733787"), + P = i("913390"), + E = i("43212"), + D = i("270853"), + R = i("869919"); + function N(e) { + var t, + i, + n, + r, + a, + o, + { abilities: s } = e; + if ( + null == s + ? void 0 + : null === (t = s.genVideo) || void 0 === t + ? void 0 + : t.scene + ) + return s.genVideo.scene; + if (e.generateType === A.DAVideoGenerateType.videoTemplate) + return R.eA.VideoTemplate; + var l = null === (i = e.abilities) || void 0 === i ? void 0 : i.lipSync; + switch (null == l ? void 0 : l.referenceType) { + case A.DALipSyncReferenceType.aiVideo: + return R.eA.LipSync; + case A.DALipSyncReferenceType.image: + return R.eA.LipSyncImage; + case A.DALipSyncReferenceType.video: + return R.eA.LipSyncUserVideo; + } + return ( + null === (r = e.abilities) || void 0 === r + ? void 0 + : null === (n = r.videoBGM) || void 0 === n + ? void 0 + : n.originItemId + ) + ? R.eA.VideoBGM + : ( + null === (o = e.abilities) || void 0 === o + ? void 0 + : null === (a = o.videoAudioEffect) || void 0 === a + ? void 0 + : a.originItemId + ) + ? R.eA.VideoAudioEffect + : void 0; + } + class L extends b { + executeFormat(e) { + var { + inputData: { draftContent: t, modelInfo: i }, + } = e, + n = (0, M.Zu)(t), + r = (0, M.DN)(t); + if (!!n) + e.updateOutputData({ + videoAspectRatio: this._getVideoAspectRatioFromComponent(r), + seed: this._getSeedFromComponent(n), + taskScene: this._getTaskSceneFromComponent(n), + modelReqKey: this._getModelReqKeyFromComponent(r), + videoModelConfig: i, + }); + } + _getVideoAspectRatioFromComponent(e) { + var t, i, n; + if (!!e) + return null == e + ? void 0 + : null === (n = e.abilities) || void 0 === n + ? void 0 + : null === (i = n.genVideo) || void 0 === i + ? void 0 + : null === (t = i.text2VideoParams) || void 0 === t + ? void 0 + : t.videoAspectRatio; + } + _getSeedFromComponent(e) { + var t, i, n; + return null == e + ? void 0 + : null === (n = e.abilities) || void 0 === n + ? void 0 + : null === (i = n.genVideo) || void 0 === i + ? void 0 + : null === (t = i.text2VideoParams) || void 0 === t + ? void 0 + : t.seed; + } + _getTaskSceneFromComponent(e) { + return N(e); + } + _getModelReqKeyFromComponent(e) { + var t, i, n; + if (!!e) + return null == e + ? void 0 + : null === (n = e.abilities) || void 0 === n + ? void 0 + : null === (i = n.genVideo) || void 0 === i + ? void 0 + : null === (t = i.text2VideoParams) || void 0 === t + ? void 0 + : t.modelReqKey; + } + } + var j = i("763217"), + O = i("295976"), + B = i("266352"), + F = i("324319"); + function U(e, t) { + var i, + n, + r, + a, + o, + s, + l = null == e ? void 0 : e.vid; + if (!l) return; + var c = + null == t + ? void 0 + : null === (i = t.find((e) => e.key === l)) || void 0 === i + ? void 0 + : i.videoInfo; + if (!!c) + return { + vid: l, + duration: null !== (a = c.duration) && void 0 !== a ? a : 0, + fileId: l, + fileHash: l, + url: + null !== + (o = + null === (n = c.originVideo) || void 0 === n + ? void 0 + : n.videoUrl) && void 0 !== o + ? o + : "", + format: + null !== + (s = + null === (r = c.originVideo) || void 0 === r + ? void 0 + : r.format) && void 0 !== s + ? s + : "", + }; + } + var G = i("593233"), + z = i("570697"), + V = i("766079"); + function W(e) { + if (!!e) { + var t = new A.DAVideoGenV2VLabSr(); + return ( + (t.enable = !0), + (t.srFps = e.srFps), + (t.srDurationMs = e.srDurationMs), + t + ); + } + } + function Z(e) { + var t, i, n; + if (!!e) + return { + enable: null !== (t = e.enable) && void 0 !== t && t, + srFps: Number(null !== (i = e.srFps) && void 0 !== i ? i : 0), + srDurationMs: Number( + null !== (n = e.srDurationMs) && void 0 !== n ? n : 0 + ), + }; + } + var K = i("201636"); + class H extends b { + executeFormat(e) { + var t, + i, + n, + r, + a, + o, + { inputData: s } = e, + { draftContent: l } = s, + c = (0, M.Zu)(l), + d = (0, M.DN)(l); + if (!c || !d) return; + var u = this._getVideoTemplateParams(d, s), + f = this._getLipSyncInputParams(c, s), + h = this._getInsertFrameInputParams(c, s), + p = this._getSuperResolutionInputParams(c, s), + v = this._getLabSrInputParams(c, s), + m = this._getExtendInputParams(c, s), + g = this._getLipSyncVideoInputParams(d, s); + if (!![f, u, h, p, v, m, g].some(Boolean)) { + var _ = + null === (t = c.abilities) || void 0 === t ? void 0 : t.lipSync, + y = (0, j.g)(null == _ ? void 0 : _.mode), + b = + null !== (o = null == f ? void 0 : f.vid) && void 0 !== o + ? o + : null === (a = c.abilities) || void 0 === a + ? void 0 + : null === (r = a.genVideo) || void 0 === r + ? void 0 + : null === (n = r.text2VideoParams) || void 0 === n + ? void 0 + : null === (i = n.videoGenInputs) || void 0 === i + ? void 0 + : i[0].vid; + e.updateOutputData({ + videoGenInputs: [ + { + videoMode: y, + vid: b, + audioVid: null == f ? void 0 : f.audioVid, + v2vOpt: { + insertFrame: h, + superResolution: p, + lipSync: f, + videoTemplate: u, + labSr: v, + extend: m, + lipSyncUserVideo: g, + }, + }, + ], + }); + } + } + _getVideoTemplateParams(e, t) { + var i, + n, + r, + a, + { resources: o, videoTemplateItem: s } = t, + l = + null === (n = e.abilities) || void 0 === n + ? void 0 + : null === (i = n.genVideo) || void 0 === i + ? void 0 + : i.text2VideoParams; + if (!!l) + return (0, O.S)( + null === (a = l.videoGenInputs) || void 0 === a + ? void 0 + : null === (r = a[0].v2vOpt) || void 0 === r + ? void 0 + : r.videoTemplate, + o, + s + ); + } + _getLipSyncInputParams(e, t) { + var i, + n, + r, + a, + o, + s, + l, + { resources: c } = t, + d = null === (i = e.abilities) || void 0 === i ? void 0 : i.lipSync; + if ( + !!d && + (null == d ? void 0 : d.referenceType) === + A.DALipSyncReferenceType.aiVideo + ) { + var u = d.audioResourceId + ? { + id: null !== (o = d.audioResourceId) && void 0 !== o ? o : "", + itemPlatform: + null !== (s = (0, B.S)(d.audioItemPlatform)) && void 0 !== s + ? s + : K.oH.Loki, + } + : void 0; + return { + enable: !0, + audioVid: + null !== + (l = + null === (n = d.audio) || void 0 === n ? void 0 : n.vid) && + void 0 !== l + ? l + : "", + vid: null === (r = d.video) || void 0 === r ? void 0 : r.vid, + ttsInfo: JSON.stringify((0, F.s3)(d)), + voiceInfo: u ? { idInfo: u } : void 0, + supportedModes: + null === (a = d.supportedModes) || void 0 === a + ? void 0 + : a.map(j.g), + audioBeforeConversion: U(d.audioBeforeConversion, c), + }; + } + } + _getLipSyncVideoInputParams(e, t) { + var i, + a, + o, + s, + l, + c, + d, + u, + f, + h, + p, + { resources: v, lipSyncIdInfo: m } = t, + g = null === (i = e.abilities) || void 0 === i ? void 0 : i.lipSync; + if ( + !g || + (null == g ? void 0 : g.referenceType) !== + A.DALipSyncReferenceType.video + ) + return; + var _ = (0, P.l)(g.audio, v), + y = (0, E.f)(g.video, v); + if (!!_ && !!y) { + var b = + null !== + (f = + null !== + (u = + null === (o = y.transcodedVideo) || void 0 === o + ? void 0 + : null === (a = o["720p"]) || void 0 === a + ? void 0 + : a.videoUrl) && void 0 !== u + ? u + : null === (l = y.transcodedVideo) || void 0 === l + ? void 0 + : null === (s = l["360p"]) || void 0 === s + ? void 0 + : s.videoUrl) && void 0 !== f + ? f + : null === (c = y.originVideo) || void 0 === c + ? void 0 + : c.videoUrl, + I = (null != m ? m : g.audioResourceId) + ? { + id: + null !== (h = g.audioResourceId) && void 0 !== h ? h : "", + itemPlatform: + null !== (p = (0, B.S)(g.audioItemPlatform)) && + void 0 !== p + ? p + : K.oH.Loki, + } + : void 0; + return { + enable: !0, + originVideo: y + ? (0, r._)((0, n._)({}, y), { videoUrl: b }) + : void 0, + originAudio: U(g.audio, v), + ttsInfo: JSON.stringify((0, F.s3)(g)), + voiceInfo: I ? { idInfo: I } : void 0, + supportedModes: + null === (d = g.supportedModes) || void 0 === d + ? void 0 + : d.map(j.g), + audioBeforeConversion: U(g.audioBeforeConversion, v), + }; + } + } + _getInsertFrameInputParams(e, t) { + var i, + n, + r, + a, + o, + s = + null === (o = e.abilities) || void 0 === o + ? void 0 + : null === (a = o.genVideo) || void 0 === a + ? void 0 + : null === (r = a.text2VideoParams) || void 0 === r + ? void 0 + : null === (n = r.videoGenInputs) || void 0 === n + ? void 0 + : null === (i = n[0].v2vOpt) || void 0 === i + ? void 0 + : i.insertFrame; + if (!!s) return (0, G.W)(s); + } + _getSuperResolutionInputParams(e, t) { + var i, + n, + r, + a, + o, + s = + null === (o = e.abilities) || void 0 === o + ? void 0 + : null === (a = o.genVideo) || void 0 === a + ? void 0 + : null === (r = a.text2VideoParams) || void 0 === r + ? void 0 + : null === (n = r.videoGenInputs) || void 0 === n + ? void 0 + : null === (i = n[0].v2vOpt) || void 0 === i + ? void 0 + : i.superResolution; + if (!!s) return (0, z.y)(s); + } + _getExtendInputParams(e, t) { + var i, + n, + r, + a, + o, + s = + null === (o = e.abilities) || void 0 === o + ? void 0 + : null === (a = o.genVideo) || void 0 === a + ? void 0 + : null === (r = a.text2VideoParams) || void 0 === r + ? void 0 + : null === (n = r.videoGenInputs) || void 0 === n + ? void 0 + : null === (i = n[0].v2vOpt) || void 0 === i + ? void 0 + : i.extend; + if (!!s) return (0, V.c)(s); + } + _getLabSrInputParams(e, t) { + var i, + n, + r, + a, + o, + s = + null === (o = e.abilities) || void 0 === o + ? void 0 + : null === (a = o.genVideo) || void 0 === a + ? void 0 + : null === (r = a.text2VideoParams) || void 0 === r + ? void 0 + : null === (n = r.videoGenInputs) || void 0 === n + ? void 0 + : null === (i = n[0].v2vOpt) || void 0 === i + ? void 0 + : i.labSr; + if (!!s) return Z(s); + } + } + var q = i("770449"), + J = i("839517"); + class Y extends b { + executeFormat(e) { + var { inputData: t } = e, + i = this._getVideoGenInput(t); + if (!!i) e.updateOutputData({ videoGenInputs: [i] }); + } + _getVideoGenInput(e) { + var t, + i, + n, + r, + a, + o, + s, + l, + c, + d, + { draftContent: u, resources: f, originText2VideoParams: h } = e, + p = (0, M.DN)(u), + v = + null == p + ? void 0 + : null === (n = p.abilities) || void 0 === n + ? void 0 + : null === (i = n.genVideo) || void 0 === i + ? void 0 + : null === (t = i.text2VideoParams) || void 0 === t + ? void 0 + : t.videoGenInputs; + if (!!(null == v ? void 0 : v[0])) { + var m = v[0]; + return { + prompt: m.prompt, + firstFrameImage: (0, q.Wc)(m.firstFrameImage, f), + endFrameImage: (0, q.Wc)(m.endFrameImage, f), + lensMotionType: m.lensMotionType, + vid: null !== (l = m.vid) && void 0 !== l ? l : "", + audioVid: m.audioVid ? String(m.audioVid) : void 0, + videoMode: (0, J.r)(m.videoMode), + durationMs: m.durationMs, + cameraStrength: m.cameraStrength, + motionSpeed: + null !== + (c = + null == h + ? void 0 + : null === (a = h.videoGenInputs) || void 0 === a + ? void 0 + : null === (r = a[0]) || void 0 === r + ? void 0 + : r.motionSpeed) && void 0 !== c + ? c + : m.motionSpeed, + fps: + null !== + (d = + null == h + ? void 0 + : null === (s = h.videoGenInputs) || void 0 === s + ? void 0 + : null === (o = s[0]) || void 0 === o + ? void 0 + : o.fps) && void 0 !== d + ? d + : m.fps, + }; + } + } + } + class Q extends b { + executeFormat(e) { + var { inputData: t } = e, + { draftContent: i } = t, + n = (0, M.DN)(i); + if (!n) return; + var r = this._getLipSyncImageInputParams(n, t); + if (!![r].some(Boolean)) { + var a = (0, j.g)(null == r ? void 0 : r.mode); + e.updateOutputData({ + videoGenInputs: [{ videoMode: a, i2vOpt: { realmanAvatar: r } }], + }); + } + } + _getLipSyncImageInputParams(e, t) { + var i, + n, + r, + a, + o, + s, + { resources: l, lipSyncIdInfo: c } = t, + d = null === (i = e.abilities) || void 0 === i ? void 0 : i.lipSync; + if ( + !!d && + (null == d ? void 0 : d.referenceType) === + A.DALipSyncReferenceType.image && + !!(0, P.l)(d.audio, l) + ) { + var u = + null != c + ? c + : d.audioResourceId + ? { + id: + null !== (a = d.audioResourceId) && void 0 !== a ? a : "", + itemPlatform: + null !== (o = (0, B.S)(d.audioItemPlatform)) && + void 0 !== o + ? o + : K.oH.Loki, + } + : void 0; + return { + enable: !0, + audioVid: + null !== + (s = + null === (n = d.audio) || void 0 === n ? void 0 : n.vid) && + void 0 !== s + ? s + : "", + originImage: (0, q.Wc)(d.image, l), + originAudio: U(d.audio, l), + ttsInfo: JSON.stringify((0, F.s3)(d)), + voiceInfo: u ? { idInfo: u } : void 0, + supportedModes: + null === (r = d.supportedModes) || void 0 === r + ? void 0 + : r.map(j.g), + mode: d.mode, + audioBeforeConversion: U(d.audioBeforeConversion, l), + }; + } + } + } + function X(e) { + var t, + i = new x("formatOriginalInputByDraft"); + return ( + i + .addProcessor(new L()) + .addProcessor(new H()) + .addProcessor(new Y()) + .addProcessor(new Q()), + (0, p.Z)( + null !== (t = e.originText2VideoParams) && void 0 !== t ? t : {}, + i.executeFormatting(e) + ) + ); + } + class $ extends b { + executeFormat(e) { + var t, + i, + n, + r, + { + inputData: { draftContent: a, videoResource: o }, + } = e, + s = (0, M.Zu)(a), + l = + null == s + ? void 0 + : null === (t = s.abilities) || void 0 === t + ? void 0 + : t.videoBGM; + if (!!s && !!l) { + var c = + null === (i = l.tags) || void 0 === i + ? void 0 + : i.map((e) => { + var t, i; + return { + key: null !== (t = e.key) && void 0 !== t ? t : "", + name: null !== (i = e.name) && void 0 !== i ? i : "", + }; + }); + e.updateOutputData({ + originHistoryId: l.originHistoryId, + originItemId: l.originItemId, + videoFirstFrame: { + imageUrl: + null !== (n = null == o ? void 0 : o.coverUrl) && void 0 !== n + ? n + : "", + imageUri: + null !== (r = null == o ? void 0 : o.coverUri) && void 0 !== r + ? r + : "", + width: 0, + height: 0, + }, + duration: null == o ? void 0 : o.duration, + tags: c, + promptSource: (null == c ? void 0 : c.length) + ? R.X2.Tag + : R.X2.FirstFrame, + }); + } + } + } + function ee(e) { + try { + var t = new x("formatVideoAudioParamsByDraft"); + return ( + t.addProcessor(new $()), t.executeFormatting(e, (0, w.Vj)(), !0) + ); + } catch (e) { + return; + } + } + var et = i("588735"); + class ei { + static findChildNodes(e, t) { + if (void 0 !== t) + for (var i = t.childNodes(), n = 0; n < i.length; n++) { + var r = i[n]; + if (void 0 !== r) { + if (e(r)) return r; + var a = ei.findChildNodes(e, r); + if (void 0 !== a) return a; + } + } + } + } + class en extends _ { + preprocess(e) { + var t, + i, + a, + o, + s, + { inputData: l } = e, + { draftContent: c, failCode: d, resources: u, metricsExtra: f } = l; + if (!!c) { + if (!(0, M.Sv)(c)) throw Error("draftContent is not valid"); + var h = new A.DADraft({ JSONString: c }), + p = X({ + draftContent: c, + resources: u, + videoTemplateItem: l.videoTemplateItem, + modelInfo: l.modelInfo + ? (0, r._)((0, n._)({}, l.modelInfo), { + options: + null !== (s = l.modelInfo.videoModelOptions) && + void 0 !== s + ? s + : [], + }) + : void 0, + originText2VideoParams: + null == l + ? void 0 + : null === (t = l.task) || void 0 === t + ? void 0 + : t.originalInput, + }), + v = ee({ + draftContent: c, + resources: u, + videoResource: + null === (a = l.itemList) || void 0 === a + ? void 0 + : null === (i = a[0]) || void 0 === i + ? void 0 + : i.video, + }); + e.updateInputData({ + task: { + originalInput: p, + aigcImageParams: v && { videoBgmParams: v }, + isUseDraftGen: !0, + processFlows: this._getProcessFlowsFromDraft(h), + taskPayload: this._getTaskPayloadFromDraft(h, f, p), + draftContent: c, + lipSyncInfo: { + lipSyncExtra: this._getLipSyncExtra(h, u, d), + lipSyncDetectionStatus: + null === (o = l.lipSyncInfo) || void 0 === o + ? void 0 + : o.lipSyncDetectionStatus, + }, + }, + }); + } + } + _getProcessFlowsFromDraft(e) { + for (var t = [], i = e.findMainComponent(); i && (0, M.r4)(i); ) { + var n = + null !== (a = null == i ? void 0 : i.processType) && void 0 !== a + ? a + : D.IR[i.generateType]; + if ( + null === (r = i.abilities) || void 0 === r ? void 0 : r.lipSync + ) { + var r, + a, + o, + s = + null === (o = i.abilities) || void 0 === o + ? void 0 + : o.lipSync; + switch (null == s ? void 0 : s.referenceType) { + case A.DALipSyncReferenceType.aiVideo: + n = k.v8.LipSync; + break; + case A.DALipSyncReferenceType.image: + n = k.v8.LipSyncImage; + break; + case A.DALipSyncReferenceType.video: + n = k.v8.LipSyncUserVideo; + } + } + n && t.unshift({ curProcessFlows: [n] }), + (i = e.findParentComponent(i)); + } + return t; + } + _getTaskPayloadFromDraft(e, t, i) { + var n = e.findMainComponent(); + if (!!(0, M.r4)(n)) { + var { abilities: r } = n; + return { taskExtra: this._getTaskExtra(r, t, i), taskScene: N(n) }; + } + } + _getTaskExtra(e, t, i) { + var n = + (null == e + ? void 0 + : null === (o = e.genVideo) || void 0 === o + ? void 0 + : o.videoTaskExtra) || t, + r = (0, s.D)(null != n ? n : "{}", {}); + if (!("lipSyncInfo" in r)) { + var o, + l, + c, + d, + u, + f, + h, + p, + v, + m, + g = + null == i + ? void 0 + : null === (l = i.videoGenInputs) || void 0 === l + ? void 0 + : l[0], + _ = + null !== + (m = + null !== + (v = + null == g + ? void 0 + : null === (d = g.v2vOpt) || void 0 === d + ? void 0 + : null === (c = d.lipSync) || void 0 === c + ? void 0 + : c.ttsInfo) && void 0 !== v + ? v + : null == g + ? void 0 + : null === (f = g.v2vOpt) || void 0 === f + ? void 0 + : null === (u = f.lipSyncUserVideo) || void 0 === u + ? void 0 + : u.ttsInfo) && void 0 !== m + ? m + : null == g + ? void 0 + : null === (p = g.i2vOpt) || void 0 === p + ? void 0 + : null === (h = p.realmanAvatar) || void 0 === h + ? void 0 + : h.ttsInfo; + _ && (r.lipSyncInfo = (0, a.b)((0, s.D)(_, {}))); + } + if (!("previewId" in r)) { + var y = ei.findChildNodes((e) => e instanceof A.DAVideoRefParam, e); + r.previewId = null == y ? void 0 : y.originHistoryId; + } + return ( + !("promptSource" in r) && (r.promptSource = "custom"), + JSON.stringify(r) + ); + } + _getLipSyncExtra(e, t, i) { + var n, + r, + a, + o, + s, + l, + c, + d, + u = e.findMainComponent(); + if (!(0, M.r4)(u)) return; + var f = + null === (n = u.abilities) || void 0 === n ? void 0 : n.lipSync, + h = (0, P.l)(null == f ? void 0 : f.audio, t), + p = (0, E.f)(null == f ? void 0 : f.video, t); + if (!!f) { + var v = String(et.sQ.InputAudioContainEnglishContent); + return JSON.stringify({ + audio: h + ? { + vid: h.videoId, + duration: null !== (o = h.duration) && void 0 !== o ? o : 0, + fileId: h.videoId, + fileHash: h.videoId, + url: + null !== + (s = + null === (r = h.originVideo) || void 0 === r + ? void 0 + : r.videoUrl) && void 0 !== s + ? s + : "", + format: + null !== + (l = + null === (a = h.originVideo) || void 0 === a + ? void 0 + : a.format) && void 0 !== l + ? l + : "", + isEnglishContent: String(i) === v, + } + : void 0, + video: p + ? { + vid: null !== (c = p.videoId) && void 0 !== c ? c : "", + duration: null !== (d = p.duration) && void 0 !== d ? d : 0, + fileId: p.videoId, + fileHash: p.videoId, + } + : void 0, + }); + } + } + } + var er = i("229025"), + ea = i("952739"), + eo = (e, t) => { + var i; + return e + ? ("uri" in e && (i = e.uri), + "imageUri" in e && (i = e.imageUri), + (0, r._)((0, n._)({}, e), { + imageUri: i, + coverUrlMap: (0, ea.fe)(t), + })) + : { imageUri: "", imageUrl: "", width: 0, height: 0 }; + }; + class es extends b { + executeFormat(e) { + var { inputData: t } = e, + i = this._getVideoRecordData(t); + e.updateOutputData(i); + } + _getVideoRecordData(e) { + var t, + i, + n, + r, + a, + o, + s = null === (t = e.itemList) || void 0 === t ? void 0 : t[0], + l = s ? (0, f.C)(s, e.historyRecordId) : void 0, + c = eo( + (null === (i = e.task) || void 0 === i + ? void 0 + : i.firstFrameImage) || + (null === (n = e.originItemList) || void 0 === n + ? void 0 + : n[0]), + e.task.multiSizeFirstFrameImage + ), + d = eo( + null === (r = e.task) || void 0 === r ? void 0 : r.endFrameImage, + e.task.multiSizeEndFrameImage + ), + u = (0, er.Qd)(e.createdTime), + h = (0, er.Qd)( + null !== + (o = + null === (a = e.task) || void 0 === a + ? void 0 + : a.finishTime) && void 0 !== o + ? o + : 0 + ), + { generateType: p, firstGenerateType: v } = e, + m = eA(e.task); + return { + id: e.task.submitId, + generateType: p, + firstGenerateType: v, + historyRecordId: e.historyRecordId, + itemList: e.itemList, + originItemList: e.originItemList, + status: e.status, + mode: e.mode, + historyGroupKeyMd5: null == e ? void 0 : e.historyGroupKeyMd5, + forecastGenerateCost: null == e ? void 0 : e.forecastGenerateCost, + forecastQueueCost: null == e ? void 0 : e.forecastQueueCost, + failCode: null == e ? void 0 : e.failCode, + assetOption: e.assetOption, + createdTime: u, + sortCreateTime: u, + finishTime: h, + task: m, + firstFrameImage: c, + lastFrameImage: d, + generateId: e.generateId, + aigcItemId: null == l ? void 0 : l.aigcItemId, + videoDreamina: l, + }; + } + } + var el = i("128468"), + ec = i("549654"), + ed = i("611422"), + eu = i("724196"), + ef = i("19205"), + eh = i("280275"), + ep = i("106621"), + ev = i("179419"), + em = i("54969"), + eg = i("868144"), + e_ = i("803188"), + ey = i("384295"), + eb = i("675679"), + eI = i("43637"); + class ew { + convert() { + var e, + t, + i, + { + abilities: n, + ability: r, + v2vOpt: a, + videoGenInput: o, + } = (0, e_.$O)(); + return ( + (o.vid = + null === (e = this._params.input.videoGenInputs) || void 0 === e + ? void 0 + : e.vid), + (a.labSr = W( + null === (t = this._params.input.videoGenInputs.v2vOpt) || + void 0 === t + ? void 0 + : t.labSr + )), + (a.avMix = (0, ey.j)( + null === (i = this._params.input.videoGenInputs.v2vOpt) || + void 0 === i + ? void 0 + : i.avMix + )), + (r.scene = this._params.scene), + (r.videoTaskExtra = (0, eb.a)(this._params.taskPayload.taskExtra)), + (r.videoRefParams = (0, eI.o)(this._params)), + n + ); + } + constructor(e) { + this._params = e; + } + } + class ex extends em.l { + getComponent(e) { + var t, + i, + n = new A.DAVideoBaseComponent(); + return ( + (n.generateType = A.DAVideoGenerateType.genVideo), + (n.aigcMode = + null !== + (i = + eg.sc[ + null !== (t = e.mode) && void 0 !== t ? t : el.JU.Workbench + ]) && void 0 !== i + ? i + : A.DAAIGCMode.workbench), + (n.abilities = new ew(e).convert()), + (n.processType = A.DAVideoProcessType.LabSR), + n + ); + } + } + var eS = i("790915"), + eM = i("992393"), + eC = i("868725"); + class eT extends _ { + preprocess(e) { + var { inputData: t } = e; + if (!t.draftContent) + try { + var i = this._generateDraftContentFromLegacyData(t); + if (!i) return; + e.updateInputData({ draftContent: i, task: { draftContent: i } }); + } catch (e) { + I.t.error( + "[FixDraftContentForLegacyDataPreprocessorPlugin] submitId: ", + t.task.submitId, + "error: ", + e + ); + return; + } + } + _generateDraftContentFromLegacyData(e) { + var { task: t } = e, + { processFlows: i } = t, + n = + null == i + ? void 0 + : i.map((e) => { + var t; + return null === (t = e.curProcessFlows) || void 0 === t + ? void 0 + : t[0]; + }); + if (!!(null == n ? void 0 : n.length)) { + var r = this._getImageDraftContentFromLegacyData(e); + return ( + n.forEach( + (t) => + (r = this._createConverterFactory(t, e, r)().convert() + .draftContent) + ), + r + ); + } + } + _createConverterFactory(e, t, i) { + var n = this._createBaseParams(t, i); + return { + [k.v8.LipSyncImage]: () => new ed.F(n), + [k.v8.LipSyncUserVideo]: () => new ed.F(n), + [k.v8.LipSync]: () => new eu.D(n), + [k.v8.VideoGen]: () => new ef.b(n), + [k.v8.SuperResolution]: () => new eh._(n), + [k.v8.InsertFrame]: () => new ep.C(n), + [k.v8.Extend]: () => new ev.Q(n), + [k.v8.LabSR]: () => new ex(n), + [k.v8.VideoTemplate]: () => new eS.r(n), + [k.v8.MixBGM]: () => new eC.V(this._createBGMParams(t, i)), + [k.v8.BGMGenerate]: () => new eC.V(this._createBGMParams(t, i)), + [k.v8.VideoAudioEffect]: () => + new eM.s(this._createAudioEffectParams(t, i)), + }[e]; + } + _createBaseParams(e, t) { + var i, + a, + o, + { task: l, itemList: c } = e, + { taskPayload: d, submitId: u } = l, + f = (null == d ? void 0 : d.taskExtra) + ? (0, s.D)(null == d ? void 0 : d.taskExtra) + : void 0, + h = + null !== + (o = + null == c + ? void 0 + : null === (a = c[0]) || void 0 === a + ? void 0 + : null === (i = a.aigcImageParams) || void 0 === i + ? void 0 + : i.text2videoParams) && void 0 !== o + ? o + : l.originalInput; + return { + input: (0, r._)((0, n._)({}, h), { + videoGenInputs: this._getVideoGenInput(e), + }), + taskPayload: { taskExtra: f }, + submitId: u, + draftContent: t, + }; + } + _createBGMParams(e, t) { + var i, + n, + { task: r } = e, + { taskPayload: a, submitId: o } = r, + { + originItemId: s, + originHistoryId: l, + tags: c, + duration: d, + } = null !== + (n = + null === (i = r.aigcImageParams) || void 0 === i + ? void 0 + : i.videoBgmParams) && void 0 !== n + ? n + : {}; + return { + input: { + originHistoryId: l, + originItemId: s, + tags: c, + duration: d, + }, + mode: el.JU.Workbench, + historyOption: {}, + commerceInfo: {}, + submitId: o, + taskExtra: null == a ? void 0 : a.taskExtra, + draftContent: t, + }; + } + _createAudioEffectParams(e, t) { + var i, + n, + r, + a, + o, + s, + { task: l, itemList: c } = e, + { taskPayload: d, submitId: u } = l; + return { + videoAudioInput: { + originHistoryId: + null == c + ? void 0 + : null === (r = c[0]) || void 0 === r + ? void 0 + : null === (n = r.aigcImageParams) || void 0 === n + ? void 0 + : null === (i = n.videoAudioEffectParams) || void 0 === i + ? void 0 + : i.originHistoryId, + originItemId: + null == c + ? void 0 + : null === (s = c[0]) || void 0 === s + ? void 0 + : null === (o = s.aigcImageParams) || void 0 === o + ? void 0 + : null === (a = o.videoAudioEffectParams) || void 0 === a + ? void 0 + : a.originItemId, + }, + mode: el.JU.Workbench, + historyOption: {}, + commerceInfo: {}, + submitId: u, + taskExtra: null == d ? void 0 : d.taskExtra, + draftContent: t, + }; + } + _getImageDraftContentFromLegacyData(e) { + var t, + i, + n = this._getVideoGenInput(e), + { aigcImage: r } = + null !== (i = null == n ? void 0 : n.firstFrameImage) && + void 0 !== i + ? i + : {}; + if (!!r) { + var { aigcImageParams: a, commonAttr: s } = r, + l = (0, o.D1)(JSON.stringify(a)), + c = (0, o.D1)( + JSON.stringify({ + commonAttr: { + aspectRatio: null == s ? void 0 : s.aspectRatio, + }, + }) + ); + return null === + (t = new A.ADTODA_ImageTransformer(l, c).convertToDraft()) || + void 0 === t + ? void 0 + : t.toJSONString(); + } + } + _getVideoGenInput(e) { + var t, + i, + o, + l, + c, + d, + u, + f, + h, + p, + v, + { task: m, itemList: g } = e, + _ = + null !== + (p = + null == g + ? void 0 + : null === (l = g[0]) || void 0 === l + ? void 0 + : null === (o = l.aigcImageParams) || void 0 === o + ? void 0 + : null === (i = o.text2videoParams) || void 0 === i + ? void 0 + : null === (t = i.videoGenInputs) || void 0 === t + ? void 0 + : t[0]) && void 0 !== p + ? p + : null === (d = m.originalInput) || void 0 === d + ? void 0 + : null === (c = d.videoGenInputs) || void 0 === c + ? void 0 + : c[0]; + if (!!_) + return (0, r._)((0, n._)({}, _), { + boximator: _.boximator, + motionSpeed: ec.E[_.motionSpeed], + firstFrameImage: ( + null === (u = _.firstFrameImage) || void 0 === u + ? void 0 + : u.imageUri + ) + ? _.firstFrameImage + : void 0, + endFrameImage: ( + null === (f = _.endFrameImage) || void 0 === f + ? void 0 + : f.imageUri + ) + ? _.endFrameImage + : void 0, + v2vOpt: _.v2vOpt + ? (0, r._)((0, n._)({}, _.v2vOpt), { + lipSync: _.v2vOpt.lipSync + ? (0, r._)((0, n._)({}, _.v2vOpt.lipSync), { + ttsInfo: (0, a.b)( + (0, s.D)( + null !== (v = _.v2vOpt.lipSync.ttsInfo) && + void 0 !== v + ? v + : "{}" + ) + ), + }) + : void 0, + lipSyncUserVideo: _.v2vOpt.lipSyncUserVideo + ? (0, r._)((0, n._)({}, _.v2vOpt.lipSyncUserVideo), { + ttsInfo: (0, a.b)( + (0, s.D)(_.v2vOpt.lipSyncUserVideo.ttsInfo) + ), + }) + : void 0, + }) + : void 0, + i2vOpt: _.i2vOpt + ? (0, r._)((0, n._)({}, _.i2vOpt), { + realmanAvatar: ( + null === (h = _.i2vOpt) || void 0 === h + ? void 0 + : h.realmanAvatar + ) + ? (0, r._)((0, n._)({}, _.i2vOpt.realmanAvatar), { + ttsInfo: (0, a.b)( + (0, s.D)(_.i2vOpt.realmanAvatar.ttsInfo) + ), + }) + : void 0, + }) + : void 0, + }); + } + } + var eA = (e) => { + var t, + i, + o, + l, + c, + d, + u, + f, + h = e.originalInput.videoGenInputs[0]; + return { + taskId: "".concat(e.taskId), + historyId: "".concat(e.historyId), + aid: e.aid, + submitId: e.submitId, + status: e.status, + finishTime: e.finishTime, + firstFrameImage: e.firstFrameImage, + firstGenerateType: e.firstGenerateType, + imageToAvatar: e.imageToAvatar, + isUseDraftGen: e.isUseDraftGen, + originalInput: (0, r._)((0, n._)({}, e.originalInput), { + videoGenInputs: [ + (0, r._)((0, n._)({}, h), { + firstFrameImage: ( + null === (t = h.firstFrameImage) || void 0 === t + ? void 0 + : t.imageUri + ) + ? h.firstFrameImage + : void 0, + endFrameImage: ( + null === (i = h.endFrameImage) || void 0 === i + ? void 0 + : i.imageUri + ) + ? h.endFrameImage + : void 0, + v2vOpt: h.v2vOpt + ? (0, r._)((0, n._)({}, h.v2vOpt), { + lipSyncUserVideo: h.v2vOpt.lipSyncUserVideo + ? (0, r._)((0, n._)({}, h.v2vOpt.lipSyncUserVideo), { + ttsInfo: (0, a.b)( + (0, s.D)(h.v2vOpt.lipSyncUserVideo.ttsInfo) + ), + }) + : void 0, + }) + : void 0, + i2vOpt: h.i2vOpt + ? (0, r._)((0, n._)({}, h.i2vOpt), { + realmanAvatar: ( + null === (o = h.i2vOpt) || void 0 === o + ? void 0 + : o.realmanAvatar + ) + ? (0, r._)((0, n._)({}, h.i2vOpt.realmanAvatar), { + ttsInfo: (0, a.b)( + (0, s.D)(h.i2vOpt.realmanAvatar.ttsInfo) + ), + }) + : void 0, + }) + : void 0, + }), + ], + }), + taskPayload: (0, r._)((0, n._)({}, e.taskPayload), { + taskExtra: (0, s.D)( + null !== + (u = + null === (l = e.taskPayload) || void 0 === l + ? void 0 + : l.taskExtra) && void 0 !== u + ? u + : "{}" + ), + }), + lipSyncInfo: e.lipSyncInfo + ? (0, r._)((0, n._)({}, e.lipSyncInfo), { + lipSyncExtra: (0, s.D)( + null !== + (f = + null === (c = e.lipSyncInfo) || void 0 === c + ? void 0 + : c.lipSyncExtra) && void 0 !== f + ? f + : "" + ), + }) + : void 0, + processFlows: e.processFlows, + priority: e.priority, + videoBGMInfo: ( + null === (d = e.aigcImageParams) || void 0 === d + ? void 0 + : d.videoBgmParams + ) + ? e.aigcImageParams.videoBgmParams + : void 0, + draftContent: e.draftContent, + }; + }; + function ek(e, t) { + var i, + n, + r, + a = + (null == e + ? void 0 + : null === (i = e.aigcDraft) || void 0 === i + ? void 0 + : i.content) || (null == t ? void 0 : t.draftContent), + o = + (null == e ? void 0 : e.aigcDraftResources) || + (null == t ? void 0 : t.draftResources); + if (!!a && !!o && !!e && !!(0, M.Sv)(a)) { + var s = + null === (n = e.aigcImageParams.publishedVoiceInfo) || + void 0 === n + ? void 0 + : n.idInfo, + l = X({ + draftContent: a, + resources: o, + videoTemplateItem: e.videoTemplateItem, + originText2VideoParams: e.aigcImageParams.text2videoParams, + lipSyncIdInfo: s, + }); + (e.aigcImageParams.generateType = + null !== (r = (0, M.Ij)((0, M.Zu)(a))) && void 0 !== r + ? r + : e.aigcImageParams.generateType), + (e.aigcImageParams.text2videoParams = l); + } + } + function eP(e) { + var t, + i, + n, + r = + null == e + ? void 0 + : null === (t = e.aigc_draft) || void 0 === t + ? void 0 + : t.content; + if (!!r && !!e && !!(0, M.Sv)(r)) { + var a = + null === (i = e.aigc_image_params.published_voice_info) || + void 0 === i + ? void 0 + : i.id_info, + s = X({ + draftContent: r, + resources: (0, o.fs)(e.aigc_draft_resources, o.zW), + videoTemplateItem: (0, o.fs)(e.video_template_item, o.zW), + originText2VideoParams: (0, o.fs)( + e.aigc_image_params.text2video_params, + o.zW + ), + lipSyncIdInfo: (0, o.fs)(a, o.zW), + }); + (e.aigc_image_params.generate_type = + null !== (n = (0, M.Ij)((0, M.Zu)(r))) && void 0 !== n + ? n + : e.aigc_image_params.generate_type), + (e.aigc_image_params.text2video_params = (0, o.fs)(s, o.D1)); + } + } + var eE = (e) => { + var t = new x("formatGenerateTaskRecordFromServer"); + return ( + t + .addProcessor(new S()) + .addProcessor(new C()) + .addProcessor(new T()) + .addProcessor(new en()) + .addProcessor(new es()) + .addProcessor(new eT()), + t.executeFormatting(e, e.task.submitId) + ); + }, + eD = (e, t) => { + var i, + a, + o, + s, + c, + u, + h, + p, + v, + m, + g, + _, + y, + b, + I, + w, + x, + S, + M, + C, + T, + A, + k, + P, + E, + D, + R, + N, + { commonAttr: L } = e, + { video: j, author: O } = e, + B = e.aigcImageParams, + F = "".concat(L.id), + { + requestId: U, + generateId: G, + generateType: z, + text2videoParams: V, + } = null != B ? B : {}, + { transcodedVideo: W } = j, + Z = + null !== + (y = + null !== + (_ = + null === (i = j.transcodedVideo) || void 0 === i + ? void 0 + : i["720p"]) && void 0 !== _ + ? _ + : null === (a = j.transcodedVideo) || void 0 === a + ? void 0 + : a["360p"]) && void 0 !== y + ? y + : null === (o = j.transcodedVideo) || void 0 === o + ? void 0 + : o.origin, + K = (0, f.K)(j.durationInfo), + H = (null == K ? void 0 : K.playInfoDuration) + ? (null == K ? void 0 : K.playInfoDuration) * 1e3 + : j.durationMs, + q = Math.round(H / 1e3); + return (0, n._)( + { + key: F, + resourceId: F, + effectId: L.effectId, + effectType: L.effectType, + title: null !== (b = L.title) && void 0 !== b ? b : "", + description: L.description, + coverUri: L.coverUri, + coverUrl: L.coverUrl, + coverUrlMap: + null !== (I = L.coverUrlMap) && void 0 !== I ? I : {}, + watermarkType: j.watermarkType, + createTime: L.createTime, + aspectRatio: null !== (w = L.aspectRatio) && void 0 !== w ? w : 1, + duration: q, + durationMs: H, + durationInfo: + 0 === Object.values(K).length + ? { + playInfoDuration: q, + audioStreamingDuration: q, + videoStreamingDuration: q, + } + : K, + author: O + ? { avatar: O.avatarUrl, name: O.name, uid: O.secUid } + : void 0, + thumb: { + thumbCommonInfo: { + singleFrameHeight: + null !== + (x = + null === (c = j.thumb) || void 0 === c + ? void 0 + : null === (s = c.thumbCommonInfo) || void 0 === s + ? void 0 + : s.singleFrameHeight) && void 0 !== x + ? x + : 0, + singleFrameWidth: + null !== + (S = + null === (h = j.thumb) || void 0 === h + ? void 0 + : null === (u = h.thumbCommonInfo) || void 0 === u + ? void 0 + : u.singleFrameWidth) && void 0 !== S + ? S + : 0, + totalSetNum: + null !== + (M = + null === (v = j.thumb) || void 0 === v + ? void 0 + : null === (p = v.thumbCommonInfo) || void 0 === p + ? void 0 + : p.totalSetNum) && void 0 !== M + ? M + : 0, + }, + detailInfos: + null !== + (C = + null === (g = j.thumb) || void 0 === g + ? void 0 + : null === (m = g.detailInfos) || void 0 === m + ? void 0 + : m.map((e) => ({ + frameCount: e.frameCount, + imageHeight: e.imageHeight, + imageWidth: e.imageWidth, + mimeType: e.mimeType, + url: e.url, + uri: e.uri, + }))) && void 0 !== C + ? C + : [], + }, + originVideo: { + definition: + null !== (T = null == Z ? void 0 : Z.definition) && + void 0 !== T + ? T + : "", + format: + null !== (A = null == Z ? void 0 : Z.format) && void 0 !== A + ? A + : "", + height: + null !== (k = null == Z ? void 0 : Z.height) && void 0 !== k + ? k + : 0, + width: + null !== (P = null == Z ? void 0 : Z.width) && void 0 !== P + ? P + : 0, + size: + null !== (E = null == Z ? void 0 : Z.size) && void 0 !== E + ? E + : 0, + url: + null !== (D = null == Z ? void 0 : Z.videoUrl) && void 0 !== D + ? D + : "", + fps: + null !== (R = null == Z ? void 0 : Z.fps) && void 0 !== R + ? R + : 0, + }, + transcode: Object.keys(null != W ? W : {}).reduce((e, t) => { + var i = null == W ? void 0 : W[t]; + return i + ? (0, r._)((0, n._)({}, e), { + [t]: { + definition: i.definition, + format: i.format, + height: i.height, + width: i.width, + size: i.size, + url: i.videoUrl, + }, + }) + : e; + }, {}), + aigcParams: { + requestId: + null !== (N = null != U ? U : e.requestId) && void 0 !== N + ? N + : "", + generateId: null != G ? G : "", + generateType: null != z ? z : d.pi.Unknown, + text2videoParams: V ? (0, n._)({}, V) : V, + }, + videoId: j.videoId, + historyRecordId: t ? String(t) : "", + aigcItemId: L.localItemId ? String(L.localItemId) : "", + publishedItemId: L.publishedItemId + ? String(L.publishedItemId) + : void 0, + thirdResourceId: L.thirdResourceId + ? String(L.thirdResourceId) + : void 0, + isMute: j.isMute, + }, + (0, l.S)(e) + ); + }, + eR = (e) => { + try { + var t, + i, + n, + r, + a = null === (t = e.itemList) || void 0 === t ? void 0 : t[0], + o = a ? eD(a, e.historyRecordId) : void 0, + s = eo( + e.task.firstFrameImage || + (null === (i = e.originItemList) || void 0 === i + ? void 0 + : i[0]) + ); + return ( + !(0, c.w)(e.generateType) && + (0, u.ss)("Video record can only be created from video type"), + { + firstGenerateType: e.firstGenerateType, + generateType: e.generateType, + historyRecordId: + null !== (n = e.historyRecordId) && void 0 !== n ? n : "", + createdTime: + (null !== (r = e.createdTime) && void 0 !== r ? r : 0) * 1e3, + itemList: e.itemList, + originItemList: e.originItemList, + mode: e.mode, + task: eA(e.task), + assetOption: e.assetOption, + firstFrameImage: s, + aigcItemId: null == o ? void 0 : o.aigcItemId, + videoDreamina: o, + historyGroupKeyMd5: null == e ? void 0 : e.historyGroupKeyMd5, + } + ); + } catch (e) { + return; + } + }; + }, + 270853: function (e, t, i) { + "use strict"; + i.d(t, { + A_: function () { + return l; + }, + FU: function () { + return s; + }, + IR: function () { + return o; + }, + }); + var n = i(733787), + r = i(243302), + a = i(172834), + o = { + [a.DAVideoGenerateType.genVideo]: n.v8.VideoGen, + [a.DAVideoGenerateType.lipSync]: n.v8.LipSync, + [a.DAVideoGenerateType.videoTemplate]: n.v8.VideoTemplate, + [a.DAVideoGenerateType.videoBgm]: n.v8.BGMGenerate, + [a.DAVideoGenerateType.videoAudioEffect]: n.v8.VideoAudioEffect, + [a.DAVideoGenerateType.none]: n.v8.VideoGen, + }, + s = { + [a.DALipSyncReferenceType.video]: r.pi.Video2Avatar, + [a.DALipSyncReferenceType.image]: r.pi.Image2Avatar, + [a.DALipSyncReferenceType.aiVideo]: r.pi.LipSync, + [a.DALipSyncReferenceType.unknown]: r.pi.Unknown, + }, + l = { + [a.DAVideoGenerateType.none]: r.pi.Unknown, + [a.DAVideoGenerateType.lipSync]: r.pi.LipSync, + [a.DAVideoGenerateType.genVideo]: r.pi.Text2Video, + [a.DAVideoGenerateType.videoAudioEffect]: r.pi.VideoAudioEffect, + [a.DAVideoGenerateType.videoTemplate]: r.pi.VideoTemplate, + [a.DAVideoGenerateType.videoBgm]: r.pi.VideoBGM, + }; + }, + 552607: function (e, t, i) { + "use strict"; + i.d(t, { + DN: function () { + return s; + }, + Ij: function () { + return c; + }, + Sv: function () { + return l; + }, + Zu: function () { + return o; + }, + r4: function () { + return a; + }, + }); + var n = i(172834), + r = i(270853); + function a(e) { + return !!e && e instanceof n.DAVideoBaseComponent; + } + function o(e) { + if (!e) return; + var t = new n.DADraft({ JSONString: e }).findMainComponent(); + if (!!a(t)) return t; + } + function s(e) { + if (!e) return; + var t = new n.DADraft({ JSONString: e }), + i = t.findMainComponent(); + if (!i) return; + var r = (e) => { + var i = t.findParentComponent(e); + return i && a(i) ? r(i) : e; + }, + o = r(i); + if (!!a(o)) return o; + } + function l(e) { + if (!e) return !1; + var t = s(e); + return ( + !!t && + [ + n.DAVideoGenerateType.videoTemplate, + n.DAVideoGenerateType.genVideo, + n.DAVideoGenerateType.lipSync, + ].includes(t.generateType) + ); + } + function c(e) { + if (!!a(e)) { + if (e.generateType === n.DAVideoGenerateType.lipSync) { + var t, + i, + o = + null === (i = e.abilities) || void 0 === i + ? void 0 + : null === (t = i.lipSync) || void 0 === t + ? void 0 + : t.referenceType; + if (!o) return; + return r.FU[o]; + } + return r.A_[e.generateType]; + } + } + }, + 107520: function (e, t, i) { + "use strict"; + i.d(t, { + Z: function () { + return a; + }, + }); + var n = i(625572), + r = i(808515); + function a(e, t) { + var i, + a, + o, + s, + l, + { commonAttr: c } = e, + { image: d, author: u } = e, + f = e.aigcImageParams, + h = "".concat(c.id), + p = (0, r.B)({ coverUrlMap: c.coverUrlMap, image: d }), + { + requestId: v, + generateId: m, + generateType: g, + text2imageParams: _, + blendParams: y, + } = f; + return { + key: h, + resourceId: h, + effectId: c.effectId, + effectType: c.effectType, + title: null !== (o = c.title) && void 0 !== o ? o : "", + description: c.description, + coverUrl: c.coverUrl, + createTime: c.createTime, + aspectRatio: null !== (s = c.aspectRatio) && void 0 !== s ? s : 1, + format: d.format, + width: + null === (i = d.largeImages[0]) || void 0 === i ? void 0 : i.width, + height: + null === (a = d.largeImages[0]) || void 0 === a ? void 0 : a.height, + transcode: p, + author: u + ? { avatar: u.avatarUrl, name: u.name, uid: u.secUid } + : void 0, + aigcParams: { + requestId: + null !== (l = null != v ? v : e.requestId) && void 0 !== l + ? l + : "", + generateId: m, + generateType: g, + text2imageParams: _ ? (0, n._)({}, _) : _, + blendParams: y ? (0, n._)({}, y) : y, + }, + historyRecordId: t ? String(t) : "", + aigcItemId: c.localItemId ? String(c.localItemId) : "", + publishedItemId: c.publishedItemId ? String(c.publishedItemId) : "", + }; + } + }, + 808515: function (e, t, i) { + "use strict"; + i.d(t, { + B: function () { + return r; + }, + N: function () { + return n; + }, + }); + var n = [360, 480, 720, 1080, 2400]; + function r(e) { + var { coverUrlMap: t, image: i } = e; + if (t) { + var { + width: r = 1, + height: a = 1, + imageUrl: o, + imageUri: s, + } = null !== (f = i.largeImages[0]) && void 0 !== f ? f : {}, + l = r / a, + c = {}; + n.forEach((e) => { + c[e] = t[e]; + }), + (u = Object.keys(c) + .filter((e) => { + var t = Number(e); + return !(!isFinite(t) || t > Math.max(r, a)) && !0; + }) + .map((e) => { + var t, + i, + n = Number(e); + return ( + r > a + ? ((t = n), (i = Math.round(n / l))) + : ((i = n), (t = Math.round(n * l))), + { width: t, height: i, url: c[e], uri: s } + ); + })); + var d = Math.max(r, a); + if (!u.some((e) => Math.max(e.width, e.height) >= d) && d <= 2400) { + var u, + f, + h, + p = Math.max(...Object.keys(c).map(Number)), + v = null !== (h = c[p]) && void 0 !== h ? h : o; + u.push({ width: r, height: a, url: v, uri: s }); + } + } else { + var m = i.largeImages[0]; + u = [ + { + url: m.imageUrl, + uri: null == m ? void 0 : m.imageUri, + width: m.width, + height: m.height, + }, + ]; + } + return u; + } + }, + 926838: function (e, t, i) { + "use strict"; + i.d(t, { + a: function () { + return n; + }, + }); + var n = (function (e) { + return ( + (e.Unknown = "unknown"), + (e.Preparing = "Preparing"), + (e.Prepared = "Prepared"), + (e.PrepareFailure = "PrepareFailure"), + (e.WaitingUpload = "waitingUpload"), + (e.Uploading = "uploading"), + (e.UploadFailure = "uploadFailure"), + (e.Uploaded = "uploaded"), + (e.Transcoding = "transcoding"), + (e.TranscodeFailure = "transcodeFailure"), + (e.Transcoded = "transcoded"), + (e.WaitForSync2UserMaterial = "waitForSync2UserMaterial"), + (e.Syncing2UserMaterial = "syncing2UserMaterial"), + (e.Synced2UserMaterial = "synced2UserMaterial"), + (e.Sync2UserMaterialFailure = "sync2UserMaterialFailure"), + (e.Success = "Success"), + e + ); + })({}); + }, + 56168: function (e, t, i) { + "use strict"; + i.d(t, { + C: function () { + return d; + }, + K: function () { + return c; + }, + }); + var n = i(625572), + r = i(639880), + a = i(820266), + o = i(243090), + s = i(43169), + l = i(782650); + function c(e) { + var t = (0, a.b)((0, o.D)(e)); + return { + playInfoDuration: null == t ? void 0 : t.playInfoDuration, + audioStreamingDuration: null == t ? void 0 : t.aDuration, + videoStreamingDuration: null == t ? void 0 : t.vDuration, + }; + } + function d(e, t) { + var i, + a, + o, + d, + u, + f, + h, + p, + v, + m, + g, + _, + y, + b, + I, + w, + x, + S, + M, + C, + T, + A, + k, + P, + E, + D, + R, + N, + { commonAttr: L, video: j, author: O, aigcImageParams: B } = e, + F = "".concat(L.id), + { + requestId: U, + generateId: G, + generateType: z, + text2videoParams: V, + } = B, + { originVideo: W } = j, + { transcodedVideo: Z } = j; + !W && + (W = + null !== + (y = + null !== + (_ = + null === (v = j.transcodedVideo) || void 0 === v + ? void 0 + : v.origin) && void 0 !== _ + ? _ + : null === (m = j.transcodedVideo) || void 0 === m + ? void 0 + : m["720p"]) && void 0 !== y + ? y + : null === (g = j.transcodedVideo) || void 0 === g + ? void 0 + : g["360p"]), + (0, l.Ks)(e); + var K = c(j.durationInfo), + H = (null == K ? void 0 : K.playInfoDuration) + ? (null == K ? void 0 : K.playInfoDuration) * 1e3 + : j.durationMs, + q = Math.round(H / 1e3); + return (0, n._)( + { + key: F, + resourceId: F, + effectId: L.effectId, + effectType: L.effectType, + title: null !== (b = L.title) && void 0 !== b ? b : "", + description: L.description, + coverUrl: L.coverUrl, + coverUri: L.coverUri, + coverUrlMap: null !== (I = L.coverUrlMap) && void 0 !== I ? I : {}, + watermarkType: j.watermarkType, + createTime: L.createTime, + aspectRatio: null !== (w = L.aspectRatio) && void 0 !== w ? w : 1, + duration: q, + durationMs: H, + durationInfo: + 0 === Object.values(K).length + ? { + playInfoDuration: q, + audioStreamingDuration: q, + videoStreamingDuration: q, + } + : K, + author: O + ? { avatar: O.avatarUrl, name: O.name, uid: O.secUid } + : void 0, + thumb: { + thumbCommonInfo: { + singleFrameHeight: + null !== + (x = + null === (a = j.thumb) || void 0 === a + ? void 0 + : null === (i = a.thumbCommonInfo) || void 0 === i + ? void 0 + : i.singleFrameHeight) && void 0 !== x + ? x + : 0, + singleFrameWidth: + null !== + (S = + null === (d = j.thumb) || void 0 === d + ? void 0 + : null === (o = d.thumbCommonInfo) || void 0 === o + ? void 0 + : o.singleFrameWidth) && void 0 !== S + ? S + : 0, + totalSetNum: + null !== + (M = + null === (f = j.thumb) || void 0 === f + ? void 0 + : null === (u = f.thumbCommonInfo) || void 0 === u + ? void 0 + : u.totalSetNum) && void 0 !== M + ? M + : 0, + }, + detailInfos: + null !== + (C = + null === (p = j.thumb) || void 0 === p + ? void 0 + : null === (h = p.detailInfos) || void 0 === h + ? void 0 + : h.map((e) => ({ + frameCount: e.frameCount, + imageHeight: e.imageHeight, + imageWidth: e.imageWidth, + mimeType: e.mimeType, + url: e.url, + uri: e.uri, + }))) && void 0 !== C + ? C + : [], + }, + originVideo: { + definition: + null !== (T = null == W ? void 0 : W.definition) && void 0 !== T + ? T + : "", + format: + null !== (A = null == W ? void 0 : W.format) && void 0 !== A + ? A + : "", + height: + null !== (k = null == W ? void 0 : W.height) && void 0 !== k + ? k + : 0, + width: + null !== (P = null == W ? void 0 : W.width) && void 0 !== P + ? P + : 0, + size: + null !== (E = null == W ? void 0 : W.size) && void 0 !== E + ? E + : 0, + url: + null !== (D = null == W ? void 0 : W.videoUrl) && void 0 !== D + ? D + : "", + fps: + null !== (R = null == W ? void 0 : W.fps) && void 0 !== R + ? R + : 0, + }, + transcode: Object.keys(null != Z ? Z : {}).reduce((e, t) => { + var i = null == Z ? void 0 : Z[t]; + return i + ? (0, r._)((0, n._)({}, e), { + [t]: { + definition: i.definition, + format: i.format, + height: i.height, + width: i.width, + size: i.size, + url: i.videoUrl, + }, + }) + : e; + }, {}), + transcodeStatus: j.transcodeStatus, + videoSizeType: j.videoSizeType, + aigcParams: { + requestId: + null !== (N = null != U ? U : e.requestId) && void 0 !== N + ? N + : "", + generateId: G, + generateType: z, + text2videoParams: V + ? (0, r._)((0, n._)({}, V), { + videoGenInputs: V.videoGenInputs.map((e) => + (0, r._)((0, n._)({}, e), { + firstFrameImage: e.firstFrameImage + ? (0, r._)((0, n._)({}, e.firstFrameImage), { + aigcImage: e.firstFrameImage.aigcImage + ? (0, r._)( + (0, n._)({}, e.firstFrameImage.aigcImage), + { + aigcImageParams: (0, r._)( + (0, n._)( + {}, + e.firstFrameImage.aigcImage + .aigcImageParams + ), + { + text2imageParams: + e.firstFrameImage.aigcImage + .aigcImageParams.text2imageParams, + } + ), + } + ) + : void 0, + }) + : void 0, + }) + ), + }) + : V, + }, + videoId: j.videoId, + historyRecordId: t ? String(t) : "", + aigcItemId: L.localItemId ? String(L.localItemId) : "", + publishedItemId: L.publishedItemId + ? String(L.publishedItemId) + : void 0, + thirdResourceId: L.thirdResourceId + ? String(L.thirdResourceId) + : void 0, + isMute: j.isMute, + }, + (0, s.S)(e) + ); + } + }, + 519927: function (e, t, i) { + "use strict"; + i.d(t, { + l: function () { + return n; + }, + }); + var n = (function (e) { + return (e.PAGE_LOAD = "PAGE_LOAD"), (e.PAGE_IDLE = "PAGE_IDLE"), e; + })({}); + }, + 252805: function (e, t, i) { + "use strict"; + i.d(t, { + f: function () { + return n; + }, + }); + var n = (0, i(333597).yh)("preload"); + }, + 184564: function (e, t, i) { + "use strict"; + function n(e) { + if (!e._fullResourceBrand) + Object.defineProperty(e, "_fullResourceBrand", { + value: () => !0, + enumerable: !1, + writable: !1, + }); + } + function r(e) { + return void 0 !== e._fullResourceBrand || !1; + } + i.d(t, { + K: function () { + return n; + }, + R: function () { + return r; + }, + }); + }, + 819277: function (e, t, i) { + "use strict"; + i.d(t, { + l: function () { + return r; + }, + }); + var n = i(184564); + function r(e, t) { + var i = + !(arguments.length > 2) || void 0 === arguments[2] || arguments[2], + r = Object.assign({}, { type: e }, t); + return i && (0, n.K)(r), { key: r.key, resource: r }; + } + }, + 434487: function (e, t, i) { + "use strict"; + i.d(t, { + GL: function () { + return c; + }, + U3: function () { + return d; + }, + fA: function () { + return l; + }, + nQ: function () { + return u; + }, + }); + var n = i(625572), + r = i(639880), + a = i(474956), + o = i(926838), + s = i(819277); + function l(e) { + return ( + !![ + o.a.Transcoded, + o.a.WaitForSync2UserMaterial, + o.a.Syncing2UserMaterial, + o.a.Synced2UserMaterial, + o.a.Sync2UserMaterialFailure, + o.a.Success, + ].includes(e.status) || !1 + ); + } + function c(e, t) { + var i = arguments.length > 2 && void 0 !== arguments[2] && arguments[2], + { onModelUpdate: a, onResourceReady: o } = e; + return (0, s.l)( + t, + (0, r._)((0, n._)({}, e), { onProgress: a, onReady: o }), + i || l(e) + ); + } + function d(e, t, i) { + var n; + return ( + (n = [ + a._g.UserAudio, + a._g.UserFile, + a._g.UserPhoto, + a._g.UserVideo, + a._g.UserFile, + ].includes(t) + ? c(i, t) + : (0, s.l)(t, i)), + e.add(n.key, n.resource), + n + ); + } + function u(e, t, i) { + var n = d(e, t, i); + return e.get(n.key, t); + } + }, + 678244: function () {}, + 639416: function () {}, + 285499: function () {}, + 403204: function () {}, + 14059: function () {}, + 821353: function () {}, + 711900: function () {}, + 861879: function (e, t, i) { + "use strict"; + i.d(t, { + to: () => iE, + q_: () => iC, + bY: () => iM, + Qr: () => ih, + q: () => iq, + Z5: () => eA, + }); + var n, + r, + a, + o = i("218571"), + s = Object.defineProperty, + l = {}; + ((e, t) => { + for (var i in t) s(e, i, { get: t[i], enumerable: !0 }); + })(l, { + assign: () => G, + colors: () => B, + createStringInterpolator: () => n, + skipAnimation: () => F, + to: () => r, + willAdvance: () => U, + }); + var c = C(), + d = (e) => I(e, c), + u = C(); + d.write = (e) => I(e, u); + var f = C(); + d.onStart = (e) => I(e, f); + var h = C(); + d.onFrame = (e) => I(e, h); + var p = C(); + d.onFinish = (e) => I(e, p); + var v = []; + d.setTimeout = (e, t) => { + let i = d.now() + t, + n = () => { + let e = v.findIndex((e) => e.cancel == n); + ~e && v.splice(e, 1), (y -= ~e ? 1 : 0); + }, + r = { time: i, handler: e, cancel: n }; + return v.splice(m(i), 0, r), (y += 1), w(), r; + }; + var m = (e) => ~(~v.findIndex((t) => t.time > e) || ~v.length); + (d.cancel = (e) => { + f.delete(e), h.delete(e), p.delete(e), c.delete(e), u.delete(e); + }), + (d.sync = (e) => { + (b = !0), d.batchedUpdates(e), (b = !1); + }), + (d.throttle = (e) => { + let t; + function i() { + try { + e(...t); + } finally { + t = null; + } + } + function n(...e) { + (t = e), d.onStart(i); + } + return ( + (n.handler = e), + (n.cancel = () => { + f.delete(i), (t = null); + }), + n + ); + }); + var g = + "undefined" != typeof window ? window.requestAnimationFrame : () => {}; + (d.use = (e) => (g = e)), + (d.now = + "undefined" != typeof performance + ? () => performance.now() + : Date.now), + (d.batchedUpdates = (e) => e()), + (d.catch = console.error), + (d.frameLoop = "always"), + (d.advance = () => { + "demand" !== d.frameLoop + ? console.warn( + "Cannot call the manual advancement of rafz whilst frameLoop is not set as demand" + ) + : M(); + }); + var _ = -1, + y = 0, + b = !1; + function I(e, t) { + b ? (t.delete(e), e(0)) : (t.add(e), w()); + } + function w() { + _ < 0 && ((_ = 0), "demand" !== d.frameLoop && g(S)); + } + function x() { + _ = -1; + } + function S() { + ~_ && (g(S), d.batchedUpdates(M)); + } + function M() { + let e = _, + t = m((_ = d.now())); + if ((t && (T(v.splice(0, t), (e) => e.handler()), (y -= t)), !y)) { + x(); + return; + } + f.flush(), + c.flush(e ? Math.min(64, _ - e) : 16.667), + h.flush(), + u.flush(), + p.flush(); + } + function C() { + let e = new Set(), + t = e; + return { + add(i) { + (y += t != e || e.has(i) ? 0 : 1), e.add(i); + }, + delete: (i) => ((y -= t == e && e.has(i) ? 1 : 0), e.delete(i)), + flush(i) { + t.size && + ((e = new Set()), + (y -= t.size), + T(t, (t) => t(i) && e.add(t)), + (y += e.size), + (t = e)); + }, + }; + } + function T(e, t) { + e.forEach((e) => { + try { + t(e); + } catch (e) { + d.catch(e); + } + }); + } + function A() {} + var k = (e, t, i) => + Object.defineProperty(e, t, { + value: i, + writable: !0, + configurable: !0, + }), + P = { + arr: Array.isArray, + obj: (e) => !!e && "Object" === e.constructor.name, + fun: (e) => "function" == typeof e, + str: (e) => "string" == typeof e, + num: (e) => "number" == typeof e, + und: (e) => void 0 === e, + }; + function E(e, t) { + if (P.arr(e)) { + if (!P.arr(t) || e.length !== t.length) return !1; + for (let i = 0; i < e.length; i++) if (e[i] !== t[i]) return !1; + return !0; + } + return e === t; + } + var D = (e, t) => e.forEach(t); + function R(e, t, i) { + if (P.arr(e)) { + for (let n = 0; n < e.length; n++) t.call(i, e[n], `${n}`); + return; + } + for (let n in e) e.hasOwnProperty(n) && t.call(i, e[n], n); + } + var N = (e) => (P.und(e) ? [] : P.arr(e) ? e : [e]); + function L(e, t) { + if (e.size) { + let i = Array.from(e); + e.clear(), D(i, t); + } + } + var j = (e, ...t) => L(e, (e) => e(...t)), + O = () => + "undefined" == typeof window || + !window.navigator || + /ServerSideRendering|^Deno\//.test(window.navigator.userAgent), + B = null, + F = !1, + U = A, + G = (e) => { + e.to && (r = e.to), + e.now && (d.now = e.now), + void 0 !== e.colors && (B = e.colors), + null != e.skipAnimation && (F = e.skipAnimation), + e.createStringInterpolator && (n = e.createStringInterpolator), + e.requestAnimationFrame && d.use(e.requestAnimationFrame), + e.batchedUpdates && (d.batchedUpdates = e.batchedUpdates), + e.willAdvance && (U = e.willAdvance), + e.frameLoop && (d.frameLoop = e.frameLoop); + }, + z = new Set(), + V = [], + W = [], + Z = 0, + K = { + get idle() { + return !z.size && !V.length; + }, + start(e) { + Z > e.priority ? (z.add(e), d.onStart(H)) : (q(e), d(Y)); + }, + advance: Y, + sort(e) { + if (Z) d.onFrame(() => K.sort(e)); + else { + let t = V.indexOf(e); + ~t && (V.splice(t, 1), J(e)); + } + }, + clear() { + (V = []), z.clear(); + }, + }; + function H() { + z.forEach(q), z.clear(), d(Y); + } + function q(e) { + !V.includes(e) && J(e); + } + function J(e) { + V.splice( + Q(V, (t) => t.priority > e.priority), + 0, + e + ); + } + function Y(e) { + let t = W; + for (let i = 0; i < V.length; i++) { + let n = V[i]; + (Z = n.priority), + !n.idle && (U(n), n.advance(e), !n.idle && t.push(n)); + } + return (Z = 0), ((W = V).length = 0), (V = t).length > 0; + } + function Q(e, t) { + let i = e.findIndex(t); + return i < 0 ? e.length : i; + } + var X = (e, t, i) => Math.min(Math.max(i, e), t), + $ = { + transparent: 0, + aliceblue: 0xf0f8ffff, + antiquewhite: 0xfaebd7ff, + aqua: 0xffffff, + aquamarine: 0x7fffd4ff, + azure: 0xf0ffffff, + beige: 0xf5f5dcff, + bisque: 0xffe4c4ff, + black: 255, + blanchedalmond: 0xffebcdff, + blue: 65535, + blueviolet: 0x8a2be2ff, + brown: 0xa52a2aff, + burlywood: 0xdeb887ff, + burntsienna: 0xea7e5dff, + cadetblue: 0x5f9ea0ff, + chartreuse: 0x7fff00ff, + chocolate: 0xd2691eff, + coral: 0xff7f50ff, + cornflowerblue: 0x6495edff, + cornsilk: 0xfff8dcff, + crimson: 0xdc143cff, + cyan: 0xffffff, + darkblue: 35839, + darkcyan: 9145343, + darkgoldenrod: 0xb8860bff, + darkgray: 0xa9a9a9ff, + darkgreen: 6553855, + darkgrey: 0xa9a9a9ff, + darkkhaki: 0xbdb76bff, + darkmagenta: 0x8b008bff, + darkolivegreen: 0x556b2fff, + darkorange: 0xff8c00ff, + darkorchid: 0x9932ccff, + darkred: 0x8b0000ff, + darksalmon: 0xe9967aff, + darkseagreen: 0x8fbc8fff, + darkslateblue: 0x483d8bff, + darkslategray: 0x2f4f4fff, + darkslategrey: 0x2f4f4fff, + darkturquoise: 0xced1ff, + darkviolet: 0x9400d3ff, + deeppink: 0xff1493ff, + deepskyblue: 0xbfffff, + dimgray: 0x696969ff, + dimgrey: 0x696969ff, + dodgerblue: 0x1e90ffff, + firebrick: 0xb22222ff, + floralwhite: 0xfffaf0ff, + forestgreen: 0x228b22ff, + fuchsia: 0xff00ffff, + gainsboro: 0xdcdcdcff, + ghostwhite: 0xf8f8ffff, + gold: 0xffd700ff, + goldenrod: 0xdaa520ff, + gray: 0x808080ff, + green: 8388863, + greenyellow: 0xadff2fff, + grey: 0x808080ff, + honeydew: 0xf0fff0ff, + hotpink: 0xff69b4ff, + indianred: 0xcd5c5cff, + indigo: 0x4b0082ff, + ivory: 0xfffff0ff, + khaki: 0xf0e68cff, + lavender: 0xe6e6faff, + lavenderblush: 0xfff0f5ff, + lawngreen: 0x7cfc00ff, + lemonchiffon: 0xfffacdff, + lightblue: 0xadd8e6ff, + lightcoral: 0xf08080ff, + lightcyan: 0xe0ffffff, + lightgoldenrodyellow: 0xfafad2ff, + lightgray: 0xd3d3d3ff, + lightgreen: 0x90ee90ff, + lightgrey: 0xd3d3d3ff, + lightpink: 0xffb6c1ff, + lightsalmon: 0xffa07aff, + lightseagreen: 0x20b2aaff, + lightskyblue: 0x87cefaff, + lightslategray: 0x778899ff, + lightslategrey: 0x778899ff, + lightsteelblue: 0xb0c4deff, + lightyellow: 0xffffe0ff, + lime: 0xff00ff, + limegreen: 0x32cd32ff, + linen: 0xfaf0e6ff, + magenta: 0xff00ffff, + maroon: 0x800000ff, + mediumaquamarine: 0x66cdaaff, + mediumblue: 52735, + mediumorchid: 0xba55d3ff, + mediumpurple: 0x9370dbff, + mediumseagreen: 0x3cb371ff, + mediumslateblue: 0x7b68eeff, + mediumspringgreen: 0xfa9aff, + mediumturquoise: 0x48d1ccff, + mediumvioletred: 0xc71585ff, + midnightblue: 0x191970ff, + mintcream: 0xf5fffaff, + mistyrose: 0xffe4e1ff, + moccasin: 0xffe4b5ff, + navajowhite: 0xffdeadff, + navy: 33023, + oldlace: 0xfdf5e6ff, + olive: 0x808000ff, + olivedrab: 0x6b8e23ff, + orange: 0xffa500ff, + orangered: 0xff4500ff, + orchid: 0xda70d6ff, + palegoldenrod: 0xeee8aaff, + palegreen: 0x98fb98ff, + paleturquoise: 0xafeeeeff, + palevioletred: 0xdb7093ff, + papayawhip: 0xffefd5ff, + peachpuff: 0xffdab9ff, + peru: 0xcd853fff, + pink: 0xffc0cbff, + plum: 0xdda0ddff, + powderblue: 0xb0e0e6ff, + purple: 0x800080ff, + rebeccapurple: 0x663399ff, + red: 0xff0000ff, + rosybrown: 0xbc8f8fff, + royalblue: 0x4169e1ff, + saddlebrown: 0x8b4513ff, + salmon: 0xfa8072ff, + sandybrown: 0xf4a460ff, + seagreen: 0x2e8b57ff, + seashell: 0xfff5eeff, + sienna: 0xa0522dff, + silver: 0xc0c0c0ff, + skyblue: 0x87ceebff, + slateblue: 0x6a5acdff, + slategray: 0x708090ff, + slategrey: 0x708090ff, + snow: 0xfffafaff, + springgreen: 0xff7fff, + steelblue: 0x4682b4ff, + tan: 0xd2b48cff, + teal: 8421631, + thistle: 0xd8bfd8ff, + tomato: 0xff6347ff, + turquoise: 0x40e0d0ff, + violet: 0xee82eeff, + wheat: 0xf5deb3ff, + white: 0xffffffff, + whitesmoke: 0xf5f5f5ff, + yellow: 0xffff00ff, + yellowgreen: 0x9acd32ff, + }, + ee = "[-+]?\\d*\\.?\\d+", + et = ee + "%"; + function ei(...e) { + return "\\(\\s*(" + e.join(")\\s*,\\s*(") + ")\\s*\\)"; + } + var en = RegExp("rgb" + ei(ee, ee, ee)), + er = RegExp("rgba" + ei(ee, ee, ee, ee)), + ea = RegExp("hsl" + ei(ee, et, et)), + eo = RegExp("hsla" + ei(ee, et, et, ee)), + es = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/, + el = + /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/, + ec = /^#([0-9a-fA-F]{6})$/, + ed = /^#([0-9a-fA-F]{8})$/; + function eu(e) { + let t; + return "number" == typeof e + ? e >>> 0 === e && e >= 0 && e <= 0xffffffff + ? e + : null + : (t = ec.exec(e)) + ? parseInt(t[1] + "ff", 16) >>> 0 + : B && void 0 !== B[e] + ? B[e] + : (t = en.exec(e)) + ? ((ep(t[1]) << 24) | (ep(t[2]) << 16) | (ep(t[3]) << 8) | 255) >>> 0 + : (t = er.exec(e)) + ? ((ep(t[1]) << 24) | + (ep(t[2]) << 16) | + (ep(t[3]) << 8) | + em(t[4])) >>> + 0 + : (t = es.exec(e)) + ? parseInt(t[1] + t[1] + t[2] + t[2] + t[3] + t[3] + "ff", 16) >>> 0 + : (t = ed.exec(e)) + ? parseInt(t[1], 16) >>> 0 + : (t = el.exec(e)) + ? parseInt( + t[1] + t[1] + t[2] + t[2] + t[3] + t[3] + t[4] + t[4], + 16 + ) >>> 0 + : (t = ea.exec(e)) + ? (255 | eh(ev(t[1]), eg(t[2]), eg(t[3]))) >>> 0 + : (t = eo.exec(e)) + ? (eh(ev(t[1]), eg(t[2]), eg(t[3])) | em(t[4])) >>> 0 + : null; + } + function ef(e, t, i) { + return (i < 0 && (i += 1), i > 1 && (i -= 1), i < 1 / 6) + ? e + (t - e) * 6 * i + : i < 0.5 + ? t + : i < 2 / 3 + ? e + (t - e) * (2 / 3 - i) * 6 + : e; + } + function eh(e, t, i) { + let n = i < 0.5 ? i * (1 + t) : i + t - i * t, + r = 2 * i - n, + a = ef(r, n, e + 1 / 3), + o = ef(r, n, e); + return ( + (Math.round(255 * a) << 24) | + (Math.round(255 * o) << 16) | + (Math.round(255 * ef(r, n, e - 1 / 3)) << 8) + ); + } + function ep(e) { + let t = parseInt(e, 10); + return t < 0 ? 0 : t > 255 ? 255 : t; + } + function ev(e) { + return (((parseFloat(e) % 360) + 360) % 360) / 360; + } + function em(e) { + let t = parseFloat(e); + return t < 0 ? 0 : t > 1 ? 255 : Math.round(255 * t); + } + function eg(e) { + let t = parseFloat(e); + return t < 0 ? 0 : t > 100 ? 1 : t / 100; + } + function e_(e) { + let t = eu(e); + if (null === t) return e; + let i = (0xff000000 & (t = t || 0)) >>> 24, + n = (0xff0000 & t) >>> 16, + r = (65280 & t) >>> 8, + a = (255 & t) / 255; + return `rgba(${i}, ${n}, ${r}, ${a})`; + } + var ey = (e, t, i) => { + if (P.fun(e)) return e; + if (P.arr(e)) return ey({ range: e, output: t, extrapolate: i }); + if (P.str(e.output[0])) return n(e); + let r = e, + a = r.output, + o = r.range || [0, 1], + s = r.extrapolateLeft || r.extrapolate || "extend", + l = r.extrapolateRight || r.extrapolate || "extend", + c = r.easing || ((e) => e); + return (e) => { + let t = eI(e, o); + return eb(e, o[t], o[t + 1], a[t], a[t + 1], c, s, l, r.map); + }; + }; + function eb(e, t, i, n, r, a, o, s, l) { + let c = l ? l(e) : e; + if (c < t) { + if ("identity" === o) return c; + "clamp" === o && (c = t); + } + if (c > i) { + if ("identity" === s) return c; + "clamp" === s && (c = i); + } + return n === r + ? n + : t === i + ? e <= t + ? n + : r + : (t === -1 / 0 + ? (c = -c) + : i === 1 / 0 + ? (c -= t) + : (c = (c - t) / (i - t)), + (c = a(c)), + n === -1 / 0 + ? (c = -c) + : r === 1 / 0 + ? (c += n) + : (c = c * (r - n) + n), + c); + } + function eI(e, t) { + for (var i = 1; i < t.length - 1 && !(t[i] >= e); ++i); + return i - 1; + } + var ew = 1.70158, + ex = 2.5949095, + eS = 2.70158, + eM = (2 * Math.PI) / 3, + eC = (2 * Math.PI) / 4.5, + eT = (e) => { + let t = 7.5625, + i = 2.75; + if (e < 0.36363636363636365) return t * e * e; + if (e < 2 / i) return t * (e -= 1.5 / i) * e + 0.75; + if (e < 2.5 / i) return t * (e -= 2.25 / i) * e + 0.9375; + else return t * (e -= 2.625 / i) * e + 0.984375; + }, + eA = { + linear: (e) => e, + easeInQuad: (e) => e * e, + easeOutQuad: (e) => 1 - (1 - e) * (1 - e), + easeInOutQuad: (e) => + e < 0.5 ? 2 * e * e : 1 - Math.pow(-2 * e + 2, 2) / 2, + easeInCubic: (e) => e * e * e, + easeOutCubic: (e) => 1 - Math.pow(1 - e, 3), + easeInOutCubic: (e) => + e < 0.5 ? 4 * e * e * e : 1 - Math.pow(-2 * e + 2, 3) / 2, + easeInQuart: (e) => e * e * e * e, + easeOutQuart: (e) => 1 - Math.pow(1 - e, 4), + easeInOutQuart: (e) => + e < 0.5 ? 8 * e * e * e * e : 1 - Math.pow(-2 * e + 2, 4) / 2, + easeInQuint: (e) => e * e * e * e * e, + easeOutQuint: (e) => 1 - Math.pow(1 - e, 5), + easeInOutQuint: (e) => + e < 0.5 ? 16 * e * e * e * e * e : 1 - Math.pow(-2 * e + 2, 5) / 2, + easeInSine: (e) => 1 - Math.cos((e * Math.PI) / 2), + easeOutSine: (e) => Math.sin((e * Math.PI) / 2), + easeInOutSine: (e) => -(Math.cos(Math.PI * e) - 1) / 2, + easeInExpo: (e) => (0 === e ? 0 : Math.pow(2, 10 * e - 10)), + easeOutExpo: (e) => (1 === e ? 1 : 1 - Math.pow(2, -10 * e)), + easeInOutExpo: (e) => + 0 === e + ? 0 + : 1 === e + ? 1 + : e < 0.5 + ? Math.pow(2, 20 * e - 10) / 2 + : (2 - Math.pow(2, -20 * e + 10)) / 2, + easeInCirc: (e) => 1 - Math.sqrt(1 - Math.pow(e, 2)), + easeOutCirc: (e) => Math.sqrt(1 - Math.pow(e - 1, 2)), + easeInOutCirc: (e) => + e < 0.5 + ? (1 - Math.sqrt(1 - Math.pow(2 * e, 2))) / 2 + : (Math.sqrt(1 - Math.pow(-2 * e + 2, 2)) + 1) / 2, + easeInBack: (e) => eS * e * e * e - ew * e * e, + easeOutBack: (e) => + 1 + eS * Math.pow(e - 1, 3) + ew * Math.pow(e - 1, 2), + easeInOutBack: (e) => + e < 0.5 + ? (Math.pow(2 * e, 2) * ((ex + 1) * 2 * e - ex)) / 2 + : (Math.pow(2 * e - 2, 2) * ((ex + 1) * (2 * e - 2) + ex) + 2) / + 2, + easeInElastic: (e) => + 0 === e + ? 0 + : 1 === e + ? 1 + : -Math.pow(2, 10 * e - 10) * Math.sin((10 * e - 10.75) * eM), + easeOutElastic: (e) => + 0 === e + ? 0 + : 1 === e + ? 1 + : Math.pow(2, -10 * e) * Math.sin((10 * e - 0.75) * eM) + 1, + easeInOutElastic: (e) => + 0 === e + ? 0 + : 1 === e + ? 1 + : e < 0.5 + ? -(Math.pow(2, 20 * e - 10) * Math.sin((20 * e - 11.125) * eC)) / + 2 + : (Math.pow(2, -20 * e + 10) * Math.sin((20 * e - 11.125) * eC)) / + 2 + + 1, + easeInBounce: (e) => 1 - eT(1 - e), + easeOutBounce: eT, + easeInOutBounce: (e) => + e < 0.5 ? (1 - eT(1 - 2 * e)) / 2 : (1 + eT(2 * e - 1)) / 2, + steps: + (e, t = "end") => + (i) => { + let n = + (i = "end" === t ? Math.min(i, 0.999) : Math.max(i, 0.001)) * e; + return X(0, 1, ("end" === t ? Math.floor(n) : Math.ceil(n)) / e); + }, + }, + ek = Symbol.for("FluidValue.get"), + eP = Symbol.for("FluidValue.observers"), + eE = (e) => !!(e && e[ek]), + eD = (e) => (e && e[ek] ? e[ek]() : e), + eR = (e) => e[eP] || null; + function eN(e, t) { + e.eventObserved ? e.eventObserved(t) : e(t); + } + function eL(e, t) { + let i = e[eP]; + i && + i.forEach((e) => { + eN(e, t); + }); + } + var ej = class { + constructor(e) { + if (!e && !(e = this.get)) throw Error("Unknown getter"); + eO(this, e); + } + }, + eO = (e, t) => eU(e, ek, t); + function eB(e, t) { + if (e[ek]) { + let i = e[eP]; + !i && eU(e, eP, (i = new Set())), + !i.has(t) && + (i.add(t), e.observerAdded && e.observerAdded(i.size, t)); + } + return t; + } + function eF(e, t) { + let i = e[eP]; + if (i && i.has(t)) { + let n = i.size - 1; + n ? i.delete(t) : (e[eP] = null), + e.observerRemoved && e.observerRemoved(n, t); + } + } + var eU = (e, t, i) => + Object.defineProperty(e, t, { + value: i, + writable: !0, + configurable: !0, + }), + eG = /[+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, + ez = + /(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\((-?\d+%?[,\s]+){2,3}\s*[\d\.]+%?\))/gi, + eV = RegExp(`(${eG.source})(%|[a-z]+)`, "i"), + eW = /rgba\(([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+)\)/gi, + eZ = /var\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\)/, + eK = (e) => { + let [t, i] = eH(e); + if (!t || O()) return e; + let n = window + .getComputedStyle(document.documentElement) + .getPropertyValue(t); + if (n) return n.trim(); + if (i && i.startsWith("--")) { + let e = window + .getComputedStyle(document.documentElement) + .getPropertyValue(i); + if (e) return e; + } else if (i && eZ.test(i)) return eK(i); + else if (i) return i; + return e; + }, + eH = (e) => { + let t = eZ.exec(e); + if (!t) return [,]; + let [, i, n] = t; + return [i, n]; + }, + eq = (e, t, i, n, r) => + `rgba(${Math.round(t)}, ${Math.round(i)}, ${Math.round(n)}, ${r})`, + eJ = (e) => { + !a && + (a = B + ? RegExp(`(${Object.keys(B).join("|")})(?!\\w)`, "g") + : /^\b$/); + let t = e.output.map((e) => + eD(e).replace(eZ, eK).replace(ez, e_).replace(a, e_) + ), + i = t.map((e) => e.match(eG).map(Number)), + n = i[0] + .map((e, t) => + i.map((e) => { + if (!(t in e)) + throw Error( + 'The arity of each "output" value must be equal' + ); + return e[t]; + }) + ) + .map((t) => ey({ ...e, output: t })); + return (e) => { + let i = + !eV.test(t[0]) && t.find((e) => eV.test(e))?.replace(eG, ""), + r = 0; + return t[0] + .replace(eG, () => `${n[r++](e)}${i || ""}`) + .replace(eW, eq); + }; + }, + eY = "react-spring: ", + eQ = (e) => { + let t = e, + i = !1; + if ("function" != typeof t) + throw TypeError(`${eY}once requires a function parameter`); + return (...e) => { + !i && (t(...e), (i = !0)); + }; + }, + eX = eQ(console.warn); + function e$() { + eX( + `${eY}The "interpolate" function is deprecated in v9 (use "to" instead)` + ); + } + var e0 = eQ(console.warn); + function e1() { + e0( + `${eY}Directly calling start instead of using the api object is deprecated in v9 (use ".start" instead), this will be removed in later 0.X.0 versions` + ); + } + function e2(e) { + return ( + P.str(e) && + ("#" == e[0] || + /\d/.test(e) || + (!O() && eZ.test(e)) || + e in (B || {})) + ); + } + var e6 = O() ? o.useEffect : o.useLayoutEffect, + e4 = () => { + let e = (0, o.useRef)(!1); + return ( + e6( + () => ( + (e.current = !0), + () => { + e.current = !1; + } + ), + [] + ), + e + ); + }; + function e3() { + let e = (0, o.useState)()[1], + t = e4(); + return () => { + t.current && e(Math.random()); + }; + } + function e8(e, t) { + let [i] = (0, o.useState)(() => ({ inputs: t, result: e() })), + n = (0, o.useRef)(), + r = n.current, + a = r; + return ( + a + ? !(t && a.inputs && e9(t, a.inputs)) && + (a = { inputs: t, result: e() }) + : (a = i), + (0, o.useEffect)(() => { + (n.current = a), r == i && (i.inputs = i.result = void 0); + }, [a]), + a.result + ); + } + function e9(e, t) { + if (e.length !== t.length) return !1; + for (let i = 0; i < e.length; i++) if (e[i] !== t[i]) return !1; + return !0; + } + var e5 = (e) => (0, o.useEffect)(e, e7), + e7 = []; + function te(e) { + let t = (0, o.useRef)(); + return ( + (0, o.useEffect)(() => { + t.current = e; + }), + t.current + ); + } + var tt = Symbol.for("Animated:node"), + ti = (e) => !!e && e[tt] === e, + tn = (e) => e && e[tt], + tr = (e, t) => k(e, tt, t), + ta = (e) => e && e[tt] && e[tt].getPayload(), + to = class { + constructor() { + tr(this, this); + } + getPayload() { + return this.payload || []; + } + }, + ts = class extends to { + constructor(e) { + super(), + (this._value = e), + (this.done = !0), + (this.durationProgress = 0), + P.num(this._value) && (this.lastPosition = this._value); + } + static create(e) { + return new ts(e); + } + getPayload() { + return [this]; + } + getValue() { + return this._value; + } + setValue(e, t) { + return ( + P.num(e) && + ((this.lastPosition = e), + t && + ((e = Math.round(e / t) * t), + this.done && (this.lastPosition = e))), + this._value !== e && ((this._value = e), !0) + ); + } + reset() { + let { done: e } = this; + (this.done = !1), + P.num(this._value) && + ((this.elapsedTime = 0), + (this.durationProgress = 0), + (this.lastPosition = this._value), + e && (this.lastVelocity = null), + (this.v0 = null)); + } + }, + tl = class extends ts { + constructor(e) { + super(0), + (this._string = null), + (this._toString = ey({ output: [e, e] })); + } + static create(e) { + return new tl(e); + } + getValue() { + let e = this._string; + return null == e ? (this._string = this._toString(this._value)) : e; + } + setValue(e) { + if (P.str(e)) { + if (e == this._string) return !1; + (this._string = e), (this._value = 1); + } else { + if (!super.setValue(e)) return !1; + this._string = null; + } + return !0; + } + reset(e) { + e && (this._toString = ey({ output: [this.getValue(), e] })), + (this._value = 0), + super.reset(); + } + }, + tc = { dependencies: null }, + td = class extends to { + constructor(e) { + super(), (this.source = e), this.setValue(e); + } + getValue(e) { + let t = {}; + return ( + R(this.source, (i, n) => { + ti(i) + ? (t[n] = i.getValue(e)) + : eE(i) + ? (t[n] = eD(i)) + : !e && (t[n] = i); + }), + t + ); + } + setValue(e) { + (this.source = e), (this.payload = this._makePayload(e)); + } + reset() { + this.payload && D(this.payload, (e) => e.reset()); + } + _makePayload(e) { + if (e) { + let t = new Set(); + return R(e, this._addToPayload, t), Array.from(t); + } + } + _addToPayload(e) { + tc.dependencies && eE(e) && tc.dependencies.add(e); + let t = ta(e); + t && D(t, (e) => this.add(e)); + } + }, + tu = class extends td { + constructor(e) { + super(e); + } + static create(e) { + return new tu(e); + } + getValue() { + return this.source.map((e) => e.getValue()); + } + setValue(e) { + let t = this.getPayload(); + return e.length == t.length + ? t.map((t, i) => t.setValue(e[i])).some(Boolean) + : (super.setValue(e.map(tf)), !0); + } + }; + function tf(e) { + return (e2(e) ? tl : ts).create(e); + } + function th(e) { + let t = tn(e); + return t ? t.constructor : P.arr(e) ? tu : e2(e) ? tl : ts; + } + var tp = (e, t) => { + let i = !P.fun(e) || (e.prototype && e.prototype.isReactComponent); + return (0, o.forwardRef)((n, r) => { + let a = (0, o.useRef)(null), + s = + i && + (0, o.useCallback)( + (e) => { + a.current = tg(r, e); + }, + [r] + ), + [l, c] = tm(n, t), + u = e3(), + f = () => { + let e = a.current; + if (!i || !!e) + !1 === (!!e && t.applyAnimatedValues(e, l.getValue(!0))) && + u(); + }, + h = new tv(f, c), + p = (0, o.useRef)(); + e6( + () => ( + (p.current = h), + D(c, (e) => eB(e, h)), + () => { + p.current && + (D(p.current.deps, (e) => eF(e, p.current)), + d.cancel(p.current.update)); + } + ) + ), + (0, o.useEffect)(f, []), + e5(() => () => { + let e = p.current; + D(e.deps, (t) => eF(t, e)); + }); + let v = t.getComponentProps(l.getValue()); + return o.createElement(e, { ...v, ref: s }); + }); + }, + tv = class { + constructor(e, t) { + (this.update = e), (this.deps = t); + } + eventObserved(e) { + "change" == e.type && d.write(this.update); + } + }; + function tm(e, t) { + let i = new Set(); + return ( + (tc.dependencies = i), + e.style && (e = { ...e, style: t.createAnimatedStyle(e.style) }), + (e = new td(e)), + (tc.dependencies = null), + [e, i] + ); + } + function tg(e, t) { + return e && (P.fun(e) ? e(t) : (e.current = t)), t; + } + var t_ = Symbol.for("AnimatedComponent"), + ty = ( + e, + { + applyAnimatedValues: t = () => !1, + createAnimatedStyle: i = (e) => new td(e), + getComponentProps: n = (e) => e, + } = {} + ) => { + let r = { + applyAnimatedValues: t, + createAnimatedStyle: i, + getComponentProps: n, + }, + a = (e) => { + let t = tb(e) || "Anonymous"; + return ( + ((e = P.str(e) + ? a[e] || (a[e] = tp(e, r)) + : e[t_] || + (e[t_] = tp(e, r))).displayName = `Animated(${t})`), + e + ); + }; + return ( + R(e, (t, i) => { + P.arr(e) && (i = tb(t)), (a[i] = a(t)); + }), + { animated: a } + ); + }, + tb = (e) => + P.str(e) + ? e + : e && P.str(e.displayName) + ? e.displayName + : (P.fun(e) && e.name) || null; + function tI(e, ...t) { + return P.fun(e) ? e(...t) : e; + } + var tw = (e, t) => + !0 === e || !!(t && e && (P.fun(e) ? e(t) : N(e).includes(t))), + tx = (e, t) => (P.obj(e) ? t && e[t] : e), + tS = (e, t) => + !0 === e.default ? e[t] : e.default ? e.default[t] : void 0, + tM = (e) => e, + tC = (e, t = tM) => { + let i = tT; + e.default && !0 !== e.default && (i = Object.keys((e = e.default))); + let n = {}; + for (let r of i) { + let i = t(e[r], r); + !P.und(i) && (n[r] = i); + } + return n; + }, + tT = [ + "config", + "onProps", + "onStart", + "onChange", + "onPause", + "onResume", + "onRest", + ], + tA = { + config: 1, + from: 1, + to: 1, + ref: 1, + loop: 1, + reset: 1, + pause: 1, + cancel: 1, + reverse: 1, + immediate: 1, + default: 1, + delay: 1, + onProps: 1, + onStart: 1, + onChange: 1, + onPause: 1, + onResume: 1, + onRest: 1, + onResolve: 1, + items: 1, + trail: 1, + sort: 1, + expires: 1, + initial: 1, + enter: 1, + update: 1, + leave: 1, + children: 1, + onDestroyed: 1, + keys: 1, + callId: 1, + parentId: 1, + }; + function tk(e) { + let t = {}, + i = 0; + if ( + (R(e, (e, n) => { + !tA[n] && ((t[n] = e), i++); + }), + i) + ) + return t; + } + function tP(e) { + let t = tk(e); + if (t) { + let i = { to: t }; + return R(e, (e, n) => n in t || (i[n] = e)), i; + } + return { ...e }; + } + function tE(e) { + return ( + (e = eD(e)), + P.arr(e) + ? e.map(tE) + : e2(e) + ? l.createStringInterpolator({ range: [0, 1], output: [e, e] })(1) + : e + ); + } + function tD(e) { + for (let t in e) return !0; + return !1; + } + function tR(e) { + return P.fun(e) || (P.arr(e) && P.obj(e[0])); + } + function tN(e, t) { + e.ref?.delete(e), t?.delete(e); + } + function tL(e, t) { + t && e.ref !== t && (e.ref?.delete(e), t.add(e), (e.ref = t)); + } + var tj = { tension: 170, friction: 26 }, + tO = { ...tj, mass: 1, damping: 1, easing: eA.linear, clamp: !1 }, + tB = class { + constructor() { + (this.velocity = 0), Object.assign(this, tO); + } + }; + function tF(e, t, i) { + for (let n in (i && (tU((i = { ...i }), t), (t = { ...i, ...t })), + tU(e, t), + Object.assign(e, t), + tO)) + null == e[n] && (e[n] = tO[n]); + let { frequency: n, damping: r } = e, + { mass: a } = e; + return ( + !P.und(n) && + (n < 0.01 && (n = 0.01), + r < 0 && (r = 0), + (e.tension = Math.pow((2 * Math.PI) / n, 2) * a), + (e.friction = (4 * Math.PI * r * a) / n)), + e + ); + } + function tU(e, t) { + if (P.und(t.decay)) { + let i = !P.und(t.tension) || !P.und(t.friction); + (i || !P.und(t.frequency) || !P.und(t.damping) || !P.und(t.mass)) && + ((e.duration = void 0), (e.decay = void 0)), + i && (e.frequency = void 0); + } else e.duration = void 0; + } + var tG = [], + tz = class { + constructor() { + (this.changed = !1), + (this.values = tG), + (this.toValues = null), + (this.fromValues = tG), + (this.config = new tB()), + (this.immediate = !1); + } + }; + function tV( + e, + { key: t, props: i, defaultProps: n, state: r, actions: a } + ) { + return new Promise((o, s) => { + let c, u; + let f = tw(i.cancel ?? n?.cancel, t); + if (f) v(); + else { + !P.und(i.pause) && (r.paused = tw(i.pause, t)); + let e = n?.pause; + !0 !== e && (e = r.paused || tw(e, t)), + (c = tI(i.delay || 0, t)), + e ? (r.resumeQueue.add(p), a.pause()) : (a.resume(), p()); + } + function h() { + r.resumeQueue.add(p), + r.timeouts.delete(u), + u.cancel(), + (c = u.time - d.now()); + } + function p() { + c > 0 && !l.skipAnimation + ? ((r.delayed = !0), + (u = d.setTimeout(v, c)), + r.pauseQueue.add(h), + r.timeouts.add(u)) + : v(); + } + function v() { + r.delayed && (r.delayed = !1), + r.pauseQueue.delete(h), + r.timeouts.delete(u), + e <= (r.cancelId || 0) && (f = !0); + try { + a.start({ ...i, callId: e, cancel: f }, o); + } catch (e) { + s(e); + } + } + }); + } + var tW = (e, t) => + 1 == t.length + ? t[0] + : t.some((e) => e.cancelled) + ? tH(e.get()) + : t.every((e) => e.noop) + ? tZ(e.get()) + : tK( + e.get(), + t.every((e) => e.finished) + ), + tZ = (e) => ({ value: e, noop: !0, finished: !0, cancelled: !1 }), + tK = (e, t, i = !1) => ({ value: e, finished: t, cancelled: i }), + tH = (e) => ({ value: e, cancelled: !0, finished: !1 }); + function tq(e, t, i, n) { + let { callId: r, parentId: a, onRest: o } = t, + { asyncTo: s, promise: c } = i; + return a || e !== s || t.reset + ? (i.promise = (async () => { + let u, f, h; + (i.asyncId = r), (i.asyncTo = e); + let p = tC(t, (e, t) => ("onRest" === t ? void 0 : e)), + v = new Promise((e, t) => ((u = e), (f = t))), + m = (e) => { + let t = + (r <= (i.cancelId || 0) && tH(n)) || + (r !== i.asyncId && tK(n, !1)); + if (t) throw ((e.result = t), f(e), e); + }, + g = (e, t) => { + let a = new tY(), + o = new tQ(); + return (async () => { + if (l.skipAnimation) + throw (tJ(i), (o.result = tK(n, !1)), f(o), o); + m(a); + let s = P.obj(e) ? { ...e } : { ...t, to: e }; + (s.parentId = r), + R(p, (e, t) => { + P.und(s[t]) && (s[t] = e); + }); + let c = await n.start(s); + return ( + m(a), + i.paused && + (await new Promise((e) => { + i.resumeQueue.add(e); + })), + c + ); + })(); + }; + if (l.skipAnimation) return tJ(i), tK(n, !1); + try { + let t; + (t = P.arr(e) + ? (async (e) => { + for (let t of e) await g(t); + })(e) + : Promise.resolve(e(g, n.stop.bind(n)))), + await Promise.all([t.then(u), v]), + (h = tK(n.get(), !0, !1)); + } catch (e) { + if (e instanceof tY) h = e.result; + else if (e instanceof tQ) h = e.result; + else throw e; + } finally { + r == i.asyncId && + ((i.asyncId = a), + (i.asyncTo = a ? s : void 0), + (i.promise = a ? c : void 0)); + } + return ( + P.fun(o) && + d.batchedUpdates(() => { + o(h, n, n.item); + }), + h + ); + })()) + : c; + } + function tJ(e, t) { + L(e.timeouts, (e) => e.cancel()), + e.pauseQueue.clear(), + e.resumeQueue.clear(), + (e.asyncId = e.asyncTo = e.promise = void 0), + t && (e.cancelId = t); + } + var tY = class extends Error { + constructor() { + super( + "An async animation has been interrupted. You see this error because you forgot to use `await` or `.catch(...)` on its returned promise." + ); + } + }, + tQ = class extends Error { + constructor() { + super("SkipAnimationSignal"); + } + }, + tX = (e) => e instanceof t0, + t$ = 1, + t0 = class extends ej { + constructor() { + super(...arguments), (this.id = t$++), (this._priority = 0); + } + get priority() { + return this._priority; + } + set priority(e) { + this._priority != e && + ((this._priority = e), this._onPriorityChange(e)); + } + get() { + let e = tn(this); + return e && e.getValue(); + } + to(...e) { + return l.to(this, e); + } + interpolate(...e) { + return e$(), l.to(this, e); + } + toJSON() { + return this.get(); + } + observerAdded(e) { + 1 == e && this._attach(); + } + observerRemoved(e) { + 0 == e && this._detach(); + } + _attach() {} + _detach() {} + _onChange(e, t = !1) { + eL(this, { type: "change", parent: this, value: e, idle: t }); + } + _onPriorityChange(e) { + !this.idle && K.sort(this), + eL(this, { type: "priority", parent: this, priority: e }); + } + }, + t1 = Symbol.for("SpringPhase"), + t2 = 1, + t6 = 2, + t4 = 4, + t3 = (e) => (e[t1] & t2) > 0, + t8 = (e) => (e[t1] & t6) > 0, + t9 = (e) => (e[t1] & t4) > 0, + t5 = (e, t) => (t ? (e[t1] |= t6 | t2) : (e[t1] &= ~t6)), + t7 = (e, t) => (t ? (e[t1] |= t4) : (e[t1] &= ~t4)), + ie = class extends t0 { + constructor(e, t) { + if ( + (super(), + (this.animation = new tz()), + (this.defaultProps = {}), + (this._state = { + paused: !1, + delayed: !1, + pauseQueue: new Set(), + resumeQueue: new Set(), + timeouts: new Set(), + }), + (this._pendingCalls = new Set()), + (this._lastCallId = 0), + (this._lastToId = 0), + (this._memoizedDuration = 0), + !P.und(e) || !P.und(t)) + ) { + let i = P.obj(e) ? { ...e } : { ...t, from: e }; + P.und(i.default) && (i.default = !0), this.start(i); + } + } + get idle() { + return !(t8(this) || this._state.asyncTo) || t9(this); + } + get goal() { + return eD(this.animation.to); + } + get velocity() { + let e = tn(this); + return e instanceof ts + ? e.lastVelocity || 0 + : e.getPayload().map((e) => e.lastVelocity || 0); + } + get hasAnimated() { + return t3(this); + } + get isAnimating() { + return t8(this); + } + get isPaused() { + return t9(this); + } + get isDelayed() { + return this._state.delayed; + } + advance(e) { + let t = !0, + i = !1, + n = this.animation, + { toValues: r } = n, + { config: a } = n, + o = ta(n.to); + !o && eE(n.to) && (r = N(eD(n.to))), + n.values.forEach((s, l) => { + if (s.done) return; + let c = s.constructor == tl ? 1 : o ? o[l].lastPosition : r[l], + d = n.immediate, + u = c; + if (!d) { + let t; + if (((u = s.lastPosition), a.tension <= 0)) { + s.done = !0; + return; + } + let i = (s.elapsedTime += e), + r = n.fromValues[l], + o = + null != s.v0 + ? s.v0 + : (s.v0 = P.arr(a.velocity) + ? a.velocity[l] + : a.velocity), + f = + a.precision || + (r == c ? 0.005 : Math.min(1, 0.001 * Math.abs(c - r))); + if (P.und(a.duration)) { + if (a.decay) { + let e = !0 === a.decay ? 0.998 : a.decay, + n = Math.exp(-(1 - e) * i); + (u = r + (o / (1 - e)) * (1 - n)), + (d = Math.abs(s.lastPosition - u) <= f), + (t = o * n); + } else { + t = null == s.lastVelocity ? o : s.lastVelocity; + let i = a.restVelocity || f / 10, + n = a.clamp ? 0 : a.bounce, + l = !P.und(n), + h = r == c ? s.v0 > 0 : r < c, + p = !1, + v = 1, + m = Math.ceil(e / 1); + for ( + let e = 0; + e < m && + !(!(Math.abs(t) > i) && (d = Math.abs(c - u) <= f)); + ++e + ) { + l && + (p = u == c || u > c == h) && + ((t = -t * n), (u = c)); + let e = -(1e-6 * a.tension) * (u - c), + i = (e + -(0.001 * a.friction) * t) / a.mass; + (t += i * v), (u += t * v); + } + } + } else { + let n = 1; + a.duration > 0 && + (this._memoizedDuration !== a.duration && + ((this._memoizedDuration = a.duration), + s.durationProgress > 0 && + ((s.elapsedTime = a.duration * s.durationProgress), + (i = s.elapsedTime += e))), + (n = + (n = (a.progress || 0) + i / this._memoizedDuration) > 1 + ? 1 + : n < 0 + ? 0 + : n), + (s.durationProgress = n)), + (t = + ((u = r + a.easing(n) * (c - r)) - s.lastPosition) / e), + (d = 1 == n); + } + (s.lastVelocity = t), + Number.isNaN(u) && + (console.warn("Got NaN while animating:", this), + (d = !0)); + } + o && !o[l].done && (d = !1), + d ? (s.done = !0) : (t = !1), + s.setValue(u, a.round) && (i = !0); + }); + let s = tn(this), + l = s.getValue(); + if (t) { + let e = eD(n.to); + (l !== e || i) && !a.decay + ? (s.setValue(e), this._onChange(e)) + : i && a.decay && this._onChange(l), + this._stop(); + } else i && this._onChange(l); + } + set(e) { + return ( + d.batchedUpdates(() => { + this._stop(), this._focus(e), this._set(e); + }), + this + ); + } + pause() { + this._update({ pause: !0 }); + } + resume() { + this._update({ pause: !1 }); + } + finish() { + if (t8(this)) { + let { to: e, config: t } = this.animation; + d.batchedUpdates(() => { + this._onStart(), !t.decay && this._set(e, !1), this._stop(); + }); + } + return this; + } + update(e) { + return (this.queue || (this.queue = [])).push(e), this; + } + start(e, t) { + let i; + return ( + P.und(e) + ? ((i = this.queue || []), (this.queue = [])) + : (i = [P.obj(e) ? e : { ...t, to: e }]), + Promise.all(i.map((e) => this._update(e))).then((e) => + tW(this, e) + ) + ); + } + stop(e) { + let { to: t } = this.animation; + return ( + this._focus(this.get()), + tJ(this._state, e && this._lastCallId), + d.batchedUpdates(() => this._stop(t, e)), + this + ); + } + reset() { + this._update({ reset: !0 }); + } + eventObserved(e) { + "change" == e.type + ? this._start() + : "priority" == e.type && (this.priority = e.priority + 1); + } + _prepareNode(e) { + let t = this.key || "", + { to: i, from: n } = e; + (null == (i = P.obj(i) ? i[t] : i) || tR(i)) && (i = void 0), + null == (n = P.obj(n) ? n[t] : n) && (n = void 0); + let r = { to: i, from: n }; + return ( + !t3(this) && + (e.reverse && ([i, n] = [n, i]), + (n = eD(n)), + P.und(n) ? !tn(this) && this._set(i) : this._set(n)), + r + ); + } + _update({ ...e }, t) { + let { key: i, defaultProps: n } = this; + e.default && + Object.assign( + n, + tC(e, (e, t) => (/^on/.test(t) ? tx(e, i) : e)) + ), + il(this, e, "onProps"), + ic(this, "onProps", e, this); + let r = this._prepareNode(e); + if (Object.isFrozen(this)) + throw Error( + "Cannot animate a `SpringValue` object that is frozen. Did you forget to pass your component to `animated(...)` before animating its props?" + ); + let a = this._state; + return tV(++this._lastCallId, { + key: i, + props: e, + defaultProps: n, + state: a, + actions: { + pause: () => { + !t9(this) && + (t7(this, !0), + j(a.pauseQueue), + ic( + this, + "onPause", + tK(this, it(this, this.animation.to)), + this + )); + }, + resume: () => { + t9(this) && + (t7(this, !1), + t8(this) && this._resume(), + j(a.resumeQueue), + ic( + this, + "onResume", + tK(this, it(this, this.animation.to)), + this + )); + }, + start: this._merge.bind(this, r), + }, + }).then((i) => { + if (e.loop && i.finished && !(t && i.noop)) { + let t = ii(e); + if (t) return this._update(t, !0); + } + return i; + }); + } + _merge(e, t, i) { + if (t.cancel) return this.stop(!0), i(tH(this)); + let n = !P.und(e.to), + r = !P.und(e.from); + if (n || r) { + if (!(t.callId > this._lastToId)) return i(tH(this)); + this._lastToId = t.callId; + } + let { key: a, defaultProps: o, animation: s } = this, + { to: l, from: c } = s, + { to: u = l, from: f = c } = e; + r && !n && (!t.default || P.und(u)) && (u = f), + t.reverse && ([u, f] = [f, u]); + let h = !E(f, c); + h && (s.from = f), (f = eD(f)); + let p = !E(u, l); + p && this._focus(u); + let v = tR(t.to), + { config: m } = s, + { decay: g, velocity: _ } = m; + (n || r) && (m.velocity = 0), + t.config && + !v && + tF( + m, + tI(t.config, a), + t.config !== o.config ? tI(o.config, a) : void 0 + ); + let y = tn(this); + if (!y || P.und(u)) return i(tK(this, !0)); + let b = P.und(t.reset) + ? r && !t.default + : !P.und(f) && tw(t.reset, a), + I = b ? f : this.get(), + w = tE(u), + x = P.num(w) || P.arr(w) || e2(w), + S = !v && (!x || tw(o.immediate || t.immediate, a)); + if (p) { + let e = th(u); + if (e !== y.constructor) { + if (S) y = this._set(w); + else + throw Error( + `Cannot animate between ${y.constructor.name} and ${e.name}, as the "to" prop suggests` + ); + } + } + let M = y.constructor, + C = eE(u), + T = !1; + if (!C) { + let e = b || (!t3(this) && h); + (p || e) && (C = !(T = E(tE(I), w))), + ((!E(s.immediate, S) && !S) || + !E(m.decay, g) || + !E(m.velocity, _)) && + (C = !0); + } + if ( + (T && + t8(this) && + (s.changed && !b ? (C = !0) : !C && this._stop(l)), + !v && + ((C || eE(l)) && + ((s.values = y.getPayload()), + (s.toValues = eE(u) ? null : M == tl ? [1] : N(w))), + s.immediate != S && + ((s.immediate = S), !S && !b && this._set(l)), + C)) + ) { + let { onRest: e } = s; + D(is, (e) => il(this, t, e)); + let n = tK(this, it(this, l)); + j(this._pendingCalls, n), + this._pendingCalls.add(i), + s.changed && + d.batchedUpdates(() => { + (s.changed = !b), + e?.(n, this), + b ? tI(o.onRest, n) : s.onStart?.(n, this); + }); + } + b && this._set(I), + v + ? i(tq(t.to, t, this._state, this)) + : C + ? this._start() + : t8(this) && !p + ? this._pendingCalls.add(i) + : i(tZ(I)); + } + _focus(e) { + let t = this.animation; + e !== t.to && + (eR(this) && this._detach(), + (t.to = e), + eR(this) && this._attach()); + } + _attach() { + let e = 0, + { to: t } = this.animation; + eE(t) && (eB(t, this), tX(t) && (e = t.priority + 1)), + (this.priority = e); + } + _detach() { + let { to: e } = this.animation; + eE(e) && eF(e, this); + } + _set(e, t = !0) { + let i = eD(e); + if (!P.und(i)) { + let e = tn(this); + if (!e || !E(i, e.getValue())) { + let n = th(i); + e && e.constructor == n ? e.setValue(i) : tr(this, n.create(i)), + e && + d.batchedUpdates(() => { + this._onChange(i, t); + }); + } + } + return tn(this); + } + _onStart() { + let e = this.animation; + !e.changed && + ((e.changed = !0), + ic(this, "onStart", tK(this, it(this, e.to)), this)); + } + _onChange(e, t) { + !t && (this._onStart(), tI(this.animation.onChange, e, this)), + tI(this.defaultProps.onChange, e, this), + super._onChange(e, t); + } + _start() { + let e = this.animation; + tn(this).reset(eD(e.to)), + !e.immediate && + (e.fromValues = e.values.map((e) => e.lastPosition)), + !t8(this) && (t5(this, !0), !t9(this) && this._resume()); + } + _resume() { + l.skipAnimation ? this.finish() : K.start(this); + } + _stop(e, t) { + if (t8(this)) { + t5(this, !1); + let i = this.animation; + D(i.values, (e) => { + e.done = !0; + }), + i.toValues && (i.onChange = i.onPause = i.onResume = void 0), + eL(this, { type: "idle", parent: this }); + let n = t ? tH(this.get()) : tK(this.get(), it(this, e ?? i.to)); + j(this._pendingCalls, n), + i.changed && ((i.changed = !1), ic(this, "onRest", n, this)); + } + } + }; + function it(e, t) { + let i = tE(t); + return E(tE(e.get()), i); + } + function ii(e, t = e.loop, i = e.to) { + let n = tI(t); + if (n) { + let r = !0 !== n && tP(n), + a = (r || e).reverse, + o = !r || r.reset; + return ir({ + ...e, + loop: t, + default: !1, + pause: void 0, + to: !a || tR(i) ? i : void 0, + from: o ? e.from : void 0, + reset: o, + ...r, + }); + } + } + function ir(e) { + let { to: t, from: i } = (e = tP(e)), + n = new Set(); + return ( + P.obj(t) && io(t, n), + P.obj(i) && io(i, n), + (e.keys = n.size ? Array.from(n) : null), + e + ); + } + function ia(e) { + let t = ir(e); + return P.und(t.default) && (t.default = tC(t)), t; + } + function io(e, t) { + R(e, (e, i) => null != e && t.add(i)); + } + var is = ["onStart", "onRest", "onChange", "onPause", "onResume"]; + function il(e, t, i) { + e.animation[i] = t[i] !== tS(t, i) ? tx(t[i], e.key) : void 0; + } + function ic(e, t, ...i) { + e.animation[t]?.(...i), e.defaultProps[t]?.(...i); + } + var id = ["onStart", "onChange", "onRest"], + iu = 1, + ih = class { + constructor(e, t) { + (this.id = iu++), + (this.springs = {}), + (this.queue = []), + (this._lastAsyncId = 0), + (this._active = new Set()), + (this._changed = new Set()), + (this._started = !1), + (this._state = { + paused: !1, + pauseQueue: new Set(), + resumeQueue: new Set(), + timeouts: new Set(), + }), + (this._events = { + onStart: new Map(), + onChange: new Map(), + onRest: new Map(), + }), + (this._onFrame = this._onFrame.bind(this)), + t && (this._flush = t), + e && this.start({ default: !0, ...e }); + } + get idle() { + return ( + !this._state.asyncTo && + Object.values(this.springs).every( + (e) => e.idle && !e.isDelayed && !e.isPaused + ) + ); + } + get item() { + return this._item; + } + set item(e) { + this._item = e; + } + get() { + let e = {}; + return this.each((t, i) => (e[i] = t.get())), e; + } + set(e) { + for (let t in e) { + let i = e[t]; + !P.und(i) && this.springs[t].set(i); + } + } + update(e) { + return e && this.queue.push(ir(e)), this; + } + start(e) { + let { queue: t } = this; + return (e ? (t = N(e).map(ir)) : (this.queue = []), this._flush) + ? this._flush(this, t) + : (ib(this, t), ip(this, t)); + } + stop(e, t) { + if ((!!e !== e && (t = e), t)) { + let i = this.springs; + D(N(t), (t) => i[t].stop(!!e)); + } else + tJ(this._state, this._lastAsyncId), this.each((t) => t.stop(!!e)); + return this; + } + pause(e) { + if (P.und(e)) this.start({ pause: !0 }); + else { + let t = this.springs; + D(N(e), (e) => t[e].pause()); + } + return this; + } + resume(e) { + if (P.und(e)) this.start({ pause: !1 }); + else { + let t = this.springs; + D(N(e), (e) => t[e].resume()); + } + return this; + } + each(e) { + R(this.springs, e); + } + _onFrame() { + let { onStart: e, onChange: t, onRest: i } = this._events, + n = this._active.size > 0, + r = this._changed.size > 0; + ((n && !this._started) || (r && !this._started)) && + ((this._started = !0), + L(e, ([e, t]) => { + (t.value = this.get()), e(t, this, this._item); + })); + let a = !n && this._started, + o = r || (a && i.size) ? this.get() : null; + r && + t.size && + L(t, ([e, t]) => { + (t.value = o), e(t, this, this._item); + }), + a && + ((this._started = !1), + L(i, ([e, t]) => { + (t.value = o), e(t, this, this._item); + })); + } + eventObserved(e) { + if ("change" == e.type) + this._changed.add(e.parent), + !e.idle && this._active.add(e.parent); + else { + if ("idle" != e.type) return; + this._active.delete(e.parent); + } + d.onFrame(this._onFrame); + } + }; + function ip(e, t) { + return Promise.all(t.map((t) => iv(e, t))).then((t) => tW(e, t)); + } + async function iv(e, t, i) { + let { keys: n, to: r, from: a, loop: o, onRest: s, onResolve: l } = t, + c = P.obj(t.default) && t.default; + o && (t.loop = !1), + !1 === r && (t.to = null), + !1 === a && (t.from = null); + let u = P.arr(r) || P.fun(r) ? r : void 0; + u + ? ((t.to = void 0), (t.onRest = void 0), c && (c.onRest = void 0)) + : D(id, (i) => { + let n = t[i]; + if (P.fun(n)) { + let r = e._events[i]; + (t[i] = ({ finished: e, cancelled: t }) => { + let i = r.get(n); + i + ? (!e && (i.finished = !1), t && (i.cancelled = !0)) + : r.set(n, { + value: null, + finished: e || !1, + cancelled: t || !1, + }); + }), + c && (c[i] = t[i]); + } + }); + let f = e._state; + !f.paused === t.pause + ? ((f.paused = t.pause), j(t.pause ? f.pauseQueue : f.resumeQueue)) + : f.paused && (t.pause = !0); + let h = (n || Object.keys(e.springs)).map((i) => e.springs[i].start(t)), + p = !0 === t.cancel || !0 === tS(t, "cancel"); + (u || (p && f.asyncId)) && + h.push( + tV(++e._lastAsyncId, { + props: t, + state: f, + actions: { + pause: A, + resume: A, + start(t, i) { + p + ? (tJ(f, e._lastAsyncId), i(tH(e))) + : ((t.onRest = s), i(tq(u, t, f, e))); + }, + }, + }) + ), + f.paused && + (await new Promise((e) => { + f.resumeQueue.add(e); + })); + let v = tW(e, await Promise.all(h)); + if (o && v.finished && !(i && v.noop)) { + let i = ii(t, o, r); + if (i) return ib(e, [i]), iv(e, i, !0); + } + return l && d.batchedUpdates(() => l(v, e, e.item)), v; + } + function im(e, t) { + let i = { ...e.springs }; + return ( + t && + D(N(t), (e) => { + P.und(e.keys) && (e = ir(e)), + !P.obj(e.to) && (e = { ...e, to: void 0 }), + iy(i, e, (e) => i_(e)); + }), + ig(e, i), + i + ); + } + function ig(e, t) { + R(t, (t, i) => { + !e.springs[i] && ((e.springs[i] = t), eB(t, e)); + }); + } + function i_(e, t) { + let i = new ie(); + return (i.key = e), t && eB(i, t), i; + } + function iy(e, t, i) { + t.keys && + D(t.keys, (n) => { + (e[n] || (e[n] = i(n)))._prepareNode(t); + }); + } + function ib(e, t) { + D(t, (t) => { + iy(e.springs, t, (t) => i_(t, e)); + }); + } + var iI = ({ children: e, ...t }) => { + let i = (0, o.useContext)(iw), + n = t.pause || !!i.pause, + r = t.immediate || !!i.immediate; + t = e8(() => ({ pause: n, immediate: r }), [n, r]); + let { Provider: a } = iw; + return o.createElement(a, { value: t }, e); + }, + iw = ix(iI, {}); + function ix(e, t) { + return ( + Object.assign(e, o.createContext(t)), + (e.Provider._context = e), + (e.Consumer._context = e), + e + ); + } + (iI.Provider = iw.Provider), (iI.Consumer = iw.Consumer); + var iS = () => { + let e = [], + t = function (t) { + e1(); + let n = []; + return ( + D(e, (e, r) => { + if (P.und(t)) n.push(e.start()); + else { + let a = i(t, e, r); + a && n.push(e.start(a)); + } + }), + n + ); + }; + (t.current = e), + (t.add = function (t) { + !e.includes(t) && e.push(t); + }), + (t.delete = function (t) { + let i = e.indexOf(t); + ~i && e.splice(i, 1); + }), + (t.pause = function () { + return D(e, (e) => e.pause(...arguments)), this; + }), + (t.resume = function () { + return D(e, (e) => e.resume(...arguments)), this; + }), + (t.set = function (t) { + D(e, (e, i) => { + let n = P.fun(t) ? t(i, e) : t; + n && e.set(n); + }); + }), + (t.start = function (t) { + let i = []; + return ( + D(e, (e, n) => { + if (P.und(t)) i.push(e.start()); + else { + let r = this._getProps(t, e, n); + r && i.push(e.start(r)); + } + }), + i + ); + }), + (t.stop = function () { + return D(e, (e) => e.stop(...arguments)), this; + }), + (t.update = function (t) { + return D(e, (e, i) => e.update(this._getProps(t, e, i))), this; + }); + let i = function (e, t, i) { + return P.fun(e) ? e(i, t) : e; + }; + return (t._getProps = i), t; + }; + function iM(e, t, i) { + let n = P.fun(t) && t; + n && !i && (i = []); + let r = (0, o.useMemo)( + () => (n || 3 == arguments.length ? iS() : void 0), + [] + ), + a = (0, o.useRef)(0), + s = e3(), + l = (0, o.useMemo)( + () => ({ + ctrls: [], + queue: [], + flush(e, t) { + let i = im(e, t); + return !(a.current > 0) || + l.queue.length || + Object.keys(i).some((t) => !e.springs[t]) + ? new Promise((n) => { + ig(e, i), + l.queue.push(() => { + n(ip(e, t)); + }), + s(); + }) + : ip(e, t); + }, + }), + [] + ), + c = (0, o.useRef)([...l.ctrls]), + d = [], + u = te(e) || 0; + function f(e, i) { + for (let r = e; r < i; r++) { + let e = c.current[r] || (c.current[r] = new ih(null, l.flush)), + i = n ? n(r, e) : t[r]; + i && (d[r] = ia(i)); + } + } + (0, o.useMemo)(() => { + D(c.current.slice(e, u), (e) => { + tN(e, r), e.stop(!0); + }), + (c.current.length = e), + f(u, e); + }, [e]), + (0, o.useMemo)(() => { + f(0, Math.min(u, e)); + }, i); + let h = c.current.map((e, t) => im(e, d[t])), + p = (0, o.useContext)(iI), + v = te(p), + m = p !== v && tD(p); + e6(() => { + a.current++, (l.ctrls = c.current); + let { queue: e } = l; + e.length && ((l.queue = []), D(e, (e) => e())), + D(c.current, (e, t) => { + r?.add(e), m && e.start({ default: p }); + let i = d[t]; + i && (tL(e, i.ref), e.ref ? e.queue.push(i) : e.start(i)); + }); + }), + e5(() => () => { + D(l.ctrls, (e) => e.stop(!0)); + }); + let g = h.map((e) => ({ ...e })); + return r ? [g, r] : g; + } + function iC(e, t) { + let i = P.fun(e), + [[n], r] = iM(1, i ? e : [e], i ? t || [] : t); + return i || 2 == arguments.length ? [n, r] : n; + } + var iT = class extends t0 { + constructor(e, t) { + super(), + (this.source = e), + (this.idle = !0), + (this._active = new Set()), + (this.calc = ey(...t)); + let i = this._get(); + tr(this, th(i).create(i)); + } + advance(e) { + let t = this._get(); + !E(t, this.get()) && + (tn(this).setValue(t), this._onChange(t, this.idle)), + !this.idle && ik(this._active) && iP(this); + } + _get() { + let e = P.arr(this.source) ? this.source.map(eD) : N(eD(this.source)); + return this.calc(...e); + } + _start() { + this.idle && + !ik(this._active) && + ((this.idle = !1), + D(ta(this), (e) => { + e.done = !1; + }), + l.skipAnimation + ? (d.batchedUpdates(() => this.advance()), iP(this)) + : K.start(this)); + } + _attach() { + let e = 1; + D(N(this.source), (t) => { + eE(t) && eB(t, this), + tX(t) && + (!t.idle && this._active.add(t), + (e = Math.max(e, t.priority + 1))); + }), + (this.priority = e), + this._start(); + } + _detach() { + D(N(this.source), (e) => { + eE(e) && eF(e, this); + }), + this._active.clear(), + iP(this); + } + eventObserved(e) { + "change" == e.type + ? e.idle + ? this.advance() + : (this._active.add(e.parent), this._start()) + : "idle" == e.type + ? this._active.delete(e.parent) + : "priority" == e.type && + (this.priority = N(this.source).reduce( + (e, t) => Math.max(e, (tX(t) ? t.priority : 0) + 1), + 0 + )); + } + }; + function iA(e) { + return !1 !== e.idle; + } + function ik(e) { + return !e.size || Array.from(e).every(iA); + } + function iP(e) { + !e.idle && + ((e.idle = !0), + D(ta(e), (e) => { + e.done = !0; + }), + eL(e, { type: "idle", parent: e })); + } + var iE = (e, ...t) => new iT(e, t); + l.assign({ createStringInterpolator: eJ, to: (e, t) => new iT(e, t) }), + K.advance; + var iD = i("195291"), + iR = /^--/; + function iN(e, t) { + return null == t || "boolean" == typeof t || "" === t + ? "" + : "number" != typeof t || + 0 === t || + iR.test(e) || + (iO.hasOwnProperty(e) && iO[e]) + ? ("" + t).trim() + : t + "px"; + } + var iL = {}; + function ij(e, t) { + if (!e.nodeType || !e.setAttribute) return !1; + let i = + "filter" === e.nodeName || + (e.parentNode && "filter" === e.parentNode.nodeName), + { + style: n, + children: r, + scrollTop: a, + scrollLeft: o, + viewBox: s, + ...l + } = t, + c = Object.values(l), + d = Object.keys(l).map((t) => + i || e.hasAttribute(t) + ? t + : iL[t] || + (iL[t] = t.replace(/([A-Z])/g, (e) => "-" + e.toLowerCase())) + ); + for (let t in (void 0 !== r && (e.textContent = r), n)) + if (n.hasOwnProperty(t)) { + let i = iN(t, n[t]); + iR.test(t) ? e.style.setProperty(t, i) : (e.style[t] = i); + } + d.forEach((t, i) => { + e.setAttribute(t, c[i]); + }), + void 0 !== a && (e.scrollTop = a), + void 0 !== o && (e.scrollLeft = o), + void 0 !== s && e.setAttribute("viewBox", s); + } + var iO = { + animationIterationCount: !0, + borderImageOutset: !0, + borderImageSlice: !0, + borderImageWidth: !0, + boxFlex: !0, + boxFlexGroup: !0, + boxOrdinalGroup: !0, + columnCount: !0, + columns: !0, + flex: !0, + flexGrow: !0, + flexPositive: !0, + flexShrink: !0, + flexNegative: !0, + flexOrder: !0, + gridRow: !0, + gridRowEnd: !0, + gridRowSpan: !0, + gridRowStart: !0, + gridColumn: !0, + gridColumnEnd: !0, + gridColumnSpan: !0, + gridColumnStart: !0, + fontWeight: !0, + lineClamp: !0, + lineHeight: !0, + opacity: !0, + order: !0, + orphans: !0, + tabSize: !0, + widows: !0, + zIndex: !0, + zoom: !0, + fillOpacity: !0, + floodOpacity: !0, + stopOpacity: !0, + strokeDasharray: !0, + strokeDashoffset: !0, + strokeMiterlimit: !0, + strokeOpacity: !0, + strokeWidth: !0, + }, + iB = (e, t) => e + t.charAt(0).toUpperCase() + t.substring(1), + iF = ["Webkit", "Ms", "Moz", "O"]; + iO = Object.keys(iO).reduce( + (e, t) => (iF.forEach((i) => (e[iB(i, t)] = e[t])), e), + iO + ); + var iU = /^(matrix|translate|scale|rotate|skew)/, + iG = /^(translate)/, + iz = /^(rotate|skew)/, + iV = (e, t) => (P.num(e) && 0 !== e ? e + t : e), + iW = (e, t) => + P.arr(e) + ? e.every((e) => iW(e, t)) + : P.num(e) + ? e === t + : parseFloat(e) === t, + iZ = class extends td { + constructor({ x: e, y: t, z: i, ...n }) { + let r = [], + a = []; + (e || t || i) && + (r.push([e || 0, t || 0, i || 0]), + a.push((e) => [ + `translate3d(${e.map((e) => iV(e, "px")).join(",")})`, + iW(e, 0), + ])), + R(n, (e, t) => { + if ("transform" === t) + r.push([e || ""]), a.push((e) => [e, "" === e]); + else if (iU.test(t)) { + if ((delete n[t], P.und(e))) return; + let i = iG.test(t) ? "px" : iz.test(t) ? "deg" : ""; + r.push(N(e)), + a.push( + "rotate3d" === t + ? ([e, t, n, r]) => [ + `rotate3d(${e},${t},${n},${iV(r, i)})`, + iW(r, 0), + ] + : (e) => [ + `${t}(${e.map((e) => iV(e, i)).join(",")})`, + iW(e, t.startsWith("scale") ? 1 : 0), + ] + ); + } + }), + r.length && (n.transform = new iK(r, a)), + super(n); + } + }, + iK = class extends ej { + constructor(e, t) { + super(), + (this.inputs = e), + (this.transforms = t), + (this._value = null); + } + get() { + return this._value || (this._value = this._get()); + } + _get() { + let e = "", + t = !0; + return ( + D(this.inputs, (i, n) => { + let r = eD(i[0]), + [a, o] = this.transforms[n](P.arr(r) ? r : i.map(eD)); + (e += " " + a), (t = t && o); + }), + t ? "none" : e + ); + } + observerAdded(e) { + 1 == e && D(this.inputs, (e) => D(e, (e) => eE(e) && eB(e, this))); + } + observerRemoved(e) { + 0 == e && D(this.inputs, (e) => D(e, (e) => eE(e) && eF(e, this))); + } + eventObserved(e) { + "change" == e.type && (this._value = null), eL(this, e); + } + }, + iH = [ + "a", + "abbr", + "address", + "area", + "article", + "aside", + "audio", + "b", + "base", + "bdi", + "bdo", + "big", + "blockquote", + "body", + "br", + "button", + "canvas", + "caption", + "cite", + "code", + "col", + "colgroup", + "data", + "datalist", + "dd", + "del", + "details", + "dfn", + "dialog", + "div", + "dl", + "dt", + "em", + "embed", + "fieldset", + "figcaption", + "figure", + "footer", + "form", + "h1", + "h2", + "h3", + "h4", + "h5", + "h6", + "head", + "header", + "hgroup", + "hr", + "html", + "i", + "iframe", + "img", + "input", + "ins", + "kbd", + "keygen", + "label", + "legend", + "li", + "link", + "main", + "map", + "mark", + "menu", + "menuitem", + "meta", + "meter", + "nav", + "noscript", + "object", + "ol", + "optgroup", + "option", + "output", + "p", + "param", + "picture", + "pre", + "progress", + "q", + "rp", + "rt", + "ruby", + "s", + "samp", + "script", + "section", + "select", + "small", + "source", + "span", + "strong", + "style", + "sub", + "summary", + "sup", + "table", + "tbody", + "td", + "textarea", + "tfoot", + "th", + "thead", + "time", + "title", + "tr", + "track", + "u", + "ul", + "var", + "video", + "wbr", + "circle", + "clipPath", + "defs", + "ellipse", + "foreignObject", + "g", + "image", + "line", + "linearGradient", + "mask", + "path", + "pattern", + "polygon", + "polyline", + "radialGradient", + "rect", + "stop", + "svg", + "text", + "tspan", + ]; + l.assign({ + batchedUpdates: iD.unstable_batchedUpdates, + createStringInterpolator: eJ, + colors: $, + }); + var iq = ty(iH, { + applyAnimatedValues: ij, + createAnimatedStyle: (e) => new iZ(e), + getComponentProps: ({ scrollTop: e, scrollLeft: t, ...i }) => i, + }).animated; + }, + 581148: function (e, t, i) { + "use strict"; + function n() { + return (n = + Object.assign || + function (e) { + for (var t = 1; t < arguments.length; t++) { + var i = arguments[t]; + for (var n in i) + Object.prototype.hasOwnProperty.call(i, n) && (e[n] = i[n]); + } + return e; + }).apply(this, arguments); + } + i.d(t, { + _: function () { + return n; + }, + }); + }, + 58871: function (e, t, i) { + "use strict"; + function n(e) { + if (null == e) throw TypeError("Cannot destructure " + e); + return e; + } + i.d(t, { + _: function () { + return n; + }, + }); + }, + 641601: function (e) { + "use strict"; + e.exports = JSON.parse( + '{"aes-128-ecb":{"cipher":"AES","key":128,"iv":0,"mode":"ECB","type":"block"},"aes-192-ecb":{"cipher":"AES","key":192,"iv":0,"mode":"ECB","type":"block"},"aes-256-ecb":{"cipher":"AES","key":256,"iv":0,"mode":"ECB","type":"block"},"aes-128-cbc":{"cipher":"AES","key":128,"iv":16,"mode":"CBC","type":"block"},"aes-192-cbc":{"cipher":"AES","key":192,"iv":16,"mode":"CBC","type":"block"},"aes-256-cbc":{"cipher":"AES","key":256,"iv":16,"mode":"CBC","type":"block"},"aes128":{"cipher":"AES","key":128,"iv":16,"mode":"CBC","type":"block"},"aes192":{"cipher":"AES","key":192,"iv":16,"mode":"CBC","type":"block"},"aes256":{"cipher":"AES","key":256,"iv":16,"mode":"CBC","type":"block"},"aes-128-cfb":{"cipher":"AES","key":128,"iv":16,"mode":"CFB","type":"stream"},"aes-192-cfb":{"cipher":"AES","key":192,"iv":16,"mode":"CFB","type":"stream"},"aes-256-cfb":{"cipher":"AES","key":256,"iv":16,"mode":"CFB","type":"stream"},"aes-128-cfb8":{"cipher":"AES","key":128,"iv":16,"mode":"CFB8","type":"stream"},"aes-192-cfb8":{"cipher":"AES","key":192,"iv":16,"mode":"CFB8","type":"stream"},"aes-256-cfb8":{"cipher":"AES","key":256,"iv":16,"mode":"CFB8","type":"stream"},"aes-128-cfb1":{"cipher":"AES","key":128,"iv":16,"mode":"CFB1","type":"stream"},"aes-192-cfb1":{"cipher":"AES","key":192,"iv":16,"mode":"CFB1","type":"stream"},"aes-256-cfb1":{"cipher":"AES","key":256,"iv":16,"mode":"CFB1","type":"stream"},"aes-128-ofb":{"cipher":"AES","key":128,"iv":16,"mode":"OFB","type":"stream"},"aes-192-ofb":{"cipher":"AES","key":192,"iv":16,"mode":"OFB","type":"stream"},"aes-256-ofb":{"cipher":"AES","key":256,"iv":16,"mode":"OFB","type":"stream"},"aes-128-ctr":{"cipher":"AES","key":128,"iv":16,"mode":"CTR","type":"stream"},"aes-192-ctr":{"cipher":"AES","key":192,"iv":16,"mode":"CTR","type":"stream"},"aes-256-ctr":{"cipher":"AES","key":256,"iv":16,"mode":"CTR","type":"stream"},"aes-128-gcm":{"cipher":"AES","key":128,"iv":12,"mode":"GCM","type":"auth"},"aes-192-gcm":{"cipher":"AES","key":192,"iv":12,"mode":"GCM","type":"auth"},"aes-256-gcm":{"cipher":"AES","key":256,"iv":12,"mode":"GCM","type":"auth"}}' + ); + }, + 773777: function (e) { + "use strict"; + e.exports = JSON.parse( + '{"sha224WithRSAEncryption":{"sign":"rsa","hash":"sha224","id":"302d300d06096086480165030402040500041c"},"RSA-SHA224":{"sign":"ecdsa/rsa","hash":"sha224","id":"302d300d06096086480165030402040500041c"},"sha256WithRSAEncryption":{"sign":"rsa","hash":"sha256","id":"3031300d060960864801650304020105000420"},"RSA-SHA256":{"sign":"ecdsa/rsa","hash":"sha256","id":"3031300d060960864801650304020105000420"},"sha384WithRSAEncryption":{"sign":"rsa","hash":"sha384","id":"3041300d060960864801650304020205000430"},"RSA-SHA384":{"sign":"ecdsa/rsa","hash":"sha384","id":"3041300d060960864801650304020205000430"},"sha512WithRSAEncryption":{"sign":"rsa","hash":"sha512","id":"3051300d060960864801650304020305000440"},"RSA-SHA512":{"sign":"ecdsa/rsa","hash":"sha512","id":"3051300d060960864801650304020305000440"},"RSA-SHA1":{"sign":"rsa","hash":"sha1","id":"3021300906052b0e03021a05000414"},"ecdsa-with-SHA1":{"sign":"ecdsa","hash":"sha1","id":""},"sha256":{"sign":"ecdsa","hash":"sha256","id":""},"sha224":{"sign":"ecdsa","hash":"sha224","id":""},"sha384":{"sign":"ecdsa","hash":"sha384","id":""},"sha512":{"sign":"ecdsa","hash":"sha512","id":""},"DSA-SHA":{"sign":"dsa","hash":"sha1","id":""},"DSA-SHA1":{"sign":"dsa","hash":"sha1","id":""},"DSA":{"sign":"dsa","hash":"sha1","id":""},"DSA-WITH-SHA224":{"sign":"dsa","hash":"sha224","id":""},"DSA-SHA224":{"sign":"dsa","hash":"sha224","id":""},"DSA-WITH-SHA256":{"sign":"dsa","hash":"sha256","id":""},"DSA-SHA256":{"sign":"dsa","hash":"sha256","id":""},"DSA-WITH-SHA384":{"sign":"dsa","hash":"sha384","id":""},"DSA-SHA384":{"sign":"dsa","hash":"sha384","id":""},"DSA-WITH-SHA512":{"sign":"dsa","hash":"sha512","id":""},"DSA-SHA512":{"sign":"dsa","hash":"sha512","id":""},"DSA-RIPEMD160":{"sign":"dsa","hash":"rmd160","id":""},"ripemd160WithRSA":{"sign":"rsa","hash":"rmd160","id":"3021300906052b2403020105000414"},"RSA-RIPEMD160":{"sign":"rsa","hash":"rmd160","id":"3021300906052b2403020105000414"},"md5WithRSAEncryption":{"sign":"rsa","hash":"md5","id":"3020300c06082a864886f70d020505000410"},"RSA-MD5":{"sign":"rsa","hash":"md5","id":"3020300c06082a864886f70d020505000410"}}' + ); + }, + 963079: function (e) { + "use strict"; + e.exports = JSON.parse( + '{"1.3.132.0.10":"secp256k1","1.3.132.0.33":"p224","1.2.840.10045.3.1.1":"p192","1.2.840.10045.3.1.7":"p256","1.3.132.0.34":"p384","1.3.132.0.35":"p521"}' + ); + }, + 895968: function (e) { + "use strict"; + e.exports = JSON.parse( + '{"modp1":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff"},"modp2":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff"},"modp5":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca237327ffffffffffffffff"},"modp14":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aacaa68ffffffffffffffff"},"modp15":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a93ad2caffffffffffffffff"},"modp16":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c934063199ffffffffffffffff"},"modp17":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dcc4024ffffffffffffffff"},"modp18":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dbe115974a3926f12fee5e438777cb6a932df8cd8bec4d073b931ba3bc832b68d9dd300741fa7bf8afc47ed2576f6936ba424663aab639c5ae4f5683423b4742bf1c978238f16cbe39d652de3fdb8befc848ad922222e04a4037c0713eb57a81a23f0c73473fc646cea306b4bcbc8862f8385ddfa9d4b7fa2c087e879683303ed5bdd3a062b3cf5b3a278a66d2a13f83f44f82ddf310ee074ab6a364597e899a0255dc164f31cc50846851df9ab48195ded7ea1b1d510bd7ee74d73faf36bc31ecfa268359046f4eb879f924009438b481c6cd7889a002ed5ee382bc9190da6fc026e479558e4475677e9aa9e3050e2765694dfc81f56e880b96e7160c980dd98edd3dfffffffffffffffff"}}' + ); + }, + 172353: function (e) { + "use strict"; + e.exports = { i8: "6.5.5" }; + }, + 431163: function (e) { + "use strict"; + e.exports = JSON.parse( + '{"2.16.840.1.101.3.4.1.1":"aes-128-ecb","2.16.840.1.101.3.4.1.2":"aes-128-cbc","2.16.840.1.101.3.4.1.3":"aes-128-ofb","2.16.840.1.101.3.4.1.4":"aes-128-cfb","2.16.840.1.101.3.4.1.21":"aes-192-ecb","2.16.840.1.101.3.4.1.22":"aes-192-cbc","2.16.840.1.101.3.4.1.23":"aes-192-ofb","2.16.840.1.101.3.4.1.24":"aes-192-cfb","2.16.840.1.101.3.4.1.41":"aes-256-ecb","2.16.840.1.101.3.4.1.42":"aes-256-cbc","2.16.840.1.101.3.4.1.43":"aes-256-ofb","2.16.840.1.101.3.4.1.44":"aes-256-cfb"}' + ); + }, + }, +]); diff --git a/temp/lib-uploader.2.js b/temp/lib-uploader.2.js new file mode 100644 index 0000000..595a93e --- /dev/null +++ b/temp/lib-uploader.2.js @@ -0,0 +1,13553 @@ +function T499845 (t) { + var e, r, n, o = t.exports = {}; + function i() { + throw Error("setTimeout has not been defined") + } + function a() { + throw Error("clearTimeout has not been defined") + } + function s(t) { + if (e === setTimeout) + return setTimeout(t, 0); + if ((e === i || !e) && setTimeout) + return e = setTimeout, + setTimeout(t, 0); + try { + return e(t, 0) + } catch (r) { + try { + return e.call(null, t, 0) + } catch (r) { + return e.call(this, t, 0) + } + } + } + !function() { + try { + e = "function" == typeof setTimeout ? setTimeout : i + } catch (t) { + e = i + } + try { + r = "function" == typeof clearTimeout ? clearTimeout : a + } catch (t) { + r = a + } + }(); + var u = [] + , c = !1 + , f = -1; + function l() { + if (!!c && !!n) + c = !1, + n.length ? u = n.concat(u) : f = -1, + u.length && h() + } + function h() { + if (!c) { + var t = s(l); + c = !0; + for (var e = u.length; e; ) { + for (n = u, + u = []; ++f < e; ) + n && n[f].run(); + f = -1, + e = u.length + } + n = null, + c = !1, + !function(t) { + if (r === clearTimeout) + return clearTimeout(t); + if ((r === a || !r) && clearTimeout) + return r = clearTimeout, + clearTimeout(t); + try { + r(t) + } catch (e) { + try { + return r.call(null, t) + } catch (e) { + return r.call(this, t) + } + } + }(t) + } + } + function p(t, e) { + this.fun = t, + this.array = e + } + function d() {} + o.nextTick = function(t) { + var e = Array(arguments.length - 1); + if (arguments.length > 1) + for (var r = 1; r < arguments.length; r++) + e[r - 1] = arguments[r]; + u.push(new p(t,e)), + 1 === u.length && !c && s(h) + } + , + p.prototype.run = function() { + this.fun.apply(null, this.array) + } + , + o.title = "browser", + o.browser = !0, + o.env = {}, + o.argv = [], + o.version = "", + o.versions = {}, + o.on = d, + o.addListener = d, + o.once = d, + o.off = d, + o.removeListener = d, + o.removeAllListeners = d, + o.emit = d, + o.prependListener = d, + o.prependOnceListener = d, + o.listeners = function(t) { + return [] + } + , + o.binding = function(t) { + throw Error("process.binding is not supported") + } + , + o.cwd = function() { + return "/" + } + , + o.chdir = function(t) { + throw Error("process.chdir is not supported") + } + , + o.umask = function() { + return 0 + } +} +function T984826(e, t, i) { + !function(e, t) { + "use strict"; + function n(e, t) { + if (!e) + throw Error(t || "Assertion failed") + } + function r(e, t) { + e.super_ = t; + var i = function() {}; + i.prototype = t.prototype, + e.prototype = new i, + e.prototype.constructor = e + } + function a(e, t, i) { + if (a.isBN(e)) + return e; + this.negative = 0, + this.words = null, + this.length = 0, + this.red = null, + null !== e && (("le" === t || "be" === t) && (i = t, + t = 10), + this._init(e || 0, t || 10, i || "be")) + } + "object" == typeof e ? e.exports = a : t.BN = a, + a.BN = a, + a.wordSize = 26; + try { + c = "undefined" != typeof window && void 0 !== window.Buffer ? window.Buffer : i(678244).Buffer + } catch (e) {} + function o(e, t) { + var i = e.charCodeAt(t); + return i >= 65 && i <= 70 ? i - 55 : i >= 97 && i <= 102 ? i - 87 : i - 48 & 15 + } + function s(e, t, i) { + var n = o(e, i); + return i - 1 >= t && (n |= o(e, i - 1) << 4), + n + } + function l(e, t, i, n) { + for (var r = 0, a = Math.min(e.length, i), o = t; o < a; o++) { + var s = e.charCodeAt(o) - 48; + r *= n, + s >= 49 ? r += s - 49 + 10 : s >= 17 ? r += s - 17 + 10 : r += s + } + return r + } + a.isBN = function(e) { + return e instanceof a || null !== e && "object" == typeof e && e.constructor.wordSize === a.wordSize && Array.isArray(e.words) + } + , + a.max = function(e, t) { + return e.cmp(t) > 0 ? e : t + } + , + a.min = function(e, t) { + return 0 > e.cmp(t) ? e : t + } + , + a.prototype._init = function(e, t, i) { + if ("number" == typeof e) + return this._initNumber(e, t, i); + if ("object" == typeof e) + return this._initArray(e, t, i); + "hex" === t && (t = 16), + n(t === (0 | t) && t >= 2 && t <= 36), + e = e.toString().replace(/\s+/g, ""); + var r = 0; + "-" === e[0] && (r++, + this.negative = 1), + r < e.length && (16 === t ? this._parseHex(e, r, i) : (this._parseBase(e, t, r), + "le" === i && this._initArray(this.toArray(), t, i))) + } + , + a.prototype._initNumber = function(e, t, i) { + e < 0 && (this.negative = 1, + e = -e), + e < 0x4000000 ? (this.words = [0x3ffffff & e], + this.length = 1) : e < 0x10000000000000 ? (this.words = [0x3ffffff & e, e / 0x4000000 & 0x3ffffff], + this.length = 2) : (n(e < 0x20000000000000), + this.words = [0x3ffffff & e, e / 0x4000000 & 0x3ffffff, 1], + this.length = 3), + "le" === i && this._initArray(this.toArray(), t, i) + } + , + a.prototype._initArray = function(e, t, i) { + if (n("number" == typeof e.length), + e.length <= 0) + return this.words = [0], + this.length = 1, + this; + this.length = Math.ceil(e.length / 3), + this.words = Array(this.length); + for (var r, a, o = 0; o < this.length; o++) + this.words[o] = 0; + var s = 0; + if ("be" === i) + for (o = e.length - 1, + r = 0; o >= 0; o -= 3) + a = e[o] | e[o - 1] << 8 | e[o - 2] << 16, + this.words[r] |= a << s & 0x3ffffff, + this.words[r + 1] = a >>> 26 - s & 0x3ffffff, + (s += 24) >= 26 && (s -= 26, + r++); + else if ("le" === i) + for (o = 0, + r = 0; o < e.length; o += 3) + a = e[o] | e[o + 1] << 8 | e[o + 2] << 16, + this.words[r] |= a << s & 0x3ffffff, + this.words[r + 1] = a >>> 26 - s & 0x3ffffff, + (s += 24) >= 26 && (s -= 26, + r++); + return this.strip() + } + , + a.prototype._parseHex = function(e, t, i) { + this.length = Math.ceil((e.length - t) / 6), + this.words = Array(this.length); + for (var n, r = 0; r < this.length; r++) + this.words[r] = 0; + var a = 0 + , o = 0; + if ("be" === i) + for (r = e.length - 1; r >= t; r -= 2) + n = s(e, t, r) << a, + this.words[o] |= 0x3ffffff & n, + a >= 18 ? (a -= 18, + o += 1, + this.words[o] |= n >>> 26) : a += 8; + else + for (r = (e.length - t) % 2 == 0 ? t + 1 : t; r < e.length; r += 2) + n = s(e, t, r) << a, + this.words[o] |= 0x3ffffff & n, + a >= 18 ? (a -= 18, + o += 1, + this.words[o] |= n >>> 26) : a += 8; + this.strip() + } + , + a.prototype._parseBase = function(e, t, i) { + this.words = [0], + this.length = 1; + for (var n = 0, r = 1; r <= 0x3ffffff; r *= t) + n++; + n--, + r = r / t | 0; + for (var a = e.length - i, o = a % n, s = Math.min(a, a - o) + i, c = 0, d = i; d < s; d += n) + c = l(e, d, d + n, t), + this.imuln(r), + this.words[0] + c < 0x4000000 ? this.words[0] += c : this._iaddn(c); + if (0 !== o) { + var u = 1; + for (c = l(e, d, e.length, t), + d = 0; d < o; d++) + u *= t; + this.imuln(u), + this.words[0] + c < 0x4000000 ? this.words[0] += c : this._iaddn(c) + } + this.strip() + } + , + a.prototype.copy = function(e) { + e.words = Array(this.length); + for (var t = 0; t < this.length; t++) + e.words[t] = this.words[t]; + e.length = this.length, + e.negative = this.negative, + e.red = this.red + } + , + a.prototype.clone = function() { + var e = new a(null); + return this.copy(e), + e + } + , + a.prototype._expand = function(e) { + for (; this.length < e; ) + this.words[this.length++] = 0; + return this + } + , + a.prototype.strip = function() { + for (; this.length > 1 && 0 === this.words[this.length - 1]; ) + this.length--; + return this._normSign() + } + , + a.prototype._normSign = function() { + return 1 === this.length && 0 === this.words[0] && (this.negative = 0), + this + } + , + a.prototype.inspect = function() { + return (this.red ? "" + } + ; + var c, d = ["", "0", "00", "000", "0000", "00000", "000000", "0000000", "00000000", "000000000", "0000000000", "00000000000", "000000000000", "0000000000000", "00000000000000", "000000000000000", "0000000000000000", "00000000000000000", "000000000000000000", "0000000000000000000", "00000000000000000000", "000000000000000000000", "0000000000000000000000", "00000000000000000000000", "000000000000000000000000", "0000000000000000000000000"], u = [0, 0, 25, 16, 12, 11, 10, 9, 8, 8, 7, 7, 7, 7, 6, 6, 6, 6, 6, 6, 6, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5], f = [0, 0, 0x2000000, 0x290d741, 0x1000000, 0x2e90edd, 0x39aa400, 0x267bf47, 0x1000000, 0x290d741, 1e7, 0x12959c3, 0x222c000, 0x3bd7765, 7529536, 0xadcea1, 0x1000000, 0x1704f61, 0x206fc40, 0x2cddcf9, 64e6, 4084101, 5153632, 6436343, 7962624, 9765625, 0xb54ba0, 0xdaf26b, 0x1069c00, 0x138f9ad, 243e5, 0x1b4d89f, 0x2000000, 0x25528a1, 0x2b54a20, 0x3216b93, 0x39aa400]; + function h(e) { + for (var t = Array(e.bitLength()), i = 0; i < t.length; i++) { + var n = i / 26 | 0 + , r = i % 26; + t[i] = (e.words[n] & 1 << r) >>> r + } + return t + } + function p(e, t, i) { + i.negative = t.negative ^ e.negative; + var n = e.length + t.length | 0; + i.length = n, + n = n - 1 | 0; + var r = 0 | e.words[0] + , a = 0 | t.words[0] + , o = r * a + , s = 0x3ffffff & o + , l = o / 0x4000000 | 0; + i.words[0] = s; + for (var c = 1; c < n; c++) { + for (var d = l >>> 26, u = 0x3ffffff & l, f = Math.min(c, t.length - 1), h = Math.max(0, c - e.length + 1); h <= f; h++) { + var p = c - h | 0; + r = 0 | e.words[p], + d += (o = r * (a = 0 | t.words[h]) + u) / 0x4000000 | 0, + u = 0x3ffffff & o + } + i.words[c] = 0 | u, + l = 0 | d + } + return 0 !== l ? i.words[c] = 0 | l : i.length--, + i.strip() + } + a.prototype.toString = function(e, t) { + if (t = 0 | t || 1, + 16 === (e = e || 10) || "hex" === e) { + i = ""; + for (var i, r = 0, a = 0, o = 0; o < this.length; o++) { + var s = this.words[o] + , l = ((s << r | a) & 0xffffff).toString(16); + i = 0 != (a = s >>> 24 - r & 0xffffff) || o !== this.length - 1 ? d[6 - l.length] + l + i : l + i, + (r += 2) >= 26 && (r -= 26, + o--) + } + for (0 !== a && (i = a.toString(16) + i); i.length % t != 0; ) + i = "0" + i; + return 0 !== this.negative && (i = "-" + i), + i + } + if (e === (0 | e) && e >= 2 && e <= 36) { + var c = u[e] + , h = f[e]; + i = ""; + var p = this.clone(); + for (p.negative = 0; !p.isZero(); ) { + var v = p.modn(h).toString(e); + i = (p = p.idivn(h)).isZero() ? v + i : d[c - v.length] + v + i + } + for (this.isZero() && (i = "0" + i); i.length % t != 0; ) + i = "0" + i; + return 0 !== this.negative && (i = "-" + i), + i + } + n(!1, "Base should be between 2 and 36") + } + , + a.prototype.toNumber = function() { + var e = this.words[0]; + return 2 === this.length ? e += 0x4000000 * this.words[1] : 3 === this.length && 1 === this.words[2] ? e += 0x10000000000000 + 0x4000000 * this.words[1] : this.length > 2 && n(!1, "Number can only safely store up to 53 bits"), + 0 !== this.negative ? -e : e + } + , + a.prototype.toJSON = function() { + return this.toString(16) + } + , + a.prototype.toBuffer = function(e, t) { + return n(void 0 !== c), + this.toArrayLike(c, e, t) + } + , + a.prototype.toArray = function(e, t) { + return this.toArrayLike(Array, e, t) + } + , + a.prototype.toArrayLike = function(e, t, i) { + var r, a, o = this.byteLength(), s = i || Math.max(1, o); + n(o <= s, "byte array longer than desired length"), + n(s > 0, "Requested array length <= 0"), + this.strip(); + var l = "le" === t + , c = new e(s) + , d = this.clone(); + if (l) { + for (a = 0; !d.isZero(); a++) + r = d.andln(255), + d.iushrn(8), + c[a] = r; + for (; a < s; a++) + c[a] = 0 + } else { + for (a = 0; a < s - o; a++) + c[a] = 0; + for (a = 0; !d.isZero(); a++) + r = d.andln(255), + d.iushrn(8), + c[s - a - 1] = r + } + return c + } + , + Math.clz32 ? a.prototype._countBits = function(e) { + return 32 - Math.clz32(e) + } + : a.prototype._countBits = function(e) { + var t = e + , i = 0; + return t >= 4096 && (i += 13, + t >>>= 13), + t >= 64 && (i += 7, + t >>>= 7), + t >= 8 && (i += 4, + t >>>= 4), + t >= 2 && (i += 2, + t >>>= 2), + i + t + } + , + a.prototype._zeroBits = function(e) { + if (0 === e) + return 26; + var t = e + , i = 0; + return (8191 & t) == 0 && (i += 13, + t >>>= 13), + (127 & t) == 0 && (i += 7, + t >>>= 7), + (15 & t) == 0 && (i += 4, + t >>>= 4), + (3 & t) == 0 && (i += 2, + t >>>= 2), + (1 & t) == 0 && i++, + i + } + , + a.prototype.bitLength = function() { + var e = this.words[this.length - 1] + , t = this._countBits(e); + return (this.length - 1) * 26 + t + } + , + a.prototype.zeroBits = function() { + if (this.isZero()) + return 0; + for (var e = 0, t = 0; t < this.length; t++) { + var i = this._zeroBits(this.words[t]); + if (e += i, + 26 !== i) + break + } + return e + } + , + a.prototype.byteLength = function() { + return Math.ceil(this.bitLength() / 8) + } + , + a.prototype.toTwos = function(e) { + return 0 !== this.negative ? this.abs().inotn(e).iaddn(1) : this.clone() + } + , + a.prototype.fromTwos = function(e) { + return this.testn(e - 1) ? this.notn(e).iaddn(1).ineg() : this.clone() + } + , + a.prototype.isNeg = function() { + return 0 !== this.negative + } + , + a.prototype.neg = function() { + return this.clone().ineg() + } + , + a.prototype.ineg = function() { + return !this.isZero() && (this.negative ^= 1), + this + } + , + a.prototype.iuor = function(e) { + for (; this.length < e.length; ) + this.words[this.length++] = 0; + for (var t = 0; t < e.length; t++) + this.words[t] = this.words[t] | e.words[t]; + return this.strip() + } + , + a.prototype.ior = function(e) { + return n((this.negative | e.negative) == 0), + this.iuor(e) + } + , + a.prototype.or = function(e) { + return this.length > e.length ? this.clone().ior(e) : e.clone().ior(this) + } + , + a.prototype.uor = function(e) { + return this.length > e.length ? this.clone().iuor(e) : e.clone().iuor(this) + } + , + a.prototype.iuand = function(e) { + var t; + t = this.length > e.length ? e : this; + for (var i = 0; i < t.length; i++) + this.words[i] = this.words[i] & e.words[i]; + return this.length = t.length, + this.strip() + } + , + a.prototype.iand = function(e) { + return n((this.negative | e.negative) == 0), + this.iuand(e) + } + , + a.prototype.and = function(e) { + return this.length > e.length ? this.clone().iand(e) : e.clone().iand(this) + } + , + a.prototype.uand = function(e) { + return this.length > e.length ? this.clone().iuand(e) : e.clone().iuand(this) + } + , + a.prototype.iuxor = function(e) { + this.length > e.length ? (t = this, + i = e) : (t = e, + i = this); + for (var t, i, n = 0; n < i.length; n++) + this.words[n] = t.words[n] ^ i.words[n]; + if (this !== t) + for (; n < t.length; n++) + this.words[n] = t.words[n]; + return this.length = t.length, + this.strip() + } + , + a.prototype.ixor = function(e) { + return n((this.negative | e.negative) == 0), + this.iuxor(e) + } + , + a.prototype.xor = function(e) { + return this.length > e.length ? this.clone().ixor(e) : e.clone().ixor(this) + } + , + a.prototype.uxor = function(e) { + return this.length > e.length ? this.clone().iuxor(e) : e.clone().iuxor(this) + } + , + a.prototype.inotn = function(e) { + n("number" == typeof e && e >= 0); + var t = 0 | Math.ceil(e / 26) + , i = e % 26; + this._expand(t), + i > 0 && t--; + for (var r = 0; r < t; r++) + this.words[r] = 0x3ffffff & ~this.words[r]; + return i > 0 && (this.words[r] = ~this.words[r] & 0x3ffffff >> 26 - i), + this.strip() + } + , + a.prototype.notn = function(e) { + return this.clone().inotn(e) + } + , + a.prototype.setn = function(e, t) { + n("number" == typeof e && e >= 0); + var i = e / 26 | 0 + , r = e % 26; + return this._expand(i + 1), + t ? this.words[i] = this.words[i] | 1 << r : this.words[i] = this.words[i] & ~(1 << r), + this.strip() + } + , + a.prototype.iadd = function(e) { + if (0 !== this.negative && 0 === e.negative) + return this.negative = 0, + t = this.isub(e), + this.negative ^= 1, + this._normSign(); + if (0 === this.negative && 0 !== e.negative) + return e.negative = 0, + t = this.isub(e), + e.negative = 1, + t._normSign(); + this.length > e.length ? (i = this, + n = e) : (i = e, + n = this); + for (var t, i, n, r = 0, a = 0; a < n.length; a++) + t = (0 | i.words[a]) + (0 | n.words[a]) + r, + this.words[a] = 0x3ffffff & t, + r = t >>> 26; + for (; 0 !== r && a < i.length; a++) + t = (0 | i.words[a]) + r, + this.words[a] = 0x3ffffff & t, + r = t >>> 26; + if (this.length = i.length, + 0 !== r) + this.words[this.length] = r, + this.length++; + else if (i !== this) + for (; a < i.length; a++) + this.words[a] = i.words[a]; + return this + } + , + a.prototype.add = function(e) { + var t; + return 0 !== e.negative && 0 === this.negative ? (e.negative = 0, + t = this.sub(e), + e.negative ^= 1, + t) : 0 === e.negative && 0 !== this.negative ? (this.negative = 0, + t = e.sub(this), + this.negative = 1, + t) : this.length > e.length ? this.clone().iadd(e) : e.clone().iadd(this) + } + , + a.prototype.isub = function(e) { + if (0 !== e.negative) { + e.negative = 0; + var t, i, n = this.iadd(e); + return e.negative = 1, + n._normSign() + } + if (0 !== this.negative) + return this.negative = 0, + this.iadd(e), + this.negative = 1, + this._normSign(); + var r = this.cmp(e); + if (0 === r) + return this.negative = 0, + this.length = 1, + this.words[0] = 0, + this; + r > 0 ? (t = this, + i = e) : (t = e, + i = this); + for (var a = 0, o = 0; o < i.length; o++) + a = (n = (0 | t.words[o]) - (0 | i.words[o]) + a) >> 26, + this.words[o] = 0x3ffffff & n; + for (; 0 !== a && o < t.length; o++) + a = (n = (0 | t.words[o]) + a) >> 26, + this.words[o] = 0x3ffffff & n; + if (0 === a && o < t.length && t !== this) + for (; o < t.length; o++) + this.words[o] = t.words[o]; + return this.length = Math.max(this.length, o), + t !== this && (this.negative = 1), + this.strip() + } + , + a.prototype.sub = function(e) { + return this.clone().isub(e) + } + ; + var v = function(e, t, i) { + var n, r, a, o = e.words, s = t.words, l = i.words, c = 0, d = 0 | o[0], u = 8191 & d, f = d >>> 13, h = 0 | o[1], p = 8191 & h, v = h >>> 13, m = 0 | o[2], g = 8191 & m, _ = m >>> 13, y = 0 | o[3], b = 8191 & y, I = y >>> 13, w = 0 | o[4], x = 8191 & w, S = w >>> 13, M = 0 | o[5], C = 8191 & M, T = M >>> 13, A = 0 | o[6], k = 8191 & A, P = A >>> 13, E = 0 | o[7], D = 8191 & E, R = E >>> 13, N = 0 | o[8], L = 8191 & N, j = N >>> 13, O = 0 | o[9], B = 8191 & O, F = O >>> 13, U = 0 | s[0], G = 8191 & U, z = U >>> 13, V = 0 | s[1], W = 8191 & V, Z = V >>> 13, K = 0 | s[2], H = 8191 & K, q = K >>> 13, J = 0 | s[3], Y = 8191 & J, Q = J >>> 13, X = 0 | s[4], $ = 8191 & X, ee = X >>> 13, et = 0 | s[5], ei = 8191 & et, en = et >>> 13, er = 0 | s[6], ea = 8191 & er, eo = er >>> 13, es = 0 | s[7], el = 8191 & es, ec = es >>> 13, ed = 0 | s[8], eu = 8191 & ed, ef = ed >>> 13, eh = 0 | s[9], ep = 8191 & eh, ev = eh >>> 13; + i.negative = e.negative ^ t.negative, + i.length = 19, + n = Math.imul(u, G), + r = (r = Math.imul(u, z)) + Math.imul(f, G) | 0; + var em = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = Math.imul(f, z)) + (r >>> 13) | 0) + (em >>> 26) | 0, + em &= 0x3ffffff, + n = Math.imul(p, G), + r = (r = Math.imul(p, z)) + Math.imul(v, G) | 0, + a = Math.imul(v, z), + n = n + Math.imul(u, W) | 0, + r = (r = r + Math.imul(u, Z) | 0) + Math.imul(f, W) | 0; + var eg = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(f, Z) | 0) + (r >>> 13) | 0) + (eg >>> 26) | 0, + eg &= 0x3ffffff, + n = Math.imul(g, G), + r = (r = Math.imul(g, z)) + Math.imul(_, G) | 0, + a = Math.imul(_, z), + n = n + Math.imul(p, W) | 0, + r = (r = r + Math.imul(p, Z) | 0) + Math.imul(v, W) | 0, + a = a + Math.imul(v, Z) | 0, + n = n + Math.imul(u, H) | 0, + r = (r = r + Math.imul(u, q) | 0) + Math.imul(f, H) | 0; + var e_ = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(f, q) | 0) + (r >>> 13) | 0) + (e_ >>> 26) | 0, + e_ &= 0x3ffffff, + n = Math.imul(b, G), + r = (r = Math.imul(b, z)) + Math.imul(I, G) | 0, + a = Math.imul(I, z), + n = n + Math.imul(g, W) | 0, + r = (r = r + Math.imul(g, Z) | 0) + Math.imul(_, W) | 0, + a = a + Math.imul(_, Z) | 0, + n = n + Math.imul(p, H) | 0, + r = (r = r + Math.imul(p, q) | 0) + Math.imul(v, H) | 0, + a = a + Math.imul(v, q) | 0, + n = n + Math.imul(u, Y) | 0, + r = (r = r + Math.imul(u, Q) | 0) + Math.imul(f, Y) | 0; + var ey = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(f, Q) | 0) + (r >>> 13) | 0) + (ey >>> 26) | 0, + ey &= 0x3ffffff, + n = Math.imul(x, G), + r = (r = Math.imul(x, z)) + Math.imul(S, G) | 0, + a = Math.imul(S, z), + n = n + Math.imul(b, W) | 0, + r = (r = r + Math.imul(b, Z) | 0) + Math.imul(I, W) | 0, + a = a + Math.imul(I, Z) | 0, + n = n + Math.imul(g, H) | 0, + r = (r = r + Math.imul(g, q) | 0) + Math.imul(_, H) | 0, + a = a + Math.imul(_, q) | 0, + n = n + Math.imul(p, Y) | 0, + r = (r = r + Math.imul(p, Q) | 0) + Math.imul(v, Y) | 0, + a = a + Math.imul(v, Q) | 0, + n = n + Math.imul(u, $) | 0, + r = (r = r + Math.imul(u, ee) | 0) + Math.imul(f, $) | 0; + var eb = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(f, ee) | 0) + (r >>> 13) | 0) + (eb >>> 26) | 0, + eb &= 0x3ffffff, + n = Math.imul(C, G), + r = (r = Math.imul(C, z)) + Math.imul(T, G) | 0, + a = Math.imul(T, z), + n = n + Math.imul(x, W) | 0, + r = (r = r + Math.imul(x, Z) | 0) + Math.imul(S, W) | 0, + a = a + Math.imul(S, Z) | 0, + n = n + Math.imul(b, H) | 0, + r = (r = r + Math.imul(b, q) | 0) + Math.imul(I, H) | 0, + a = a + Math.imul(I, q) | 0, + n = n + Math.imul(g, Y) | 0, + r = (r = r + Math.imul(g, Q) | 0) + Math.imul(_, Y) | 0, + a = a + Math.imul(_, Q) | 0, + n = n + Math.imul(p, $) | 0, + r = (r = r + Math.imul(p, ee) | 0) + Math.imul(v, $) | 0, + a = a + Math.imul(v, ee) | 0, + n = n + Math.imul(u, ei) | 0, + r = (r = r + Math.imul(u, en) | 0) + Math.imul(f, ei) | 0; + var eI = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(f, en) | 0) + (r >>> 13) | 0) + (eI >>> 26) | 0, + eI &= 0x3ffffff, + n = Math.imul(k, G), + r = (r = Math.imul(k, z)) + Math.imul(P, G) | 0, + a = Math.imul(P, z), + n = n + Math.imul(C, W) | 0, + r = (r = r + Math.imul(C, Z) | 0) + Math.imul(T, W) | 0, + a = a + Math.imul(T, Z) | 0, + n = n + Math.imul(x, H) | 0, + r = (r = r + Math.imul(x, q) | 0) + Math.imul(S, H) | 0, + a = a + Math.imul(S, q) | 0, + n = n + Math.imul(b, Y) | 0, + r = (r = r + Math.imul(b, Q) | 0) + Math.imul(I, Y) | 0, + a = a + Math.imul(I, Q) | 0, + n = n + Math.imul(g, $) | 0, + r = (r = r + Math.imul(g, ee) | 0) + Math.imul(_, $) | 0, + a = a + Math.imul(_, ee) | 0, + n = n + Math.imul(p, ei) | 0, + r = (r = r + Math.imul(p, en) | 0) + Math.imul(v, ei) | 0, + a = a + Math.imul(v, en) | 0, + n = n + Math.imul(u, ea) | 0, + r = (r = r + Math.imul(u, eo) | 0) + Math.imul(f, ea) | 0; + var ew = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(f, eo) | 0) + (r >>> 13) | 0) + (ew >>> 26) | 0, + ew &= 0x3ffffff, + n = Math.imul(D, G), + r = (r = Math.imul(D, z)) + Math.imul(R, G) | 0, + a = Math.imul(R, z), + n = n + Math.imul(k, W) | 0, + r = (r = r + Math.imul(k, Z) | 0) + Math.imul(P, W) | 0, + a = a + Math.imul(P, Z) | 0, + n = n + Math.imul(C, H) | 0, + r = (r = r + Math.imul(C, q) | 0) + Math.imul(T, H) | 0, + a = a + Math.imul(T, q) | 0, + n = n + Math.imul(x, Y) | 0, + r = (r = r + Math.imul(x, Q) | 0) + Math.imul(S, Y) | 0, + a = a + Math.imul(S, Q) | 0, + n = n + Math.imul(b, $) | 0, + r = (r = r + Math.imul(b, ee) | 0) + Math.imul(I, $) | 0, + a = a + Math.imul(I, ee) | 0, + n = n + Math.imul(g, ei) | 0, + r = (r = r + Math.imul(g, en) | 0) + Math.imul(_, ei) | 0, + a = a + Math.imul(_, en) | 0, + n = n + Math.imul(p, ea) | 0, + r = (r = r + Math.imul(p, eo) | 0) + Math.imul(v, ea) | 0, + a = a + Math.imul(v, eo) | 0, + n = n + Math.imul(u, el) | 0, + r = (r = r + Math.imul(u, ec) | 0) + Math.imul(f, el) | 0; + var ex = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(f, ec) | 0) + (r >>> 13) | 0) + (ex >>> 26) | 0, + ex &= 0x3ffffff, + n = Math.imul(L, G), + r = (r = Math.imul(L, z)) + Math.imul(j, G) | 0, + a = Math.imul(j, z), + n = n + Math.imul(D, W) | 0, + r = (r = r + Math.imul(D, Z) | 0) + Math.imul(R, W) | 0, + a = a + Math.imul(R, Z) | 0, + n = n + Math.imul(k, H) | 0, + r = (r = r + Math.imul(k, q) | 0) + Math.imul(P, H) | 0, + a = a + Math.imul(P, q) | 0, + n = n + Math.imul(C, Y) | 0, + r = (r = r + Math.imul(C, Q) | 0) + Math.imul(T, Y) | 0, + a = a + Math.imul(T, Q) | 0, + n = n + Math.imul(x, $) | 0, + r = (r = r + Math.imul(x, ee) | 0) + Math.imul(S, $) | 0, + a = a + Math.imul(S, ee) | 0, + n = n + Math.imul(b, ei) | 0, + r = (r = r + Math.imul(b, en) | 0) + Math.imul(I, ei) | 0, + a = a + Math.imul(I, en) | 0, + n = n + Math.imul(g, ea) | 0, + r = (r = r + Math.imul(g, eo) | 0) + Math.imul(_, ea) | 0, + a = a + Math.imul(_, eo) | 0, + n = n + Math.imul(p, el) | 0, + r = (r = r + Math.imul(p, ec) | 0) + Math.imul(v, el) | 0, + a = a + Math.imul(v, ec) | 0, + n = n + Math.imul(u, eu) | 0, + r = (r = r + Math.imul(u, ef) | 0) + Math.imul(f, eu) | 0; + var eS = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(f, ef) | 0) + (r >>> 13) | 0) + (eS >>> 26) | 0, + eS &= 0x3ffffff, + n = Math.imul(B, G), + r = (r = Math.imul(B, z)) + Math.imul(F, G) | 0, + a = Math.imul(F, z), + n = n + Math.imul(L, W) | 0, + r = (r = r + Math.imul(L, Z) | 0) + Math.imul(j, W) | 0, + a = a + Math.imul(j, Z) | 0, + n = n + Math.imul(D, H) | 0, + r = (r = r + Math.imul(D, q) | 0) + Math.imul(R, H) | 0, + a = a + Math.imul(R, q) | 0, + n = n + Math.imul(k, Y) | 0, + r = (r = r + Math.imul(k, Q) | 0) + Math.imul(P, Y) | 0, + a = a + Math.imul(P, Q) | 0, + n = n + Math.imul(C, $) | 0, + r = (r = r + Math.imul(C, ee) | 0) + Math.imul(T, $) | 0, + a = a + Math.imul(T, ee) | 0, + n = n + Math.imul(x, ei) | 0, + r = (r = r + Math.imul(x, en) | 0) + Math.imul(S, ei) | 0, + a = a + Math.imul(S, en) | 0, + n = n + Math.imul(b, ea) | 0, + r = (r = r + Math.imul(b, eo) | 0) + Math.imul(I, ea) | 0, + a = a + Math.imul(I, eo) | 0, + n = n + Math.imul(g, el) | 0, + r = (r = r + Math.imul(g, ec) | 0) + Math.imul(_, el) | 0, + a = a + Math.imul(_, ec) | 0, + n = n + Math.imul(p, eu) | 0, + r = (r = r + Math.imul(p, ef) | 0) + Math.imul(v, eu) | 0, + a = a + Math.imul(v, ef) | 0, + n = n + Math.imul(u, ep) | 0, + r = (r = r + Math.imul(u, ev) | 0) + Math.imul(f, ep) | 0; + var eM = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(f, ev) | 0) + (r >>> 13) | 0) + (eM >>> 26) | 0, + eM &= 0x3ffffff, + n = Math.imul(B, W), + r = (r = Math.imul(B, Z)) + Math.imul(F, W) | 0, + a = Math.imul(F, Z), + n = n + Math.imul(L, H) | 0, + r = (r = r + Math.imul(L, q) | 0) + Math.imul(j, H) | 0, + a = a + Math.imul(j, q) | 0, + n = n + Math.imul(D, Y) | 0, + r = (r = r + Math.imul(D, Q) | 0) + Math.imul(R, Y) | 0, + a = a + Math.imul(R, Q) | 0, + n = n + Math.imul(k, $) | 0, + r = (r = r + Math.imul(k, ee) | 0) + Math.imul(P, $) | 0, + a = a + Math.imul(P, ee) | 0, + n = n + Math.imul(C, ei) | 0, + r = (r = r + Math.imul(C, en) | 0) + Math.imul(T, ei) | 0, + a = a + Math.imul(T, en) | 0, + n = n + Math.imul(x, ea) | 0, + r = (r = r + Math.imul(x, eo) | 0) + Math.imul(S, ea) | 0, + a = a + Math.imul(S, eo) | 0, + n = n + Math.imul(b, el) | 0, + r = (r = r + Math.imul(b, ec) | 0) + Math.imul(I, el) | 0, + a = a + Math.imul(I, ec) | 0, + n = n + Math.imul(g, eu) | 0, + r = (r = r + Math.imul(g, ef) | 0) + Math.imul(_, eu) | 0, + a = a + Math.imul(_, ef) | 0, + n = n + Math.imul(p, ep) | 0, + r = (r = r + Math.imul(p, ev) | 0) + Math.imul(v, ep) | 0; + var eC = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(v, ev) | 0) + (r >>> 13) | 0) + (eC >>> 26) | 0, + eC &= 0x3ffffff, + n = Math.imul(B, H), + r = (r = Math.imul(B, q)) + Math.imul(F, H) | 0, + a = Math.imul(F, q), + n = n + Math.imul(L, Y) | 0, + r = (r = r + Math.imul(L, Q) | 0) + Math.imul(j, Y) | 0, + a = a + Math.imul(j, Q) | 0, + n = n + Math.imul(D, $) | 0, + r = (r = r + Math.imul(D, ee) | 0) + Math.imul(R, $) | 0, + a = a + Math.imul(R, ee) | 0, + n = n + Math.imul(k, ei) | 0, + r = (r = r + Math.imul(k, en) | 0) + Math.imul(P, ei) | 0, + a = a + Math.imul(P, en) | 0, + n = n + Math.imul(C, ea) | 0, + r = (r = r + Math.imul(C, eo) | 0) + Math.imul(T, ea) | 0, + a = a + Math.imul(T, eo) | 0, + n = n + Math.imul(x, el) | 0, + r = (r = r + Math.imul(x, ec) | 0) + Math.imul(S, el) | 0, + a = a + Math.imul(S, ec) | 0, + n = n + Math.imul(b, eu) | 0, + r = (r = r + Math.imul(b, ef) | 0) + Math.imul(I, eu) | 0, + a = a + Math.imul(I, ef) | 0, + n = n + Math.imul(g, ep) | 0, + r = (r = r + Math.imul(g, ev) | 0) + Math.imul(_, ep) | 0; + var eT = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(_, ev) | 0) + (r >>> 13) | 0) + (eT >>> 26) | 0, + eT &= 0x3ffffff, + n = Math.imul(B, Y), + r = (r = Math.imul(B, Q)) + Math.imul(F, Y) | 0, + a = Math.imul(F, Q), + n = n + Math.imul(L, $) | 0, + r = (r = r + Math.imul(L, ee) | 0) + Math.imul(j, $) | 0, + a = a + Math.imul(j, ee) | 0, + n = n + Math.imul(D, ei) | 0, + r = (r = r + Math.imul(D, en) | 0) + Math.imul(R, ei) | 0, + a = a + Math.imul(R, en) | 0, + n = n + Math.imul(k, ea) | 0, + r = (r = r + Math.imul(k, eo) | 0) + Math.imul(P, ea) | 0, + a = a + Math.imul(P, eo) | 0, + n = n + Math.imul(C, el) | 0, + r = (r = r + Math.imul(C, ec) | 0) + Math.imul(T, el) | 0, + a = a + Math.imul(T, ec) | 0, + n = n + Math.imul(x, eu) | 0, + r = (r = r + Math.imul(x, ef) | 0) + Math.imul(S, eu) | 0, + a = a + Math.imul(S, ef) | 0, + n = n + Math.imul(b, ep) | 0, + r = (r = r + Math.imul(b, ev) | 0) + Math.imul(I, ep) | 0; + var eA = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(I, ev) | 0) + (r >>> 13) | 0) + (eA >>> 26) | 0, + eA &= 0x3ffffff, + n = Math.imul(B, $), + r = (r = Math.imul(B, ee)) + Math.imul(F, $) | 0, + a = Math.imul(F, ee), + n = n + Math.imul(L, ei) | 0, + r = (r = r + Math.imul(L, en) | 0) + Math.imul(j, ei) | 0, + a = a + Math.imul(j, en) | 0, + n = n + Math.imul(D, ea) | 0, + r = (r = r + Math.imul(D, eo) | 0) + Math.imul(R, ea) | 0, + a = a + Math.imul(R, eo) | 0, + n = n + Math.imul(k, el) | 0, + r = (r = r + Math.imul(k, ec) | 0) + Math.imul(P, el) | 0, + a = a + Math.imul(P, ec) | 0, + n = n + Math.imul(C, eu) | 0, + r = (r = r + Math.imul(C, ef) | 0) + Math.imul(T, eu) | 0, + a = a + Math.imul(T, ef) | 0, + n = n + Math.imul(x, ep) | 0, + r = (r = r + Math.imul(x, ev) | 0) + Math.imul(S, ep) | 0; + var ek = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(S, ev) | 0) + (r >>> 13) | 0) + (ek >>> 26) | 0, + ek &= 0x3ffffff, + n = Math.imul(B, ei), + r = (r = Math.imul(B, en)) + Math.imul(F, ei) | 0, + a = Math.imul(F, en), + n = n + Math.imul(L, ea) | 0, + r = (r = r + Math.imul(L, eo) | 0) + Math.imul(j, ea) | 0, + a = a + Math.imul(j, eo) | 0, + n = n + Math.imul(D, el) | 0, + r = (r = r + Math.imul(D, ec) | 0) + Math.imul(R, el) | 0, + a = a + Math.imul(R, ec) | 0, + n = n + Math.imul(k, eu) | 0, + r = (r = r + Math.imul(k, ef) | 0) + Math.imul(P, eu) | 0, + a = a + Math.imul(P, ef) | 0, + n = n + Math.imul(C, ep) | 0, + r = (r = r + Math.imul(C, ev) | 0) + Math.imul(T, ep) | 0; + var eP = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(T, ev) | 0) + (r >>> 13) | 0) + (eP >>> 26) | 0, + eP &= 0x3ffffff, + n = Math.imul(B, ea), + r = (r = Math.imul(B, eo)) + Math.imul(F, ea) | 0, + a = Math.imul(F, eo), + n = n + Math.imul(L, el) | 0, + r = (r = r + Math.imul(L, ec) | 0) + Math.imul(j, el) | 0, + a = a + Math.imul(j, ec) | 0, + n = n + Math.imul(D, eu) | 0, + r = (r = r + Math.imul(D, ef) | 0) + Math.imul(R, eu) | 0, + a = a + Math.imul(R, ef) | 0, + n = n + Math.imul(k, ep) | 0, + r = (r = r + Math.imul(k, ev) | 0) + Math.imul(P, ep) | 0; + var eE = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(P, ev) | 0) + (r >>> 13) | 0) + (eE >>> 26) | 0, + eE &= 0x3ffffff, + n = Math.imul(B, el), + r = (r = Math.imul(B, ec)) + Math.imul(F, el) | 0, + a = Math.imul(F, ec), + n = n + Math.imul(L, eu) | 0, + r = (r = r + Math.imul(L, ef) | 0) + Math.imul(j, eu) | 0, + a = a + Math.imul(j, ef) | 0, + n = n + Math.imul(D, ep) | 0, + r = (r = r + Math.imul(D, ev) | 0) + Math.imul(R, ep) | 0; + var eD = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(R, ev) | 0) + (r >>> 13) | 0) + (eD >>> 26) | 0, + eD &= 0x3ffffff, + n = Math.imul(B, eu), + r = (r = Math.imul(B, ef)) + Math.imul(F, eu) | 0, + a = Math.imul(F, ef), + n = n + Math.imul(L, ep) | 0, + r = (r = r + Math.imul(L, ev) | 0) + Math.imul(j, ep) | 0; + var eR = (c + n | 0) + ((8191 & r) << 13) | 0; + c = ((a = a + Math.imul(j, ev) | 0) + (r >>> 13) | 0) + (eR >>> 26) | 0, + eR &= 0x3ffffff, + n = Math.imul(B, ep), + r = (r = Math.imul(B, ev)) + Math.imul(F, ep) | 0; + var eN = (c + n | 0) + ((8191 & r) << 13) | 0; + return c = ((a = Math.imul(F, ev)) + (r >>> 13) | 0) + (eN >>> 26) | 0, + eN &= 0x3ffffff, + l[0] = em, + l[1] = eg, + l[2] = e_, + l[3] = ey, + l[4] = eb, + l[5] = eI, + l[6] = ew, + l[7] = ex, + l[8] = eS, + l[9] = eM, + l[10] = eC, + l[11] = eT, + l[12] = eA, + l[13] = ek, + l[14] = eP, + l[15] = eE, + l[16] = eD, + l[17] = eR, + l[18] = eN, + 0 !== c && (l[19] = c, + i.length++), + i + }; + function m(e, t, i) { + i.negative = t.negative ^ e.negative, + i.length = e.length + t.length; + for (var n = 0, r = 0, a = 0; a < i.length - 1; a++) { + var o = r; + r = 0; + for (var s = 0x3ffffff & n, l = Math.min(a, t.length - 1), c = Math.max(0, a - e.length + 1); c <= l; c++) { + var d = a - c + , u = (0 | e.words[d]) * (0 | t.words[c]) + , f = 0x3ffffff & u; + o = o + (u / 0x4000000 | 0) | 0, + s = 0x3ffffff & (f = f + s | 0), + r += (o = o + (f >>> 26) | 0) >>> 26, + o &= 0x3ffffff + } + i.words[a] = s, + n = o, + o = r + } + return 0 !== n ? i.words[a] = n : i.length--, + i.strip() + } + function g(e, t, i) { + return new _().mulp(e, t, i) + } + function _(e, t) { + this.x = e, + this.y = t + } + !Math.imul && (v = p), + a.prototype.mulTo = function(e, t) { + var i, n = this.length + e.length; + return i = 10 === this.length && 10 === e.length ? v(this, e, t) : n < 63 ? p(this, e, t) : n < 1024 ? m(this, e, t) : g(this, e, t) + } + , + _.prototype.makeRBT = function(e) { + for (var t = Array(e), i = a.prototype._countBits(e) - 1, n = 0; n < e; n++) + t[n] = this.revBin(n, i, e); + return t + } + , + _.prototype.revBin = function(e, t, i) { + if (0 === e || e === i - 1) + return e; + for (var n = 0, r = 0; r < t; r++) + n |= (1 & e) << t - r - 1, + e >>= 1; + return n + } + , + _.prototype.permute = function(e, t, i, n, r, a) { + for (var o = 0; o < a; o++) + n[o] = t[e[o]], + r[o] = i[e[o]] + } + , + _.prototype.transform = function(e, t, i, n, r, a) { + this.permute(a, e, t, i, n, r); + for (var o = 1; o < r; o <<= 1) { + for (var s = o << 1, l = Math.cos(2 * Math.PI / s), c = Math.sin(2 * Math.PI / s), d = 0; d < r; d += s) { + for (var u = l, f = c, h = 0; h < o; h++) { + var p = i[d + h] + , v = n[d + h] + , m = i[d + h + o] + , g = n[d + h + o] + , _ = u * m - f * g; + g = u * g + f * m, + m = _, + i[d + h] = p + m, + n[d + h] = v + g, + i[d + h + o] = p - m, + n[d + h + o] = v - g, + h !== s && (_ = l * u - c * f, + f = l * f + c * u, + u = _) + } + } + } + } + , + _.prototype.guessLen13b = function(e, t) { + var i = 1 | Math.max(t, e) + , n = 1 & i + , r = 0; + for (i = i / 2 | 0; i; i >>>= 1) + r++; + return 1 << r + 1 + n + } + , + _.prototype.conjugate = function(e, t, i) { + if (!(i <= 1)) + for (var n = 0; n < i / 2; n++) { + var r = e[n]; + e[n] = e[i - n - 1], + e[i - n - 1] = r, + r = t[n], + t[n] = -t[i - n - 1], + t[i - n - 1] = -r + } + } + , + _.prototype.normalize13b = function(e, t) { + for (var i = 0, n = 0; n < t / 2; n++) { + var r = 8192 * Math.round(e[2 * n + 1] / t) + Math.round(e[2 * n] / t) + i; + e[n] = 0x3ffffff & r, + i = r < 0x4000000 ? 0 : r / 0x4000000 | 0 + } + return e + } + , + _.prototype.convert13b = function(e, t, i, r) { + for (var a = 0, o = 0; o < t; o++) + a += 0 | e[o], + i[2 * o] = 8191 & a, + a >>>= 13, + i[2 * o + 1] = 8191 & a, + a >>>= 13; + for (o = 2 * t; o < r; ++o) + i[o] = 0; + n(0 === a), + n((-8192 & a) == 0) + } + , + _.prototype.stub = function(e) { + for (var t = Array(e), i = 0; i < e; i++) + t[i] = 0; + return t + } + , + _.prototype.mulp = function(e, t, i) { + var n = 2 * this.guessLen13b(e.length, t.length) + , r = this.makeRBT(n) + , a = this.stub(n) + , o = Array(n) + , s = Array(n) + , l = Array(n) + , c = Array(n) + , d = Array(n) + , u = Array(n) + , f = i.words; + f.length = n, + this.convert13b(e.words, e.length, o, n), + this.convert13b(t.words, t.length, c, n), + this.transform(o, a, s, l, n, r), + this.transform(c, a, d, u, n, r); + for (var h = 0; h < n; h++) { + var p = s[h] * d[h] - l[h] * u[h]; + l[h] = s[h] * u[h] + l[h] * d[h], + s[h] = p + } + return this.conjugate(s, l, n), + this.transform(s, l, f, a, n, r), + this.conjugate(f, a, n), + this.normalize13b(f, n), + i.negative = e.negative ^ t.negative, + i.length = e.length + t.length, + i.strip() + } + , + a.prototype.mul = function(e) { + var t = new a(null); + return t.words = Array(this.length + e.length), + this.mulTo(e, t) + } + , + a.prototype.mulf = function(e) { + var t = new a(null); + return t.words = Array(this.length + e.length), + g(this, e, t) + } + , + a.prototype.imul = function(e) { + return this.clone().mulTo(e, this) + } + , + a.prototype.imuln = function(e) { + n("number" == typeof e), + n(e < 0x4000000); + for (var t = 0, i = 0; i < this.length; i++) { + var r = (0 | this.words[i]) * e + , a = (0x3ffffff & r) + (0x3ffffff & t); + t >>= 26, + t += (r / 0x4000000 | 0) + (a >>> 26), + this.words[i] = 0x3ffffff & a + } + return 0 !== t && (this.words[i] = t, + this.length++), + this + } + , + a.prototype.muln = function(e) { + return this.clone().imuln(e) + } + , + a.prototype.sqr = function() { + return this.mul(this) + } + , + a.prototype.isqr = function() { + return this.imul(this.clone()) + } + , + a.prototype.pow = function(e) { + var t = h(e); + if (0 === t.length) + return new a(1); + for (var i = this, n = 0; n < t.length && 0 === t[n]; n++, + i = i.sqr()) + ; + if (++n < t.length) + for (var r = i.sqr(); n < t.length; n++, + r = r.sqr()) + 0 !== t[n] && (i = i.mul(r)); + return i + } + , + a.prototype.iushln = function(e) { + n("number" == typeof e && e >= 0); + var t, i = e % 26, r = (e - i) / 26, a = 0x3ffffff >>> 26 - i << 26 - i; + if (0 !== i) { + var o = 0; + for (t = 0; t < this.length; t++) { + var s = this.words[t] & a + , l = (0 | this.words[t]) - s << i; + this.words[t] = l | o, + o = s >>> 26 - i + } + o && (this.words[t] = o, + this.length++) + } + if (0 !== r) { + for (t = this.length - 1; t >= 0; t--) + this.words[t + r] = this.words[t]; + for (t = 0; t < r; t++) + this.words[t] = 0; + this.length += r + } + return this.strip() + } + , + a.prototype.ishln = function(e) { + return n(0 === this.negative), + this.iushln(e) + } + , + a.prototype.iushrn = function(e, t, i) { + n("number" == typeof e && e >= 0), + r = t ? (t - t % 26) / 26 : 0; + var r, a = e % 26, o = Math.min((e - a) / 26, this.length), s = 0x3ffffff ^ 0x3ffffff >>> a << a, l = i; + if (r -= o, + r = Math.max(0, r), + l) { + for (var c = 0; c < o; c++) + l.words[c] = this.words[c]; + l.length = o + } + if (0 === o) + ; + else if (this.length > o) + for (this.length -= o, + c = 0; c < this.length; c++) + this.words[c] = this.words[c + o]; + else + this.words[0] = 0, + this.length = 1; + var d = 0; + for (c = this.length - 1; c >= 0 && (0 !== d || c >= r); c--) { + var u = 0 | this.words[c]; + this.words[c] = d << 26 - a | u >>> a, + d = u & s + } + return l && 0 !== d && (l.words[l.length++] = d), + 0 === this.length && (this.words[0] = 0, + this.length = 1), + this.strip() + } + , + a.prototype.ishrn = function(e, t, i) { + return n(0 === this.negative), + this.iushrn(e, t, i) + } + , + a.prototype.shln = function(e) { + return this.clone().ishln(e) + } + , + a.prototype.ushln = function(e) { + return this.clone().iushln(e) + } + , + a.prototype.shrn = function(e) { + return this.clone().ishrn(e) + } + , + a.prototype.ushrn = function(e) { + return this.clone().iushrn(e) + } + , + a.prototype.testn = function(e) { + n("number" == typeof e && e >= 0); + var t = e % 26 + , i = (e - t) / 26 + , r = 1 << t; + return !(this.length <= i) && !!(this.words[i] & r) + } + , + a.prototype.imaskn = function(e) { + n("number" == typeof e && e >= 0); + var t = e % 26 + , i = (e - t) / 26; + if (n(0 === this.negative, "imaskn works only with positive numbers"), + this.length <= i) + return this; + if (0 !== t && i++, + this.length = Math.min(i, this.length), + 0 !== t) { + var r = 0x3ffffff ^ 0x3ffffff >>> t << t; + this.words[this.length - 1] &= r + } + return this.strip() + } + , + a.prototype.maskn = function(e) { + return this.clone().imaskn(e) + } + , + a.prototype.iaddn = function(e) { + if (n("number" == typeof e), + n(e < 0x4000000), + e < 0) + return this.isubn(-e); + if (0 !== this.negative) + return 1 === this.length && (0 | this.words[0]) < e ? (this.words[0] = e - (0 | this.words[0]), + this.negative = 0, + this) : (this.negative = 0, + this.isubn(e), + this.negative = 1, + this); + return this._iaddn(e) + } + , + a.prototype._iaddn = function(e) { + this.words[0] += e; + for (var t = 0; t < this.length && this.words[t] >= 0x4000000; t++) + this.words[t] -= 0x4000000, + t === this.length - 1 ? this.words[t + 1] = 1 : this.words[t + 1]++; + return this.length = Math.max(this.length, t + 1), + this + } + , + a.prototype.isubn = function(e) { + if (n("number" == typeof e), + n(e < 0x4000000), + e < 0) + return this.iaddn(-e); + if (0 !== this.negative) + return this.negative = 0, + this.iaddn(e), + this.negative = 1, + this; + if (this.words[0] -= e, + 1 === this.length && this.words[0] < 0) + this.words[0] = -this.words[0], + this.negative = 1; + else + for (var t = 0; t < this.length && this.words[t] < 0; t++) + this.words[t] += 0x4000000, + this.words[t + 1] -= 1; + return this.strip() + } + , + a.prototype.addn = function(e) { + return this.clone().iaddn(e) + } + , + a.prototype.subn = function(e) { + return this.clone().isubn(e) + } + , + a.prototype.iabs = function() { + return this.negative = 0, + this + } + , + a.prototype.abs = function() { + return this.clone().iabs() + } + , + a.prototype._ishlnsubmul = function(e, t, i) { + var r, a, o = e.length + i; + this._expand(o); + var s = 0; + for (r = 0; r < e.length; r++) { + a = (0 | this.words[r + i]) + s; + var l = (0 | e.words[r]) * t; + a -= 0x3ffffff & l, + s = (a >> 26) - (l / 0x4000000 | 0), + this.words[r + i] = 0x3ffffff & a + } + for (; r < this.length - i; r++) + s = (a = (0 | this.words[r + i]) + s) >> 26, + this.words[r + i] = 0x3ffffff & a; + if (0 === s) + return this.strip(); + for (n(-1 === s), + s = 0, + r = 0; r < this.length; r++) + s = (a = -(0 | this.words[r]) + s) >> 26, + this.words[r] = 0x3ffffff & a; + return this.negative = 1, + this.strip() + } + , + a.prototype._wordDiv = function(e, t) { + var i, n = this.length - e.length, r = this.clone(), o = e, s = 0 | o.words[o.length - 1]; + 0 != (n = 26 - this._countBits(s)) && (o = o.ushln(n), + r.iushln(n), + s = 0 | o.words[o.length - 1]); + var l = r.length - o.length; + if ("mod" !== t) { + (i = new a(null)).length = l + 1, + i.words = Array(i.length); + for (var c = 0; c < i.length; c++) + i.words[c] = 0 + } + var d = r.clone()._ishlnsubmul(o, 1, l); + 0 === d.negative && (r = d, + i && (i.words[l] = 1)); + for (var u = l - 1; u >= 0; u--) { + var f = (0 | r.words[o.length + u]) * 0x4000000 + (0 | r.words[o.length + u - 1]); + for (f = Math.min(f / s | 0, 0x3ffffff), + r._ishlnsubmul(o, f, u); 0 !== r.negative; ) + f--, + r.negative = 0, + r._ishlnsubmul(o, 1, u), + !r.isZero() && (r.negative ^= 1); + i && (i.words[u] = f) + } + return i && i.strip(), + r.strip(), + "div" !== t && 0 !== n && r.iushrn(n), + { + div: i || null, + mod: r + } + } + , + a.prototype.divmod = function(e, t, i) { + var r, o, s; + if (n(!e.isZero()), + this.isZero()) + return { + div: new a(0), + mod: new a(0) + }; + if (0 !== this.negative && 0 === e.negative) + return s = this.neg().divmod(e, t), + "mod" !== t && (r = s.div.neg()), + "div" !== t && (o = s.mod.neg(), + i && 0 !== o.negative && o.iadd(e)), + { + div: r, + mod: o + }; + if (0 === this.negative && 0 !== e.negative) + return s = this.divmod(e.neg(), t), + "mod" !== t && (r = s.div.neg()), + { + div: r, + mod: s.mod + }; + if ((this.negative & e.negative) != 0) + return s = this.neg().divmod(e.neg(), t), + "div" !== t && (o = s.mod.neg(), + i && 0 !== o.negative && o.isub(e)), + { + div: s.div, + mod: o + }; + if (e.length > this.length || 0 > this.cmp(e)) + return { + div: new a(0), + mod: this + }; + if (1 === e.length) + return "div" === t ? { + div: this.divn(e.words[0]), + mod: null + } : "mod" === t ? { + div: null, + mod: new a(this.modn(e.words[0])) + } : { + div: this.divn(e.words[0]), + mod: new a(this.modn(e.words[0])) + }; + return this._wordDiv(e, t) + } + , + a.prototype.div = function(e) { + return this.divmod(e, "div", !1).div + } + , + a.prototype.mod = function(e) { + return this.divmod(e, "mod", !1).mod + } + , + a.prototype.umod = function(e) { + return this.divmod(e, "mod", !0).mod + } + , + a.prototype.divRound = function(e) { + var t = this.divmod(e); + if (t.mod.isZero()) + return t.div; + var i = 0 !== t.div.negative ? t.mod.isub(e) : t.mod + , n = e.ushrn(1) + , r = e.andln(1) + , a = i.cmp(n); + return a < 0 || 1 === r && 0 === a ? t.div : 0 !== t.div.negative ? t.div.isubn(1) : t.div.iaddn(1) + } + , + a.prototype.modn = function(e) { + n(e <= 0x3ffffff); + for (var t = 0x4000000 % e, i = 0, r = this.length - 1; r >= 0; r--) + i = (t * i + (0 | this.words[r])) % e; + return i + } + , + a.prototype.idivn = function(e) { + n(e <= 0x3ffffff); + for (var t = 0, i = this.length - 1; i >= 0; i--) { + var r = (0 | this.words[i]) + 0x4000000 * t; + this.words[i] = r / e | 0, + t = r % e + } + return this.strip() + } + , + a.prototype.divn = function(e) { + return this.clone().idivn(e) + } + , + a.prototype.egcd = function(e) { + n(0 === e.negative), + n(!e.isZero()); + var t = this + , i = e.clone(); + t = 0 !== t.negative ? t.umod(e) : t.clone(); + for (var r = new a(1), o = new a(0), s = new a(0), l = new a(1), c = 0; t.isEven() && i.isEven(); ) + t.iushrn(1), + i.iushrn(1), + ++c; + for (var d = i.clone(), u = t.clone(); !t.isZero(); ) { + for (var f = 0, h = 1; (t.words[0] & h) == 0 && f < 26; ++f, + h <<= 1) + ; + if (f > 0) + for (t.iushrn(f); f-- > 0; ) + (r.isOdd() || o.isOdd()) && (r.iadd(d), + o.isub(u)), + r.iushrn(1), + o.iushrn(1); + for (var p = 0, v = 1; (i.words[0] & v) == 0 && p < 26; ++p, + v <<= 1) + ; + if (p > 0) + for (i.iushrn(p); p-- > 0; ) + (s.isOdd() || l.isOdd()) && (s.iadd(d), + l.isub(u)), + s.iushrn(1), + l.iushrn(1); + t.cmp(i) >= 0 ? (t.isub(i), + r.isub(s), + o.isub(l)) : (i.isub(t), + s.isub(r), + l.isub(o)) + } + return { + a: s, + b: l, + gcd: i.iushln(c) + } + } + , + a.prototype._invmp = function(e) { + n(0 === e.negative), + n(!e.isZero()); + var t, i = this, r = e.clone(); + i = 0 !== i.negative ? i.umod(e) : i.clone(); + for (var o = new a(1), s = new a(0), l = r.clone(); i.cmpn(1) > 0 && r.cmpn(1) > 0; ) { + for (var c = 0, d = 1; (i.words[0] & d) == 0 && c < 26; ++c, + d <<= 1) + ; + if (c > 0) + for (i.iushrn(c); c-- > 0; ) + o.isOdd() && o.iadd(l), + o.iushrn(1); + for (var u = 0, f = 1; (r.words[0] & f) == 0 && u < 26; ++u, + f <<= 1) + ; + if (u > 0) + for (r.iushrn(u); u-- > 0; ) + s.isOdd() && s.iadd(l), + s.iushrn(1); + i.cmp(r) >= 0 ? (i.isub(r), + o.isub(s)) : (r.isub(i), + s.isub(o)) + } + return 0 > (t = 0 === i.cmpn(1) ? o : s).cmpn(0) && t.iadd(e), + t + } + , + a.prototype.gcd = function(e) { + if (this.isZero()) + return e.abs(); + if (e.isZero()) + return this.abs(); + var t = this.clone() + , i = e.clone(); + t.negative = 0, + i.negative = 0; + for (var n = 0; t.isEven() && i.isEven(); n++) + t.iushrn(1), + i.iushrn(1); + for (; ; ) { + for (; t.isEven(); ) + t.iushrn(1); + for (; i.isEven(); ) + i.iushrn(1); + var r = t.cmp(i); + if (r < 0) { + var a = t; + t = i, + i = a + } else if (0 === r || 0 === i.cmpn(1)) + break; + t.isub(i) + } + return i.iushln(n) + } + , + a.prototype.invm = function(e) { + return this.egcd(e).a.umod(e) + } + , + a.prototype.isEven = function() { + return (1 & this.words[0]) == 0 + } + , + a.prototype.isOdd = function() { + return (1 & this.words[0]) == 1 + } + , + a.prototype.andln = function(e) { + return this.words[0] & e + } + , + a.prototype.bincn = function(e) { + n("number" == typeof e); + var t = e % 26 + , i = (e - t) / 26 + , r = 1 << t; + if (this.length <= i) + return this._expand(i + 1), + this.words[i] |= r, + this; + for (var a = r, o = i; 0 !== a && o < this.length; o++) { + var s = 0 | this.words[o]; + s += a, + a = s >>> 26, + s &= 0x3ffffff, + this.words[o] = s + } + return 0 !== a && (this.words[o] = a, + this.length++), + this + } + , + a.prototype.isZero = function() { + return 1 === this.length && 0 === this.words[0] + } + , + a.prototype.cmpn = function(e) { + var t, i = e < 0; + if (0 !== this.negative && !i) + return -1; + if (0 === this.negative && i) + return 1; + if (this.strip(), + this.length > 1) + t = 1; + else { + i && (e = -e), + n(e <= 0x3ffffff, "Number is too big"); + var r = 0 | this.words[0]; + t = r === e ? 0 : r < e ? -1 : 1 + } + return 0 !== this.negative ? 0 | -t : t + } + , + a.prototype.cmp = function(e) { + if (0 !== this.negative && 0 === e.negative) + return -1; + if (0 === this.negative && 0 !== e.negative) + return 1; + var t = this.ucmp(e); + return 0 !== this.negative ? 0 | -t : t + } + , + a.prototype.ucmp = function(e) { + if (this.length > e.length) + return 1; + if (this.length < e.length) + return -1; + for (var t = 0, i = this.length - 1; i >= 0; i--) { + var n = 0 | this.words[i] + , r = 0 | e.words[i]; + if (n !== r) { + n < r ? t = -1 : n > r && (t = 1); + break + } + } + return t + } + , + a.prototype.gtn = function(e) { + return 1 === this.cmpn(e) + } + , + a.prototype.gt = function(e) { + return 1 === this.cmp(e) + } + , + a.prototype.gten = function(e) { + return this.cmpn(e) >= 0 + } + , + a.prototype.gte = function(e) { + return this.cmp(e) >= 0 + } + , + a.prototype.ltn = function(e) { + return -1 === this.cmpn(e) + } + , + a.prototype.lt = function(e) { + return -1 === this.cmp(e) + } + , + a.prototype.lten = function(e) { + return 0 >= this.cmpn(e) + } + , + a.prototype.lte = function(e) { + return 0 >= this.cmp(e) + } + , + a.prototype.eqn = function(e) { + return 0 === this.cmpn(e) + } + , + a.prototype.eq = function(e) { + return 0 === this.cmp(e) + } + , + a.red = function(e) { + return new M(e) + } + , + a.prototype.toRed = function(e) { + return n(!this.red, "Already a number in reduction context"), + n(0 === this.negative, "red works only with positives"), + e.convertTo(this)._forceRed(e) + } + , + a.prototype.fromRed = function() { + return n(this.red, "fromRed works only with numbers in reduction context"), + this.red.convertFrom(this) + } + , + a.prototype._forceRed = function(e) { + return this.red = e, + this + } + , + a.prototype.forceRed = function(e) { + return n(!this.red, "Already a number in reduction context"), + this._forceRed(e) + } + , + a.prototype.redAdd = function(e) { + return n(this.red, "redAdd works only with red numbers"), + this.red.add(this, e) + } + , + a.prototype.redIAdd = function(e) { + return n(this.red, "redIAdd works only with red numbers"), + this.red.iadd(this, e) + } + , + a.prototype.redSub = function(e) { + return n(this.red, "redSub works only with red numbers"), + this.red.sub(this, e) + } + , + a.prototype.redISub = function(e) { + return n(this.red, "redISub works only with red numbers"), + this.red.isub(this, e) + } + , + a.prototype.redShl = function(e) { + return n(this.red, "redShl works only with red numbers"), + this.red.shl(this, e) + } + , + a.prototype.redMul = function(e) { + return n(this.red, "redMul works only with red numbers"), + this.red._verify2(this, e), + this.red.mul(this, e) + } + , + a.prototype.redIMul = function(e) { + return n(this.red, "redMul works only with red numbers"), + this.red._verify2(this, e), + this.red.imul(this, e) + } + , + a.prototype.redSqr = function() { + return n(this.red, "redSqr works only with red numbers"), + this.red._verify1(this), + this.red.sqr(this) + } + , + a.prototype.redISqr = function() { + return n(this.red, "redISqr works only with red numbers"), + this.red._verify1(this), + this.red.isqr(this) + } + , + a.prototype.redSqrt = function() { + return n(this.red, "redSqrt works only with red numbers"), + this.red._verify1(this), + this.red.sqrt(this) + } + , + a.prototype.redInvm = function() { + return n(this.red, "redInvm works only with red numbers"), + this.red._verify1(this), + this.red.invm(this) + } + , + a.prototype.redNeg = function() { + return n(this.red, "redNeg works only with red numbers"), + this.red._verify1(this), + this.red.neg(this) + } + , + a.prototype.redPow = function(e) { + return n(this.red && !e.red, "redPow(normalNum)"), + this.red._verify1(this), + this.red.pow(this, e) + } + ; + var y = { + k256: null, + p224: null, + p192: null, + p25519: null + }; + function b(e, t) { + this.name = e, + this.p = new a(t,16), + this.n = this.p.bitLength(), + this.k = new a(1).iushln(this.n).isub(this.p), + this.tmp = this._tmp() + } + function I() { + b.call(this, "k256", "ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f") + } + function w() { + b.call(this, "p224", "ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001") + } + function x() { + b.call(this, "p192", "ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff") + } + function S() { + b.call(this, "25519", "7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed") + } + function M(e) { + if ("string" == typeof e) { + var t = a._prime(e); + this.m = t.p, + this.prime = t + } else + n(e.gtn(1), "modulus must be greater than 1"), + this.m = e, + this.prime = null + } + function C(e) { + M.call(this, e), + this.shift = this.m.bitLength(), + this.shift % 26 != 0 && (this.shift += 26 - this.shift % 26), + this.r = new a(1).iushln(this.shift), + this.r2 = this.imod(this.r.sqr()), + this.rinv = this.r._invmp(this.m), + this.minv = this.rinv.mul(this.r).isubn(1).div(this.m), + this.minv = this.minv.umod(this.r), + this.minv = this.r.sub(this.minv) + } + b.prototype._tmp = function() { + var e = new a(null); + return e.words = Array(Math.ceil(this.n / 13)), + e + } + , + b.prototype.ireduce = function(e) { + var t, i = e; + do + this.split(i, this.tmp), + t = (i = (i = this.imulK(i)).iadd(this.tmp)).bitLength(); + while (t > this.n); + var n = t < this.n ? -1 : i.ucmp(this.p); + return 0 === n ? (i.words[0] = 0, + i.length = 1) : n > 0 ? i.isub(this.p) : void 0 !== i.strip ? i.strip() : i._strip(), + i + } + , + b.prototype.split = function(e, t) { + e.iushrn(this.n, 0, t) + } + , + b.prototype.imulK = function(e) { + return e.imul(this.k) + } + , + r(I, b), + I.prototype.split = function(e, t) { + for (var i = 4194303, n = Math.min(e.length, 9), r = 0; r < n; r++) + t.words[r] = e.words[r]; + if (t.length = n, + e.length <= 9) { + e.words[0] = 0, + e.length = 1; + return + } + var a = e.words[9]; + for (r = 10, + t.words[t.length++] = a & i; r < e.length; r++) { + var o = 0 | e.words[r]; + e.words[r - 10] = (o & i) << 4 | a >>> 22, + a = o + } + a >>>= 22, + e.words[r - 10] = a, + 0 === a && e.length > 10 ? e.length -= 10 : e.length -= 9 + } + , + I.prototype.imulK = function(e) { + e.words[e.length] = 0, + e.words[e.length + 1] = 0, + e.length += 2; + for (var t = 0, i = 0; i < e.length; i++) { + var n = 0 | e.words[i]; + t += 977 * n, + e.words[i] = 0x3ffffff & t, + t = 64 * n + (t / 0x4000000 | 0) + } + return 0 === e.words[e.length - 1] && (e.length--, + 0 === e.words[e.length - 1] && e.length--), + e + } + , + r(w, b), + r(x, b), + r(S, b), + S.prototype.imulK = function(e) { + for (var t = 0, i = 0; i < e.length; i++) { + var n = (0 | e.words[i]) * 19 + t + , r = 0x3ffffff & n; + n >>>= 26, + e.words[i] = r, + t = n + } + return 0 !== t && (e.words[e.length++] = t), + e + } + , + a._prime = function(e) { + var t; + if (y[e]) + return y[e]; + if ("k256" === e) + t = new I; + else if ("p224" === e) + t = new w; + else if ("p192" === e) + t = new x; + else if ("p25519" === e) + t = new S; + else + throw Error("Unknown prime " + e); + return y[e] = t, + t + } + , + M.prototype._verify1 = function(e) { + n(0 === e.negative, "red works only with positives"), + n(e.red, "red works only with red numbers") + } + , + M.prototype._verify2 = function(e, t) { + n((e.negative | t.negative) == 0, "red works only with positives"), + n(e.red && e.red === t.red, "red works only with red numbers") + } + , + M.prototype.imod = function(e) { + return this.prime ? this.prime.ireduce(e)._forceRed(this) : e.umod(this.m)._forceRed(this) + } + , + M.prototype.neg = function(e) { + return e.isZero() ? e.clone() : this.m.sub(e)._forceRed(this) + } + , + M.prototype.add = function(e, t) { + this._verify2(e, t); + var i = e.add(t); + return i.cmp(this.m) >= 0 && i.isub(this.m), + i._forceRed(this) + } + , + M.prototype.iadd = function(e, t) { + this._verify2(e, t); + var i = e.iadd(t); + return i.cmp(this.m) >= 0 && i.isub(this.m), + i + } + , + M.prototype.sub = function(e, t) { + this._verify2(e, t); + var i = e.sub(t); + return 0 > i.cmpn(0) && i.iadd(this.m), + i._forceRed(this) + } + , + M.prototype.isub = function(e, t) { + this._verify2(e, t); + var i = e.isub(t); + return 0 > i.cmpn(0) && i.iadd(this.m), + i + } + , + M.prototype.shl = function(e, t) { + return this._verify1(e), + this.imod(e.ushln(t)) + } + , + M.prototype.imul = function(e, t) { + return this._verify2(e, t), + this.imod(e.imul(t)) + } + , + M.prototype.mul = function(e, t) { + return this._verify2(e, t), + this.imod(e.mul(t)) + } + , + M.prototype.isqr = function(e) { + return this.imul(e, e.clone()) + } + , + M.prototype.sqr = function(e) { + return this.mul(e, e) + } + , + M.prototype.sqrt = function(e) { + if (e.isZero()) + return e.clone(); + var t = this.m.andln(3); + if (n(t % 2 == 1), + 3 === t) { + var i = this.m.add(new a(1)).iushrn(2); + return this.pow(e, i) + } + for (var r = this.m.subn(1), o = 0; !r.isZero() && 0 === r.andln(1); ) + o++, + r.iushrn(1); + n(!r.isZero()); + var s = new a(1).toRed(this) + , l = s.redNeg() + , c = this.m.subn(1).iushrn(1) + , d = this.m.bitLength(); + for (d = new a(2 * d * d).toRed(this); 0 !== this.pow(d, c).cmp(l); ) + d.redIAdd(l); + for (var u = this.pow(d, r), f = this.pow(e, r.addn(1).iushrn(1)), h = this.pow(e, r), p = o; 0 !== h.cmp(s); ) { + for (var v = h, m = 0; 0 !== v.cmp(s); m++) + v = v.redSqr(); + n(m < p); + var g = this.pow(u, new a(1).iushln(p - m - 1)); + f = f.redMul(g), + u = g.redSqr(), + h = h.redMul(u), + p = m + } + return f + } + , + M.prototype.invm = function(e) { + var t = e._invmp(this.m); + return 0 !== t.negative ? (t.negative = 0, + this.imod(t).redNeg()) : this.imod(t) + } + , + M.prototype.pow = function(e, t) { + if (t.isZero()) + return new a(1).toRed(this); + if (0 === t.cmpn(1)) + return e.clone(); + var i = 4 + , n = Array(16); + n[0] = new a(1).toRed(this), + n[1] = e; + for (var r = 2; r < n.length; r++) + n[r] = this.mul(n[r - 1], e); + var o = n[0] + , s = 0 + , l = 0 + , c = t.bitLength() % 26; + for (0 === c && (c = 26), + r = t.length - 1; r >= 0; r--) { + for (var d = t.words[r], u = c - 1; u >= 0; u--) { + var f = d >> u & 1; + if (o !== n[0] && (o = this.sqr(o)), + 0 === f && 0 === s) { + l = 0; + continue + } + s <<= 1, + s |= f, + (++l === i || 0 === r && 0 === u) && (o = this.mul(o, n[s]), + l = 0, + s = 0) + } + c = 26 + } + return o + } + , + M.prototype.convertTo = function(e) { + var t = e.umod(this.m); + return t === e ? t.clone() : t + } + , + M.prototype.convertFrom = function(e) { + var t = e.clone(); + return t.red = null, + t + } + , + a.mont = function(e) { + return new C(e) + } + , + r(C, M), + C.prototype.convertTo = function(e) { + return this.imod(e.ushln(this.shift)) + } + , + C.prototype.convertFrom = function(e) { + var t = this.imod(e.mul(this.rinv)); + return t.red = null, + t + } + , + C.prototype.imul = function(e, t) { + if (e.isZero() || t.isZero()) + return e.words[0] = 0, + e.length = 1, + e; + var i = e.imul(t) + , n = i.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m) + , r = i.isub(n).iushrn(this.shift) + , a = r; + return r.cmp(this.m) >= 0 ? a = r.isub(this.m) : 0 > r.cmpn(0) && (a = r.iadd(this.m)), + a._forceRed(this) + } + , + C.prototype.mul = function(e, t) { + if (e.isZero() || t.isZero()) + return new a(0)._forceRed(this); + var i = e.mul(t) + , n = i.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m) + , r = i.isub(n).iushrn(this.shift) + , o = r; + return r.cmp(this.m) >= 0 ? o = r.isub(this.m) : 0 > r.cmpn(0) && (o = r.iadd(this.m)), + o._forceRed(this) + } + , + C.prototype.invm = function(e) { + return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this) + } + }(e = i.nmd(e), this) +} + +function T966465(t, e, r) { + "use strict"; + let n = r(814800) + , o = r(933977) + , i = "function" == typeof Symbol && "function" == typeof Symbol.for ? Symbol.for("nodejs.util.inspect.custom") : null; + e.Buffer = s, + e.SlowBuffer = function(t) { + return +t != t && (t = 0), + s.alloc(+t) + } + , + e.INSPECT_MAX_BYTES = 50; + e.kMaxLength = 0x7fffffff, + s.TYPED_ARRAY_SUPPORT = function() { + try { + let t = new Uint8Array(1) + , e = { + foo: function() { + return 42 + } + }; + return Object.setPrototypeOf(e, Uint8Array.prototype), + Object.setPrototypeOf(t, e), + 42 === t.foo() + } catch (t) { + return !1 + } + }(), + !s.TYPED_ARRAY_SUPPORT && "undefined" != typeof console && "function" == typeof console.error && console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."); + function a(t) { + if (t > 0x7fffffff) + throw RangeError('The value "' + t + '" is invalid for option "size"'); + let e = new Uint8Array(t); + return Object.setPrototypeOf(e, s.prototype), + e + } + function s(t, e, r) { + if ("number" == typeof t) { + if ("string" == typeof e) + throw TypeError('The "string" argument must be of type string. Received type number'); + return f(t) + } + return u(t, e, r) + } + function u(t, e, r) { + if ("string" == typeof t) + return function(t, e) { + if (("string" != typeof e || "" === e) && (e = "utf8"), + !s.isEncoding(e)) + throw TypeError("Unknown encoding: " + e); + let r = 0 | d(t, e) + , n = a(r) + , o = n.write(t, e); + return o !== r && (n = n.slice(0, o)), + n + }(t, e); + if (ArrayBuffer.isView(t)) + return function(t) { + if (U(t, Uint8Array)) { + let e = new Uint8Array(t); + return h(e.buffer, e.byteOffset, e.byteLength) + } + return l(t) + }(t); + if (null == t) + throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof t); + if (U(t, ArrayBuffer) || t && U(t.buffer, ArrayBuffer) || "undefined" != typeof SharedArrayBuffer && (U(t, SharedArrayBuffer) || t && U(t.buffer, SharedArrayBuffer))) + return h(t, e, r); + if ("number" == typeof t) + throw TypeError('The "value" argument must not be of type number. Received type number'); + let n = t.valueOf && t.valueOf(); + if (null != n && n !== t) + return s.from(n, e, r); + let o = function(t) { + if (s.isBuffer(t)) { + let e = 0 | p(t.length) + , r = a(e); + return 0 === r.length ? r : (t.copy(r, 0, 0, e), + r) + } + if (void 0 !== t.length) + return "number" != typeof t.length || B(t.length) ? a(0) : l(t); + if ("Buffer" === t.type && Array.isArray(t.data)) + return l(t.data) + }(t); + if (o) + return o; + if ("undefined" != typeof Symbol && null != Symbol.toPrimitive && "function" == typeof t[Symbol.toPrimitive]) + return s.from(t[Symbol.toPrimitive]("string"), e, r); + throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof t) + } + function c(t) { + if ("number" != typeof t) + throw TypeError('"size" argument must be of type number'); + if (t < 0) + throw RangeError('The value "' + t + '" is invalid for option "size"') + } + Object.defineProperty(s.prototype, "parent", { + enumerable: !0, + get: function() { + if (s.isBuffer(this)) + return this.buffer + } + }), + Object.defineProperty(s.prototype, "offset", { + enumerable: !0, + get: function() { + if (s.isBuffer(this)) + return this.byteOffset + } + }), + s.poolSize = 8192, + s.from = function(t, e, r) { + return u(t, e, r) + } + , + Object.setPrototypeOf(s.prototype, Uint8Array.prototype), + Object.setPrototypeOf(s, Uint8Array); + function f(t) { + return c(t), + a(t < 0 ? 0 : 0 | p(t)) + } + s.alloc = function(t, e, r) { + var n, o, i; + return n = t, + o = e, + i = r, + (c(n), + n <= 0) ? a(n) : void 0 !== o ? "string" == typeof i ? a(n).fill(o, i) : a(n).fill(o) : a(n) + } + , + s.allocUnsafe = function(t) { + return f(t) + } + , + s.allocUnsafeSlow = function(t) { + return f(t) + } + ; + function l(t) { + let e = t.length < 0 ? 0 : 0 | p(t.length) + , r = a(e); + for (let n = 0; n < e; n += 1) + r[n] = 255 & t[n]; + return r + } + function h(t, e, r) { + let n; + if (e < 0 || t.byteLength < e) + throw RangeError('"offset" is outside of buffer bounds'); + if (t.byteLength < e + (r || 0)) + throw RangeError('"length" is outside of buffer bounds'); + return Object.setPrototypeOf(n = void 0 === e && void 0 === r ? new Uint8Array(t) : void 0 === r ? new Uint8Array(t,e) : new Uint8Array(t,e,r), s.prototype), + n + } + function p(t) { + if (t >= 0x7fffffff) + throw RangeError("Attempt to allocate Buffer larger than maximum size: 0x" + "7fffffff bytes"); + return 0 | t + } + function d(t, e) { + if (s.isBuffer(t)) + return t.length; + if (ArrayBuffer.isView(t) || U(t, ArrayBuffer)) + return t.byteLength; + if ("string" != typeof t) + throw TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + typeof t); + let r = t.length + , n = arguments.length > 2 && !0 === arguments[2]; + if (!n && 0 === r) + return 0; + let o = !1; + for (; ; ) + switch (e) { + case "ascii": + case "latin1": + case "binary": + return r; + case "utf8": + case "utf-8": + return L(t).length; + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + return 2 * r; + case "hex": + return r >>> 1; + case "base64": + return M(t).length; + default: + if (o) + return n ? -1 : L(t).length; + e = ("" + e).toLowerCase(), + o = !0 + } + } + function v(t, e, r) { + let o = !1; + if ((void 0 === e || e < 0) && (e = 0), + e > this.length) + return ""; + if ((void 0 === r || r > this.length) && (r = this.length), + r <= 0 || (r >>>= 0) <= (e >>>= 0)) + return ""; + for (!t && (t = "utf8"); ; ) + switch (t) { + case "hex": + return function(t, e, r) { + let n = t.length; + (!e || e < 0) && (e = 0), + (!r || r < 0 || r > n) && (r = n); + let o = ""; + for (let n = e; n < r; ++n) + o += D[t[n]]; + return o + }(this, e, r); + case "utf8": + case "utf-8": + return b(this, e, r); + case "ascii": + return function(t, e, r) { + let n = ""; + r = Math.min(t.length, r); + for (let o = e; o < r; ++o) + n += String.fromCharCode(127 & t[o]); + return n + }(this, e, r); + case "latin1": + case "binary": + return function(t, e, r) { + let n = ""; + r = Math.min(t.length, r); + for (let o = e; o < r; ++o) + n += String.fromCharCode(t[o]); + return n + }(this, e, r); + case "base64": + return function(t, e, r) { + return 0 === e && r === t.length ? n.fromByteArray(t) : n.fromByteArray(t.slice(e, r)) + }(this, e, r); + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + return function(t, e, r) { + let n = t.slice(e, r) + , o = ""; + for (let t = 0; t < n.length - 1; t += 2) + o += String.fromCharCode(n[t] + 256 * n[t + 1]); + return o + }(this, e, r); + default: + if (o) + throw TypeError("Unknown encoding: " + t); + t = (t + "").toLowerCase(), + o = !0 + } + } + function g(t, e, r) { + let n = t[e]; + t[e] = t[r], + t[r] = n + } + function y(t, e, r, n, o) { + if (0 === t.length) + return -1; + if ("string" == typeof r ? (n = r, + r = 0) : r > 0x7fffffff ? r = 0x7fffffff : r < -0x80000000 && (r = -0x80000000), + function(t) { + return t != t + }(r = +r) && (r = o ? 0 : t.length - 1), + r < 0 && (r = t.length + r), + r >= t.length) { + if (o) + return -1; + r = t.length - 1 + } else if (r < 0) { + if (!o) + return -1; + r = 0 + } + if ("string" == typeof e && (e = s.from(e, n)), + s.isBuffer(e)) + return 0 === e.length ? -1 : m(t, e, r, n, o); + if ("number" == typeof e) { + if (e &= 255, + "function" == typeof Uint8Array.prototype.indexOf) + return o ? Uint8Array.prototype.indexOf.call(t, e, r) : Uint8Array.prototype.lastIndexOf.call(t, e, r); + return m(t, [e], r, n, o) + } + throw TypeError("val must be string, number or Buffer") + } + function m(t, e, r, n, o) { + let i, a = 1, s = t.length, u = e.length; + if (void 0 !== n && ("ucs2" === (n = String(n).toLowerCase()) || "ucs-2" === n || "utf16le" === n || "utf-16le" === n)) { + if (t.length < 2 || e.length < 2) + return -1; + a = 2, + s /= 2, + u /= 2, + r /= 2 + } + function c(t, e) { + return 1 === a ? t[e] : t.readUInt16BE(e * a) + } + if (o) { + let n = -1; + for (i = r; i < s; i++) + if (c(t, i) === c(e, -1 === n ? 0 : i - n)) { + if (-1 === n && (n = i), + i - n + 1 === u) + return n * a + } else + -1 !== n && (i -= i - n), + n = -1 + } else + for (r + u > s && (r = s - u), + i = r; i >= 0; i--) { + let r = !0; + for (let n = 0; n < u; n++) + if (c(t, i + n) !== c(e, n)) { + r = !1; + break + } + if (r) + return i + } + return -1 + } + s.isBuffer = function(t) { + return null != t && !0 === t._isBuffer && t !== s.prototype + } + , + s.compare = function(t, e) { + if (U(t, Uint8Array) && (t = s.from(t, t.offset, t.byteLength)), + U(e, Uint8Array) && (e = s.from(e, e.offset, e.byteLength)), + !s.isBuffer(t) || !s.isBuffer(e)) + throw TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array'); + if (t === e) + return 0; + let r = t.length + , n = e.length; + for (let o = 0, i = Math.min(r, n); o < i; ++o) + if (t[o] !== e[o]) { + r = t[o], + n = e[o]; + break + } + return r < n ? -1 : n < r ? 1 : 0 + } + , + s.isEncoding = function(t) { + switch (String(t).toLowerCase()) { + case "hex": + case "utf8": + case "utf-8": + case "ascii": + case "latin1": + case "binary": + case "base64": + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + return !0; + default: + return !1 + } + } + , + s.concat = function(t, e) { + let r; + if (!Array.isArray(t)) + throw TypeError('"list" argument must be an Array of Buffers'); + if (0 === t.length) + return s.alloc(0); + if (void 0 === e) + for (r = 0, + e = 0; r < t.length; ++r) + e += t[r].length; + let n = s.allocUnsafe(e) + , o = 0; + for (r = 0; r < t.length; ++r) { + let e = t[r]; + if (U(e, Uint8Array)) + o + e.length > n.length ? (!s.isBuffer(e) && (e = s.from(e)), + e.copy(n, o)) : Uint8Array.prototype.set.call(n, e, o); + else if (s.isBuffer(e)) + e.copy(n, o); + else + throw TypeError('"list" argument must be an Array of Buffers'); + o += e.length + } + return n + } + , + s.byteLength = d, + s.prototype._isBuffer = !0, + s.prototype.swap16 = function() { + let t = this.length; + if (t % 2 != 0) + throw RangeError("Buffer size must be a multiple of 16-bits"); + for (let e = 0; e < t; e += 2) + g(this, e, e + 1); + return this + } + , + s.prototype.swap32 = function() { + let t = this.length; + if (t % 4 != 0) + throw RangeError("Buffer size must be a multiple of 32-bits"); + for (let e = 0; e < t; e += 4) + g(this, e, e + 3), + g(this, e + 1, e + 2); + return this + } + , + s.prototype.swap64 = function() { + let t = this.length; + if (t % 8 != 0) + throw RangeError("Buffer size must be a multiple of 64-bits"); + for (let e = 0; e < t; e += 8) + g(this, e, e + 7), + g(this, e + 1, e + 6), + g(this, e + 2, e + 5), + g(this, e + 3, e + 4); + return this + } + , + s.prototype.toString = function() { + let t = this.length; + return 0 === t ? "" : 0 == arguments.length ? b(this, 0, t) : v.apply(this, arguments) + } + , + s.prototype.toLocaleString = s.prototype.toString, + s.prototype.equals = function(t) { + if (!s.isBuffer(t)) + throw TypeError("Argument must be a Buffer"); + return this === t || 0 === s.compare(this, t) + } + , + s.prototype.inspect = function() { + let t = "" + , r = e.INSPECT_MAX_BYTES; + return t = this.toString("hex", 0, r).replace(/(.{2})/g, "$1 ").trim(), + this.length > r && (t += " ... "), + "" + } + , + i && (s.prototype[i] = s.prototype.inspect), + s.prototype.compare = function(t, e, r, n, o) { + if (U(t, Uint8Array) && (t = s.from(t, t.offset, t.byteLength)), + !s.isBuffer(t)) + throw TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type ' + typeof t); + if (void 0 === e && (e = 0), + void 0 === r && (r = t ? t.length : 0), + void 0 === n && (n = 0), + void 0 === o && (o = this.length), + e < 0 || r > t.length || n < 0 || o > this.length) + throw RangeError("out of range index"); + if (n >= o && e >= r) + return 0; + if (n >= o) + return -1; + if (e >= r) + return 1; + if (e >>>= 0, + r >>>= 0, + n >>>= 0, + o >>>= 0, + this === t) + return 0; + let i = o - n + , a = r - e + , u = Math.min(i, a) + , c = this.slice(n, o) + , f = t.slice(e, r); + for (let t = 0; t < u; ++t) + if (c[t] !== f[t]) { + i = c[t], + a = f[t]; + break + } + return i < a ? -1 : a < i ? 1 : 0 + } + , + s.prototype.includes = function(t, e, r) { + return -1 !== this.indexOf(t, e, r) + } + , + s.prototype.indexOf = function(t, e, r) { + return y(this, t, e, r, !0) + } + , + s.prototype.lastIndexOf = function(t, e, r) { + return y(this, t, e, r, !1) + } + ; + s.prototype.write = function(t, e, r, n) { + var o, i, a, s, u, c, f, l, h, p, d, v, g, y, m, b; + if (void 0 === e) + n = "utf8", + r = this.length, + e = 0; + else if (void 0 === r && "string" == typeof e) + n = e, + r = this.length, + e = 0; + else if (isFinite(e)) + e >>>= 0, + isFinite(r) ? (r >>>= 0, + void 0 === n && (n = "utf8")) : (n = r, + r = void 0); + else + throw Error("Buffer.write(string, encoding, offset[, length]) is no longer supported"); + let w = this.length - e; + if ((void 0 === r || r > w) && (r = w), + t.length > 0 && (r < 0 || e < 0) || e > this.length) + throw RangeError("Attempt to write outside buffer bounds"); + !n && (n = "utf8"); + let x = !1; + for (; ; ) + switch (n) { + case "hex": + return function(t, e, r, n) { + let o; + r = Number(r) || 0; + let i = t.length - r; + n ? (n = Number(n)) > i && (n = i) : n = i; + let a = e.length; + for (n > a / 2 && (n = a / 2), + o = 0; o < n; ++o) { + let n = parseInt(e.substr(2 * o, 2), 16); + if (function(t) { + return t != t + }(n)) + break; + t[r + o] = n + } + return o + }(this, t, e, r); + case "utf8": + case "utf-8": + ;return o = this, + i = t, + a = e, + s = r, + N(L(i, o.length - a), o, a, s); + case "ascii": + case "latin1": + case "binary": + ;return u = this, + c = t, + f = e, + l = r, + N(function(t) { + let e = []; + for (let r = 0; r < t.length; ++r) + e.push(255 & t.charCodeAt(r)); + return e + }(c), u, f, l); + case "base64": + ;return h = this, + p = t, + d = e, + v = r, + N(M(p), h, d, v); + case "ucs2": + case "ucs-2": + case "utf16le": + case "utf-16le": + ;return g = this, + y = t, + m = e, + b = r, + N(function(t, e) { + let r, n, o; + let i = []; + for (let a = 0; a < t.length && !((e -= 2) < 0); ++a) + n = (r = t.charCodeAt(a)) >> 8, + o = r % 256, + i.push(o), + i.push(n); + return i + }(y, g.length - m), g, m, b); + default: + if (x) + throw TypeError("Unknown encoding: " + n); + n = ("" + n).toLowerCase(), + x = !0 + } + } + , + s.prototype.toJSON = function() { + return { + type: "Buffer", + data: Array.prototype.slice.call(this._arr || this, 0) + } + } + ; + function b(t, e, r) { + r = Math.min(t.length, r); + let n = [] + , o = e; + for (; o < r; ) { + let e = t[o] + , i = null + , a = e > 239 ? 4 : e > 223 ? 3 : e > 191 ? 2 : 1; + if (o + a <= r) { + let r, n, s, u; + switch (a) { + case 1: + e < 128 && (i = e); + break; + case 2: + (192 & (r = t[o + 1])) == 128 && (u = (31 & e) << 6 | 63 & r) > 127 && (i = u); + break; + case 3: + r = t[o + 1], + n = t[o + 2], + (192 & r) == 128 && (192 & n) == 128 && (u = (15 & e) << 12 | (63 & r) << 6 | 63 & n) > 2047 && (u < 55296 || u > 57343) && (i = u); + break; + case 4: + r = t[o + 1], + n = t[o + 2], + s = t[o + 3], + (192 & r) == 128 && (192 & n) == 128 && (192 & s) == 128 && (u = (15 & e) << 18 | (63 & r) << 12 | (63 & n) << 6 | 63 & s) > 65535 && u < 1114112 && (i = u) + } + } + null === i ? (i = 65533, + a = 1) : i > 65535 && (i -= 65536, + n.push(i >>> 10 & 1023 | 55296), + i = 56320 | 1023 & i), + n.push(i), + o += a + } + return function(t) { + let e = t.length; + if (e <= 4096) + return String.fromCharCode.apply(String, t); + let r = "" + , n = 0; + for (; n < e; ) + r += String.fromCharCode.apply(String, t.slice(n, n += 4096)); + return r + }(n) + } + function w(t, e, r) { + if (t % 1 != 0 || t < 0) + throw RangeError("offset is not uint"); + if (t + e > r) + throw RangeError("Trying to access beyond buffer length") + } + function x(t, e, r, n, o, i) { + if (!s.isBuffer(t)) + throw TypeError('"buffer" argument must be a Buffer instance'); + if (e > o || e < i) + throw RangeError('"value" argument is out of bounds'); + if (r + n > t.length) + throw RangeError("Index out of range") + } + function E(t, e, r, n, o) { + k(e, n, o, t, r, 7); + let i = Number(e & BigInt(0xffffffff)); + t[r++] = i, + i >>= 8, + t[r++] = i, + i >>= 8, + t[r++] = i, + i >>= 8, + t[r++] = i; + let a = Number(e >> BigInt(32) & BigInt(0xffffffff)); + return t[r++] = a, + a >>= 8, + t[r++] = a, + a >>= 8, + t[r++] = a, + a >>= 8, + t[r++] = a, + r + } + function S(t, e, r, n, o) { + k(e, n, o, t, r, 7); + let i = Number(e & BigInt(0xffffffff)); + t[r + 7] = i, + i >>= 8, + t[r + 6] = i, + i >>= 8, + t[r + 5] = i, + i >>= 8, + t[r + 4] = i; + let a = Number(e >> BigInt(32) & BigInt(0xffffffff)); + return t[r + 3] = a, + a >>= 8, + t[r + 2] = a, + a >>= 8, + t[r + 1] = a, + a >>= 8, + t[r] = a, + r + 8 + } + function A(t, e, r, n, o, i) { + if (r + n > t.length || r < 0) + throw RangeError("Index out of range") + } + function O(t, e, r, n, i) { + return e = +e, + r >>>= 0, + !i && A(t, e, r, 4, 34028234663852886e22, -34028234663852886e22), + o.write(t, e, r, n, 23, 4), + r + 4 + } + function T(t, e, r, n, i) { + return e = +e, + r >>>= 0, + !i && A(t, e, r, 8, 17976931348623157e292, -17976931348623157e292), + o.write(t, e, r, n, 52, 8), + r + 8 + } + s.prototype.slice = function(t, e) { + let r = this.length; + t = ~~t, + e = void 0 === e ? r : ~~e, + t < 0 ? (t += r) < 0 && (t = 0) : t > r && (t = r), + e < 0 ? (e += r) < 0 && (e = 0) : e > r && (e = r), + e < t && (e = t); + let n = this.subarray(t, e); + return Object.setPrototypeOf(n, s.prototype), + n + } + , + s.prototype.readUintLE = s.prototype.readUIntLE = function(t, e, r) { + t >>>= 0, + e >>>= 0, + !r && w(t, e, this.length); + let n = this[t] + , o = 1 + , i = 0; + for (; ++i < e && (o *= 256); ) + n += this[t + i] * o; + return n + } + , + s.prototype.readUintBE = s.prototype.readUIntBE = function(t, e, r) { + t >>>= 0, + e >>>= 0, + !r && w(t, e, this.length); + let n = this[t + --e] + , o = 1; + for (; e > 0 && (o *= 256); ) + n += this[t + --e] * o; + return n + } + , + s.prototype.readUint8 = s.prototype.readUInt8 = function(t, e) { + return t >>>= 0, + !e && w(t, 1, this.length), + this[t] + } + , + s.prototype.readUint16LE = s.prototype.readUInt16LE = function(t, e) { + return t >>>= 0, + !e && w(t, 2, this.length), + this[t] | this[t + 1] << 8 + } + , + s.prototype.readUint16BE = s.prototype.readUInt16BE = function(t, e) { + return t >>>= 0, + !e && w(t, 2, this.length), + this[t] << 8 | this[t + 1] + } + , + s.prototype.readUint32LE = s.prototype.readUInt32LE = function(t, e) { + return t >>>= 0, + !e && w(t, 4, this.length), + (this[t] | this[t + 1] << 8 | this[t + 2] << 16) + 0x1000000 * this[t + 3] + } + , + s.prototype.readUint32BE = s.prototype.readUInt32BE = function(t, e) { + return t >>>= 0, + !e && w(t, 4, this.length), + 0x1000000 * this[t] + (this[t + 1] << 16 | this[t + 2] << 8 | this[t + 3]) + } + , + s.prototype.readBigUInt64LE = F(function(t) { + C(t >>>= 0, "offset"); + let e = this[t] + , r = this[t + 7]; + (void 0 === e || void 0 === r) && P(t, this.length - 8); + let n = e + 256 * this[++t] + 65536 * this[++t] + 0x1000000 * this[++t] + , o = this[++t] + 256 * this[++t] + 65536 * this[++t] + 0x1000000 * r; + return BigInt(n) + (BigInt(o) << BigInt(32)) + }), + s.prototype.readBigUInt64BE = F(function(t) { + C(t >>>= 0, "offset"); + let e = this[t] + , r = this[t + 7]; + (void 0 === e || void 0 === r) && P(t, this.length - 8); + let n = 0x1000000 * e + 65536 * this[++t] + 256 * this[++t] + this[++t] + , o = 0x1000000 * this[++t] + 65536 * this[++t] + 256 * this[++t] + r; + return (BigInt(n) << BigInt(32)) + BigInt(o) + }), + s.prototype.readIntLE = function(t, e, r) { + t >>>= 0, + e >>>= 0, + !r && w(t, e, this.length); + let n = this[t] + , o = 1 + , i = 0; + for (; ++i < e && (o *= 256); ) + n += this[t + i] * o; + return n >= (o *= 128) && (n -= Math.pow(2, 8 * e)), + n + } + , + s.prototype.readIntBE = function(t, e, r) { + t >>>= 0, + e >>>= 0, + !r && w(t, e, this.length); + let n = e + , o = 1 + , i = this[t + --n]; + for (; n > 0 && (o *= 256); ) + i += this[t + --n] * o; + return i >= (o *= 128) && (i -= Math.pow(2, 8 * e)), + i + } + , + s.prototype.readInt8 = function(t, e) { + return (t >>>= 0, + !e && w(t, 1, this.length), + 128 & this[t]) ? -((255 - this[t] + 1) * 1) : this[t] + } + , + s.prototype.readInt16LE = function(t, e) { + t >>>= 0, + !e && w(t, 2, this.length); + let r = this[t] | this[t + 1] << 8; + return 32768 & r ? 0xffff0000 | r : r + } + , + s.prototype.readInt16BE = function(t, e) { + t >>>= 0, + !e && w(t, 2, this.length); + let r = this[t + 1] | this[t] << 8; + return 32768 & r ? 0xffff0000 | r : r + } + , + s.prototype.readInt32LE = function(t, e) { + return t >>>= 0, + !e && w(t, 4, this.length), + this[t] | this[t + 1] << 8 | this[t + 2] << 16 | this[t + 3] << 24 + } + , + s.prototype.readInt32BE = function(t, e) { + return t >>>= 0, + !e && w(t, 4, this.length), + this[t] << 24 | this[t + 1] << 16 | this[t + 2] << 8 | this[t + 3] + } + , + s.prototype.readBigInt64LE = F(function(t) { + C(t >>>= 0, "offset"); + let e = this[t] + , r = this[t + 7]; + return (void 0 === e || void 0 === r) && P(t, this.length - 8), + (BigInt(this[t + 4] + 256 * this[t + 5] + 65536 * this[t + 6] + (r << 24)) << BigInt(32)) + BigInt(e + 256 * this[++t] + 65536 * this[++t] + 0x1000000 * this[++t]) + }), + s.prototype.readBigInt64BE = F(function(t) { + C(t >>>= 0, "offset"); + let e = this[t] + , r = this[t + 7]; + return (void 0 === e || void 0 === r) && P(t, this.length - 8), + (BigInt((e << 24) + 65536 * this[++t] + 256 * this[++t] + this[++t]) << BigInt(32)) + BigInt(0x1000000 * this[++t] + 65536 * this[++t] + 256 * this[++t] + r) + }), + s.prototype.readFloatLE = function(t, e) { + return t >>>= 0, + !e && w(t, 4, this.length), + o.read(this, t, !0, 23, 4) + } + , + s.prototype.readFloatBE = function(t, e) { + return t >>>= 0, + !e && w(t, 4, this.length), + o.read(this, t, !1, 23, 4) + } + , + s.prototype.readDoubleLE = function(t, e) { + return t >>>= 0, + !e && w(t, 8, this.length), + o.read(this, t, !0, 52, 8) + } + , + s.prototype.readDoubleBE = function(t, e) { + return t >>>= 0, + !e && w(t, 8, this.length), + o.read(this, t, !1, 52, 8) + } + , + s.prototype.writeUintLE = s.prototype.writeUIntLE = function(t, e, r, n) { + if (t = +t, + e >>>= 0, + r >>>= 0, + !n) { + let n = Math.pow(2, 8 * r) - 1; + x(this, t, e, r, n, 0) + } + let o = 1 + , i = 0; + for (this[e] = 255 & t; ++i < r && (o *= 256); ) + this[e + i] = t / o & 255; + return e + r + } + , + s.prototype.writeUintBE = s.prototype.writeUIntBE = function(t, e, r, n) { + if (t = +t, + e >>>= 0, + r >>>= 0, + !n) { + let n = Math.pow(2, 8 * r) - 1; + x(this, t, e, r, n, 0) + } + let o = r - 1 + , i = 1; + for (this[e + o] = 255 & t; --o >= 0 && (i *= 256); ) + this[e + o] = t / i & 255; + return e + r + } + , + s.prototype.writeUint8 = s.prototype.writeUInt8 = function(t, e, r) { + return t = +t, + e >>>= 0, + !r && x(this, t, e, 1, 255, 0), + this[e] = 255 & t, + e + 1 + } + , + s.prototype.writeUint16LE = s.prototype.writeUInt16LE = function(t, e, r) { + return t = +t, + e >>>= 0, + !r && x(this, t, e, 2, 65535, 0), + this[e] = 255 & t, + this[e + 1] = t >>> 8, + e + 2 + } + , + s.prototype.writeUint16BE = s.prototype.writeUInt16BE = function(t, e, r) { + return t = +t, + e >>>= 0, + !r && x(this, t, e, 2, 65535, 0), + this[e] = t >>> 8, + this[e + 1] = 255 & t, + e + 2 + } + , + s.prototype.writeUint32LE = s.prototype.writeUInt32LE = function(t, e, r) { + return t = +t, + e >>>= 0, + !r && x(this, t, e, 4, 0xffffffff, 0), + this[e + 3] = t >>> 24, + this[e + 2] = t >>> 16, + this[e + 1] = t >>> 8, + this[e] = 255 & t, + e + 4 + } + , + s.prototype.writeUint32BE = s.prototype.writeUInt32BE = function(t, e, r) { + return t = +t, + e >>>= 0, + !r && x(this, t, e, 4, 0xffffffff, 0), + this[e] = t >>> 24, + this[e + 1] = t >>> 16, + this[e + 2] = t >>> 8, + this[e + 3] = 255 & t, + e + 4 + } + , + s.prototype.writeBigUInt64LE = F(function(t, e=0) { + return E(this, t, e, BigInt(0), BigInt("0xffffffffffffffff")) + }), + s.prototype.writeBigUInt64BE = F(function(t, e=0) { + return S(this, t, e, BigInt(0), BigInt("0xffffffffffffffff")) + }), + s.prototype.writeIntLE = function(t, e, r, n) { + if (t = +t, + e >>>= 0, + !n) { + let n = Math.pow(2, 8 * r - 1); + x(this, t, e, r, n - 1, -n) + } + let o = 0 + , i = 1 + , a = 0; + for (this[e] = 255 & t; ++o < r && (i *= 256); ) + t < 0 && 0 === a && 0 !== this[e + o - 1] && (a = 1), + this[e + o] = (t / i >> 0) - a & 255; + return e + r + } + , + s.prototype.writeIntBE = function(t, e, r, n) { + if (t = +t, + e >>>= 0, + !n) { + let n = Math.pow(2, 8 * r - 1); + x(this, t, e, r, n - 1, -n) + } + let o = r - 1 + , i = 1 + , a = 0; + for (this[e + o] = 255 & t; --o >= 0 && (i *= 256); ) + t < 0 && 0 === a && 0 !== this[e + o + 1] && (a = 1), + this[e + o] = (t / i >> 0) - a & 255; + return e + r + } + , + s.prototype.writeInt8 = function(t, e, r) { + return t = +t, + e >>>= 0, + !r && x(this, t, e, 1, 127, -128), + t < 0 && (t = 255 + t + 1), + this[e] = 255 & t, + e + 1 + } + , + s.prototype.writeInt16LE = function(t, e, r) { + return t = +t, + e >>>= 0, + !r && x(this, t, e, 2, 32767, -32768), + this[e] = 255 & t, + this[e + 1] = t >>> 8, + e + 2 + } + , + s.prototype.writeInt16BE = function(t, e, r) { + return t = +t, + e >>>= 0, + !r && x(this, t, e, 2, 32767, -32768), + this[e] = t >>> 8, + this[e + 1] = 255 & t, + e + 2 + } + , + s.prototype.writeInt32LE = function(t, e, r) { + return t = +t, + e >>>= 0, + !r && x(this, t, e, 4, 0x7fffffff, -0x80000000), + this[e] = 255 & t, + this[e + 1] = t >>> 8, + this[e + 2] = t >>> 16, + this[e + 3] = t >>> 24, + e + 4 + } + , + s.prototype.writeInt32BE = function(t, e, r) { + return t = +t, + e >>>= 0, + !r && x(this, t, e, 4, 0x7fffffff, -0x80000000), + t < 0 && (t = 0xffffffff + t + 1), + this[e] = t >>> 24, + this[e + 1] = t >>> 16, + this[e + 2] = t >>> 8, + this[e + 3] = 255 & t, + e + 4 + } + , + s.prototype.writeBigInt64LE = F(function(t, e=0) { + return E(this, t, e, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff")) + }), + s.prototype.writeBigInt64BE = F(function(t, e=0) { + return S(this, t, e, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff")) + }), + s.prototype.writeFloatLE = function(t, e, r) { + return O(this, t, e, !0, r) + } + , + s.prototype.writeFloatBE = function(t, e, r) { + return O(this, t, e, !1, r) + } + , + s.prototype.writeDoubleLE = function(t, e, r) { + return T(this, t, e, !0, r) + } + , + s.prototype.writeDoubleBE = function(t, e, r) { + return T(this, t, e, !1, r) + } + , + s.prototype.copy = function(t, e, r, n) { + if (!s.isBuffer(t)) + throw TypeError("argument should be a Buffer"); + if (!r && (r = 0), + !n && 0 !== n && (n = this.length), + e >= t.length && (e = t.length), + !e && (e = 0), + n > 0 && n < r && (n = r), + n === r || 0 === t.length || 0 === this.length) + return 0; + if (e < 0) + throw RangeError("targetStart out of bounds"); + if (r < 0 || r >= this.length) + throw RangeError("Index out of range"); + if (n < 0) + throw RangeError("sourceEnd out of bounds"); + n > this.length && (n = this.length), + t.length - e < n - r && (n = t.length - e + r); + let o = n - r; + return this === t && "function" == typeof Uint8Array.prototype.copyWithin ? this.copyWithin(e, r, n) : Uint8Array.prototype.set.call(t, this.subarray(r, n), e), + o + } + , + s.prototype.fill = function(t, e, r, n) { + let o; + if ("string" == typeof t) { + if ("string" == typeof e ? (n = e, + e = 0, + r = this.length) : "string" == typeof r && (n = r, + r = this.length), + void 0 !== n && "string" != typeof n) + throw TypeError("encoding must be a string"); + if ("string" == typeof n && !s.isEncoding(n)) + throw TypeError("Unknown encoding: " + n); + if (1 === t.length) { + let e = t.charCodeAt(0); + ("utf8" === n && e < 128 || "latin1" === n) && (t = e) + } + } else + "number" == typeof t ? t &= 255 : "boolean" == typeof t && (t = Number(t)); + if (e < 0 || this.length < e || this.length < r) + throw RangeError("Out of range index"); + if (r <= e) + return this; + if (e >>>= 0, + r = void 0 === r ? this.length : r >>> 0, + !t && (t = 0), + "number" == typeof t) + for (o = e; o < r; ++o) + this[o] = t; + else { + let i = s.isBuffer(t) ? t : s.from(t, n) + , a = i.length; + if (0 === a) + throw TypeError('The value "' + t + '" is invalid for argument "value"'); + for (o = 0; o < r - e; ++o) + this[o + e] = i[o % a] + } + return this + } + ; + let R = {}; + function _(t, e, r) { + R[t] = class extends r { + constructor() { + super(), + Object.defineProperty(this, "message", { + value: e.apply(this, arguments), + writable: !0, + configurable: !0 + }), + this.name = `${this.name} [${t}]`, + this.stack, + delete this.name + } + get code() { + return t + } + set code(t) { + Object.defineProperty(this, "code", { + configurable: !0, + enumerable: !0, + value: t, + writable: !0 + }) + } + toString() { + return `${this.name} [${t}]: ${this.message}` + } + } + } + function I(t) { + let e = "" + , r = t.length + , n = "-" === t[0] ? 1 : 0; + for (; r >= n + 4; r -= 3) + e = `_${t.slice(r - 3, r)}${e}`; + return `${t.slice(0, r)}${e}` + } + _("ERR_BUFFER_OUT_OF_BOUNDS", function(t) { + return t ? `${t} is outside of buffer bounds` : "Attempt to access memory outside buffer bounds" + }, RangeError), + _("ERR_INVALID_ARG_TYPE", function(t, e) { + return `The "${t}" argument must be of type number. Received type ${typeof e}` + }, TypeError), + _("ERR_OUT_OF_RANGE", function(t, e, r) { + let n = `The value of "${t}" is out of range.` + , o = r; + return Number.isInteger(r) && Math.abs(r) > 0x100000000 ? o = I(String(r)) : "bigint" == typeof r && (o = String(r), + (r > BigInt(2) ** BigInt(32) || r < -(BigInt(2) ** BigInt(32))) && (o = I(o)), + o += "n"), + n += ` It must be ${e}. Received ${o}` + }, RangeError); + function k(t, e, r, n, o, i) { + var a, s, u; + if (t > r || t < e) { + let n; + let o = "bigint" == typeof e ? "n" : ""; + throw n = i > 3 ? 0 === e || e === BigInt(0) ? `>= 0${o} and < 2${o} ** ${(i + 1) * 8}${o}` : `>= -(2${o} ** ${(i + 1) * 8 - 1}${o}) and < 2 ** ${(i + 1) * 8 - 1}${o}` : `>= ${e}${o} and <= ${r}${o}`, + new R.ERR_OUT_OF_RANGE("value",n,t) + } + a = n, + s = o, + u = i, + C(s, "offset"), + (void 0 === a[s] || void 0 === a[s + u]) && P(s, a.length - (u + 1)) + } + function C(t, e) { + if ("number" != typeof t) + throw new R.ERR_INVALID_ARG_TYPE(e,"number",t) + } + function P(t, e, r) { + if (Math.floor(t) !== t) + throw C(t, r), + new R.ERR_OUT_OF_RANGE(r || "offset","an integer",t); + if (e < 0) + throw new R.ERR_BUFFER_OUT_OF_BOUNDS; + throw new R.ERR_OUT_OF_RANGE(r || "offset",`>= ${r ? 1 : 0} and <= ${e}`,t) + } + let j = /[^+/0-9A-Za-z-_]/g; + function L(t, e) { + let r; + e = e || 1 / 0; + let n = t.length + , o = null + , i = []; + for (let a = 0; a < n; ++a) { + if ((r = t.charCodeAt(a)) > 55295 && r < 57344) { + if (!o) { + if (r > 56319) { + (e -= 3) > -1 && i.push(239, 191, 189); + continue + } + if (a + 1 === n) { + (e -= 3) > -1 && i.push(239, 191, 189); + continue + } + o = r; + continue + } + if (r < 56320) { + (e -= 3) > -1 && i.push(239, 191, 189), + o = r; + continue + } + r = (o - 55296 << 10 | r - 56320) + 65536 + } else + o && (e -= 3) > -1 && i.push(239, 191, 189); + if (o = null, + r < 128) { + if ((e -= 1) < 0) + break; + i.push(r) + } else if (r < 2048) { + if ((e -= 2) < 0) + break; + i.push(r >> 6 | 192, 63 & r | 128) + } else if (r < 65536) { + if ((e -= 3) < 0) + break; + i.push(r >> 12 | 224, r >> 6 & 63 | 128, 63 & r | 128) + } else if (r < 1114112) { + if ((e -= 4) < 0) + break; + i.push(r >> 18 | 240, r >> 12 & 63 | 128, r >> 6 & 63 | 128, 63 & r | 128) + } else + throw Error("Invalid code point") + } + return i + } + function M(t) { + return n.toByteArray(function(t) { + if ((t = (t = t.split("=")[0]).trim().replace(j, "")).length < 2) + return ""; + for (; t.length % 4 != 0; ) + t += "="; + return t + }(t)) + } + function N(t, e, r, n) { + let o; + for (o = 0; o < n && !(o + r >= e.length) && !(o >= t.length); ++o) + e[o + r] = t[o]; + return o + } + function U(t, e) { + return t instanceof e || null != t && null != t.constructor && null != t.constructor.name && t.constructor.name === e.name + } + function B(t) { + return t != t + } + let D = function() { + let t = "0123456789abcdef" + , e = Array(256); + for (let r = 0; r < 16; ++r) { + let n = 16 * r; + for (let o = 0; o < 16; ++o) + e[n + o] = t[r] + t[o] + } + return e + }(); + function F(t) { + return "undefined" == typeof BigInt ? z : t + } + function z() { + throw Error("BigInt not supported") + } +} +function T140860(e, t, i) { + var n = i(966465) + , r = n.Buffer; + function a(e, t) { + for (var i in e) + t[i] = e[i] + } + function o(e, t, i) { + return r(e, t, i) + } + r.from && r.alloc && r.allocUnsafe && r.allocUnsafeSlow ? e.exports = n : (a(n, t), + t.Buffer = o), + o.prototype = Object.create(r.prototype), + a(r, o), + o.from = function(e, t, i) { + if ("number" == typeof e) + throw TypeError("Argument must not be a number"); + return r(e, t, i) + } + , + o.alloc = function(e, t, i) { + if ("number" != typeof e) + throw TypeError("Argument must be a number"); + var n = r(e); + return void 0 !== t ? "string" == typeof i ? n.fill(t, i) : n.fill(t) : n.fill(0), + n + } + , + o.allocUnsafe = function(e) { + if ("number" != typeof e) + throw TypeError("Argument must be a number"); + return r(e) + } + , + o.allocUnsafeSlow = function(e) { + if ("number" != typeof e) + throw TypeError("Argument must be a number"); + return n.SlowBuffer(e) + } +} +function T203960(e, t, i) { + "use strict"; + var n = T499845(e), + r = 65536, + a = 0xffffffff; + function o() { + throw Error( + "Secure random number generation is not supported by this browser.\nUse Chrome, Firefox or Internet Explorer 11" + ); + } + var s = i(T140860).Buffer, + l = window.crypto || window.msCrypto; + function c(e, t) { + if (e > a) throw RangeError("requested too many random bytes"); + var i = s.allocUnsafe(e); + if (e > 0) { + if (e > r) + for (var o = 0; o < e; o += r) l.getRandomValues(i.slice(o, o + r)); + else l.getRandomValues(i); + } + return "function" == typeof t + ? n.nextTick(function () { + t(null, i); + }) + : i; + } + l && l.getRandomValues ? (e.exports = c) : (e.exports = o); +} +function TEST0(e, t, i) { + var n = T203960(e, t, i); + (e.exports = _), (_.simpleSieve = m), (_.fermatTest = g); + var r = i(984826), + a = new r(24), + o = new (i(350724))(), + s = new r(1), + l = new r(2), + c = new r(5); + new r(16), new r(8); + var d = new r(10), + u = new r(3); + new r(7); + var f = new r(11), + h = new r(4); + new r(12); + var p = null; + function v() { + if (null !== p) return p; + var e = 1048576, + t = []; + t[0] = 2; + for (var i = 1, n = 3; n < e; n += 2) { + for ( + var r = Math.ceil(Math.sqrt(n)), a = 0; + a < i && t[a] <= r && n % t[a] != 0; + a++ + ); + (i === a || !(t[a] <= r)) && (t[i++] = n); + } + return (p = t), t; + } + function m(e) { + for (var t = v(), i = 0; i < t.length; i++) + if (0 === e.modn(t[i])) { + if (0 !== e.cmpn(t[i])) return !1; + break; + } + return !0; + } + function g(e) { + var t = r.mont(e); + return 0 === l.toRed(t).redPow(e.subn(1)).fromRed().cmpn(1); + } + function _(e, t) { + var i, p; + if (e < 16) + return 2 === t || 5 === t ? new r([140, 123]) : new r([140, 39]); + for (t = new r(t); ; ) { + for (i = new r(n(Math.ceil(e / 8))); i.bitLength() > e; ) i.ishrn(1); + if ((i.isEven() && i.iadd(s), !i.testn(1) && i.iadd(l), t.cmp(l))) { + if (!t.cmp(c)) for (; i.mod(d).cmp(u); ) i.iadd(h); + } else for (; i.mod(a).cmp(f); ) i.iadd(h); + if ( + m((p = i.shrn(1))) && + m(i) && + g(p) && + g(i) && + o.test(p) && + o.test(i) + ) + return i; + } + } +} + +function TEST(e, t, r) { + "use strict"; + var n = "object" == typeof Reflect ? Reflect : null + , i = n && "function" == typeof n.apply ? n.apply : function(e, t, r) { + return Function.prototype.apply.call(e, t, r) + } + , o = n && "function" == typeof n.ownKeys ? n.ownKeys : Object.getOwnPropertySymbols ? function(e) { + return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e)) + } + : function(e) { + return Object.getOwnPropertyNames(e) + } + , s = Number.isNaN || function(e) { + return e != e + } + ; + function a() { + a.init.call(this) + } + e.exports = a, + e.exports.once = function(e, t) { + return new Promise(function(r, n) { + var i, o, s; + function a(r) { + e.removeListener(t, c), + n(r) + } + function c() { + "function" == typeof e.removeListener && e.removeListener("error", a), + r([].slice.call(arguments)) + } + y(e, t, c, { + once: !0 + }), + "error" !== t && (i = e, + o = a, + s = { + once: !0 + }, + "function" == typeof i.on && y(i, "error", o, s)) + } + ) + } + , + (a.EventEmitter = a).prototype._events = void 0, + a.prototype._eventsCount = 0, + a.prototype._maxListeners = void 0; + var c = 10; + function u(e) { + if ("function" != typeof e) + throw TypeError('The "listener" argument must be of type Function. Received type ' + typeof e) + } + function l(e) { + return void 0 === e._maxListeners ? a.defaultMaxListeners : e._maxListeners + } + function f(e, t, r, n) { + var i, o, s; + return u(r), + void 0 === (i = e._events) ? (i = e._events = Object.create(null), + e._eventsCount = 0) : (void 0 !== i.newListener && (e.emit("newListener", t, r.listener || r), + i = e._events), + o = i[t]), + void 0 === o ? (o = i[t] = r, + ++e._eventsCount) : ("function" == typeof o ? o = i[t] = n ? [r, o] : [o, r] : n ? o.unshift(r) : o.push(r), + 0 < (i = l(e)) && o.length > i && !o.warned && (o.warned = !0, + (n = Error("Possible EventEmitter memory leak detected. " + o.length + " " + String(t) + " listeners added. Use emitter.setMaxListeners() to increase limit")).name = "MaxListenersExceededWarning", + n.emitter = e, + n.type = t, + n.count = o.length, + s = n, + console && console.warn && console.warn(s))), + e + } + function p(e, t, r) { + return (t = (function() { + if (!this.fired) + return this.target.removeListener(this.type, this.wrapFn), + this.fired = !0, + 0 == arguments.length ? this.listener.call(this.target) : this.listener.apply(this.target, arguments) + } + ).bind(e = { + fired: !1, + wrapFn: void 0, + target: e, + type: t, + listener: r + })).listener = r, + e.wrapFn = t + } + function h(e, t, r) { + var e = e._events; + return void 0 === e || void 0 === (e = e[t]) ? [] : "function" == typeof e ? r ? [e.listener || e] : [e] : r ? function(e) { + for (var t = Array(e.length), r = 0; r < t.length; ++r) + t[r] = e[r].listener || e[r]; + return t + }(e) : g(e, e.length) + } + function d(e) { + var t = this._events; + if (void 0 !== t) { + if ("function" == typeof (t = t[e])) + return 1; + if (void 0 !== t) + return t.length + } + return 0 + } + function g(e, t) { + for (var r = Array(t), n = 0; n < t; ++n) + r[n] = e[n]; + return r + } + function y(e, t, r, n) { + if ("function" == typeof e.on) + n.once ? e.once(t, r) : e.on(t, r); + else { + if ("function" != typeof e.addEventListener) + throw TypeError('The "emitter" argument must be of type EventEmitter. Received type ' + typeof e); + e.addEventListener(t, function i(o) { + n.once && e.removeEventListener(t, i), + r(o) + }) + } + } + Object.defineProperty(a, "defaultMaxListeners", { + enumerable: !0, + get: function() { + return c + }, + set: function(e) { + if ("number" != typeof e || e < 0 || s(e)) + throw RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received ' + e + "."); + c = e + } + }), + a.init = function() { + void 0 !== this._events && this._events !== Object.getPrototypeOf(this)._events || (this._events = Object.create(null), + this._eventsCount = 0), + this._maxListeners = this._maxListeners || void 0 + } + , + a.prototype.setMaxListeners = function(e) { + if ("number" != typeof e || e < 0 || s(e)) + throw RangeError('The value of "n" is out of range. It must be a non-negative number. Received ' + e + "."); + return this._maxListeners = e, + this + } + , + a.prototype.getMaxListeners = function() { + return l(this) + } + , + a.prototype.emit = function(e) { + for (var t = [], r = 1; r < arguments.length; r++) + t.push(arguments[r]); + var n = "error" === e + , o = this._events; + if (void 0 !== o) + n = n && void 0 === o.error; + else if (!n) + return !1; + if (n) { + if ((s = 0 < t.length ? t[0] : s)instanceof Error) + throw s; + throw (n = Error("Unhandled error." + (s ? " (" + s.message + ")" : ""))).context = s, + n + } + var s = o[e]; + if (void 0 === s) + return !1; + if ("function" == typeof s) + i(s, this, t); + else + for (var a = s.length, c = g(s, a), r = 0; r < a; ++r) + i(c[r], this, t); + return !0 + } + , + a.prototype.on = a.prototype.addListener = function(e, t) { + return f(this, e, t, !1) + } + , + a.prototype.prependListener = function(e, t) { + return f(this, e, t, !0) + } + , + a.prototype.once = function(e, t) { + return u(t), + this.on(e, p(this, e, t)), + this + } + , + a.prototype.prependOnceListener = function(e, t) { + return u(t), + this.prependListener(e, p(this, e, t)), + this + } + , + a.prototype.off = a.prototype.removeListener = function(e, t) { + var r, n, i, o, s; + if (u(t), + void 0 !== (n = this._events) && void 0 !== (r = n[e])) { + if (r === t || r.listener === t) + 0 == --this._eventsCount ? this._events = Object.create(null) : (delete n[e], + n.removeListener && this.emit("removeListener", e, r.listener || t)); + else if ("function" != typeof r) { + for (i = -1, + o = r.length - 1; 0 <= o; o--) + if (r[o] === t || r[o].listener === t) { + s = r[o].listener, + i = o; + break + } + if (i < 0) + return this; + 0 === i ? r.shift() : function(e, t) { + for (; t + 1 < e.length; t++) + e[t] = e[t + 1]; + e.pop() + }(r, i), + 1 === r.length && (n[e] = r[0]), + void 0 !== n.removeListener && this.emit("removeListener", e, s || t) + } + } + return this + } + , + a.prototype.removeAllListeners = function(e) { + var t, r = this._events; + if (void 0 !== r) { + if (void 0 === r.removeListener) + 0 == arguments.length ? (this._events = Object.create(null), + this._eventsCount = 0) : void 0 !== r[e] && (0 == --this._eventsCount ? this._events = Object.create(null) : delete r[e]); + else if (0 == arguments.length) { + for (var n, i = Object.keys(r), o = 0; o < i.length; ++o) + "removeListener" !== (n = i[o]) && this.removeAllListeners(n); + this.removeAllListeners("removeListener"), + this._events = Object.create(null), + this._eventsCount = 0 + } else if ("function" == typeof (t = r[e])) + this.removeListener(e, t); + else if (void 0 !== t) + for (o = t.length - 1; 0 <= o; o--) + this.removeListener(e, t[o]) + } + return this + } + , + a.prototype.listeners = function(e) { + return h(this, e, !0) + } + , + a.prototype.rawListeners = function(e) { + return h(this, e, !1) + } + , + a.listenerCount = function(e, t) { + return "function" == typeof e.listenerCount ? e.listenerCount(t) : d.call(e, t) + } + , + a.prototype.listenerCount = d, + a.prototype.eventNames = function() { + return 0 < this._eventsCount ? o(this._events) : [] + } +} +function TEST2(e, t, r) { + (function(t) { + e.exports = function(e) { + "use strict"; + var r, n = (r = e) && "object" == typeof r && "default"in r ? r : { + default: r + }; + function i(e, t) { + for (var r, n, i = 0; i < t.length; i++) { + var o = t[i]; + o.enumerable = o.enumerable || !1, + o.configurable = !0, + "value"in o && (o.writable = !0), + Object.defineProperty(e, (r = o.key, + n = void 0, + "symbol" == typeof (n = function(e, t) { + if ("object" != typeof e || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 !== r) { + var n = r.call(e, t || "default"); + if ("object" != typeof n) + return n; + throw TypeError("@@toPrimitive must return a primitive value.") + } + return ("string" === t ? String : Number)(e) + }(r, "string")) ? n : String(n)), o) + } + } + var o = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof window ? window : void 0 !== t ? t : "undefined" != typeof self ? self : {}; + function s(e, t, r) { + return e(r = { + path: t, + exports: {}, + require: function(e, t) { + return function() { + throw Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs") + }(null == t && r.path) + } + }, r.exports), + r.exports + } + var a = s(function(e, t) { + var r; + e.exports = r || function(e, t) { + if ("undefined" != typeof window && window.crypto && (r = window.crypto), + "undefined" != typeof self && self.crypto && (r = self.crypto), + "undefined" != typeof globalThis && globalThis.crypto && (r = globalThis.crypto), + !r && "undefined" != typeof window && window.msCrypto && (r = window.msCrypto), + !r && void 0 !== o && o.crypto && (r = o.crypto), + !r) + try { + r = n.default + } catch (e) {} + var r, i = function() { + if (r) { + if ("function" == typeof r.getRandomValues) + try { + return r.getRandomValues(new Uint32Array(1))[0] + } catch (e) {} + if ("function" == typeof r.randomBytes) + try { + return r.randomBytes(4).readInt32LE() + } catch (e) {} + } + throw Error("Native crypto module could not be used to get secure random number.") + }, s = Object.create || function() { + function e() {} + return function(t) { + var r; + return e.prototype = t, + r = new e, + e.prototype = null, + r + } + }(), a = {}, c = a.lib = {}, u = c.Base = { + extend: function(e) { + var t = s(this); + return e && t.mixIn(e), + t.hasOwnProperty("init") && this.init !== t.init || (t.init = function() { + t.$super.init.apply(this, arguments) + } + ), + t.init.prototype = t, + t.$super = this, + t + }, + create: function() { + var e = this.extend(); + return e.init.apply(e, arguments), + e + }, + init: function() {}, + mixIn: function(e) { + for (var t in e) + e.hasOwnProperty(t) && (this[t] = e[t]); + e.hasOwnProperty("toString") && (this.toString = e.toString) + }, + clone: function() { + return this.init.prototype.extend(this) + } + }, l = c.WordArray = u.extend({ + init: function(e, t) { + e = this.words = e || [], + this.sigBytes = null != t ? t : 4 * e.length + }, + toString: function(e) { + return (e || p).stringify(this) + }, + concat: function(e) { + var t = this.words + , r = e.words + , n = this.sigBytes + , i = e.sigBytes; + if (this.clamp(), + n % 4) + for (var o = 0; o < i; o++) { + var s = r[o >>> 2] >>> 24 - o % 4 * 8 & 255; + t[n + o >>> 2] |= s << 24 - (n + o) % 4 * 8 + } + else + for (var a = 0; a < i; a += 4) + t[n + a >>> 2] = r[a >>> 2]; + return this.sigBytes += i, + this + }, + clamp: function() { + var t = this.words + , r = this.sigBytes; + t[r >>> 2] &= 0xffffffff << 32 - r % 4 * 8, + t.length = e.ceil(r / 4) + }, + clone: function() { + var e = u.clone.call(this); + return e.words = this.words.slice(0), + e + }, + random: function(e) { + for (var t = [], r = 0; r < e; r += 4) + t.push(i()); + return new l.init(t,e) + } + }), f = a.enc = {}, p = f.Hex = { + stringify: function(e) { + for (var t = e.words, r = e.sigBytes, n = [], i = 0; i < r; i++) { + var o = t[i >>> 2] >>> 24 - i % 4 * 8 & 255; + n.push((o >>> 4).toString(16)), + n.push((15 & o).toString(16)) + } + return n.join("") + }, + parse: function(e) { + for (var t = e.length, r = [], n = 0; n < t; n += 2) + r[n >>> 3] |= parseInt(e.substr(n, 2), 16) << 24 - n % 8 * 4; + return new l.init(r,t / 2) + } + }, h = f.Latin1 = { + stringify: function(e) { + for (var t = e.words, r = e.sigBytes, n = [], i = 0; i < r; i++) { + var o = t[i >>> 2] >>> 24 - i % 4 * 8 & 255; + n.push(String.fromCharCode(o)) + } + return n.join("") + }, + parse: function(e) { + for (var t = e.length, r = [], n = 0; n < t; n++) + r[n >>> 2] |= (255 & e.charCodeAt(n)) << 24 - n % 4 * 8; + return new l.init(r,t) + } + }, d = f.Utf8 = { + stringify: function(e) { + try { + return decodeURIComponent(escape(h.stringify(e))) + } catch (e) { + throw Error("Malformed UTF-8 data") + } + }, + parse: function(e) { + return h.parse(unescape(encodeURIComponent(e))) + } + }, g = c.BufferedBlockAlgorithm = u.extend({ + reset: function() { + this._data = new l.init, + this._nDataBytes = 0 + }, + _append: function(e) { + "string" == typeof e && (e = d.parse(e)), + this._data.concat(e), + this._nDataBytes += e.sigBytes + }, + _process: function(t) { + var r, n = this._data, i = n.words, o = n.sigBytes, s = this.blockSize, a = o / (4 * s), c = (a = t ? e.ceil(a) : e.max((0 | a) - this._minBufferSize, 0)) * s, u = e.min(4 * c, o); + if (c) { + for (var f = 0; f < c; f += s) + this._doProcessBlock(i, f); + r = i.splice(0, c), + n.sigBytes -= u + } + return new l.init(r,u) + }, + clone: function() { + var e = u.clone.call(this); + return e._data = this._data.clone(), + e + }, + _minBufferSize: 0 + }); + c.Hasher = g.extend({ + cfg: u.extend(), + init: function(e) { + this.cfg = this.cfg.extend(e), + this.reset() + }, + reset: function() { + g.reset.call(this), + this._doReset() + }, + update: function(e) { + return this._append(e), + this._process(), + this + }, + finalize: function(e) { + return e && this._append(e), + this._doFinalize() + }, + blockSize: 16, + _createHelper: function(e) { + return function(t, r) { + return new e.init(r).finalize(t) + } + }, + _createHmacHelper: function(e) { + return function(t, r) { + return new y.HMAC.init(e,r).finalize(t) + } + } + }); + var y = a.algo = {}; + return a + }(Math) + }) + , c = s(function(e, t) { + var r, n, i, o, s, c, u, l, f; + e.exports = (r = Math, + i = (n = a.lib).WordArray, + o = n.Hasher, + s = a.algo, + c = [], + u = [], + function() { + function e(e) { + return 0x100000000 * (e - (0 | e)) | 0 + } + for (var t = 2, n = 0; n < 64; ) + (function(e) { + for (var t = r.sqrt(e), n = 2; n <= t; n++) + if (!(e % n)) + return !1; + return !0 + } + )(t) && (n < 8 && (c[n] = e(r.pow(t, .5))), + u[n] = e(r.pow(t, 1 / 3)), + n++), + t++ + }(), + l = [], + f = s.SHA256 = o.extend({ + _doReset: function() { + this._hash = new i.init(c.slice(0)) + }, + _doProcessBlock: function(e, t) { + for (var r = this._hash.words, n = r[0], i = r[1], o = r[2], s = r[3], a = r[4], c = r[5], f = r[6], p = r[7], h = 0; h < 64; h++) { + if (h < 16) + l[h] = 0 | e[t + h]; + else { + var d = l[h - 15] + , g = (d << 25 | d >>> 7) ^ (d << 14 | d >>> 18) ^ d >>> 3 + , y = l[h - 2] + , m = (y << 15 | y >>> 17) ^ (y << 13 | y >>> 19) ^ y >>> 10; + l[h] = g + l[h - 7] + m + l[h - 16] + } + var v = n & i ^ n & o ^ i & o + , b = (n << 30 | n >>> 2) ^ (n << 19 | n >>> 13) ^ (n << 10 | n >>> 22) + , _ = p + ((a << 26 | a >>> 6) ^ (a << 21 | a >>> 11) ^ (a << 7 | a >>> 25)) + (a & c ^ ~a & f) + u[h] + l[h]; + p = f, + f = c, + c = a, + a = s + _ | 0, + s = o, + o = i, + i = n, + n = _ + (b + v) | 0 + } + r[0] = r[0] + n | 0, + r[1] = r[1] + i | 0, + r[2] = r[2] + o | 0, + r[3] = r[3] + s | 0, + r[4] = r[4] + a | 0, + r[5] = r[5] + c | 0, + r[6] = r[6] + f | 0, + r[7] = r[7] + p | 0 + }, + _doFinalize: function() { + var e = this._data + , t = e.words + , n = 8 * this._nDataBytes + , i = 8 * e.sigBytes; + return t[i >>> 5] |= 128 << 24 - i % 32, + t[14 + (i + 64 >>> 9 << 4)] = r.floor(n / 0x100000000), + t[15 + (i + 64 >>> 9 << 4)] = n, + e.sigBytes = 4 * t.length, + this._process(), + this._hash + }, + clone: function() { + var e = o.clone.call(this); + return e._hash = this._hash.clone(), + e + } + }), + a.SHA256 = o._createHelper(f), + a.HmacSHA256 = o._createHmacHelper(f), + a.SHA256) + }) + , u = (s(function(e, t) { + var r, n; + e.exports = (r = a.lib.Base, + n = a.enc.Utf8, + void (a.algo.HMAC = r.extend({ + init: function(e, t) { + e = this._hasher = new e.init, + "string" == typeof t && (t = n.parse(t)); + var r = e.blockSize + , i = 4 * r; + t.sigBytes > i && (t = e.finalize(t)), + t.clamp(); + for (var o = this._oKey = t.clone(), s = this._iKey = t.clone(), a = o.words, c = s.words, u = 0; u < r; u++) + a[u] ^= 0x5c5c5c5c, + c[u] ^= 0x36363636; + o.sigBytes = s.sigBytes = i, + this.reset() + }, + reset: function() { + var e = this._hasher; + e.reset(), + e.update(this._iKey) + }, + update: function(e) { + return this._hasher.update(e), + this + }, + finalize: function(e) { + var t = this._hasher + , r = t.finalize(e); + return t.reset(), + t.finalize(this._oKey.clone().concat(r)) + } + }))) + }), + s(function(e, t) { + e.exports = a.HmacSHA256 + })) + , l = { + hmac: function(e, t) { + return u(t, e) + }, + sha256: function(e) { + return c(e) + } + } + , f = ["authorization", "content-type", "content-length", "user-agent", "presigned-expires", "expect", "x-amzn-trace-id"] + , p = function(e) { + try { + return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g, escape).replace(/[*]/g, function(e) { + return "%".concat(e.charCodeAt(0).toString(16).toUpperCase()) + }) + } catch (e) { + return "" + } + } + , h = function(e) { + return Object.keys(e).sort().map(function(t) { + var r = e[t]; + if (null != r) { + var n = p(t); + if (n) + return Array.isArray(r) ? "".concat(n, "=").concat(r.map(p).sort().join("&".concat(n, "="))) : "".concat(n, "=").concat(p(r)) + } + }).filter(function(e) { + return e + }).join("&") + }; + return function() { + var e, t; + function r(e, t, n) { + !function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, r), + this.request = e, + this.request.headers = e.headers || {}, + this.serviceName = t, + n = n || {}, + this.signatureCache = "boolean" != typeof n.signatureCache || n.signatureCache, + this.operation = n.operation, + this.signatureVersion = n.signatureVersion, + this.constant = n.isVolcengine ? { + algorithm: "HMAC-SHA256", + v4Identifier: "request", + dateHeader: "X-Date", + tokenHeader: "x-security-token", + contentSha256Header: "X-Content-Sha256", + kDatePrefix: "" + } : { + algorithm: "AWS4-HMAC-SHA256", + v4Identifier: "aws4_request", + dateHeader: "X-Amz-Date", + tokenHeader: "x-amz-security-token", + contentSha256Header: "X-Amz-Content-Sha256", + kDatePrefix: "AWS4" + }, + this.bodySha256 = n.bodySha256, + this.shouldSerializeBody = "boolean" != typeof n.shouldSerializeBody || n.shouldSerializeBody + } + return e = [{ + key: "addAuthorization", + value: function(e, t) { + var r = this.iso8601(t).replace(/[:\-]|\.\d{3}/g, ""); + this.addHeaders(e, r), + this.request.headers.Authorization = this.authorization(e, r) + } + }, { + key: "addHeaders", + value: function(e, t) { + if (this.request.headers[this.constant.dateHeader] = t, + e.sessionToken && (this.request.headers[this.constant.tokenHeader] = e.sessionToken), + this.request.body) { + var r = this.request.body; + "string" != typeof r && this.shouldSerializeBody && (r = r instanceof URLSearchParams ? r.toString() : JSON.stringify(r)), + this.request.headers[this.constant.contentSha256Header] = this.bodySha256 || l.sha256(r).toString() + } + } + }, { + key: "authorization", + value: function(e, t) { + var r = [] + , n = this.credentialString(t); + return r.push("".concat(this.constant.algorithm, " Credential=").concat(e.accessKeyId, "/").concat(n)), + r.push("SignedHeaders=".concat(this.signedHeaders())), + r.push("Signature=".concat(this.signature(e, t))), + r.join(", ") + } + }, { + key: "signature", + value: function(e, t) { + var r = this.getSigningKey(e, t.substr(0, 8), this.request.region, this.serviceName, this.signatureCache); + return l.hmac(r, this.stringToSign(t), "hex") + } + }, { + key: "stringToSign", + value: function(e) { + var t = []; + return t.push(this.constant.algorithm), + t.push(e), + t.push(this.credentialString(e)), + t.push(this.hexEncodedHash(this.canonicalString())), + t.join("\n") + } + }, { + key: "canonicalString", + value: function() { + var e = [] + , t = this.request.pathname || "/"; + return e.push(this.request.method.toUpperCase()), + e.push(t), + e.push(h(this.request.params) || ""), + e.push("".concat(this.canonicalHeaders(), "\n")), + e.push(this.signedHeaders()), + e.push(this.hexEncodedBodyHash()), + e.join("\n") + } + }, { + key: "canonicalHeaders", + value: function() { + var e = this + , t = []; + Object.keys(this.request.headers).forEach(function(r) { + t.push([r, e.request.headers[r]]) + }), + t.sort(function(e, t) { + return e[0].toLowerCase() < t[0].toLowerCase() ? -1 : 1 + }); + var r = []; + return t.forEach(function(t) { + var n = t[0].toLowerCase(); + if (e.isSignableHeader(n)) { + var i = t[1]; + if (null == i || "function" != typeof i.toString) + throw Error("Header ".concat(n, " contains invalid value")); + r.push("".concat(n, ":").concat(e.canonicalHeaderValues(i.toString()))) + } + }), + r.join("\n") + } + }, { + key: "canonicalHeaderValues", + value: function(e) { + return e.replace(/\s+/g, " ").replace(/^\s+|\s+$/g, "") + } + }, { + key: "signedHeaders", + value: function() { + var e = this + , t = []; + return Object.keys(this.request.headers).forEach(function(r) { + r = r.toLowerCase(), + e.isSignableHeader(r) && t.push(r) + }), + t.sort().join(";") + } + }, { + key: "credentialString", + value: function(e) { + return this.createScope(e.substr(0, 8), this.request.region, this.serviceName) + } + }, { + key: "hexEncodedHash", + value: function(e) { + return l.sha256(e) + } + }, { + key: "hexEncodedBodyHash", + value: function() { + return this.request.headers[this.constant.contentSha256Header] ? this.request.headers[this.constant.contentSha256Header] : this.request.body ? this.hexEncodedHash(h(this.request.body)) : this.hexEncodedHash("") + } + }, { + key: "isSignableHeader", + value: function(e) { + return 0 === e.toLowerCase().indexOf("x-amz-") || 0 > f.indexOf(e) + } + }, { + key: "iso8601", + value: function(e) { + return void 0 === e && (e = new Date), + e.toISOString().replace(/\.\d{3}Z$/, "Z") + } + }, { + key: "getSigningKey", + value: function(e, t, r, n) { + var i = l.hmac("".concat(this.constant.kDatePrefix).concat(e.secretAccessKey), t) + , o = l.hmac(i, r) + , s = l.hmac(o, n); + return l.hmac(s, this.constant.v4Identifier) + } + }, { + key: "createScope", + value: function(e, t, r) { + return [e.substr(0, 8), t, r, this.constant.v4Identifier].join("/") + } + }], + i(r.prototype, e), + t && i(r, t), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + r + }() + }(r(9)) + } + ).call(this, r(5)) +} +function TEST3(e, t, r) { + e.exports = function() { + return r(10)('!function(t){var n={};function __webpack_require__(r){var e;return(n[r]||(e=n[r]={i:r,l:!1,exports:{}},t[r].call(e.exports,e,e.exports,__webpack_require__),e.l=!0,e)).exports}__webpack_require__.m=t,__webpack_require__.c=n,__webpack_require__.d=function(r,e,t){__webpack_require__.o(r,e)||Object.defineProperty(r,e,{enumerable:!0,get:t})},__webpack_require__.r=function(r){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(r,"__esModule",{value:!0})},__webpack_require__.t=function(e,r){if(1&r&&(e=__webpack_require__(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(__webpack_require__.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)__webpack_require__.d(t,n,function(r){return e[r]}.bind(null,n));return t},__webpack_require__.n=function(r){var e=r&&r.__esModule?function getDefault(){return r.default}:function getModuleExports(){return r};return __webpack_require__.d(e,"a",e),e},__webpack_require__.o=function(r,e){return Object.prototype.hasOwnProperty.call(r,e)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=9)}([function(r,e,y){!function(_){r.exports=function(){var r=r||function(u,t){var r;if(typeof window!=="undefined"&&window.crypto)r=window.crypto;if(typeof self!=="undefined"&&self.crypto)r=self.crypto;if(typeof globalThis!=="undefined"&&globalThis.crypto)r=globalThis.crypto;if(!r&&typeof window!=="undefined"&&window.msCrypto)r=window.msCrypto;if(!r&&typeof _!=="undefined"&&_.crypto)r=_.crypto;if(!r&&"function"==="function")try{r=y(11)}catch(r){}var n=function(){if(r){if(typeof r.getRandomValues==="function")try{return r.getRandomValues(new Uint32Array(1))[0]}catch(r){}if(typeof r.randomBytes==="function")try{return r.randomBytes(4).readInt32LE()}catch(r){}}throw new Error("Native crypto module could not be used to get secure random number.")};var i=Object.create||function(){function F(){}return function(r){var e;F.prototype=r;e=new F;F.prototype=null;return e}}();var e={};var a=e.lib={};var o=a.Base=function(){return{extend:function(r){var e=i(this);if(r)e.mixIn(r);if(!e.hasOwnProperty("init")||this.init===e.init)e.init=function(){e.$super.init.apply(this,arguments)};e.init.prototype=e;e.$super=this;return e},create:function(){var r=this.extend();r.init.apply(r,arguments);return r},init:function(){},mixIn:function(r){for(var e in r)if(r.hasOwnProperty(e))this[e]=r[e];if(r.hasOwnProperty("toString"))this.toString=r.toString},clone:function(){return this.init.prototype.extend(this)}}}();var h=a.WordArray=o.extend({init:function(r,e){r=this.words=r||[];if(e!=t)this.sigBytes=e;else this.sigBytes=r.length*4},toString:function(r){return(r||s).stringify(this)},concat:function(r){var e=this.words;var t=r.words;var n=this.sigBytes;var i=r.sigBytes;this.clamp();if(n%4)for(var a=0;a>>2]>>>24-a%4*8&255;e[n+a>>>2]|=o<<24-(n+a)%4*8}else for(var c=0;c>>2]=t[c>>>2];this.sigBytes+=i;return this},clamp:function(){var r=this.words;var e=this.sigBytes;r[e>>>2]&=4294967295<<32-e%4*8;r.length=u.ceil(e/4)},clone:function(){var r=o.clone.call(this);r.words=this.words.slice(0);return r},random:function(r){var e=[];for(var t=0;t>>2]>>>24-i%4*8&255;n.push((a>>>4).toString(16));n.push((a&15).toString(16))}return n.join("")},parse:function(r){var e=r.length;var t=[];for(var n=0;n>>3]|=parseInt(r.substr(n,2),16)<<24-n%8*4;return new h.init(t,e/2)}};var f=c.Latin1={stringify:function(r){var e=r.words;var t=r.sigBytes;var n=[];for(var i=0;i>>2]>>>24-i%4*8&255;n.push(String.fromCharCode(a))}return n.join("")},parse:function(r){var e=r.length;var t=[];for(var n=0;n>>2]|=(r.charCodeAt(n)&255)<<24-n%4*8;return new h.init(t,e)}};var v=c.Utf8={stringify:function(r){try{return decodeURIComponent(escape(f.stringify(r)))}catch(r){throw new Error("Malformed UTF-8 data")}},parse:function(r){return f.parse(unescape(encodeURIComponent(r)))}};var p=a.BufferedBlockAlgorithm=o.extend({reset:function(){this._data=new h.init;this._nDataBytes=0},_append:function(r){if(typeof r=="string")r=v.parse(r);this._data.concat(r);this._nDataBytes+=r.sigBytes},_process:function(r){var e;var t=this._data;var n=t.words;var i=t.sigBytes;var a=this.blockSize;var o=a*4;var c=i/o;if(r)c=u.ceil(c);else c=u.max((c|0)-this._minBufferSize,0);var s=c*a;var f=u.min(s*4,i);if(s){for(var v=0;v>>2]&255;r.sigBytes-=e}};var g=e.BlockCipher=u.extend({cfg:u.cfg.extend({mode:d,padding:y}),reset:function(){var r;u.reset.call(this);var e=this.cfg;var t=e.iv;var n=e.mode;if(this._xformMode==this._ENC_XFORM_MODE)r=n.createEncryptor;else{r=n.createDecryptor;this._minBufferSize=1}if(this._mode&&this._mode.__creator==r)this._mode.init(this,t&&t.words);else{this._mode=r.call(n,this,t&&t.words);this._mode.__creator=r}},_doProcessBlock:function(r,e){this._mode.processBlock(r,e)},_doFinalize:function(){var r;var e=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){e.pad(this._data,this.blockSize);r=this._process(!!"flush")}else{r=this._process(!!"flush");e.unpad(r)}return r},blockSize:128/32});var w=e.CipherParams=t.extend({init:function(r){this.mixIn(r)},toString:function(r){return(r||this.formatter).stringify(this)}});var k=r.format={};var B=k.OpenSSL={stringify:function(r){var e;var t=r.ciphertext;var n=r.salt;if(n)e=s.create([1398893684,1701076831]).concat(n).concat(t);else e=t;return e.toString(c)},parse:function(r){var e;var t=c.parse(r);var n=t.words;if(n[0]==1398893684&&n[1]==1701076831){e=s.create(n.slice(2,4));n.splice(0,4);t.sigBytes-=16}return w.create({ciphertext:t,salt:e})}};var m=e.SerializableCipher=t.extend({cfg:t.extend({format:B}),encrypt:function(r,e,t,n){n=this.cfg.extend(n);var i=r.createEncryptor(t,n);var a=i.finalize(e);var o=i.cfg;return w.create({ciphertext:a,key:t,iv:o.iv,algorithm:r,mode:o.mode,padding:o.padding,blockSize:r.blockSize,formatter:n.format})},decrypt:function(r,e,t,n){n=this.cfg.extend(n);e=this._parse(e,n.format);var i=r.createDecryptor(t,n).finalize(e.ciphertext);return i},_parse:function(r,e){if(typeof r=="string")return e.parse(r,this);else return r}});var x=r.kdf={};var b=x.OpenSSL={execute:function(r,e,t,n,i){if(!n)n=s.random(64/8);if(!i)var a=v.create({keySize:e+t}).compute(r,n);else var a=v.create({keySize:e+t,hasher:i}).compute(r,n);var o=s.create(a.words.slice(e),t*4);a.sigBytes=e*4;return w.create({key:a,iv:o,salt:n})}};var S=e.PasswordBasedCipher=m.extend({cfg:m.cfg.extend({kdf:b}),encrypt:function(r,e,t,n){n=this.cfg.extend(n);var i=n.kdf.execute(t,r.keySize,r.ivSize,n.salt,n.hasher);n.iv=i.iv;var a=m.encrypt.call(this,r,e,i.key,n);a.mixIn(i);return a},decrypt:function(r,e,t,n){n=this.cfg.extend(n);e=this._parse(e,n.format);var i=n.kdf.execute(t,r.keySize,r.ivSize,e.salt,n.hasher);n.iv=i.iv;var a=m.decrypt.call(this,r,e,i.key,n);return a}})}()}(t(0),t(5))},function(r,e,t){r.exports=function(a){return function(){var r=a;var e=r.lib;var t=e.BlockCipher;var n=r.algo;var v=[];var f=[];var u=[];var h=[];var p=[];var l=[];var d=[];var _=[];var y=[];var g=[];(function(){var r=[];for(var e=0;e<256;e++)if(e<128)r[e]=e<<1;else r[e]=e<<1^283;var t=0;var n=0;for(var e=0;e<256;e++){var i=n^n<<1^n<<2^n<<3^n<<4;i=i>>>8^i&255^99;v[t]=i;f[i]=t;var a=r[t];var o=r[a];var c=r[o];var s=r[i]*257^i*16843008;u[t]=s<<24|s>>>8;h[t]=s<<16|s>>>16;p[t]=s<<8|s>>>24;l[t]=s;var s=c*16843009^o*65537^a*257^t*16843008;d[i]=s<<24|s>>>8;_[i]=s<<16|s>>>16;y[i]=s<<8|s>>>24;g[i]=s;if(!t)t=n=1;else{t=a^r[r[r[c^a]]];n^=r[r[n]]}}})();var w=[0,1,2,4,8,16,32,64,128,27,54];var i=n.AES=t.extend({_doReset:function(){var r;if(this._nRounds&&this._keyPriorReset===this._key)return;var e=this._keyPriorReset=this._key;var t=e.words;var n=e.sigBytes/4;var i=this._nRounds=n+6;var a=(i+1)*4;var o=this._keySchedule=[];for(var c=0;c>>24;r=v[r>>>24]<<24|v[r>>>16&255]<<16|v[r>>>8&255]<<8|v[r&255];r^=w[c/n|0]<<24}else if(n>6&&c%n==4)r=v[r>>>24]<<24|v[r>>>16&255]<<16|v[r>>>8&255]<<8|v[r&255];o[c]=o[c-n]^r}var s=this._invKeySchedule=[];for(var f=0;f>>24]]^_[v[r>>>16&255]]^y[v[r>>>8&255]]^g[v[r&255]]}},encryptBlock:function(r,e){this._doCryptBlock(r,e,this._keySchedule,u,h,p,l,v)},decryptBlock:function(r,e){var t=r[e+1];r[e+1]=r[e+3];r[e+3]=t;this._doCryptBlock(r,e,this._invKeySchedule,d,_,y,g,f);var t=r[e+1];r[e+1]=r[e+3];r[e+3]=t},_doCryptBlock:function(r,e,t,n,i,a,o,c){var s=this._nRounds;var f=r[e]^t[0];var v=r[e+1]^t[1];var u=r[e+2]^t[2];var h=r[e+3]^t[3];var p=4;for(var l=1;l>>24]^i[v>>>16&255]^a[u>>>8&255]^o[h&255]^t[p++];var _=n[v>>>24]^i[u>>>16&255]^a[h>>>8&255]^o[f&255]^t[p++];var y=n[u>>>24]^i[h>>>16&255]^a[f>>>8&255]^o[v&255]^t[p++];var g=n[h>>>24]^i[f>>>16&255]^a[v>>>8&255]^o[u&255]^t[p++];f=d;v=_;u=y;h=g}var d=(c[f>>>24]<<24|c[v>>>16&255]<<16|c[u>>>8&255]<<8|c[h&255])^t[p++];var _=(c[v>>>24]<<24|c[u>>>16&255]<<16|c[h>>>8&255]<<8|c[f&255])^t[p++];var y=(c[u>>>24]<<24|c[h>>>16&255]<<16|c[f>>>8&255]<<8|c[v&255])^t[p++];var g=(c[h>>>24]<<24|c[f>>>16&255]<<16|c[v>>>8&255]<<8|c[u&255])^t[p++];r[e]=d;r[e+1]=_;r[e+2]=y;r[e+3]=g},keySize:256/32});r.AES=t._createHelper(i)}(),a.AES}(t(0),(t(12),t(13),t(5),t(1)))},function(r,e,t){r.exports=function(e){return e.mode.ECB=function(){var r=e.lib.BlockCipherMode.extend();r.Encryptor=r.extend({processBlock:function(r,e){this._cipher.encryptBlock(r,e)}});r.Decryptor=r.extend({processBlock:function(r,e){this._cipher.decryptBlock(r,e)}});return r}(),e.mode.ECB}(t(0),t(1))},function(r,e,t){r.exports=function(r){return r.enc.Utf8}(t(0))},function(r,e,t){r.exports=function(o){return function(){var r=o;var e=r.lib;var t=e.Base;var v=e.WordArray;var n=r.algo;var i=n.MD5;var a=n.EvpKDF=t.extend({cfg:t.extend({keySize:128/32,hasher:i,iterations:1}),init:function(r){this.cfg=this.cfg.extend(r)},compute:function(r,e){var t;var n=this.cfg;var i=n.hasher.create();var a=v.create();var o=a.words;var c=n.keySize;var s=n.iterations;while(o.length>>2]|=r[n]<<24-n%4*8;i.call(this,t,e)}else i.apply(this,arguments)};n.prototype=t}(),a.lib.WordArray}(t(0))},function(r,e,t){"use strict";t.r(e);var e=t(2),o=t.n(e),e=t(3),c=t.n(e),e=t(6),s=t.n(e),e=t(7),f=t.n(e),e=t(8),v=t.n(e),e=t(4),u=t.n(e);function crc32(r,e){for(var t=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117],n=("undefined"!=typeof Int32Array&&(t=new Int32Array(t)),-1^~~e),i=(r=new Uint8Array(r)).length,a=0;a>>8;return(-1^n)>>>0}function dec2hex(r){if(void 0!==r)return function toEight(r){return r.length<8?toEight(r="0".concat(r)):r}(Number(r).toString(16))}self.onmessage=function(r){var r=r.data,e=r[0],t=r[1],n=r[2],i=r[3],a=r[4],r=r[5];i?(i=v.a.create(e),i=crc32(r=function wordArrayToUint8Array(r){for(var e=r.sigBytes,t=r.words,n=new Uint8Array(e),i=0,a=0;i!==e;){var o=t[a++];if(n[i++]=(4278190080&o)>>>24,i===e)break;if(n[i++]=(16711680&o)>>>16,i===e)break;if(n[i++]=(65280&o)>>>8,i===e)break;n[i++]=255&o}return n}((r&&e.byteLength%16!=0?o.a.encrypt(i,u.a.parse(a),{mode:c.a,padding:s.a}):o.a.encrypt(i,u.a.parse(a),{mode:c.a,padding:f.a})).ciphertext),0),postMessage([r.buffer,dec2hex(i),t,n],[r.buffer])):(a=crc32(e,0),postMessage([e,dec2hex(a),t,n],[e]))}},function(r,e){var t=function(){return this}();try{t=t||new Function("return this")()}catch(r){"object"==typeof window&&(t=window)}r.exports=t},function(r,e){},function(r,e,t){r.exports=function(i){return function(){var r=i;var e=r.lib;var f=e.WordArray;var t=r.enc;var n=t.Base64={stringify:function(r){var e=r.words;var t=r.sigBytes;var n=this._map;r.clamp();var i=[];for(var a=0;a>>2]>>>24-a%4*8&255;var c=e[a+1>>>2]>>>24-(a+1)%4*8&255;var s=e[a+2>>>2]>>>24-(a+2)%4*8&255;var f=o<<16|c<<8|s;for(var v=0;v<4&&a+v*.75>>6*(3-v)&63))}var u=n.charAt(64);if(u)while(i.length%4)i.push(u);return i.join("")},parse:function(r){var e=r.length;var t=this._map;var n=this._reverseMap;if(!n){n=this._reverseMap=[];for(var i=0;i>>6-a%4*2;var s=o|c;n[i>>>2]|=s<<24-i%4*8;i++}return f.create(n,i)}}(),i.enc.Base64}(t(0))},function(r,e,t){r.exports=function(o){return function(v){var r=o;var e=r.lib;var t=e.WordArray;var n=e.Hasher;var i=r.algo;var F=[];(function(){for(var r=0;r<64;r++)F[r]=v.abs(v.sin(r+1))*4294967296|0})();var a=i.MD5=n.extend({_doReset:function(){this._hash=new t.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(r,e){for(var t=0;t<16;t++){var n=e+t;var i=r[n];r[n]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360}var a=this._hash.words;var o=r[e+0];var c=r[e+1];var s=r[e+2];var f=r[e+3];var v=r[e+4];var u=r[e+5];var h=r[e+6];var p=r[e+7];var l=r[e+8];var d=r[e+9];var _=r[e+10];var y=r[e+11];var g=r[e+12];var w=r[e+13];var k=r[e+14];var B=r[e+15];var m=a[0];var x=a[1];var b=a[2];var S=a[3];m=FF(m,x,b,S,o,7,F[0]);S=FF(S,m,x,b,c,12,F[1]);b=FF(b,S,m,x,s,17,F[2]);x=FF(x,b,S,m,f,22,F[3]);m=FF(m,x,b,S,v,7,F[4]);S=FF(S,m,x,b,u,12,F[5]);b=FF(b,S,m,x,h,17,F[6]);x=FF(x,b,S,m,p,22,F[7]);m=FF(m,x,b,S,l,7,F[8]);S=FF(S,m,x,b,d,12,F[9]);b=FF(b,S,m,x,_,17,F[10]);x=FF(x,b,S,m,y,22,F[11]);m=FF(m,x,b,S,g,7,F[12]);S=FF(S,m,x,b,w,12,F[13]);b=FF(b,S,m,x,k,17,F[14]);x=FF(x,b,S,m,B,22,F[15]);m=GG(m,x,b,S,c,5,F[16]);S=GG(S,m,x,b,h,9,F[17]);b=GG(b,S,m,x,y,14,F[18]);x=GG(x,b,S,m,o,20,F[19]);m=GG(m,x,b,S,u,5,F[20]);S=GG(S,m,x,b,_,9,F[21]);b=GG(b,S,m,x,B,14,F[22]);x=GG(x,b,S,m,v,20,F[23]);m=GG(m,x,b,S,d,5,F[24]);S=GG(S,m,x,b,k,9,F[25]);b=GG(b,S,m,x,f,14,F[26]);x=GG(x,b,S,m,l,20,F[27]);m=GG(m,x,b,S,w,5,F[28]);S=GG(S,m,x,b,s,9,F[29]);b=GG(b,S,m,x,p,14,F[30]);x=GG(x,b,S,m,g,20,F[31]);m=HH(m,x,b,S,u,4,F[32]);S=HH(S,m,x,b,l,11,F[33]);b=HH(b,S,m,x,y,16,F[34]);x=HH(x,b,S,m,k,23,F[35]);m=HH(m,x,b,S,c,4,F[36]);S=HH(S,m,x,b,v,11,F[37]);b=HH(b,S,m,x,p,16,F[38]);x=HH(x,b,S,m,_,23,F[39]);m=HH(m,x,b,S,w,4,F[40]);S=HH(S,m,x,b,o,11,F[41]);b=HH(b,S,m,x,f,16,F[42]);x=HH(x,b,S,m,h,23,F[43]);m=HH(m,x,b,S,d,4,F[44]);S=HH(S,m,x,b,g,11,F[45]);b=HH(b,S,m,x,B,16,F[46]);x=HH(x,b,S,m,s,23,F[47]);m=II(m,x,b,S,o,6,F[48]);S=II(S,m,x,b,p,10,F[49]);b=II(b,S,m,x,k,15,F[50]);x=II(x,b,S,m,u,21,F[51]);m=II(m,x,b,S,g,6,F[52]);S=II(S,m,x,b,f,10,F[53]);b=II(b,S,m,x,_,15,F[54]);x=II(x,b,S,m,c,21,F[55]);m=II(m,x,b,S,l,6,F[56]);S=II(S,m,x,b,B,10,F[57]);b=II(b,S,m,x,h,15,F[58]);x=II(x,b,S,m,w,21,F[59]);m=II(m,x,b,S,v,6,F[60]);S=II(S,m,x,b,y,10,F[61]);b=II(b,S,m,x,s,15,F[62]);x=II(x,b,S,m,d,21,F[63]);a[0]=a[0]+m|0;a[1]=a[1]+x|0;a[2]=a[2]+b|0;a[3]=a[3]+S|0},_doFinalize:function(){var r=this._data;var e=r.words;var t=this._nDataBytes*8;var n=r.sigBytes*8;e[n>>>5]|=128<<24-n%32;var i=v.floor(t/4294967296);var a=t;e[(n+64>>>9<<4)+15]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360;e[(n+64>>>9<<4)+14]=(a<<8|a>>>24)&16711935|(a<<24|a>>>8)&4278255360;r.sigBytes=(e.length+1)*4;this._process();var o=this._hash;var c=o.words;for(var s=0;s<4;s++){var f=c[s];c[s]=(f<<8|f>>>24)&16711935|(f<<24|f>>>8)&4278255360}return o},clone:function(){var r=n.clone.call(this);r._hash=this._hash.clone();return r}});function FF(r,e,t,n,i,a,o){var c=r+(e&t|~e&n)+i+o;return(c<>>32-a)+e}function GG(r,e,t,n,i,a,o){var c=r+(e&n|t&~n)+i+o;return(c<>>32-a)+e}function HH(r,e,t,n,i,a,o){var c=r+(e^t^n)+i+o;return(c<>>32-a)+e}function II(r,e,t,n,i,a,o){var c=r+(t^(e|~n))+i+o;return(c<>>32-a)+e}r.MD5=n._createHelper(a);r.HmacMD5=n._createHmacHelper(a)}(Math),o.MD5}(t(0))},function(r,e,t){r.exports=function(o){return function(){var r=o;var e=r.lib;var t=e.WordArray;var n=e.Hasher;var i=r.algo;var u=[];var a=i.SHA1=n.extend({_doReset:function(){this._hash=new t.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(r,e){var t=this._hash.words;var n=t[0];var i=t[1];var a=t[2];var o=t[3];var c=t[4];for(var s=0;s<80;s++){if(s<16)u[s]=r[e+s]|0;else{var f=u[s-3]^u[s-8]^u[s-14]^u[s-16];u[s]=f<<1|f>>>31}var v=(n<<5|n>>>27)+c+u[s];if(s<20)v+=(i&a|~i&o)+1518500249;else if(s<40)v+=(i^a^o)+1859775393;else if(s<60)v+=(i&a|i&o|a&o)-1894007588;else v+=(i^a^o)-899497514;c=o;o=a;a=i<<30|i>>>2;i=n;n=v}t[0]=t[0]+n|0;t[1]=t[1]+i|0;t[2]=t[2]+a|0;t[3]=t[3]+o|0;t[4]=t[4]+c|0},_doFinalize:function(){var r=this._data;var e=r.words;var t=this._nDataBytes*8;var n=r.sigBytes*8;e[n>>>5]|=128<<24-n%32;e[(n+64>>>9<<4)+14]=Math.floor(t/4294967296);e[(n+64>>>9<<4)+15]=t;r.sigBytes=e.length*4;this._process();return this._hash},clone:function(){var r=n.clone.call(this);r._hash=this._hash.clone();return r}});r.SHA1=n._createHelper(a);r.HmacSHA1=n._createHmacHelper(a)}(),o.SHA1}(t(0))},function(r,e,t){r.exports=function(o){(function(){var r=o;var e=r.lib;var t=e.Base;var n=r.enc;var f=n.Utf8;var i=r.algo;var a=i.HMAC=t.extend({init:function(r,e){r=this._hasher=new r.init;if(typeof e=="string")e=f.parse(e);var t=r.blockSize;var n=t*4;if(e.sigBytes>n)e=r.finalize(e);e.clamp();var i=this._oKey=e.clone();var a=this._iKey=e.clone();var o=i.words;var c=a.words;for(var s=0;s>> 2] >>> 24 - o % 4 * 8 & 255; + t[n + o >>> 2] |= s << 24 - (n + o) % 4 * 8 + } + else + for (var a = 0; a < i; a += 4) + t[n + a >>> 2] = r[a >>> 2]; + return this.sigBytes += i, + this + }, + clamp: function() { + var t = this.words + , r = this.sigBytes; + t[r >>> 2] &= 0xffffffff << 32 - r % 4 * 8, + t.length = e.ceil(r / 4) + }, + clone: function() { + var e = u.clone.call(this); + return e.words = this.words.slice(0), + e + }, + random: function(e) { + for (var t = [], r = 0; r < e; r += 4) + t.push(o()); + return new l.init(t,e) + } + }), f = a.enc = {}, p = f.Hex = { + stringify: function(e) { + for (var t = e.words, r = e.sigBytes, n = [], i = 0; i < r; i++) { + var o = t[i >>> 2] >>> 24 - i % 4 * 8 & 255; + n.push((o >>> 4).toString(16)), + n.push((15 & o).toString(16)) + } + return n.join("") + }, + parse: function(e) { + for (var t = e.length, r = [], n = 0; n < t; n += 2) + r[n >>> 3] |= parseInt(e.substr(n, 2), 16) << 24 - n % 8 * 4; + return new l.init(r,t / 2) + } + }, h = f.Latin1 = { + stringify: function(e) { + for (var t = e.words, r = e.sigBytes, n = [], i = 0; i < r; i++) { + var o = t[i >>> 2] >>> 24 - i % 4 * 8 & 255; + n.push(String.fromCharCode(o)) + } + return n.join("") + }, + parse: function(e) { + for (var t = e.length, r = [], n = 0; n < t; n++) + r[n >>> 2] |= (255 & e.charCodeAt(n)) << 24 - n % 4 * 8; + return new l.init(r,t) + } + }, d = f.Utf8 = { + stringify: function(e) { + try { + return decodeURIComponent(escape(h.stringify(e))) + } catch (e) { + throw Error("Malformed UTF-8 data") + } + }, + parse: function(e) { + return h.parse(unescape(encodeURIComponent(e))) + } + }, g = c.BufferedBlockAlgorithm = u.extend({ + reset: function() { + this._data = new l.init, + this._nDataBytes = 0 + }, + _append: function(e) { + "string" == typeof e && (e = d.parse(e)), + this._data.concat(e), + this._nDataBytes += e.sigBytes + }, + _process: function(t) { + var r, n = this._data, i = n.words, o = n.sigBytes, s = this.blockSize, a = o / (4 * s), c = (a = t ? e.ceil(a) : e.max((0 | a) - this._minBufferSize, 0)) * s, u = e.min(4 * c, o); + if (c) { + for (var f = 0; f < c; f += s) + this._doProcessBlock(i, f); + r = i.splice(0, c), + n.sigBytes -= u + } + return new l.init(r,u) + }, + clone: function() { + var e = u.clone.call(this); + return e._data = this._data.clone(), + e + }, + _minBufferSize: 0 + }); + c.Hasher = g.extend({ + cfg: u.extend(), + init: function(e) { + this.cfg = this.cfg.extend(e), + this.reset() + }, + reset: function() { + g.reset.call(this), + this._doReset() + }, + update: function(e) { + return this._append(e), + this._process(), + this + }, + finalize: function(e) { + return e && this._append(e), + this._doFinalize() + }, + blockSize: 16, + _createHelper: function(e) { + return function(t, r) { + return new e.init(r).finalize(t) + } + }, + _createHmacHelper: function(e) { + return function(t, r) { + return new y.HMAC.init(e,r).finalize(t) + } + } + }); + var y = a.algo = {}; + return a + }(Math) + } + ).call(this, r(5)) +} +function TEST5(e, t, r) { + var n; + e.exports = (n = r(3), + function(e) { + var t = n.lib + , r = t.WordArray + , i = t.Hasher + , o = n.algo + , s = [] + , a = []; + (function() { + function t(e) { + return (e - (0 | e)) * 0x100000000 | 0 + } + for (var r = 2, n = 0; n < 64; ) + (function(t) { + for (var r = e.sqrt(t), n = 2; n <= r; n++) + if (!(t % n)) + return !1; + return !0 + } + )(r) && (n < 8 && (s[n] = t(e.pow(r, .5))), + a[n] = t(e.pow(r, 1 / 3)), + n++), + r++ + } + )(); + var c = [] + , u = o.SHA256 = i.extend({ + _doReset: function() { + this._hash = new r.init(s.slice(0)) + }, + _doProcessBlock: function(e, t) { + for (var r = this._hash.words, n = r[0], i = r[1], o = r[2], s = r[3], u = r[4], l = r[5], f = r[6], p = r[7], h = 0; h < 64; h++) { + if (h < 16) + c[h] = 0 | e[t + h]; + else { + var d = c[h - 15] + , g = (d << 25 | d >>> 7) ^ (d << 14 | d >>> 18) ^ d >>> 3 + , y = c[h - 2] + , m = (y << 15 | y >>> 17) ^ (y << 13 | y >>> 19) ^ y >>> 10; + c[h] = g + c[h - 7] + m + c[h - 16] + } + var v = u & l ^ ~u & f + , b = n & i ^ n & o ^ i & o + , _ = (n << 30 | n >>> 2) ^ (n << 19 | n >>> 13) ^ (n << 10 | n >>> 22) + , S = p + ((u << 26 | u >>> 6) ^ (u << 21 | u >>> 11) ^ (u << 7 | u >>> 25)) + v + a[h] + c[h] + , x = _ + b; + p = f, + f = l, + l = u, + u = s + S | 0, + s = o, + o = i, + i = n, + n = S + x | 0 + } + r[0] = r[0] + n | 0, + r[1] = r[1] + i | 0, + r[2] = r[2] + o | 0, + r[3] = r[3] + s | 0, + r[4] = r[4] + u | 0, + r[5] = r[5] + l | 0, + r[6] = r[6] + f | 0, + r[7] = r[7] + p | 0 + }, + _doFinalize: function() { + var t = this._data + , r = t.words + , n = 8 * this._nDataBytes + , i = 8 * t.sigBytes; + return r[i >>> 5] |= 128 << 24 - i % 32, + r[(i + 64 >>> 9 << 4) + 14] = e.floor(n / 0x100000000), + r[(i + 64 >>> 9 << 4) + 15] = n, + t.sigBytes = 4 * r.length, + this._process(), + this._hash + }, + clone: function() { + var e = i.clone.call(this); + return e._hash = this._hash.clone(), + e + } + }); + n.SHA256 = i._createHelper(u), + n.HmacSHA256 = i._createHmacHelper(u) + }(Math), + n.SHA256) +} +function TEST6(e, t) { + var r = function() { + return this + }(); + try { + r = r || Function("return this")() + } catch (e) { + "object" == typeof window && (r = window) + } + e.exports = r +} +function TEST7(e, t, r) { + var n; + e.exports = (n = r(3), + r(4), + r(8), + n.HmacSHA256) +} +function TEST8(e, t) {} +function TEST9(e, t, r) { + var n, i, o; + e.exports = void (i = (n = r(3)).lib.Base, + o = n.enc.Utf8, + n.algo.HMAC = i.extend({ + init: function(e, t) { + e = this._hasher = new e.init, + "string" == typeof t && (t = o.parse(t)); + var r = e.blockSize + , n = 4 * r; + t.sigBytes > n && (t = e.finalize(t)), + t.clamp(); + for (var i = this._oKey = t.clone(), s = this._iKey = t.clone(), a = i.words, c = s.words, u = 0; u < r; u++) + a[u] ^= 0x5c5c5c5c, + c[u] ^= 0x36363636; + i.sigBytes = s.sigBytes = n, + this.reset() + }, + reset: function() { + var e = this._hasher; + e.reset(), + e.update(this._iKey) + }, + update: function(e) { + return this._hasher.update(e), + this + }, + finalize: function(e) { + var t = this._hasher + , r = t.finalize(e); + return t.reset(), + t.finalize(this._oKey.clone().concat(r)) + } + })) +} +function TEST10(e, t) {} +function TEST11(e, t, r) { + "use strict"; + var n = window.URL || window.webkitURL; + e.exports = function(e, t) { + try { + try { + var r; + try { + (r = new (window.BlobBuilder || window.WebKitBlobBuilder || window.MozBlobBuilder || window.MSBlobBuilder)).append(e), + r = r.getBlob() + } catch (t) { + r = new Blob([e]) + } + return new Worker(n.createObjectURL(r)) + } catch (t) { + return new Worker("data:application/javascript," + encodeURIComponent(e)) + } + } catch (e) { + if (t) + return new Worker(t); + throw Error("Inline worker is not supported") + } + } +} +function TEST12(e, t, r) { + "use strict"; + r.r(t), + r.d(t, "default", function() { + return t7 + }); + var t = r(0) + , n = r.n(t) + , i = "{tosDomain}/upload/v1/{oid}?uploadid={uploadId}&part_number={part_number}&phase=transfer" + , o = "{tosDomain}/upload/v1/{oid}" + , s = { + debug: !1, + region: "cn-north-1", + external: {}, + getSliceFunc: null, + uploadSliceCount: 3, + retryUploadTime: 2, + retryProcess: !0, + retryProcessTime: 3, + retryTaskTime: 2, + progressMonitorTime: 1e4, + progressMonitorSpeed: 50, + schema: "https", + enableDiskBreakpoint: !0, + gatewayTimeout: 3e4, + uploadTimeout: 18e5, + realtimeSpeedInterval: 3e3, + replace: {} + } + , a = function() { + return (a = Object.assign || function(e) { + for (var t, r = 1, n = arguments.length; r < n; r++) + for (var i in t = arguments[r]) + Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]); + return e + } + ).apply(this, arguments) + }; + function c() { + for (var e = [], t = 0; t < arguments.length; t++) + e = e.concat(function(e, t) { + var r = "function" == typeof Symbol && e[Symbol.iterator]; + if (!r) + return e; + var n, i, o = r.call(e), s = []; + try { + for (; (void 0 === t || 0 < t--) && !(n = o.next()).done; ) + s.push(n.value) + } catch (e) { + i = { + error: e + } + } finally { + try { + n && !n.done && (r = o.return) && r.call(o) + } finally { + if (i) + throw i.error + } + } + return s + }(arguments[t])); + return e + } + function u(e) { + return null != e && "[object Object]" == Object.prototype.toString.call(e) + } + function l(e) { + return function(e) { + if ("string" == typeof e) { + for (var t = [], r = e.split("z"), n = 0; n < r.length; n++) { + var i = 64 ^ +parseInt(r[n], 25) + , i = String.fromCharCode(i); + t.push(i) + } + return t.join("") + } + }(e) + } + function f(e) { + var t = document.createElement("a"); + return t.href = e, + t + } + function p(e) { + var t = {}; + try { + var r = f(e).search; + if (!r) + return t; + (r = r.slice(1)).split("&").forEach(function(e) { + var r, n, i = e.split("="); + i.length && (r = i[0], + n = i[1]); + try { + t[r] = decodeURIComponent(void 0 === n ? "" : n) + } catch (e) { + t[r] = n + } + }) + } catch (e) {} + return t + } + function h(e) { + for (var t = 0, r = 0, n = (e += "").length, i = 0; i < n; i++) + (0x7fffffffffff < (t = 31 * t + e.charCodeAt(r++)) || t < -0x800000000000) && (t &= 0xffffffffffff); + return t < 0 && (t += 0x7ffffffffffff), + t + } + function d(e, t) { + try { + return e ? w.get(e, { + domain: t || document.domain + }) : w.get() + } catch (e) { + return "" + } + } + function g(e, t, r, n) { + try { + var i = n || document.domain + , o = +new Date + (r || 6048e5); + w.set(e, t, { + expires: new Date(o), + path: "/", + domain: i + }) + } catch (e) {} + } + function y() { + return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(e) { + var t = 16 * Math.random() | 0; + return ("x" === e ? t : 3 & t | 8).toString(16) + }) + } + function m() { + return (function e(t) { + return t ? (t ^ 16 * Math.random() >> t / 4).toString(10) : "10000000-1000-4000-8000-100000000000".replace(/[018]/g, e) + } + )().replace(/-/g, "").slice(0, 19) + } + var v, b, _, S, x = function() { + function e() { + this._hooks = {}, + this._cache = [], + this._hooksCache = {} + } + return e.prototype.on = function(e, t) { + e && t && "function" == typeof t && (this._hooks[e] || (this._hooks[e] = []), + this._hooks[e].push(t)) + } + , + e.prototype.once = function(e, t) { + var r = this; + e && t && "function" == typeof t && this.on(e, function n(i) { + t(i), + r.off(e, n) + }) + } + , + e.prototype.off = function(e, t) { + e && this._hooks[e] && this._hooks[e].length && (t ? -1 !== (t = this._hooks[e].indexOf(t)) && this._hooks[e].splice(t, 1) : this._hooks[e] = []) + } + , + e.prototype.emit = function(e, t, r) { + r ? e && (-1 !== this._cache.indexOf(r) ? this._emit(e, t) : (this._hooksCache.hasOwnProperty(r) || (this._hooksCache[r] = {}), + this._hooksCache[r].hasOwnProperty(e) || (this._hooksCache[r][e] = []), + this._hooksCache[r][e].push(t))) : this._emit(e, t) + } + , + e.prototype._emit = function(e, t) { + e && this._hooks[e] && this._hooks[e].length && c(this._hooks[e]).forEach(function(e) { + try { + e(t) + } catch (e) {} + }) + } + , + e.prototype.set = function(e) { + e && -1 === this._cache.indexOf(e) && this._cache.push(e) + } + , + e + }(), w = (_ = +Date.now() + Number(("" + Math.random()).slice(2, 8)), + (t = { + exports: {} + }).exports = function() { + function e() { + for (var e = 0, t = {}; e < arguments.length; e++) { + var r, n = arguments[e]; + for (r in n) + t[r] = n[r] + } + return t + } + function t(e) { + return e.replace(/(%[0-9A-Z]{2})+/g, decodeURIComponent) + } + return function r(n) { + function i() {} + function o(t, r, o) { + if ("undefined" != typeof document) { + "number" == typeof (o = e({ + path: "/" + }, i.defaults, o)).expires && (o.expires = new Date(+new Date + 864e5 * o.expires)), + o.expires = o.expires ? o.expires.toUTCString() : ""; + try { + var s = JSON.stringify(r); + /^[\{\[]/.test(s) && (r = s) + } catch (e) {} + r = n.write ? n.write(r, t) : encodeURIComponent(String(r)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g, decodeURIComponent), + t = encodeURIComponent(String(t)).replace(/%(23|24|26|2B|5E|60|7C)/g, decodeURIComponent).replace(/[\(\)]/g, escape); + var a, c = ""; + for (a in o) + o[a] && (c += "; " + a, + !0 !== o[a]) && (c += "=" + o[a].split(";")[0]); + return document.cookie = t + "=" + r + c + } + } + function s(e, r) { + if ("undefined" != typeof document) { + for (var i = {}, o = document.cookie ? document.cookie.split("; ") : [], s = 0; s < o.length; s++) { + var a = o[s].split("=") + , c = a.slice(1).join("="); + r || '"' !== c.charAt(0) || (c = c.slice(1, -1)); + try { + var u = t(a[0]) + , c = (n.read || n)(c, u) || t(c); + if (r) + try { + c = JSON.parse(c) + } catch (e) {} + if (i[u] = c, + e === u) + break + } catch (e) {} + } + return e ? i[e] : i + } + } + return i.set = o, + i.get = function(e) { + return s(e, !1) + } + , + i.getJSON = function(e) { + return s(e, !0) + } + , + i.remove = function(t, r) { + o(t, "", e(r, { + expires: -1 + })) + } + , + i.defaults = {}, + i.withConverter = r, + i + }(function() {}) + }(), + t.exports), k = function() { + function e() { + this.cache = {} + } + return e.prototype.setItem = function(e, t) { + this.cache[e] = t + } + , + e.prototype.getItem = function(e) { + return this.cache[e] + } + , + e.prototype.removeItem = function(e) { + this.cache[e] = void 0 + } + , + e.prototype.getCookie = function(e, t) { + return d(e, t) + } + , + e.prototype.setCookie = function(e, t, r, n) { + g(e, t, r, n) + } + , + e + }(), E = { + getItem: function(e) { + try { + var t = localStorage.getItem(e) + , r = t; + try { + t && "string" == typeof t && (r = JSON.parse(t)) + } catch (e) {} + return r || {} + } catch (e) {} + return {} + }, + setItem: function(e, t) { + try { + var r = "string" == typeof t ? t : JSON.stringify(t); + localStorage.setItem(e, r) + } catch (e) {} + }, + removeItem: function(e) { + try { + localStorage.removeItem(e) + } catch (e) {} + }, + getCookie: function(e, t) { + return d(e, t) + }, + setCookie: function(e, t, r, n) { + g(e, t, r, n) + }, + isSupportLS: function() { + try { + return localStorage.setItem("_ranger-test-key", "hi"), + localStorage.getItem("_ranger-test-key"), + localStorage.removeItem("_ranger-test-key"), + !0 + } catch (e) { + return !1 + } + }() + }, O = { + getItem: function(e) { + try { + var t = sessionStorage.getItem(e) + , r = t; + try { + t && "string" == typeof t && (r = JSON.parse(t)) + } catch (e) {} + return r || {} + } catch (e) {} + return {} + }, + setItem: function(e, t) { + try { + var r = "string" == typeof t ? t : JSON.stringify(t); + sessionStorage.setItem(e, r) + } catch (e) {} + }, + removeItem: function(e) { + try { + sessionStorage.removeItem(e) + } catch (e) {} + }, + getCookie: function(e, t) { + return d(e, t) + }, + setCookie: function(e, t, r, n) { + g(e, t, r, n) + }, + isSupportSession: function() { + try { + return sessionStorage.setItem("_ranger-test-key", "hi"), + sessionStorage.getItem("_ranger-test-key"), + sessionStorage.removeItem("_ranger-test-key"), + !0 + } catch (e) { + return !1 + } + }() + }, T = function() { + function e(e, t) { + this._storage = t && "session" === t ? O : !e && E.isSupportLS ? E : new k + } + return e.prototype.getItem = function(e) { + return this._storage.getItem(e) + } + , + e.prototype.setItem = function(e, t) { + this._storage.setItem(e, t) + } + , + e.prototype.getCookie = function(e, t) { + return this._storage.getCookie(e, t) + } + , + e.prototype.setCookie = function(e, t, r, n) { + this._storage.setCookie(e, t, r, n) + } + , + e.prototype.removeItem = function(e) { + this._storage.removeItem(e) + } + , + e + }(), C = function() { + function e(e, t, r) { + this.appid = e, + this.domain = t, + this.userAgent = window.navigator.userAgent, + this.appVersion = window.navigator.appVersion, + this.cookie_expire = r + } + return e.prototype.init = function() { + var e = window.navigator.userAgent + , t = window.navigator.language + , r = document.referrer + , n = r ? f(r).hostname : "" + , i = p(window.location.href) + , o = /Mobile|htc|mini|Android|iP(ad|od|hone)/.test(this.appVersion) ? "wap" : "web" + , i = (this.utm = function(e, t, r, n) { + var i = new T(!1) + , o = new T(!1,"session") + , s = e ? "_tea_utm_cache_" + e : "_tea_utm_cache" + , a = e ? "_$utm_from_url_" + e : "_$utm_from_url" + , c = {} + , u = ["tr_shareuser", "tr_admaster", "tr_param1", "tr_param2", "tr_param3", "tr_param4", "$utm_from_url"] + , l = { + ad_id: Number(t.ad_id) || void 0, + campaign_id: Number(t.campaign_id) || void 0, + creative_id: Number(t.creative_id) || void 0, + utm_source: t.utm_source, + utm_medium: t.utm_medium, + utm_campaign: t.utm_campaign, + utm_term: t.utm_term, + utm_content: t.utm_content, + tr_shareuser: t.tr_shareuser, + tr_admaster: t.tr_admaster, + tr_param1: t.tr_param1, + tr_param2: t.tr_param2, + tr_param3: t.tr_param3, + tr_param4: t.tr_param4 + }; + try { + var f, p, h = !1; + for (f in l) + l[f] && (-1 !== u.indexOf(f) ? (c.hasOwnProperty("tracer_data") || (c.tracer_data = {}), + c.tracer_data[f] = l[f]) : c[f] = l[f], + h = !0); + h ? (o.setItem(a, "1"), + i.setCookie(s, JSON.stringify(c), n, r)) : (p = i.getCookie(s, r)) && (c = JSON.parse(p)), + o.getItem(a) && (c.hasOwnProperty("tracer_data") || (c.tracer_data = {}), + c.tracer_data.$utm_from_url = 1) + } catch (e) { + return l + } + return c + }(this.appid, i, this.domain, this.cookie_expire), + this.browser()) + , s = this.os(); + return { + browser: i.browser, + browser_version: i.browser_version, + platform: o, + os_name: s.os_name, + os_version: s.os_version, + userAgent: e, + screen_width: window.screen && window.screen.width, + screen_height: window.screen && window.screen.height, + device_model: this.getDeviceModel(s.os_name), + language: t, + referrer: r, + referrer_host: n, + utm: this.utm, + latest_data: this.last(r, n) + } + } + , + e.prototype.last = function(e, t) { + var r = "" + , n = "" + , i = "" + , o = location.hostname + , s = !1; + return e && t && o !== t && (n = t, + s = !0, + (o = p(r = e)).keyword) && (i = o.keyword), + { + $latest_referrer: r, + $latest_referrer_host: n, + $latest_search_keyword: i, + isLast: s + } + } + , + e.prototype.browser = function() { + var e, t = "", r = "" + parseFloat(this.appVersion), n = this.userAgent; + return -1 !== n.indexOf("Edge") || -1 !== n.indexOf("Edg") ? (t = "Microsoft Edge", + r = -1 !== n.indexOf("Edge") ? (e = n.indexOf("Edge"), + n.substring(e + 5)) : (e = n.indexOf("Edg"), + n.substring(e + 4))) : -1 !== (e = n.indexOf("MSIE")) ? (t = "Microsoft Internet Explorer", + r = n.substring(e + 5)) : -1 !== (e = n.indexOf("Lark")) ? (t = "Lark", + r = n.substring(e + 5, e + 11)) : -1 !== (e = n.indexOf("MetaSr")) ? (t = "sougoubrowser", + r = n.substring(e + 7, e + 10)) : -1 !== n.indexOf("MQQBrowser") || -1 !== n.indexOf("QQBrowser") ? (t = "qqbrowser", + -1 !== n.indexOf("MQQBrowser") ? (e = n.indexOf("MQQBrowser"), + r = n.substring(e + 11, e + 15)) : -1 !== n.indexOf("QQBrowser") && (e = n.indexOf("QQBrowser"), + r = n.substring(e + 10, e + 17))) : -1 !== n.indexOf("Chrome") ? -1 !== (e = n.indexOf("MicroMessenger")) ? (t = "weixin", + r = n.substring(e + 15, e + 20)) : -1 !== (e = n.indexOf("360")) ? (t = "360browser", + r = n.substring(n.indexOf("Chrome") + 7)) : -1 !== n.indexOf("baidubrowser") || -1 !== n.indexOf("BIDUBrowser") ? (-1 !== n.indexOf("baidubrowser") ? (e = n.indexOf("baidubrowser"), + r = n.substring(e + 13, e + 16)) : -1 !== n.indexOf("BIDUBrowser") && (e = n.indexOf("BIDUBrowser"), + r = n.substring(e + 12, e + 15)), + t = "baidubrowser") : -1 !== (e = n.indexOf("xiaomi")) ? r = -1 !== n.indexOf("openlanguagexiaomi") ? (t = "openlanguage xiaomi", + n.substring(e + 7, e + 13)) : (t = "xiaomi", + n.substring(e - 7, e - 1)) : -1 !== (e = n.indexOf("TTWebView")) ? (t = "TTWebView", + r = n.substring(e + 10, e + 23)) : -1 === (e = n.indexOf("Chrome")) && -1 === (e = n.indexOf("Chrome")) || (t = "Chrome", + r = n.substring(e + 7)) : -1 !== n.indexOf("Safari") ? -1 !== (e = n.indexOf("QQ")) ? (t = "qqbrowser", + r = n.substring(e + 10, e + 16)) : -1 !== (e = n.indexOf("Safari")) && (t = "Safari", + r = n.substring(e + 7), + -1 !== (e = n.indexOf("Version"))) && (r = n.substring(e + 8)) : -1 !== (e = n.indexOf("Firefox")) ? (t = "Firefox", + r = n.substring(e + 8)) : -1 !== (e = n.indexOf("MicroMessenger")) ? (t = "weixin", + r = n.substring(e + 15, e + 20)) : -1 !== (e = n.indexOf("QQ")) && (t = "qqbrowser", + r = n.substring(e + 3, e + 8)), + { + browser: t, + browser_version: r = -1 !== (n = (r = -1 !== (n = (r = -1 !== (n = r.indexOf(";")) ? r.substring(0, n) : r).indexOf(" ")) ? r.substring(0, n) : r).indexOf(")")) ? r.substring(0, n) : r + } + } + , + e.prototype.os = function() { + for (var e = "", t = "", r = [{ + s: "Windows 10", + r: /(Windows 10.0|Windows NT 10.0|Windows NT 10.1)/ + }, { + s: "Windows 8.1", + r: /(Windows 8.1|Windows NT 6.3)/ + }, { + s: "Windows 8", + r: /(Windows 8|Windows NT 6.2)/ + }, { + s: "Windows 7", + r: /(Windows 7|Windows NT 6.1)/ + }, { + s: "Android", + r: /Android/ + }, { + s: "iOS", + r: /(iPhone|iPad|iPod)/ + }, { + s: "Mac OS X", + r: /Mac OS X/ + }, { + s: "Mac OS", + r: /(MacPPC|MacIntel|Mac_PowerPC|Macintosh)/ + }, { + s: "chromeOS", + r: /CrOS/ + }, { + s: "Linux", + r: /(Linux|X11)/ + }, { + s: "Sun OS", + r: /SunOS/ + }], n = 0; n < r.length; n++) { + var i = r[n]; + if (i.r.test(this.userAgent)) { + "Mac OS X" === (e = i.s) && this.isNewIpad() && (e = "iOS"); + break + } + } + function o(e, t) { + return (e = e.exec(t)) && e[1] ? e[1] : "" + } + function s(e, t) { + return (e = RegExp("(?:^|[^A-Z0-9-_]|[^A-Z0-9-]_|sprd-)(?:" + e + ")", "i").exec(t)) ? e.slice(1)[0] : "" + } + switch (/Windows/.test(e) && (t = o(/Windows (.*)/, e), + e = "windows"), + e) { + case "Mac OS X": + t = s("Mac[ +]OS[ +]X(?:[ /](?:Version )?(\\d+(?:[_\\.]\\d+)+))?", this.userAgent), + e = "mac"; + break; + case "Android": + t = o(/Android ([\.\_\d]+)/, a = this.userAgent) || o(/Android\/([\.\_\d]+)/, a), + e = "android"; + break; + case "iOS": + t = this.isNewIpad() ? s("Mac[ +]OS[ +]X(?:[ /](?:Version )?(\\d+(?:[_\\.]\\d+)+))?", this.userAgent) : (t = /OS (\d+)_(\d+)_?(\d+)?/.exec(this.appVersion)) ? t[1] + "." + t[2] + "." + (0 | t[3]) : "", + e = "ios"; + break; + case "chromeOS": + var a = this.userAgent.indexOf("x86_64") + , t = this.userAgent.substring(a + 7, a + 16) + } + return { + os_name: e, + os_version: t + } + } + , + e.prototype.getDeviceModel = function(e) { + var t, r, n = ""; + try { + "android" === e ? navigator.userAgent.split(";").forEach(function(e) { + -1 < e.indexOf("Build/") && (n = e.slice(0, e.indexOf("Build/"))) + }) : "ios" !== e && "mac" !== e && "windows" !== e || (n = this.isNewIpad() ? "iPad" : (r = (t = navigator.userAgent.replace("Mozilla/5.0 (", "")).indexOf(";"), + t.slice(0, r))) + } catch (e) {} + return n.trim() + } + , + e.prototype.isNewIpad = function() { + return void 0 !== this.userAgent && "MacIntel" === navigator.platform && "number" == typeof navigator.maxTouchPoints && 1 < navigator.maxTouchPoints + } + , + e + }(), D = { + cn: "1fz22z22z1nz21z4mz4bz4bz22z1mz19z1jz1mz1ez4az1az22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k", + va: "1fz22z22z1nz21z4mz4bz4bz22z1mz19z1jz1mz1ez4az1gz22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k", + sg: "1fz22z22z1nz21z4mz4bz4bz22z1mz19z1jz1mz1ez4az22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k" + }, j = { + cn: "1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az28z1gz1hz1gz1cz18z1nz1gz4az1az1mz1k", + sg: "1fz22z22z1nz21z4mz4bz4bz21z1ez18z1jz1gz49z1kz1az21z4az19z27z22z1cz1mz24z1cz20z21z1cz18z4az1az1mz1k", + va: "1fz22z22z1nz21z4mz4bz4bz1kz18z1jz1gz24z18z49z1kz1az21z4az19z27z22z1cz1mz24z1cz20z21z1cz18z4az1az1mz1k" + }, I = "5.1.11", P = function() { + function e(e, t) { + this.collector = e, + this.config = t, + this.eventNameWhiteList = ["__bav_page", "__bav_beat", "__bav_page_statistics", "__bav_click", "__bav_page_exposure"], + this.paramsNameWhiteList = ["$inactive", "$inline", "$target_uuid_list", "$source_uuid", "$is_spider", "$source_id", "$is_first_time", "_staging_flag"], + this.regStr = RegExp("^[a-zA-Z0-9][a-z0-9A-Z_.-]{1,255}$") + } + return e.prototype.checkVerify = function(e) { + var t, r, n, i = this; + return !!(e && e.length && (e = e[0]) && (t = e.events, + r = e.header, + t) && t.length) && (n = !0, + t.forEach(function(e) { + e ? (i.checkEventName(e.event) || (n = !1, + e.checkEvent = "\u4E8B\u4EF6\u540D\u4E0D\u80FD\u4EE5 $ or __\u5F00\u5934"), + i.checkEventParams(e.params) || (n = !1, + e.checkParams = "\u5C5E\u6027\u540D\u4E0D\u80FD\u4EE5 $ or __\u5F00\u5934")) : (n = !1, + e.checkEvent = "\u4E8B\u4EF6\u5F02\u5E38") + }), + n = !!this.checkEventParams(r) && n) + } + , + e.prototype.checkEventName = function(e) { + return !!e && this.calculate(e, "event") + } + , + e.prototype.checkEventParams = function(e) { + var t = e; + if ("string" == typeof e && (t = JSON.parse(t)), + Object.keys(t).length) + for (var r in t) + return !(!this.calculate(r, "params") || "string" == typeof t[r] && 1024 < t[r].length && (console.warn("params: " + r + " can not over 1024 byte, please check;"), + 1)); + return !0 + } + , + e.prototype.calculate = function(e, t) { + return -1 !== ("event" === t ? this.eventNameWhiteList : this.paramsNameWhiteList).indexOf(e) || !RegExp("^\\$").test(e) && !RegExp("^__").test(e) || (console.warn(("event" === t ? "event" : "params") + " name: " + e + " can not start with $ or __, pleace check;"), + !1) + } + , + e + }(), A = ((v = J = J || {}).Init = "init", + v.Config = "config", + v.Start = "start", + v.Ready = "ready", + v.UnReady = "un-ready", + v.TokenComplete = "token-complete", + v.TokenStorage = "token-storage", + v.TokenFetch = "token-fetch", + v.TokenError = "token-error", + v.ConfigUuid = "config-uuid", + v.ConfigWebId = "config-webid", + v.ConfigDomain = "config-domain", + v.CustomWebId = "custom-webid", + v.TokenChange = "token-change", + v.TokenReset = "token-reset", + v.ConfigTransform = "config-transform", + v.EnvTransform = "env-transform", + v.SessionReset = "session-reset", + v.SessionResetTime = "session-reset-time", + v.SetSessionId = "set-session-id", + v.Event = "event", + v.Events = "events", + v.EventNow = "event-now", + v.CleanEvents = "clean-events", + v.BeconEvent = "becon-event", + v.SubmitBefore = "submit-before", + v.SubmitScuess = "submit-scuess", + v.SubmitAfter = "submit-after", + v.SubmitError = "submit-error", + v.SubmitVerify = "submit-verify", + v.Stay = "stay", + v.ResetStay = "reset-stay", + v.StayReady = "stay-ready", + v.SetStay = "set-stay", + v.RouteChange = "route-change", + v.RouteReady = "route-ready", + v.Ab = "ab", + v.AbVar = "ab-var", + v.AbAllVars = "ab-all-vars", + v.AbConfig = "ab-config", + v.AbExternalVersion = "ab-external-version", + v.AbVersionChangeOn = "ab-version-change-on", + v.AbVersionChangeOff = "ab-version-change-off", + v.AbOpenLayer = "ab-open-layer", + v.AbCloseLayer = "ab-close-layer", + v.AbReady = "ab-ready", + v.AbComplete = "ab-complete", + v.AbTimeout = "ab-timeout", + v.Profile = "profile", + v.ProfileSet = "profile-set", + v.ProfileSetOnce = "profile-set-once", + v.ProfileUnset = "profile-unset", + v.ProfileIncrement = "profile-increment", + v.ProfileAppend = "profile-append", + v.ProfileClear = "profile-clear", + v.Autotrack = "autotrack", + v.AutotrackReady = "autotrack-ready", + v.CepReady = "cep-ready", + v.TracerReady = "tracer-ready", + v.sessionRecord = "session-record", + v.SessionRecordStart = "session-record-start", + v.SessionRecordPause = "session-record-pause", + v.SessionRecordEnd = "session-record-end", + v.SessionRecordReport = "session-record-report", + v.DestoryInstance = "destory-instance", + v.VisualCollectReady = "visual-collect-ready", + v.VisualApiReady = "visual-api-ready", + v.VisualApiUpdate = "visual-api-update", + (b = S = S || {}).DEBUGGER_MESSAGE = "debugger-message", + b.DEBUGGER_MESSAGE_SDK = "debugger-message-sdk", + b.DEBUGGER_MESSAGE_FETCH = "debugger-message-fetch", + b.DEBUGGER_MESSAGE_FETCH_RESULT = "debugger-message-fetch-result", + b.DEBUGGER_MESSAGE_EVENT = "debugger-message-event", + b.DEVTOOL_WEB_READY = "devtool-web-ready", + J), R = void 0, t = (new Date).getTimezoneOffset(), z = parseInt("" + -t / 60, 10), B = 60 * t, U = function() { + function e(e, t) { + this.is_first_time = !0, + this.configPersist = !1, + this.initConfig = t, + this.collect = e; + var r = new C(t.app_id,t.cookie_domain || "",t.cookie_expire || 7776e6).init() + , e = (this.eventCheck = new P(e,t), + "__tea_cache_first_" + t.app_id) + , t = (this.configKey = "__tea_cache_config_" + t.app_id, + this.sessionStorage = new T(!1,"session"), + this.localStorage = new T(!1,"local"), + t.configPersist && (this.configPersist = !0, + this.storage = 1 === t.configPersist ? this.sessionStorage : this.localStorage), + this.localStorage.getItem(e)); + t && 1 == t ? this.is_first_time = !1 : (this.is_first_time = !0, + this.localStorage.setItem(e, "1")), + this.envInfo = { + user: { + user_unique_id: R, + user_type: R, + user_id: R, + user_is_auth: R, + user_is_login: R, + device_id: R, + web_id: R, + ip_addr_id: R, + user_unique_id_type: R + }, + header: { + app_id: R, + app_name: R, + app_install_id: R, + install_id: R, + app_package: R, + app_channel: R, + app_version: R, + ab_version: R, + os_name: r.os_name, + os_version: r.os_version, + device_model: r.device_model, + ab_client: R, + traffic_type: R, + client_ip: R, + device_brand: R, + os_api: R, + access: R, + language: r.language, + region: R, + app_language: R, + app_region: R, + creative_id: r.utm.creative_id, + ad_id: r.utm.ad_id, + campaign_id: r.utm.campaign_id, + log_type: R, + rnd: R, + platform: r.platform, + sdk_version: I, + sdk_lib: "js", + province: R, + city: R, + timezone: z, + tz_offset: B, + tz_name: R, + sim_region: R, + carrier: R, + resolution: r.screen_width + "x" + r.screen_height, + browser: r.browser, + browser_version: r.browser_version, + referrer: r.referrer, + referrer_host: r.referrer_host, + width: r.screen_width, + height: r.screen_height, + screen_width: r.screen_width, + screen_height: r.screen_height, + utm_term: r.utm.utm_term, + utm_content: r.utm.utm_content, + utm_source: r.utm.utm_source, + utm_medium: r.utm.utm_medium, + utm_campaign: r.utm.utm_campaign, + tracer_data: JSON.stringify(r.utm.tracer_data), + custom: {}, + wechat_unionid: R, + wechat_openid: R + } + }, + this.ab_version = "", + this.evtParams = {}, + this.reportErrorCallback = function() {} + , + this.isLast = !1, + this.setCustom(r), + this.initDomain(), + this.initABData() + } + return e.prototype.initDomain = function() { + var e = this.initConfig.channel_domain; + e ? this.domain = e : (e = this.initConfig.channel, + this.domain = l(j[e])) + } + , + e.prototype.setDomain = function(e) { + this.domain = e + } + , + e.prototype.getDomain = function() { + return this.domain + } + , + e.prototype.initABData = function() { + var e, t = "__tea_sdk_ab_version_" + this.initConfig.app_id, r = null; + r = this.initConfig.ab_cross ? (e = this.localStorage.getCookie(t, this.initConfig.ab_cookie_domain)) ? JSON.parse(e) : null : this.localStorage.getItem(t), + this.setAbCache(r) + } + , + e.prototype.setAbCache = function(e) { + this.ab_cache = e + } + , + e.prototype.getAbCache = function() { + return this.ab_cache + } + , + e.prototype.setAbVersion = function(e) { + this.ab_version = e + } + , + e.prototype.getAbVersion = function() { + return this.ab_version + } + , + e.prototype.clearAbCache = function() { + this.ab_version = "", + this.ab_cache = {} + } + , + e.prototype.getUrl = function(e) { + var t = ""; + switch (e) { + case "event": + t = "/list"; + break; + case "webid": + t = "/webid"; + break; + case "tobid": + t = "/tobid" + } + return e = "", + this.initConfig.caller && (e = "?sdk_version=5.1.11&sdk_name=web&app_id=" + this.initConfig.app_id + "&caller=" + this.initConfig.caller), + "" + this.getDomain() + t + e + } + , + e.prototype.setCustom = function(e) { + if (e && e.latest_data && e.latest_data.isLast) + for (var t in delete e.latest_data.isLast, + this.isLast = !0, + e.latest_data) + this.envInfo.header.custom[t] = e.latest_data[t] + } + , + e.prototype.set = function(e) { + var t = this; + Object.keys(e).forEach(function(r) { + var n, i, o; + void 0 !== e[r] && null !== e[r] || t.delete(r); + try { + t.eventCheck.calculate(r, "config") + } catch (e) {} + "traffic_type" === r && t.isLast && (t.envInfo.header.custom.$latest_traffic_source_type = e[r]), + "evtParams" === r ? t.evtParams = a({}, t.evtParams || {}, e.evtParams || {}) : "_staging_flag" === r ? t.evtParams = a({}, t.evtParams || {}, { + _staging_flag: e._staging_flag + }) : "reportErrorCallback" === r && "function" == typeof e[r] ? t.reportErrorCallback = e[r] : (o = i = "", + -1 < r.indexOf(".") && (i = (n = r.split("."))[0], + o = n[1]), + i ? "user" === i || "header" === i ? t.envInfo[i][o] = e[r] : t.envInfo.header.custom[o] = e[r] : Object.hasOwnProperty.call(t.envInfo.user, r) ? -1 < ["user_type", "ip_addr_id"].indexOf(r) ? t.envInfo.user[r] = e[r] && Number(e[r]) : -1 < ["user_id", "web_id", "user_unique_id", "user_unique_id_type"].indexOf(r) ? t.envInfo.user[r] = e[r] && String(e[r]) : -1 < ["user_is_auth", "user_is_login"].indexOf(r) ? t.envInfo.user[r] = !!e[r] : "device_id" === r && (t.envInfo.user[r] = e[r]) : Object.hasOwnProperty.call(t.envInfo.header, r) ? t.envInfo.header[r] = e[r] : t.envInfo.header.custom[r] = e[r]) + }) + } + , + e.prototype.get = function(e) { + try { + return e ? "evtParams" === e ? this.evtParams : "reportErrorCallback" === e ? this[e] : Object.hasOwnProperty.call(this.envInfo.user, e) ? this.envInfo.user[e] : Object.hasOwnProperty.call(this.envInfo.header, e) ? this.envInfo.header[e] : JSON.parse(JSON.stringify(this.envInfo[e])) : JSON.parse(JSON.stringify(this.envInfo)) + } catch (e) { + console.log("get config stringify error "), + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + } + , + e.prototype.setStore = function(e) { + try { + var t, r; + this.configPersist && (t = this.storage.getItem(this.configKey) || {}) && Object.keys(e).length && (r = Object.assign(e, t), + this.storage.setItem(this.configKey, r)) + } catch (e) { + console.log("setStore error"), + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + } + , + e.prototype.getStore = function() { + try { + var e; + return this.configPersist && (e = this.storage.getItem(this.configKey) || {}, + Object.keys(e).length) ? e : null + } catch (e) { + return this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }), + null + } + } + , + e.prototype.delete = function(e) { + try { + var t; + this.configPersist && (t = this.storage.getItem(this.configKey) || {}) && Object.hasOwnProperty.call(t, e) && (delete t[e], + this.storage.setItem(this.configKey, t)) + } catch (e) { + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }), + console.log("delete error") + } + } + , + e + }(), M = function() { + function e(e, t) { + this.isLog = t || !1, + this.name = e || "" + } + return e.prototype.info = function(e) { + this.isLog && console.log("%c %s", "color: yellow; background-color: black;", "[AppLog WEB SDK] [instance: " + this.name + "] " + e) + } + , + e.prototype.warn = function(e) { + this.isLog && console.warn("[AppLog WEB SDK] [instance: " + this.name + "] " + e) + } + , + e.prototype.error = function(e) { + this.isLog && console.error("[AppLog WEB SDK] [instance: " + this.name + "] " + e) + } + , + e.prototype.throw = function(e) { + throw this.error(this.name), + Error(e) + } + , + e + }(), G = function() { + function e() { + this.spiderBot = ["Baiduspider", "googlebot", "360Spider", "haosouspider", "YoudaoBot", "Sogou News Spider", "Yisouspider", "Googlebot", "Headless", "Applebot", "Bingbot", "PetalBot"] + } + return e.prototype.checkSpider = function(e) { + var t, r; + return !!e.enable_spider && (!(t = window.navigator.userAgent) || (r = !1, + this.spiderBot.forEach(function(e) { + -1 !== t.indexOf(e) && (r = !0) + }), + r)) + } + , + e + }(), F = function() { + function e(e, t) { + this.collect = e, + this.native = t + } + var t = e.prototype; + return t.bridgeInject = function() { + try { + return !!this.native && (AppLogBridge ? (console.log("AppLogBridge is injected"), + !0) : (console.log("AppLogBridge is not inject"), + !1)) + } catch (e) { + return console.log("AppLogBridge is not inject"), + !1 + } + } + , + t.bridgeReady = function() { + var e = this; + return new Promise(function(t, r) { + try { + e.bridgeInject() ? AppLogBridge.hasStarted(function(e) { + console.log("AppLogBridge is started? : " + e), + e ? t(!0) : r(!1) + }) : r(!1) + } catch (e) { + console.log("AppLogBridge, error:" + JSON.stringify(e.stack)), + r(!1) + } + } + ) + } + , + t.setNativeAppId = function(e) { + try { + AppLogBridge.setNativeAppId(JSON.stringify(e)), + console.log("change bridge appid, event report with appid: " + e) + } catch (e) { + console.error("setNativeAppId error") + } + } + , + t.setConfig = function(e) { + var t = this; + try { + Object.keys(e).forEach(function(r) { + "user_unique_id" === r ? t.setUserUniqueId(e[r]) : e[r] ? t.addHeaderInfo(r, e[r]) : t.removeHeaderInfo(r) + }) + } catch (e) { + console.error("setConfig error") + } + } + , + t.setUserUniqueId = function(e) { + try { + AppLogBridge.setUserUniqueId(e) + } catch (e) { + console.error("setUserUniqueId error") + } + } + , + t.addHeaderInfo = function(e, t) { + try { + AppLogBridge.addHeaderInfo(e, t) + } catch (e) { + console.error("addHeaderInfo error") + } + } + , + t.setHeaderInfo = function(e) { + try { + AppLogBridge.setHeaderInfo(JSON.stringify(e)) + } catch (e) { + console.error("setHeaderInfo error") + } + } + , + t.removeHeaderInfo = function(e) { + try { + AppLogBridge.removeHeaderInfo(e) + } catch (e) { + console.error("removeHeaderInfo error") + } + } + , + t.reportPv = function(e) { + this.onEventV3("predefine_pageview", e) + } + , + t.onEventV3 = function(e, t) { + try { + AppLogBridge.onEventV3(e, t), + this.collect.emit(DebuggerMesssge.DEBUGGER_MESSAGE, { + type: DebuggerMesssge.DEBUGGER_MESSAGE_EVENT, + info: "bridge\u57CB\u70B9\u4E0A\u62A5", + time: Date.now(), + data: [{ + events: [{ + event: e, + params: t + }] + }], + code: 200, + status: "success" + }) + } catch (e) { + console.error("onEventV3 error") + } + } + , + t.profileSet = function(e) { + try { + AppLogBridge.profileSet(e) + } catch (e) { + console.error("profileSet error") + } + } + , + t.profileSetOnce = function(e) { + try { + AppLogBridge.profileSetOnce(e) + } catch (e) { + console.error("profileSetOnce error") + } + } + , + t.profileIncrement = function(e) { + try { + AppLogBridge.profileIncrement(e) + } catch (e) { + console.error("profileIncrement error") + } + } + , + t.profileUnset = function(e) { + try { + AppLogBridge.profileUnset(e) + } catch (e) { + console.error("profileUnset error") + } + } + , + t.profileAppend = function(e) { + try { + AppLogBridge.profileAppend(e) + } catch (e) { + console.error("profileAppend error") + } + } + , + e + }(), N = function() { + function e() {} + return e.prototype.apply = function(e, t) { + var r = this; + this.collect = e, + this.storage = new T(!1,"session"), + this.sessionKey = "__tea_session_id_" + t.app_id, + this.expireTime = t.expireTime || 18e5, + this.disableSession = t.disable_session, + this.disableSessionTimeCheck = t.disable_session_check, + this.disableSession || (this.setSessionId(), + this.collect.on(A.SessionReset, function(e) { + r.resetSessionId(e) + }), + this.collect.on(A.SessionResetTime, function() { + r.updateSessionIdTime() + })) + } + , + e.prototype.updateSessionIdTime = function() { + var e, t = this.storage.getItem(this.sessionKey); + t && t.sessionId && (e = t.timestamp, + Date.now() - e > this.expireTime ? t = { + sessionId: y(), + timestamp: Date.now() + } : t.timestamp = Date.now(), + this.storage.setItem(this.sessionKey, t), + this.resetExpTime()) + } + , + e.prototype.setSessionId = function() { + var e = this + , t = this.storage.getItem(this.sessionKey); + t && t.sessionId ? t.timestamp = Date.now() : t = { + sessionId: y(), + timestamp: Date.now() + }, + this.storage.setItem(this.sessionKey, t), + this.disableSessionTimeCheck || (this.sessionExp = setInterval(function() { + e.checkEXp() + }, this.expireTime)) + } + , + e.prototype.getSessionId = function() { + var e = this.storage.getItem(this.sessionKey); + return !this.disableSession && e && e.sessionId ? e.sessionId : "" + } + , + e.prototype.resetExpTime = function() { + var e = this; + this.sessionExp && (clearInterval(this.sessionExp), + this.sessionExp = setInterval(function() { + e.checkEXp() + }, this.expireTime)) + } + , + e.prototype.resetSessionId = function(e) { + e = { + sessionId: e || y(), + timestamp: Date.now() + }, + this.storage.setItem(this.sessionKey, e) + } + , + e.prototype.checkEXp = function() { + var e = this.storage.getItem(this.sessionKey); + e && e.sessionId && Date.now() - e.timestamp + 30 >= this.expireTime && (e = { + sessionId: y(), + timestamp: Date.now() + }, + this.storage.setItem(this.sessionKey, e)) + } + , + e + }(), H = function() { + function e() { + this.eventLimit = 50, + this.enable_ttwebid = !1, + this.eventCache = [], + this.beconEventCache = [] + } + return e.prototype.apply = function(e, t) { + var r = this + , n = (this.collect = e, + this.config = t, + this.configManager = e.configManager, + this.eventCheck = new P(e,t), + this.cacheStorgae = new T(!0), + this.localStorage = new T(!1), + this.maxReport = t.max_report || 10, + this.reportTime = t.reportTime || t.report_time || 30, + this.timeout = t.timeout || 1e5, + this.enable_ttwebid = t.enable_ttwebid, + this.reportUrl = t.report_url || this.configManager.getUrl("event"), + this.eventKey = "__tea_cache_events_" + this.configManager.get("app_id"), + this.beconKey = "__tea_cache_events_becon_" + this.configManager.get("app_id"), + this.abKey = "__tea_sdk_ab_version_" + this.configManager.get("app_id"), + this.refer_key = "__tea_cache_refer_" + this.configManager.get("app_id"), + this.pageId = y(), + this.collect.on(A.Ready, function() { + r.reportAll(!1) + }), + this.collect.on(A.ConfigDomain, function() { + r.reportUrl = r.configManager.getUrl("event") + }), + this.collect.on(A.Event, function(e) { + r.event(e) + }), + this.collect.on(A.BeconEvent, function(e) { + r.beconEvent(e) + }), + this.collect.on(A.CleanEvents, function() { + r.reportAll(!1) + }), + this.linster()); + this.collect.on(A.DestoryInstance, function() { + n && n() + }) + } + , + e.prototype.linster = function() { + function e() { + n.reportAll(!0) + } + function t() { + "hidden" === document.visibilityState && n.reportAll(!0) + } + var r, n = this; + return window.addEventListener("unload", e, !1), + r = e, + navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/) ? window.addEventListener("pagehide", r, !1) : window.addEventListener("beforeunload", r, !1), + document.addEventListener("visibilitychange", t, !1), + function() { + window.removeEventListener("unload", e), + window.removeEventListener("pagehide", e, !1), + window.removeEventListener("beforeunload", e, !1), + document.removeEventListener("visibilitychange", t, !1) + } + } + , + e.prototype.reportAll = function(e) { + this.report(e), + this.reportBecon() + } + , + e.prototype.event = function(e) { + var t = this; + try { + var r, n = c(e, this.cacheStorgae.getItem(this.eventKey) || []); + this.cacheStorgae.setItem(this.eventKey, n), + this.reportTimeout && clearTimeout(this.reportTimeout), + n.length >= this.maxReport ? this.report(!1) : (r = this.reportTime, + this.reportTimeout = setTimeout(function() { + t.report(!1), + t.reportTimeout = null + }, r)) + } catch (e) { + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + } + , + e.prototype.beconEvent = function(e) { + e = c(e, this.cacheStorgae.getItem(this.beconKey) || []), + this.cacheStorgae.setItem(this.beconKey, e), + this.collect.destroy || this.collect.sdkStop || this.collect.tokenManager.getReady() && this.collect.sdkReady && (this.cacheStorgae.removeItem(this.beconKey), + this.send(this.split(this.merge(e)), !0)) + } + , + e.prototype.reportBecon = function() { + var e; + !this.collect.destroy && !this.collect.sdkStop && this.collect.tokenManager.getReady() && this.collect.sdkReady && (e = this.cacheStorgae.getItem(this.beconKey) || []) && e.length && (this.cacheStorgae.removeItem(this.beconKey), + this.send(this.split(this.merge(e)), !0)) + } + , + e.prototype.report = function(e) { + var t; + !this.collect.destroy && !this.collect.sdkStop && this.collect.tokenManager.getReady() && this.collect.sdkReady && (t = this.cacheStorgae.getItem(this.eventKey) || []).length && (this.cacheStorgae.removeItem(this.eventKey), + this.sliceEvent(t, e)) + } + , + e.prototype.sliceEvent = function(e, t) { + if (e.length > this.eventLimit) + for (var r = 0; r < e.length; r += this.eventLimit) { + var n = e.slice(r, r + this.eventLimit) + , i = this.split(this.merge(n)); + this.send(i, t) + } + else + i = this.split(this.merge(e)), + this.send(i, t) + } + , + e.prototype.handleRefer = function() { + var e, t = ""; + try { + t = (this.config.spa || this.config.autotrack) && (e = this.localStorage.getItem(this.refer_key) || {}).routeChange ? e.refer_key : this.configManager.get("referrer") + } catch (e) { + t = document.referrer + } + return t + } + , + e.prototype.merge = function(e, t) { + var r = this + , n = this.configManager.get() + , i = n.header + , o = n.user + , s = (this.config.enable_pageid && (i.custom.page_id = this.pageId), + i.referrer = this.handleRefer(), + i.custom = JSON.stringify(i.custom), + this.configManager.get("evtParams")) + , c = this.configManager.get("user_unique_id_type") + , n = e.map(function(e) { + try { + Object.keys(s).length && !t && (e.params = a({}, s, e.params)), + c && (e.params.$user_unique_id_type = c); + var n = r.configManager.getAbCache() + , i = o[r.config.ab_user_mode] || o.user_unique_id; + return n && n.uuid && n.uuid === i && r.configManager.getAbVersion() && (e.ab_sdk_version = r.configManager.getAbVersion()), + e.session_id = r.collect.sessionManager.getSessionId(), + e.params = JSON.stringify(e.params), + e + } catch (t) { + return r.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: t.message + }), + e + } + }) + , e = JSON.parse(JSON.stringify({ + events: n, + user: o, + header: i + })) + , n = (e.local_time = Math.floor(Date.now() / 1e3), + e.user_unique_type = this.config.enable_ttwebid ? this.config.user_unique_type : void 0, + e.verbose = 1, + []); + return n.push(e), + n + } + , + e.prototype.split = function(e) { + return e.map(function(e) { + var t = []; + return t.push(e), + t + }) + } + , + e.prototype.send = function(e, t) { + var r = this; + e.length && !this.config.disable_track_event && e.forEach(function(e) { + try { + var n, i = JSON.parse(JSON.stringify(e)), o = (!r.config.filter || (i = r.config.filter(i)) || console.warn("filter must return data !!"), + r.collect.eventFilter && i && ((i = r.collect.eventFilter(i)) || console.warn("filterEvent api must return data !!")), + i || e), s = JSON.parse(JSON.stringify(o)); + r.eventCheck.checkVerify(s), + o.length && (n = !0, + o.forEach(function(e) { + e.events.length || (n = !1) + }), + n && (r.collect.emit(A.SubmitBefore, o), + r.collect.requestManager.useRequest({ + url: r.reportUrl, + data: o, + success: function(e, t) { + e && 0 !== e.e ? (r.collect.emit(A.SubmitError, { + type: "f_data", + eventData: t, + errorCode: e.e, + response: e + }), + r.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_EVENT, + info: "\u57CB\u70B9\u4E0A\u62A5\u5931\u8D25", + time: Date.now(), + data: s, + code: e.e, + failType: "\u6570\u636E\u5F02\u5E38\u5931\u8D25", + status: "fail" + })) : (r.collect.emit(A.SubmitScuess, { + eventData: t, + res: e + }), + r.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_EVENT, + info: "\u57CB\u70B9\u4E0A\u62A5\u6210\u529F", + time: Date.now(), + data: s, + code: 200, + status: "success" + })) + }, + fail: function(e, t) { + r.configManager.get("reportErrorCallback")(e, t), + r.collect.emit(A.SubmitError, { + type: "f_net", + eventData: e, + errorCode: t + }), + r.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_EVENT, + info: "\u57CB\u70B9\u4E0A\u62A5\u7F51\u7EDC\u5F02\u5E38", + time: Date.now(), + data: s, + code: t, + failType: "\u7F51\u7EDC\u5F02\u5E38\u5931\u8D25", + status: "fail" + }) + }, + timeout: r.timeout, + useBeacon: t, + withCredentials: r.enable_ttwebid + }), + r.collect.emit(A.SubmitAfter, o))) + } catch (e) { + console.warn("something error, " + JSON.stringify(e.stack)), + r.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + }) + } + , + e + }(), L = function() { + function e() { + this.cacheToken = {}, + this.enableCookie = !1, + this.enable_ttwebid = !1, + this.enableCustomWebid = !1 + } + return e.prototype.apply = function(e, t) { + var r = this; + this.collect = e, + this.config = t, + this.configManager = this.collect.configManager, + this.storage = new T(!1), + this.tokenKey = "__tea_cache_tokens_" + t.app_id, + this.enable_ttwebid = t.enable_ttwebid, + this.enableCustomWebid = t.enable_custom_webid, + this.collect.on(A.ConfigUuid, function(e) { + r.setUuid(e) + }), + this.collect.on(A.ConfigWebId, function(e) { + r.setWebId(e) + }), + this.enableCookie = t.cross_subdomain, + this.expiresTime = t.cookie_expire || 6048e5, + this.cookieDomain = t.cookie_domain || "", + this.checkStorage() + } + , + e.prototype.checkStorage = function() { + var e, t = this; + this.enableCookie ? (e = this.storage.getCookie(this.tokenKey, this.cookieDomain), + this.cacheToken = e && "string" == typeof e ? JSON.parse(e) : {}) : this.cacheToken = this.storage.getItem(this.tokenKey) || {}, + this.tokenType = this.cacheToken && this.cacheToken._type_ ? this.cacheToken._type_ : "default", + "custom" !== this.tokenType || this.enableCustomWebid ? this.enableCustomWebid ? this.collect.on(A.CustomWebId, function() { + t.tokenReady = !0, + t.collect.emit(A.TokenComplete) + }) : this.checkEnv() || (this.enable_ttwebid ? this.completeTtWid(this.cacheToken) : this.check()) : this.remoteWebid() + } + , + e.prototype.check = function() { + this.cacheToken && this.cacheToken.web_id ? this.complete(this.cacheToken) : this.config.disable_webid ? this.complete({ + web_id: m(), + user_unique_id: this.configManager.get("user_unique_id") || m() + }) : this.remoteWebid() + } + , + e.prototype.checkEnv = function() { + var e = window.navigator.userAgent; + return (-1 !== e.indexOf("miniProgram") || -1 !== e.indexOf("MiniProgram")) && !(!(e = p(window.location.href)) || !e.Web_ID || (this.complete({ + web_id: "" + e.Web_ID, + user_unique_id: this.configManager.get("user_unique_id") || "" + e.Web_ID + }), + 0)) + } + , + e.prototype.remoteWebid = function() { + var e = this + , t = this.configManager.getUrl("webid") + , r = { + app_key: this.config.app_key, + app_id: this.config.app_id, + url: location.href, + user_agent: window.navigator.userAgent, + referer: document.referrer, + user_unique_id: "" + }; + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u53D1\u8D77WEBID\u8BF7\u6C42", + logType: "fetch", + level: "info", + time: Date.now(), + data: r + }), + this.collect.requestManager.useRequest({ + url: t, + data: r, + success: function(t) { + var r, n; + t && 0 === t.e ? (n = t.web_id, + e.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "WEBID\u8BF7\u6C42\u6210\u529F", + logType: "fetch", + level: "info", + time: Date.now(), + data: t + })) : (r = m(), + e.collect.configManager.set({ + localWebId: n = r + }), + e.collect.emit(A.TokenError), + e.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "WEBID\u8BF7\u6C42\u8FD4\u56DE\u503C\u5F02\u5E38", + logType: "fetch", + level: "warn", + time: Date.now(), + data: t + }), + e.collect.logger.warn("appid: " + e.config.app_id + " get webid error, use local webid~")), + e.complete({ + web_id: e.configManager.get("web_id") || n, + user_unique_id: e.configManager.get("user_unique_id") || n + }) + }, + fail: function() { + var t = m(); + e.complete({ + web_id: e.configManager.get("web_id") || t, + user_unique_id: e.configManager.get("user_unique_id") || t + }), + e.collect.configManager.set({ + localWebId: t + }), + e.collect.emit(A.TokenError), + e.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "WEBID\u8BF7\u6C42\u7F51\u7EDC\u5F02\u5E38", + logType: "fetch", + level: "error", + time: Date.now(), + data: null + }), + e.collect.logger.warn("appid: " + e.config.app_id + ", get webid error, use local webid~") + }, + timeout: 3e5 + }) + } + , + e.prototype.complete = function(e) { + var t = e.web_id + , r = e.user_unique_id; + e.timestamp = Date.now(), + this.collect.configManager.set({ + web_id: t, + user_unique_id: r + }), + this.setStorage(e), + this.tokenReady = !0, + this.collect.emit(A.TokenComplete) + } + , + e.prototype.completeTtWid = function(e) { + var t = e.user_unique_id || "" + , r = this.configManager.get("user_unique_id"); + (r || t) && this.configManager.set({ + user_unique_id: r || t + }), + this.setStorage(e), + this.tokenReady = !0, + this.collect.emit(A.TokenComplete) + } + , + e.prototype.setUuid = function(e) { + var t, r; + e && -1 === ["null", "undefined", "Null", "None"].indexOf(e) ? (e = String(e), + t = this.configManager.get("user_unique_id"), + r = this.cacheToken && this.cacheToken.user_unique_id, + e === t && e === r || (this.configManager.set({ + user_unique_id: e + }), + this.cacheToken || (this.cacheToken = {}), + this.cacheToken.user_unique_id = e, + this.cacheToken.timestamp = Date.now(), + this.setStorage(this.cacheToken), + this.collect.emit(A.TokenChange, "uuid"), + this.collect.emit(A.SessionReset))) : this.clearUuid() + } + , + e.prototype.clearUuid = function() { + this.config.enable_ttwebid || this.configManager.get("web_id") && this.configManager.get("user_unique_id") !== this.configManager.get("web_id") && (this.configManager.set({ + user_unique_id: this.configManager.get("web_id") + }), + this.cacheToken && this.cacheToken.web_id && (this.cacheToken.user_unique_id = this.cacheToken.web_id, + this.cacheToken.timestamp = Date.now(), + this.setStorage(this.cacheToken)), + this.collect.emit(A.TokenReset, "uuid")) + } + , + e.prototype.setWebId = function(e) { + var t, r; + e && !this.config.enable_ttwebid && (this.cacheToken && this.cacheToken.web_id ? this.cacheToken.web_id !== e && (this.cacheToken.user_unique_id = this.cacheToken.web_id === this.cacheToken.user_unique_id ? e : this.cacheToken.user_unique_id, + this.cacheToken.web_id = e) : (this.cacheToken = {}, + this.cacheToken.web_id = e, + this.cacheToken.user_unique_id = e), + this.cacheToken.timestamp = Date.now(), + t = this.configManager.get("web_id"), + (r = this.configManager.get("user_unique_id")) && r !== t || (this.configManager.set({ + user_unique_id: e + }), + this.collect.emit(A.TokenChange, "uuid")), + t !== e && (this.configManager.set({ + web_id: e + }), + this.collect.emit(A.TokenChange, "webid")), + this.setStorage(this.cacheToken)) + } + , + e.prototype.setStorage = function(e) { + e._type_ = this.enableCustomWebid ? "custom" : "default", + delete e["diss".split("").reverse().join("")], + this.enableCookie || this.enable_ttwebid ? (this.storage.setCookie(this.tokenKey, e, this.expiresTime, this.cookieDomain), + this.enable_ttwebid && (delete e.web_id, + this.storage.setItem(this.tokenKey, e))) : this.storage.setItem(this.tokenKey, e), + this.cacheToken = e + } + , + e.prototype.getReady = function() { + return this.tokenReady + } + , + e.prototype.getTobId = function() { + var e = this; + return new Promise(function(t) { + e.collect.requestManager.useRequest({ + url: e.configManager.getUrl("tobid"), + data: { + app_id: e.config.app_id, + user_unique_id: e.configManager.get("user_unique_id"), + web_id: e.configManager.get("web_id"), + user_unique_id_type: e.configManager.get("user_unique_id_type") + }, + success: function(e) { + e && 0 === e.e ? t(e.tobid) : t("") + }, + fail: function() { + t("") + }, + time: 3e4, + withCredentials: e.enable_ttwebid + }) + } + ) + } + , + e + }(), K = function() { + function e(e, t) { + this.collector = e, + this.config = t, + this.requestType = t.request_type || "xhr", + this.supportBeacon = !(!window.navigator || !window.navigator.sendBeacon), + this.errorCode = { + NO_URL: 4001, + IMG_ON: 4e3, + IMG_CATCH: 4002, + BEACON_FALSE: 4003, + XHR_ON: 500, + RESPONSE: 5001, + TIMEOUT: 5005 + }, + this.customHeader = t.custom_request_header || {} + } + return e.prototype.useFetch = function(e) { + var t = e.url + , r = e.data + , n = e.method + , i = e.success + , o = e.fail + , s = { + "Content-Type": "application/json; charset=utf-8" + }; + if (Object.keys(this.customHeader).length) + for (var a in this.customHeader) + s[a] = this.customHeader[a]; + window.fetch ? fetch(t, { + method: n || "POST", + headers: s, + body: JSON.stringify(r) + }).then(function(e) { + return e.json() + }).then(function(e) { + i && i(e) + }).catch(function(e) { + o && o(r, e) + }) : (this.requestType = "xhr", + console.log("your brwoser not support fetch, use xhr"), + this.useRequest({ + url: t, + data: r, + method: n, + success: i, + fail: o + })) + } + , + e.prototype.useBeacon = function(e) { + var t = e.url + , r = e.data + , n = e.success + , e = e.fail; + window.navigator.sendBeacon(t, JSON.stringify(r)) ? n && n() : e && e(r, this.errorCode.BEACON_FALSE) + } + , + e.prototype.useRequest = function(e) { + var t = this + , r = e.url + , n = e.data + , i = e.method + , o = e.success + , s = e.fail + , a = e.timeout + , c = e.useBeacon + , u = e.withCredentials + , l = e.app_key + , f = e.forceXhr; + if (c && this.supportBeacon) + this.useBeacon({ + url: r, + data: n, + method: i, + success: o, + fail: s + }); + else if ("fetch" !== this.requestType || f) + try { + var p = new XMLHttpRequest + , h = i || "POST"; + if (p.open(h, "" + r, !0), + p.setRequestHeader("Content-Type", "application/json; charset=utf-8"), + l && p.setRequestHeader("X-MCS-AppKey", "" + l), + Object.keys(this.customHeader).length) + for (var d in this.customHeader) + p.setRequestHeader(d, this.customHeader[d]); + u && (p.withCredentials = !0), + a && (p.timeout = a, + p.ontimeout = function() { + s && s(n, t.errorCode.TIMEOUT) + } + ), + p.onload = function() { + if (o) { + var e = null; + if (p.responseText) { + try { + e = JSON.parse(p.responseText) + } catch (t) { + e = {} + } + o(e, n) + } + } + } + , + p.onerror = function() { + p.abort(), + s && s(n, t.errorCode.XHR_ON) + } + , + p.send(JSON.stringify(n)) + } catch (e) {} + else + this.useFetch({ + url: r, + data: n, + method: i, + success: o, + fail: s + }) + } + , + e + }(), q = function() { + function e(e, t) { + var r; + this.devToolReady = !1, + this.devToolOrigin = "*", + this.sendAlready = !1, + this.eventVerifyReady = !1, + t.enable_debug && (r = e.adapters.storage, + this.collect = e, + this.config = t, + this.app_id = t.app_id, + this.cacheStorgae = new r(!1,"session"), + this.eventVerifyInfo = [], + this.sdk_type = I.includes("tob") ? "tob" : "inner", + this.filterEvent = ["__bav_page", "__bav_beat", "__bav_page_statistics", "__bav_click", "__bav_page_exposure", "bav2b_page", "bav2b_beat", "bav2b_page_statistics", "bav2b_click", "bav2b_page_exposure", "_be_active", "predefine_pageview", "__profile_set", "__profile_set_once", "__profile_increment", "__profile_unset", "__profile_append", "predefine_page_alive", "predefine_page_close", "abtest_exposure"], + this.load()) + } + return e.prototype.loadScript = function(e) { + try { + var t = document.createElement("script"); + t.src = e, + t.onerror = function() { + console.log("load DevTool render fail") + } + , + t.onload = function() { + console.log("load DevTool render success") + } + , + document.getElementsByTagName("body")[0].appendChild(t) + } catch (e) { + console.log("devTool load fail, " + e.message) + } + } + , + e.prototype.parseUrl = function() { + var e = {}; + try { + var t = window.location.href.split("?")[1].split("&"); + t.length && t.forEach(function(t) { + t = t.split("="), + e[decodeURIComponent(t[0])] = decodeURIComponent(t[1]) + }) + } catch (e) {} + return e + } + , + e.prototype.load = function() { + var e, t, r; + return e = this, + r = function() { + var e; + return function(e, t) { + var r, n, i, o = { + label: 0, + sent: function() { + if (1 & i[0]) + throw i[1]; + return i[1] + }, + trys: [], + ops: [] + }, s = { + next: a(0), + throw: a(1), + return: a(2) + }; + return "function" == typeof Symbol && (s[Symbol.iterator] = function() { + return this + } + ), + s; + function a(s) { + return function(a) { + return function(s) { + if (r) + throw TypeError("Generator is already executing."); + for (; o; ) + try { + if (r = 1, + n && (i = 2 & s[0] ? n.return : s[0] ? n.throw || ((i = n.return) && i.call(n), + 0) : n.next) && !(i = i.call(n, s[1])).done) + return i; + switch (n = 0, + (s = i ? [2 & s[0], i.value] : s)[0]) { + case 0: + case 1: + i = s; + break; + case 4: + return o.label++, + { + value: s[1], + done: !1 + }; + case 5: + o.label++, + n = s[1], + s = [0]; + continue; + case 7: + s = o.ops.pop(), + o.trys.pop(); + continue; + default: + if (!(i = 0 < (i = o.trys).length && i[i.length - 1]) && (6 === s[0] || 2 === s[0])) { + o = 0; + continue + } + if (3 === s[0] && (!i || s[1] > i[0] && s[1] < i[3])) + o.label = s[1]; + else if (6 === s[0] && o.label < i[1]) + o.label = i[1], + i = s; + else { + if (!(i && o.label < i[2])) { + i[2] && o.ops.pop(), + o.trys.pop(); + continue + } + o.label = i[2], + o.ops.push(s) + } + } + s = t.call(e, o) + } catch (e) { + s = [6, e], + n = 0 + } finally { + r = i = 0 + } + if (5 & s[0]) + throw s[1]; + return { + value: s[0] ? s[1] : void 0, + done: !0 + } + }([s, a]) + } + } + }(this, function(t) { + switch (t.label) { + case 0: + if (t.trys.push([0, 2, , 3]), + (e = this.parseUrl()).open_devtool_web && e.app_id) { + if (parseInt(e.app_id) !== this.app_id) + return [2] + } else if (!this.getStorage()) + return [2]; + return this.loadBaseInfo(), + this.loadHook(), + this.setStorage(), + this.addLintener(), + this.loadDebuggerModule(), + this.loadDevTool(), + [4, this.fetchEventInfo()]; + case 1: + return e = t.sent(), + this.sendData("devtool:web:verify", e.verifyStatus), + this.eventVerifyInfo = e.data, + [3, 3]; + case 2: + return console.log("debug fail, " + t.sent().message), + [3, 3]; + case 3: + return [2] + } + }) + } + , + new (t = void 0, + t = Promise)(function(n, i) { + function o(e) { + try { + a(r.next(e)) + } catch (e) { + i(e) + } + } + function s(e) { + try { + a(r.throw(e)) + } catch (e) { + i(e) + } + } + function a(e) { + e.done ? n(e.value) : new t(function(t) { + t(e.value) + } + ).then(o, s) + } + a((r = r.apply(e, [])).next()) + } + ) + } + , + e.prototype.getStorage = function() { + var e = this.cacheStorgae.getItem("__applog_devtool_web"); + return e && parseInt(e) === this.app_id + } + , + e.prototype.setStorage = function() { + this.cacheStorgae.setItem("__applog_devtool_web", this.app_id) + } + , + e.prototype.loadDevTool = function() { + this.loadScript("https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/devtool/debug-web.0.0.2.js") + } + , + e.prototype.loadBaseInfo = function() { + var e = this; + this.info = [{ + title: "\u57FA\u672C\u4FE1\u606F", + type: 1, + infoName: { + app_id: this.config.app_id, + channel: this.config.channel, + \u4E0A\u62A5\u57DF\u540D: this.collect.configManager.getDomain(), + SDK\u7248\u672C: I, + SDK\u5F15\u5165\u65B9\u5F0F: "npm" + } + }, { + title: "\u7528\u6237\u4FE1\u606F", + type: 2, + infoName: { + uuid: this.collect.configManager.get("user").user_unique_id || "", + web_id: this.collect.configManager.get("user").web_id || "", + ssid: "\u70B9\u51FB\u83B7\u53D6SSID" + } + }, { + title: "\u516C\u5171\u53C2\u6570\u4FE1\u606F", + type: 2, + infoName: { + \u6D4F\u89C8\u5668: this.collect.configManager.get("browser"), + \u6D4F\u89C8\u5668\u7248\u672C: this.collect.configManager.get("browser_version"), + \u5E73\u53F0: this.collect.configManager.get("platform"), + \u8BBE\u5907\u578B\u53F7: this.collect.configManager.get("device_model"), + \u64CD\u4F5C\u7CFB\u7EDF: this.collect.configManager.get("os_name"), + \u64CD\u4F5C\u7CFB\u7EDF\u7248\u672C: this.collect.configManager.get("os_version"), + \u5C4F\u5E55\u5206\u8FA8\u7387: this.collect.configManager.get("resolution"), + \u6765\u6E90: this.collect.configManager.get("referrer"), + \u81EA\u5B9A\u4E49\u4FE1\u606F: "" + } + }, { + title: "\u914D\u7F6E\u4FE1\u606F", + type: 3, + infoName: { + \u5168\u57CB\u70B9: !!this.config.autotrack, + \u505C\u7559\u65F6\u957F: !!this.config.enable_stay_duration + } + }, { + title: "A/B\u914D\u7F6E\u4FE1\u606F", + type: 4, + infoName: { + "A/B\u5B9E\u9A8C": !!this.config.enable_ab_test + } + }, { + title: "\u5BA2\u6237\u7AEF\u4FE1\u606F", + type: 3, + infoName: { + \u6253\u901A\u5F00\u5173: !!this.config.Native + } + }], + this.log = [], + this.event = [], + this.collect.on(A.Ready, function() { + e.info[1].infoName.uuid = e.collect.configManager.get("user").user_unique_id, + e.info[1].infoName.web_id = e.collect.configManager.get("user").web_id, + e.info[2].infoName["\u81EA\u5B9A\u4E49\u4FE1\u606F"] = JSON.stringify(e.collect.configManager.get("custom")), + e.config.enable_ab_test && (e.info[4].infoName["\u5DF2\u66DD\u5149VID"] = e.collect.configManager.getAbVersion(), + e.info[4].infoName["A/B\u57DF\u540D"] = e.config.ab_channel_domain || l(D[e.config.channel]), + e.info[4].infoName["\u5168\u90E8\u914D\u7F6E"] = e.collect.configManager.getAbData()), + e.config.Native && (e.info[5].infoName["\u662F\u5426\u6253\u901A"] = !!e.collect.bridgeReport) + }) + } + , + e.prototype.loadHook = function() { + var e = this; + this.collect.stop(), + this.collect.on(S.DEBUGGER_MESSAGE, function(t) { + switch (t.type) { + case S.DEBUGGER_MESSAGE_SDK: + var r = { + time: t.time, + type: t.logType || "sdk", + level: t.level, + name: t.info, + show: !0, + levelShow: !0, + needDesc: !!t.data + }; + return t.data && (r.desc = { + content: JSON.stringify(t.data) + }), + e.updateLog(r), + t.secType && "AB" === t.secType ? (e.info[4].infoName["\u5DF2\u66DD\u5149VID"] = e.collect.configManager.getAbVersion(), + e.info[4].infoName["\u5168\u90E8\u914D\u7F6E"] = e.collect.configManager.getAbData()) : "USER" === t.secType && (e.info[1].infoName.uuid = e.collect.configManager.get("user").user_unique_id, + e.info[1].infoName.web_id = e.collect.configManager.get("user").web_id), + void e.updateInfo(); + case S.DEBUGGER_MESSAGE_EVENT: + if (t.data && t.data.length) { + var r = t.data[0] + , n = r.events + , i = r.header; + if (i.custom = JSON.parse(i.custom), + !n.length) + return; + n.forEach(function(r) { + r.checkShow = !0, + r.searchShow = !0, + r.type = -1 !== e.filterEvent.indexOf(r.event) ? "sdk" : "cus", + r.type = e.collect.bridgeReport ? "bridge" : r.type, + r.params = JSON.parse(r.params), + "fail" === t.status && (r.info = { + message: "code: " + t.code + "\uFF0C msg: " + t.failType + }, + r.failType = t.failType); + var n = !1 + , i = !1 + , o = []; + e.eventVerifyInfo && e.eventVerifyInfo.length && (e.eventVerifyInfo.forEach(function(e) { + e.eventStatus = !1 + }), + e.eventVerifyInfo.forEach(function(t) { + r.event === t.name && (n = i = !0, + r.verifyStatus = t.status, + Object.keys(r.params).forEach(function(n) { + var s; + "event_index" !== n && ((s = {}).paramsKey = n, + s.paramsKeyValue = r.params["" + n], + s.paramsStatus = !1, + s.paramsStatusInfo = "\u5C5E\u6027\u672A\u5F55\u5165", + t.params.forEach(function(t) { + n === t.name && (t.checked = !0, + typeof r.params["" + n] !== e.formatParamsType(t.value_type) ? s.paramsStatusInfo = "\u5C5E\u6027\u7C7B\u578B\u9519\u8BEF\uFF0C\u5E94\u4E3A" + e.formatParamsType(t.value_type) : (s.paramsStatus = !0, + s.paramsStatusInfo = "")) + }), + o.push(s), + s.paramsStatusInfo) && (i = !1) + }), + t.params.forEach(function(e) { + e.checked || (i = !1, + o.push({ + paramsKey: e.name, + paramsStatus: !1, + paramsStatusInfo: "\u7F3A\u5C11\u5C5E\u6027" + e.name + })) + })) + })), + r.reportStatus = "success" === t.status, + r.paramsInfo = o, + r.eventStatus = i && "success" === t.status, + r.eventRecord = n + }), + e.updateEvent(r) + } + return + } + }) + } + , + e.prototype.formatParamsType = function(e) { + switch (e) { + case 0: + return "string"; + case 1: + case 2: + return "number"; + case 3: + return "boolean" + } + } + , + e.prototype.fetchEventInfo = function() { + var e = this; + try { + return new Promise(function(t) { + var r = l("1fz22z22z1nz21z4mz4bz4bz18z1nz1nz1jz1mz1ez1fz1mz1kz1cz4az19z27z22z1cz1bz18z1lz1az1cz4az1lz1cz22z4bz18z1nz1nz1jz1mz1ez1bz1cz24z22z1mz1mz1jz21z4bz1mz1nz1cz1lz18z1nz1gz4bz24z4dz4bz18z1nz1nz16z1jz1mz1ez16z1kz1cz22z18") + "?app_id=" + e.app_id + "&t=" + e.sdk_type + "&nc=false"; + e.collect.requestManager.useRequest({ + url: r, + method: "GET", + success: function(r) { + e.eventVerifyReady = !0, + e.collect.reStart(), + t({ + data: r.data, + verifyStatus: !0 + }) + }, + fail: function() { + e.eventVerifyReady = !0, + e.collect.reStart(), + t({ + data: [], + verifyStatus: !1 + }) + }, + timeout: 3e3 + }) + } + ) + } catch (e) { + return { + data: [], + verifyStatus: !1 + } + } + } + , + e.prototype.addLintener = function() { + var e = this; + window.addEventListener("message", function(t) { + if (t.origin === location.origin) { + if (t && t.data && "devtool:web:ready" === t.data.type) { + if (e.devToolOrigin = t.origin, + e.devToolReady = !0, + e.sendAlready) + return; + e.sendData("devtool:web:init", { + info: e.info, + log: e.log, + event: e.event, + appid: e.app_id + }), + e.sendAlready = !0 + } + t && t.data && "devtool:web:ssid" === t.data.type && e.collect.getToken(function(t) { + e.info[1].infoName.ssid = t.tobid, + e.updateInfo() + }), + t && t.data && t.data.type + } + }) + } + , + e.prototype.sendData = function(e, t) { + try { + (window.opener || window.parent).postMessage({ + type: e, + payload: t + }, this.devToolOrigin) + } catch (e) {} + } + , + e.prototype.updateInfo = function() { + this.devToolReady && this.sendData("devtool:web:info", this.info) + } + , + e.prototype.updateLog = function(e) { + this.devToolReady ? this.sendData("devtool:web:log", e) : this.log.push(e) + } + , + e.prototype.updateEvent = function(e) { + this.devToolReady || this.eventVerifyReady ? this.sendData("devtool:web:event", e) : this.event.push(e) + } + , + e.prototype.loadDebuggerModule = function() { + var e = document.head || document.getElementsByTagName("head")[0] + , t = document.createElement("style") + , e = (t.appendChild(document.createTextNode("#debugger-applog-web {\n position: fixed;\n width: 50px;\n height: 50px;\n background-image: url('https://lf-cdn-tos.bytescm.com/obj/static/log-sdk/collect/devtool/applog.png');;\n bottom: 5%;\n right: 10%;\n cursor: pointer;\n z-index:100;\n background-size: 50px;\n }")), + e.appendChild(t), + document.createElement("div")) + , t = (e.innerHTML = '
    ', + document.createElement("div")); + t.innerHTML = '
    ', + document.getElementsByTagName("body")[0].appendChild(e), + document.getElementsByTagName("body")[0].appendChild(t), + document.getElementById("debugger-applog-web").addEventListener("click", function() { + (window.opener || window.parent).postMessage({ + type: "devtool:web:open-draw" + }, location.origin) + }) + } + , + e + }(), V = { + autotrack: { + src: { + cn: "https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/5.0/plugin/autotrack.js", + sg: "https://sf16-scmcdn-sg.ibytedtos.com/obj/static-sg/log-sdk/collect/5.0/plugin/autotrack.js", + va: "https://sf16-scmcdn-va.ibytedtos.com/obj/static-us/log-sdk/collect/5.0/plugin/autotrack.js" + }, + object: "LogAutoTrack" + }, + ab: { + src: { + cn: "https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/5.0/plugin/ab.js", + sg: "https://sf16-scmcdn-sg.ibytedtos.com/obj/static-sg/log-sdk/collect/5.0/plugin/ab.js", + va: "https://sf16-scmcdn-va.ibytedtos.com/obj/static-us/log-sdk/collect/5.0/plugin/ab.js" + }, + object: "LogAb" + }, + stay: { + src: { + cn: "https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/5.0/plugin/stay.js", + sg: "https://sf16-scmcdn-sg.ibytedtos.com/obj/static-sg/log-sdk/collect/5.0/plugin/stay.js", + va: "https://sf16-scmcdn-va.ibytedtos.com/obj/static-us/log-sdk/collect/5.0/plugin/stay.js" + }, + object: "LogStay" + }, + route: { + src: { + cn: "https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/5.0/plugin/route.js", + sg: "https://sf16-scmcdn-sg.ibytedtos.com/obj/static-sg/log-sdk/collect/5.0/plugin/route.js", + va: "https://sf16-scmcdn-va.ibytedtos.com/obj/static-us/log-sdk/collect/5.0/plugin/route.js" + }, + object: "LogRoute" + }, + cep: { + src: { + cn: "https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/5.0/plugin/cep.js", + sg: "https://sf16-scmcdn-sg.ibytedtos.com/obj/static-sg/log-sdk/collect/5.0/plugin/cep.js", + va: "https://sf16-scmcdn-va.ibytedtos.com/obj/static-us/log-sdk/collect/5.0/plugin/cep.js" + }, + object: "LogCep" + }, + tracer: { + src: { + cn: "https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/5.0/plugin/tracer.js", + sg: "https://sf16-scmcdn-sg.ibytedtos.com/obj/static-sg/log-sdk/collect/5.0/plugin/tracer.js", + va: "https://sf16-scmcdn-va.ibytedtos.com/obj/static-us/log-sdk/collect/5.0/plugin/tracer.js" + }, + object: "LogTracer" + }, + retry: { + src: { + cn: "https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/5.0/plugin/retry.js", + sg: "https://sf16-scmcdn-sg.ibytedtos.com/obj/static-sg/log-sdk/collect/5.0/plugin/retry.js", + va: "https://sf16-scmcdn-va.ibytedtos.com/obj/static-us/log-sdk/collect/5.0/plugin/retry.js" + }, + object: "LogRetry" + }, + visual: { + src: { + cn: "https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/5.0/plugin/visual.js", + sg: "https://sf16-scmcdn-sg.ibytedtos.com/obj/static-sg/log-sdk/collect/5.0/plugin/visual.js", + va: "https://sf16-scmcdn-va.ibytedtos.com/obj/static-us/log-sdk/collect/5.0/plugin/visual.js" + }, + object: "LogVisual" + } + }, W = ["et", "profile", "heartbeat", "monitor"], J = function() { + function e(e) { + this.disableAutoPageView = !1, + this.bridgeReport = !1, + this.staging = !1, + this.pluginInstances = [], + this.sended = !1, + this.started = !1, + this.destroy = !1, + this.sdkReady = !1, + this.adapters = {}, + this.loadType = "base", + this.sdkStop = !1, + this.name = e, + this.hook = new x, + this.remotePlugin = new Map, + this.Types = A, + this.adapters.storage = T + } + return e.usePlugin = function(t, r, n) { + if (r) { + for (var i = !1, o = 0, s = e.plugins.length; o < s; o++) + if (e.plugins[o].name === r) { + e.plugins[o].plugin = t, + e.plugins[o].options = n || {}, + i = !0; + break + } + i || e.plugins.push({ + name: r, + plugin: t, + options: n + }) + } else + e.plugins.push({ + plugin: t + }) + } + , + e.prototype.usePlugin = function(e, t, r) { + e && ("full" === this.loadType && W.includes(e) ? console.info("your sdk version has " + e + " plugin already ~") : t ? "string" == typeof t ? this.remotePlugin.get(e) || this.remotePlugin.set(e, { + src: t, + call: r + }) : this.remotePlugin.get(e) || this.remotePlugin.set(e, { + instance: t + }) : this.remotePlugin.get(e) || this.remotePlugin.set(e, "sdk")) + } + , + e.prototype.init = function(t) { + var r, n = this; + this.logger = new M(this.name,t.log), + this.inited ? this.logger.warn("[instance: " + this.name + "], every instance's api: init, can be call only one time!") : t && u(t) ? t.app_id && "number" == typeof (r = t.app_id) && !isNaN(r) ? t.app_key && "string" != typeof t.app_key ? this.logger.warn("app_key param is error, must be string, please check!") : (t.channel_domain || -1 !== ["cn", "sg", "va"].indexOf(t.channel) || (this.logger.warn("channel must be `cn`, `sg`,`va` !"), + t.channel = "cn"), + this.spider = new G, + this.spider.checkSpider(t) ? this.logger.warn("your env may be a spider, can not report!") : (this.appBridge = new F(this,t.enable_native), + this.requestManager = new K(this,t), + this.bridgeReport = this.appBridge.bridgeInject(), + this.configManager = new U(this,t), + this.debugger = new q(this,t), + this.initConfig = t, + this.emit(A.Init), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u6267\u884CINIT", + data: t, + level: "info", + time: Date.now() + }), + this.destroy = !1, + t.disable_auto_pv && (this.disableAutoPageView = !0), + this.bridgeReport || (this.configManager.set({ + app_id: t.app_id + }), + this.eventManager = new H, + this.tokenManager = new L, + this.sessionManager = new N, + Promise.all([new Promise(function(e) { + n.once(A.TokenComplete, function() { + e(!0) + }) + } + ), new Promise(function(e) { + n.once(A.Start, function() { + e(!0) + }) + } + )]).then(function() { + try { + e.plugins.reduce(function(e, t) { + var r = t.plugin + , t = t.options + , t = Object.assign(n.initConfig, t) + , r = new r; + return r.apply(n, t), + e.push(r), + e + }, n.pluginInstances) + } catch (e) { + console.warn("load plugin error, " + e.message), + n.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + n.sdkReady = !0, + n.emit(A.Ready), + n.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u521D\u59CB\u5316\u5B8C\u6210", + time: Date.now(), + level: "info", + data: n.configManager.get("user") + }), + n.logger.info("appid: " + t.app_id + ", userInfo:" + JSON.stringify(n.configManager.get("user"))), + n.logger.info("appid: " + t.app_id + ", sdk is ready, version type is " + n.loadType + ", version is " + I + ", you can report now !!!"), + t.disable_auto_pv && (n.disableAutoPageView = !0); + try { + "full" === n.loadType && (t.enable_ab_test || t.autotrack) && (window.opener || window.parent).postMessage("[tea-sdk]ready", "*") + } catch (e) { + n.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + n.pageView(), + n.on(A.TokenChange, function(e) { + "webid" === e && n.pageView(), + n.logger.info("appid: " + t.app_id + " token change, new userInfo:" + JSON.stringify(n.configManager.get("user"))), + n.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u8BBE\u7F6E\u4E86\u7528\u6237\u4FE1\u606F", + time: Date.now(), + secType: "USER", + level: "info", + data: n.configManager.get("user") + }) + }), + n.on(A.TokenReset, function() { + n.logger.info("appid: " + t.app_id + " token reset, new userInfo:" + JSON.stringify(n.configManager.get("user"))), + n.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u91CD\u7F6E\u4E86\u7528\u6237\u4FE1\u606F", + time: Date.now(), + secType: "USER", + level: "info", + data: n.configManager.get("user") + }) + }), + n.on(A.RouteChange, function(e) { + e.init || t.disable_route_report || n.pageView() + }) + }), + this.tokenManager.apply(this, t), + this.eventManager.apply(this, t), + this.sessionManager.apply(this, t)), + this.inited = !0)) : this.logger.warn("app_id param is error, must be number, please check!") : this.logger.warn("init params error,please check!") + } + , + e.prototype.config = function(e) { + var t, r; + this.inited ? e && u(e) ? this.bridgeReport ? this.appBridge.setConfig(e) : (e._staging_flag && 1 === e._staging_flag && (this.staging = !0), + e.disable_auto_pv && (this.disableAutoPageView = !0, + delete e.disable_auto_pv), + t = a({}, e), + r = this.initConfig.configPersist || this.initConfig.config_persist || !1, + this.initConfig && r && ((r = this.configManager.getStore()) && (t = Object.assign(r, e)), + this.configManager.setStore(e)), + t.web_id, + t.user_unique_id, + r = function(e, t) { + var r = {}; + for (i in e) + Object.prototype.hasOwnProperty.call(e, i) && 0 > t.indexOf(i) && (r[i] = e[i]); + if (null != e && "function" == typeof Object.getOwnPropertySymbols) + for (var n = 0, i = Object.getOwnPropertySymbols(e); n < i.length; n++) + 0 > t.indexOf(i[n]) && (r[i[n]] = e[i[n]]); + return r + }(t, ["web_id", "user_unique_id"]), + this.configManager.set(r), + t.hasOwnProperty("web_id") && this.emit(A.ConfigWebId, t.web_id), + t.hasOwnProperty("user_unique_id") && this.emit(A.ConfigUuid, t.user_unique_id), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u6267\u884CCONFIG", + level: "info", + time: Date.now(), + data: t + })) : console.warn("config params is error, please check") : console.warn("config must be use after function init") + } + , + e.prototype.setUserUniqueID = function(e) { + this.config({ + user_unique_id: e + }) + } + , + e.prototype.setHeaderInfo = function(e, t) { + var r = {}; + r[e] = t, + this.config(r) + } + , + e.prototype.removeHeaderInfo = function(e) { + var t = {}; + t[e] = void 0, + this.config(t) + } + , + e.prototype.setDomain = function(e) { + this.configManager && this.configManager.setDomain(e), + this.emit(A.ConfigDomain) + } + , + e.prototype.getConfig = function(e) { + return this.configManager.get(e) + } + , + e.prototype.send = function() { + this.start() + } + , + e.prototype.start = function() { + this.inited && !this.sended && (this.sended = !0, + this.started = !0, + this.emit(A.Start), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u6267\u884CSTART", + level: "info", + time: Date.now() + }), + this.bridgeReport) && (this.pageView(), + this.emit(A.Ready)) + } + , + e.prototype.event = function(e, t) { + var r = this; + try { + var n = []; + if (Array.isArray(e)) + e.forEach(function(e) { + (e = r.processEvent(e[0], e[1] || {})) && n.push(e) + }); + else { + var i = this.processEvent(e, t); + if (!i) + return; + n.push(i) + } + this.bridgeReport ? n.forEach(function(e) { + var t = e.event + , e = e.params; + r.appBridge.onEventV3(t, JSON.stringify(e)) + }) : n.length && (this.emit(A.Event, n), + this.emit(A.SessionResetTime)) + } catch (e) { + this.logger.warn("something error, please check"), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + } + , + e.prototype.beconEvent = function(e, t) { + var r; + Array.isArray(e) ? console.warn("beconEvent not support batch report, please check") : (r = [], + (e = this.processEvent(e, t || {})) && (r.push(e), + r.length) && (this.emit(A.BeconEvent, r), + this.emit(A.SessionResetTime))) + } + , + e.prototype.beaconEvent = function(e, t) { + this.beconEvent(e, t) + } + , + e.prototype.processEvent = function(e, t) { + void 0 === t && (t = {}); + try { + var r, n, i; + return e ? (/^event\./.test(r = e) && (r = e.slice(6)), + i = void ((n = "object" != typeof (n = t) ? {} : n).profile ? delete n.profile : n.event_index = _ += 1), + n.local_ms ? (i = n.local_ms, + delete n.local_ms) : i = +new Date, + { + event: r, + params: n, + local_time_ms: i, + is_bav: this.initConfig && this.initConfig.autotrack ? 1 : 0 + }) : (console.warn("eventName is null\uFF0C please check"), + null) + } catch (r) { + return this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: r.message + }), + { + event: e, + params: t + } + } + } + , + e.prototype.filterEvent = function(e) { + this.eventFilter = e + } + , + e.prototype.on = function(e, t) { + this.hook.on(e, t) + } + , + e.prototype.once = function(e, t) { + this.hook.once(e, t) + } + , + e.prototype.off = function(e, t) { + this.hook.off(e, t) + } + , + e.prototype.emit = function(e, t, r) { + this.hook.emit(e, t, r) + } + , + e.prototype.set = function(e) { + this.hook.set(e) + } + , + e.prototype.stop = function() { + this.sdkStop = !0 + } + , + e.prototype.reStart = function() { + this.sdkStop = !1 + } + , + e.prototype.pageView = function() { + this.disableAutoPageView || this.predefinePageView() + } + , + e.prototype.predefinePageView = function(e) { + var t; + void 0 === e && (e = {}), + this.inited ? (t = { + title: document.title || location.pathname, + url: location.href, + url_path: location.pathname, + time: Date.now(), + referrer: window.document.referrer, + $is_first_time: "" + (this.configManager && this.configManager.is_first_time || !1) + }, + t = a({}, t, e), + this.event("predefine_pageview", t)) : console.warn("predefinePageView must be use after function init") + } + , + e.prototype.clearEventCache = function() { + this.emit(A.CleanEvents) + } + , + e.prototype.setWebIDviaUnionID = function(e) { + var t; + e && (t = h(e), + this.config({ + web_id: "" + t, + wechat_unionid: e + }), + this.emit(A.CustomWebId)) + } + , + e.prototype.setWebId = function(e) { + this.config({ + web_id: "" + e + }) + } + , + e.prototype.setWebIDviaOpenID = function(e) { + var t; + e && (t = h(e), + this.config({ + web_id: "" + t, + wechat_openid: e + }), + this.emit(A.CustomWebId)) + } + , + e.prototype.setNativeAppId = function(e) { + this.bridgeReport && this.appBridge.setNativeAppId(e) + } + , + e.prototype.getSessionId = y, + e.prototype.setSessionId = function(e) { + this.emit(A.SessionReset, e) + } + , + e.prototype.resetStayDuration = function(e, t, r) { + this.emit(A.ResetStay, { + url_path: e, + title: t, + url: r + }, A.Stay) + } + , + e.prototype.resetStayParams = function(e, t, r) { + this.emit(A.SetStay, { + url_path: e = void 0 === e ? "" : e, + title: t = void 0 === t ? "" : t, + url: r = void 0 === r ? "" : r + }, A.Stay) + } + , + e.prototype.getToken = function(e, t) { + var r, n, i, o = this; + this.inited ? (r = !1, + n = function(t) { + var n; + if (!r) + return r = !0, + n = o.configManager.get().user, + t && (n.tobid = t, + n["diss".split("").reverse().join("")] = t), + e(a({}, n)) + } + , + i = function() { + o.tokenManager.getTobId().then(function(e) { + n(e) + }) + } + , + this.sdkReady ? i() : (t && setTimeout(function() { + n() + }, t), + this.on(A.Ready, function() { + i() + }))) : console.warn("getToken must be use after function init") + } + , + e.prototype.profileSet = function(e) { + this.bridgeReport ? this.appBridge.profileSet(JSON.stringify(e)) : this.emit(A.ProfileSet, e, A.Profile), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u6267\u884CprofileSet", + level: "info", + time: Date.now(), + data: e + }) + } + , + e.prototype.profileSetOnce = function(e) { + this.bridgeReport ? this.appBridge.profileSetOnce(JSON.stringify(e)) : this.emit(A.ProfileSetOnce, e, A.Profile), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u6267\u884CprofileSetOnce", + level: "info", + time: Date.now(), + data: e + }) + } + , + e.prototype.profileIncrement = function(e) { + this.bridgeReport ? this.appBridge.profileIncrement(JSON.stringify(e)) : this.emit(A.ProfileIncrement, e, A.Profile), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u6267\u884CprofileIncrement", + level: "info", + time: Date.now(), + data: e + }) + } + , + e.prototype.profileUnset = function(e) { + this.bridgeReport ? this.appBridge.profileUnset(e) : this.emit(A.ProfileUnset, e, A.Profile), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u6267\u884CprofileUnset", + level: "info", + time: Date.now(), + data: e + }) + } + , + e.prototype.profileAppend = function(e) { + this.bridgeReport ? this.appBridge.profileAppend(JSON.stringify(e)) : this.emit(A.ProfileAppend, e, A.Profile), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u6267\u884CprofileAppend", + level: "info", + time: Date.now(), + data: e + }) + } + , + e.prototype.setExternalAbVersion = function(e) { + this.emit(A.AbExternalVersion, "string" == typeof e && e ? ("" + e).trim() : null, A.Ab) + } + , + e.prototype.getVar = function(e, t, r) { + this.emit(A.AbVar, { + name: e, + defaultValue: t, + callback: r + }, A.Ab) + } + , + e.prototype.getABconfig = function(e, t) { + this.emit(A.AbConfig, { + params: e, + callback: t + }, A.Ab) + } + , + e.prototype.getAbSdkVersion = function() { + return this.configManager.getAbVersion() + } + , + e.prototype.onAbSdkVersionChange = function(e) { + var t = this; + return this.emit(A.AbVersionChangeOn, e, A.Ab), + function() { + t.emit(A.AbVersionChangeOff, e, A.Ab) + } + } + , + e.prototype.offAbSdkVersionChange = function(e) { + this.emit(A.AbVersionChangeOff, e, A.Ab) + } + , + e.prototype.openOverlayer = function() { + this.emit(A.AbOpenLayer, "", A.Ab) + } + , + e.prototype.closeOverlayer = function() { + this.emit(A.AbCloseLayer, "", A.Ab) + } + , + e.prototype.getAllVars = function(e) { + this.emit(A.AbAllVars, e, A.Ab) + } + , + e.prototype.destoryInstace = function() { + this.destroy || (this.destroy = !0, + this.off(A.TokenComplete), + this.emit(A.DestoryInstance)) + } + , + e.prototype.destroyInstance = function() { + this.destroy || (this.destroy = !0, + this.off(A.TokenComplete), + this.emit(A.DestoryInstance)) + } + , + e.plugins = [], + e + }(), t = function() { + function e() {} + return e.prototype.apply = function(e, t) { + var r = this; + t.event_verify_url && ("string" == typeof t.event_verify_url ? (this.url = t.event_verify_url + "/v1/list_test", + e.on(e.Types.SubmitBefore, function(t) { + e.requestManager.useBeacon({ + url: r.url, + data: t + }) + })) : console.log("please use correct et_test url")) + } + , + e + }(), Q = function() { + function e() {} + return e.prototype.apply = function(e, t) { + var r = this + , n = (this.collect = e, + this.config = t, + this.duration = 6e4, + this.reportUrl = e.configManager.getDomain() + "/profile/list", + e.Types); + this.eventCheck = new P(e,t), + this.cache = {}, + this.collect.on(n.ProfileSet, function(e) { + r.setProfile(e) + }), + this.collect.on(n.ProfileSetOnce, function(e) { + r.setOnceProfile(e) + }), + this.collect.on(n.ProfileUnset, function(e) { + r.unsetProfile(e) + }), + this.collect.on(n.ProfileIncrement, function(e) { + r.incrementProfile(e) + }), + this.collect.on(n.ProfileAppend, function(e) { + r.appendProfile(e) + }), + this.collect.on(n.ProfileClear, function() { + r.cache = {} + }), + this.ready(n.Profile) + } + , + e.prototype.ready = function(e) { + var t = this; + if (this.collect.set(e), + this.collect.hook._hooksCache.hasOwnProperty(e)) { + var r = this.collect.hook._hooksCache[e]; + if (Object.keys(r).length) + for (var n in r) + !function(e) { + r[e].length && r[e].forEach(function(r) { + t.collect.hook.emit(e, r) + }) + }(n) + } + } + , + e.prototype.report = function(e, t) { + void 0 === t && (t = {}); + try { + var r, n; + this.config.disable_track_event || ((r = []).push(this.collect.processEvent(e, t)), + n = this.collect.eventManager.merge(r), + this.collect.requestManager.useRequest({ + url: this.reportUrl, + data: n + }), + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_EVENT, + info: "\u57CB\u70B9\u4E0A\u62A5\u6210\u529F", + time: Date.now(), + data: n, + code: 200, + status: "success" + })) + } catch (e) { + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + } + , + e.prototype.setProfile = function(e) { + (e = this.formatParams(e)) && Object.keys(e).length && (this.pushCache(e), + this.report("__profile_set", a({}, e, { + profile: !0 + }))) + } + , + e.prototype.setOnceProfile = function(e) { + (e = this.formatParams(e, !0)) && Object.keys(e).length && (this.pushCache(e), + this.report("__profile_set_once", a({}, e, { + profile: !0 + }))) + } + , + e.prototype.incrementProfile = function(e) { + e ? this.report("__profile_increment", a({}, e, { + profile: !0 + })) : console.warn("please check the params, must be object!!!") + } + , + e.prototype.unsetProfile = function(e) { + var t; + e ? ((t = {})[e] = "1", + this.report("__profile_unset", a({}, t, { + profile: !0 + }))) : console.warn("please check the key, must be string!!!") + } + , + e.prototype.appendProfile = function(e) { + if (e) { + var t, r = {}; + for (t in e) + "string" == typeof e[t] || "Array" === Object.prototype.toString.call(e[t]).slice(8, -1) ? r[t] = e[t] : console.warn("please check the value of param: " + t + ", must be string or array !!!"); + Object.keys(r).length && this.report("__profile_append", a({}, r, { + profile: !0 + })) + } else + console.warn("please check the params, must be object!!!") + } + , + e.prototype.pushCache = function(e) { + var t = this; + Object.keys(e).forEach(function(r) { + t.cache[r] = { + val: t.clone(e[r]), + timestamp: Date.now() + } + }) + } + , + e.prototype.formatParams = function(e, t) { + var r = this; + void 0 === t && (t = !1); + try { + if (e && "[object Object]" === Object.prototype.toString.call(e)) { + var n, i = {}; + for (n in e) + "string" == typeof e[n] || "number" == typeof e[n] || "Array" === Object.prototype.toString.call(e[n]).slice(8, -1) ? i[n] = e[n] : console.warn("please check the value of params:" + n + ", must be string,number,Array !!!"); + var o, s = Object.keys(i); + if (s.length && this.eventCheck.checkEventParams(i)) + return o = Date.now(), + s.filter(function(n) { + var i = r.cache[n]; + return t ? !i : !(i && r.compare(i.val, e[n]) && o - i.timestamp < r.duration) + }).reduce(function(e, t) { + return e[t] = i[t], + e + }, {}) + } else + console.warn("please check the params type, must be object !!!") + } catch (e) { + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }), + console.log("error") + } + } + , + e.prototype.compare = function(e, t) { + try { + return JSON.stringify(e) === JSON.stringify(t) + } catch (e) { + return this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }), + !1 + } + } + , + e.prototype.clone = function(e) { + try { + return JSON.parse(JSON.stringify(e)) + } catch (t) { + return this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: t.message + }), + e + } + } + , + e.prototype.unReady = function() { + console.warn("sdk is not ready, please use this api after start") + } + , + e + }(), X = function() { + function e() { + var e = this; + this.setInterval = function() { + var t, r, n, i; + e.clearIntervalFunc = (t = function() { + e.isSessionhasEvent && e.endCurrentSession() + } + , + r = e.sessionInterval, + void 0 === t && (t = function() {} + ), + void 0 === r && (r = 1e3), + n = Date.now() + r, + i = window.setTimeout(function e() { + var o = Date.now() - n; + t(), + n += r, + i = window.setTimeout(e, Math.max(0, r - o)) + }, r), + function() { + window.clearTimeout(i) + } + ) + } + , + this.clearInterval = function() { + e.clearIntervalFunc && e.clearIntervalFunc() + } + } + return e.prototype.apply = function(e, t) { + var r = this; + this.collect = e, + t.disable_heartbeat || (this.sessionInterval = 6e4, + this.startTime = 0, + this.lastTime = 0, + this.setInterval(), + e = this.collect.Types, + this.collect.on(e.SessionResetTime, function() { + r.process() + })) + } + , + e.prototype.endCurrentSession = function() { + this.collect.event("_be_active", { + start_time: this.startTime, + end_time: this.lastTime, + url: window.location.href, + referrer: window.document.referrer, + title: document.title || location.pathname + }), + this.isSessionhasEvent = !1, + this.startTime = 0 + } + , + e.prototype.process = function() { + this.isSessionhasEvent || (this.isSessionhasEvent = !0, + this.startTime = +new Date); + var e = this.lastTime || +new Date; + this.lastTime = +new Date, + this.lastTime - e > this.sessionInterval && (this.clearInterval(), + this.endCurrentSession(), + this.setInterval()) + } + , + e + }(), $ = function() { + function e() {} + return e.prototype.apply = function(e, t) { + var r = this; + t.channel_domain || t.disable_track_event || t.disable_sdk_monitor || (this.collect = e, + this.config = t, + this.url = e.configManager.getUrl("event"), + this.collect.on(e.Types.Ready, function() { + r.sdkOnload() + }), + this.collect.on(e.Types.SubmitError, function(e) { + var t = e.type + , n = e.eventData + , e = e.errorCode; + "f_data" === t && r.sdkError(n, e) + })) + } + , + e.prototype.sdkOnload = function() { + var e = this; + try { + var t = this.collect.configManager.get() + , r = t.header + , n = t.user + , i = r.app_id + , o = r.app_name + , s = r.sdk_version + , a = n.web_id + , c = { + events: [{ + event: "onload", + params: JSON.stringify({ + app_id: i, + app_name: o || "", + sdk_version: s, + sdk_type: "npm", + sdk_config: this.config, + sdk_desc: "TOC", + url: location.href + }), + local_time_ms: Date.now() + }], + user: { + user_unique_id: a + }, + header: {} + }; + setTimeout(function() { + e.collect.requestManager.useRequest({ + url: e.url, + data: [c], + timeout: 3e4, + app_key: "566f58151b0ed37e", + forceXhr: !0 + }) + }, 16) + } catch (e) {} + } + , + e.prototype.sdkError = function(e, t) { + var r = this; + try { + var n = e[0] + , i = n.user + , o = n.header + , s = [] + , a = (e.forEach(function(e) { + e.events.forEach(function(e) { + s.push(e) + }) + }), + { + events: s.map(function(e) { + return { + event: "on_error", + params: JSON.stringify({ + error_code: t, + app_id: o.app_id, + app_name: o.app_name || "", + error_event: e.event, + sdk_version: o.sdk_version, + local_time_ms: e.local_time_ms, + tea_event_index: Date.now(), + params: e.params, + header: JSON.stringify(o), + user: JSON.stringify(i) + }), + local_time_ms: Date.now() + } + }), + user: { + user_unique_id: i.user_unique_id + }, + header: {} + }); + setTimeout(function() { + r.collect.requestManager.useRequest({ + url: r.url, + data: [a], + timeout: 3e4, + app_key: "566f58151b0ed37e", + forceXhr: !0 + }) + }, 16) + } catch (e) {} + } + , + e + }(), Z = "undefined" != typeof window ? (window.LogPluginObject || (window.LogPluginObject = {}), + window.LogPluginObject) : null, Y = function() { + function e() {} + return e.prototype.apply = function(e, t) { + this._plugin = {}, + this.config = t, + this.collect = e, + this.channel = t.channel || "cn", + this.loadExtend() + } + , + e.prototype.loadExtend = function() { + var e = this; + try { + this.collect.remotePlugin.forEach(function(t, r) { + var n, i; + "sdk" === t ? V.hasOwnProperty(r) ? (n = V[r].object, + i = V[r].src[e.channel] + "?query=" + Date.now(), + e.exist(r, n, i)) : console.warn("your " + r + " is not exist\uFF0Cplease check plugin name") : "object" == typeof t && (t.src ? e.exist(r, t.call, t.src) : e.process(r, t.instance, "INSTANCE")) + }) + } catch (e) { + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }), + console.log("load extend error") + } + } + , + e.prototype.exist = function(e, t, r) { + var n = this; + Z[t] ? (this.process(e, Z[t]), + console.log("\u5DF2\u6709" + e + "\u63D2\u4EF6\uFF0C\u907F\u514D\u91CD\u590D\u52A0\u8F7D~")) : this.loadPlugin(e, r, function() { + n.process(e, Z[t]), + console.log(" %c %s %s %s", "color: yellow; background-color: black;", "\u2013", "load plugin:" + e + " success", "-") + }, function() { + console.log(" %c %s %s %s", "color: red; background-color: yellow;", "\u2013", "load plugin:" + e + " error", "-") + }) + } + , + e.prototype.process = function(e, t, r) { + try { + var n; + r ? ((n = new t).apply && n.apply(this.collect, this.config), + console.log("excude " + e + " success")) : t && t(this.collect, this.config) + } catch (t) { + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: t.message + }), + console.log("excude " + e + " error, message:" + t.message) + } + } + , + e.prototype.loadPlugin = function(e, t, r, n) { + var i = this; + try { + var o = document.createElement("script"); + o.src = t, + this._plugin[e] || (this._plugin[e] = []), + this._plugin[e].push(r), + o.onerror = function() { + n(t) + } + , + o.onload = function() { + i._plugin[e].forEach(function(e) { + e() + }) + } + , + document.getElementsByTagName("head")[0].appendChild(o) + } catch (e) { + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + } + , + e + }(), Y = (J.usePlugin(Y, "extend"), + J.usePlugin(t, "et"), + J.usePlugin(Q, "profile"), + J.usePlugin(X, "heartbeat"), + J.usePlugin($, "monitor"), + new J("default")), ee = Y, et = { + selectRoute: 900, + browserError: 1e3, + crc32: 1e3, + preUpload: 1001, + initUploadID: 1002, + process: 1003, + fileMerge: 1004, + complete: 1005 + }, er = "video", en = "image", ei = "object", eo = { + video: "video_upload", + image: "image_upload", + object: "object_upload" + }, es = "imagex"; + function ea(e) { + return (ea = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function ec() { + return (ec = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function eu(e, t) { + for (var r = 0; r < t.length; r++) { + var n, i = t[r]; + i.enumerable = i.enumerable || !1, + i.configurable = !0, + "value"in i && (i.writable = !0), + Object.defineProperty(e, (n = function(e, t) { + if ("object" !== ea(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== ea(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(n = i.key, "string"), + "symbol" === ea(n) ? n : String(n)), i) + } + } + var el = function() { + var e, t, r; + function n(e, t) { + switch (!function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, n), + this.options = e, + this.context = t, + this.teaLog = ee, + this.tea_app_id = 2562, + this.tea_channel = "cn", + this.options.region) { + case "us-east-1": + case "us-east-red": + case "gcp": + case "US-TTP": + this.tea_app_id = 2643, + this.tea_channel = "va"; + break; + case "boei18n": + case "ap-singapore-1": + this.tea_app_id = 2643, + this.tea_channel = "sg"; + break; + default: + this.tea_app_id = 2562, + this.tea_channel = "cn" + } + this.teaLog.init({ + app_id: this.tea_app_id, + channel: this.tea_channel, + log: !1, + disable_sdk_monitor: !0, + disable_auto_pv: !0 + }), + this.teaLog.config({ + evtParams: { + sdk_version: "2.0.9", + line_app_id: this.options.appId + }, + user_unique_id: this.options.userId + }), + this.teaLog.start() + } + return e = n, + t = [{ + key: "send", + value: function(e) { + var t = this.context + , r = e.key + , t = t.tasks[r] + , n = et[e.stage] || 999 + , t = e.fileType || t && t.fileType + , i = e.fileSize || 0 + , r = { + log_type: eo[t], + stage: n, + fk: r, + fs: i, + req: e.req, + res: e.res, + ts: Math.round(Date.now() / 1e3), + sst: e.stageStartTime, + set: e.stageEndTime, + dur: e.duration, + tdur: e.totalDuration, + durs: e.duration / 1e3, + tdurs: e.totalDuration / 1e3, + eslr: e.enableSelectRoute, + ucsrr: e.useClientSelectRouteResult, + skipCommit: !!e.skipCommit + } + , i = e.type + , o = "error" === i || "retry" === i ? i : n + , t = "".concat("image" === t ? "image" : "video", "_").concat(o); + "success" === i ? this.sendSuccessLog(t, e, r, n) : this.teaLog.event(t, ec({}, r, { + type: e.type, + oid: e.oid, + upload_host: e.tosDomain, + errc: e.extra && e.extra.errorCode, + ex: JSON.stringify({ + errc: e.extra && e.extra.errorCode, + msg: e.extra && e.extra.message + }) + })) + } + }, { + key: "sendSuccessLog", + value: function(e, t, r, n) { + switch (r.type = t.type, + n) { + case et.selectRoute: + this.teaLog.event(e, ec({}, r, { + race_info: t.raceInfo, + client_ip: t.lastClientIp, + uc: t.useCache, + ex: JSON.stringify({ + msg: t.extra && t.extra.message + }) + })); + break; + case et.crc32: + this.teaLog.event(e, ec({}, r, { + ex: JSON.stringify({ + msg: t.extra && t.extra.message, + crc32Array: t.crc32Array, + isDirect: t.isDirect + }) + })); + break; + case et.preUpload: + this.teaLog.event(e, ec({}, r, { + oid: t.oid, + upload_host: t.tosDomain, + ex: JSON.stringify({ + msg: t.extra && t.extra.message, + sig: t.signature, + stk: t.proxyStsToken + }) + })); + break; + case et.initUploadID: + this.teaLog.event(e, ec({}, r, { + oid: t.oid, + upload_host: t.tosDomain, + ex: JSON.stringify({ + msg: t.extra && t.extra.message, + upid: t.UploadID + }) + })); + break; + case et.process: + t.isAllFinish || t.isDirect || (delete r.sst, + delete r.set, + delete r.dur), + this.teaLog.event(e, ec({}, r, { + oid: t.oid, + upload_host: t.tosDomain, + af: t.isAllFinish, + cst: t.crc32StartTime, + cet: t.crc32EndTime, + cdur: t.crc32Duration, + slst: t.sliceStartTime, + slet: t.sliceEndTime, + sldurs: t.sliceDuration && t.sliceDuration / 1e3, + ex: JSON.stringify({ + msg: t.extra && t.extra.message, + si: t.sliceIndex, + af: t.isAllFinish + }) + })); + break; + case et.fileMerge: + this.teaLog.event(e, ec({}, r, { + oid: t.oid, + upload_host: t.tosDomain, + ex: JSON.stringify({ + msg: t.extra && t.extra.message + }) + })); + break; + case et.complete: + this.teaLog.event(e, ec({}, r, { + oid: t.oid, + upload_host: t.tosDomain, + speed: Math.round(t.fileSize / (t.totalDuration / 1e3) / 1024), + ex: JSON.stringify({ + msg: t.extra && t.extra.message, + vid: t.uploadResult && t.uploadResult.Vid + }) + })) + } + } + }, { + key: "console", + value: function(e) { + function t(t) { + return e.apply(this, arguments) + } + return t.toString = function() { + return e.toString() + } + , + t + }(function(e) { + this.options.debug && console.log(e) + }) + }], + eu(e.prototype, t), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + n + }() + , t = r(6) + , ef = r.n(t) + , Q = r(4) + , ep = r.n(Q) + , eh = { + urlTemplate: function(e, t) { + var r; + return Object.keys(t = t || {}).forEach(function(n) { + r = RegExp("{".concat(n, "}"), "g"), + e = e.replace(r, t[n]) + }), + e + }, + toQueryString: function() { + var e = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : {}; + return Object.keys(e).map(function(t) { + return "".concat(t, "=").concat(encodeURIComponent(e[t])) + }).join("&") + }, + supportChunked: function() { + var e = window.Blob || window.WebKitBlob; + try { + var t = e.prototype; + return !(!FormData || !(t.slice || t.webkitSlice || t.mozSlice)) + } catch (e) { + return !1 + } + }, + supportXhr: function() { + return !!window.FormData || window.ProgressEvent && window.FileReader + }, + supportCrc32: function() { + var e = window.FileReader && window.FileReader.prototype.readAsBinaryString; + return "undefined" != typeof Int32Array && e && (Blob.prototype.slice || Blob.prototype.webkitSlice || Blob.prototype.mozSlice) + }, + storage: function(e) { + var t = e + , e = { + removeItem: function(e) { + delete t.cache[e] + }, + setItem: function(e, r) { + t.cache[e] = r + }, + getItem: function(e) { + return t.cache[e] + }, + clear: function() { + delete t.cache, + t.cache = {} + } + }; + if (!(1 < arguments.length && void 0 !== arguments[1]) || arguments[1]) + try { + if (window.localStorage) + return window.localStorage.setItem("", ""), + window.localStorage + } catch (e) {} + return e + }, + noop: function() {}, + getUnique: function(e) { + return "".concat(e, "_").concat((new Date).getTime(), "_").concat(parseInt(1e6 * Math.random())) + }, + getFileSliceLength: function(e, t) { + var r = e.size; + return t && "function" == typeof t ? 2097152 > t(r) ? 2097152 : t(r) || r : 0xc800000 < r ? 0xa00000 : r <= 0xc800000 && 2097152 <= r ? 5242880 : e.size + }, + getFileSuffix: function(e) { + if (e && "[object String]" === Object.prototype.toString.call(e)) { + var t = e.lastIndexOf("."); + return 0 < t && (e = ".".concat(e.substring(t + 1))).length <= 8 ? e : "" + } + }, + fileSlice: function(e, t, r) { + return (e.slice || e.webkitSlice || e.mozSlice).call(e, t, r) + }, + getPathByURL: function(e) { + return /^(?:(https?:)\/\/)?(([^:/?#]*)(?::([0-9]+))?)([/]{0,1}[^?#]*)(\?[^#]*|)(#.*|)$/.exec(e)[5] || "/" + }, + crypto: { + hmac: function(e, t) { + return ef()(t, e) + }, + sha256: function(e) { + return ep()(e) + } + }, + date: { + iso8601: function(e) { + return (e = void 0 === e ? eh.date.getDate() : e).toISOString().replace(/\.\d{3}Z$/, "Z") + } + }, + Buffer: Uint8Array, + generateKey: function(e) { + for (var t = "", r = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", n = r.length, i = 0; i < e; i++) + t += r.charAt(Math.floor(Math.random() * n)); + return t + } + }; + function ed(e) { + return (ed = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function eg(e, t) { + for (var r = 0; r < t.length; r++) { + var n, i = t[r]; + i.enumerable = i.enumerable || !1, + i.configurable = !0, + "value"in i && (i.writable = !0), + Object.defineProperty(e, (n = function(e, t) { + if ("object" !== ed(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== ed(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(n = i.key, "string"), + "symbol" === ed(n) ? n : String(n)), i) + } + } + function ey(e, t) { + return (ey = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function em(e) { + return (em = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var ev = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && ey(e, t) + }(a, n.a); + var e, t, r, i, o, s = (e = a, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = em(e); + return function(e, t) { + if (t && ("object" === ed(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, em(this).constructor) : r.apply(this, arguments)) + } + ); + function a() { + var e; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, a), + (e = s.call(this)).xhr = new XMLHttpRequest, + e._data = null, + e + } + return r = a, + i = [{ + key: "_ajax", + value: function(e) { + var t = this + , r = this.xhr; + r.upload.onprogress = function(e) { + t.emit("progress", e) + } + , + r.onreadystatechange = function() { + 4 === r.readyState && (r.upload.onprogress = eh.noop, + r.onreadystatechange = eh.noop, + r.params = e, + t._data && t._data.url && (r.currentUrl = t._data.url), + r.status >= 200 && r.status < 300 || 304 === r.status ? t.emit("complete", r) : r.status >= 400 && t.emit("error", r)) + } + , + r.onerror = function() { + r.errText = "unknow net error", + t.emit("error", r) + } + , + r.ontimeout = function() { + r.errText = "timeout", + t.emit("error", r) + } + , + r.onabort = function() { + r.errText = "abort", + t.emit("error", r) + } + , + r.send(e) + } + }, { + key: "send", + value: function(e) { + var t = this; + return this._data = e, + this.xhr.open(e.method || "POST", e.url || "", !0), + e.headers && Object.keys(e.headers).forEach(function(r) { + t.xhr.setRequestHeader(r, e.headers[r]) + }), + this.xhr.timeout = e.timeout || 0, + e.ontimeout && (this.xhr.ontimeout = e.ontimeout), + e.binary ? this.sendAsBinary(e) : e.custom ? "object" === ed(e.custom) ? this.sendAsCustom(JSON.stringify(e.custom)) : "none" === e.custom ? (delete e.custom, + this.sendAsCustom()) : this.sendAsCustom(e.custom) : this.sendAsFormData(e) + } + }, { + key: "sendAsBinary", + value: function(e) { + return this.xhr.setRequestHeader("Content-Type", "application/octet-stream"), + this.xhr.setRequestHeader("Content-Disposition", 'attachment; filename="'.concat(encodeURI(e.filename), '"')), + this._ajax(e.file) + } + }, { + key: "sendAsFormData", + value: function(e) { + t = (t = e.formData ? "function" == typeof e.formData ? e.formData() : e.formData : t) || []; + for (var t, r = new FormData, n = 0, i = t.length; n < i; n++) { + var o = r[n]; + r.append(o.name, o.value) + } + return e.file && r.append(e.field, e.file, e.name), + this._ajax(r) + } + }, { + key: "sendAsCustom", + value: function(e) { + return this._ajax(e) + } + }, { + key: "abort", + value: function() { + this.xhr.onreadystatechange = eh.noop, + this.xhr.abort() + } + }, { + key: "getResponse", + value: function() { + return this.xhr.response + } + }, { + key: "getText", + value: function() { + return this.xhr.responseText + } + }, { + key: "getJson", + value: function() { + return JSON.parse(this.xhr.responseText) + } + }], + eg(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + a + }() + , X = r(1) + , eb = r.n(X); + function e_(e) { + return (e_ = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function eS(e, t) { + var r, n = Object.keys(e); + return Object.getOwnPropertySymbols && (r = Object.getOwnPropertySymbols(e), + t && (r = r.filter(function(t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable + })), + n.push.apply(n, r)), + n + } + function ex(e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}; + t % 2 ? eS(Object(r), !0).forEach(function(t) { + var n, i, o; + n = e, + i = t, + o = r[t], + (i = eE(i))in n ? Object.defineProperty(n, i, { + value: o, + enumerable: !0, + configurable: !0, + writable: !0 + }) : n[i] = o + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : eS(Object(r)).forEach(function(t) { + Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) + }) + } + return e + } + function ew() { + return (ew = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function ek(e, t) { + for (var r = 0; r < t.length; r++) { + var n = t[r]; + n.enumerable = n.enumerable || !1, + n.configurable = !0, + "value"in n && (n.writable = !0), + Object.defineProperty(e, eE(n.key), n) + } + } + function eE(e) { + return e = function(e, t) { + if ("object" !== e_(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== e_(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(e, "string"), + "symbol" === e_(e) ? e : String(e) + } + function eO(e, t) { + return (eO = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function eT(e) { + return (eT = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var eC = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && eO(e, t) + }(c, n.a); + var e, t, r, i, s, a = (e = c, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = eT(e); + return function(e, t) { + if (t && ("object" === e_(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, eT(this).constructor) : r.apply(this, arguments)) + } + ); + function c(e, t) { + var r; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, c), + (r = a.call(this)).options = e, + r.config = t, + r.uploaderCtx = e.context, + r.file = e.file, + r.cacheKey = "__bd_uploader_cache", + r + } + return r = c, + i = [{ + key: "start", + value: function(e, t) { + this._st = Date.now(), + this.uploaderCtx._broadcast("startSelectRoute", null, !0), + this.clientIp = e.clientIp, + this.selectRouteTimeout = e.selectRouteTimeout || 5e3, + this.selectRouteCacheTime = e.selectRouteCacheTime || 36e5, + this.selectRouteFileSize = e.selectRouteFileSize || 0x80000000, + this.completeCallback = t, + (e = this.checkSelect({ + clientIp: this.clientIp + })) ? this.success(e, null, !0) : this.startSelectRoute() + } + }, { + key: "checkSelect", + value: function(e) { + var e = e.clientIp + , t = null; + try { + t = JSON.parse(this.uploaderCtx.storage.getItem(this.cacheKey)) + } catch (e) { + return null + } + if (t) { + var r = t.lastClientIp + , n = t.lastSelectRouteTime; + if (e && e !== r) + return null; + if ((new Date).getTime() - n < this.selectRouteCacheTime) + return t + } + return null + } + }, { + key: "startSelectRoute", + value: function() { + var e = this + , t = this.config.region + , r = new ev + , n = (r.on("complete", function(t) { + if (t.response) + try { + var r, n = JSON.parse(t.response); + n.ResponseMetadata.Error ? e.fail({ + xhr: t, + errorCode: n.ResponseMetadata.Error.CodeN, + error: n.ResponseMetadata.Error.Code, + message: n.ResponseMetadata.Error.Message + }) : (r = n.Result.Domains, + e.race(r, t)) + } catch (r) { + e.fail({ + error: "catch error: ".concat(r.toString()), + xhr: t + }) + } + else + e.fail({ + error: "request fail: ".concat(t.statusText || t.errText || "UNKNOWN"), + xhr: t + }) + }), + r.on("error", function(t) { + var r = { + error: "request fail: ".concat(t.statusText || t.errText || "UNKNOWN"), + xhr: t + }; + t.response && (t = JSON.parse(t.response)).ResponseMetadata && t.ResponseMetadata.Error && (r.errorCode = t.ResponseMetadata.Error.CodeN, + r.error = t.ResponseMetadata.Error.Code, + r.message = t.ResponseMetadata.Error.Message), + e.fail(r) + }), + this.config.videoHost) + , i = this.config.videoConfig && this.config.videoConfig.spaceName + , o = { + Action: "GetUploadCandidates", + Version: "2020-11-19", + SpaceName: i = this.options.type === ei && null != (o = this.config.objectConfig) && o.spaceName ? null == (o = this.config.objectConfig) ? void 0 : o.spaceName : i + } + , i = this.options.stsToken + , s = eh.toQueryString(o) + , a = i.AccessKeyID + , c = i.AccessKeyId + , u = i.SecretAccessKey + , l = i.SessionToken + , i = i.CurrentTime + , n = { + method: "GET", + url: "".concat(n, "?").concat(s), + timeout: this.config.gatewayTimeout, + region: t, + params: o + } + , s = new eb.a(n,"vod") + , t = (this.config.useServerCurrentTime && Math.abs(new Date(i) - new Date) > 6e4 && (this.systemTimeGap = new Date(i) - new Date), + this.systemTimeGap ? new Date((new Date).getTime() + this.systemTimeGap) : new Date); + s.addAuthorization({ + accessKeyId: c || a, + secretAccessKey: u, + sessionToken: l + }, t), + r.send(n) + } + }, { + key: "race", + value: function(e, t) { + var r = this + , n = this.file + , i = (n.slice || n.webkitSlice || n.mozSlice).call(n, 0, Math.min(this.selectRouteFileSize, n.size)) + , s = e.map(function(e) { + return { + domainName: e.Name, + domainInfo: e, + percent: 0, + startTime: (new Date).getTime(), + endTime: (new Date).getTime(), + complete: !1 + } + }) + , a = 0 + , c = s.length; + s.forEach(function(e, n) { + var i = new ev; + i.on("complete", function() { + s[n].endTime = (new Date).getTime(), + s[n].complete = !0, + s.forEach(function(e, t) { + n !== t && e.transport && e.transport.abort() + }), + r.formatRaceInfo(s, t) + }), + i.on("error", function(e) { + s[n].endTime = (new Date).getTime(), + s[n].complete = !0, + s[n].error = e.errText, + c <= ++a && r.formatRaceInfo(s, t) + }), + i.on("progress", function(e) { + e = e.loaded / e.total, + s[n].percent = e + }), + s[n].transport = i + }), + s.forEach(function(e) { + var t = e.domainInfo + , n = { + oid: t.StoreID, + tosDomain: "".concat(r.config.schema, "://").concat(t.Name) + } + , n = "".concat(eh.urlTemplate(o, n), "?speedtest") + , t = t.Sign; + e.transport.send({ + method: "post", + url: n, + headers: { + Authorization: t, + "Content-CRC32": "ignore" + }, + file: i, + binary: 1, + timeout: r.selectRouteTimeout + }) + }) + } + }, { + key: "formatRaceInfo", + value: function(e, t) { + e.sort(function(e, t) { + return e.percent < t.percent ? 1 : e.percent > t.percent ? -1 : e.error ? 1 : t.error ? -1 : 0 + }), + e.forEach(function(e) { + delete e.transport + }), + e = { + lastClientIp: this.clientIp, + lastSelectRouteTime: (new Date).getTime(), + raceInfo: e, + type: "success" + }, + this.uploaderCtx.storage.setItem(this.cacheKey, JSON.stringify(e)), + this.success(e, t) + } + }, { + key: "success", + value: function(e, t) { + var r = 2 < arguments.length && void 0 !== arguments[2] && arguments[2] + , t = t && this.formatXhr(t); + this.uploaderCtx.logger.send(ew(ex(ex({ + stage: "selectRoute", + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + fileSize: this.file && this.file.size + }, t), {}, { + useCache: r + }), e)), + this.uploaderCtx._broadcast("completeSelectRoute", ex(ex({}, e), {}, { + useCache: r + }), !0), + this.completeCallback({ + selectRouteResult: e.raceInfo + }) + } + }, { + key: "fail", + value: function(e) { + var t = { + error: e.error, + errorCode: e.errorCode, + message: e.message + }; + this.uploaderCtx.logger.send(ew(ex({ + stage: "selectRoute", + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + fileSize: this.file && this.file.size, + extra: t, + type: "warn" + }, this.formatXhr(e.xhr)))), + this.uploaderCtx._broadcast("completeSelectRoute", ex({ + type: "warn" + }, t), !0), + this.completeCallback() + } + }, { + key: "formatXhr", + value: function(e) { + return { + req: { + url: e.currentUrl, + param: e.params + }, + res: { + status: e.status, + header: e.getAllResponseHeaders(), + body: e.responseText + } + } + } + }], + ek(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + c + }() + , eD = { + crc32: function(e, t) { + for (var r = [0, 0x77073096, 0xee0e612c, 0x990951ba, 0x76dc419, 0x706af48f, 0xe963a535, 0x9e6495a3, 0xedb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, 0x9b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91, 0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de, 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7, 0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, 0x14015c4f, 0x63066cd9, 0xfa0f3d63, 0x8d080df5, 0x3b6e20c8, 0x4c69105e, 0xd56041e4, 0xa2677172, 0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b, 0x35b5a8fa, 0x42b2986c, 0xdbbbc9d6, 0xacbcf940, 0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59, 0x26d930ac, 0x51de003a, 0xc8d75180, 0xbfd06116, 0x21b4f4b5, 0x56b3c423, 0xcfba9599, 0xb8bda50f, 0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924, 0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d, 0x76dc4190, 0x1db7106, 0x98d220bc, 0xefd5102a, 0x71b18589, 0x6b6b51f, 0x9fbfe4a5, 0xe8b8d433, 0x7807c9a2, 0xf00f934, 0x9609a88e, 0xe10e9818, 0x7f6a0dbb, 0x86d3d2d, 0x91646c97, 0xe6635c01, 0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e, 0x6c0695ed, 0x1b01a57b, 0x8208f4c1, 0xf50fc457, 0x65b0d9c6, 0x12b7e950, 0x8bbeb8ea, 0xfcb9887c, 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65, 0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2, 0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb, 0x4369e96a, 0x346ed9fc, 0xad678846, 0xda60b8d0, 0x44042d73, 0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9, 0x5005713c, 0x270241aa, 0xbe0b1010, 0xc90c2086, 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f, 0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4, 0x59b33d17, 0x2eb40d81, 0xb7bd5c3b, 0xc0ba6cad, 0xedb88320, 0x9abfb3b6, 0x3b6e20c, 0x74b1d29a, 0xead54739, 0x9dd277af, 0x4db2615, 0x73dc1683, 0xe3630b12, 0x94643b84, 0xd6d6a3e, 0x7a6a5aa8, 0xe40ecf0b, 0x9309ff9d, 0xa00ae27, 0x7d079eb1, 0xf00f9344, 0x8708a3d2, 0x1e01f268, 0x6906c2fe, 0xf762575d, 0x806567cb, 0x196c3671, 0x6e6b06e7, 0xfed41b76, 0x89d32be0, 0x10da7a5a, 0x67dd4acc, 0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5, 0xd6d6a3e8, 0xa1d1937e, 0x38d8c2c4, 0x4fdff252, 0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b, 0xd80d2bda, 0xaf0a1b4c, 0x36034af6, 0x41047a60, 0xdf60efc3, 0xa867df55, 0x316e8eef, 0x4669be79, 0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236, 0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f, 0xc5ba3bbe, 0xb2bd0b28, 0x2bb45a92, 0x5cb36a04, 0xc2d7ffa7, 0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d, 0x9b64c2b0, 0xec63f226, 0x756aa39c, 0x26d930a, 0x9c0906a9, 0xeb0e363f, 0x72076785, 0x5005713, 0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0xcb61b38, 0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, 0xbdbdf21, 0x86d3d2d4, 0xf1d4e242, 0x68ddb3f8, 0x1fda836e, 0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777, 0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c, 0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45, 0xa00ae278, 0xd70dd2ee, 0x4e048354, 0x3903b3c2, 0xa7672661, 0xd06016f7, 0x4969474d, 0x3e6e77db, 0xaed16a4a, 0xd9d65adc, 0x40df0b66, 936918e3, 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9, 0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, 0xbad03605, 0xcdd70693, 0x54de5729, 0x23d967bf, 0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94, 0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d], n = ("undefined" != typeof Int32Array && (r = new Int32Array(r)), + -1 ^ ~~t), i = (e = new Uint8Array(e)).length, o = 0; o < i; o++) + n = r[255 & (n ^ e[o])] ^ n >>> 8; + return (-1 ^ n) >>> 0 + }, + dec2hex: function(e) { + if (void 0 !== e) + return function e(t) { + return t.length < 8 ? e(t = "0".concat(t)) : t + }(Number(e).toString(16)) + } + }; + function ej(e) { + return (ej = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function eI(e, t) { + for (var r = 0; r < t.length; r++) { + var n, i = t[r]; + i.enumerable = i.enumerable || !1, + i.configurable = !0, + "value"in i && (i.writable = !0), + Object.defineProperty(e, (n = function(e, t) { + if ("object" !== ej(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== ej(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(n = i.key, "string"), + "symbol" === ej(n) ? n : String(n)), i) + } + } + var eP = function() { + var e, t, r; + function n(e, t, r, i) { + !function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, n), + this.file = e, + this.successProcess = r, + this.failProcess = i, + this.sliceLength = t, + this.retryTime = 0, + this.fileSize = e.size, + this.crc32Array = [] + } + return e = n, + t = [{ + key: "start", + value: function() { + this.readFileCrc32(this.file) + } + }, { + key: "readFileCrc32", + value: function(e) { + var t = this + , r = this.sliceLength + , n = e.slice || e.webkitSlice || e.mozSlice + , i = new FileReader + , o = 0 + , s = 0 + , a = 0; + (function c() { + s < e.size && (s = Math.min(o + r, e.size), + e.size > 0x6400000) && (s = e.size), + i.readAsArrayBuffer(n.call(e, o, s)), + i.onload = function(r) { + r = r.target.result, + a = eD.crc32(r, 0), + t.crc32Array.push({ + start: o, + end: s, + crc32: eD.dec2hex(a), + buffer: r + }), + (o = s) < e.size ? c() : t.success(t.crc32Array) + } + } + )() + } + }, { + key: "success", + value: function(e) { + this.successProcess(e) + } + }, { + key: "fail", + value: function(e, t, r, n) { + 3 <= this.retryTime ? this.failProcess() : (this.readFileCrc32(e, t, r, n), + this.retryTime++) + } + }], + eI(e.prototype, t), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + n + }() + , eA = "The format of stsToken is incorrect."; + function eR(e) { + return (eR = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function ez() { + return (ez = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function eB(e, t) { + (null == t || t > e.length) && (t = e.length); + for (var r = 0, n = Array(t); r < t; r++) + n[r] = e[r]; + return n + } + function eU(e, t) { + for (var r = 0; r < t.length; r++) { + var n, i = t[r]; + i.enumerable = i.enumerable || !1, + i.configurable = !0, + "value"in i && (i.writable = !0), + Object.defineProperty(e, (n = function(e, t) { + if ("object" !== eR(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== eR(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(n = i.key, "string"), + "symbol" === eR(n) ? n : String(n)), i) + } + } + var eM = function() { + var e, t, r; + function n(e) { + var t = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : {}; + !function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, n), + this.context = e.context, + this.key = e.key, + this.isDirect = e.isDirect, + this.isImageBatchUpload = e.isImageBatchUpload, + this.file = e.file, + this.type = (this.isImageBatchUpload ? null == (e = this.file[0]) ? void 0 : e.type : null == (e = this.file) ? void 0 : e.type) || "", + this.sliceLength = eh.getFileSliceLength(this.file, t.getSliceFunc), + this.config = t + } + return e = n, + t = [{ + key: "start", + value: function(e, t, r) { + this.successProcess = t, + this.failProcess = r, + this._st = Date.now(), + this.crc32(this.file, this.sliceLength) + } + }, { + key: "crc32", + value: function(e, t) { + var r = this; + if (this.isImageBatchUpload) + for (var n = e.length, i = [], o = function(t) { + new eP(e[t],e[t].size,function(e) { + i[t] = e[0], + i.filter(function(e) { + return !!e + }).length === n && r.success(i) + } + ,function(e) { + r.fail(e) + } + ).start() + }, s = 0; s < n; s++) + o(s); + else + e && e.size && !(e.size <= 0) ? this.isDirect ? new eP(e,e.size,function(e) { + r.success(e) + } + ,function(e) { + r.fail({ + errorCode: 1000003, + message: "get crc32 error: ".concat(e && e.message) + }) + } + ).start() : this.sliceFile(e, t, function(e) { + r.success(e) + }, function(e) { + r.fail(e) + }) : this.fail({ + errorCode: 1000003, + message: "There is a problem with the input file or fileSize." + }) + } + }, { + key: "sliceFile", + value: function(e, t, r, n) { + for (var i = [], o = e.size, s = e.slice || e.webkitSlice || e.mozSlice, a = 0, c = 0, u = 0; c < o; ) + c = Math.min(a + t, o), + 0x6400000 < o && o - c <= 5242880 && (c = o), + i.push({ + start: a, + end: c, + crc32: 0 + }), + a = c; + try { + !function t(a) { + var c = new FileReader + , l = i[a].start + , f = i[a].end; + c.readAsArrayBuffer(s.call(e, l, f)), + c.onload = function(e) { + e = e.target.result, + u = eD.dec2hex(eD.crc32(e, 0)), + i[a].crc32 = u, + f === o ? r(i) : t(i.length - 1) + } + , + c.onerror = function(e) { + var t = e.target.error.name + , e = e.target.error.message; + n({ + crc32Array: i, + errorCode: 1000003, + message: "".concat(t, ": ").concat(e) + }) + } + }(0) + } catch (e) { + n({ + message: e && e.toString() + }) + } + } + }, { + key: "getCrc32Key", + value: function(e, t) { + var r; + return (t = "[object Array]" === Object.prototype.toString.call(t) ? function(e) { + if (Array.isArray(e)) + return eB(e) + }(r = t) || function(e) { + if ("undefined" != typeof Symbol && null != e[Symbol.iterator] || null != e["@@iterator"]) + return Array.from(e) + }(r) || function(e, t) { + var r; + if (e) + return "string" == typeof e ? eB(e, void 0) : "Map" === (r = "Object" === (r = Object.prototype.toString.call(e).slice(8, -1)) && e.constructor ? e.constructor.name : r) || "Set" === r ? Array.from(e) : "Arguments" === r || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r) ? eB(e, t) : void 0 + }(r) || function() { + throw TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") + }() : [t]).push(e[0].crc32, e[e.length - 1].crc32), + this.config.instanceId && t.push(this.config.instanceId), + t.join("_") + } + }, { + key: "success", + value: function(e) { + var t = this.context + , r = this.key + , n = [] + , i = []; + if (this.isImageBatchUpload) + for (var o = 0; o < this.file.length; o++) + n.push(this.file[o].size), + i.push(this.file[o].name); + else + n = this.file.size, + i = this.file.name; + var s = this.getCrc32Key(e, n) + , t = t.tasks[r]; + t && this.successProcess(ez(t, { + key: r, + crc32Array: e, + crc32Key: s, + sdkVersion: "2.0.9", + sliceLength: this.sliceLength, + extra: { + message: "get crc32 success" + }, + stage: "crc32", + type: "success", + fileSize: n, + fileName: i, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st, + isDirect: this.isDirect, + isImageBatchUpload: this.isImageBatchUpload + })) + } + }, { + key: "fail", + value: function(e) { + var t = this.context + , r = this.key + , n = e && e.message ? e.message : "get crc32 error" + , i = e && e.errorCode + , e = e && e.crc32Array + , t = ez(t.tasks[r], { + crc32Array: e, + extra: { + message: n, + errorCode: i + }, + type: "error", + stage: "crc32", + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + }); + this.failProcess(t) + } + }], + eU(e.prototype, t), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + n + }() + , eG = { + checkStsToken: function(e) { + return !e || e.SessionToken && e.SecretAccessKey && (e.AccessKeyId || e.AccessKeyID) + }, + checkServiceName: function(e, t, r) { + if ("vod" === r || r === es) + return r; + if (e !== er) { + if (e === en) + return es; + if (e === ei) { + if (t.objectConfig && t.objectConfig.spaceName) + return "vod"; + if (t.objectConfig && t.objectConfig.serviceId) + return es; + if (t.videoConfig && t.videoConfig.spaceName) + return "vod"; + if (t.imageConfig && t.imageConfig.serviceId) + return es + } + } + return "vod" + } + }; + function eF(e) { + return (eF = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function eN(e, t) { + var r, n = Object.keys(e); + return Object.getOwnPropertySymbols && (r = Object.getOwnPropertySymbols(e), + t && (r = r.filter(function(t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable + })), + n.push.apply(n, r)), + n + } + function eH() { + return (eH = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function eL(e, t) { + for (var r = 0; r < t.length; r++) { + var n = t[r]; + n.enumerable = n.enumerable || !1, + n.configurable = !0, + "value"in n && (n.writable = !0), + Object.defineProperty(e, eK(n.key), n) + } + } + function eK(e) { + return e = function(e, t) { + if ("object" !== eF(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== eF(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(e, "string"), + "symbol" === eF(e) ? e : String(e) + } + function eq(e, t) { + return (eq = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function eV(e) { + return (eV = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var eW = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && eq(e, t) + }(a, n.a); + var e, t, r, i, o, s = (e = a, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = eV(e); + return function(e, t) { + if (t && ("object" === eF(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, eV(this).constructor) : r.apply(this, arguments)) + } + ); + function a(e, t) { + var r; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, a), + (r = s.call(this)).options = e, + r.config = t, + r.uploaderCtx = e.context, + r.currFileCtx = e.context.tasks[e.key], + r.systemTimeGap = 0, + r.retryTime = t.retryTaskTime, + r.hasRetryTime = 0, + r.isImageBatchUpload = !!r.options.isImageBatchUpload, + r.isDirect = r.options.isDirect, + r.serviceName = eG.checkServiceName(r.options.type, r.config, r.options.serviceType), + r + } + return r = a, + i = [{ + key: "start", + value: function(e, t, r) { + this.startOptions = e, + this.failProcess = r, + this.successProcess = t, + this._st = Date.now(), + r = (e = this.uploaderCtx._getCache(this.currFileCtx.crc32Key)) ? JSON.parse(e) : {}, + !this.isDirect && r.oid && r.UploadID ? this.resumeFromCache(r) : this.startPreUpload() + } + }, { + key: "startPreUpload", + value: function() { + var e = this + , t = this.config.region + , r = new ev + , n = (r.on("complete", function(t) { + e.success(t) + }), + r.on("error", function(t) { + e.handleError(t) + }), + "") + , i = {} + , o = this.uploaderCtx.useBackupDomain + , s = eG.checkServiceName(this.options.type, this.config, this.options.serviceType) + , i = s === es ? (n = o ? this.config.imageFallbackHost : this.config.imageHost, + this.createImageXParams()) : (n = o ? this.config.videoFallbackHost : this.config.videoHost, + this.createVodParams()) + , o = (this.currFileCtx.fileSize && (i.FileSize = this.currFileCtx.fileSize), + this.config.useFileExtension && this.currFileCtx.fileName && (this.options.type === ei || this.options.type === en) && (o = this.currFileCtx.fileName, + o = eh.getFileSuffix(o)) && (i.FileExtension = o), + this.options.fileExtension && (i.FileExtension = this.options.fileExtension), + this.config.accountId && (i["X-Account-Id"] = this.config.accountId), + this.options.type !== er && this.config.bizType && (i.BizType = this.config.bizType, + i.AppID = this.config.appId, + i.UserID = this.config.userId), + this.config.openExperiment && (i.app_id = this.config.appId, + i.user_id = this.config.userId), + i.s = Math.random().toString(36).substring(2), + this.options.fileSize && (i.FileSize = this.options.fileSize), + this.currFileCtx.proxyStsToken || this.config.stsToken) + , a = eh.toQueryString(i) + , c = o.AccessKeyID + , u = o.AccessKeyId + , l = o.SecretAccessKey + , f = o.SessionToken + , o = o.CurrentTime + , a = { + method: "GET", + url: "".concat(n, "?").concat(a), + timeout: this.config.gatewayTimeout || 0, + region: t, + params: i, + pathname: eh.getPathByURL(n) + } + , t = new eb.a(a,s) + , i = (this.config.useServerCurrentTime && Math.abs(new Date(o) - new Date) > 6e4 && (this.systemTimeGap = new Date(o) - new Date), + this.systemTimeGap ? new Date((new Date).getTime() + this.systemTimeGap) : new Date); + t.addAuthorization({ + accessKeyId: u || c, + secretAccessKey: l, + sessionToken: f + }, i), + r.send(a) + } + }, { + key: "createImageXParams", + value: function() { + var e, t = { + Action: "ApplyImageUpload", + Version: "2018-08-01" + }; + return this.options.type === en && (this.config.imageConfig && this.config.imageConfig.serviceId ? t.ServiceId = this.config.imageConfig.serviceId : t.SpaceName = this.config.videoConfig && this.config.videoConfig.spaceName), + this.options.type === ei && (t.ServiceId = this.config.objectConfig && this.config.objectConfig.serviceId || this.config.imageConfig && this.config.imageConfig.serviceId), + this.currFileCtx.fileSize && 1 < this.currFileCtx.fileSize.length && (t.UploadNum = this.currFileCtx.fileSize.length), + this.options.storeKey && (e = this.options.storeKey, + "[object Array]" === Object.prototype.toString.call(e) ? t.StoreKeys = e : "[object String]" === Object.prototype.toString.call(e) && (t.StoreKeys = [e])), + t + } + }, { + key: "createVodParams", + value: function() { + var e = this.config.videoConfig && this.config.videoConfig.spaceName + , t = { + Action: "ApplyUploadInner", + Version: "2020-11-19", + SpaceName: e = this.options.type === ei && null != (t = this.config.objectConfig) && t.spaceName ? null == (t = this.config.objectConfig) ? void 0 : t.spaceName : e, + FileType: this.options.type, + IsInner: 1 + }; + return this.config.enOID && (t.EnOID = 1), + (this.options.testHost || this.config.testHost) && (t.TestHost = this.options.testHost || this.config.testHost), + this.startOptions && this.startOptions.selectRouteResult && (e = this.startOptions.selectRouteResult, + t.ClientBestHosts = e.map(function(e) { + return e.domainName + }).join(",")), + t + } + }, { + key: "resumeFromCache", + value: function(e) { + var t = this + , r = this.options.key + , n = new ev + , i = (n.on("complete", function(n) { + var i = null; + try { + var o = JSON.parse(n.response); + if (!(2e3 === o.code && 0 < o.data.partlist.length)) + return t.startPreUpload(); + var s = t.confirmCache(o.data.partlist) + , a = e.hasMerge ? 5 : s.isAllFinished ? 4 : 3 + , i = eH(t.currFileCtx, e, { + key: r, + xhr: n, + extra: { + message: "prepare upload from cache success" + }, + stage: "preUpload", + type: "success", + percent: 0, + cacheTask: a, + proxyStsToken: t.options.stsToken, + currentTask: 1, + status: 1, + isBreak: 1, + crc32Array: s.crc32Array, + stageStartTime: t._st, + stageEndTime: Date.now(), + duration: Date.now() - t._st, + totalDuration: Date.now() - t._st + t.currFileCtx.totalDuration + }) + } catch (e) { + return t.startPreUpload() + } + t.successProcess(i) + }), + n.on("error", function(e) { + e.status >= 400 ? t.startPreUpload() : t.fail({ + error: "request error", + xhr: e + }) + }), + this.config.userId); + n.send({ + method: "get", + url: eh.urlTemplate("{tosDomain}/upload/v1/{oid}?uploadid={uploadId}&action=part_list", { + tosDomain: e.tosDomain, + oid: e.oid, + uploadId: e.UploadID + }), + headers: function(e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}; + t % 2 ? eN(Object(r), !0).forEach(function(t) { + var n, i, o; + n = e, + i = t, + o = r[t], + (i = eK(i))in n ? Object.defineProperty(n, i, { + value: o, + enumerable: !0, + configurable: !0, + writable: !0 + }) : n[i] = o + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : eN(Object(r)).forEach(function(t) { + Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) + }) + } + return e + }({ + Authorization: e.signature, + "X-Storage-U": encodeURIComponent(i) + }, e.UploadHeader), + timeout: 3e4 + }) + } + }, { + key: "confirmCache", + value: function(e) { + var t = this.currFileCtx.crc32Array + , r = {} + , n = (e.forEach(function(e) { + void 0 === r[e.num - 1] && (r[e.num - 1] = { + tag: !0, + crc32: e.crc32 + }) + }), + !0) + , e = t.map(function(e, t) { + return r[t] && r[t].tag && r[t].crc32 ? (e.crc32 = r[t].crc32, + e.finished = !0, + e.loaded = e.end - e.start) : n = !1, + e + }); + return { + isAllFinished: n, + crc32Array: e + } + } + }, { + key: "handleError", + value: function(e) { + if ((this.options.type === en && this.config.imageFallbackHost || this.options.type === er && this.config.videoFallbackHost) && !this.uploaderCtx.useBackupDomain) + this.hasRetryTime < this.retryTime - 1 ? this.hasRetryTime++ : this.uploaderCtx.useBackupDomain = !0, + this.startPreUpload(); + else { + var t = { + error: "request fail: ".concat(e.statusText || e.errText || "UNKNOWN"), + xhr: e + }; + if (e.response) + try { + var r = JSON.parse(e.response); + r.ResponseMetadata && r.ResponseMetadata.Error && (t.errorCode = r.ResponseMetadata.Error.CodeN, + t.error = r.ResponseMetadata.Error.Code, + t.message = r.ResponseMetadata.Error.Message) + } catch (r) { + t.error = e.response.toString(), + t.message = e.response.toString() + } + this.fail(t) + } + } + }, { + key: "success", + value: function(e) { + if (e.response) { + var t = null; + try { + var r = JSON.parse(e.response); + if (r.ResponseMetadata.Error) + return this.fail({ + xhr: e, + errorCode: r.ResponseMetadata.Error.CodeN, + error: r.ResponseMetadata.Error.Code, + message: r.ResponseMetadata.Error.Message + }); + var n, i, o, s, a, c, u, l = this.serviceName, f = r.Result, p = l === es ? f.UploadAddress : f.InnerUploadAddress.UploadNodes[0], h = p.StoreInfos, d = p.UploadHosts, g = p.SessionKey, y = p.UploadHeader, m = l === es ? d[0] : p.UploadHost, v = null == (n = h[0]) ? void 0 : n.UploadID, b = [], _ = []; + this.isImageBatchUpload && 1 < h.length ? h.forEach(function(e) { + b.push(e.Auth), + _.push(e.StoreUri) + }) : (b = h[0].Auth, + _ = h[0].StoreUri), + "vod" === l && (i = f.InnerUploadAddress.UploadNodes).length && 1 < i.length && (s = { + SessionKey: (o = i[1]).SessionKey, + UploadHeader: o.UploadHeader, + StoreInfo: o.StoreInfos[0], + UploadHost: o.UploadHost + }), + this.startOptions && this.startOptions.enableSelectRoute && (u = !0, + this.startOptions.selectRouteResult) && (c = !(((a = this.startOptions.selectRouteResult)[0] && a[0].domainName) !== m)), + t = eH(this.currFileCtx, { + key: this.options.key, + useBackupDomain: this.uploaderCtx.useBackupDomain, + signature: b, + type: "success", + extra: { + message: "prepare upload success" + }, + stage: "preUpload", + oid: _, + systemTimeGap: this.systemTimeGap, + tosDomain: "".concat(this.config.schema, "://").concat(m), + xhr: e, + UploadHeader: void 0 === y ? {} : y, + SessionKey: g, + UploadID: v, + fallbackStoreInfo: s, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currFileCtx.totalDuration, + useClientSelectRouteResult: c, + enableSelectRoute: u + }) + } catch (t) { + return this.fail({ + error: "catch error: ".concat(t.message || t.toString()), + xhr: e + }) + } + return this.successProcess(t) + } + return this.fail({ + error: "request fail: ".concat(e.statusText || e.errText || "UNKNOWN"), + xhr: e + }) + } + }, { + key: "fail", + value: function(e) { + var t = this + , r = e.xhr + , n = e.errorCode || 1001e3 + , i = "prepare upload error: UNKNOWN" + , i = (r && (i = 0 === r.status ? "prepare upload error: NETERROR" : e.message || "prepare upload error: ".concat(r.status)), + eH(this.currFileCtx, { + extra: { + message: i, + error: e.error, + errorCode: n + }, + type: "error", + stage: "preUpload", + xhr: r, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currFileCtx.totalDuration + })); + this.isImageBatchUpload && (i.successImage = [], + i.failImage = null == (e = this.currFileCtx) ? void 0 : e.crc32Array.map(function(e, r) { + return { + crc32: e.crc32, + fileSize: null == (e = t.currFileCtx) ? void 0 : e.fileSize[r], + fileName: null == (e = t.currFileCtx) ? void 0 : e.fileName[r], + finishSize: 0, + success: !1 + } + })), + this.uploaderCtx._removeTaskCache(this.options.key), + this.failProcess(i) + } + }], + eL(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + a + }(); + function eJ(e) { + return (eJ = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function eQ(e, t) { + var r, n = Object.keys(e); + return Object.getOwnPropertySymbols && (r = Object.getOwnPropertySymbols(e), + t && (r = r.filter(function(t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable + })), + n.push.apply(n, r)), + n + } + function eX() { + return (eX = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function e$(e, t) { + for (var r = 0; r < t.length; r++) { + var n = t[r]; + n.enumerable = n.enumerable || !1, + n.configurable = !0, + "value"in n && (n.writable = !0), + Object.defineProperty(e, eZ(n.key), n) + } + } + function eZ(e) { + return e = function(e, t) { + if ("object" !== eJ(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== eJ(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(e, "string"), + "symbol" === eJ(e) ? e : String(e) + } + function eY(e, t) { + return (eY = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function e0(e) { + return (e0 = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var e1 = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && eY(e, t) + }(a, n.a); + var e, t, r, i, o, s = (e = a, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = e0(e); + return function(e, t) { + if (t && ("object" === eJ(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, e0(this).constructor) : r.apply(this, arguments)) + } + ); + function a(e, t) { + var r; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, a), + (r = s.call(this)).options = e, + r.config = t, + r.transport = new ev, + r.uploaderCtx = e.context, + r.currFileCtx = e.context.tasks[e.key], + r.eventInit(), + r + } + return r = a, + i = [{ + key: "initUpload", + value: function(e) { + e && (e = this.currFileCtx.fallbackStoreInfo) && eX(this.currFileCtx, { + oid: e.StoreInfo.StoreUri, + tosDomain: "".concat(this.config.schema, "://").concat(e.UploadHost), + signature: e.StoreInfo.Auth, + UploadHeader: e.UploadHeader, + SessionKey: e.SessionKey + }); + var e = { + oid: this.currFileCtx.oid, + tosDomain: this.currFileCtx.tosDomain + } + , e = eh.urlTemplate("{tosDomain}/upload/v1/{oid}?uploadmode=part&phase=init", e) + , t = this.config.userId; + this.transport.send({ + method: "post", + url: e, + headers: function(e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}; + t % 2 ? eQ(Object(r), !0).forEach(function(t) { + var n, i, o; + n = e, + i = t, + o = r[t], + (i = eZ(i))in n ? Object.defineProperty(n, i, { + value: o, + enumerable: !0, + configurable: !0, + writable: !0 + }) : n[i] = o + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : eQ(Object(r)).forEach(function(t) { + Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) + }) + } + return e + }({ + Authorization: this.currFileCtx.signature, + "X-Storage-U": encodeURIComponent(t) + }, this.currFileCtx.UploadHeader), + timeout: this.config.gatewayTimeout + }) + } + }, { + key: "start", + value: function(e, t, r) { + this.successProcess = t, + this.failProcess = r, + this._st = Date.now(), + this.initUpload(e && e.changeNodeRetry) + } + }, { + key: "eventInit", + value: function() { + var e = this; + this.transport.on("complete", function(t) { + var r = null; + try { + var n, i = JSON.parse(t.response), o = null == (n = i.data) ? void 0 : n.uploadid; + if (2e3 !== i.code || !o) + return e.fail({ + error: "fail! response.code: ".concat(i.code, ", fail message: ").concat(i.message), + xhr: t, + errorCode: null == i ? void 0 : i.code + }); + r = eX(e.currFileCtx, { + UploadID: o, + percent: 0, + type: "success", + extra: { + message: "init upload id success" + }, + stage: "initUploadID", + xhr: t, + stageStartTime: e._st, + stageEndTime: Date.now(), + duration: Date.now() - e._st, + totalDuration: Date.now() - e._st + e.currFileCtx.totalDuration + }) + } catch (r) { + return e.fail({ + error: "catch error: ".concat(r.message || JSON.stringify(r)), + xhr: t + }) + } + return e.successProcess(r) + }), + this.transport.on("error", function(t) { + e.fail({ + error: "request fail: ".concat(t.statusText || t.errText || "UNKNOWN"), + xhr: t + }) + }) + } + }, { + key: "fail", + value: function(e) { + var t = this.options.context + , r = this.options.key + , t = eX(t.tasks[r], { + extra: { + message: "init upload id error, ".concat(e.error), + errorCode: e.errorCode || 1002e3 + }, + type: "error", + stage: "initUploadID", + xhr: e.xhr, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currFileCtx.totalDuration + }); + this.uploaderCtx._removeTaskCache(this.options.key), + this.failProcess(t) + } + }], + e$(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + a + }(); + function e2(e) { + return (e2 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function e3(e, t) { + var r, n = Object.keys(e); + return Object.getOwnPropertySymbols && (r = Object.getOwnPropertySymbols(e), + t && (r = r.filter(function(t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable + })), + n.push.apply(n, r)), + n + } + function e4(e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}; + t % 2 ? e3(Object(r), !0).forEach(function(t) { + var n, i, o; + n = e, + i = t, + o = r[t], + (i = e6(i))in n ? Object.defineProperty(n, i, { + value: o, + enumerable: !0, + configurable: !0, + writable: !0 + }) : n[i] = o + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : e3(Object(r)).forEach(function(t) { + Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) + }) + } + return e + } + function e5(e, t) { + for (var r = 0; r < t.length; r++) { + var n = t[r]; + n.enumerable = n.enumerable || !1, + n.configurable = !0, + "value"in n && (n.writable = !0), + Object.defineProperty(e, e6(n.key), n) + } + } + function e6(e) { + return e = function(e, t) { + if ("object" !== e2(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== e2(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(e, "string"), + "symbol" === e2(e) ? e : String(e) + } + function e8(e, t) { + return (e8 = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function e7(e) { + return (e7 = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var e9 = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && e8(e, t) + }(a, n.a); + var e, t, r, i, o, s = (e = a, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = e7(e); + return function(e, t) { + if (t && ("object" === e2(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, e7(this).constructor) : r.apply(this, arguments)) + } + ); + function a(e) { + var t, r = e.sliceItem, n = e.crc32, i = e.url, o = e.signature, c = e.uploadHeader, u = e.userId, l = e.retryTime, f = e.timeout, e = e.method, e = void 0 === e ? "POST" : e; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, a), + (t = s.call(this)).fileSlice = r, + t.crc32 = n, + t.uploadUrl = i, + t.uploadHeader = c, + t.signature = o, + t.userId = u, + t.retryTime = l || 0, + t.method = e, + t.retryCount = 0, + t.timeout = f, + t.ready = !1, + t.cancel = !1, + t.transport = new ev, + t.eventInit(), + t + } + return r = a, + i = [{ + key: "upload", + value: function(e, t) { + this.isParamsValid() && (this._st = Date.now(), + this.transport && this.transport.send({ + method: this.method, + url: this.uploadUrl, + headers: e4({ + Authorization: this.signature, + "Content-CRC32": this.crc32, + "X-Storage-U": encodeURIComponent(this.userId) + }, this.uploadHeader), + file: this.fileSlice, + binary: 1, + timeout: this.timeout + }), + e) && this.emit("retry", t) + } + }, { + key: "isParamsValid", + value: function() { + return this.fileSlice && (this.fileSlice.size || this.fileSlice.byteLength) ? this.crc32 ? !!this.uploadUrl || (this.emit("error", { + message: "slice upload failed: NOURL", + crc32: this.crc32, + size: this.fileSlice.size || this.fileSlice.byteLength + }), + !1) : (this.emit("error", { + message: "slice upload failed: NOCRC32", + crc32: this.crc32, + size: this.fileSlice.size || this.fileSlice.byteLength + }), + !1) : (this.emit("error", { + message: "slice upload failed: NOCONTENT", + crc32: this.crc32 + }), + !1) + } + }, { + key: "eventInit", + value: function() { + var e = this; + this.transport.on("complete", function(t) { + try { + var r = JSON.parse(t.response); + 2e3 === r.code ? e.success(t) : e.fail(t, r) + } catch (r) { + e.fail(t) + } + }), + this.transport.on("error", function(t) { + e.fail(t) + }), + this.transport.on("progress", function(t) { + e.process(t) + }) + } + }, { + key: "success", + value: function(e) { + this.ready = !0; + var t = Date.now() - this._st + , r = this.fileSlice.size || this.fileSlice.byteLength; + this.emit("complete", { + crc32: this.crc32, + size: r, + speed: r / t, + xhr: e, + sliceStartTime: this._st, + sliceEndTime: Date.now(), + sliceDuration: Date.now() - this._st + }) + } + }, { + key: "fail", + value: function(e) { + var t, r, n = this, i = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : null; + this.cancel || (t = { + crc32: this.crc32, + size: this.fileSlice.size || this.fileSlice.byteLength, + xhr: e, + sliceStartTime: this._st, + sliceEndTime: Date.now(), + sliceDuration: Date.now() - this._st + }, + e && 401 === e.status ? this.emit("error", e4({ + message: "slice upload failed: UNAUTHORIZED" + }, t)) : (r = "slice upload failed: UNKNOWN", + e && (r = e.status ? "slice upload failed: ".concat((null == i ? void 0 : i.message) || e.status) : "slice upload failed: NETERROR"), + this.retryCount < this.retryTime ? (setTimeout(function() { + n.upload(!0, e4({ + message: r + }, t)) + }, 1e3), + this.retryCount++) : this.emit("error", e4({ + message: r, + errorCode: null == i ? void 0 : i.code + }, t)))) + } + }, { + key: "process", + value: function(e) { + this.cancel || this.emit("progress", { + crc32: this.crc32, + loaded: e.loaded || 0, + total: e.total || 0 + }) + } + }, { + key: "abort", + value: function() { + this.transport && (this.cancel = !0, + this.transport.abort()) + } + }, { + key: "destroy", + value: function() { + this.transport = null + } + }], + e5(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + a + }() + , $ = r(2) + , te = r.n($); + function tt(e) { + return (tt = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function tr() { + return (tr = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function tn(e, t) { + (null == t || t > e.length) && (t = e.length); + for (var r = 0, n = Array(t); r < t; r++) + n[r] = e[r]; + return n + } + function ti(e, t) { + for (var r = 0; r < t.length; r++) { + var n, i = t[r]; + i.enumerable = i.enumerable || !1, + i.configurable = !0, + "value"in i && (i.writable = !0), + Object.defineProperty(e, (n = function(e, t) { + if ("object" !== tt(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== tt(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(n = i.key, "string"), + "symbol" === tt(n) ? n : String(n)), i) + } + } + function to(e, t) { + return (to = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function ts(e) { + return (ts = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var ta = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && to(e, t) + }(c, n.a); + var e, t, r, o, s, a = (e = c, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = ts(e); + return function(e, t) { + if (t && ("object" === tt(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, ts(this).constructor) : r.apply(this, arguments)) + } + ); + function c(e) { + var t, r = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : {}; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, c), + (t = a.call(this)).file = e.file, + t.context = e.context, + t.key = e.key, + t.config = r, + t.finishArr = [], + t.errorLength = 0, + t.finishSize = 0, + t.retryUploadTime = Number(r.retryUploadTime), + t.progressMonitorTime = Number(r.progressMonitorTime), + t.progressMonitorSpeed = Number(r.progressMonitorSpeed), + t.uploadSliceCount = Number(r.uploadSliceCount), + t.realtimeSpeedInterval = Number(r.realtimeSpeedInterval), + t.processRetry = 0, + t.lastFinishSize = -1, + t.lastProcessPercent = -1, + t.lastIntervalSize = -1, + t.lastCalculateSpeedTime = -1, + t.lastCalculateSpeedSize = 0, + t.uploadHandlers = {}, + t + } + return r = c, + o = [{ + key: "start", + value: function(e, t, r) { + this.failProcess = r, + this.successProcess = t, + this.errorLength = 0, + this.currentCtx = this.context.tasks[this.key], + this.crc32Array = this.context.tasks[this.key].crc32Array, + this.uploadSliceCount = this.uploadSliceCount > this.crc32Array.length ? this.crc32Array.length : this.uploadSliceCount, + this.lastIndex = 0, + this.uploading = [], + this._uploadSize = this.crc32Array.reduce(function(e, t) { + return e + (t.finished ? 0 : t.end - t.start) + }, 0), + this._st = Date.now(), + this._lastSaveTime = Date.now(), + this.lastCalculateSpeedTime = this._st, + this.initWorker(), + this.setProgressMonitor(), + this.threadUpload() + } + }, { + key: "initWorker", + value: function() { + var e, t = this; + this.worker || (e = this.crc32Array, + this.worker = new te.a, + this.worker.onmessage = function(r) { + var n, i, r = (n = r.data, + i = 4, + function(e) { + if (Array.isArray(e)) + return e + }(n) || function(e, t) { + var r = null == e ? null : "undefined" != typeof Symbol && e[Symbol.iterator] || e["@@iterator"]; + if (null != r) { + var n, i, o, s, a = [], c = !0, u = !1; + try { + if (o = (r = r.call(e)).next, + 0 === t) { + if (Object(r) !== r) + return; + c = !1 + } else + for (; !(c = (n = o.call(r)).done) && (a.push(n.value), + a.length !== t); c = !0) + ; + } catch (e) { + u = !0, + i = e + } finally { + try { + if (!c && null != r.return && (s = r.return(), + Object(s) !== s)) + return + } finally { + if (u) + throw i + } + } + return a + } + }(n, 4) || function(e, t) { + var r; + if (e) + return "string" == typeof e ? tn(e, t) : "Map" === (r = "Object" === (r = Object.prototype.toString.call(e).slice(8, -1)) && e.constructor ? e.constructor.name : r) || "Set" === r ? Array.from(e) : "Arguments" === r || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r) ? tn(e, t) : void 0 + }(n, i) || function() { + throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") + }()), o = r[0], s = r[1], a = r[2], r = r[3], c = (new Date).getTime(), u = e[a]; + u.crc32 = s, + u.crc32StartTime = r, + u.crc32EndTime = c, + u.crc32Duration = c - r, + t.upload(u, o, a) + } + ) + } + }, { + key: "read", + value: function(e, t) { + var r = this + , n = this.file + , i = n.slice || n.webkitSlice || n.mozSlice + , o = new FileReader; + o.onload = function(e) { + var n = (new Date).getTime(); + r.worker.postMessage([e.target.result, t, n, !!r.config.clientEncrypt, r.currentCtx.clientEncryptKey, r.crc32Array.length - 1 === t], [e.target.result]) + } + , + o.onerror = function() { + r.stop(), + r.fail({ + extra: { + message: "An error occurred reading the file", + errorCode: 1003003 + } + }) + } + , + o.readAsArrayBuffer(i.call(n, e.start, e.end)) + } + }, { + key: "threadUpload", + value: function() { + if (this.uploading.length < this.uploadSliceCount) { + var e = this.lastIndex + , t = this.crc32Array[e]; + if (t) { + if (t.finished) { + if (-1 === this.finishArr.indexOf(t.start) && (this.finishArr.push(t.start), + this.finishArr.length >= this.crc32Array.length)) + return this.stop(), + void this.success() + } else + t.loaded = 0, + this.uploading.push(e), + this.read(t, e); + this.lastIndex++, + this.threadUpload() + } + } + } + }, { + key: "stop", + value: function() { + var e = this; + Object.keys(this.uploadHandlers).forEach(function(t) { + e.uploadHandlers[t].abort(), + e.uploadHandlers[t].destroy() + }), + this.uploadHandlers = {}, + this.worker && this.worker.terminate(), + this.worker = null, + this.clearMonitor() + } + }, { + key: "setProgressMonitor", + value: function() { + var e = this; + this.progressMonitorInterval = setInterval(function() { + var t, r = e.finishSize; + r - e.lastIntervalSize < e.progressMonitorTime / 1e3 * e.progressMonitorSpeed * 1024 ? (t = tr(e.currentCtx, { + stage: "process", + type: "warn", + extra: { + message: "percent are not updated in ".concat(e.progressMonitorTime, " seconds") + } + }), + e.context.logger.send(t), + e.context._broadcast("slowProgress", t), + e.clearMonitor()) : e.lastIntervalSize = r + }, this.progressMonitorTime) + } + }, { + key: "clearMonitor", + value: function() { + this.progressMonitorInterval && clearInterval(this.progressMonitorInterval) + } + }, { + key: "upload", + value: function(e, t, r) { + var n = this + , o = e.crc32 + , s = { + part_number: r + 1, + uploadId: this.currentCtx.UploadID, + oid: this.currentCtx.oid, + tosDomain: this.currentCtx.tosDomain + } + , s = eh.urlTemplate(i, s) + , a = this.config.userId + , t = (this.config.clientEncrypt || (t = eh.fileSlice(this.file, e.start, e.end)), + new e9({ + sliceItem: t, + crc32: o, + url: s, + signature: this.currentCtx.signature, + uploadHeader: this.currentCtx.UploadHeader, + userId: a, + method: "POST", + retryTime: this.retryUploadTime, + timeout: this.config.uploadTimeout + })); + t.on("complete", function(t) { + 1 === n.currentCtx.status && (t.start = e.start, + t.crc32StartTime = e.crc32StartTime, + t.crc32EndTime = e.crc32EndTime, + t.crc32Duration = e.crc32Duration, + t.index = r, + n.fileSliceSuccess(t)) + }), + t.on("error", function(t) { + 1 === n.currentCtx.status && (t.start = e.start, + t.crc32StartTime = e.crc32StartTime, + t.crc32EndTime = e.crc32EndTime, + t.crc32Duration = e.crc32Duration, + t.index = r, + n.fail(t)) + }), + t.on("progress", function(t) { + 1 === n.currentCtx.status && (t.start = e.start, + t.index = r, + n.process(t)) + }), + t.on("retry", function(t) { + 1 === n.currentCtx.status && (t.start = e.start, + t.index = r, + n.retry(t)) + }), + t.upload(), + this.uploadHandlers[r] = t + } + }, { + key: "success", + value: function(e) { + this.finishArr = []; + var t = Date.now() - this._st + , t = this._uploadSize / t + , t = tr(this.currentCtx, { + type: "success", + stage: "process", + percent: 100, + extra: { + message: "upload all success" + }, + speed: t, + xhr: e, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._lastSaveTime + this.currentCtx.totalDuration, + isAllFinish: !0 + }); + this.worker && this.worker.terminate(), + this.successProcess(t) + } + }, { + key: "fail", + value: function(e) { + var t = this.errorFormat(e); + t.type = "error", + void 0 !== e.statusCode && tr(this.currentCtx, { + statusCode: e.statusCode + }), + this.errorLength || (this.context.logger.send(tr({}, t)), + this.stop(), + this.context._broadcast("error", t), + this.currentCtx.isBreak ? this.context._cancel(this.key) : this.context._pause(this.key), + this.errorLength++) + } + }, { + key: "retry", + value: function(e) { + e = this.errorFormat(e), + this.context.logger.send(tr({}, e, { + type: "retry" + })) + } + }, { + key: "fileSliceSuccess", + value: function(e) { + var t, r = e.index, n = Date.now(), i = (-1 === this.finishArr.indexOf(e.start) && this.finishArr.push(e.start), + this.crc32Array[r].finished = !0, + this.crc32Array[r].speed = e.speed, + { + message: "slice upload success" + }); + e.xhr && (t = e.xhr, + i.currentUrl = t.currentUrl || "", + tr(this.currentCtx, { + req: { + url: t.currentUrl, + param: t.params + }, + res: { + status: t.status, + body: t.responseText, + header: t.getAllResponseHeaders() + } + }), + delete e.xhr), + this.context.logger.send(tr(this.currentCtx, { + stage: "process", + type: "success", + sliceIndex: r, + extra: i, + totalDuration: n - this._lastSaveTime + this.currentCtx.totalDuration, + sliceStartTime: e.sliceStartTime, + sliceEndTime: e.sliceEndTime, + sliceDuration: e.sliceDuration, + crc32StartTime: e.crc32StartTime, + crc32EndTime: e.crc32EndTime, + crc32Duration: e.crc32Duration + })), + this._lastSaveTime = n, + this.uploading.splice(this.uploading.indexOf(r), 1), + this.uploadHandlers[r] && delete this.uploadHandlers[r], + this.finishArr.length >= this.crc32Array.length ? (this.stop(), + this.success(e.xhr)) : this.threadUpload() + } + }, { + key: "getFinishSize", + value: function(e, t) { + var r = t.crc32 + , n = 0; + return e.forEach(function(e) { + e.crc32 === r ? (e.loaded = t.loaded, + n += t.loaded) : (e.loaded || (e.loaded = 0), + n += e.loaded) + }), + n + } + }, { + key: "process", + value: function(e) { + var t = this.currentCtx.realtimeSpeed || 0 + , r = this.currentCtx.fileSize + , n = (this.finishSize = this.getFinishSize(this.crc32Array, e), + this.finishSize > this.lastFinishSize && ((e = new Date).getTime() - this.lastCalculateSpeedTime > this.realtimeSpeedInterval && (i = e.getTime() - this.lastCalculateSpeedTime, + t = Math.floor((n = this.finishSize - this.lastCalculateSpeedSize) / i), + this.lastCalculateSpeedTime = e.getTime(), + this.lastCalculateSpeedSize = this.finishSize), + this.lastFinishSize = this.finishSize), + Math.floor(this.finishSize / r * 100) || 0) + , i = tr(this.currentCtx, { + stage: "process", + percent: n, + realtimeSpeed: t + }); + n > this.lastProcessPercent && 100 !== n && (this.lastProcessPercent = n, + this.context._broadcast("progress", i)) + } + }, { + key: "errorFormat", + value: function(e) { + var t = this.currentCtx.totalDuration + , r = Date.now() - this._st + , n = e.index + , i = e.crc32 ? { + message: e.message, + data: e.crc32, + size: e.size + } : e.extra + , o = (i.errorCode = (null == (o = e.extra) ? void 0 : o.errorCode) || e.errorCode || 1003e3, + tr(this.currentCtx, { + extra: i, + sliceIndex: n, + stage: "process", + req: {}, + res: {}, + totalDuration: r + t, + sliceStartTime: e.sliceStartTime, + sliceEndTime: e.sliceEndTime, + sliceDuration: e.sliceDuration, + crc32StartTime: e.crc32StartTime, + crc32EndTime: e.crc32EndTime, + crc32Duration: e.crc32Duration + })); + return e.xhr && (i = e.xhr, + o.req = { + url: e.xhr.currentUrl + }, + o.res = { + status: i.status, + body: i.responseText, + header: i.getAllResponseHeaders() + }, + delete e.xhr), + o + } + }], + ti(r.prototype, o), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + c + }(); + function tc(e) { + return (tc = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function tu() { + return (tu = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function tl(e, t) { + var r, n = Object.keys(e); + return Object.getOwnPropertySymbols && (r = Object.getOwnPropertySymbols(e), + t && (r = r.filter(function(t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable + })), + n.push.apply(n, r)), + n + } + function tf(e, t) { + for (var r = 0; r < t.length; r++) { + var n = t[r]; + n.enumerable = n.enumerable || !1, + n.configurable = !0, + "value"in n && (n.writable = !0), + Object.defineProperty(e, tp(n.key), n) + } + } + function tp(e) { + return e = function(e, t) { + if ("object" !== tc(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== tc(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(e, "string"), + "symbol" === tc(e) ? e : String(e) + } + function th(e, t) { + return (th = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function td(e) { + return (td = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var tg = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && th(e, t) + }(a, n.a); + var e, t, r, i, o, s = (e = a, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = td(e); + return function(e, t) { + if (t && ("object" === tc(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, td(this).constructor) : r.apply(this, arguments)) + } + ); + function a(e, t) { + var r; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, a), + (r = s.call(this)).options = e, + r.config = t, + r.transport = new ev, + r.eventInit(), + r.errorCount = 0, + r.uploaderCtx = e.context, + r.currFileCtx = e.context.tasks[e.key], + r + } + return r = a, + i = [{ + key: "mergeFile", + value: function() { + for (var e = { + oid: this.currFileCtx.oid, + uploadId: this.currFileCtx.UploadID, + tosDomain: this.currFileCtx.tosDomain + }, t = this.currFileCtx.crc32Array, r = "", n = 0; n < t.length; n++) + r = (r ? "".concat(r, ",") : "").concat(n + 1, ":").concat(t[n].crc32); + var e = eh.urlTemplate("{tosDomain}/upload/v1/{oid}?uploadmode=part&phase=finish&uploadid={uploadId}", e) + , i = this.config.userId + , i = function(e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}; + t % 2 ? tl(Object(r), !0).forEach(function(t) { + var n, i, o; + n = e, + i = t, + o = r[t], + (i = tp(i))in n ? Object.defineProperty(n, i, { + value: o, + enumerable: !0, + configurable: !0, + writable: !0 + }) : n[i] = o + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : tl(Object(r)).forEach(function(t) { + Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) + }) + } + return e + }({ + Authorization: this.currFileCtx.signature, + "X-Storage-U": encodeURIComponent(i) + }, this.currFileCtx.UploadHeader); + this.config.clientEncrypt && (i["x-upload-encryption-mode"] = 2, + i["x-upload-encryption-key"] = btoa(this.currFileCtx.clientEncryptKey)), + this.transport.send({ + method: "post", + url: e, + headers: i, + custom: r + }) + } + }, { + key: "start", + value: function(e, t, r) { + this.successProcess = t, + this.failProcess = r, + this._st = Date.now(), + this.mergeFile() + } + }, { + key: "eventInit", + value: function() { + var e = this + , t = this.options.stage; + this.transport.on("complete", function(r) { + var n = null; + try { + var i, o = JSON.parse(r.response); + if (2e3 !== o.code || null == (i = o.data) || !i.key) + return e.fail({ + error: "fail! response.code: ".concat(o.code, ", fail message: ").concat(o.message), + xhr: r, + errorCode: o.code + }); + n = tu(e.currFileCtx, { + stage: t, + type: "success", + hasMerge: !0, + extra: { + message: "merge file success" + }, + xhr: r, + stageStartTime: e._st, + stageEndTime: Date.now(), + duration: Date.now() - e._st, + totalDuration: Date.now() - e._st + e.currFileCtx.totalDuration + }) + } catch (t) { + return e.fail({ + error: "response parse error: ".concat(t.message || JSON.stringify(t)), + xhr: r + }) + } + return e.successProcess(n) + }), + this.transport.on("error", function(t) { + e.fail({ + error: "request fail: ".concat(t.statusText || t.errText), + xhr: t + }) + }) + } + }, { + key: "getProcessIndex", + value: function(e) { + var t = 0; + return e.forEach(function(e, r) { + "process" === e.stage && (t = r) + }), + t + } + }, { + key: "fail", + value: function(e) { + e = tu(this.currFileCtx, { + extra: { + message: "merge file error, ".concat(e.error), + errorCode: e.errorCode || 1004e3 + }, + type: "error", + stage: this.options.stage, + xhr: e.xhr, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currFileCtx.totalDuration + }), + this.failProcess(e) + } + }], + tf(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + a + }(); + function ty(e) { + return (ty = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function tm() { + return (tm = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function tv(e, t) { + for (var r = 0; r < t.length; r++) { + var n, i = t[r]; + i.enumerable = i.enumerable || !1, + i.configurable = !0, + "value"in i && (i.writable = !0), + Object.defineProperty(e, (n = function(e, t) { + if ("object" !== ty(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== ty(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(n = i.key, "string"), + "symbol" === ty(n) ? n : String(n)), i) + } + } + function tb(e, t) { + return (tb = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function t_(e) { + return (t_ = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var tS = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && tb(e, t) + }(c, n.a); + var e, t, r, i, s, a = (e = c, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = t_(e); + return function(e, t) { + if (t && ("object" === ty(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, t_(this).constructor) : r.apply(this, arguments)) + } + ); + function c(e) { + var t, r = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : {}; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, c), + (t = a.call(this)).options = e, + t.file = e.file, + t.context = e.context, + t.key = e.key, + t.isImageBatchUpload = e.isImageBatchUpload, + t.config = r, + t.finishArr = [], + t.errorLength = 0, + t.finishSize = 0, + t.retryUploadTime = t.config.retryUploadTime || 0, + t.processRetry = 0, + t.lastFinishSize = -1, + t.lastProcessPercent = -1, + t.lastIntervalSize = -1, + t.uploader = {}, + t._uploadProcessMap = {}, + t + } + return r = c, + i = [{ + key: "start", + value: function(e, t, r) { + this.failProcess = r, + this.successProcess = t, + this.currentCtx = this.context.tasks[this.key], + this.crc32Array = this.context.tasks[this.key].crc32Array, + this._uploadSize = this.isImageBatchUpload ? this.currentCtx.fileSize.reduce(function(e, t) { + return e + t + }) : this.file.size, + this._st = Date.now(), + this.upload() + } + }, { + key: "stop", + value: function() { + var e = this; + this.uploader && Object.keys(this.uploader).forEach(function(t) { + e.uploader[t] && (e.uploader[t].abort(), + e.uploader[t].destroy()) + }) + } + }, { + key: "upload", + value: function() { + for (var e = this, t = this.crc32Array.length, r = 0, n = 0, i = 0; i < t; i++) { + var s = this.crc32Array[i] + , a = s.buffer + , s = s.crc32 + , c = this.currentCtx.signature + , c = "[object Array]" === Object.prototype.toString.call(c) ? c[i] : c + , u = this.currentCtx.oid + , u = "[object Array]" === Object.prototype.toString.call(u) ? u[i] : u + , l = { + oid: u, + tosDomain: this.currentCtx.tosDomain + } + , l = eh.urlTemplate(o, l) + , f = this.config.userId + , p = void 0 + , h = this.isImageBatchUpload ? (p = this.currentCtx.fileSize[i], + this.currentCtx.fileName[i]) : (p = this.file.size, + this.file.name); + this._uploadProcessMap[s] && this._uploadProcessMap[s].success ? r += 1 : (this._uploadProcessMap[s] = { + crc32: s, + fileSize: p, + fileName: h, + oid: u, + finishSize: 0, + success: !1 + }, + (p = new e9({ + sliceItem: a, + crc32: s, + url: l, + signature: c, + uploadHeader: this.currentCtx.UploadHeader, + userId: f, + retryTime: this.retryUploadTime, + method: "POST", + timeout: this.config.uploadTimeout + })).on("complete", function(i) { + r++, + e._uploadProcessMap[i.crc32].finishSize = i.size, + e._uploadProcessMap[i.crc32].success = !0, + n + r === t && e.success(i.xhr) + }), + p.on("error", function(r) { + ++n === t && e.fail(r) + }), + p.on("progress", function(t) { + e.process(t) + }), + p.upload(), + this.uploader[s] = p) + } + } + }, { + key: "success", + value: function(e) { + this.finishArr = []; + var t = Date.now() - this._st + , t = this._uploadSize / t + , r = tm(this.currentCtx, { + type: "success", + stage: "process", + percent: 99, + extra: { + message: "direct upload success" + }, + speed: t, + xhr: e, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currentCtx.totalDuration + }); + this.isImageBatchUpload && (r.successImage = [], + r.failImage = [], + Object.values(this._uploadProcessMap).forEach(function(e) { + (e.success ? r.successImage : r.failImage).push(e) + })), + this.uploader = null, + this._uploadProcessMap = null, + this.successProcess(r) + } + }, { + key: "fail", + value: function(e) { + e = tm(this.currentCtx, { + extra: { + message: "direct upload error: ".concat(e.message || e.xhr.errText), + errorCode: e.errorCode || 1003e3 + }, + type: "error", + stage: "process", + xhr: e.xhr, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currentCtx.totalDuration + }), + this.isImageBatchUpload && (e.failImage = Object.values(this._uploadProcessMap)), + this.uploader = null, + this._uploadProcessMap = null, + this.failProcess(e) + } + }, { + key: "process", + value: function(e) { + var t = this._uploadSize + , e = (this._uploadProcessMap[e.crc32].finishSize = Math.max(this._uploadProcessMap[e.crc32].finishSize, e.loaded), + this.finishSize = Object.values(this._uploadProcessMap).reduce(function(e, t) { + return e + t.finishSize + }, 0), + this.finishSize > this.lastFinishSize && (this.lastFinishSize = this.finishSize), + Math.floor(this.finishSize / t * 100) || 0) + , t = tm(this.currentCtx, { + stage: "process", + percent: e + }); + e > this.lastProcessPercent && 100 !== e && (this.lastProcessPercent = e, + this.context._broadcast("progress", t)) + } + }], + tv(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + c + }(); + function tx(e) { + return (tx = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function tw() { + return (tw = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function tk(e, t) { + for (var r = 0; r < t.length; r++) { + var n, i = t[r]; + i.enumerable = i.enumerable || !1, + i.configurable = !0, + "value"in i && (i.writable = !0), + Object.defineProperty(e, (n = function(e, t) { + if ("object" !== tx(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== tx(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(n = i.key, "string"), + "symbol" === tx(n) ? n : String(n)), i) + } + } + function tE(e, t) { + return (tE = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function tO(e) { + return (tO = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var tT = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && tE(e, t) + }(c, n.a); + var e, t, r, o, s, a = (e = c, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = tO(e); + return function(e, t) { + if (t && ("object" === tx(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, tO(this).constructor) : r.apply(this, arguments)) + } + ); + function c(e) { + var t, r = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : {}; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, c), + (t = a.call(this)).options = e, + t.file = e.file, + t.context = e.context, + t.key = e.key, + t.config = r, + t.errorLength = 0, + t.retryUploadTime = Number(r.retryUploadTime), + t.maxUploadSliceCount = Number(r.uploadSliceCount), + t.uploadQueue = [], + t.crc32Array = [], + t.uploadSliceCount = 0, + t.isCalcCrc32 = !1, + t.isFileReading = !1, + t.hasStarted = !1, + t.hasCompleteUpload = !1, + t + } + return r = c, + o = [{ + key: "start", + value: function(e, t, r) { + this.failProcess = r, + this.successProcess = t, + this.currentCtx = this.context.tasks[this.key], + this.hasStarted = !0, + this._st = Date.now(), + this.initWorker() + } + }, { + key: "initWorker", + value: function() { + var e = this; + this.worker || (this.worker = new te.a, + this.worker.onmessage = function(t) { + e.isCalcCrc32 = !1; + var r = t.data[0] + , n = t.data[2] + , i = t.data[1]; + e.uploadQueue.forEach(function(t, o) { + t.index === n && (e.uploadQueue[o].crc32 = i, + e.uploadQueue[o].fileSliceBuffer = r, + e.crc32Array[n] = { + crc32: i + }) + }), + e.startUploadQueue() + } + , + this.startUploadQueue()) + } + }, { + key: "addStreamSlice", + value: function(e) { + var t = this + , r = e.fileSlice + , n = e.index + , e = (this.isFileReading = !0, + new FileReader); + e.readAsArrayBuffer(r), + e.onload = function(e) { + t.isFileReading = !1, + e = e.target.result, + t.uploadQueue.push({ + fileSliceBuffer: e, + index: n + }), + t.hasStarted && t.startUploadQueue() + } + } + }, { + key: "completeStreamUpload", + value: function() { + this.hasCompleteUpload = !0, + 0 !== this.uploadQueue.length || this.isFileReading || this.success() + } + }, { + key: "startUploadQueue", + value: function() { + var e; + this.uploadSliceCount <= this.maxUploadSliceCount && 0 < this.uploadQueue.length && this.uploadQueue[0].crc32 ? (e = this.uploadQueue.shift(), + this.uploadSliceCount++, + this.upload({ + sliceItem: e.fileSliceBuffer, + index: e.index, + crc32: e.crc32 + })) : 0 < this.uploadQueue.length && !this.uploadQueue[0].crc32 && this.startCrc32Queue() + } + }, { + key: "startCrc32Queue", + value: function() { + if (!this.isCalcCrc32) + for (var e = 0; e < this.uploadQueue.length; e++) { + var t = this.uploadQueue[e]; + if (!t.crc32) { + this.isCalcCrc32 = !0, + this.worker.postMessage([t.fileSliceBuffer, t.index], [t.fileSliceBuffer]); + break + } + } + } + }, { + key: "upload", + value: function(e) { + var t = this + , r = e.sliceItem + , n = e.index + , e = e.crc32 + , o = this.currentCtx.signature + , s = { + part_number: n + 1, + uploadId: this.currentCtx.UploadID, + oid: this.currentCtx.oid, + tosDomain: this.currentCtx.tosDomain + } + , s = eh.urlTemplate(i, s) + , a = this.config.userId + , r = new e9({ + sliceItem: r, + crc32: e, + url: s, + signature: o, + uploadHeader: this.currentCtx.UploadHeader, + userId: a, + retryTime: this.retryUploadTime, + method: "POST", + timeout: this.config.uploadTimeout + }); + r.on("complete", function(e) { + 1 === t.currentCtx.status && (e.index = n, + t.fileSliceSuccess(e)) + }), + r.on("error", function(e) { + 1 === t.currentCtx.status && (e.index = n, + t.fail(e)) + }), + r.upload() + } + }, { + key: "fileSliceSuccess", + value: function(e) { + var t = e.index + , r = Date.now() + , n = { + message: "stream slice upload success" + } + , i = (e.xhr && (i = e.xhr, + n.currentUrl = i.currentUrl || "", + tw(this.currentCtx, { + req: { + url: i.currentUrl, + param: i.params + }, + res: { + status: i.status, + body: i.responseText, + header: i.getAllResponseHeaders() + } + }), + delete e.xhr), + this.context.logger.send(tw(this.currentCtx, { + stage: "process", + type: "success", + sliceIndex: t, + extra: n, + totalDuration: r - this._lastSaveTime + this.currentCtx.totalDuration + })), + tw(this.currentCtx, { + uploadQueueLength: this.uploadQueue.length, + sliceIndex: t + })); + this.context._broadcast("stream-progress", i), + this.uploadSliceCount--, + this.hasCompleteUpload && 0 === this.uploadQueue.length ? this.success(e.xhr) : this.startUploadQueue() + } + }, { + key: "success", + value: function(e) { + this.isAllSuccess || (e = tw(this.currentCtx, { + type: "success", + stage: "process", + percent: 100, + extra: { + message: "all slice upload success" + }, + crc32Array: this.crc32Array, + xhr: e, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currentCtx.totalDuration + }), + this.successProcess(e)) + } + }, { + key: "fail", + value: function(e) { + var t = e.index + , e = tw(this.currentCtx, { + extra: { + message: "stream slice upload error" + }, + type: "error", + stage: "process", + xhr: e.xhr, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currentCtx.totalDuration, + sliceIndex: t + }); + this.context.logger.send(tw({}, e)), + this.context._broadcast("error", e) + } + }], + tk(r.prototype, o), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + c + }(); + function tC(e) { + return (tC = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function tD(e, t) { + var r, n = Object.keys(e); + return Object.getOwnPropertySymbols && (r = Object.getOwnPropertySymbols(e), + t && (r = r.filter(function(t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable + })), + n.push.apply(n, r)), + n + } + function tj(e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}; + t % 2 ? tD(Object(r), !0).forEach(function(t) { + var n, i, o; + n = e, + i = t, + o = r[t], + (i = tz(i))in n ? Object.defineProperty(n, i, { + value: o, + enumerable: !0, + configurable: !0, + writable: !0 + }) : n[i] = o + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : tD(Object(r)).forEach(function(t) { + Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) + }) + } + return e + } + function tI() { + return (tI = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function tP(e, t) { + return function(e) { + if (Array.isArray(e)) + return e + }(e) || function(e, t) { + var r = null == e ? null : "undefined" != typeof Symbol && e[Symbol.iterator] || e["@@iterator"]; + if (null != r) { + var n, i, o, s, a = [], c = !0, u = !1; + try { + if (o = (r = r.call(e)).next, + 0 === t) { + if (Object(r) !== r) + return; + c = !1 + } else + for (; !(c = (n = o.call(r)).done) && (a.push(n.value), + a.length !== t); c = !0) + ; + } catch (e) { + u = !0, + i = e + } finally { + try { + if (!c && null != r.return && (s = r.return(), + Object(s) !== s)) + return + } finally { + if (u) + throw i + } + } + return a + } + }(e, t) || function(e, t) { + var r; + if (e) + return "string" == typeof e ? tA(e, t) : "Map" === (r = "Object" === (r = Object.prototype.toString.call(e).slice(8, -1)) && e.constructor ? e.constructor.name : r) || "Set" === r ? Array.from(e) : "Arguments" === r || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r) ? tA(e, t) : void 0 + }(e, t) || function() { + throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") + }() + } + function tA(e, t) { + (null == t || t > e.length) && (t = e.length); + for (var r = 0, n = Array(t); r < t; r++) + n[r] = e[r]; + return n + } + function tR(e, t) { + for (var r = 0; r < t.length; r++) { + var n = t[r]; + n.enumerable = n.enumerable || !1, + n.configurable = !0, + "value"in n && (n.writable = !0), + Object.defineProperty(e, tz(n.key), n) + } + } + function tz(e) { + return e = function(e, t) { + if ("object" !== tC(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== tC(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(e, "string"), + "symbol" === tC(e) ? e : String(e) + } + function tB(e, t) { + return (tB = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function tU(e) { + return (tU = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var tM = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && tB(e, t) + }(a, n.a); + var e, t, r, i, o, s = (e = a, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = tU(e); + return function(e, t) { + if (t && ("object" === tC(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, tU(this).constructor) : r.apply(this, arguments)) + } + ); + function a(e, t) { + var r; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, a), + (r = s.call(this)).options = e, + r.config = t, + r.uploaderCtx = e.context, + r.currFileCtx = e.context.tasks[e.key], + r.isImageBatchUpload = !!r.options.isImageBatchUpload, + r.skipCommit = e.skipCommit, + r.transport = new ev, + r.eventInit(), + r + } + return r = a, + i = [{ + key: "commitUpload", + value: function() { + var e, t, r = this.config.region, n = "", i = {}, o = this.uploaderCtx.useBackupDomain, s = eG.checkServiceName(this.options.type, this.config, this.options.serviceType), o = (s === es && (n = o ? this.config.imageFallbackHost : this.config.imageHost, + i = (t = tP(this.createImageXParams(), 3))[0], + e = t[1], + t = t[2]), + "vod" === s && (n = o ? this.config.videoFallbackHost : this.config.videoHost, + i = (o = tP(this.createVodParams(), 3))[0], + e = o[1], + t = o[2]), + this.config.accountId && (i["X-Account-Id"] = this.config.accountId), + this.config.openExperiment && (i.app_id = this.config.appId, + i.user_id = this.config.userId), + eh.toQueryString(i)), a = this.currFileCtx.proxyStsToken || this.config.stsToken, c = a.AccessKeyID, u = a.AccessKeyId, l = a.SecretAccessKey, a = a.SessionToken, o = { + method: "POST", + url: "".concat(n, "?").concat(o), + timeout: this.config.gatewayTimeout, + region: r, + params: i, + headers: {}, + pathname: eh.getPathByURL(n) + }, r = (o.custom = t, + o.body = e, + s === es && (o.headers["Content-Type"] = "application/json"), + new eb.a(o,s)), i = this.currFileCtx.systemTimeGap, n = i ? new Date((new Date).getTime() + i) : new Date; + r.addAuthorization({ + accessKeyId: u || c, + secretAccessKey: l, + sessionToken: a + }, n), + this.transport.send(o) + } + }, { + key: "createImageXParams", + value: function() { + var e = { + Action: "CommitImageUpload", + Version: "2018-08-01" + } + , t = { + SessionKey: this.currFileCtx.SessionKey + } + , r = (this.options.type === en && (this.config.imageConfig && this.config.imageConfig.serviceId ? e.ServiceId = this.config.imageConfig.serviceId : e.SpaceName = this.config.videoConfig && this.config.videoConfig.spaceName, + Array.isArray(r = this.config.imageConfig && this.config.imageConfig.processAction) && 0 < r.length && (t.Functions = r), + this.config.skipMeta) && (e.SkipMeta = !0), + this.options.type === ei && (e.ServiceId = this.config.objectConfig && this.config.objectConfig.serviceId || this.config.imageConfig && this.config.imageConfig.serviceId), + JSON.stringify(t)); + return [e, t, r] + } + }, { + key: "createVodParams", + value: function() { + var e = null == (e = this.config.videoConfig) ? void 0 : e.spaceName + , t = { + Action: "CommitUploadInner", + Version: "2020-11-19", + SpaceName: e = this.options.type === ei && null != (t = this.config.objectConfig) && t.spaceName ? null == (t = this.config.objectConfig) ? void 0 : t.spaceName : e + } + , e = { + SessionKey: this.currFileCtx.SessionKey, + Functions: [] + } + , r = this.config.videoConfig && this.config.videoConfig.processAction + , n = (this.options.type === ei && null != (n = this.config.objectConfig) && n.processAction && (r = null == (n = this.config.objectConfig) ? void 0 : n.processAction), + Array.isArray(r) && 0 < r.length && (e.Functions = r), + (this.config.videoConfig && this.config.videoConfig.callbackArgs || this.options.callbackArgs) && (e.CallbackArgs = this.options.callbackArgs || this.config.videoConfig.callbackArgs), + this.options.type === er && this.config.skipDownload && (t.SkipDownload = !0), + this.options.type === ei && this.options.objectSync && (e.ObjectSync = this.options.objectSync), + this.options.type === er && this.options.needExactFormat && (e.needExactFormat = this.options.needExactFormat), + JSON.stringify(e)); + return [t, e, n] + } + }, { + key: "start", + value: function(e, t, r) { + if (this.successProcess = t, + this.failProcess = r, + this._st = Date.now(), + this.skipCommit) + return this.successProcess(tI(this.currFileCtx, { + stage: "complete", + type: "success", + percent: 100, + extra: { + message: "upload successful, skip commit" + }, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currFileCtx.totalDuration, + skipCommit: this.skipCommit + })); + try { + this.commitUpload() + } catch (e) { + this.fail({ + error: "catch error: ".concat(e.toString()) + }) + } + } + }, { + key: "eventInit", + value: function() { + var e = this; + this.transport.on("complete", function(t) { + var r = null; + try { + var n = JSON.parse(t.response); + if (n.ResponseMetadata.Error) + return e.fail({ + xhr: t, + errorCode: n.ResponseMetadata.Error.CodeN, + error: n.ResponseMetadata.Error.Code, + message: n.ResponseMetadata.Error.Message + }); + var i, o, s = eG.checkServiceName(e.options.type, e.config, e.options.serviceType), a = n.Result, c = {}; + s === es ? e.isImageBatchUpload ? (i = a.Results, + o = a.PluginResult || [], + i.forEach(function(e, t) { + i[t] = tj(tj({}, i[t]), o[t]) + }), + c = i) : tI(c = a.Results[0], a.PluginResult && a.PluginResult[0]) : c = a.Results[0], + r = tI(e.currFileCtx, { + stage: "complete", + type: "success", + percent: 100, + extra: { + message: "upload successful" + }, + uploadResult: c, + xhr: t, + stageStartTime: e._st, + stageEndTime: Date.now(), + duration: Date.now() - e._st, + totalDuration: Date.now() - e._st + e.currFileCtx.totalDuration, + skipCommit: e.skipCommit + }) + } catch (r) { + return e.fail({ + error: "catch error: ".concat(r.message || r.toString()), + xhr: t + }) + } + return e.successProcess(r) + }), + this.transport.on("error", function(t) { + var r = { + error: "request fail: ".concat(t.statusText || t.errText || "UNKNOWN"), + xhr: t + }; + if (t.response) + try { + var n = JSON.parse(t.response); + n.ResponseMetadata && n.ResponseMetadata.Error && (r.errorCode = n.ResponseMetadata.Error.CodeN, + r.error = n.ResponseMetadata.Error.Code, + r.message = n.ResponseMetadata.Error.Message) + } catch (e) { + r.error = t.response.toString(), + r.message = t.response.toString() + } + e.fail(r) + }) + } + }, { + key: "fail", + value: function(e) { + var t = e.xhr + , r = e.errorCode || 1005e3 + , n = "commit upload error: UNKNOWN" + , n = (t && (n = 0 === t.status ? "commit upload error: NETERROR" : e.message || "commit upload error: ".concat(t.status)), + tI(this.currFileCtx, { + extra: { + message: n, + error: e.error, + errorCode: r + }, + type: "error", + stage: "complete", + xhr: t, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currFileCtx.totalDuration, + skipCommit: this.skipCommit + })); + this.failProcess(n) + } + }], + tR(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + a + }(); + function tG(e) { + return (tG = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function tF(e, t) { + var r, n = Object.keys(e); + return Object.getOwnPropertySymbols && (r = Object.getOwnPropertySymbols(e), + t && (r = r.filter(function(t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable + })), + n.push.apply(n, r)), + n + } + function tN(e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}; + t % 2 ? tF(Object(r), !0).forEach(function(t) { + var n, i, o; + n = e, + i = t, + o = r[t], + (i = tK(i))in n ? Object.defineProperty(n, i, { + value: o, + enumerable: !0, + configurable: !0, + writable: !0 + }) : n[i] = o + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : tF(Object(r)).forEach(function(t) { + Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) + }) + } + return e + } + function tH() { + return (tH = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function tL(e, t) { + for (var r = 0; r < t.length; r++) { + var n = t[r]; + n.enumerable = n.enumerable || !1, + n.configurable = !0, + "value"in n && (n.writable = !0), + Object.defineProperty(e, tK(n.key), n) + } + } + function tK(e) { + return e = function(e, t) { + if ("object" !== tG(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== tG(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(e, "string"), + "symbol" === tG(e) ? e : String(e) + } + function tq(e, t) { + return (tq = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function tV(e) { + return (tV = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var tW = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && tq(e, t) + }(a, n.a); + var e, t, r, i, o, s = (e = a, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = tV(e); + return function(e, t) { + if (t && ("object" === tG(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, tV(this).constructor) : r.apply(this, arguments)) + } + ); + function a(e, t, r, n) { + var i; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, a), + (i = s.call(this, e)).tasks = e, + i.config = t, + i.key = n, + i.uploaderCtx = r, + i.current = 0, + i.length = i.tasks.length, + i.taskError = {}, + i.uploadList = [], + i.retryTaskTime = t.retryTaskTime, + i + } + return r = a, + i = [{ + key: "start", + value: function(e) { + var t = this.tasks.shift(); + t && (this.current = t.index, + this.execTask(t, e)) + } + }, { + key: "execTask", + value: function(e, t) { + var r, n, i = this, o = e.key, s = this.uploaderCtx, a = s.tasks[o]; + a && (r = a.cacheTask, + n = s.taskList[o].length, + r && 0 < e.index && e.index < r ? this.start() : (a.currentTask = e.index, + 1 === a.status && (1 !== e.index && "initUploadID" !== e.stage || (e.arg = tH(e.arg, t)), + e) && e.func.call(e.context, e.arg, function(r) { + var c; + s.taskList[o] && ((c = s.taskList[o][e.index + 1]) && 0 !== e.index && !a.isDirect && i.config.enableDiskBreakpoint ? s._saveTask(o, { + currentTask: c.index, + stage: c.stage + }) : e.index === n - 1 && s._removeTaskCache(o), + i.success(r), + 0 < i.tasks.length ? i.start(t) : s._queueSuccess(o)) + }, function(r) { + var n; + r.xhr && r.xhr.status >= 400 || 3 === e.index && r.isDirect ? i.fail(r) : !i.taskError[o] || i.taskError[o] < i.retryTaskTime ? (i.taskError[o] ? i.taskError[o]++ : i.taskError[o] = 1, + n = i.errorFormat(r, !0), + i.uploaderCtx.logger.send(n), + "initUploadID" === e.stage ? i.execTask(e, tN(tN({}, t), {}, { + changeNodeRetry: !0 + })) : i.execTask(e, t)) : (r.key = o, + i.fail(r)) + }))) + } + }, { + key: "addTask", + value: function(e) { + this.tasks.push(e) + } + }, { + key: "success", + value: function(e) { + var t; + e.xhr && (t = e.xhr, + e.req = { + url: t.currentUrl, + param: t.params + }, + e.res = { + status: t.status, + header: t.getAllResponseHeaders(), + body: t.responseText + }, + delete e.xhr), + tH(e, { + type: "success" + }); + try { + this.uploaderCtx._broadcast(e.stage, e) + } catch (e) { + console.error(e) + } + this.uploaderCtx.logger.send(e) + } + }, { + key: "fail", + value: function(e) { + var t = this.uploaderCtx + , r = e.key + , e = this.errorFormat(e); + try { + t._broadcast("error", e) + } catch (e) {} + t.tasks[r].isBreak ? t._cancel(r) : t._pause(r), + t.logger.send(e) + } + }, { + key: "cancel", + value: function(e) { + var t, r = this.key, n = this.uploaderCtx.tasks[r].currentTask; + this.uploaderCtx.taskList[r].forEach(function(e) { + n === e.index && (t = e) + }), + e ? 3 === n && this.uploaderCtx.tasks[r].isDirect && t && null != (e = t) && null != (e = e.context) && e.stop() : (this.tasks = [], + t && 3 === t.index && t.context.stop(), + this.uploaderCtx._removeTaskCache(r)) + } + }, { + key: "restart", + value: function() { + this.uploadList.forEach(function(e) { + e.cancel = !1 + }), + this.start() + } + }, { + key: "errorFormat", + value: function(e, t) { + var r, t = { + type: t ? "retry" : "error" + }; + return e.xhr && (r = e.xhr, + e.req = { + url: r.currentUrl, + param: r.params + }, + e.res = { + status: r.status, + header: r.getAllResponseHeaders(), + body: r.responseText + }, + e.extra && (e.extra.req = e.req, + e.extra.res = e.res), + delete e.xhr), + tH(e, t) + } + }], + tL(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + a + }(); + function tJ(e) { + return (tJ = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function tQ() { + return (tQ = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function tX(e, t) { + for (var r = 0; r < t.length; r++) { + var n, i = t[r]; + i.enumerable = i.enumerable || !1, + i.configurable = !0, + "value"in i && (i.writable = !0), + Object.defineProperty(e, (n = function(e, t) { + if ("object" !== tJ(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== tJ(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(n = i.key, "string"), + "symbol" === tJ(n) ? n : String(n)), i) + } + } + function t$(e, t) { + return (t$ = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function tZ(e) { + if (void 0 === e) + throw ReferenceError("this hasn't been initialised - super() hasn't been called"); + return e + } + function tY(e) { + return (tY = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var t0 = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && t$(e, t) + }(c, n.a); + var e, t, r, i, o, a = (e = c, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = tY(e); + return function(e, t) { + if (t && ("object" === tJ(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return tZ(e) + }(this, t ? Reflect.construct(r, arguments, tY(this).constructor) : r.apply(this, arguments)) + } + ); + function c(e) { + var t; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, c), + (t = a.call(this, e)).config = tQ({}, s), + t._mergeOptions(t.config, e), + t.tasks = {}, + t.taskList = {}, + t.cache = {}, + t.storage = eh.storage(tZ(t), t.config.enableDiskBreakpoint), + t.logger = t.config.noLog ? { + send: function() { + return !0 + } + } : new el(t.config,tZ(t)), + t + } + return r = c, + i = [{ + key: "_mergeOptions", + value: function(e, t) { + t && "object" === tJ(t) && (tQ(e, t), + Object.keys(t).forEach(function(r) { + "vodDomain" === r && (e.replace[r] = t[r]) + })) + } + }, { + key: "_setCache", + value: function(e, t) { + this.storage.setItem(e, t) + } + }, { + key: "_getCache", + value: function(e) { + return this.storage.getItem(e) + } + }, { + key: "_removeCache", + value: function(e) { + e ? this.storage.removeItem(e) : this.storage.clear() + } + }, { + key: "_addTask", + value: function(e, t) { + var r = this.tasks + , n = this.taskList; + r[e] && r[e].task ? n[e].push(t) : (n[e] = [], + n[e].push(t), + r[e] = r[e] || {}, + r[e].task = new tW([],this.config,this,e)), + r[e].task.addTask(t) + } + }, { + key: "_broadcast", + value: function(e, t, r) { + (r || 1 === (r = this.tasks[t.key].status) || 0 === r) && this.emit(e, t) + } + }, { + key: "_addCrc32ProcessTask", + value: function(e, t) { + var r = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : {} + , n = r.isDirect + , r = r.isImageBatchUpload + , e = new eM({ + file: e.file, + context: this, + key: t, + isDirect: n, + isImageBatchUpload: void 0 !== r && r + },this.config) + , n = { + context: e, + func: e.start, + arg: {}, + key: t, + index: 0, + stage: "crc32" + }; + this._addTask(t, n) + } + }, { + key: "_addPreUploadTask", + value: function(e, t) { + var r = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : {} + , n = r.isDirect + , r = r.isImageBatchUpload + , n = { + file: e.file, + stsToken: e.stsToken, + context: this, + type: e.type || er, + preUploadUriParams: e.preUploadUriParams || {}, + storeKey: e.storeKey, + testHost: e.testHost, + key: t, + isDirect: n, + isImageBatchUpload: void 0 !== r && r, + fileSize: e.fileSize, + serviceType: e.serviceType || null, + fileExtension: e.fileExtension + } + , r = new eW(n,this.config) + , e = { + context: r, + func: r.start, + arg: {}, + key: t, + index: 1, + stage: "preUpload" + }; + this._addTask(t, e) + } + }, { + key: "_addDirectUploadTask", + value: function(e, t) { + var r = (2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : {}).isImageBatchUpload + , e = new tS({ + file: e.file, + context: this, + key: t, + isImageBatchUpload: void 0 !== r && r + },this.config) + , r = { + context: e, + func: e.start, + arg: {}, + key: t, + index: 3, + stage: "process" + }; + this._addTask(t, r) + } + }, { + key: "_addInitUploadIDTask", + value: function(e, t) { + e = { + context: e = new e1({ + file: e.file, + context: this, + key: t + },this.config), + func: e.start, + arg: {}, + key: t, + index: 2, + stage: "initUploadID" + }, + this._addTask(t, e) + } + }, { + key: "_addUploadProcessTask", + value: function(e, t) { + e = { + context: e = new ta({ + file: e.file, + context: this, + key: t + },this.config), + func: e.start, + arg: {}, + key: t, + index: 3, + stage: "process" + }, + this._addTask(t, e) + } + }, { + key: "_addStreamUploadTask", + value: function(e, t) { + this.streamUploadTask = new tT({ + context: this, + key: t + },this.config); + var r = { + context: this.streamUploadTask, + func: this.streamUploadTask.start, + arg: {}, + key: t, + index: 3, + stage: "process" + }; + this._addTask(t, r) + } + }, { + key: "_mergeFileTask", + value: function(e, t) { + e = { + context: e = new tg({ + file: e.file, + context: this, + stage: "fileMerge", + key: t + },this.config), + func: e.start, + arg: {}, + key: t, + index: 4, + stage: "fileMerge" + }, + this._addTask(t, e) + } + }, { + key: "_getMetaInfoTask", + value: function(e, t) { + var r = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : {} + , n = r.isImageBatchUpload + , r = r.skipCommit + , n = { + file: e.file, + context: this, + data: e.data, + type: e.type || er, + callbackArgs: e.callbackArgs, + objectSync: e.objectSync, + needExactFormat: e.needExactFormat, + key: t, + isImageBatchUpload: void 0 !== n && n, + skipCommit: void 0 !== r && r, + serviceType: e.serviceType || null + } + , r = new tM(n,this.config) + , e = { + context: r, + func: r.start, + arg: {}, + key: t, + index: 5, + stage: "complete" + }; + this._addTask(t, e) + } + }, { + key: "_addAllUploadProcess", + value: function(e, t) { + var r = e.type === en && "[object Array]" === Object.prototype.toString.call(e.file) + , n = (this.tasks[t] = this.tasks[t] || {}, + this.tasks[t].fileType = e.type || er, + this.tasks[t].fileSize = e.file && e.file.size, + this.tasks[t].proxyStsToken = e.stsToken, + this.lastStsToken = e.stsToken, + this.lastFile = e.file, + e.file.size <= eh.getFileSliceLength(e.file) || r) + , n = (e.useDirectUpload && (n = !0), + this._addCrc32ProcessTask(e, t, { + isDirect: n, + isImageBatchUpload: r + }), + this._addPreUploadTask(e, t, { + isDirect: n, + isImageBatchUpload: r + }), + n ? this._addDirectUploadTask(e, t, { + isImageBatchUpload: r + }) : (this._addInitUploadIDTask(e, t), + this._addUploadProcessTask(e, t), + this._mergeFileTask(e, t)), + !(!this.config.skipCommit || eG.checkServiceName(e.type, this.config) !== es)); + this._getMetaInfoTask(e, t, { + isImageBatchUpload: r, + skipCommit: n + }) + } + }, { + key: "_addAllUploadProcessClientEncrypt", + value: function(e) { + var t, r = this; + return e.type === en && Array.isArray(e.file) ? (t = [], + e.file.forEach(function(n) { + t.push(r._createClientEncryptTask({ + stsToken: e.stsToken, + type: e.type, + file: n + })) + }), + t) : this._createClientEncryptTask(e) + } + }, { + key: "_createClientEncryptTask", + value: function(e) { + var t = eh.getUnique("file") + , r = (this.tasks[t] = this.tasks[t] || {}, + this.tasks[t].fileType = e.type || er, + this.tasks[t].fileSize = e.file && e.file.size, + this.tasks[t].proxyStsToken = e.stsToken, + this.tasks[t].clientEncryptKey = eh.generateKey(16), + this._addCrc32ProcessTask(e, t, { + isDirect: !1, + isImageBatchUpload: !1 + }), + this._addPreUploadTask(e, t, { + isDirect: !1, + isImageBatchUpload: !1 + }), + this._addInitUploadIDTask(e, t), + this._addUploadProcessTask(e, t), + this._mergeFileTask(e, t), + !(!this.config.skipCommit || eG.checkServiceName(e.type, this.config) !== es)); + return this._getMetaInfoTask(e, t, { + isImageBatchUpload: !1, + skipCommit: r + }), + t + } + }, { + key: "_addAllStreamUploadProcess", + value: function(e, t) { + this.tasks[t] = this.tasks[t] || {}, + this.tasks[t].fileType = e.type || er, + this.tasks[t].proxyStsToken = e.stsToken, + this._addPreUploadTask(e, t), + this._addInitUploadIDTask(e, t), + this._addStreamUploadTask(e, t), + this._mergeFileTask(e, t), + this._getMetaInfoTask(e, t) + } + }, { + key: "_addStreamSlice", + value: function(e) { + var t = e.fileSlice + , e = e.index; + this.streamUploadTask.addStreamSlice({ + fileSlice: t, + index: e + }) + } + }, { + key: "_completeStreamUpload", + value: function() { + this.streamUploadTask.completeStreamUpload() + } + }, { + key: "_run", + value: function(e, t) { + var r = this.tasks + , n = navigator.userAgent.toLowerCase().match(/msie ([\d.]+)/); + n && n[1] && 9 >= Number(n[1]) ? (this._broadcast("error", tQ(r[e], { + key: e, + status: 0, + stage: "browserError", + extra: { + message: "cannot support the browser below ie10" + }, + type: "error" + })), + this.logger.send(r[e]), + this._cancel(e)) : r[e] ? 3 === r[e].status ? this._restart(e) : (r[e].startTime = (new Date).getTime(), + r[e].task && 1 !== r[e].status && r[e].task.tasks.length && (r[e].status = 1, + this.logger.send(tQ({}, r[e], { + extra: { + message: "start upload" + }, + type: "start", + key: e + })), + r[e].task.start(t))) : console.warn("".concat(e, " is not exit in object tasks, stop running...")) + } + }, { + key: "_selectRoute", + value: function(e, t) { + new eC({ + stsToken: this.lastStsToken, + context: this, + type: er, + file: this.lastFile + },this.config).start(e, t) + } + }, { + key: "_restart", + value: function(e) { + var t, r, n = this, i = this.tasks; + i[e] ? (t = i[e].task, + r = i[e].currentTask || 0, + this.taskList[e].forEach(function(i, o) { + i.index === r && (t.tasks = n.taskList[e].slice(o)) + }), + t && 1 !== i[e].status && t.tasks.length && (i[e].status = 1, + t.restart())) : console.warn("".concat(e, " is not exit in object tasks")) + } + }, { + key: "_cancel", + value: function(e) { + var t = this.tasks; + t[e] ? (t[e].status = 2, + t[e].task.cancel(), + delete this.taskList[e]) : console.warn("".concat(e, " is not exit in object tasks")) + } + }, { + key: "_pause", + value: function(e) { + var t = this.tasks; + t[e] ? (t[e].status = 3, + t[e].task.cancel(!0), + t[e].isDirect || this._saveTask(e)) : console.warn("".concat(e, " is not exit in object tasks")) + } + }, { + key: "_removeTaskCache", + value: function(e) { + var t = this.tasks; + t[e] ? (t = t[e].crc32Key) && this._removeCache(t) : console.warn("".concat(e, " is not exit in object tasks")) + } + }, { + key: "_saveTask", + value: function(e, t) { + t = (e = tQ({}, this.tasks[e], t || {})).crc32Key; + try { + t && this._setCache(t, this.serializeCacheInfo(e)) + } catch (e) { + console.warn(e) + } + } + }, { + key: "serializeCacheInfo", + value: function(e) { + var t = ""; + delete e.task, + delete e.xhr, + delete e.crc32Array; + try { + t = JSON.stringify(e) + } catch (n) { + var r = {}; + Object.keys(e).forEach(function(t) { + "task" !== t && "xhr" !== t && "crc32Array" !== t && (r[t] = e[t]) + }), + t = JSON.stringify(r) + } + return t + } + }, { + key: "_queueSuccess", + value: function(e) { + var t, r = this.tasks; + r[e] ? (t = new Date, + r[e].endTime = t.getTime(), + r[e].time = r[e].endTime - r[e].startTime, + r[e].status = 0, + delete this.taskList[e], + delete r[e]) : console.warn("".concat(e, " is not exit in object tasks")) + } + }, { + key: "_removeFile", + value: function(e) { + delete this.tasks[e] + } + }, { + key: "_batchAction", + value: function(e, t) { + Object.keys(this.tasks).forEach(function(r) { + e && e(r, t) + }) + } + }, { + key: "_refreshSTSToken", + value: function(e) { + var t = this + , r = this.tasks; + Object.keys(r).forEach(function(n) { + var n = r[n] + , i = tQ({}, n, { + proxyStsToken: e + }) + , o = (n.proxyStsToken = e, + i.crc32Key); + o && (n.proxyStsToken = e, + t._setCache(o, t.serializeCacheInfo(i))) + }) + } + }, { + key: "_setOption", + value: function(e) { + this._mergeOptions(this.config, e) + } + }, { + key: "_getOption", + value: function(e) { + var t = tQ({}, this.config); + return Object.keys(t).forEach(function(e) { + (-1 < e.indexOf("Url") || "replace" === e || "log" === e) && delete t[e] + }), + e ? t[e] : t + } + }, { + key: "_userCancel", + value: function(e) { + var t = this + , r = this.tasks; + e ? (this._cancel(e), + this.logger.send(tQ({}, r[e], { + type: "cancel" + })), + delete this.tasks[e]) : Object.keys(r).forEach(function(e) { + t._cancel(e), + t.logger.send(tQ({}, r[e], { + type: "cancel" + })), + delete t.tasks[e] + }) + } + }, { + key: "_userPause", + value: function(e) { + var t = this + , r = this.tasks; + e ? (this._pause(e), + this.logger.send(tQ({}, r[e], { + type: "pause" + }))) : Object.keys(r).forEach(function(e) { + t._pause(e), + t.logger.send(tQ({}, r[e], { + type: "pause" + })) + }) + } + }], + tX(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + c + }(); + function t1(e) { + return (t1 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function t2(e, t) { + var r, n = Object.keys(e); + return Object.getOwnPropertySymbols && (r = Object.getOwnPropertySymbols(e), + t && (r = r.filter(function(t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable + })), + n.push.apply(n, r)), + n + } + function t3(e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}; + t % 2 ? t2(Object(r), !0).forEach(function(t) { + var n, i, o; + n = e, + i = t, + o = r[t], + (i = t5(i))in n ? Object.defineProperty(n, i, { + value: o, + enumerable: !0, + configurable: !0, + writable: !0 + }) : n[i] = o + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : t2(Object(r)).forEach(function(t) { + Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) + }) + } + return e + } + function t4(e, t) { + for (var r = 0; r < t.length; r++) { + var n = t[r]; + n.enumerable = n.enumerable || !1, + n.configurable = !0, + "value"in n && (n.writable = !0), + Object.defineProperty(e, t5(n.key), n) + } + } + function t5(e) { + return e = function(e, t) { + if ("object" !== t1(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== t1(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(e, "string"), + "symbol" === t1(e) ? e : String(e) + } + function t6(e, t) { + return (t6 = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function t8(e) { + return (t8 = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var t7 = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && t6(e, t) + }(s, t0); + var e, t, r, n, i, o = (e = s, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = t8(e); + return function(e, t) { + if (t && ("object" === t1(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, t8(this).constructor) : r.apply(this, arguments)) + } + ); + function s() { + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, s), + o.apply(this, arguments) + } + return r = s, + n = [{ + key: "start", + value: function(e) { + var t = this + , r = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : {}; + this.abort = !1, + r.selectRoute ? this._selectRoute(r, function(r) { + r = t3(t3({}, r), {}, { + enableSelectRoute: !0 + }), + e ? t._run(e, r) : t._batchAction(t._run.bind(t), r) + }) : e ? this._run(e) : this._batchAction(this._run.bind(this)) + } + }, { + key: "addFile", + value: function(e) { + var t; + return e && eG.checkStsToken(e.stsToken) ? e.file && this.config.clientEncrypt ? this._addAllUploadProcessClientEncrypt(e) : e.file ? (t = eh.getUnique("file"), + this._addAllUploadProcess(e, t), + t) : null : (this.emit("error", { + extra: { + message: eA, + errorCode: 1000002 + } + }), + null) + } + }, { + key: "addImageFile", + value: function(e) { + var t; + return e && eG.checkStsToken(e.stsToken) ? e.file ? (e.type = e.type || en, + t = eh.getUnique("file"), + this._addAllUploadProcess(e, t), + t) : null : (this.emit("error", { + extra: { + message: eA, + errorCode: 1000002 + } + }), + null) + } + }, { + key: "addStreamUploadTask", + value: function(e) { + var t; + return e && eG.checkStsToken(e.stsToken) ? (t = eh.getUnique("file"), + this._addAllStreamUploadProcess(e, t), + t) : (this.emit("error", { + extra: { + message: eA, + errorCode: 1000002 + } + }), + null) + } + }, { + key: "addStreamSlice", + value: function(e) { + var t = e.fileSlice + , e = e.index; + this._addStreamSlice({ + fileSlice: t, + index: e + }) + } + }, { + key: "completeStreamUpload", + value: function() { + this._completeStreamUpload() + } + }, { + key: "removeFile", + value: function(e) { + e && this._removeFile(e) + } + }, { + key: "cancel", + value: function(e) { + e ? this._userCancel(e) : this._batchAction(this._userCancel.bind(this)) + } + }, { + key: "pause", + value: function(e) { + this._userPause(e) + } + }, { + key: "restart", + value: function(e) { + e ? this._restart(e) : this._batchAction(this._restart.bind(this)) + } + }, { + key: "refreshSTSToken", + value: function(e) { + this._refreshSTSToken(e) + } + }, { + key: "setOption", + value: function(e) { + this._setOption(e) + } + }, { + key: "getOption", + value: function(e) { + return this._getOption(e) + } + }], + t4(r.prototype, n), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + s + }() +} + + +// 1. 创建一个模拟的 module 对象 +var myTempModule = { exports: {} }; + +// 2. 获取全局上下文 (通常是 window) +var globalCtx = (typeof window !== 'undefined' ? window : typeof self !== 'undefined' ? self : globalThis); +var fncache = {}; + +T499845(window.tttt.e) +T984826(window.tttt.e, window.tttt.t, window.tttt.i) +T203960(window.tttt.e, window.tttt.t, window.tttt.i) + +// TEST(myTempModule, globalCtx, (num)=>{ +// fncache[num] = myTempModule.exports; +// }); +// TEST2(myTempModule, globalCtx, (num)=>{ +// fncache[num] = myTempModule.exports; +// }); +// TEST3(myTempModule, globalCtx, (num)=>{ +// fncache[num] = myTempModule.exports; +// }); +// TEST4(myTempModule, globalCtx, (num)=>{ +// fncache[num] = myTempModule.exports; +// }); +// TEST5(myTempModule, globalCtx, (num)=>{ +// fncache[num] = myTempModule.exports; +// }); +// console.log(fncache); \ No newline at end of file diff --git a/temp/lib-uploader.3.js b/temp/lib-uploader.3.js new file mode 100644 index 0000000..badc734 --- /dev/null +++ b/temp/lib-uploader.3.js @@ -0,0 +1,480 @@ + +(function (e, t) { + if ( + ("undefined" != typeof window && + window.crypto && + (r = window.crypto), + "undefined" != typeof self && + self.crypto && + (r = self.crypto), + "undefined" != typeof globalThis && + globalThis.crypto && + (r = globalThis.crypto), + !r && + "undefined" != typeof window && + window.msCrypto && + (r = window.msCrypto), + !r && void 0 !== o && o.crypto && (r = o.crypto), + !r) + ) + try { + r = n.default; + } catch (e) {} + var r, + i = function () { + if (r) { + if ("function" == typeof r.getRandomValues) + try { + return r.getRandomValues( + new Uint32Array(1) + )[0]; + } catch (e) {} + if ("function" == typeof r.randomBytes) + try { + return r.randomBytes(4).readInt32LE(); + } catch (e) {} + } + throw Error( + "Native crypto module could not be used to get secure random number." + ); + }, + s = + Object.create || + (function () { + function e() {} + return function (t) { + var r; + return ( + (e.prototype = t), + (r = new e()), + (e.prototype = null), + r + ); + }; + })(), + a = {}, + c = (a.lib = {}), + u = (c.Base = { + extend: function (e) { + var t = s(this); + return ( + e && t.mixIn(e), + (t.hasOwnProperty("init") && + this.init !== t.init) || + (t.init = function () { + t.$super.init.apply(this, arguments); + }), + (t.init.prototype = t), + (t.$super = this), + t + ); + }, + create: function () { + var e = this.extend(); + return e.init.apply(e, arguments), e; + }, + init: function () {}, + mixIn: function (e) { + for (var t in e) + e.hasOwnProperty(t) && (this[t] = e[t]); + e.hasOwnProperty("toString") && + (this.toString = e.toString); + }, + clone: function () { + return this.init.prototype.extend(this); + }, + }), + l = (c.WordArray = u.extend({ + init: function (e, t) { + (e = this.words = e || []), + (this.sigBytes = + null != t ? t : 4 * e.length); + }, + toString: function (e) { + return (e || p).stringify(this); + }, + concat: function (e) { + var t = this.words, + r = e.words, + n = this.sigBytes, + i = e.sigBytes; + if ((this.clamp(), n % 4)) + for (var o = 0; o < i; o++) { + var s = + (r[o >>> 2] >>> (24 - (o % 4) * 8)) & 255; + t[(n + o) >>> 2] |= + s << (24 - ((n + o) % 4) * 8); + } + else + for (var a = 0; a < i; a += 4) + t[(n + a) >>> 2] = r[a >>> 2]; + return (this.sigBytes += i), this; + }, + clamp: function () { + var t = this.words, + r = this.sigBytes; + (t[r >>> 2] &= + 0xffffffff << (32 - (r % 4) * 8)), + (t.length = e.ceil(r / 4)); + }, + clone: function () { + var e = u.clone.call(this); + return (e.words = this.words.slice(0)), e; + }, + random: function (e) { + for (var t = [], r = 0; r < e; r += 4) + t.push(i()); + return new l.init(t, e); + }, + })), + f = (a.enc = {}), + p = (f.Hex = { + stringify: function (e) { + for ( + var t = e.words, + r = e.sigBytes, + n = [], + i = 0; + i < r; + i++ + ) { + var o = + (t[i >>> 2] >>> (24 - (i % 4) * 8)) & 255; + n.push((o >>> 4).toString(16)), + n.push((15 & o).toString(16)); + } + return n.join(""); + }, + parse: function (e) { + for ( + var t = e.length, r = [], n = 0; + n < t; + n += 2 + ) + r[n >>> 3] |= + parseInt(e.substr(n, 2), 16) << + (24 - (n % 8) * 4); + return new l.init(r, t / 2); + }, + }), + h = (f.Latin1 = { + stringify: function (e) { + for ( + var t = e.words, + r = e.sigBytes, + n = [], + i = 0; + i < r; + i++ + ) { + var o = + (t[i >>> 2] >>> (24 - (i % 4) * 8)) & 255; + n.push(String.fromCharCode(o)); + } + return n.join(""); + }, + parse: function (e) { + for ( + var t = e.length, r = [], n = 0; + n < t; + n++ + ) + r[n >>> 2] |= + (255 & e.charCodeAt(n)) << + (24 - (n % 4) * 8); + return new l.init(r, t); + }, + }), + d = (f.Utf8 = { + stringify: function (e) { + try { + return decodeURIComponent( + escape(h.stringify(e)) + ); + } catch (e) { + throw Error("Malformed UTF-8 data"); + } + }, + parse: function (e) { + return h.parse(unescape(encodeURIComponent(e))); + }, + }), + g = (c.BufferedBlockAlgorithm = u.extend({ + reset: function () { + (this._data = new l.init()), + (this._nDataBytes = 0); + }, + _append: function (e) { + "string" == typeof e && (e = d.parse(e)), + this._data.concat(e), + (this._nDataBytes += e.sigBytes); + }, + _process: function (t) { + var r, + n = this._data, + i = n.words, + o = n.sigBytes, + s = this.blockSize, + a = o / (4 * s), + c = + (a = t + ? e.ceil(a) + : e.max( + (0 | a) - this._minBufferSize, + 0 + )) * s, + u = e.min(4 * c, o); + if (c) { + for (var f = 0; f < c; f += s) + this._doProcessBlock(i, f); + (r = i.splice(0, c)), (n.sigBytes -= u); + } + return new l.init(r, u); + }, + clone: function () { + var e = u.clone.call(this); + return (e._data = this._data.clone()), e; + }, + _minBufferSize: 0, + })); + c.Hasher = g.extend({ + cfg: u.extend(), + init: function (e) { + (this.cfg = this.cfg.extend(e)), this.reset(); + }, + reset: function () { + g.reset.call(this), this._doReset(); + }, + update: function (e) { + return this._append(e), this._process(), this; + }, + finalize: function (e) { + return e && this._append(e), this._doFinalize(); + }, + blockSize: 16, + _createHelper: function (e) { + return function (t, r) { + return new e.init(r).finalize(t); + }; + }, + _createHmacHelper: function (e) { + return function (t, r) { + return new y.HMAC.init(e, r).finalize(t); + }; + }, + }); + var y = (a.algo = {}); + return a; + })(Math); + +var u = function (e, t) { + var r, n; + e.exports = + ((r = a.lib.Base), + (n = a.enc.Utf8), + void (a.algo.HMAC = r.extend({ + init: function (e, t) { + (e = this._hasher = new e.init()), + "string" == typeof t && (t = n.parse(t)); + var r = e.blockSize, + i = 4 * r; + t.sigBytes > i && (t = e.finalize(t)), t.clamp(); + for ( + var o = (this._oKey = t.clone()), + s = (this._iKey = t.clone()), + a = o.words, + c = s.words, + u = 0; + u < r; + u++ + ) + (a[u] ^= 0x5c5c5c5c), (c[u] ^= 0x36363636); + (o.sigBytes = s.sigBytes = i), this.reset(); + }, + reset: function () { + var e = this._hasher; + e.reset(), e.update(this._iKey); + }, + update: function (e) { + return this._hasher.update(e), this; + }, + finalize: function (e) { + var t = this._hasher, + r = t.finalize(e); + return ( + t.reset(), + t.finalize(this._oKey.clone().concat(r)) + ); + }, + }))); + } + +var c = s(function (e, t) { + var r, n, i, o, s, c, u, l, f; + e.exports = + ((r = Math), + (i = (n = a.lib).WordArray), + (o = n.Hasher), + (s = a.algo), + (c = []), + (u = []), + (function () { + function e(e) { + return (0x100000000 * (e - (0 | e))) | 0; + } + for (var t = 2, n = 0; n < 64; ) + (function (e) { + for (var t = r.sqrt(e), n = 2; n <= t; n++) + if (!(e % n)) return !1; + return !0; + })(t) && + (n < 8 && (c[n] = e(r.pow(t, 0.5))), + (u[n] = e(r.pow(t, 1 / 3))), + n++), + t++; + })(), + (l = []), + (f = s.SHA256 = + o.extend({ + _doReset: function () { + this._hash = new i.init(c.slice(0)); + }, + _doProcessBlock: function (e, t) { + for ( + var r = this._hash.words, + n = r[0], + i = r[1], + o = r[2], + s = r[3], + a = r[4], + c = r[5], + f = r[6], + p = r[7], + h = 0; + h < 64; + h++ + ) { + if (h < 16) l[h] = 0 | e[t + h]; + else { + var d = l[h - 15], + g = + ((d << 25) | (d >>> 7)) ^ + ((d << 14) | (d >>> 18)) ^ + (d >>> 3), + y = l[h - 2], + m = + ((y << 15) | (y >>> 17)) ^ + ((y << 13) | (y >>> 19)) ^ + (y >>> 10); + l[h] = g + l[h - 7] + m + l[h - 16]; + } + var v = (n & i) ^ (n & o) ^ (i & o), + b = + ((n << 30) | (n >>> 2)) ^ + ((n << 19) | (n >>> 13)) ^ + ((n << 10) | (n >>> 22)), + _ = + p + + (((a << 26) | (a >>> 6)) ^ + ((a << 21) | (a >>> 11)) ^ + ((a << 7) | (a >>> 25))) + + ((a & c) ^ (~a & f)) + + u[h] + + l[h]; + (p = f), + (f = c), + (c = a), + (a = (s + _) | 0), + (s = o), + (o = i), + (i = n), + (n = (_ + (b + v)) | 0); + } + (r[0] = (r[0] + n) | 0), + (r[1] = (r[1] + i) | 0), + (r[2] = (r[2] + o) | 0), + (r[3] = (r[3] + s) | 0), + (r[4] = (r[4] + a) | 0), + (r[5] = (r[5] + c) | 0), + (r[6] = (r[6] + f) | 0), + (r[7] = (r[7] + p) | 0); + }, + _doFinalize: function () { + var e = this._data, + t = e.words, + n = 8 * this._nDataBytes, + i = 8 * e.sigBytes; + return ( + (t[i >>> 5] |= 128 << (24 - (i % 32))), + (t[14 + (((i + 64) >>> 9) << 4)] = r.floor( + n / 0x100000000 + )), + (t[15 + (((i + 64) >>> 9) << 4)] = n), + (e.sigBytes = 4 * t.length), + this._process(), + this._hash + ); + }, + clone: function () { + var e = o.clone.call(this); + return (e._hash = this._hash.clone()), e; + }, + })), + (a.SHA256 = o._createHelper(f)), + (a.HmacSHA256 = o._createHmacHelper(f)), + a.SHA256); + }), + u = + (s()), + l = { + hmac: function (e, t) { + return u(t, e); + }, + sha256: function (e) { + return c(e); + }, + }, + f = [ + "authorization", + "content-type", + "content-length", + "user-agent", + "presigned-expires", + "expect", + "x-amzn-trace-id", + ], + p = function (e) { + try { + return encodeURIComponent(e) + .replace(/[^A-Za-z0-9_.~\-%]+/g, escape) + .replace(/[*]/g, function (e) { + return "%".concat( + e.charCodeAt(0).toString(16).toUpperCase() + ); + }); + } catch (e) { + return ""; + } + }, + h = function (e) { + return Object.keys(e) + .sort() + .map(function (t) { + var r = e[t]; + if (null != r) { + var n = p(t); + if (n) + return Array.isArray(r) + ? "" + .concat(n, "=") + .concat( + r.map(p).sort().join("&".concat(n, "=")) + ) + : "".concat(n, "=").concat(p(r)); + } + }) + .filter(function (e) { + return e; + }) + .join("&"); + }; \ No newline at end of file diff --git a/temp/lib-uploader.4.js b/temp/lib-uploader.4.js new file mode 100644 index 0000000..18a69bf --- /dev/null +++ b/temp/lib-uploader.4.js @@ -0,0 +1,926 @@ +( () => { + "use strict"; + var e = {} + , t = {}; + function o(a) { + var n = t[a]; + if (void 0 !== n) + return n.exports; + var r = t[a] = { + id: a, + loaded: !1, + exports: {} + }; + return e[a].call(r.exports, r, r.exports, o), + r.loaded = !0, + r.exports + } + o.m = e, + o.n = function(e) { + var t = e && e.__esModule ? function() { + return e.default + } + : function() { + return e + } + ; + return o.d(t, { + a: t + }), + t + } + , + ( () => { + var e, t = Object.getPrototypeOf ? function(e) { + return Object.getPrototypeOf(e) + } + : function(e) { + return e.__proto__ + } + ; + o.t = function(a, n) { + if (1 & n && (a = this(a)), + 8 & n || "object" == typeof a && a && (4 & n && a.__esModule || 16 & n && "function" == typeof a.then)) + return a; + var r = Object.create(null); + o.r(r); + var i = {}; + e = e || [null, t({}), t([]), t(t)]; + for (var c = 2 & n && a; "object" == typeof c && !~e.indexOf(c); c = t(c)) + Object.getOwnPropertyNames(c).forEach((function(e) { + i[e] = function() { + return a[e] + } + } + )); + return i.default = function() { + return a + } + , + o.d(r, i), + r + } + } + )(), + o.d = function(e, t) { + for (var a in t) + o.o(t, a) && !o.o(e, a) && Object.defineProperty(e, a, { + enumerable: !0, + get: t[a] + }) + } + , + o.f = {}, + o.e = function(e) { + return Promise.all(Object.keys(o.f).reduce((function(t, a) { + return o.f[a](e, t), + t + } + ), [])) + } + , + o.hmd = function(e) { + return !(e = Object.create(e)).children && (e.children = []), + Object.defineProperty(e, "exports", { + enumerable: !0, + set: function() { + throw Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: " + e.id) + } + }), + e + } + , + o.u = function(e) { + return "static/js/async/" + ({ + 108: "ai-tool/explore/page", + 1097: "ai-tool/activity/page", + 1106: "heic2any", + 1144: "ai-tool/image/generate/page", + 1275: "feature-editor", + 1385: "activity-award", + 1460: "ai-tool/video/lip-sync/generate/page", + 1553: "lv-upload-components", + 1554: "ai-tool/work-detail/(id$)/page", + 1618: "okee-fe-icons", + 1637: "lib-ever-cloud-sdk", + 1732: "ThirdPartyCallback", + 1857: "lib-account-api-oversea", + 1990: "bundle_file-md5-calc-service", + 2073: "ExplorePageWorkDetailContribution", + 2126: "lib-polyfill", + 2175: "lv-useless-components", + 2190: "ui-framework", + 2213: "PersonalPageGenerateContribution", + 2349: "Activity", + 2448: "bundle_graphic_toolkit_service", + 2467: "DataSubjectRequestBlock", + 2550: "sider-menu-notification", + 2652: "bundle_offscreen_canvas_editor_service", + 2658: "Asset", + 2707: "lib-lodash", + 2778: "xgplayer-encrypt__delayed", + 2870: "lib-graphemer", + 2906: "ai-tool/video/generate/page", + 2945: "byted-xgplayer~0", + 3061: "sider-menu-app-download", + 3218: "CookieManage", + 3231: "lib-vetoolkit", + 3321: "Home", + 3537: "HomePageGenerateContribution", + 3613: "title-bar-api-invoke-entrance", + 3796: "activity-credit", + 3906: "Login", + 3971: "lib-firebase", + 3972: "byted-xgplayer~4", + 4045: "lib-account-api", + 4047: "WorkflowEditor~a870cb0f", + 4104: "byted-xgplayer~2", + 4118: "PersonalPageWorkDetailContribution", + 4161: "StoryEditor~76f86101", + 4266: "DataSubjectRequestDownload", + 4393: "lib-byted~2", + 4485: "ai-tool/home/page", + 4530: "lib-byted~0", + 4644: "work-detail", + 4650: "activity-gift", + 478: "mweb-record-list", + 4889: "lv-secondary-components", + 4958: "sider-menu-feedback", + 513: "lib-mobx", + 5147: "bundle_story-draft-model", + 5216: "Workflow", + 5326: "HomePagePublishContribution", + 5397: "DataSubjectRequest", + 5454: "lib-byted~3", + 5541: "History", + 5557: "SearchPage", + 5635: "DataSubjectRequestSubmit", + 5676: "HistoryDetail", + 5792: "StoryEditorSideload", + 5902: "lib-slardar", + 5949: "base-editor", + 6125: "lib-crypto", + 6142: "ai-tool/login/page", + 6238: "ttwid__delayed", + 6367: "lib-report", + 640: "lv-components", + 6622: "ImageEdit~1", + 6777: "lib-byted~1", + 6810: "GuestPerson", + 7010: "byted-lvRender", + 7135: "browser-image-compression", + 7161: "sider-menu-invitation", + 7163: "lib-uploader", + 7249: "ai-tool/video/action-copy/generate/page", + 7288: "title-bar-search", + 7308: "ImageEdit~0", + 733: "ai-tool/asset/page", + 7375: "ai-tool/personal/(id$)/page", + 7570: "mweb-commercial", + 7631: "WorkflowEditor~55875ab1", + 7641: "lib-xstate", + 7650: "lib-bridge", + 7694: "okee-mweb-icons", + 8034: "NoUsePermission", + 8139: "StoryEditor~1", + 8263: "xgplayer__delayed", + 8293: "bundle_content-generation~0", + 83: "bundle_content-generation~afd697dc", + 8349: "HomePageWorkDetailContribution", + 8425: "byted-xgplayer~1", + 8438: "ExplorePagePublishContribution", + 8503: "utif", + 8523: "InviteFission", + 8574: "Explore", + 8608: "ExplorePageGenerateContribution", + 8863: "lib-lottie", + 8941: "ContentGeneration", + 8991: "byted-xgplayer~3", + 9028: "block", + 9168: "lib-jszip", + 9391: "bundle_character-generate-modal-service", + 9392: "$", + 9410: "absolution-position-slot-help-center", + 9415: "StoryEditor~0d3dcdc8", + 9500: "title-bar-user", + 9580: "sider-menu-activity", + 9860: "sider-menu-product-hunt" + }[e] || e) + "." + { + 1001: "3432a089", + 1054: "43e8359e", + 108: "0313279f", + 1081: "ea0c3c30", + 1097: "201261e4", + 1106: "987c9f41", + 1144: "f3f9c414", + 1193: "3b66aeb0", + 1275: "5f54a6ad", + 1330: "41930b8a", + 1384: "90e9d8ca", + 1385: "05eab03a", + 1416: "39bdfdef", + 1460: "0830856c", + 1553: "bd079fd8", + 1554: "30fffdc3", + 1568: "2055fc67", + 1591: "798586e8", + 1618: "54b7bc13", + 1637: "8d534a3a", + 1654: "e8e90aea", + 1732: "8ed67bc6", + 1830: "dcb0a42d", + 1857: "7bd862fd", + 187: "cd70137c", + 1877: "1ce37df2", + 1990: "b3123294", + 2060: "32b141d2", + 2073: "20952ef2", + 2077: "c3fbc6da", + 2126: "ca14feb5", + 2175: "b49f4669", + 2190: "7f163819", + 2213: "7ebd49c8", + 2314: "83dec038", + 2349: "7b154d73", + 2448: "6211f952", + 2467: "a89fadca", + 2488: "3ccb0515", + 2550: "8b335470", + 2652: "a22b996c", + 2658: "44bca06b", + 2707: "5202286f", + 2749: "4043d40d", + 277: "0e986d8e", + 2778: "5526f2e3", + 2870: "b9bba982", + 2906: "ed777de1", + 2938: "605eb7df", + 2945: "7d60812b", + 2969: "53a2218e", + 3013: "265ac0fd", + 3061: "aaf73050", + 3064: "ab3a8079", + 3138: "7d590a7a", + 3164: "315a9192", + 3189: "b4080d09", + 3218: "02485d1e", + 3231: "8b22b69c", + 3321: "6bc5e5fe", + 3384: "a7611910", + 3520: "0a5513ab", + 3527: "82fab629", + 3537: "0247a444", + 3542: "7b9fad59", + 3613: "46ee9d20", + 371: "b6c927c3", + 3758: "a7821af7", + 3796: "b8a99599", + 3855: "f5008921", + 3906: "57f24cbf", + 3971: "45d02728", + 3972: "8db8b2d5", + 4037: "6b0803cb", + 4045: "565dcba2", + 4047: "517887e9", + 4049: "31b51158", + 4104: "10387a1f", + 4118: "4b9233b8", + 4141: "4ff0a8c4", + 4161: "5a26688d", + 4189: "b0ddb335", + 4266: "0e87ddf5", + 4393: "04b71aa3", + 4431: "611fb827", + 4485: "9f7a319b", + 4530: "4ae91e2a", + 4605: "f1d169ba", + 4644: "165b8bf4", + 465: "fe175ba8", + 4650: "aa300f46", + 4717: "82e4464d", + 478: "f48edd30", + 4856: "f05c0c07", + 4882: "405c6f78", + 4889: "139d96c4", + 4933: "ababbe11", + 4937: "7a60bea3", + 4946: "a9a707fb", + 4958: "4a870095", + 5055: "f9a15e83", + 5074: "04883412", + 5096: "d6006808", + 5112: "f0907e48", + 513: "0e0cfe2c", + 5147: "55af426f", + 5216: "4076d83d", + 5281: "5d3e4359", + 5326: "879a1012", + 5362: "acefdad1", + 5397: "0e90bb5a", + 5454: "c540284c", + 5504: "99486bf4", + 5518: "b264e8cf", + 5521: "529cdb9a", + 5541: "5f704b80", + 5557: "bd9752e8", + 5635: "cf67344a", + 5676: "41ada6be", + 5711: "129bd0d2", + 5757: "437b47fe", + 5792: "3c340797", + 5842: "0814924c", + 5862: "0de90f9b", + 59: "7344b495", + 5902: "c9801873", + 5949: "3d970df6", + 5980: "29ab9824", + 6082: "80748539", + 6088: "feb41773", + 6125: "b8c57ce4", + 613: "6a423ba5", + 6142: "72e6f5ba", + 6192: "252b25c0", + 6238: "8d3467ab", + 6274: "c69182eb", + 6351: "02a0e394", + 6367: "2c9b2aeb", + 640: "2b6b2658", + 6533: "c31580fa", + 6545: "dc3d1849", + 6622: "0c651f51", + 6676: "f97ee537", + 6678: "e5a83cb6", + 6680: "0ca0a962", + 6777: "826a89a8", + 6790: "a23b0f4d", + 6810: "4d6ed5bd", + 6826: "0f8021f5", + 6936: "382b0f8b", + 6948: "5c0df7f4", + 7010: "add8a639", + 7024: "d730f053", + 7131: "758ccaad", + 7135: "472d31b5", + 7161: "479fc40c", + 7163: "c1f2476f", + 7174: "a0d9bed7", + 7249: "c0517e99", + 7288: "5a5ab8c5", + 7308: "bcf12382", + 733: "dd49d967", + 7375: "1253c86a", + 742: "9b4ba01c", + 7429: "3c19e417", + 7506: "94ba989c", + 753: "6de48a23", + 7570: "62ad8e7a", + 7631: "8a2dd599", + 7641: "3ced0dde", + 7650: "536d073a", + 7694: "a9e29427", + 7704: "d239b009", + 795: "a4fca577", + 8034: "2e8e34c2", + 8059: "aaefb412", + 8078: "4e456f1a", + 81: "3acce1f9", + 8139: "b6e27689", + 8165: "3aee4b01", + 817: "75d8c7e3", + 8185: "49fae538", + 8263: "a7d02df1", + 8293: "f71b9180", + 83: "41e7f7a2", + 8349: "2e6f64eb", + 8425: "3dfe75b5", + 8438: "23cbb5bd", + 8461: "fc325dbb", + 849: "1314d2e5", + 8503: "0a1d7cde", + 8523: "997c4661", + 8537: "1bc49b80", + 8574: "11c8e5da", + 8608: "43d9bffc", + 862: "5cb4b064", + 8757: "b19a8596", + 8774: "979d646a", + 8792: "6239ea1a", + 8835: "91002e36", + 8863: "4729dbce", + 8872: "0ebcc17e", + 8883: "0ee86a42", + 8941: "6707cc7f", + 8962: "58114e1e", + 8991: "b3afb72a", + 9028: "48fddc4b", + 9117: "ef5a65b9", + 9118: "dcfd9a25", + 9120: "103f38a7", + 9168: "23bdc0b9", + 9327: "3e3522c8", + 9338: "f5f7f759", + 9391: "b826cff9", + 9392: "8f2a5105", + 9406: "dbf0ed48", + 9410: "8439374f", + 9415: "4064df8f", + 9429: "f95c17a9", + 9433: "dba8704d", + 9500: "713a4041", + 9527: "054054fe", + 9580: "7f752c89", + 9647: "6ea65f87", + 9748: "e43a1259", + 9860: "decddbaf", + 9906: "7cb7bfa8", + 9944: "a620d57f" + }[e] + ".js" + } + , + o.miniCssF = function(e) { + return "static/css/async/" + ({ + 108: "ai-tool/explore/page", + 1097: "ai-tool/activity/page", + 1144: "ai-tool/image/generate/page", + 1275: "feature-editor", + 1385: "activity-award", + 1460: "ai-tool/video/lip-sync/generate/page", + 1553: "lv-upload-components", + 1554: "ai-tool/work-detail/(id$)/page", + 2073: "ExplorePageWorkDetailContribution", + 2175: "lv-useless-components", + 2213: "PersonalPageGenerateContribution", + 2349: "Activity", + 2467: "DataSubjectRequestBlock", + 2550: "sider-menu-notification", + 2652: "bundle_offscreen_canvas_editor_service", + 2658: "Asset", + 2906: "ai-tool/video/generate/page", + 3061: "sider-menu-app-download", + 3218: "CookieManage", + 3321: "Home", + 3537: "HomePageGenerateContribution", + 3613: "title-bar-api-invoke-entrance", + 3796: "activity-credit", + 3906: "Login", + 4047: "WorkflowEditor~a870cb0f", + 4118: "PersonalPageWorkDetailContribution", + 4161: "StoryEditor~76f86101", + 4266: "DataSubjectRequestDownload", + 4485: "ai-tool/home/page", + 4644: "work-detail", + 4650: "activity-gift", + 478: "mweb-record-list", + 4889: "lv-secondary-components", + 5147: "bundle_story-draft-model", + 5216: "Workflow", + 5326: "HomePagePublishContribution", + 5397: "DataSubjectRequest", + 5541: "History", + 5557: "SearchPage", + 5635: "DataSubjectRequestSubmit", + 5676: "HistoryDetail", + 5792: "StoryEditorSideload", + 6142: "ai-tool/login/page", + 640: "lv-components", + 6622: "ImageEdit~1", + 6810: "GuestPerson", + 7249: "ai-tool/video/action-copy/generate/page", + 7288: "title-bar-search", + 7308: "ImageEdit~0", + 733: "ai-tool/asset/page", + 7375: "ai-tool/personal/(id$)/page", + 7570: "mweb-commercial", + 7631: "WorkflowEditor~55875ab1", + 8034: "NoUsePermission", + 8139: "StoryEditor~1", + 83: "bundle_content-generation~afd697dc", + 8349: "HomePageWorkDetailContribution", + 8438: "ExplorePagePublishContribution", + 8523: "InviteFission", + 8574: "Explore", + 8608: "ExplorePageGenerateContribution", + 8941: "ContentGeneration", + 9028: "block", + 9391: "bundle_character-generate-modal-service", + 9392: "$", + 9410: "absolution-position-slot-help-center", + 9415: "StoryEditor~0d3dcdc8", + 9500: "title-bar-user", + 9580: "sider-menu-activity", + 9860: "sider-menu-product-hunt" + }[e] || e) + "." + { + 1005: "eb1b1784", + 108: "5d9f0383", + 1097: "5fcf72dd", + 1144: "60dcc01a", + 1275: "05d8e910", + 1385: "b0299845", + 1460: "60dcc01a", + 1553: "b4df8476", + 1554: "c586851b", + 2073: "066d87bf", + 2175: "0aafe5b6", + 2213: "3fe5a48e", + 2349: "0f63ba72", + 2467: "2c824d43", + 2550: "e0382620", + 2652: "8ee2272e", + 2658: "84619fb6", + 288: "86dd0098", + 2906: "60dcc01a", + 3013: "d6c76393", + 3061: "11bcf1a0", + 3218: "f91becbe", + 3321: "7592c319", + 3537: "6018d688", + 3613: "e719d991", + 3796: "b0299845", + 3906: "04ecbb1e", + 4047: "641c9bbd", + 4118: "a320b565", + 4161: "eadf1f6e", + 4266: "ffd149ea", + 4485: "60cc6e9f", + 4644: "bc9b4aa2", + 4650: "b0299845", + 478: "9c877ac1", + 4889: "04735ffb", + 5147: "ee6b369e", + 5216: "10bb6beb", + 5326: "34bca2c1", + 5397: "83b61f62", + 5541: "044ec756", + 5557: "3522eac5", + 5635: "0bb94865", + 5676: "4b734434", + 5792: "f5891f52", + 5980: "b98825a1", + 6142: "8737c0af", + 640: "52de04c7", + 6622: "4bccd372", + 6790: "687d2b84", + 6810: "7849eabb", + 6948: "13c1a20a", + 7249: "60dcc01a", + 7288: "36a55e06", + 7308: "a746c684", + 733: "0d60ed4c", + 7375: "5f81288a", + 7570: "990fb0ef", + 7631: "f08bc1a6", + 7704: "400e0d89", + 8034: "9cc82aa2", + 8139: "cbce920e", + 83: "8621c007", + 8349: "3a992ac8", + 8438: "efed7c55", + 8523: "c11f699a", + 8574: "057eaa88", + 8608: "96b4aa9e", + 8941: "1f16eca5", + 9028: "b62927a5", + 9391: "ecce51c7", + 9392: "a7e6bb6b", + 9406: "0b4508f3", + 9410: "14c4f7ca", + 9415: "a5c6b8af", + 9500: "02a74019", + 9580: "fa87a43e", + 9860: "55461b9a" + }[e] + ".css" + } + , + o.h = function() { + return "04e21982347a3c4d" + } + , + o.g = function() { + if ("object" == typeof globalThis) + return globalThis; + try { + return this || Function("return this")() + } catch (e) { + if ("object" == typeof window) + return window + } + }(), + o.o = function(e, t) { + return Object.prototype.hasOwnProperty.call(e, t) + } + , + ( () => { + var e = {} + , t = "mweb:"; + o.l = function(a, n, r, i) { + if (e[a]) + e[a].push(n); + else { + if (void 0 !== r) + for (var c, d, f = document.getElementsByTagName("script"), l = 0; l < f.length; l++) { + var b = f[l]; + if (b.getAttribute("src") == a || b.getAttribute("data-webpack") == t + r) { + c = b; + break + } + } + !c && (d = !0, + (c = document.createElement("script")).charset = "utf-8", + c.timeout = 120, + o.nc && c.setAttribute("nonce", o.nc), + c.setAttribute("data-webpack", t + r), + c.src = a, + 0 !== c.src.indexOf(window.location.origin + "/") && (c.crossOrigin = "anonymous")), + e[a] = [n]; + var s = function(t, o) { + c.onerror = c.onload = null, + clearTimeout(u); + var n = e[a]; + if (delete e[a], + c.parentNode && c.parentNode.removeChild(c), + n && n.forEach((function(e) { + return e(o) + } + )), + t) + return t(o) + } + , u = setTimeout(s.bind(null, void 0, { + type: "timeout", + target: c + }), 12e4); + c.onerror = s.bind(null, c.onerror), + c.onload = s.bind(null, c.onload), + d && document.head.appendChild(c) + } + } + } + )(), + o.r = function(e) { + "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, { + value: "Module" + }), + Object.defineProperty(e, "__esModule", { + value: !0 + }) + } + , + o.nmd = function(e) { + return e.paths = [], + !e.children && (e.children = []), + e + } + , + o.nc = void 0, + ( () => { + var e = []; + o.O = function(t, a, n, r) { + if (!a) { + var i = 1 / 0; + for (l = 0; l < e.length; l++) { + a = e[l][0], + n = e[l][1], + r = e[l][2]; + for (var c = !0, d = 0; d < a.length; d++) + (!1 & r || i >= r) && Object.keys(o.O).every((function(e) { + return o.O[e](a[d]) + } + )) ? a.splice(d--, 1) : (c = !1, + r < i && (i = r)); + if (c) { + e.splice(l--, 1); + var f = n(); + void 0 !== f && (t = f) + } + } + return t + } + r = r || 0; + for (var l = e.length; l > 0 && e[l - 1][2] > r; l--) + e[l] = e[l - 1]; + e[l] = [a, n, r] + } + } + )(), + o.p = "//lf3-lv-buz.vlabstatic.com/obj/image-lvweb-buz/ies/lvweb/mweb_cn_new/", + o.rv = function() { + return "1.0.14" + } + , + ( () => { + if ("undefined" != typeof document) { + var e = { + 8242: 0 + }; + o.f.miniCss = function(t, a) { + if (e[t]) + a.push(e[t]); + else if (0 !== e[t] && { + 1554: 1, + 8941: 1, + 6810: 1, + 8034: 1, + 3013: 1, + 9028: 1, + 1005: 1, + 4266: 1, + 5397: 1, + 5635: 1, + 2467: 1, + 5541: 1, + 5676: 1, + 6948: 1, + 9406: 1, + 3906: 1, + 6790: 1, + 2658: 1, + 8523: 1, + 3321: 1, + 9415: 1, + 5792: 1, + 5216: 1, + 7631: 1, + 8574: 1, + 6622: 1, + 7704: 1, + 2349: 1, + 4644: 1, + 3218: 1, + 5557: 1, + 3061: 1, + 2550: 1, + 9580: 1, + 9860: 1, + 9500: 1, + 7288: 1, + 3613: 1, + 9410: 1, + 5980: 1, + 4161: 1, + 8139: 1, + 4047: 1, + 7308: 1, + 83: 1, + 2652: 1, + 5147: 1, + 9391: 1, + 288: 1, + 2213: 1, + 4118: 1, + 5326: 1, + 3537: 1, + 8349: 1, + 8608: 1, + 2073: 1, + 8438: 1, + 3796: 1, + 4650: 1, + 1385: 1, + 1553: 1, + 2175: 1, + 4889: 1, + 640: 1, + 9392: 1, + 1097: 1, + 733: 1, + 108: 1, + 4485: 1, + 1144: 1, + 6142: 1, + 7375: 1, + 7249: 1, + 2906: 1, + 478: 1, + 7570: 1, + 1275: 1, + 1460: 1 + }[t]) { + var n; + a.push(e[t] = (n = t, + new Promise((function(e, t) { + var a = o.miniCssF(n) + , r = o.p + a; + if (function(e, t) { + for (var o = document.getElementsByTagName("link"), a = 0; a < o.length; a++) { + var n = (i = o[a]).getAttribute("data-href") || i.getAttribute("href"); + if ("stylesheet" === i.rel && (n === e || n === t)) + return i + } + var r = document.getElementsByTagName("style"); + for (a = 0; a < r.length; a++) { + var i; + if ((n = (i = r[a]).getAttribute("data-href")) === e || n === t) + return i + } + }(a, r)) + return e(); + !function(e, t, a, n, r) { + var i = document.createElement("link"); + i.rel = "stylesheet", + i.type = "text/css", + o.nc && (i.nonce = o.nc), + i.onerror = i.onload = function(o) { + if (i.onerror = i.onload = null, + "load" === o.type) + n(); + else { + var a = o && ("load" === o.type ? "missing" : o.type) + , c = o && o.target && o.target.href || t + , d = Error("Loading CSS chunk " + e + " failed.\\n(" + c + ")"); + d.code = "CSS_CHUNK_LOAD_FAILED", + d.type = a, + d.request = c, + i.parentNode && i.parentNode.removeChild(i), + r(d) + } + } + , + i.href = t, + 0 !== i.href.indexOf(window.location.origin + "/") && (i.crossOrigin = "anonymous"), + a ? a.parentNode.insertBefore(i, a.nextSibling) : document.head.appendChild(i) + }(n, r, null, e, t) + } + ))).then((function() { + e[t] = 0 + } + ), (function(o) { + throw delete e[t], + o + } + ))) + } + } + } + } + )(), + ( () => { + o.b = document.baseURI || self.location.href; + var e = { + 8242: 0 + }; + o.f.j = function(t, a) { + var n = o.o(e, t) ? e[t] : void 0; + if (0 !== n) + if (n) + a.push(n[2]); + else if (/^(1005|288|8242)$/.test(t)) + e[t] = 0; + else { + var r = new Promise((function(o, a) { + n = e[t] = [o, a] + } + )); + a.push(n[2] = r); + var i = o.p + o.u(t) + , c = Error(); + o.l(i, (function(a) { + if (o.o(e, t) && (0 !== (n = e[t]) && (e[t] = void 0), + n)) { + var r = a && ("load" === a.type ? "missing" : a.type) + , i = a && a.target && a.target.src; + c.message = "Loading chunk " + t + " failed.\n(" + r + ": " + i + ")", + c.name = "ChunkLoadError", + c.type = r, + c.request = i, + n[1](c) + } + } + ), "chunk-" + t, t) + } + } + , + o.O.j = function(t) { + return 0 === e[t] + } + ; + var t = function(t, a) { + var n, r, i = a[0], c = a[1], d = a[2], f = 0; + if (i.some((function(t) { + return 0 !== e[t] + } + ))) { + for (n in c) + o.o(c, n) && (o.m[n] = c[n]); + if (d) + var l = d(o) + } + for (t && t(a); f < i.length; f++) + r = i[f], + o.o(e, r) && e[r] && e[r][0](), + e[r] = 0; + return o.O(l) + } + , a = self.__LOADABLE_LOADED_CHUNKS__ = self.__LOADABLE_LOADED_CHUNKS__ || []; + a.forEach(t.bind(null, 0)), + a.push = t.bind(null, a.push.bind(a)) + } + )(), + o.ruid = "bundler=rspack@1.0.14" + + window.tttt = { + e:e, + t:t, + i:o, + } + } + )() \ No newline at end of file diff --git a/temp/lib-uploader.c1f2476f.js b/temp/lib-uploader.c1f2476f.js new file mode 100644 index 0000000..1a39482 --- /dev/null +++ b/temp/lib-uploader.c1f2476f.js @@ -0,0 +1,9898 @@ +function TEST() { + var t, r; + t = "undefined" != typeof self && self, + r = function() { + return function(e) { + var t = {}; + function r(n) { + var i; + return (t[n] || (i = t[n] = { + i: n, + l: !1, + exports: {} + }, + e[n].call(i.exports, i, i.exports, r), + i.l = !0, + i)).exports + } + return r.m = e, + r.c = t, + r.d = function(e, t, n) { + r.o(e, t) || Object.defineProperty(e, t, { + enumerable: !0, + get: n + }) + } + , + r.r = function(e) { + "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, { + value: "Module" + }), + Object.defineProperty(e, "__esModule", { + value: !0 + }) + } + , + r.t = function(e, t) { + if (1 & t && (e = r(e)), + 8 & t || 4 & t && "object" == typeof e && e && e.__esModule) + return e; + var n = Object.create(null); + if (r.r(n), + Object.defineProperty(n, "default", { + enumerable: !0, + value: e + }), + 2 & t && "string" != typeof e) + for (var i in e) + r.d(n, i, (function(t) { + return e[t] + } + ).bind(null, i)); + return n + } + , + r.n = function(e) { + var t = e && e.__esModule ? function() { + return e.default + } + : function() { + return e + } + ; + return r.d(t, "a", t), + t + } + , + r.o = function(e, t) { + return Object.prototype.hasOwnProperty.call(e, t) + } + , + r.p = "", + r(r.s = 11) + }([function(e, t, r) { + "use strict"; + var n = "object" == typeof Reflect ? Reflect : null + , i = n && "function" == typeof n.apply ? n.apply : function(e, t, r) { + return Function.prototype.apply.call(e, t, r) + } + , o = n && "function" == typeof n.ownKeys ? n.ownKeys : Object.getOwnPropertySymbols ? function(e) { + return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e)) + } + : function(e) { + return Object.getOwnPropertyNames(e) + } + , s = Number.isNaN || function(e) { + return e != e + } + ; + function a() { + a.init.call(this) + } + e.exports = a, + e.exports.once = function(e, t) { + return new Promise(function(r, n) { + var i, o, s; + function a(r) { + e.removeListener(t, c), + n(r) + } + function c() { + "function" == typeof e.removeListener && e.removeListener("error", a), + r([].slice.call(arguments)) + } + y(e, t, c, { + once: !0 + }), + "error" !== t && (i = e, + o = a, + s = { + once: !0 + }, + "function" == typeof i.on && y(i, "error", o, s)) + } + ) + } + , + (a.EventEmitter = a).prototype._events = void 0, + a.prototype._eventsCount = 0, + a.prototype._maxListeners = void 0; + var c = 10; + function u(e) { + if ("function" != typeof e) + throw TypeError('The "listener" argument must be of type Function. Received type ' + typeof e) + } + function l(e) { + return void 0 === e._maxListeners ? a.defaultMaxListeners : e._maxListeners + } + function f(e, t, r, n) { + var i, o, s; + return u(r), + void 0 === (i = e._events) ? (i = e._events = Object.create(null), + e._eventsCount = 0) : (void 0 !== i.newListener && (e.emit("newListener", t, r.listener || r), + i = e._events), + o = i[t]), + void 0 === o ? (o = i[t] = r, + ++e._eventsCount) : ("function" == typeof o ? o = i[t] = n ? [r, o] : [o, r] : n ? o.unshift(r) : o.push(r), + 0 < (i = l(e)) && o.length > i && !o.warned && (o.warned = !0, + (n = Error("Possible EventEmitter memory leak detected. " + o.length + " " + String(t) + " listeners added. Use emitter.setMaxListeners() to increase limit")).name = "MaxListenersExceededWarning", + n.emitter = e, + n.type = t, + n.count = o.length, + s = n, + console && console.warn && console.warn(s))), + e + } + function p(e, t, r) { + return (t = (function() { + if (!this.fired) + return this.target.removeListener(this.type, this.wrapFn), + this.fired = !0, + 0 == arguments.length ? this.listener.call(this.target) : this.listener.apply(this.target, arguments) + } + ).bind(e = { + fired: !1, + wrapFn: void 0, + target: e, + type: t, + listener: r + })).listener = r, + e.wrapFn = t + } + function h(e, t, r) { + var e = e._events; + return void 0 === e || void 0 === (e = e[t]) ? [] : "function" == typeof e ? r ? [e.listener || e] : [e] : r ? function(e) { + for (var t = Array(e.length), r = 0; r < t.length; ++r) + t[r] = e[r].listener || e[r]; + return t + }(e) : g(e, e.length) + } + function d(e) { + var t = this._events; + if (void 0 !== t) { + if ("function" == typeof (t = t[e])) + return 1; + if (void 0 !== t) + return t.length + } + return 0 + } + function g(e, t) { + for (var r = Array(t), n = 0; n < t; ++n) + r[n] = e[n]; + return r + } + function y(e, t, r, n) { + if ("function" == typeof e.on) + n.once ? e.once(t, r) : e.on(t, r); + else { + if ("function" != typeof e.addEventListener) + throw TypeError('The "emitter" argument must be of type EventEmitter. Received type ' + typeof e); + e.addEventListener(t, function i(o) { + n.once && e.removeEventListener(t, i), + r(o) + }) + } + } + Object.defineProperty(a, "defaultMaxListeners", { + enumerable: !0, + get: function() { + return c + }, + set: function(e) { + if ("number" != typeof e || e < 0 || s(e)) + throw RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received ' + e + "."); + c = e + } + }), + a.init = function() { + void 0 !== this._events && this._events !== Object.getPrototypeOf(this)._events || (this._events = Object.create(null), + this._eventsCount = 0), + this._maxListeners = this._maxListeners || void 0 + } + , + a.prototype.setMaxListeners = function(e) { + if ("number" != typeof e || e < 0 || s(e)) + throw RangeError('The value of "n" is out of range. It must be a non-negative number. Received ' + e + "."); + return this._maxListeners = e, + this + } + , + a.prototype.getMaxListeners = function() { + return l(this) + } + , + a.prototype.emit = function(e) { + for (var t = [], r = 1; r < arguments.length; r++) + t.push(arguments[r]); + var n = "error" === e + , o = this._events; + if (void 0 !== o) + n = n && void 0 === o.error; + else if (!n) + return !1; + if (n) { + if ((s = 0 < t.length ? t[0] : s)instanceof Error) + throw s; + throw (n = Error("Unhandled error." + (s ? " (" + s.message + ")" : ""))).context = s, + n + } + var s = o[e]; + if (void 0 === s) + return !1; + if ("function" == typeof s) + i(s, this, t); + else + for (var a = s.length, c = g(s, a), r = 0; r < a; ++r) + i(c[r], this, t); + return !0 + } + , + a.prototype.on = a.prototype.addListener = function(e, t) { + return f(this, e, t, !1) + } + , + a.prototype.prependListener = function(e, t) { + return f(this, e, t, !0) + } + , + a.prototype.once = function(e, t) { + return u(t), + this.on(e, p(this, e, t)), + this + } + , + a.prototype.prependOnceListener = function(e, t) { + return u(t), + this.prependListener(e, p(this, e, t)), + this + } + , + a.prototype.off = a.prototype.removeListener = function(e, t) { + var r, n, i, o, s; + if (u(t), + void 0 !== (n = this._events) && void 0 !== (r = n[e])) { + if (r === t || r.listener === t) + 0 == --this._eventsCount ? this._events = Object.create(null) : (delete n[e], + n.removeListener && this.emit("removeListener", e, r.listener || t)); + else if ("function" != typeof r) { + for (i = -1, + o = r.length - 1; 0 <= o; o--) + if (r[o] === t || r[o].listener === t) { + s = r[o].listener, + i = o; + break + } + if (i < 0) + return this; + 0 === i ? r.shift() : function(e, t) { + for (; t + 1 < e.length; t++) + e[t] = e[t + 1]; + e.pop() + }(r, i), + 1 === r.length && (n[e] = r[0]), + void 0 !== n.removeListener && this.emit("removeListener", e, s || t) + } + } + return this + } + , + a.prototype.removeAllListeners = function(e) { + var t, r = this._events; + if (void 0 !== r) { + if (void 0 === r.removeListener) + 0 == arguments.length ? (this._events = Object.create(null), + this._eventsCount = 0) : void 0 !== r[e] && (0 == --this._eventsCount ? this._events = Object.create(null) : delete r[e]); + else if (0 == arguments.length) { + for (var n, i = Object.keys(r), o = 0; o < i.length; ++o) + "removeListener" !== (n = i[o]) && this.removeAllListeners(n); + this.removeAllListeners("removeListener"), + this._events = Object.create(null), + this._eventsCount = 0 + } else if ("function" == typeof (t = r[e])) + this.removeListener(e, t); + else if (void 0 !== t) + for (o = t.length - 1; 0 <= o; o--) + this.removeListener(e, t[o]) + } + return this + } + , + a.prototype.listeners = function(e) { + return h(this, e, !0) + } + , + a.prototype.rawListeners = function(e) { + return h(this, e, !1) + } + , + a.listenerCount = function(e, t) { + return "function" == typeof e.listenerCount ? e.listenerCount(t) : d.call(e, t) + } + , + a.prototype.listenerCount = d, + a.prototype.eventNames = function() { + return 0 < this._eventsCount ? o(this._events) : [] + } + } + , function(e, t, r) { + (function(t) { + e.exports = function(e) { + "use strict"; + var r, n = (r = e) && "object" == typeof r && "default"in r ? r : { + default: r + }; + function i(e, t) { + for (var r, n, i = 0; i < t.length; i++) { + var o = t[i]; + o.enumerable = o.enumerable || !1, + o.configurable = !0, + "value"in o && (o.writable = !0), + Object.defineProperty(e, (r = o.key, + n = void 0, + "symbol" == typeof (n = function(e, t) { + if ("object" != typeof e || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 !== r) { + var n = r.call(e, t || "default"); + if ("object" != typeof n) + return n; + throw TypeError("@@toPrimitive must return a primitive value.") + } + return ("string" === t ? String : Number)(e) + }(r, "string")) ? n : String(n)), o) + } + } + var o = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof window ? window : void 0 !== t ? t : "undefined" != typeof self ? self : {}; + function s(e, t, r) { + return e(r = { + path: t, + exports: {}, + require: function(e, t) { + return function() { + throw Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs") + }(null == t && r.path) + } + }, r.exports), + r.exports + } + var a = s(function(e, t) { + var r; + e.exports = r || function(e, t) { + if ("undefined" != typeof window && window.crypto && (r = window.crypto), + "undefined" != typeof self && self.crypto && (r = self.crypto), + "undefined" != typeof globalThis && globalThis.crypto && (r = globalThis.crypto), + !r && "undefined" != typeof window && window.msCrypto && (r = window.msCrypto), + !r && void 0 !== o && o.crypto && (r = o.crypto), + !r) + try { + r = n.default + } catch (e) {} + var r, i = function() { + if (r) { + if ("function" == typeof r.getRandomValues) + try { + return r.getRandomValues(new Uint32Array(1))[0] + } catch (e) {} + if ("function" == typeof r.randomBytes) + try { + return r.randomBytes(4).readInt32LE() + } catch (e) {} + } + throw Error("Native crypto module could not be used to get secure random number.") + }, s = Object.create || function() { + function e() {} + return function(t) { + var r; + return e.prototype = t, + r = new e, + e.prototype = null, + r + } + }(), a = {}, c = a.lib = {}, u = c.Base = { + extend: function(e) { + var t = s(this); + return e && t.mixIn(e), + t.hasOwnProperty("init") && this.init !== t.init || (t.init = function() { + t.$super.init.apply(this, arguments) + } + ), + t.init.prototype = t, + t.$super = this, + t + }, + create: function() { + var e = this.extend(); + return e.init.apply(e, arguments), + e + }, + init: function() {}, + mixIn: function(e) { + for (var t in e) + e.hasOwnProperty(t) && (this[t] = e[t]); + e.hasOwnProperty("toString") && (this.toString = e.toString) + }, + clone: function() { + return this.init.prototype.extend(this) + } + }, l = c.WordArray = u.extend({ + init: function(e, t) { + e = this.words = e || [], + this.sigBytes = null != t ? t : 4 * e.length + }, + toString: function(e) { + return (e || p).stringify(this) + }, + concat: function(e) { + var t = this.words + , r = e.words + , n = this.sigBytes + , i = e.sigBytes; + if (this.clamp(), + n % 4) + for (var o = 0; o < i; o++) { + var s = r[o >>> 2] >>> 24 - o % 4 * 8 & 255; + t[n + o >>> 2] |= s << 24 - (n + o) % 4 * 8 + } + else + for (var a = 0; a < i; a += 4) + t[n + a >>> 2] = r[a >>> 2]; + return this.sigBytes += i, + this + }, + clamp: function() { + var t = this.words + , r = this.sigBytes; + t[r >>> 2] &= 0xffffffff << 32 - r % 4 * 8, + t.length = e.ceil(r / 4) + }, + clone: function() { + var e = u.clone.call(this); + return e.words = this.words.slice(0), + e + }, + random: function(e) { + for (var t = [], r = 0; r < e; r += 4) + t.push(i()); + return new l.init(t,e) + } + }), f = a.enc = {}, p = f.Hex = { + stringify: function(e) { + for (var t = e.words, r = e.sigBytes, n = [], i = 0; i < r; i++) { + var o = t[i >>> 2] >>> 24 - i % 4 * 8 & 255; + n.push((o >>> 4).toString(16)), + n.push((15 & o).toString(16)) + } + return n.join("") + }, + parse: function(e) { + for (var t = e.length, r = [], n = 0; n < t; n += 2) + r[n >>> 3] |= parseInt(e.substr(n, 2), 16) << 24 - n % 8 * 4; + return new l.init(r,t / 2) + } + }, h = f.Latin1 = { + stringify: function(e) { + for (var t = e.words, r = e.sigBytes, n = [], i = 0; i < r; i++) { + var o = t[i >>> 2] >>> 24 - i % 4 * 8 & 255; + n.push(String.fromCharCode(o)) + } + return n.join("") + }, + parse: function(e) { + for (var t = e.length, r = [], n = 0; n < t; n++) + r[n >>> 2] |= (255 & e.charCodeAt(n)) << 24 - n % 4 * 8; + return new l.init(r,t) + } + }, d = f.Utf8 = { + stringify: function(e) { + try { + return decodeURIComponent(escape(h.stringify(e))) + } catch (e) { + throw Error("Malformed UTF-8 data") + } + }, + parse: function(e) { + return h.parse(unescape(encodeURIComponent(e))) + } + }, g = c.BufferedBlockAlgorithm = u.extend({ + reset: function() { + this._data = new l.init, + this._nDataBytes = 0 + }, + _append: function(e) { + "string" == typeof e && (e = d.parse(e)), + this._data.concat(e), + this._nDataBytes += e.sigBytes + }, + _process: function(t) { + var r, n = this._data, i = n.words, o = n.sigBytes, s = this.blockSize, a = o / (4 * s), c = (a = t ? e.ceil(a) : e.max((0 | a) - this._minBufferSize, 0)) * s, u = e.min(4 * c, o); + if (c) { + for (var f = 0; f < c; f += s) + this._doProcessBlock(i, f); + r = i.splice(0, c), + n.sigBytes -= u + } + return new l.init(r,u) + }, + clone: function() { + var e = u.clone.call(this); + return e._data = this._data.clone(), + e + }, + _minBufferSize: 0 + }); + c.Hasher = g.extend({ + cfg: u.extend(), + init: function(e) { + this.cfg = this.cfg.extend(e), + this.reset() + }, + reset: function() { + g.reset.call(this), + this._doReset() + }, + update: function(e) { + return this._append(e), + this._process(), + this + }, + finalize: function(e) { + return e && this._append(e), + this._doFinalize() + }, + blockSize: 16, + _createHelper: function(e) { + return function(t, r) { + return new e.init(r).finalize(t) + } + }, + _createHmacHelper: function(e) { + return function(t, r) { + return new y.HMAC.init(e,r).finalize(t) + } + } + }); + var y = a.algo = {}; + return a + }(Math) + }) + , c = s(function(e, t) { + var r, n, i, o, s, c, u, l, f; + e.exports = (r = Math, + i = (n = a.lib).WordArray, + o = n.Hasher, + s = a.algo, + c = [], + u = [], + function() { + function e(e) { + return 0x100000000 * (e - (0 | e)) | 0 + } + for (var t = 2, n = 0; n < 64; ) + (function(e) { + for (var t = r.sqrt(e), n = 2; n <= t; n++) + if (!(e % n)) + return !1; + return !0 + } + )(t) && (n < 8 && (c[n] = e(r.pow(t, .5))), + u[n] = e(r.pow(t, 1 / 3)), + n++), + t++ + }(), + l = [], + f = s.SHA256 = o.extend({ + _doReset: function() { + this._hash = new i.init(c.slice(0)) + }, + _doProcessBlock: function(e, t) { + for (var r = this._hash.words, n = r[0], i = r[1], o = r[2], s = r[3], a = r[4], c = r[5], f = r[6], p = r[7], h = 0; h < 64; h++) { + if (h < 16) + l[h] = 0 | e[t + h]; + else { + var d = l[h - 15] + , g = (d << 25 | d >>> 7) ^ (d << 14 | d >>> 18) ^ d >>> 3 + , y = l[h - 2] + , m = (y << 15 | y >>> 17) ^ (y << 13 | y >>> 19) ^ y >>> 10; + l[h] = g + l[h - 7] + m + l[h - 16] + } + var v = n & i ^ n & o ^ i & o + , b = (n << 30 | n >>> 2) ^ (n << 19 | n >>> 13) ^ (n << 10 | n >>> 22) + , _ = p + ((a << 26 | a >>> 6) ^ (a << 21 | a >>> 11) ^ (a << 7 | a >>> 25)) + (a & c ^ ~a & f) + u[h] + l[h]; + p = f, + f = c, + c = a, + a = s + _ | 0, + s = o, + o = i, + i = n, + n = _ + (b + v) | 0 + } + r[0] = r[0] + n | 0, + r[1] = r[1] + i | 0, + r[2] = r[2] + o | 0, + r[3] = r[3] + s | 0, + r[4] = r[4] + a | 0, + r[5] = r[5] + c | 0, + r[6] = r[6] + f | 0, + r[7] = r[7] + p | 0 + }, + _doFinalize: function() { + var e = this._data + , t = e.words + , n = 8 * this._nDataBytes + , i = 8 * e.sigBytes; + return t[i >>> 5] |= 128 << 24 - i % 32, + t[14 + (i + 64 >>> 9 << 4)] = r.floor(n / 0x100000000), + t[15 + (i + 64 >>> 9 << 4)] = n, + e.sigBytes = 4 * t.length, + this._process(), + this._hash + }, + clone: function() { + var e = o.clone.call(this); + return e._hash = this._hash.clone(), + e + } + }), + a.SHA256 = o._createHelper(f), + a.HmacSHA256 = o._createHmacHelper(f), + a.SHA256) + }) + , u = (s(function(e, t) { + var r, n; + e.exports = (r = a.lib.Base, + n = a.enc.Utf8, + void (a.algo.HMAC = r.extend({ + init: function(e, t) { + e = this._hasher = new e.init, + "string" == typeof t && (t = n.parse(t)); + var r = e.blockSize + , i = 4 * r; + t.sigBytes > i && (t = e.finalize(t)), + t.clamp(); + for (var o = this._oKey = t.clone(), s = this._iKey = t.clone(), a = o.words, c = s.words, u = 0; u < r; u++) + a[u] ^= 0x5c5c5c5c, + c[u] ^= 0x36363636; + o.sigBytes = s.sigBytes = i, + this.reset() + }, + reset: function() { + var e = this._hasher; + e.reset(), + e.update(this._iKey) + }, + update: function(e) { + return this._hasher.update(e), + this + }, + finalize: function(e) { + var t = this._hasher + , r = t.finalize(e); + return t.reset(), + t.finalize(this._oKey.clone().concat(r)) + } + }))) + }), + s(function(e, t) { + e.exports = a.HmacSHA256 + })) + , l = { + hmac: function(e, t) { + return u(t, e) + }, + sha256: function(e) { + return c(e) + } + } + , f = ["authorization", "content-type", "content-length", "user-agent", "presigned-expires", "expect", "x-amzn-trace-id"] + , p = function(e) { + try { + return encodeURIComponent(e).replace(/[^A-Za-z0-9_.~\-%]+/g, escape).replace(/[*]/g, function(e) { + return "%".concat(e.charCodeAt(0).toString(16).toUpperCase()) + }) + } catch (e) { + return "" + } + } + , h = function(e) { + return Object.keys(e).sort().map(function(t) { + var r = e[t]; + if (null != r) { + var n = p(t); + if (n) + return Array.isArray(r) ? "".concat(n, "=").concat(r.map(p).sort().join("&".concat(n, "="))) : "".concat(n, "=").concat(p(r)) + } + }).filter(function(e) { + return e + }).join("&") + }; + return function() { + var e, t; + function r(e, t, n) { + !function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, r), + this.request = e, + this.request.headers = e.headers || {}, + this.serviceName = t, + n = n || {}, + this.signatureCache = "boolean" != typeof n.signatureCache || n.signatureCache, + this.operation = n.operation, + this.signatureVersion = n.signatureVersion, + this.constant = n.isVolcengine ? { + algorithm: "HMAC-SHA256", + v4Identifier: "request", + dateHeader: "X-Date", + tokenHeader: "x-security-token", + contentSha256Header: "X-Content-Sha256", + kDatePrefix: "" + } : { + algorithm: "AWS4-HMAC-SHA256", + v4Identifier: "aws4_request", + dateHeader: "X-Amz-Date", + tokenHeader: "x-amz-security-token", + contentSha256Header: "X-Amz-Content-Sha256", + kDatePrefix: "AWS4" + }, + this.bodySha256 = n.bodySha256, + this.shouldSerializeBody = "boolean" != typeof n.shouldSerializeBody || n.shouldSerializeBody + } + return e = [{ + key: "addAuthorization", + value: function(e, t) { + var r = this.iso8601(t).replace(/[:\-]|\.\d{3}/g, ""); + this.addHeaders(e, r), + this.request.headers.Authorization = this.authorization(e, r) + } + }, { + key: "addHeaders", + value: function(e, t) { + if (this.request.headers[this.constant.dateHeader] = t, + e.sessionToken && (this.request.headers[this.constant.tokenHeader] = e.sessionToken), + this.request.body) { + var r = this.request.body; + "string" != typeof r && this.shouldSerializeBody && (r = r instanceof URLSearchParams ? r.toString() : JSON.stringify(r)), + this.request.headers[this.constant.contentSha256Header] = this.bodySha256 || l.sha256(r).toString() + } + } + }, { + key: "authorization", + value: function(e, t) { + var r = [] + , n = this.credentialString(t); + return r.push("".concat(this.constant.algorithm, " Credential=").concat(e.accessKeyId, "/").concat(n)), + r.push("SignedHeaders=".concat(this.signedHeaders())), + r.push("Signature=".concat(this.signature(e, t))), + r.join(", ") + } + }, { + key: "signature", + value: function(e, t) { + var r = this.getSigningKey(e, t.substr(0, 8), this.request.region, this.serviceName, this.signatureCache); + return l.hmac(r, this.stringToSign(t), "hex") + } + }, { + key: "stringToSign", + value: function(e) { + var t = []; + return t.push(this.constant.algorithm), + t.push(e), + t.push(this.credentialString(e)), + t.push(this.hexEncodedHash(this.canonicalString())), + t.join("\n") + } + }, { + key: "canonicalString", + value: function() { + var e = [] + , t = this.request.pathname || "/"; + return e.push(this.request.method.toUpperCase()), + e.push(t), + e.push(h(this.request.params) || ""), + e.push("".concat(this.canonicalHeaders(), "\n")), + e.push(this.signedHeaders()), + e.push(this.hexEncodedBodyHash()), + e.join("\n") + } + }, { + key: "canonicalHeaders", + value: function() { + var e = this + , t = []; + Object.keys(this.request.headers).forEach(function(r) { + t.push([r, e.request.headers[r]]) + }), + t.sort(function(e, t) { + return e[0].toLowerCase() < t[0].toLowerCase() ? -1 : 1 + }); + var r = []; + return t.forEach(function(t) { + var n = t[0].toLowerCase(); + if (e.isSignableHeader(n)) { + var i = t[1]; + if (null == i || "function" != typeof i.toString) + throw Error("Header ".concat(n, " contains invalid value")); + r.push("".concat(n, ":").concat(e.canonicalHeaderValues(i.toString()))) + } + }), + r.join("\n") + } + }, { + key: "canonicalHeaderValues", + value: function(e) { + return e.replace(/\s+/g, " ").replace(/^\s+|\s+$/g, "") + } + }, { + key: "signedHeaders", + value: function() { + var e = this + , t = []; + return Object.keys(this.request.headers).forEach(function(r) { + r = r.toLowerCase(), + e.isSignableHeader(r) && t.push(r) + }), + t.sort().join(";") + } + }, { + key: "credentialString", + value: function(e) { + return this.createScope(e.substr(0, 8), this.request.region, this.serviceName) + } + }, { + key: "hexEncodedHash", + value: function(e) { + return l.sha256(e) + } + }, { + key: "hexEncodedBodyHash", + value: function() { + return this.request.headers[this.constant.contentSha256Header] ? this.request.headers[this.constant.contentSha256Header] : this.request.body ? this.hexEncodedHash(h(this.request.body)) : this.hexEncodedHash("") + } + }, { + key: "isSignableHeader", + value: function(e) { + return 0 === e.toLowerCase().indexOf("x-amz-") || 0 > f.indexOf(e) + } + }, { + key: "iso8601", + value: function(e) { + return void 0 === e && (e = new Date), + e.toISOString().replace(/\.\d{3}Z$/, "Z") + } + }, { + key: "getSigningKey", + value: function(e, t, r, n) { + var i = l.hmac("".concat(this.constant.kDatePrefix).concat(e.secretAccessKey), t) + , o = l.hmac(i, r) + , s = l.hmac(o, n); + return l.hmac(s, this.constant.v4Identifier) + } + }, { + key: "createScope", + value: function(e, t, r) { + return [e.substr(0, 8), t, r, this.constant.v4Identifier].join("/") + } + }], + i(r.prototype, e), + t && i(r, t), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + r + }() + }(r(9)) + } + ).call(this, r(5)) + } + , function(e, t, r) { + e.exports = function() { + return r(10)('!function(t){var n={};function __webpack_require__(r){var e;return(n[r]||(e=n[r]={i:r,l:!1,exports:{}},t[r].call(e.exports,e,e.exports,__webpack_require__),e.l=!0,e)).exports}__webpack_require__.m=t,__webpack_require__.c=n,__webpack_require__.d=function(r,e,t){__webpack_require__.o(r,e)||Object.defineProperty(r,e,{enumerable:!0,get:t})},__webpack_require__.r=function(r){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(r,"__esModule",{value:!0})},__webpack_require__.t=function(e,r){if(1&r&&(e=__webpack_require__(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(__webpack_require__.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)__webpack_require__.d(t,n,function(r){return e[r]}.bind(null,n));return t},__webpack_require__.n=function(r){var e=r&&r.__esModule?function getDefault(){return r.default}:function getModuleExports(){return r};return __webpack_require__.d(e,"a",e),e},__webpack_require__.o=function(r,e){return Object.prototype.hasOwnProperty.call(r,e)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=9)}([function(r,e,y){!function(_){r.exports=function(){var r=r||function(u,t){var r;if(typeof window!=="undefined"&&window.crypto)r=window.crypto;if(typeof self!=="undefined"&&self.crypto)r=self.crypto;if(typeof globalThis!=="undefined"&&globalThis.crypto)r=globalThis.crypto;if(!r&&typeof window!=="undefined"&&window.msCrypto)r=window.msCrypto;if(!r&&typeof _!=="undefined"&&_.crypto)r=_.crypto;if(!r&&"function"==="function")try{r=y(11)}catch(r){}var n=function(){if(r){if(typeof r.getRandomValues==="function")try{return r.getRandomValues(new Uint32Array(1))[0]}catch(r){}if(typeof r.randomBytes==="function")try{return r.randomBytes(4).readInt32LE()}catch(r){}}throw new Error("Native crypto module could not be used to get secure random number.")};var i=Object.create||function(){function F(){}return function(r){var e;F.prototype=r;e=new F;F.prototype=null;return e}}();var e={};var a=e.lib={};var o=a.Base=function(){return{extend:function(r){var e=i(this);if(r)e.mixIn(r);if(!e.hasOwnProperty("init")||this.init===e.init)e.init=function(){e.$super.init.apply(this,arguments)};e.init.prototype=e;e.$super=this;return e},create:function(){var r=this.extend();r.init.apply(r,arguments);return r},init:function(){},mixIn:function(r){for(var e in r)if(r.hasOwnProperty(e))this[e]=r[e];if(r.hasOwnProperty("toString"))this.toString=r.toString},clone:function(){return this.init.prototype.extend(this)}}}();var h=a.WordArray=o.extend({init:function(r,e){r=this.words=r||[];if(e!=t)this.sigBytes=e;else this.sigBytes=r.length*4},toString:function(r){return(r||s).stringify(this)},concat:function(r){var e=this.words;var t=r.words;var n=this.sigBytes;var i=r.sigBytes;this.clamp();if(n%4)for(var a=0;a>>2]>>>24-a%4*8&255;e[n+a>>>2]|=o<<24-(n+a)%4*8}else for(var c=0;c>>2]=t[c>>>2];this.sigBytes+=i;return this},clamp:function(){var r=this.words;var e=this.sigBytes;r[e>>>2]&=4294967295<<32-e%4*8;r.length=u.ceil(e/4)},clone:function(){var r=o.clone.call(this);r.words=this.words.slice(0);return r},random:function(r){var e=[];for(var t=0;t>>2]>>>24-i%4*8&255;n.push((a>>>4).toString(16));n.push((a&15).toString(16))}return n.join("")},parse:function(r){var e=r.length;var t=[];for(var n=0;n>>3]|=parseInt(r.substr(n,2),16)<<24-n%8*4;return new h.init(t,e/2)}};var f=c.Latin1={stringify:function(r){var e=r.words;var t=r.sigBytes;var n=[];for(var i=0;i>>2]>>>24-i%4*8&255;n.push(String.fromCharCode(a))}return n.join("")},parse:function(r){var e=r.length;var t=[];for(var n=0;n>>2]|=(r.charCodeAt(n)&255)<<24-n%4*8;return new h.init(t,e)}};var v=c.Utf8={stringify:function(r){try{return decodeURIComponent(escape(f.stringify(r)))}catch(r){throw new Error("Malformed UTF-8 data")}},parse:function(r){return f.parse(unescape(encodeURIComponent(r)))}};var p=a.BufferedBlockAlgorithm=o.extend({reset:function(){this._data=new h.init;this._nDataBytes=0},_append:function(r){if(typeof r=="string")r=v.parse(r);this._data.concat(r);this._nDataBytes+=r.sigBytes},_process:function(r){var e;var t=this._data;var n=t.words;var i=t.sigBytes;var a=this.blockSize;var o=a*4;var c=i/o;if(r)c=u.ceil(c);else c=u.max((c|0)-this._minBufferSize,0);var s=c*a;var f=u.min(s*4,i);if(s){for(var v=0;v>>2]&255;r.sigBytes-=e}};var g=e.BlockCipher=u.extend({cfg:u.cfg.extend({mode:d,padding:y}),reset:function(){var r;u.reset.call(this);var e=this.cfg;var t=e.iv;var n=e.mode;if(this._xformMode==this._ENC_XFORM_MODE)r=n.createEncryptor;else{r=n.createDecryptor;this._minBufferSize=1}if(this._mode&&this._mode.__creator==r)this._mode.init(this,t&&t.words);else{this._mode=r.call(n,this,t&&t.words);this._mode.__creator=r}},_doProcessBlock:function(r,e){this._mode.processBlock(r,e)},_doFinalize:function(){var r;var e=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){e.pad(this._data,this.blockSize);r=this._process(!!"flush")}else{r=this._process(!!"flush");e.unpad(r)}return r},blockSize:128/32});var w=e.CipherParams=t.extend({init:function(r){this.mixIn(r)},toString:function(r){return(r||this.formatter).stringify(this)}});var k=r.format={};var B=k.OpenSSL={stringify:function(r){var e;var t=r.ciphertext;var n=r.salt;if(n)e=s.create([1398893684,1701076831]).concat(n).concat(t);else e=t;return e.toString(c)},parse:function(r){var e;var t=c.parse(r);var n=t.words;if(n[0]==1398893684&&n[1]==1701076831){e=s.create(n.slice(2,4));n.splice(0,4);t.sigBytes-=16}return w.create({ciphertext:t,salt:e})}};var m=e.SerializableCipher=t.extend({cfg:t.extend({format:B}),encrypt:function(r,e,t,n){n=this.cfg.extend(n);var i=r.createEncryptor(t,n);var a=i.finalize(e);var o=i.cfg;return w.create({ciphertext:a,key:t,iv:o.iv,algorithm:r,mode:o.mode,padding:o.padding,blockSize:r.blockSize,formatter:n.format})},decrypt:function(r,e,t,n){n=this.cfg.extend(n);e=this._parse(e,n.format);var i=r.createDecryptor(t,n).finalize(e.ciphertext);return i},_parse:function(r,e){if(typeof r=="string")return e.parse(r,this);else return r}});var x=r.kdf={};var b=x.OpenSSL={execute:function(r,e,t,n,i){if(!n)n=s.random(64/8);if(!i)var a=v.create({keySize:e+t}).compute(r,n);else var a=v.create({keySize:e+t,hasher:i}).compute(r,n);var o=s.create(a.words.slice(e),t*4);a.sigBytes=e*4;return w.create({key:a,iv:o,salt:n})}};var S=e.PasswordBasedCipher=m.extend({cfg:m.cfg.extend({kdf:b}),encrypt:function(r,e,t,n){n=this.cfg.extend(n);var i=n.kdf.execute(t,r.keySize,r.ivSize,n.salt,n.hasher);n.iv=i.iv;var a=m.encrypt.call(this,r,e,i.key,n);a.mixIn(i);return a},decrypt:function(r,e,t,n){n=this.cfg.extend(n);e=this._parse(e,n.format);var i=n.kdf.execute(t,r.keySize,r.ivSize,e.salt,n.hasher);n.iv=i.iv;var a=m.decrypt.call(this,r,e,i.key,n);return a}})}()}(t(0),t(5))},function(r,e,t){r.exports=function(a){return function(){var r=a;var e=r.lib;var t=e.BlockCipher;var n=r.algo;var v=[];var f=[];var u=[];var h=[];var p=[];var l=[];var d=[];var _=[];var y=[];var g=[];(function(){var r=[];for(var e=0;e<256;e++)if(e<128)r[e]=e<<1;else r[e]=e<<1^283;var t=0;var n=0;for(var e=0;e<256;e++){var i=n^n<<1^n<<2^n<<3^n<<4;i=i>>>8^i&255^99;v[t]=i;f[i]=t;var a=r[t];var o=r[a];var c=r[o];var s=r[i]*257^i*16843008;u[t]=s<<24|s>>>8;h[t]=s<<16|s>>>16;p[t]=s<<8|s>>>24;l[t]=s;var s=c*16843009^o*65537^a*257^t*16843008;d[i]=s<<24|s>>>8;_[i]=s<<16|s>>>16;y[i]=s<<8|s>>>24;g[i]=s;if(!t)t=n=1;else{t=a^r[r[r[c^a]]];n^=r[r[n]]}}})();var w=[0,1,2,4,8,16,32,64,128,27,54];var i=n.AES=t.extend({_doReset:function(){var r;if(this._nRounds&&this._keyPriorReset===this._key)return;var e=this._keyPriorReset=this._key;var t=e.words;var n=e.sigBytes/4;var i=this._nRounds=n+6;var a=(i+1)*4;var o=this._keySchedule=[];for(var c=0;c>>24;r=v[r>>>24]<<24|v[r>>>16&255]<<16|v[r>>>8&255]<<8|v[r&255];r^=w[c/n|0]<<24}else if(n>6&&c%n==4)r=v[r>>>24]<<24|v[r>>>16&255]<<16|v[r>>>8&255]<<8|v[r&255];o[c]=o[c-n]^r}var s=this._invKeySchedule=[];for(var f=0;f>>24]]^_[v[r>>>16&255]]^y[v[r>>>8&255]]^g[v[r&255]]}},encryptBlock:function(r,e){this._doCryptBlock(r,e,this._keySchedule,u,h,p,l,v)},decryptBlock:function(r,e){var t=r[e+1];r[e+1]=r[e+3];r[e+3]=t;this._doCryptBlock(r,e,this._invKeySchedule,d,_,y,g,f);var t=r[e+1];r[e+1]=r[e+3];r[e+3]=t},_doCryptBlock:function(r,e,t,n,i,a,o,c){var s=this._nRounds;var f=r[e]^t[0];var v=r[e+1]^t[1];var u=r[e+2]^t[2];var h=r[e+3]^t[3];var p=4;for(var l=1;l>>24]^i[v>>>16&255]^a[u>>>8&255]^o[h&255]^t[p++];var _=n[v>>>24]^i[u>>>16&255]^a[h>>>8&255]^o[f&255]^t[p++];var y=n[u>>>24]^i[h>>>16&255]^a[f>>>8&255]^o[v&255]^t[p++];var g=n[h>>>24]^i[f>>>16&255]^a[v>>>8&255]^o[u&255]^t[p++];f=d;v=_;u=y;h=g}var d=(c[f>>>24]<<24|c[v>>>16&255]<<16|c[u>>>8&255]<<8|c[h&255])^t[p++];var _=(c[v>>>24]<<24|c[u>>>16&255]<<16|c[h>>>8&255]<<8|c[f&255])^t[p++];var y=(c[u>>>24]<<24|c[h>>>16&255]<<16|c[f>>>8&255]<<8|c[v&255])^t[p++];var g=(c[h>>>24]<<24|c[f>>>16&255]<<16|c[v>>>8&255]<<8|c[u&255])^t[p++];r[e]=d;r[e+1]=_;r[e+2]=y;r[e+3]=g},keySize:256/32});r.AES=t._createHelper(i)}(),a.AES}(t(0),(t(12),t(13),t(5),t(1)))},function(r,e,t){r.exports=function(e){return e.mode.ECB=function(){var r=e.lib.BlockCipherMode.extend();r.Encryptor=r.extend({processBlock:function(r,e){this._cipher.encryptBlock(r,e)}});r.Decryptor=r.extend({processBlock:function(r,e){this._cipher.decryptBlock(r,e)}});return r}(),e.mode.ECB}(t(0),t(1))},function(r,e,t){r.exports=function(r){return r.enc.Utf8}(t(0))},function(r,e,t){r.exports=function(o){return function(){var r=o;var e=r.lib;var t=e.Base;var v=e.WordArray;var n=r.algo;var i=n.MD5;var a=n.EvpKDF=t.extend({cfg:t.extend({keySize:128/32,hasher:i,iterations:1}),init:function(r){this.cfg=this.cfg.extend(r)},compute:function(r,e){var t;var n=this.cfg;var i=n.hasher.create();var a=v.create();var o=a.words;var c=n.keySize;var s=n.iterations;while(o.length>>2]|=r[n]<<24-n%4*8;i.call(this,t,e)}else i.apply(this,arguments)};n.prototype=t}(),a.lib.WordArray}(t(0))},function(r,e,t){"use strict";t.r(e);var e=t(2),o=t.n(e),e=t(3),c=t.n(e),e=t(6),s=t.n(e),e=t(7),f=t.n(e),e=t(8),v=t.n(e),e=t(4),u=t.n(e);function crc32(r,e){for(var t=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117],n=("undefined"!=typeof Int32Array&&(t=new Int32Array(t)),-1^~~e),i=(r=new Uint8Array(r)).length,a=0;a>>8;return(-1^n)>>>0}function dec2hex(r){if(void 0!==r)return function toEight(r){return r.length<8?toEight(r="0".concat(r)):r}(Number(r).toString(16))}self.onmessage=function(r){var r=r.data,e=r[0],t=r[1],n=r[2],i=r[3],a=r[4],r=r[5];i?(i=v.a.create(e),i=crc32(r=function wordArrayToUint8Array(r){for(var e=r.sigBytes,t=r.words,n=new Uint8Array(e),i=0,a=0;i!==e;){var o=t[a++];if(n[i++]=(4278190080&o)>>>24,i===e)break;if(n[i++]=(16711680&o)>>>16,i===e)break;if(n[i++]=(65280&o)>>>8,i===e)break;n[i++]=255&o}return n}((r&&e.byteLength%16!=0?o.a.encrypt(i,u.a.parse(a),{mode:c.a,padding:s.a}):o.a.encrypt(i,u.a.parse(a),{mode:c.a,padding:f.a})).ciphertext),0),postMessage([r.buffer,dec2hex(i),t,n],[r.buffer])):(a=crc32(e,0),postMessage([e,dec2hex(a),t,n],[e]))}},function(r,e){var t=function(){return this}();try{t=t||new Function("return this")()}catch(r){"object"==typeof window&&(t=window)}r.exports=t},function(r,e){},function(r,e,t){r.exports=function(i){return function(){var r=i;var e=r.lib;var f=e.WordArray;var t=r.enc;var n=t.Base64={stringify:function(r){var e=r.words;var t=r.sigBytes;var n=this._map;r.clamp();var i=[];for(var a=0;a>>2]>>>24-a%4*8&255;var c=e[a+1>>>2]>>>24-(a+1)%4*8&255;var s=e[a+2>>>2]>>>24-(a+2)%4*8&255;var f=o<<16|c<<8|s;for(var v=0;v<4&&a+v*.75>>6*(3-v)&63))}var u=n.charAt(64);if(u)while(i.length%4)i.push(u);return i.join("")},parse:function(r){var e=r.length;var t=this._map;var n=this._reverseMap;if(!n){n=this._reverseMap=[];for(var i=0;i>>6-a%4*2;var s=o|c;n[i>>>2]|=s<<24-i%4*8;i++}return f.create(n,i)}}(),i.enc.Base64}(t(0))},function(r,e,t){r.exports=function(o){return function(v){var r=o;var e=r.lib;var t=e.WordArray;var n=e.Hasher;var i=r.algo;var F=[];(function(){for(var r=0;r<64;r++)F[r]=v.abs(v.sin(r+1))*4294967296|0})();var a=i.MD5=n.extend({_doReset:function(){this._hash=new t.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(r,e){for(var t=0;t<16;t++){var n=e+t;var i=r[n];r[n]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360}var a=this._hash.words;var o=r[e+0];var c=r[e+1];var s=r[e+2];var f=r[e+3];var v=r[e+4];var u=r[e+5];var h=r[e+6];var p=r[e+7];var l=r[e+8];var d=r[e+9];var _=r[e+10];var y=r[e+11];var g=r[e+12];var w=r[e+13];var k=r[e+14];var B=r[e+15];var m=a[0];var x=a[1];var b=a[2];var S=a[3];m=FF(m,x,b,S,o,7,F[0]);S=FF(S,m,x,b,c,12,F[1]);b=FF(b,S,m,x,s,17,F[2]);x=FF(x,b,S,m,f,22,F[3]);m=FF(m,x,b,S,v,7,F[4]);S=FF(S,m,x,b,u,12,F[5]);b=FF(b,S,m,x,h,17,F[6]);x=FF(x,b,S,m,p,22,F[7]);m=FF(m,x,b,S,l,7,F[8]);S=FF(S,m,x,b,d,12,F[9]);b=FF(b,S,m,x,_,17,F[10]);x=FF(x,b,S,m,y,22,F[11]);m=FF(m,x,b,S,g,7,F[12]);S=FF(S,m,x,b,w,12,F[13]);b=FF(b,S,m,x,k,17,F[14]);x=FF(x,b,S,m,B,22,F[15]);m=GG(m,x,b,S,c,5,F[16]);S=GG(S,m,x,b,h,9,F[17]);b=GG(b,S,m,x,y,14,F[18]);x=GG(x,b,S,m,o,20,F[19]);m=GG(m,x,b,S,u,5,F[20]);S=GG(S,m,x,b,_,9,F[21]);b=GG(b,S,m,x,B,14,F[22]);x=GG(x,b,S,m,v,20,F[23]);m=GG(m,x,b,S,d,5,F[24]);S=GG(S,m,x,b,k,9,F[25]);b=GG(b,S,m,x,f,14,F[26]);x=GG(x,b,S,m,l,20,F[27]);m=GG(m,x,b,S,w,5,F[28]);S=GG(S,m,x,b,s,9,F[29]);b=GG(b,S,m,x,p,14,F[30]);x=GG(x,b,S,m,g,20,F[31]);m=HH(m,x,b,S,u,4,F[32]);S=HH(S,m,x,b,l,11,F[33]);b=HH(b,S,m,x,y,16,F[34]);x=HH(x,b,S,m,k,23,F[35]);m=HH(m,x,b,S,c,4,F[36]);S=HH(S,m,x,b,v,11,F[37]);b=HH(b,S,m,x,p,16,F[38]);x=HH(x,b,S,m,_,23,F[39]);m=HH(m,x,b,S,w,4,F[40]);S=HH(S,m,x,b,o,11,F[41]);b=HH(b,S,m,x,f,16,F[42]);x=HH(x,b,S,m,h,23,F[43]);m=HH(m,x,b,S,d,4,F[44]);S=HH(S,m,x,b,g,11,F[45]);b=HH(b,S,m,x,B,16,F[46]);x=HH(x,b,S,m,s,23,F[47]);m=II(m,x,b,S,o,6,F[48]);S=II(S,m,x,b,p,10,F[49]);b=II(b,S,m,x,k,15,F[50]);x=II(x,b,S,m,u,21,F[51]);m=II(m,x,b,S,g,6,F[52]);S=II(S,m,x,b,f,10,F[53]);b=II(b,S,m,x,_,15,F[54]);x=II(x,b,S,m,c,21,F[55]);m=II(m,x,b,S,l,6,F[56]);S=II(S,m,x,b,B,10,F[57]);b=II(b,S,m,x,h,15,F[58]);x=II(x,b,S,m,w,21,F[59]);m=II(m,x,b,S,v,6,F[60]);S=II(S,m,x,b,y,10,F[61]);b=II(b,S,m,x,s,15,F[62]);x=II(x,b,S,m,d,21,F[63]);a[0]=a[0]+m|0;a[1]=a[1]+x|0;a[2]=a[2]+b|0;a[3]=a[3]+S|0},_doFinalize:function(){var r=this._data;var e=r.words;var t=this._nDataBytes*8;var n=r.sigBytes*8;e[n>>>5]|=128<<24-n%32;var i=v.floor(t/4294967296);var a=t;e[(n+64>>>9<<4)+15]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360;e[(n+64>>>9<<4)+14]=(a<<8|a>>>24)&16711935|(a<<24|a>>>8)&4278255360;r.sigBytes=(e.length+1)*4;this._process();var o=this._hash;var c=o.words;for(var s=0;s<4;s++){var f=c[s];c[s]=(f<<8|f>>>24)&16711935|(f<<24|f>>>8)&4278255360}return o},clone:function(){var r=n.clone.call(this);r._hash=this._hash.clone();return r}});function FF(r,e,t,n,i,a,o){var c=r+(e&t|~e&n)+i+o;return(c<>>32-a)+e}function GG(r,e,t,n,i,a,o){var c=r+(e&n|t&~n)+i+o;return(c<>>32-a)+e}function HH(r,e,t,n,i,a,o){var c=r+(e^t^n)+i+o;return(c<>>32-a)+e}function II(r,e,t,n,i,a,o){var c=r+(t^(e|~n))+i+o;return(c<>>32-a)+e}r.MD5=n._createHelper(a);r.HmacMD5=n._createHmacHelper(a)}(Math),o.MD5}(t(0))},function(r,e,t){r.exports=function(o){return function(){var r=o;var e=r.lib;var t=e.WordArray;var n=e.Hasher;var i=r.algo;var u=[];var a=i.SHA1=n.extend({_doReset:function(){this._hash=new t.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(r,e){var t=this._hash.words;var n=t[0];var i=t[1];var a=t[2];var o=t[3];var c=t[4];for(var s=0;s<80;s++){if(s<16)u[s]=r[e+s]|0;else{var f=u[s-3]^u[s-8]^u[s-14]^u[s-16];u[s]=f<<1|f>>>31}var v=(n<<5|n>>>27)+c+u[s];if(s<20)v+=(i&a|~i&o)+1518500249;else if(s<40)v+=(i^a^o)+1859775393;else if(s<60)v+=(i&a|i&o|a&o)-1894007588;else v+=(i^a^o)-899497514;c=o;o=a;a=i<<30|i>>>2;i=n;n=v}t[0]=t[0]+n|0;t[1]=t[1]+i|0;t[2]=t[2]+a|0;t[3]=t[3]+o|0;t[4]=t[4]+c|0},_doFinalize:function(){var r=this._data;var e=r.words;var t=this._nDataBytes*8;var n=r.sigBytes*8;e[n>>>5]|=128<<24-n%32;e[(n+64>>>9<<4)+14]=Math.floor(t/4294967296);e[(n+64>>>9<<4)+15]=t;r.sigBytes=e.length*4;this._process();return this._hash},clone:function(){var r=n.clone.call(this);r._hash=this._hash.clone();return r}});r.SHA1=n._createHelper(a);r.HmacSHA1=n._createHmacHelper(a)}(),o.SHA1}(t(0))},function(r,e,t){r.exports=function(o){(function(){var r=o;var e=r.lib;var t=e.Base;var n=r.enc;var f=n.Utf8;var i=r.algo;var a=i.HMAC=t.extend({init:function(r,e){r=this._hasher=new r.init;if(typeof e=="string")e=f.parse(e);var t=r.blockSize;var n=t*4;if(e.sigBytes>n)e=r.finalize(e);e.clamp();var i=this._oKey=e.clone();var a=this._iKey=e.clone();var o=i.words;var c=a.words;for(var s=0;s>> 2] >>> 24 - o % 4 * 8 & 255; + t[n + o >>> 2] |= s << 24 - (n + o) % 4 * 8 + } + else + for (var a = 0; a < i; a += 4) + t[n + a >>> 2] = r[a >>> 2]; + return this.sigBytes += i, + this + }, + clamp: function() { + var t = this.words + , r = this.sigBytes; + t[r >>> 2] &= 0xffffffff << 32 - r % 4 * 8, + t.length = e.ceil(r / 4) + }, + clone: function() { + var e = u.clone.call(this); + return e.words = this.words.slice(0), + e + }, + random: function(e) { + for (var t = [], r = 0; r < e; r += 4) + t.push(o()); + return new l.init(t,e) + } + }), f = a.enc = {}, p = f.Hex = { + stringify: function(e) { + for (var t = e.words, r = e.sigBytes, n = [], i = 0; i < r; i++) { + var o = t[i >>> 2] >>> 24 - i % 4 * 8 & 255; + n.push((o >>> 4).toString(16)), + n.push((15 & o).toString(16)) + } + return n.join("") + }, + parse: function(e) { + for (var t = e.length, r = [], n = 0; n < t; n += 2) + r[n >>> 3] |= parseInt(e.substr(n, 2), 16) << 24 - n % 8 * 4; + return new l.init(r,t / 2) + } + }, h = f.Latin1 = { + stringify: function(e) { + for (var t = e.words, r = e.sigBytes, n = [], i = 0; i < r; i++) { + var o = t[i >>> 2] >>> 24 - i % 4 * 8 & 255; + n.push(String.fromCharCode(o)) + } + return n.join("") + }, + parse: function(e) { + for (var t = e.length, r = [], n = 0; n < t; n++) + r[n >>> 2] |= (255 & e.charCodeAt(n)) << 24 - n % 4 * 8; + return new l.init(r,t) + } + }, d = f.Utf8 = { + stringify: function(e) { + try { + return decodeURIComponent(escape(h.stringify(e))) + } catch (e) { + throw Error("Malformed UTF-8 data") + } + }, + parse: function(e) { + return h.parse(unescape(encodeURIComponent(e))) + } + }, g = c.BufferedBlockAlgorithm = u.extend({ + reset: function() { + this._data = new l.init, + this._nDataBytes = 0 + }, + _append: function(e) { + "string" == typeof e && (e = d.parse(e)), + this._data.concat(e), + this._nDataBytes += e.sigBytes + }, + _process: function(t) { + var r, n = this._data, i = n.words, o = n.sigBytes, s = this.blockSize, a = o / (4 * s), c = (a = t ? e.ceil(a) : e.max((0 | a) - this._minBufferSize, 0)) * s, u = e.min(4 * c, o); + if (c) { + for (var f = 0; f < c; f += s) + this._doProcessBlock(i, f); + r = i.splice(0, c), + n.sigBytes -= u + } + return new l.init(r,u) + }, + clone: function() { + var e = u.clone.call(this); + return e._data = this._data.clone(), + e + }, + _minBufferSize: 0 + }); + c.Hasher = g.extend({ + cfg: u.extend(), + init: function(e) { + this.cfg = this.cfg.extend(e), + this.reset() + }, + reset: function() { + g.reset.call(this), + this._doReset() + }, + update: function(e) { + return this._append(e), + this._process(), + this + }, + finalize: function(e) { + return e && this._append(e), + this._doFinalize() + }, + blockSize: 16, + _createHelper: function(e) { + return function(t, r) { + return new e.init(r).finalize(t) + } + }, + _createHmacHelper: function(e) { + return function(t, r) { + return new y.HMAC.init(e,r).finalize(t) + } + } + }); + var y = a.algo = {}; + return a + }(Math) + } + ).call(this, r(5)) + } + , function(e, t, r) { + var n; + e.exports = (n = r(3), + function(e) { + var t = n.lib + , r = t.WordArray + , i = t.Hasher + , o = n.algo + , s = [] + , a = []; + (function() { + function t(e) { + return (e - (0 | e)) * 0x100000000 | 0 + } + for (var r = 2, n = 0; n < 64; ) + (function(t) { + for (var r = e.sqrt(t), n = 2; n <= r; n++) + if (!(t % n)) + return !1; + return !0 + } + )(r) && (n < 8 && (s[n] = t(e.pow(r, .5))), + a[n] = t(e.pow(r, 1 / 3)), + n++), + r++ + } + )(); + var c = [] + , u = o.SHA256 = i.extend({ + _doReset: function() { + this._hash = new r.init(s.slice(0)) + }, + _doProcessBlock: function(e, t) { + for (var r = this._hash.words, n = r[0], i = r[1], o = r[2], s = r[3], u = r[4], l = r[5], f = r[6], p = r[7], h = 0; h < 64; h++) { + if (h < 16) + c[h] = 0 | e[t + h]; + else { + var d = c[h - 15] + , g = (d << 25 | d >>> 7) ^ (d << 14 | d >>> 18) ^ d >>> 3 + , y = c[h - 2] + , m = (y << 15 | y >>> 17) ^ (y << 13 | y >>> 19) ^ y >>> 10; + c[h] = g + c[h - 7] + m + c[h - 16] + } + var v = u & l ^ ~u & f + , b = n & i ^ n & o ^ i & o + , _ = (n << 30 | n >>> 2) ^ (n << 19 | n >>> 13) ^ (n << 10 | n >>> 22) + , S = p + ((u << 26 | u >>> 6) ^ (u << 21 | u >>> 11) ^ (u << 7 | u >>> 25)) + v + a[h] + c[h] + , x = _ + b; + p = f, + f = l, + l = u, + u = s + S | 0, + s = o, + o = i, + i = n, + n = S + x | 0 + } + r[0] = r[0] + n | 0, + r[1] = r[1] + i | 0, + r[2] = r[2] + o | 0, + r[3] = r[3] + s | 0, + r[4] = r[4] + u | 0, + r[5] = r[5] + l | 0, + r[6] = r[6] + f | 0, + r[7] = r[7] + p | 0 + }, + _doFinalize: function() { + var t = this._data + , r = t.words + , n = 8 * this._nDataBytes + , i = 8 * t.sigBytes; + return r[i >>> 5] |= 128 << 24 - i % 32, + r[(i + 64 >>> 9 << 4) + 14] = e.floor(n / 0x100000000), + r[(i + 64 >>> 9 << 4) + 15] = n, + t.sigBytes = 4 * r.length, + this._process(), + this._hash + }, + clone: function() { + var e = i.clone.call(this); + return e._hash = this._hash.clone(), + e + } + }); + n.SHA256 = i._createHelper(u), + n.HmacSHA256 = i._createHmacHelper(u) + }(Math), + n.SHA256) + } + , function(e, t) { + var r = function() { + return this + }(); + try { + r = r || Function("return this")() + } catch (e) { + "object" == typeof window && (r = window) + } + e.exports = r + } + , function(e, t, r) { + var n; + e.exports = (n = r(3), + r(4), + r(8), + n.HmacSHA256) + } + , function(e, t) {} + , function(e, t, r) { + var n, i, o; + e.exports = void (i = (n = r(3)).lib.Base, + o = n.enc.Utf8, + n.algo.HMAC = i.extend({ + init: function(e, t) { + e = this._hasher = new e.init, + "string" == typeof t && (t = o.parse(t)); + var r = e.blockSize + , n = 4 * r; + t.sigBytes > n && (t = e.finalize(t)), + t.clamp(); + for (var i = this._oKey = t.clone(), s = this._iKey = t.clone(), a = i.words, c = s.words, u = 0; u < r; u++) + a[u] ^= 0x5c5c5c5c, + c[u] ^= 0x36363636; + i.sigBytes = s.sigBytes = n, + this.reset() + }, + reset: function() { + var e = this._hasher; + e.reset(), + e.update(this._iKey) + }, + update: function(e) { + return this._hasher.update(e), + this + }, + finalize: function(e) { + var t = this._hasher + , r = t.finalize(e); + return t.reset(), + t.finalize(this._oKey.clone().concat(r)) + } + })) + } + , function(e, t) {} + , function(e, t, r) { + "use strict"; + var n = window.URL || window.webkitURL; + e.exports = function(e, t) { + try { + try { + var r; + try { + (r = new (window.BlobBuilder || window.WebKitBlobBuilder || window.MozBlobBuilder || window.MSBlobBuilder)).append(e), + r = r.getBlob() + } catch (t) { + r = new Blob([e]) + } + return new Worker(n.createObjectURL(r)) + } catch (t) { + return new Worker("data:application/javascript," + encodeURIComponent(e)) + } + } catch (e) { + if (t) + return new Worker(t); + throw Error("Inline worker is not supported") + } + } + } + , function(e, t, r) { + "use strict"; + r.r(t), + r.d(t, "default", function() { + return t7 + }); + var t = r(0) + , n = r.n(t) + , i = "{tosDomain}/upload/v1/{oid}?uploadid={uploadId}&part_number={part_number}&phase=transfer" + , o = "{tosDomain}/upload/v1/{oid}" + , s = { + debug: !1, + region: "cn-north-1", + external: {}, + getSliceFunc: null, + uploadSliceCount: 3, + retryUploadTime: 2, + retryProcess: !0, + retryProcessTime: 3, + retryTaskTime: 2, + progressMonitorTime: 1e4, + progressMonitorSpeed: 50, + schema: "https", + enableDiskBreakpoint: !0, + gatewayTimeout: 3e4, + uploadTimeout: 18e5, + realtimeSpeedInterval: 3e3, + replace: {} + } + , a = function() { + return (a = Object.assign || function(e) { + for (var t, r = 1, n = arguments.length; r < n; r++) + for (var i in t = arguments[r]) + Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]); + return e + } + ).apply(this, arguments) + }; + function c() { + for (var e = [], t = 0; t < arguments.length; t++) + e = e.concat(function(e, t) { + var r = "function" == typeof Symbol && e[Symbol.iterator]; + if (!r) + return e; + var n, i, o = r.call(e), s = []; + try { + for (; (void 0 === t || 0 < t--) && !(n = o.next()).done; ) + s.push(n.value) + } catch (e) { + i = { + error: e + } + } finally { + try { + n && !n.done && (r = o.return) && r.call(o) + } finally { + if (i) + throw i.error + } + } + return s + }(arguments[t])); + return e + } + function u(e) { + return null != e && "[object Object]" == Object.prototype.toString.call(e) + } + function l(e) { + return function(e) { + if ("string" == typeof e) { + for (var t = [], r = e.split("z"), n = 0; n < r.length; n++) { + var i = 64 ^ +parseInt(r[n], 25) + , i = String.fromCharCode(i); + t.push(i) + } + return t.join("") + } + }(e) + } + function f(e) { + var t = document.createElement("a"); + return t.href = e, + t + } + function p(e) { + var t = {}; + try { + var r = f(e).search; + if (!r) + return t; + (r = r.slice(1)).split("&").forEach(function(e) { + var r, n, i = e.split("="); + i.length && (r = i[0], + n = i[1]); + try { + t[r] = decodeURIComponent(void 0 === n ? "" : n) + } catch (e) { + t[r] = n + } + }) + } catch (e) {} + return t + } + function h(e) { + for (var t = 0, r = 0, n = (e += "").length, i = 0; i < n; i++) + (0x7fffffffffff < (t = 31 * t + e.charCodeAt(r++)) || t < -0x800000000000) && (t &= 0xffffffffffff); + return t < 0 && (t += 0x7ffffffffffff), + t + } + function d(e, t) { + try { + return e ? w.get(e, { + domain: t || document.domain + }) : w.get() + } catch (e) { + return "" + } + } + function g(e, t, r, n) { + try { + var i = n || document.domain + , o = +new Date + (r || 6048e5); + w.set(e, t, { + expires: new Date(o), + path: "/", + domain: i + }) + } catch (e) {} + } + function y() { + return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(e) { + var t = 16 * Math.random() | 0; + return ("x" === e ? t : 3 & t | 8).toString(16) + }) + } + function m() { + return (function e(t) { + return t ? (t ^ 16 * Math.random() >> t / 4).toString(10) : "10000000-1000-4000-8000-100000000000".replace(/[018]/g, e) + } + )().replace(/-/g, "").slice(0, 19) + } + var v, b, _, S, x = function() { + function e() { + this._hooks = {}, + this._cache = [], + this._hooksCache = {} + } + return e.prototype.on = function(e, t) { + e && t && "function" == typeof t && (this._hooks[e] || (this._hooks[e] = []), + this._hooks[e].push(t)) + } + , + e.prototype.once = function(e, t) { + var r = this; + e && t && "function" == typeof t && this.on(e, function n(i) { + t(i), + r.off(e, n) + }) + } + , + e.prototype.off = function(e, t) { + e && this._hooks[e] && this._hooks[e].length && (t ? -1 !== (t = this._hooks[e].indexOf(t)) && this._hooks[e].splice(t, 1) : this._hooks[e] = []) + } + , + e.prototype.emit = function(e, t, r) { + r ? e && (-1 !== this._cache.indexOf(r) ? this._emit(e, t) : (this._hooksCache.hasOwnProperty(r) || (this._hooksCache[r] = {}), + this._hooksCache[r].hasOwnProperty(e) || (this._hooksCache[r][e] = []), + this._hooksCache[r][e].push(t))) : this._emit(e, t) + } + , + e.prototype._emit = function(e, t) { + e && this._hooks[e] && this._hooks[e].length && c(this._hooks[e]).forEach(function(e) { + try { + e(t) + } catch (e) {} + }) + } + , + e.prototype.set = function(e) { + e && -1 === this._cache.indexOf(e) && this._cache.push(e) + } + , + e + }(), w = (_ = +Date.now() + Number(("" + Math.random()).slice(2, 8)), + (t = { + exports: {} + }).exports = function() { + function e() { + for (var e = 0, t = {}; e < arguments.length; e++) { + var r, n = arguments[e]; + for (r in n) + t[r] = n[r] + } + return t + } + function t(e) { + return e.replace(/(%[0-9A-Z]{2})+/g, decodeURIComponent) + } + return function r(n) { + function i() {} + function o(t, r, o) { + if ("undefined" != typeof document) { + "number" == typeof (o = e({ + path: "/" + }, i.defaults, o)).expires && (o.expires = new Date(+new Date + 864e5 * o.expires)), + o.expires = o.expires ? o.expires.toUTCString() : ""; + try { + var s = JSON.stringify(r); + /^[\{\[]/.test(s) && (r = s) + } catch (e) {} + r = n.write ? n.write(r, t) : encodeURIComponent(String(r)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g, decodeURIComponent), + t = encodeURIComponent(String(t)).replace(/%(23|24|26|2B|5E|60|7C)/g, decodeURIComponent).replace(/[\(\)]/g, escape); + var a, c = ""; + for (a in o) + o[a] && (c += "; " + a, + !0 !== o[a]) && (c += "=" + o[a].split(";")[0]); + return document.cookie = t + "=" + r + c + } + } + function s(e, r) { + if ("undefined" != typeof document) { + for (var i = {}, o = document.cookie ? document.cookie.split("; ") : [], s = 0; s < o.length; s++) { + var a = o[s].split("=") + , c = a.slice(1).join("="); + r || '"' !== c.charAt(0) || (c = c.slice(1, -1)); + try { + var u = t(a[0]) + , c = (n.read || n)(c, u) || t(c); + if (r) + try { + c = JSON.parse(c) + } catch (e) {} + if (i[u] = c, + e === u) + break + } catch (e) {} + } + return e ? i[e] : i + } + } + return i.set = o, + i.get = function(e) { + return s(e, !1) + } + , + i.getJSON = function(e) { + return s(e, !0) + } + , + i.remove = function(t, r) { + o(t, "", e(r, { + expires: -1 + })) + } + , + i.defaults = {}, + i.withConverter = r, + i + }(function() {}) + }(), + t.exports), k = function() { + function e() { + this.cache = {} + } + return e.prototype.setItem = function(e, t) { + this.cache[e] = t + } + , + e.prototype.getItem = function(e) { + return this.cache[e] + } + , + e.prototype.removeItem = function(e) { + this.cache[e] = void 0 + } + , + e.prototype.getCookie = function(e, t) { + return d(e, t) + } + , + e.prototype.setCookie = function(e, t, r, n) { + g(e, t, r, n) + } + , + e + }(), E = { + getItem: function(e) { + try { + var t = localStorage.getItem(e) + , r = t; + try { + t && "string" == typeof t && (r = JSON.parse(t)) + } catch (e) {} + return r || {} + } catch (e) {} + return {} + }, + setItem: function(e, t) { + try { + var r = "string" == typeof t ? t : JSON.stringify(t); + localStorage.setItem(e, r) + } catch (e) {} + }, + removeItem: function(e) { + try { + localStorage.removeItem(e) + } catch (e) {} + }, + getCookie: function(e, t) { + return d(e, t) + }, + setCookie: function(e, t, r, n) { + g(e, t, r, n) + }, + isSupportLS: function() { + try { + return localStorage.setItem("_ranger-test-key", "hi"), + localStorage.getItem("_ranger-test-key"), + localStorage.removeItem("_ranger-test-key"), + !0 + } catch (e) { + return !1 + } + }() + }, O = { + getItem: function(e) { + try { + var t = sessionStorage.getItem(e) + , r = t; + try { + t && "string" == typeof t && (r = JSON.parse(t)) + } catch (e) {} + return r || {} + } catch (e) {} + return {} + }, + setItem: function(e, t) { + try { + var r = "string" == typeof t ? t : JSON.stringify(t); + sessionStorage.setItem(e, r) + } catch (e) {} + }, + removeItem: function(e) { + try { + sessionStorage.removeItem(e) + } catch (e) {} + }, + getCookie: function(e, t) { + return d(e, t) + }, + setCookie: function(e, t, r, n) { + g(e, t, r, n) + }, + isSupportSession: function() { + try { + return sessionStorage.setItem("_ranger-test-key", "hi"), + sessionStorage.getItem("_ranger-test-key"), + sessionStorage.removeItem("_ranger-test-key"), + !0 + } catch (e) { + return !1 + } + }() + }, T = function() { + function e(e, t) { + this._storage = t && "session" === t ? O : !e && E.isSupportLS ? E : new k + } + return e.prototype.getItem = function(e) { + return this._storage.getItem(e) + } + , + e.prototype.setItem = function(e, t) { + this._storage.setItem(e, t) + } + , + e.prototype.getCookie = function(e, t) { + return this._storage.getCookie(e, t) + } + , + e.prototype.setCookie = function(e, t, r, n) { + this._storage.setCookie(e, t, r, n) + } + , + e.prototype.removeItem = function(e) { + this._storage.removeItem(e) + } + , + e + }(), C = function() { + function e(e, t, r) { + this.appid = e, + this.domain = t, + this.userAgent = window.navigator.userAgent, + this.appVersion = window.navigator.appVersion, + this.cookie_expire = r + } + return e.prototype.init = function() { + var e = window.navigator.userAgent + , t = window.navigator.language + , r = document.referrer + , n = r ? f(r).hostname : "" + , i = p(window.location.href) + , o = /Mobile|htc|mini|Android|iP(ad|od|hone)/.test(this.appVersion) ? "wap" : "web" + , i = (this.utm = function(e, t, r, n) { + var i = new T(!1) + , o = new T(!1,"session") + , s = e ? "_tea_utm_cache_" + e : "_tea_utm_cache" + , a = e ? "_$utm_from_url_" + e : "_$utm_from_url" + , c = {} + , u = ["tr_shareuser", "tr_admaster", "tr_param1", "tr_param2", "tr_param3", "tr_param4", "$utm_from_url"] + , l = { + ad_id: Number(t.ad_id) || void 0, + campaign_id: Number(t.campaign_id) || void 0, + creative_id: Number(t.creative_id) || void 0, + utm_source: t.utm_source, + utm_medium: t.utm_medium, + utm_campaign: t.utm_campaign, + utm_term: t.utm_term, + utm_content: t.utm_content, + tr_shareuser: t.tr_shareuser, + tr_admaster: t.tr_admaster, + tr_param1: t.tr_param1, + tr_param2: t.tr_param2, + tr_param3: t.tr_param3, + tr_param4: t.tr_param4 + }; + try { + var f, p, h = !1; + for (f in l) + l[f] && (-1 !== u.indexOf(f) ? (c.hasOwnProperty("tracer_data") || (c.tracer_data = {}), + c.tracer_data[f] = l[f]) : c[f] = l[f], + h = !0); + h ? (o.setItem(a, "1"), + i.setCookie(s, JSON.stringify(c), n, r)) : (p = i.getCookie(s, r)) && (c = JSON.parse(p)), + o.getItem(a) && (c.hasOwnProperty("tracer_data") || (c.tracer_data = {}), + c.tracer_data.$utm_from_url = 1) + } catch (e) { + return l + } + return c + }(this.appid, i, this.domain, this.cookie_expire), + this.browser()) + , s = this.os(); + return { + browser: i.browser, + browser_version: i.browser_version, + platform: o, + os_name: s.os_name, + os_version: s.os_version, + userAgent: e, + screen_width: window.screen && window.screen.width, + screen_height: window.screen && window.screen.height, + device_model: this.getDeviceModel(s.os_name), + language: t, + referrer: r, + referrer_host: n, + utm: this.utm, + latest_data: this.last(r, n) + } + } + , + e.prototype.last = function(e, t) { + var r = "" + , n = "" + , i = "" + , o = location.hostname + , s = !1; + return e && t && o !== t && (n = t, + s = !0, + (o = p(r = e)).keyword) && (i = o.keyword), + { + $latest_referrer: r, + $latest_referrer_host: n, + $latest_search_keyword: i, + isLast: s + } + } + , + e.prototype.browser = function() { + var e, t = "", r = "" + parseFloat(this.appVersion), n = this.userAgent; + return -1 !== n.indexOf("Edge") || -1 !== n.indexOf("Edg") ? (t = "Microsoft Edge", + r = -1 !== n.indexOf("Edge") ? (e = n.indexOf("Edge"), + n.substring(e + 5)) : (e = n.indexOf("Edg"), + n.substring(e + 4))) : -1 !== (e = n.indexOf("MSIE")) ? (t = "Microsoft Internet Explorer", + r = n.substring(e + 5)) : -1 !== (e = n.indexOf("Lark")) ? (t = "Lark", + r = n.substring(e + 5, e + 11)) : -1 !== (e = n.indexOf("MetaSr")) ? (t = "sougoubrowser", + r = n.substring(e + 7, e + 10)) : -1 !== n.indexOf("MQQBrowser") || -1 !== n.indexOf("QQBrowser") ? (t = "qqbrowser", + -1 !== n.indexOf("MQQBrowser") ? (e = n.indexOf("MQQBrowser"), + r = n.substring(e + 11, e + 15)) : -1 !== n.indexOf("QQBrowser") && (e = n.indexOf("QQBrowser"), + r = n.substring(e + 10, e + 17))) : -1 !== n.indexOf("Chrome") ? -1 !== (e = n.indexOf("MicroMessenger")) ? (t = "weixin", + r = n.substring(e + 15, e + 20)) : -1 !== (e = n.indexOf("360")) ? (t = "360browser", + r = n.substring(n.indexOf("Chrome") + 7)) : -1 !== n.indexOf("baidubrowser") || -1 !== n.indexOf("BIDUBrowser") ? (-1 !== n.indexOf("baidubrowser") ? (e = n.indexOf("baidubrowser"), + r = n.substring(e + 13, e + 16)) : -1 !== n.indexOf("BIDUBrowser") && (e = n.indexOf("BIDUBrowser"), + r = n.substring(e + 12, e + 15)), + t = "baidubrowser") : -1 !== (e = n.indexOf("xiaomi")) ? r = -1 !== n.indexOf("openlanguagexiaomi") ? (t = "openlanguage xiaomi", + n.substring(e + 7, e + 13)) : (t = "xiaomi", + n.substring(e - 7, e - 1)) : -1 !== (e = n.indexOf("TTWebView")) ? (t = "TTWebView", + r = n.substring(e + 10, e + 23)) : -1 === (e = n.indexOf("Chrome")) && -1 === (e = n.indexOf("Chrome")) || (t = "Chrome", + r = n.substring(e + 7)) : -1 !== n.indexOf("Safari") ? -1 !== (e = n.indexOf("QQ")) ? (t = "qqbrowser", + r = n.substring(e + 10, e + 16)) : -1 !== (e = n.indexOf("Safari")) && (t = "Safari", + r = n.substring(e + 7), + -1 !== (e = n.indexOf("Version"))) && (r = n.substring(e + 8)) : -1 !== (e = n.indexOf("Firefox")) ? (t = "Firefox", + r = n.substring(e + 8)) : -1 !== (e = n.indexOf("MicroMessenger")) ? (t = "weixin", + r = n.substring(e + 15, e + 20)) : -1 !== (e = n.indexOf("QQ")) && (t = "qqbrowser", + r = n.substring(e + 3, e + 8)), + { + browser: t, + browser_version: r = -1 !== (n = (r = -1 !== (n = (r = -1 !== (n = r.indexOf(";")) ? r.substring(0, n) : r).indexOf(" ")) ? r.substring(0, n) : r).indexOf(")")) ? r.substring(0, n) : r + } + } + , + e.prototype.os = function() { + for (var e = "", t = "", r = [{ + s: "Windows 10", + r: /(Windows 10.0|Windows NT 10.0|Windows NT 10.1)/ + }, { + s: "Windows 8.1", + r: /(Windows 8.1|Windows NT 6.3)/ + }, { + s: "Windows 8", + r: /(Windows 8|Windows NT 6.2)/ + }, { + s: "Windows 7", + r: /(Windows 7|Windows NT 6.1)/ + }, { + s: "Android", + r: /Android/ + }, { + s: "iOS", + r: /(iPhone|iPad|iPod)/ + }, { + s: "Mac OS X", + r: /Mac OS X/ + }, { + s: "Mac OS", + r: /(MacPPC|MacIntel|Mac_PowerPC|Macintosh)/ + }, { + s: "chromeOS", + r: /CrOS/ + }, { + s: "Linux", + r: /(Linux|X11)/ + }, { + s: "Sun OS", + r: /SunOS/ + }], n = 0; n < r.length; n++) { + var i = r[n]; + if (i.r.test(this.userAgent)) { + "Mac OS X" === (e = i.s) && this.isNewIpad() && (e = "iOS"); + break + } + } + function o(e, t) { + return (e = e.exec(t)) && e[1] ? e[1] : "" + } + function s(e, t) { + return (e = RegExp("(?:^|[^A-Z0-9-_]|[^A-Z0-9-]_|sprd-)(?:" + e + ")", "i").exec(t)) ? e.slice(1)[0] : "" + } + switch (/Windows/.test(e) && (t = o(/Windows (.*)/, e), + e = "windows"), + e) { + case "Mac OS X": + t = s("Mac[ +]OS[ +]X(?:[ /](?:Version )?(\\d+(?:[_\\.]\\d+)+))?", this.userAgent), + e = "mac"; + break; + case "Android": + t = o(/Android ([\.\_\d]+)/, a = this.userAgent) || o(/Android\/([\.\_\d]+)/, a), + e = "android"; + break; + case "iOS": + t = this.isNewIpad() ? s("Mac[ +]OS[ +]X(?:[ /](?:Version )?(\\d+(?:[_\\.]\\d+)+))?", this.userAgent) : (t = /OS (\d+)_(\d+)_?(\d+)?/.exec(this.appVersion)) ? t[1] + "." + t[2] + "." + (0 | t[3]) : "", + e = "ios"; + break; + case "chromeOS": + var a = this.userAgent.indexOf("x86_64") + , t = this.userAgent.substring(a + 7, a + 16) + } + return { + os_name: e, + os_version: t + } + } + , + e.prototype.getDeviceModel = function(e) { + var t, r, n = ""; + try { + "android" === e ? navigator.userAgent.split(";").forEach(function(e) { + -1 < e.indexOf("Build/") && (n = e.slice(0, e.indexOf("Build/"))) + }) : "ios" !== e && "mac" !== e && "windows" !== e || (n = this.isNewIpad() ? "iPad" : (r = (t = navigator.userAgent.replace("Mozilla/5.0 (", "")).indexOf(";"), + t.slice(0, r))) + } catch (e) {} + return n.trim() + } + , + e.prototype.isNewIpad = function() { + return void 0 !== this.userAgent && "MacIntel" === navigator.platform && "number" == typeof navigator.maxTouchPoints && 1 < navigator.maxTouchPoints + } + , + e + }(), D = { + cn: "1fz22z22z1nz21z4mz4bz4bz22z1mz19z1jz1mz1ez4az1az22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k", + va: "1fz22z22z1nz21z4mz4bz4bz22z1mz19z1jz1mz1ez4az1gz22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k", + sg: "1fz22z22z1nz21z4mz4bz4bz22z1mz19z1jz1mz1ez4az22z1mz19z21z1lz21z21z1bz1iz4az1az1mz1k" + }, j = { + cn: "1fz22z22z1nz21z4mz4bz4bz1kz1az21z4az28z1gz1hz1gz1cz18z1nz1gz4az1az1mz1k", + sg: "1fz22z22z1nz21z4mz4bz4bz21z1ez18z1jz1gz49z1kz1az21z4az19z27z22z1cz1mz24z1cz20z21z1cz18z4az1az1mz1k", + va: "1fz22z22z1nz21z4mz4bz4bz1kz18z1jz1gz24z18z49z1kz1az21z4az19z27z22z1cz1mz24z1cz20z21z1cz18z4az1az1mz1k" + }, I = "5.1.11", P = function() { + function e(e, t) { + this.collector = e, + this.config = t, + this.eventNameWhiteList = ["__bav_page", "__bav_beat", "__bav_page_statistics", "__bav_click", "__bav_page_exposure"], + this.paramsNameWhiteList = ["$inactive", "$inline", "$target_uuid_list", "$source_uuid", "$is_spider", "$source_id", "$is_first_time", "_staging_flag"], + this.regStr = RegExp("^[a-zA-Z0-9][a-z0-9A-Z_.-]{1,255}$") + } + return e.prototype.checkVerify = function(e) { + var t, r, n, i = this; + return !!(e && e.length && (e = e[0]) && (t = e.events, + r = e.header, + t) && t.length) && (n = !0, + t.forEach(function(e) { + e ? (i.checkEventName(e.event) || (n = !1, + e.checkEvent = "\u4E8B\u4EF6\u540D\u4E0D\u80FD\u4EE5 $ or __\u5F00\u5934"), + i.checkEventParams(e.params) || (n = !1, + e.checkParams = "\u5C5E\u6027\u540D\u4E0D\u80FD\u4EE5 $ or __\u5F00\u5934")) : (n = !1, + e.checkEvent = "\u4E8B\u4EF6\u5F02\u5E38") + }), + n = !!this.checkEventParams(r) && n) + } + , + e.prototype.checkEventName = function(e) { + return !!e && this.calculate(e, "event") + } + , + e.prototype.checkEventParams = function(e) { + var t = e; + if ("string" == typeof e && (t = JSON.parse(t)), + Object.keys(t).length) + for (var r in t) + return !(!this.calculate(r, "params") || "string" == typeof t[r] && 1024 < t[r].length && (console.warn("params: " + r + " can not over 1024 byte, please check;"), + 1)); + return !0 + } + , + e.prototype.calculate = function(e, t) { + return -1 !== ("event" === t ? this.eventNameWhiteList : this.paramsNameWhiteList).indexOf(e) || !RegExp("^\\$").test(e) && !RegExp("^__").test(e) || (console.warn(("event" === t ? "event" : "params") + " name: " + e + " can not start with $ or __, pleace check;"), + !1) + } + , + e + }(), A = ((v = J = J || {}).Init = "init", + v.Config = "config", + v.Start = "start", + v.Ready = "ready", + v.UnReady = "un-ready", + v.TokenComplete = "token-complete", + v.TokenStorage = "token-storage", + v.TokenFetch = "token-fetch", + v.TokenError = "token-error", + v.ConfigUuid = "config-uuid", + v.ConfigWebId = "config-webid", + v.ConfigDomain = "config-domain", + v.CustomWebId = "custom-webid", + v.TokenChange = "token-change", + v.TokenReset = "token-reset", + v.ConfigTransform = "config-transform", + v.EnvTransform = "env-transform", + v.SessionReset = "session-reset", + v.SessionResetTime = "session-reset-time", + v.SetSessionId = "set-session-id", + v.Event = "event", + v.Events = "events", + v.EventNow = "event-now", + v.CleanEvents = "clean-events", + v.BeconEvent = "becon-event", + v.SubmitBefore = "submit-before", + v.SubmitScuess = "submit-scuess", + v.SubmitAfter = "submit-after", + v.SubmitError = "submit-error", + v.SubmitVerify = "submit-verify", + v.Stay = "stay", + v.ResetStay = "reset-stay", + v.StayReady = "stay-ready", + v.SetStay = "set-stay", + v.RouteChange = "route-change", + v.RouteReady = "route-ready", + v.Ab = "ab", + v.AbVar = "ab-var", + v.AbAllVars = "ab-all-vars", + v.AbConfig = "ab-config", + v.AbExternalVersion = "ab-external-version", + v.AbVersionChangeOn = "ab-version-change-on", + v.AbVersionChangeOff = "ab-version-change-off", + v.AbOpenLayer = "ab-open-layer", + v.AbCloseLayer = "ab-close-layer", + v.AbReady = "ab-ready", + v.AbComplete = "ab-complete", + v.AbTimeout = "ab-timeout", + v.Profile = "profile", + v.ProfileSet = "profile-set", + v.ProfileSetOnce = "profile-set-once", + v.ProfileUnset = "profile-unset", + v.ProfileIncrement = "profile-increment", + v.ProfileAppend = "profile-append", + v.ProfileClear = "profile-clear", + v.Autotrack = "autotrack", + v.AutotrackReady = "autotrack-ready", + v.CepReady = "cep-ready", + v.TracerReady = "tracer-ready", + v.sessionRecord = "session-record", + v.SessionRecordStart = "session-record-start", + v.SessionRecordPause = "session-record-pause", + v.SessionRecordEnd = "session-record-end", + v.SessionRecordReport = "session-record-report", + v.DestoryInstance = "destory-instance", + v.VisualCollectReady = "visual-collect-ready", + v.VisualApiReady = "visual-api-ready", + v.VisualApiUpdate = "visual-api-update", + (b = S = S || {}).DEBUGGER_MESSAGE = "debugger-message", + b.DEBUGGER_MESSAGE_SDK = "debugger-message-sdk", + b.DEBUGGER_MESSAGE_FETCH = "debugger-message-fetch", + b.DEBUGGER_MESSAGE_FETCH_RESULT = "debugger-message-fetch-result", + b.DEBUGGER_MESSAGE_EVENT = "debugger-message-event", + b.DEVTOOL_WEB_READY = "devtool-web-ready", + J), R = void 0, t = (new Date).getTimezoneOffset(), z = parseInt("" + -t / 60, 10), B = 60 * t, U = function() { + function e(e, t) { + this.is_first_time = !0, + this.configPersist = !1, + this.initConfig = t, + this.collect = e; + var r = new C(t.app_id,t.cookie_domain || "",t.cookie_expire || 7776e6).init() + , e = (this.eventCheck = new P(e,t), + "__tea_cache_first_" + t.app_id) + , t = (this.configKey = "__tea_cache_config_" + t.app_id, + this.sessionStorage = new T(!1,"session"), + this.localStorage = new T(!1,"local"), + t.configPersist && (this.configPersist = !0, + this.storage = 1 === t.configPersist ? this.sessionStorage : this.localStorage), + this.localStorage.getItem(e)); + t && 1 == t ? this.is_first_time = !1 : (this.is_first_time = !0, + this.localStorage.setItem(e, "1")), + this.envInfo = { + user: { + user_unique_id: R, + user_type: R, + user_id: R, + user_is_auth: R, + user_is_login: R, + device_id: R, + web_id: R, + ip_addr_id: R, + user_unique_id_type: R + }, + header: { + app_id: R, + app_name: R, + app_install_id: R, + install_id: R, + app_package: R, + app_channel: R, + app_version: R, + ab_version: R, + os_name: r.os_name, + os_version: r.os_version, + device_model: r.device_model, + ab_client: R, + traffic_type: R, + client_ip: R, + device_brand: R, + os_api: R, + access: R, + language: r.language, + region: R, + app_language: R, + app_region: R, + creative_id: r.utm.creative_id, + ad_id: r.utm.ad_id, + campaign_id: r.utm.campaign_id, + log_type: R, + rnd: R, + platform: r.platform, + sdk_version: I, + sdk_lib: "js", + province: R, + city: R, + timezone: z, + tz_offset: B, + tz_name: R, + sim_region: R, + carrier: R, + resolution: r.screen_width + "x" + r.screen_height, + browser: r.browser, + browser_version: r.browser_version, + referrer: r.referrer, + referrer_host: r.referrer_host, + width: r.screen_width, + height: r.screen_height, + screen_width: r.screen_width, + screen_height: r.screen_height, + utm_term: r.utm.utm_term, + utm_content: r.utm.utm_content, + utm_source: r.utm.utm_source, + utm_medium: r.utm.utm_medium, + utm_campaign: r.utm.utm_campaign, + tracer_data: JSON.stringify(r.utm.tracer_data), + custom: {}, + wechat_unionid: R, + wechat_openid: R + } + }, + this.ab_version = "", + this.evtParams = {}, + this.reportErrorCallback = function() {} + , + this.isLast = !1, + this.setCustom(r), + this.initDomain(), + this.initABData() + } + return e.prototype.initDomain = function() { + var e = this.initConfig.channel_domain; + e ? this.domain = e : (e = this.initConfig.channel, + this.domain = l(j[e])) + } + , + e.prototype.setDomain = function(e) { + this.domain = e + } + , + e.prototype.getDomain = function() { + return this.domain + } + , + e.prototype.initABData = function() { + var e, t = "__tea_sdk_ab_version_" + this.initConfig.app_id, r = null; + r = this.initConfig.ab_cross ? (e = this.localStorage.getCookie(t, this.initConfig.ab_cookie_domain)) ? JSON.parse(e) : null : this.localStorage.getItem(t), + this.setAbCache(r) + } + , + e.prototype.setAbCache = function(e) { + this.ab_cache = e + } + , + e.prototype.getAbCache = function() { + return this.ab_cache + } + , + e.prototype.setAbVersion = function(e) { + this.ab_version = e + } + , + e.prototype.getAbVersion = function() { + return this.ab_version + } + , + e.prototype.clearAbCache = function() { + this.ab_version = "", + this.ab_cache = {} + } + , + e.prototype.getUrl = function(e) { + var t = ""; + switch (e) { + case "event": + t = "/list"; + break; + case "webid": + t = "/webid"; + break; + case "tobid": + t = "/tobid" + } + return e = "", + this.initConfig.caller && (e = "?sdk_version=5.1.11&sdk_name=web&app_id=" + this.initConfig.app_id + "&caller=" + this.initConfig.caller), + "" + this.getDomain() + t + e + } + , + e.prototype.setCustom = function(e) { + if (e && e.latest_data && e.latest_data.isLast) + for (var t in delete e.latest_data.isLast, + this.isLast = !0, + e.latest_data) + this.envInfo.header.custom[t] = e.latest_data[t] + } + , + e.prototype.set = function(e) { + var t = this; + Object.keys(e).forEach(function(r) { + var n, i, o; + void 0 !== e[r] && null !== e[r] || t.delete(r); + try { + t.eventCheck.calculate(r, "config") + } catch (e) {} + "traffic_type" === r && t.isLast && (t.envInfo.header.custom.$latest_traffic_source_type = e[r]), + "evtParams" === r ? t.evtParams = a({}, t.evtParams || {}, e.evtParams || {}) : "_staging_flag" === r ? t.evtParams = a({}, t.evtParams || {}, { + _staging_flag: e._staging_flag + }) : "reportErrorCallback" === r && "function" == typeof e[r] ? t.reportErrorCallback = e[r] : (o = i = "", + -1 < r.indexOf(".") && (i = (n = r.split("."))[0], + o = n[1]), + i ? "user" === i || "header" === i ? t.envInfo[i][o] = e[r] : t.envInfo.header.custom[o] = e[r] : Object.hasOwnProperty.call(t.envInfo.user, r) ? -1 < ["user_type", "ip_addr_id"].indexOf(r) ? t.envInfo.user[r] = e[r] && Number(e[r]) : -1 < ["user_id", "web_id", "user_unique_id", "user_unique_id_type"].indexOf(r) ? t.envInfo.user[r] = e[r] && String(e[r]) : -1 < ["user_is_auth", "user_is_login"].indexOf(r) ? t.envInfo.user[r] = !!e[r] : "device_id" === r && (t.envInfo.user[r] = e[r]) : Object.hasOwnProperty.call(t.envInfo.header, r) ? t.envInfo.header[r] = e[r] : t.envInfo.header.custom[r] = e[r]) + }) + } + , + e.prototype.get = function(e) { + try { + return e ? "evtParams" === e ? this.evtParams : "reportErrorCallback" === e ? this[e] : Object.hasOwnProperty.call(this.envInfo.user, e) ? this.envInfo.user[e] : Object.hasOwnProperty.call(this.envInfo.header, e) ? this.envInfo.header[e] : JSON.parse(JSON.stringify(this.envInfo[e])) : JSON.parse(JSON.stringify(this.envInfo)) + } catch (e) { + console.log("get config stringify error "), + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + } + , + e.prototype.setStore = function(e) { + try { + var t, r; + this.configPersist && (t = this.storage.getItem(this.configKey) || {}) && Object.keys(e).length && (r = Object.assign(e, t), + this.storage.setItem(this.configKey, r)) + } catch (e) { + console.log("setStore error"), + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + } + , + e.prototype.getStore = function() { + try { + var e; + return this.configPersist && (e = this.storage.getItem(this.configKey) || {}, + Object.keys(e).length) ? e : null + } catch (e) { + return this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }), + null + } + } + , + e.prototype.delete = function(e) { + try { + var t; + this.configPersist && (t = this.storage.getItem(this.configKey) || {}) && Object.hasOwnProperty.call(t, e) && (delete t[e], + this.storage.setItem(this.configKey, t)) + } catch (e) { + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }), + console.log("delete error") + } + } + , + e + }(), M = function() { + function e(e, t) { + this.isLog = t || !1, + this.name = e || "" + } + return e.prototype.info = function(e) { + this.isLog && console.log("%c %s", "color: yellow; background-color: black;", "[AppLog WEB SDK] [instance: " + this.name + "] " + e) + } + , + e.prototype.warn = function(e) { + this.isLog && console.warn("[AppLog WEB SDK] [instance: " + this.name + "] " + e) + } + , + e.prototype.error = function(e) { + this.isLog && console.error("[AppLog WEB SDK] [instance: " + this.name + "] " + e) + } + , + e.prototype.throw = function(e) { + throw this.error(this.name), + Error(e) + } + , + e + }(), G = function() { + function e() { + this.spiderBot = ["Baiduspider", "googlebot", "360Spider", "haosouspider", "YoudaoBot", "Sogou News Spider", "Yisouspider", "Googlebot", "Headless", "Applebot", "Bingbot", "PetalBot"] + } + return e.prototype.checkSpider = function(e) { + var t, r; + return !!e.enable_spider && (!(t = window.navigator.userAgent) || (r = !1, + this.spiderBot.forEach(function(e) { + -1 !== t.indexOf(e) && (r = !0) + }), + r)) + } + , + e + }(), F = function() { + function e(e, t) { + this.collect = e, + this.native = t + } + var t = e.prototype; + return t.bridgeInject = function() { + try { + return !!this.native && (AppLogBridge ? (console.log("AppLogBridge is injected"), + !0) : (console.log("AppLogBridge is not inject"), + !1)) + } catch (e) { + return console.log("AppLogBridge is not inject"), + !1 + } + } + , + t.bridgeReady = function() { + var e = this; + return new Promise(function(t, r) { + try { + e.bridgeInject() ? AppLogBridge.hasStarted(function(e) { + console.log("AppLogBridge is started? : " + e), + e ? t(!0) : r(!1) + }) : r(!1) + } catch (e) { + console.log("AppLogBridge, error:" + JSON.stringify(e.stack)), + r(!1) + } + } + ) + } + , + t.setNativeAppId = function(e) { + try { + AppLogBridge.setNativeAppId(JSON.stringify(e)), + console.log("change bridge appid, event report with appid: " + e) + } catch (e) { + console.error("setNativeAppId error") + } + } + , + t.setConfig = function(e) { + var t = this; + try { + Object.keys(e).forEach(function(r) { + "user_unique_id" === r ? t.setUserUniqueId(e[r]) : e[r] ? t.addHeaderInfo(r, e[r]) : t.removeHeaderInfo(r) + }) + } catch (e) { + console.error("setConfig error") + } + } + , + t.setUserUniqueId = function(e) { + try { + AppLogBridge.setUserUniqueId(e) + } catch (e) { + console.error("setUserUniqueId error") + } + } + , + t.addHeaderInfo = function(e, t) { + try { + AppLogBridge.addHeaderInfo(e, t) + } catch (e) { + console.error("addHeaderInfo error") + } + } + , + t.setHeaderInfo = function(e) { + try { + AppLogBridge.setHeaderInfo(JSON.stringify(e)) + } catch (e) { + console.error("setHeaderInfo error") + } + } + , + t.removeHeaderInfo = function(e) { + try { + AppLogBridge.removeHeaderInfo(e) + } catch (e) { + console.error("removeHeaderInfo error") + } + } + , + t.reportPv = function(e) { + this.onEventV3("predefine_pageview", e) + } + , + t.onEventV3 = function(e, t) { + try { + AppLogBridge.onEventV3(e, t), + this.collect.emit(DebuggerMesssge.DEBUGGER_MESSAGE, { + type: DebuggerMesssge.DEBUGGER_MESSAGE_EVENT, + info: "bridge\u57CB\u70B9\u4E0A\u62A5", + time: Date.now(), + data: [{ + events: [{ + event: e, + params: t + }] + }], + code: 200, + status: "success" + }) + } catch (e) { + console.error("onEventV3 error") + } + } + , + t.profileSet = function(e) { + try { + AppLogBridge.profileSet(e) + } catch (e) { + console.error("profileSet error") + } + } + , + t.profileSetOnce = function(e) { + try { + AppLogBridge.profileSetOnce(e) + } catch (e) { + console.error("profileSetOnce error") + } + } + , + t.profileIncrement = function(e) { + try { + AppLogBridge.profileIncrement(e) + } catch (e) { + console.error("profileIncrement error") + } + } + , + t.profileUnset = function(e) { + try { + AppLogBridge.profileUnset(e) + } catch (e) { + console.error("profileUnset error") + } + } + , + t.profileAppend = function(e) { + try { + AppLogBridge.profileAppend(e) + } catch (e) { + console.error("profileAppend error") + } + } + , + e + }(), N = function() { + function e() {} + return e.prototype.apply = function(e, t) { + var r = this; + this.collect = e, + this.storage = new T(!1,"session"), + this.sessionKey = "__tea_session_id_" + t.app_id, + this.expireTime = t.expireTime || 18e5, + this.disableSession = t.disable_session, + this.disableSessionTimeCheck = t.disable_session_check, + this.disableSession || (this.setSessionId(), + this.collect.on(A.SessionReset, function(e) { + r.resetSessionId(e) + }), + this.collect.on(A.SessionResetTime, function() { + r.updateSessionIdTime() + })) + } + , + e.prototype.updateSessionIdTime = function() { + var e, t = this.storage.getItem(this.sessionKey); + t && t.sessionId && (e = t.timestamp, + Date.now() - e > this.expireTime ? t = { + sessionId: y(), + timestamp: Date.now() + } : t.timestamp = Date.now(), + this.storage.setItem(this.sessionKey, t), + this.resetExpTime()) + } + , + e.prototype.setSessionId = function() { + var e = this + , t = this.storage.getItem(this.sessionKey); + t && t.sessionId ? t.timestamp = Date.now() : t = { + sessionId: y(), + timestamp: Date.now() + }, + this.storage.setItem(this.sessionKey, t), + this.disableSessionTimeCheck || (this.sessionExp = setInterval(function() { + e.checkEXp() + }, this.expireTime)) + } + , + e.prototype.getSessionId = function() { + var e = this.storage.getItem(this.sessionKey); + return !this.disableSession && e && e.sessionId ? e.sessionId : "" + } + , + e.prototype.resetExpTime = function() { + var e = this; + this.sessionExp && (clearInterval(this.sessionExp), + this.sessionExp = setInterval(function() { + e.checkEXp() + }, this.expireTime)) + } + , + e.prototype.resetSessionId = function(e) { + e = { + sessionId: e || y(), + timestamp: Date.now() + }, + this.storage.setItem(this.sessionKey, e) + } + , + e.prototype.checkEXp = function() { + var e = this.storage.getItem(this.sessionKey); + e && e.sessionId && Date.now() - e.timestamp + 30 >= this.expireTime && (e = { + sessionId: y(), + timestamp: Date.now() + }, + this.storage.setItem(this.sessionKey, e)) + } + , + e + }(), H = function() { + function e() { + this.eventLimit = 50, + this.enable_ttwebid = !1, + this.eventCache = [], + this.beconEventCache = [] + } + return e.prototype.apply = function(e, t) { + var r = this + , n = (this.collect = e, + this.config = t, + this.configManager = e.configManager, + this.eventCheck = new P(e,t), + this.cacheStorgae = new T(!0), + this.localStorage = new T(!1), + this.maxReport = t.max_report || 10, + this.reportTime = t.reportTime || t.report_time || 30, + this.timeout = t.timeout || 1e5, + this.enable_ttwebid = t.enable_ttwebid, + this.reportUrl = t.report_url || this.configManager.getUrl("event"), + this.eventKey = "__tea_cache_events_" + this.configManager.get("app_id"), + this.beconKey = "__tea_cache_events_becon_" + this.configManager.get("app_id"), + this.abKey = "__tea_sdk_ab_version_" + this.configManager.get("app_id"), + this.refer_key = "__tea_cache_refer_" + this.configManager.get("app_id"), + this.pageId = y(), + this.collect.on(A.Ready, function() { + r.reportAll(!1) + }), + this.collect.on(A.ConfigDomain, function() { + r.reportUrl = r.configManager.getUrl("event") + }), + this.collect.on(A.Event, function(e) { + r.event(e) + }), + this.collect.on(A.BeconEvent, function(e) { + r.beconEvent(e) + }), + this.collect.on(A.CleanEvents, function() { + r.reportAll(!1) + }), + this.linster()); + this.collect.on(A.DestoryInstance, function() { + n && n() + }) + } + , + e.prototype.linster = function() { + function e() { + n.reportAll(!0) + } + function t() { + "hidden" === document.visibilityState && n.reportAll(!0) + } + var r, n = this; + return window.addEventListener("unload", e, !1), + r = e, + navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/) ? window.addEventListener("pagehide", r, !1) : window.addEventListener("beforeunload", r, !1), + document.addEventListener("visibilitychange", t, !1), + function() { + window.removeEventListener("unload", e), + window.removeEventListener("pagehide", e, !1), + window.removeEventListener("beforeunload", e, !1), + document.removeEventListener("visibilitychange", t, !1) + } + } + , + e.prototype.reportAll = function(e) { + this.report(e), + this.reportBecon() + } + , + e.prototype.event = function(e) { + var t = this; + try { + var r, n = c(e, this.cacheStorgae.getItem(this.eventKey) || []); + this.cacheStorgae.setItem(this.eventKey, n), + this.reportTimeout && clearTimeout(this.reportTimeout), + n.length >= this.maxReport ? this.report(!1) : (r = this.reportTime, + this.reportTimeout = setTimeout(function() { + t.report(!1), + t.reportTimeout = null + }, r)) + } catch (e) { + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + } + , + e.prototype.beconEvent = function(e) { + e = c(e, this.cacheStorgae.getItem(this.beconKey) || []), + this.cacheStorgae.setItem(this.beconKey, e), + this.collect.destroy || this.collect.sdkStop || this.collect.tokenManager.getReady() && this.collect.sdkReady && (this.cacheStorgae.removeItem(this.beconKey), + this.send(this.split(this.merge(e)), !0)) + } + , + e.prototype.reportBecon = function() { + var e; + !this.collect.destroy && !this.collect.sdkStop && this.collect.tokenManager.getReady() && this.collect.sdkReady && (e = this.cacheStorgae.getItem(this.beconKey) || []) && e.length && (this.cacheStorgae.removeItem(this.beconKey), + this.send(this.split(this.merge(e)), !0)) + } + , + e.prototype.report = function(e) { + var t; + !this.collect.destroy && !this.collect.sdkStop && this.collect.tokenManager.getReady() && this.collect.sdkReady && (t = this.cacheStorgae.getItem(this.eventKey) || []).length && (this.cacheStorgae.removeItem(this.eventKey), + this.sliceEvent(t, e)) + } + , + e.prototype.sliceEvent = function(e, t) { + if (e.length > this.eventLimit) + for (var r = 0; r < e.length; r += this.eventLimit) { + var n = e.slice(r, r + this.eventLimit) + , i = this.split(this.merge(n)); + this.send(i, t) + } + else + i = this.split(this.merge(e)), + this.send(i, t) + } + , + e.prototype.handleRefer = function() { + var e, t = ""; + try { + t = (this.config.spa || this.config.autotrack) && (e = this.localStorage.getItem(this.refer_key) || {}).routeChange ? e.refer_key : this.configManager.get("referrer") + } catch (e) { + t = document.referrer + } + return t + } + , + e.prototype.merge = function(e, t) { + var r = this + , n = this.configManager.get() + , i = n.header + , o = n.user + , s = (this.config.enable_pageid && (i.custom.page_id = this.pageId), + i.referrer = this.handleRefer(), + i.custom = JSON.stringify(i.custom), + this.configManager.get("evtParams")) + , c = this.configManager.get("user_unique_id_type") + , n = e.map(function(e) { + try { + Object.keys(s).length && !t && (e.params = a({}, s, e.params)), + c && (e.params.$user_unique_id_type = c); + var n = r.configManager.getAbCache() + , i = o[r.config.ab_user_mode] || o.user_unique_id; + return n && n.uuid && n.uuid === i && r.configManager.getAbVersion() && (e.ab_sdk_version = r.configManager.getAbVersion()), + e.session_id = r.collect.sessionManager.getSessionId(), + e.params = JSON.stringify(e.params), + e + } catch (t) { + return r.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: t.message + }), + e + } + }) + , e = JSON.parse(JSON.stringify({ + events: n, + user: o, + header: i + })) + , n = (e.local_time = Math.floor(Date.now() / 1e3), + e.user_unique_type = this.config.enable_ttwebid ? this.config.user_unique_type : void 0, + e.verbose = 1, + []); + return n.push(e), + n + } + , + e.prototype.split = function(e) { + return e.map(function(e) { + var t = []; + return t.push(e), + t + }) + } + , + e.prototype.send = function(e, t) { + var r = this; + e.length && !this.config.disable_track_event && e.forEach(function(e) { + try { + var n, i = JSON.parse(JSON.stringify(e)), o = (!r.config.filter || (i = r.config.filter(i)) || console.warn("filter must return data !!"), + r.collect.eventFilter && i && ((i = r.collect.eventFilter(i)) || console.warn("filterEvent api must return data !!")), + i || e), s = JSON.parse(JSON.stringify(o)); + r.eventCheck.checkVerify(s), + o.length && (n = !0, + o.forEach(function(e) { + e.events.length || (n = !1) + }), + n && (r.collect.emit(A.SubmitBefore, o), + r.collect.requestManager.useRequest({ + url: r.reportUrl, + data: o, + success: function(e, t) { + e && 0 !== e.e ? (r.collect.emit(A.SubmitError, { + type: "f_data", + eventData: t, + errorCode: e.e, + response: e + }), + r.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_EVENT, + info: "\u57CB\u70B9\u4E0A\u62A5\u5931\u8D25", + time: Date.now(), + data: s, + code: e.e, + failType: "\u6570\u636E\u5F02\u5E38\u5931\u8D25", + status: "fail" + })) : (r.collect.emit(A.SubmitScuess, { + eventData: t, + res: e + }), + r.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_EVENT, + info: "\u57CB\u70B9\u4E0A\u62A5\u6210\u529F", + time: Date.now(), + data: s, + code: 200, + status: "success" + })) + }, + fail: function(e, t) { + r.configManager.get("reportErrorCallback")(e, t), + r.collect.emit(A.SubmitError, { + type: "f_net", + eventData: e, + errorCode: t + }), + r.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_EVENT, + info: "\u57CB\u70B9\u4E0A\u62A5\u7F51\u7EDC\u5F02\u5E38", + time: Date.now(), + data: s, + code: t, + failType: "\u7F51\u7EDC\u5F02\u5E38\u5931\u8D25", + status: "fail" + }) + }, + timeout: r.timeout, + useBeacon: t, + withCredentials: r.enable_ttwebid + }), + r.collect.emit(A.SubmitAfter, o))) + } catch (e) { + console.warn("something error, " + JSON.stringify(e.stack)), + r.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + }) + } + , + e + }(), L = function() { + function e() { + this.cacheToken = {}, + this.enableCookie = !1, + this.enable_ttwebid = !1, + this.enableCustomWebid = !1 + } + return e.prototype.apply = function(e, t) { + var r = this; + this.collect = e, + this.config = t, + this.configManager = this.collect.configManager, + this.storage = new T(!1), + this.tokenKey = "__tea_cache_tokens_" + t.app_id, + this.enable_ttwebid = t.enable_ttwebid, + this.enableCustomWebid = t.enable_custom_webid, + this.collect.on(A.ConfigUuid, function(e) { + r.setUuid(e) + }), + this.collect.on(A.ConfigWebId, function(e) { + r.setWebId(e) + }), + this.enableCookie = t.cross_subdomain, + this.expiresTime = t.cookie_expire || 6048e5, + this.cookieDomain = t.cookie_domain || "", + this.checkStorage() + } + , + e.prototype.checkStorage = function() { + var e, t = this; + this.enableCookie ? (e = this.storage.getCookie(this.tokenKey, this.cookieDomain), + this.cacheToken = e && "string" == typeof e ? JSON.parse(e) : {}) : this.cacheToken = this.storage.getItem(this.tokenKey) || {}, + this.tokenType = this.cacheToken && this.cacheToken._type_ ? this.cacheToken._type_ : "default", + "custom" !== this.tokenType || this.enableCustomWebid ? this.enableCustomWebid ? this.collect.on(A.CustomWebId, function() { + t.tokenReady = !0, + t.collect.emit(A.TokenComplete) + }) : this.checkEnv() || (this.enable_ttwebid ? this.completeTtWid(this.cacheToken) : this.check()) : this.remoteWebid() + } + , + e.prototype.check = function() { + this.cacheToken && this.cacheToken.web_id ? this.complete(this.cacheToken) : this.config.disable_webid ? this.complete({ + web_id: m(), + user_unique_id: this.configManager.get("user_unique_id") || m() + }) : this.remoteWebid() + } + , + e.prototype.checkEnv = function() { + var e = window.navigator.userAgent; + return (-1 !== e.indexOf("miniProgram") || -1 !== e.indexOf("MiniProgram")) && !(!(e = p(window.location.href)) || !e.Web_ID || (this.complete({ + web_id: "" + e.Web_ID, + user_unique_id: this.configManager.get("user_unique_id") || "" + e.Web_ID + }), + 0)) + } + , + e.prototype.remoteWebid = function() { + var e = this + , t = this.configManager.getUrl("webid") + , r = { + app_key: this.config.app_key, + app_id: this.config.app_id, + url: location.href, + user_agent: window.navigator.userAgent, + referer: document.referrer, + user_unique_id: "" + }; + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u53D1\u8D77WEBID\u8BF7\u6C42", + logType: "fetch", + level: "info", + time: Date.now(), + data: r + }), + this.collect.requestManager.useRequest({ + url: t, + data: r, + success: function(t) { + var r, n; + t && 0 === t.e ? (n = t.web_id, + e.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "WEBID\u8BF7\u6C42\u6210\u529F", + logType: "fetch", + level: "info", + time: Date.now(), + data: t + })) : (r = m(), + e.collect.configManager.set({ + localWebId: n = r + }), + e.collect.emit(A.TokenError), + e.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "WEBID\u8BF7\u6C42\u8FD4\u56DE\u503C\u5F02\u5E38", + logType: "fetch", + level: "warn", + time: Date.now(), + data: t + }), + e.collect.logger.warn("appid: " + e.config.app_id + " get webid error, use local webid~")), + e.complete({ + web_id: e.configManager.get("web_id") || n, + user_unique_id: e.configManager.get("user_unique_id") || n + }) + }, + fail: function() { + var t = m(); + e.complete({ + web_id: e.configManager.get("web_id") || t, + user_unique_id: e.configManager.get("user_unique_id") || t + }), + e.collect.configManager.set({ + localWebId: t + }), + e.collect.emit(A.TokenError), + e.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "WEBID\u8BF7\u6C42\u7F51\u7EDC\u5F02\u5E38", + logType: "fetch", + level: "error", + time: Date.now(), + data: null + }), + e.collect.logger.warn("appid: " + e.config.app_id + ", get webid error, use local webid~") + }, + timeout: 3e5 + }) + } + , + e.prototype.complete = function(e) { + var t = e.web_id + , r = e.user_unique_id; + e.timestamp = Date.now(), + this.collect.configManager.set({ + web_id: t, + user_unique_id: r + }), + this.setStorage(e), + this.tokenReady = !0, + this.collect.emit(A.TokenComplete) + } + , + e.prototype.completeTtWid = function(e) { + var t = e.user_unique_id || "" + , r = this.configManager.get("user_unique_id"); + (r || t) && this.configManager.set({ + user_unique_id: r || t + }), + this.setStorage(e), + this.tokenReady = !0, + this.collect.emit(A.TokenComplete) + } + , + e.prototype.setUuid = function(e) { + var t, r; + e && -1 === ["null", "undefined", "Null", "None"].indexOf(e) ? (e = String(e), + t = this.configManager.get("user_unique_id"), + r = this.cacheToken && this.cacheToken.user_unique_id, + e === t && e === r || (this.configManager.set({ + user_unique_id: e + }), + this.cacheToken || (this.cacheToken = {}), + this.cacheToken.user_unique_id = e, + this.cacheToken.timestamp = Date.now(), + this.setStorage(this.cacheToken), + this.collect.emit(A.TokenChange, "uuid"), + this.collect.emit(A.SessionReset))) : this.clearUuid() + } + , + e.prototype.clearUuid = function() { + this.config.enable_ttwebid || this.configManager.get("web_id") && this.configManager.get("user_unique_id") !== this.configManager.get("web_id") && (this.configManager.set({ + user_unique_id: this.configManager.get("web_id") + }), + this.cacheToken && this.cacheToken.web_id && (this.cacheToken.user_unique_id = this.cacheToken.web_id, + this.cacheToken.timestamp = Date.now(), + this.setStorage(this.cacheToken)), + this.collect.emit(A.TokenReset, "uuid")) + } + , + e.prototype.setWebId = function(e) { + var t, r; + e && !this.config.enable_ttwebid && (this.cacheToken && this.cacheToken.web_id ? this.cacheToken.web_id !== e && (this.cacheToken.user_unique_id = this.cacheToken.web_id === this.cacheToken.user_unique_id ? e : this.cacheToken.user_unique_id, + this.cacheToken.web_id = e) : (this.cacheToken = {}, + this.cacheToken.web_id = e, + this.cacheToken.user_unique_id = e), + this.cacheToken.timestamp = Date.now(), + t = this.configManager.get("web_id"), + (r = this.configManager.get("user_unique_id")) && r !== t || (this.configManager.set({ + user_unique_id: e + }), + this.collect.emit(A.TokenChange, "uuid")), + t !== e && (this.configManager.set({ + web_id: e + }), + this.collect.emit(A.TokenChange, "webid")), + this.setStorage(this.cacheToken)) + } + , + e.prototype.setStorage = function(e) { + e._type_ = this.enableCustomWebid ? "custom" : "default", + delete e["diss".split("").reverse().join("")], + this.enableCookie || this.enable_ttwebid ? (this.storage.setCookie(this.tokenKey, e, this.expiresTime, this.cookieDomain), + this.enable_ttwebid && (delete e.web_id, + this.storage.setItem(this.tokenKey, e))) : this.storage.setItem(this.tokenKey, e), + this.cacheToken = e + } + , + e.prototype.getReady = function() { + return this.tokenReady + } + , + e.prototype.getTobId = function() { + var e = this; + return new Promise(function(t) { + e.collect.requestManager.useRequest({ + url: e.configManager.getUrl("tobid"), + data: { + app_id: e.config.app_id, + user_unique_id: e.configManager.get("user_unique_id"), + web_id: e.configManager.get("web_id"), + user_unique_id_type: e.configManager.get("user_unique_id_type") + }, + success: function(e) { + e && 0 === e.e ? t(e.tobid) : t("") + }, + fail: function() { + t("") + }, + time: 3e4, + withCredentials: e.enable_ttwebid + }) + } + ) + } + , + e + }(), K = function() { + function e(e, t) { + this.collector = e, + this.config = t, + this.requestType = t.request_type || "xhr", + this.supportBeacon = !(!window.navigator || !window.navigator.sendBeacon), + this.errorCode = { + NO_URL: 4001, + IMG_ON: 4e3, + IMG_CATCH: 4002, + BEACON_FALSE: 4003, + XHR_ON: 500, + RESPONSE: 5001, + TIMEOUT: 5005 + }, + this.customHeader = t.custom_request_header || {} + } + return e.prototype.useFetch = function(e) { + var t = e.url + , r = e.data + , n = e.method + , i = e.success + , o = e.fail + , s = { + "Content-Type": "application/json; charset=utf-8" + }; + if (Object.keys(this.customHeader).length) + for (var a in this.customHeader) + s[a] = this.customHeader[a]; + window.fetch ? fetch(t, { + method: n || "POST", + headers: s, + body: JSON.stringify(r) + }).then(function(e) { + return e.json() + }).then(function(e) { + i && i(e) + }).catch(function(e) { + o && o(r, e) + }) : (this.requestType = "xhr", + console.log("your brwoser not support fetch, use xhr"), + this.useRequest({ + url: t, + data: r, + method: n, + success: i, + fail: o + })) + } + , + e.prototype.useBeacon = function(e) { + var t = e.url + , r = e.data + , n = e.success + , e = e.fail; + window.navigator.sendBeacon(t, JSON.stringify(r)) ? n && n() : e && e(r, this.errorCode.BEACON_FALSE) + } + , + e.prototype.useRequest = function(e) { + var t = this + , r = e.url + , n = e.data + , i = e.method + , o = e.success + , s = e.fail + , a = e.timeout + , c = e.useBeacon + , u = e.withCredentials + , l = e.app_key + , f = e.forceXhr; + if (c && this.supportBeacon) + this.useBeacon({ + url: r, + data: n, + method: i, + success: o, + fail: s + }); + else if ("fetch" !== this.requestType || f) + try { + var p = new XMLHttpRequest + , h = i || "POST"; + if (p.open(h, "" + r, !0), + p.setRequestHeader("Content-Type", "application/json; charset=utf-8"), + l && p.setRequestHeader("X-MCS-AppKey", "" + l), + Object.keys(this.customHeader).length) + for (var d in this.customHeader) + p.setRequestHeader(d, this.customHeader[d]); + u && (p.withCredentials = !0), + a && (p.timeout = a, + p.ontimeout = function() { + s && s(n, t.errorCode.TIMEOUT) + } + ), + p.onload = function() { + if (o) { + var e = null; + if (p.responseText) { + try { + e = JSON.parse(p.responseText) + } catch (t) { + e = {} + } + o(e, n) + } + } + } + , + p.onerror = function() { + p.abort(), + s && s(n, t.errorCode.XHR_ON) + } + , + p.send(JSON.stringify(n)) + } catch (e) {} + else + this.useFetch({ + url: r, + data: n, + method: i, + success: o, + fail: s + }) + } + , + e + }(), q = function() { + function e(e, t) { + var r; + this.devToolReady = !1, + this.devToolOrigin = "*", + this.sendAlready = !1, + this.eventVerifyReady = !1, + t.enable_debug && (r = e.adapters.storage, + this.collect = e, + this.config = t, + this.app_id = t.app_id, + this.cacheStorgae = new r(!1,"session"), + this.eventVerifyInfo = [], + this.sdk_type = I.includes("tob") ? "tob" : "inner", + this.filterEvent = ["__bav_page", "__bav_beat", "__bav_page_statistics", "__bav_click", "__bav_page_exposure", "bav2b_page", "bav2b_beat", "bav2b_page_statistics", "bav2b_click", "bav2b_page_exposure", "_be_active", "predefine_pageview", "__profile_set", "__profile_set_once", "__profile_increment", "__profile_unset", "__profile_append", "predefine_page_alive", "predefine_page_close", "abtest_exposure"], + this.load()) + } + return e.prototype.loadScript = function(e) { + try { + var t = document.createElement("script"); + t.src = e, + t.onerror = function() { + console.log("load DevTool render fail") + } + , + t.onload = function() { + console.log("load DevTool render success") + } + , + document.getElementsByTagName("body")[0].appendChild(t) + } catch (e) { + console.log("devTool load fail, " + e.message) + } + } + , + e.prototype.parseUrl = function() { + var e = {}; + try { + var t = window.location.href.split("?")[1].split("&"); + t.length && t.forEach(function(t) { + t = t.split("="), + e[decodeURIComponent(t[0])] = decodeURIComponent(t[1]) + }) + } catch (e) {} + return e + } + , + e.prototype.load = function() { + var e, t, r; + return e = this, + r = function() { + var e; + return function(e, t) { + var r, n, i, o = { + label: 0, + sent: function() { + if (1 & i[0]) + throw i[1]; + return i[1] + }, + trys: [], + ops: [] + }, s = { + next: a(0), + throw: a(1), + return: a(2) + }; + return "function" == typeof Symbol && (s[Symbol.iterator] = function() { + return this + } + ), + s; + function a(s) { + return function(a) { + return function(s) { + if (r) + throw TypeError("Generator is already executing."); + for (; o; ) + try { + if (r = 1, + n && (i = 2 & s[0] ? n.return : s[0] ? n.throw || ((i = n.return) && i.call(n), + 0) : n.next) && !(i = i.call(n, s[1])).done) + return i; + switch (n = 0, + (s = i ? [2 & s[0], i.value] : s)[0]) { + case 0: + case 1: + i = s; + break; + case 4: + return o.label++, + { + value: s[1], + done: !1 + }; + case 5: + o.label++, + n = s[1], + s = [0]; + continue; + case 7: + s = o.ops.pop(), + o.trys.pop(); + continue; + default: + if (!(i = 0 < (i = o.trys).length && i[i.length - 1]) && (6 === s[0] || 2 === s[0])) { + o = 0; + continue + } + if (3 === s[0] && (!i || s[1] > i[0] && s[1] < i[3])) + o.label = s[1]; + else if (6 === s[0] && o.label < i[1]) + o.label = i[1], + i = s; + else { + if (!(i && o.label < i[2])) { + i[2] && o.ops.pop(), + o.trys.pop(); + continue + } + o.label = i[2], + o.ops.push(s) + } + } + s = t.call(e, o) + } catch (e) { + s = [6, e], + n = 0 + } finally { + r = i = 0 + } + if (5 & s[0]) + throw s[1]; + return { + value: s[0] ? s[1] : void 0, + done: !0 + } + }([s, a]) + } + } + }(this, function(t) { + switch (t.label) { + case 0: + if (t.trys.push([0, 2, , 3]), + (e = this.parseUrl()).open_devtool_web && e.app_id) { + if (parseInt(e.app_id) !== this.app_id) + return [2] + } else if (!this.getStorage()) + return [2]; + return this.loadBaseInfo(), + this.loadHook(), + this.setStorage(), + this.addLintener(), + this.loadDebuggerModule(), + this.loadDevTool(), + [4, this.fetchEventInfo()]; + case 1: + return e = t.sent(), + this.sendData("devtool:web:verify", e.verifyStatus), + this.eventVerifyInfo = e.data, + [3, 3]; + case 2: + return console.log("debug fail, " + t.sent().message), + [3, 3]; + case 3: + return [2] + } + }) + } + , + new (t = void 0, + t = Promise)(function(n, i) { + function o(e) { + try { + a(r.next(e)) + } catch (e) { + i(e) + } + } + function s(e) { + try { + a(r.throw(e)) + } catch (e) { + i(e) + } + } + function a(e) { + e.done ? n(e.value) : new t(function(t) { + t(e.value) + } + ).then(o, s) + } + a((r = r.apply(e, [])).next()) + } + ) + } + , + e.prototype.getStorage = function() { + var e = this.cacheStorgae.getItem("__applog_devtool_web"); + return e && parseInt(e) === this.app_id + } + , + e.prototype.setStorage = function() { + this.cacheStorgae.setItem("__applog_devtool_web", this.app_id) + } + , + e.prototype.loadDevTool = function() { + this.loadScript("https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/devtool/debug-web.0.0.2.js") + } + , + e.prototype.loadBaseInfo = function() { + var e = this; + this.info = [{ + title: "\u57FA\u672C\u4FE1\u606F", + type: 1, + infoName: { + app_id: this.config.app_id, + channel: this.config.channel, + \u4E0A\u62A5\u57DF\u540D: this.collect.configManager.getDomain(), + SDK\u7248\u672C: I, + SDK\u5F15\u5165\u65B9\u5F0F: "npm" + } + }, { + title: "\u7528\u6237\u4FE1\u606F", + type: 2, + infoName: { + uuid: this.collect.configManager.get("user").user_unique_id || "", + web_id: this.collect.configManager.get("user").web_id || "", + ssid: "\u70B9\u51FB\u83B7\u53D6SSID" + } + }, { + title: "\u516C\u5171\u53C2\u6570\u4FE1\u606F", + type: 2, + infoName: { + \u6D4F\u89C8\u5668: this.collect.configManager.get("browser"), + \u6D4F\u89C8\u5668\u7248\u672C: this.collect.configManager.get("browser_version"), + \u5E73\u53F0: this.collect.configManager.get("platform"), + \u8BBE\u5907\u578B\u53F7: this.collect.configManager.get("device_model"), + \u64CD\u4F5C\u7CFB\u7EDF: this.collect.configManager.get("os_name"), + \u64CD\u4F5C\u7CFB\u7EDF\u7248\u672C: this.collect.configManager.get("os_version"), + \u5C4F\u5E55\u5206\u8FA8\u7387: this.collect.configManager.get("resolution"), + \u6765\u6E90: this.collect.configManager.get("referrer"), + \u81EA\u5B9A\u4E49\u4FE1\u606F: "" + } + }, { + title: "\u914D\u7F6E\u4FE1\u606F", + type: 3, + infoName: { + \u5168\u57CB\u70B9: !!this.config.autotrack, + \u505C\u7559\u65F6\u957F: !!this.config.enable_stay_duration + } + }, { + title: "A/B\u914D\u7F6E\u4FE1\u606F", + type: 4, + infoName: { + "A/B\u5B9E\u9A8C": !!this.config.enable_ab_test + } + }, { + title: "\u5BA2\u6237\u7AEF\u4FE1\u606F", + type: 3, + infoName: { + \u6253\u901A\u5F00\u5173: !!this.config.Native + } + }], + this.log = [], + this.event = [], + this.collect.on(A.Ready, function() { + e.info[1].infoName.uuid = e.collect.configManager.get("user").user_unique_id, + e.info[1].infoName.web_id = e.collect.configManager.get("user").web_id, + e.info[2].infoName["\u81EA\u5B9A\u4E49\u4FE1\u606F"] = JSON.stringify(e.collect.configManager.get("custom")), + e.config.enable_ab_test && (e.info[4].infoName["\u5DF2\u66DD\u5149VID"] = e.collect.configManager.getAbVersion(), + e.info[4].infoName["A/B\u57DF\u540D"] = e.config.ab_channel_domain || l(D[e.config.channel]), + e.info[4].infoName["\u5168\u90E8\u914D\u7F6E"] = e.collect.configManager.getAbData()), + e.config.Native && (e.info[5].infoName["\u662F\u5426\u6253\u901A"] = !!e.collect.bridgeReport) + }) + } + , + e.prototype.loadHook = function() { + var e = this; + this.collect.stop(), + this.collect.on(S.DEBUGGER_MESSAGE, function(t) { + switch (t.type) { + case S.DEBUGGER_MESSAGE_SDK: + var r = { + time: t.time, + type: t.logType || "sdk", + level: t.level, + name: t.info, + show: !0, + levelShow: !0, + needDesc: !!t.data + }; + return t.data && (r.desc = { + content: JSON.stringify(t.data) + }), + e.updateLog(r), + t.secType && "AB" === t.secType ? (e.info[4].infoName["\u5DF2\u66DD\u5149VID"] = e.collect.configManager.getAbVersion(), + e.info[4].infoName["\u5168\u90E8\u914D\u7F6E"] = e.collect.configManager.getAbData()) : "USER" === t.secType && (e.info[1].infoName.uuid = e.collect.configManager.get("user").user_unique_id, + e.info[1].infoName.web_id = e.collect.configManager.get("user").web_id), + void e.updateInfo(); + case S.DEBUGGER_MESSAGE_EVENT: + if (t.data && t.data.length) { + var r = t.data[0] + , n = r.events + , i = r.header; + if (i.custom = JSON.parse(i.custom), + !n.length) + return; + n.forEach(function(r) { + r.checkShow = !0, + r.searchShow = !0, + r.type = -1 !== e.filterEvent.indexOf(r.event) ? "sdk" : "cus", + r.type = e.collect.bridgeReport ? "bridge" : r.type, + r.params = JSON.parse(r.params), + "fail" === t.status && (r.info = { + message: "code: " + t.code + "\uFF0C msg: " + t.failType + }, + r.failType = t.failType); + var n = !1 + , i = !1 + , o = []; + e.eventVerifyInfo && e.eventVerifyInfo.length && (e.eventVerifyInfo.forEach(function(e) { + e.eventStatus = !1 + }), + e.eventVerifyInfo.forEach(function(t) { + r.event === t.name && (n = i = !0, + r.verifyStatus = t.status, + Object.keys(r.params).forEach(function(n) { + var s; + "event_index" !== n && ((s = {}).paramsKey = n, + s.paramsKeyValue = r.params["" + n], + s.paramsStatus = !1, + s.paramsStatusInfo = "\u5C5E\u6027\u672A\u5F55\u5165", + t.params.forEach(function(t) { + n === t.name && (t.checked = !0, + typeof r.params["" + n] !== e.formatParamsType(t.value_type) ? s.paramsStatusInfo = "\u5C5E\u6027\u7C7B\u578B\u9519\u8BEF\uFF0C\u5E94\u4E3A" + e.formatParamsType(t.value_type) : (s.paramsStatus = !0, + s.paramsStatusInfo = "")) + }), + o.push(s), + s.paramsStatusInfo) && (i = !1) + }), + t.params.forEach(function(e) { + e.checked || (i = !1, + o.push({ + paramsKey: e.name, + paramsStatus: !1, + paramsStatusInfo: "\u7F3A\u5C11\u5C5E\u6027" + e.name + })) + })) + })), + r.reportStatus = "success" === t.status, + r.paramsInfo = o, + r.eventStatus = i && "success" === t.status, + r.eventRecord = n + }), + e.updateEvent(r) + } + return + } + }) + } + , + e.prototype.formatParamsType = function(e) { + switch (e) { + case 0: + return "string"; + case 1: + case 2: + return "number"; + case 3: + return "boolean" + } + } + , + e.prototype.fetchEventInfo = function() { + var e = this; + try { + return new Promise(function(t) { + var r = l("1fz22z22z1nz21z4mz4bz4bz18z1nz1nz1jz1mz1ez1fz1mz1kz1cz4az19z27z22z1cz1bz18z1lz1az1cz4az1lz1cz22z4bz18z1nz1nz1jz1mz1ez1bz1cz24z22z1mz1mz1jz21z4bz1mz1nz1cz1lz18z1nz1gz4bz24z4dz4bz18z1nz1nz16z1jz1mz1ez16z1kz1cz22z18") + "?app_id=" + e.app_id + "&t=" + e.sdk_type + "&nc=false"; + e.collect.requestManager.useRequest({ + url: r, + method: "GET", + success: function(r) { + e.eventVerifyReady = !0, + e.collect.reStart(), + t({ + data: r.data, + verifyStatus: !0 + }) + }, + fail: function() { + e.eventVerifyReady = !0, + e.collect.reStart(), + t({ + data: [], + verifyStatus: !1 + }) + }, + timeout: 3e3 + }) + } + ) + } catch (e) { + return { + data: [], + verifyStatus: !1 + } + } + } + , + e.prototype.addLintener = function() { + var e = this; + window.addEventListener("message", function(t) { + if (t.origin === location.origin) { + if (t && t.data && "devtool:web:ready" === t.data.type) { + if (e.devToolOrigin = t.origin, + e.devToolReady = !0, + e.sendAlready) + return; + e.sendData("devtool:web:init", { + info: e.info, + log: e.log, + event: e.event, + appid: e.app_id + }), + e.sendAlready = !0 + } + t && t.data && "devtool:web:ssid" === t.data.type && e.collect.getToken(function(t) { + e.info[1].infoName.ssid = t.tobid, + e.updateInfo() + }), + t && t.data && t.data.type + } + }) + } + , + e.prototype.sendData = function(e, t) { + try { + (window.opener || window.parent).postMessage({ + type: e, + payload: t + }, this.devToolOrigin) + } catch (e) {} + } + , + e.prototype.updateInfo = function() { + this.devToolReady && this.sendData("devtool:web:info", this.info) + } + , + e.prototype.updateLog = function(e) { + this.devToolReady ? this.sendData("devtool:web:log", e) : this.log.push(e) + } + , + e.prototype.updateEvent = function(e) { + this.devToolReady || this.eventVerifyReady ? this.sendData("devtool:web:event", e) : this.event.push(e) + } + , + e.prototype.loadDebuggerModule = function() { + var e = document.head || document.getElementsByTagName("head")[0] + , t = document.createElement("style") + , e = (t.appendChild(document.createTextNode("#debugger-applog-web {\n position: fixed;\n width: 50px;\n height: 50px;\n background-image: url('https://lf-cdn-tos.bytescm.com/obj/static/log-sdk/collect/devtool/applog.png');;\n bottom: 5%;\n right: 10%;\n cursor: pointer;\n z-index:100;\n background-size: 50px;\n }")), + e.appendChild(t), + document.createElement("div")) + , t = (e.innerHTML = '
    ', + document.createElement("div")); + t.innerHTML = '
    ', + document.getElementsByTagName("body")[0].appendChild(e), + document.getElementsByTagName("body")[0].appendChild(t), + document.getElementById("debugger-applog-web").addEventListener("click", function() { + (window.opener || window.parent).postMessage({ + type: "devtool:web:open-draw" + }, location.origin) + }) + } + , + e + }(), V = { + autotrack: { + src: { + cn: "https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/5.0/plugin/autotrack.js", + sg: "https://sf16-scmcdn-sg.ibytedtos.com/obj/static-sg/log-sdk/collect/5.0/plugin/autotrack.js", + va: "https://sf16-scmcdn-va.ibytedtos.com/obj/static-us/log-sdk/collect/5.0/plugin/autotrack.js" + }, + object: "LogAutoTrack" + }, + ab: { + src: { + cn: "https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/5.0/plugin/ab.js", + sg: "https://sf16-scmcdn-sg.ibytedtos.com/obj/static-sg/log-sdk/collect/5.0/plugin/ab.js", + va: "https://sf16-scmcdn-va.ibytedtos.com/obj/static-us/log-sdk/collect/5.0/plugin/ab.js" + }, + object: "LogAb" + }, + stay: { + src: { + cn: "https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/5.0/plugin/stay.js", + sg: "https://sf16-scmcdn-sg.ibytedtos.com/obj/static-sg/log-sdk/collect/5.0/plugin/stay.js", + va: "https://sf16-scmcdn-va.ibytedtos.com/obj/static-us/log-sdk/collect/5.0/plugin/stay.js" + }, + object: "LogStay" + }, + route: { + src: { + cn: "https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/5.0/plugin/route.js", + sg: "https://sf16-scmcdn-sg.ibytedtos.com/obj/static-sg/log-sdk/collect/5.0/plugin/route.js", + va: "https://sf16-scmcdn-va.ibytedtos.com/obj/static-us/log-sdk/collect/5.0/plugin/route.js" + }, + object: "LogRoute" + }, + cep: { + src: { + cn: "https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/5.0/plugin/cep.js", + sg: "https://sf16-scmcdn-sg.ibytedtos.com/obj/static-sg/log-sdk/collect/5.0/plugin/cep.js", + va: "https://sf16-scmcdn-va.ibytedtos.com/obj/static-us/log-sdk/collect/5.0/plugin/cep.js" + }, + object: "LogCep" + }, + tracer: { + src: { + cn: "https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/5.0/plugin/tracer.js", + sg: "https://sf16-scmcdn-sg.ibytedtos.com/obj/static-sg/log-sdk/collect/5.0/plugin/tracer.js", + va: "https://sf16-scmcdn-va.ibytedtos.com/obj/static-us/log-sdk/collect/5.0/plugin/tracer.js" + }, + object: "LogTracer" + }, + retry: { + src: { + cn: "https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/5.0/plugin/retry.js", + sg: "https://sf16-scmcdn-sg.ibytedtos.com/obj/static-sg/log-sdk/collect/5.0/plugin/retry.js", + va: "https://sf16-scmcdn-va.ibytedtos.com/obj/static-us/log-sdk/collect/5.0/plugin/retry.js" + }, + object: "LogRetry" + }, + visual: { + src: { + cn: "https://lf3-cdn-tos.bytescm.com/obj/static/log-sdk/collect/5.0/plugin/visual.js", + sg: "https://sf16-scmcdn-sg.ibytedtos.com/obj/static-sg/log-sdk/collect/5.0/plugin/visual.js", + va: "https://sf16-scmcdn-va.ibytedtos.com/obj/static-us/log-sdk/collect/5.0/plugin/visual.js" + }, + object: "LogVisual" + } + }, W = ["et", "profile", "heartbeat", "monitor"], J = function() { + function e(e) { + this.disableAutoPageView = !1, + this.bridgeReport = !1, + this.staging = !1, + this.pluginInstances = [], + this.sended = !1, + this.started = !1, + this.destroy = !1, + this.sdkReady = !1, + this.adapters = {}, + this.loadType = "base", + this.sdkStop = !1, + this.name = e, + this.hook = new x, + this.remotePlugin = new Map, + this.Types = A, + this.adapters.storage = T + } + return e.usePlugin = function(t, r, n) { + if (r) { + for (var i = !1, o = 0, s = e.plugins.length; o < s; o++) + if (e.plugins[o].name === r) { + e.plugins[o].plugin = t, + e.plugins[o].options = n || {}, + i = !0; + break + } + i || e.plugins.push({ + name: r, + plugin: t, + options: n + }) + } else + e.plugins.push({ + plugin: t + }) + } + , + e.prototype.usePlugin = function(e, t, r) { + e && ("full" === this.loadType && W.includes(e) ? console.info("your sdk version has " + e + " plugin already ~") : t ? "string" == typeof t ? this.remotePlugin.get(e) || this.remotePlugin.set(e, { + src: t, + call: r + }) : this.remotePlugin.get(e) || this.remotePlugin.set(e, { + instance: t + }) : this.remotePlugin.get(e) || this.remotePlugin.set(e, "sdk")) + } + , + e.prototype.init = function(t) { + var r, n = this; + this.logger = new M(this.name,t.log), + this.inited ? this.logger.warn("[instance: " + this.name + "], every instance's api: init, can be call only one time!") : t && u(t) ? t.app_id && "number" == typeof (r = t.app_id) && !isNaN(r) ? t.app_key && "string" != typeof t.app_key ? this.logger.warn("app_key param is error, must be string, please check!") : (t.channel_domain || -1 !== ["cn", "sg", "va"].indexOf(t.channel) || (this.logger.warn("channel must be `cn`, `sg`,`va` !"), + t.channel = "cn"), + this.spider = new G, + this.spider.checkSpider(t) ? this.logger.warn("your env may be a spider, can not report!") : (this.appBridge = new F(this,t.enable_native), + this.requestManager = new K(this,t), + this.bridgeReport = this.appBridge.bridgeInject(), + this.configManager = new U(this,t), + this.debugger = new q(this,t), + this.initConfig = t, + this.emit(A.Init), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u6267\u884CINIT", + data: t, + level: "info", + time: Date.now() + }), + this.destroy = !1, + t.disable_auto_pv && (this.disableAutoPageView = !0), + this.bridgeReport || (this.configManager.set({ + app_id: t.app_id + }), + this.eventManager = new H, + this.tokenManager = new L, + this.sessionManager = new N, + Promise.all([new Promise(function(e) { + n.once(A.TokenComplete, function() { + e(!0) + }) + } + ), new Promise(function(e) { + n.once(A.Start, function() { + e(!0) + }) + } + )]).then(function() { + try { + e.plugins.reduce(function(e, t) { + var r = t.plugin + , t = t.options + , t = Object.assign(n.initConfig, t) + , r = new r; + return r.apply(n, t), + e.push(r), + e + }, n.pluginInstances) + } catch (e) { + console.warn("load plugin error, " + e.message), + n.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + n.sdkReady = !0, + n.emit(A.Ready), + n.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u521D\u59CB\u5316\u5B8C\u6210", + time: Date.now(), + level: "info", + data: n.configManager.get("user") + }), + n.logger.info("appid: " + t.app_id + ", userInfo:" + JSON.stringify(n.configManager.get("user"))), + n.logger.info("appid: " + t.app_id + ", sdk is ready, version type is " + n.loadType + ", version is " + I + ", you can report now !!!"), + t.disable_auto_pv && (n.disableAutoPageView = !0); + try { + "full" === n.loadType && (t.enable_ab_test || t.autotrack) && (window.opener || window.parent).postMessage("[tea-sdk]ready", "*") + } catch (e) { + n.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + n.pageView(), + n.on(A.TokenChange, function(e) { + "webid" === e && n.pageView(), + n.logger.info("appid: " + t.app_id + " token change, new userInfo:" + JSON.stringify(n.configManager.get("user"))), + n.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u8BBE\u7F6E\u4E86\u7528\u6237\u4FE1\u606F", + time: Date.now(), + secType: "USER", + level: "info", + data: n.configManager.get("user") + }) + }), + n.on(A.TokenReset, function() { + n.logger.info("appid: " + t.app_id + " token reset, new userInfo:" + JSON.stringify(n.configManager.get("user"))), + n.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u91CD\u7F6E\u4E86\u7528\u6237\u4FE1\u606F", + time: Date.now(), + secType: "USER", + level: "info", + data: n.configManager.get("user") + }) + }), + n.on(A.RouteChange, function(e) { + e.init || t.disable_route_report || n.pageView() + }) + }), + this.tokenManager.apply(this, t), + this.eventManager.apply(this, t), + this.sessionManager.apply(this, t)), + this.inited = !0)) : this.logger.warn("app_id param is error, must be number, please check!") : this.logger.warn("init params error,please check!") + } + , + e.prototype.config = function(e) { + var t, r; + this.inited ? e && u(e) ? this.bridgeReport ? this.appBridge.setConfig(e) : (e._staging_flag && 1 === e._staging_flag && (this.staging = !0), + e.disable_auto_pv && (this.disableAutoPageView = !0, + delete e.disable_auto_pv), + t = a({}, e), + r = this.initConfig.configPersist || this.initConfig.config_persist || !1, + this.initConfig && r && ((r = this.configManager.getStore()) && (t = Object.assign(r, e)), + this.configManager.setStore(e)), + t.web_id, + t.user_unique_id, + r = function(e, t) { + var r = {}; + for (i in e) + Object.prototype.hasOwnProperty.call(e, i) && 0 > t.indexOf(i) && (r[i] = e[i]); + if (null != e && "function" == typeof Object.getOwnPropertySymbols) + for (var n = 0, i = Object.getOwnPropertySymbols(e); n < i.length; n++) + 0 > t.indexOf(i[n]) && (r[i[n]] = e[i[n]]); + return r + }(t, ["web_id", "user_unique_id"]), + this.configManager.set(r), + t.hasOwnProperty("web_id") && this.emit(A.ConfigWebId, t.web_id), + t.hasOwnProperty("user_unique_id") && this.emit(A.ConfigUuid, t.user_unique_id), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u6267\u884CCONFIG", + level: "info", + time: Date.now(), + data: t + })) : console.warn("config params is error, please check") : console.warn("config must be use after function init") + } + , + e.prototype.setUserUniqueID = function(e) { + this.config({ + user_unique_id: e + }) + } + , + e.prototype.setHeaderInfo = function(e, t) { + var r = {}; + r[e] = t, + this.config(r) + } + , + e.prototype.removeHeaderInfo = function(e) { + var t = {}; + t[e] = void 0, + this.config(t) + } + , + e.prototype.setDomain = function(e) { + this.configManager && this.configManager.setDomain(e), + this.emit(A.ConfigDomain) + } + , + e.prototype.getConfig = function(e) { + return this.configManager.get(e) + } + , + e.prototype.send = function() { + this.start() + } + , + e.prototype.start = function() { + this.inited && !this.sended && (this.sended = !0, + this.started = !0, + this.emit(A.Start), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u6267\u884CSTART", + level: "info", + time: Date.now() + }), + this.bridgeReport) && (this.pageView(), + this.emit(A.Ready)) + } + , + e.prototype.event = function(e, t) { + var r = this; + try { + var n = []; + if (Array.isArray(e)) + e.forEach(function(e) { + (e = r.processEvent(e[0], e[1] || {})) && n.push(e) + }); + else { + var i = this.processEvent(e, t); + if (!i) + return; + n.push(i) + } + this.bridgeReport ? n.forEach(function(e) { + var t = e.event + , e = e.params; + r.appBridge.onEventV3(t, JSON.stringify(e)) + }) : n.length && (this.emit(A.Event, n), + this.emit(A.SessionResetTime)) + } catch (e) { + this.logger.warn("something error, please check"), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + } + , + e.prototype.beconEvent = function(e, t) { + var r; + Array.isArray(e) ? console.warn("beconEvent not support batch report, please check") : (r = [], + (e = this.processEvent(e, t || {})) && (r.push(e), + r.length) && (this.emit(A.BeconEvent, r), + this.emit(A.SessionResetTime))) + } + , + e.prototype.beaconEvent = function(e, t) { + this.beconEvent(e, t) + } + , + e.prototype.processEvent = function(e, t) { + void 0 === t && (t = {}); + try { + var r, n, i; + return e ? (/^event\./.test(r = e) && (r = e.slice(6)), + i = void ((n = "object" != typeof (n = t) ? {} : n).profile ? delete n.profile : n.event_index = _ += 1), + n.local_ms ? (i = n.local_ms, + delete n.local_ms) : i = +new Date, + { + event: r, + params: n, + local_time_ms: i, + is_bav: this.initConfig && this.initConfig.autotrack ? 1 : 0 + }) : (console.warn("eventName is null\uFF0C please check"), + null) + } catch (r) { + return this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: r.message + }), + { + event: e, + params: t + } + } + } + , + e.prototype.filterEvent = function(e) { + this.eventFilter = e + } + , + e.prototype.on = function(e, t) { + this.hook.on(e, t) + } + , + e.prototype.once = function(e, t) { + this.hook.once(e, t) + } + , + e.prototype.off = function(e, t) { + this.hook.off(e, t) + } + , + e.prototype.emit = function(e, t, r) { + this.hook.emit(e, t, r) + } + , + e.prototype.set = function(e) { + this.hook.set(e) + } + , + e.prototype.stop = function() { + this.sdkStop = !0 + } + , + e.prototype.reStart = function() { + this.sdkStop = !1 + } + , + e.prototype.pageView = function() { + this.disableAutoPageView || this.predefinePageView() + } + , + e.prototype.predefinePageView = function(e) { + var t; + void 0 === e && (e = {}), + this.inited ? (t = { + title: document.title || location.pathname, + url: location.href, + url_path: location.pathname, + time: Date.now(), + referrer: window.document.referrer, + $is_first_time: "" + (this.configManager && this.configManager.is_first_time || !1) + }, + t = a({}, t, e), + this.event("predefine_pageview", t)) : console.warn("predefinePageView must be use after function init") + } + , + e.prototype.clearEventCache = function() { + this.emit(A.CleanEvents) + } + , + e.prototype.setWebIDviaUnionID = function(e) { + var t; + e && (t = h(e), + this.config({ + web_id: "" + t, + wechat_unionid: e + }), + this.emit(A.CustomWebId)) + } + , + e.prototype.setWebId = function(e) { + this.config({ + web_id: "" + e + }) + } + , + e.prototype.setWebIDviaOpenID = function(e) { + var t; + e && (t = h(e), + this.config({ + web_id: "" + t, + wechat_openid: e + }), + this.emit(A.CustomWebId)) + } + , + e.prototype.setNativeAppId = function(e) { + this.bridgeReport && this.appBridge.setNativeAppId(e) + } + , + e.prototype.getSessionId = y, + e.prototype.setSessionId = function(e) { + this.emit(A.SessionReset, e) + } + , + e.prototype.resetStayDuration = function(e, t, r) { + this.emit(A.ResetStay, { + url_path: e, + title: t, + url: r + }, A.Stay) + } + , + e.prototype.resetStayParams = function(e, t, r) { + this.emit(A.SetStay, { + url_path: e = void 0 === e ? "" : e, + title: t = void 0 === t ? "" : t, + url: r = void 0 === r ? "" : r + }, A.Stay) + } + , + e.prototype.getToken = function(e, t) { + var r, n, i, o = this; + this.inited ? (r = !1, + n = function(t) { + var n; + if (!r) + return r = !0, + n = o.configManager.get().user, + t && (n.tobid = t, + n["diss".split("").reverse().join("")] = t), + e(a({}, n)) + } + , + i = function() { + o.tokenManager.getTobId().then(function(e) { + n(e) + }) + } + , + this.sdkReady ? i() : (t && setTimeout(function() { + n() + }, t), + this.on(A.Ready, function() { + i() + }))) : console.warn("getToken must be use after function init") + } + , + e.prototype.profileSet = function(e) { + this.bridgeReport ? this.appBridge.profileSet(JSON.stringify(e)) : this.emit(A.ProfileSet, e, A.Profile), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u6267\u884CprofileSet", + level: "info", + time: Date.now(), + data: e + }) + } + , + e.prototype.profileSetOnce = function(e) { + this.bridgeReport ? this.appBridge.profileSetOnce(JSON.stringify(e)) : this.emit(A.ProfileSetOnce, e, A.Profile), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u6267\u884CprofileSetOnce", + level: "info", + time: Date.now(), + data: e + }) + } + , + e.prototype.profileIncrement = function(e) { + this.bridgeReport ? this.appBridge.profileIncrement(JSON.stringify(e)) : this.emit(A.ProfileIncrement, e, A.Profile), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u6267\u884CprofileIncrement", + level: "info", + time: Date.now(), + data: e + }) + } + , + e.prototype.profileUnset = function(e) { + this.bridgeReport ? this.appBridge.profileUnset(e) : this.emit(A.ProfileUnset, e, A.Profile), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u6267\u884CprofileUnset", + level: "info", + time: Date.now(), + data: e + }) + } + , + e.prototype.profileAppend = function(e) { + this.bridgeReport ? this.appBridge.profileAppend(JSON.stringify(e)) : this.emit(A.ProfileAppend, e, A.Profile), + this.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "SDK \u6267\u884CprofileAppend", + level: "info", + time: Date.now(), + data: e + }) + } + , + e.prototype.setExternalAbVersion = function(e) { + this.emit(A.AbExternalVersion, "string" == typeof e && e ? ("" + e).trim() : null, A.Ab) + } + , + e.prototype.getVar = function(e, t, r) { + this.emit(A.AbVar, { + name: e, + defaultValue: t, + callback: r + }, A.Ab) + } + , + e.prototype.getABconfig = function(e, t) { + this.emit(A.AbConfig, { + params: e, + callback: t + }, A.Ab) + } + , + e.prototype.getAbSdkVersion = function() { + return this.configManager.getAbVersion() + } + , + e.prototype.onAbSdkVersionChange = function(e) { + var t = this; + return this.emit(A.AbVersionChangeOn, e, A.Ab), + function() { + t.emit(A.AbVersionChangeOff, e, A.Ab) + } + } + , + e.prototype.offAbSdkVersionChange = function(e) { + this.emit(A.AbVersionChangeOff, e, A.Ab) + } + , + e.prototype.openOverlayer = function() { + this.emit(A.AbOpenLayer, "", A.Ab) + } + , + e.prototype.closeOverlayer = function() { + this.emit(A.AbCloseLayer, "", A.Ab) + } + , + e.prototype.getAllVars = function(e) { + this.emit(A.AbAllVars, e, A.Ab) + } + , + e.prototype.destoryInstace = function() { + this.destroy || (this.destroy = !0, + this.off(A.TokenComplete), + this.emit(A.DestoryInstance)) + } + , + e.prototype.destroyInstance = function() { + this.destroy || (this.destroy = !0, + this.off(A.TokenComplete), + this.emit(A.DestoryInstance)) + } + , + e.plugins = [], + e + }(), t = function() { + function e() {} + return e.prototype.apply = function(e, t) { + var r = this; + t.event_verify_url && ("string" == typeof t.event_verify_url ? (this.url = t.event_verify_url + "/v1/list_test", + e.on(e.Types.SubmitBefore, function(t) { + e.requestManager.useBeacon({ + url: r.url, + data: t + }) + })) : console.log("please use correct et_test url")) + } + , + e + }(), Q = function() { + function e() {} + return e.prototype.apply = function(e, t) { + var r = this + , n = (this.collect = e, + this.config = t, + this.duration = 6e4, + this.reportUrl = e.configManager.getDomain() + "/profile/list", + e.Types); + this.eventCheck = new P(e,t), + this.cache = {}, + this.collect.on(n.ProfileSet, function(e) { + r.setProfile(e) + }), + this.collect.on(n.ProfileSetOnce, function(e) { + r.setOnceProfile(e) + }), + this.collect.on(n.ProfileUnset, function(e) { + r.unsetProfile(e) + }), + this.collect.on(n.ProfileIncrement, function(e) { + r.incrementProfile(e) + }), + this.collect.on(n.ProfileAppend, function(e) { + r.appendProfile(e) + }), + this.collect.on(n.ProfileClear, function() { + r.cache = {} + }), + this.ready(n.Profile) + } + , + e.prototype.ready = function(e) { + var t = this; + if (this.collect.set(e), + this.collect.hook._hooksCache.hasOwnProperty(e)) { + var r = this.collect.hook._hooksCache[e]; + if (Object.keys(r).length) + for (var n in r) + !function(e) { + r[e].length && r[e].forEach(function(r) { + t.collect.hook.emit(e, r) + }) + }(n) + } + } + , + e.prototype.report = function(e, t) { + void 0 === t && (t = {}); + try { + var r, n; + this.config.disable_track_event || ((r = []).push(this.collect.processEvent(e, t)), + n = this.collect.eventManager.merge(r), + this.collect.requestManager.useRequest({ + url: this.reportUrl, + data: n + }), + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_EVENT, + info: "\u57CB\u70B9\u4E0A\u62A5\u6210\u529F", + time: Date.now(), + data: n, + code: 200, + status: "success" + })) + } catch (e) { + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + } + , + e.prototype.setProfile = function(e) { + (e = this.formatParams(e)) && Object.keys(e).length && (this.pushCache(e), + this.report("__profile_set", a({}, e, { + profile: !0 + }))) + } + , + e.prototype.setOnceProfile = function(e) { + (e = this.formatParams(e, !0)) && Object.keys(e).length && (this.pushCache(e), + this.report("__profile_set_once", a({}, e, { + profile: !0 + }))) + } + , + e.prototype.incrementProfile = function(e) { + e ? this.report("__profile_increment", a({}, e, { + profile: !0 + })) : console.warn("please check the params, must be object!!!") + } + , + e.prototype.unsetProfile = function(e) { + var t; + e ? ((t = {})[e] = "1", + this.report("__profile_unset", a({}, t, { + profile: !0 + }))) : console.warn("please check the key, must be string!!!") + } + , + e.prototype.appendProfile = function(e) { + if (e) { + var t, r = {}; + for (t in e) + "string" == typeof e[t] || "Array" === Object.prototype.toString.call(e[t]).slice(8, -1) ? r[t] = e[t] : console.warn("please check the value of param: " + t + ", must be string or array !!!"); + Object.keys(r).length && this.report("__profile_append", a({}, r, { + profile: !0 + })) + } else + console.warn("please check the params, must be object!!!") + } + , + e.prototype.pushCache = function(e) { + var t = this; + Object.keys(e).forEach(function(r) { + t.cache[r] = { + val: t.clone(e[r]), + timestamp: Date.now() + } + }) + } + , + e.prototype.formatParams = function(e, t) { + var r = this; + void 0 === t && (t = !1); + try { + if (e && "[object Object]" === Object.prototype.toString.call(e)) { + var n, i = {}; + for (n in e) + "string" == typeof e[n] || "number" == typeof e[n] || "Array" === Object.prototype.toString.call(e[n]).slice(8, -1) ? i[n] = e[n] : console.warn("please check the value of params:" + n + ", must be string,number,Array !!!"); + var o, s = Object.keys(i); + if (s.length && this.eventCheck.checkEventParams(i)) + return o = Date.now(), + s.filter(function(n) { + var i = r.cache[n]; + return t ? !i : !(i && r.compare(i.val, e[n]) && o - i.timestamp < r.duration) + }).reduce(function(e, t) { + return e[t] = i[t], + e + }, {}) + } else + console.warn("please check the params type, must be object !!!") + } catch (e) { + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }), + console.log("error") + } + } + , + e.prototype.compare = function(e, t) { + try { + return JSON.stringify(e) === JSON.stringify(t) + } catch (e) { + return this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }), + !1 + } + } + , + e.prototype.clone = function(e) { + try { + return JSON.parse(JSON.stringify(e)) + } catch (t) { + return this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: t.message + }), + e + } + } + , + e.prototype.unReady = function() { + console.warn("sdk is not ready, please use this api after start") + } + , + e + }(), X = function() { + function e() { + var e = this; + this.setInterval = function() { + var t, r, n, i; + e.clearIntervalFunc = (t = function() { + e.isSessionhasEvent && e.endCurrentSession() + } + , + r = e.sessionInterval, + void 0 === t && (t = function() {} + ), + void 0 === r && (r = 1e3), + n = Date.now() + r, + i = window.setTimeout(function e() { + var o = Date.now() - n; + t(), + n += r, + i = window.setTimeout(e, Math.max(0, r - o)) + }, r), + function() { + window.clearTimeout(i) + } + ) + } + , + this.clearInterval = function() { + e.clearIntervalFunc && e.clearIntervalFunc() + } + } + return e.prototype.apply = function(e, t) { + var r = this; + this.collect = e, + t.disable_heartbeat || (this.sessionInterval = 6e4, + this.startTime = 0, + this.lastTime = 0, + this.setInterval(), + e = this.collect.Types, + this.collect.on(e.SessionResetTime, function() { + r.process() + })) + } + , + e.prototype.endCurrentSession = function() { + this.collect.event("_be_active", { + start_time: this.startTime, + end_time: this.lastTime, + url: window.location.href, + referrer: window.document.referrer, + title: document.title || location.pathname + }), + this.isSessionhasEvent = !1, + this.startTime = 0 + } + , + e.prototype.process = function() { + this.isSessionhasEvent || (this.isSessionhasEvent = !0, + this.startTime = +new Date); + var e = this.lastTime || +new Date; + this.lastTime = +new Date, + this.lastTime - e > this.sessionInterval && (this.clearInterval(), + this.endCurrentSession(), + this.setInterval()) + } + , + e + }(), $ = function() { + function e() {} + return e.prototype.apply = function(e, t) { + var r = this; + t.channel_domain || t.disable_track_event || t.disable_sdk_monitor || (this.collect = e, + this.config = t, + this.url = e.configManager.getUrl("event"), + this.collect.on(e.Types.Ready, function() { + r.sdkOnload() + }), + this.collect.on(e.Types.SubmitError, function(e) { + var t = e.type + , n = e.eventData + , e = e.errorCode; + "f_data" === t && r.sdkError(n, e) + })) + } + , + e.prototype.sdkOnload = function() { + var e = this; + try { + var t = this.collect.configManager.get() + , r = t.header + , n = t.user + , i = r.app_id + , o = r.app_name + , s = r.sdk_version + , a = n.web_id + , c = { + events: [{ + event: "onload", + params: JSON.stringify({ + app_id: i, + app_name: o || "", + sdk_version: s, + sdk_type: "npm", + sdk_config: this.config, + sdk_desc: "TOC", + url: location.href + }), + local_time_ms: Date.now() + }], + user: { + user_unique_id: a + }, + header: {} + }; + setTimeout(function() { + e.collect.requestManager.useRequest({ + url: e.url, + data: [c], + timeout: 3e4, + app_key: "566f58151b0ed37e", + forceXhr: !0 + }) + }, 16) + } catch (e) {} + } + , + e.prototype.sdkError = function(e, t) { + var r = this; + try { + var n = e[0] + , i = n.user + , o = n.header + , s = [] + , a = (e.forEach(function(e) { + e.events.forEach(function(e) { + s.push(e) + }) + }), + { + events: s.map(function(e) { + return { + event: "on_error", + params: JSON.stringify({ + error_code: t, + app_id: o.app_id, + app_name: o.app_name || "", + error_event: e.event, + sdk_version: o.sdk_version, + local_time_ms: e.local_time_ms, + tea_event_index: Date.now(), + params: e.params, + header: JSON.stringify(o), + user: JSON.stringify(i) + }), + local_time_ms: Date.now() + } + }), + user: { + user_unique_id: i.user_unique_id + }, + header: {} + }); + setTimeout(function() { + r.collect.requestManager.useRequest({ + url: r.url, + data: [a], + timeout: 3e4, + app_key: "566f58151b0ed37e", + forceXhr: !0 + }) + }, 16) + } catch (e) {} + } + , + e + }(), Z = "undefined" != typeof window ? (window.LogPluginObject || (window.LogPluginObject = {}), + window.LogPluginObject) : null, Y = function() { + function e() {} + return e.prototype.apply = function(e, t) { + this._plugin = {}, + this.config = t, + this.collect = e, + this.channel = t.channel || "cn", + this.loadExtend() + } + , + e.prototype.loadExtend = function() { + var e = this; + try { + this.collect.remotePlugin.forEach(function(t, r) { + var n, i; + "sdk" === t ? V.hasOwnProperty(r) ? (n = V[r].object, + i = V[r].src[e.channel] + "?query=" + Date.now(), + e.exist(r, n, i)) : console.warn("your " + r + " is not exist\uFF0Cplease check plugin name") : "object" == typeof t && (t.src ? e.exist(r, t.call, t.src) : e.process(r, t.instance, "INSTANCE")) + }) + } catch (e) { + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }), + console.log("load extend error") + } + } + , + e.prototype.exist = function(e, t, r) { + var n = this; + Z[t] ? (this.process(e, Z[t]), + console.log("\u5DF2\u6709" + e + "\u63D2\u4EF6\uFF0C\u907F\u514D\u91CD\u590D\u52A0\u8F7D~")) : this.loadPlugin(e, r, function() { + n.process(e, Z[t]), + console.log(" %c %s %s %s", "color: yellow; background-color: black;", "\u2013", "load plugin:" + e + " success", "-") + }, function() { + console.log(" %c %s %s %s", "color: red; background-color: yellow;", "\u2013", "load plugin:" + e + " error", "-") + }) + } + , + e.prototype.process = function(e, t, r) { + try { + var n; + r ? ((n = new t).apply && n.apply(this.collect, this.config), + console.log("excude " + e + " success")) : t && t(this.collect, this.config) + } catch (t) { + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: t.message + }), + console.log("excude " + e + " error, message:" + t.message) + } + } + , + e.prototype.loadPlugin = function(e, t, r, n) { + var i = this; + try { + var o = document.createElement("script"); + o.src = t, + this._plugin[e] || (this._plugin[e] = []), + this._plugin[e].push(r), + o.onerror = function() { + n(t) + } + , + o.onload = function() { + i._plugin[e].forEach(function(e) { + e() + }) + } + , + document.getElementsByTagName("head")[0].appendChild(o) + } catch (e) { + this.collect.emit(S.DEBUGGER_MESSAGE, { + type: S.DEBUGGER_MESSAGE_SDK, + info: "\u53D1\u751F\u4E86\u5F02\u5E38", + level: "error", + time: Date.now(), + data: e.message + }) + } + } + , + e + }(), Y = (J.usePlugin(Y, "extend"), + J.usePlugin(t, "et"), + J.usePlugin(Q, "profile"), + J.usePlugin(X, "heartbeat"), + J.usePlugin($, "monitor"), + new J("default")), ee = Y, et = { + selectRoute: 900, + browserError: 1e3, + crc32: 1e3, + preUpload: 1001, + initUploadID: 1002, + process: 1003, + fileMerge: 1004, + complete: 1005 + }, er = "video", en = "image", ei = "object", eo = { + video: "video_upload", + image: "image_upload", + object: "object_upload" + }, es = "imagex"; + function ea(e) { + return (ea = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function ec() { + return (ec = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function eu(e, t) { + for (var r = 0; r < t.length; r++) { + var n, i = t[r]; + i.enumerable = i.enumerable || !1, + i.configurable = !0, + "value"in i && (i.writable = !0), + Object.defineProperty(e, (n = function(e, t) { + if ("object" !== ea(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== ea(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(n = i.key, "string"), + "symbol" === ea(n) ? n : String(n)), i) + } + } + var el = function() { + var e, t, r; + function n(e, t) { + switch (!function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, n), + this.options = e, + this.context = t, + this.teaLog = ee, + this.tea_app_id = 2562, + this.tea_channel = "cn", + this.options.region) { + case "us-east-1": + case "us-east-red": + case "gcp": + case "US-TTP": + this.tea_app_id = 2643, + this.tea_channel = "va"; + break; + case "boei18n": + case "ap-singapore-1": + this.tea_app_id = 2643, + this.tea_channel = "sg"; + break; + default: + this.tea_app_id = 2562, + this.tea_channel = "cn" + } + this.teaLog.init({ + app_id: this.tea_app_id, + channel: this.tea_channel, + log: !1, + disable_sdk_monitor: !0, + disable_auto_pv: !0 + }), + this.teaLog.config({ + evtParams: { + sdk_version: "2.0.9", + line_app_id: this.options.appId + }, + user_unique_id: this.options.userId + }), + this.teaLog.start() + } + return e = n, + t = [{ + key: "send", + value: function(e) { + var t = this.context + , r = e.key + , t = t.tasks[r] + , n = et[e.stage] || 999 + , t = e.fileType || t && t.fileType + , i = e.fileSize || 0 + , r = { + log_type: eo[t], + stage: n, + fk: r, + fs: i, + req: e.req, + res: e.res, + ts: Math.round(Date.now() / 1e3), + sst: e.stageStartTime, + set: e.stageEndTime, + dur: e.duration, + tdur: e.totalDuration, + durs: e.duration / 1e3, + tdurs: e.totalDuration / 1e3, + eslr: e.enableSelectRoute, + ucsrr: e.useClientSelectRouteResult, + skipCommit: !!e.skipCommit + } + , i = e.type + , o = "error" === i || "retry" === i ? i : n + , t = "".concat("image" === t ? "image" : "video", "_").concat(o); + "success" === i ? this.sendSuccessLog(t, e, r, n) : this.teaLog.event(t, ec({}, r, { + type: e.type, + oid: e.oid, + upload_host: e.tosDomain, + errc: e.extra && e.extra.errorCode, + ex: JSON.stringify({ + errc: e.extra && e.extra.errorCode, + msg: e.extra && e.extra.message + }) + })) + } + }, { + key: "sendSuccessLog", + value: function(e, t, r, n) { + switch (r.type = t.type, + n) { + case et.selectRoute: + this.teaLog.event(e, ec({}, r, { + race_info: t.raceInfo, + client_ip: t.lastClientIp, + uc: t.useCache, + ex: JSON.stringify({ + msg: t.extra && t.extra.message + }) + })); + break; + case et.crc32: + this.teaLog.event(e, ec({}, r, { + ex: JSON.stringify({ + msg: t.extra && t.extra.message, + crc32Array: t.crc32Array, + isDirect: t.isDirect + }) + })); + break; + case et.preUpload: + this.teaLog.event(e, ec({}, r, { + oid: t.oid, + upload_host: t.tosDomain, + ex: JSON.stringify({ + msg: t.extra && t.extra.message, + sig: t.signature, + stk: t.proxyStsToken + }) + })); + break; + case et.initUploadID: + this.teaLog.event(e, ec({}, r, { + oid: t.oid, + upload_host: t.tosDomain, + ex: JSON.stringify({ + msg: t.extra && t.extra.message, + upid: t.UploadID + }) + })); + break; + case et.process: + t.isAllFinish || t.isDirect || (delete r.sst, + delete r.set, + delete r.dur), + this.teaLog.event(e, ec({}, r, { + oid: t.oid, + upload_host: t.tosDomain, + af: t.isAllFinish, + cst: t.crc32StartTime, + cet: t.crc32EndTime, + cdur: t.crc32Duration, + slst: t.sliceStartTime, + slet: t.sliceEndTime, + sldurs: t.sliceDuration && t.sliceDuration / 1e3, + ex: JSON.stringify({ + msg: t.extra && t.extra.message, + si: t.sliceIndex, + af: t.isAllFinish + }) + })); + break; + case et.fileMerge: + this.teaLog.event(e, ec({}, r, { + oid: t.oid, + upload_host: t.tosDomain, + ex: JSON.stringify({ + msg: t.extra && t.extra.message + }) + })); + break; + case et.complete: + this.teaLog.event(e, ec({}, r, { + oid: t.oid, + upload_host: t.tosDomain, + speed: Math.round(t.fileSize / (t.totalDuration / 1e3) / 1024), + ex: JSON.stringify({ + msg: t.extra && t.extra.message, + vid: t.uploadResult && t.uploadResult.Vid + }) + })) + } + } + }, { + key: "console", + value: function(e) { + function t(t) { + return e.apply(this, arguments) + } + return t.toString = function() { + return e.toString() + } + , + t + }(function(e) { + this.options.debug && console.log(e) + }) + }], + eu(e.prototype, t), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + n + }() + , t = r(6) + , ef = r.n(t) + , Q = r(4) + , ep = r.n(Q) + , eh = { + urlTemplate: function(e, t) { + var r; + return Object.keys(t = t || {}).forEach(function(n) { + r = RegExp("{".concat(n, "}"), "g"), + e = e.replace(r, t[n]) + }), + e + }, + toQueryString: function() { + var e = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : {}; + return Object.keys(e).map(function(t) { + return "".concat(t, "=").concat(encodeURIComponent(e[t])) + }).join("&") + }, + supportChunked: function() { + var e = window.Blob || window.WebKitBlob; + try { + var t = e.prototype; + return !(!FormData || !(t.slice || t.webkitSlice || t.mozSlice)) + } catch (e) { + return !1 + } + }, + supportXhr: function() { + return !!window.FormData || window.ProgressEvent && window.FileReader + }, + supportCrc32: function() { + var e = window.FileReader && window.FileReader.prototype.readAsBinaryString; + return "undefined" != typeof Int32Array && e && (Blob.prototype.slice || Blob.prototype.webkitSlice || Blob.prototype.mozSlice) + }, + storage: function(e) { + var t = e + , e = { + removeItem: function(e) { + delete t.cache[e] + }, + setItem: function(e, r) { + t.cache[e] = r + }, + getItem: function(e) { + return t.cache[e] + }, + clear: function() { + delete t.cache, + t.cache = {} + } + }; + if (!(1 < arguments.length && void 0 !== arguments[1]) || arguments[1]) + try { + if (window.localStorage) + return window.localStorage.setItem("", ""), + window.localStorage + } catch (e) {} + return e + }, + noop: function() {}, + getUnique: function(e) { + return "".concat(e, "_").concat((new Date).getTime(), "_").concat(parseInt(1e6 * Math.random())) + }, + getFileSliceLength: function(e, t) { + var r = e.size; + return t && "function" == typeof t ? 2097152 > t(r) ? 2097152 : t(r) || r : 0xc800000 < r ? 0xa00000 : r <= 0xc800000 && 2097152 <= r ? 5242880 : e.size + }, + getFileSuffix: function(e) { + if (e && "[object String]" === Object.prototype.toString.call(e)) { + var t = e.lastIndexOf("."); + return 0 < t && (e = ".".concat(e.substring(t + 1))).length <= 8 ? e : "" + } + }, + fileSlice: function(e, t, r) { + return (e.slice || e.webkitSlice || e.mozSlice).call(e, t, r) + }, + getPathByURL: function(e) { + return /^(?:(https?:)\/\/)?(([^:/?#]*)(?::([0-9]+))?)([/]{0,1}[^?#]*)(\?[^#]*|)(#.*|)$/.exec(e)[5] || "/" + }, + crypto: { + hmac: function(e, t) { + return ef()(t, e) + }, + sha256: function(e) { + return ep()(e) + } + }, + date: { + iso8601: function(e) { + return (e = void 0 === e ? eh.date.getDate() : e).toISOString().replace(/\.\d{3}Z$/, "Z") + } + }, + Buffer: Uint8Array, + generateKey: function(e) { + for (var t = "", r = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", n = r.length, i = 0; i < e; i++) + t += r.charAt(Math.floor(Math.random() * n)); + return t + } + }; + function ed(e) { + return (ed = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function eg(e, t) { + for (var r = 0; r < t.length; r++) { + var n, i = t[r]; + i.enumerable = i.enumerable || !1, + i.configurable = !0, + "value"in i && (i.writable = !0), + Object.defineProperty(e, (n = function(e, t) { + if ("object" !== ed(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== ed(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(n = i.key, "string"), + "symbol" === ed(n) ? n : String(n)), i) + } + } + function ey(e, t) { + return (ey = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function em(e) { + return (em = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var ev = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && ey(e, t) + }(a, n.a); + var e, t, r, i, o, s = (e = a, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = em(e); + return function(e, t) { + if (t && ("object" === ed(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, em(this).constructor) : r.apply(this, arguments)) + } + ); + function a() { + var e; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, a), + (e = s.call(this)).xhr = new XMLHttpRequest, + e._data = null, + e + } + return r = a, + i = [{ + key: "_ajax", + value: function(e) { + var t = this + , r = this.xhr; + r.upload.onprogress = function(e) { + t.emit("progress", e) + } + , + r.onreadystatechange = function() { + 4 === r.readyState && (r.upload.onprogress = eh.noop, + r.onreadystatechange = eh.noop, + r.params = e, + t._data && t._data.url && (r.currentUrl = t._data.url), + r.status >= 200 && r.status < 300 || 304 === r.status ? t.emit("complete", r) : r.status >= 400 && t.emit("error", r)) + } + , + r.onerror = function() { + r.errText = "unknow net error", + t.emit("error", r) + } + , + r.ontimeout = function() { + r.errText = "timeout", + t.emit("error", r) + } + , + r.onabort = function() { + r.errText = "abort", + t.emit("error", r) + } + , + r.send(e) + } + }, { + key: "send", + value: function(e) { + var t = this; + return this._data = e, + this.xhr.open(e.method || "POST", e.url || "", !0), + e.headers && Object.keys(e.headers).forEach(function(r) { + t.xhr.setRequestHeader(r, e.headers[r]) + }), + this.xhr.timeout = e.timeout || 0, + e.ontimeout && (this.xhr.ontimeout = e.ontimeout), + e.binary ? this.sendAsBinary(e) : e.custom ? "object" === ed(e.custom) ? this.sendAsCustom(JSON.stringify(e.custom)) : "none" === e.custom ? (delete e.custom, + this.sendAsCustom()) : this.sendAsCustom(e.custom) : this.sendAsFormData(e) + } + }, { + key: "sendAsBinary", + value: function(e) { + return this.xhr.setRequestHeader("Content-Type", "application/octet-stream"), + this.xhr.setRequestHeader("Content-Disposition", 'attachment; filename="'.concat(encodeURI(e.filename), '"')), + this._ajax(e.file) + } + }, { + key: "sendAsFormData", + value: function(e) { + t = (t = e.formData ? "function" == typeof e.formData ? e.formData() : e.formData : t) || []; + for (var t, r = new FormData, n = 0, i = t.length; n < i; n++) { + var o = r[n]; + r.append(o.name, o.value) + } + return e.file && r.append(e.field, e.file, e.name), + this._ajax(r) + } + }, { + key: "sendAsCustom", + value: function(e) { + return this._ajax(e) + } + }, { + key: "abort", + value: function() { + this.xhr.onreadystatechange = eh.noop, + this.xhr.abort() + } + }, { + key: "getResponse", + value: function() { + return this.xhr.response + } + }, { + key: "getText", + value: function() { + return this.xhr.responseText + } + }, { + key: "getJson", + value: function() { + return JSON.parse(this.xhr.responseText) + } + }], + eg(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + a + }() + , X = r(1) + , eb = r.n(X); + function e_(e) { + return (e_ = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function eS(e, t) { + var r, n = Object.keys(e); + return Object.getOwnPropertySymbols && (r = Object.getOwnPropertySymbols(e), + t && (r = r.filter(function(t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable + })), + n.push.apply(n, r)), + n + } + function ex(e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}; + t % 2 ? eS(Object(r), !0).forEach(function(t) { + var n, i, o; + n = e, + i = t, + o = r[t], + (i = eE(i))in n ? Object.defineProperty(n, i, { + value: o, + enumerable: !0, + configurable: !0, + writable: !0 + }) : n[i] = o + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : eS(Object(r)).forEach(function(t) { + Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) + }) + } + return e + } + function ew() { + return (ew = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function ek(e, t) { + for (var r = 0; r < t.length; r++) { + var n = t[r]; + n.enumerable = n.enumerable || !1, + n.configurable = !0, + "value"in n && (n.writable = !0), + Object.defineProperty(e, eE(n.key), n) + } + } + function eE(e) { + return e = function(e, t) { + if ("object" !== e_(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== e_(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(e, "string"), + "symbol" === e_(e) ? e : String(e) + } + function eO(e, t) { + return (eO = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function eT(e) { + return (eT = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var eC = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && eO(e, t) + }(c, n.a); + var e, t, r, i, s, a = (e = c, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = eT(e); + return function(e, t) { + if (t && ("object" === e_(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, eT(this).constructor) : r.apply(this, arguments)) + } + ); + function c(e, t) { + var r; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, c), + (r = a.call(this)).options = e, + r.config = t, + r.uploaderCtx = e.context, + r.file = e.file, + r.cacheKey = "__bd_uploader_cache", + r + } + return r = c, + i = [{ + key: "start", + value: function(e, t) { + this._st = Date.now(), + this.uploaderCtx._broadcast("startSelectRoute", null, !0), + this.clientIp = e.clientIp, + this.selectRouteTimeout = e.selectRouteTimeout || 5e3, + this.selectRouteCacheTime = e.selectRouteCacheTime || 36e5, + this.selectRouteFileSize = e.selectRouteFileSize || 0x80000000, + this.completeCallback = t, + (e = this.checkSelect({ + clientIp: this.clientIp + })) ? this.success(e, null, !0) : this.startSelectRoute() + } + }, { + key: "checkSelect", + value: function(e) { + var e = e.clientIp + , t = null; + try { + t = JSON.parse(this.uploaderCtx.storage.getItem(this.cacheKey)) + } catch (e) { + return null + } + if (t) { + var r = t.lastClientIp + , n = t.lastSelectRouteTime; + if (e && e !== r) + return null; + if ((new Date).getTime() - n < this.selectRouteCacheTime) + return t + } + return null + } + }, { + key: "startSelectRoute", + value: function() { + var e = this + , t = this.config.region + , r = new ev + , n = (r.on("complete", function(t) { + if (t.response) + try { + var r, n = JSON.parse(t.response); + n.ResponseMetadata.Error ? e.fail({ + xhr: t, + errorCode: n.ResponseMetadata.Error.CodeN, + error: n.ResponseMetadata.Error.Code, + message: n.ResponseMetadata.Error.Message + }) : (r = n.Result.Domains, + e.race(r, t)) + } catch (r) { + e.fail({ + error: "catch error: ".concat(r.toString()), + xhr: t + }) + } + else + e.fail({ + error: "request fail: ".concat(t.statusText || t.errText || "UNKNOWN"), + xhr: t + }) + }), + r.on("error", function(t) { + var r = { + error: "request fail: ".concat(t.statusText || t.errText || "UNKNOWN"), + xhr: t + }; + t.response && (t = JSON.parse(t.response)).ResponseMetadata && t.ResponseMetadata.Error && (r.errorCode = t.ResponseMetadata.Error.CodeN, + r.error = t.ResponseMetadata.Error.Code, + r.message = t.ResponseMetadata.Error.Message), + e.fail(r) + }), + this.config.videoHost) + , i = this.config.videoConfig && this.config.videoConfig.spaceName + , o = { + Action: "GetUploadCandidates", + Version: "2020-11-19", + SpaceName: i = this.options.type === ei && null != (o = this.config.objectConfig) && o.spaceName ? null == (o = this.config.objectConfig) ? void 0 : o.spaceName : i + } + , i = this.options.stsToken + , s = eh.toQueryString(o) + , a = i.AccessKeyID + , c = i.AccessKeyId + , u = i.SecretAccessKey + , l = i.SessionToken + , i = i.CurrentTime + , n = { + method: "GET", + url: "".concat(n, "?").concat(s), + timeout: this.config.gatewayTimeout, + region: t, + params: o + } + , s = new eb.a(n,"vod") + , t = (this.config.useServerCurrentTime && Math.abs(new Date(i) - new Date) > 6e4 && (this.systemTimeGap = new Date(i) - new Date), + this.systemTimeGap ? new Date((new Date).getTime() + this.systemTimeGap) : new Date); + s.addAuthorization({ + accessKeyId: c || a, + secretAccessKey: u, + sessionToken: l + }, t), + r.send(n) + } + }, { + key: "race", + value: function(e, t) { + var r = this + , n = this.file + , i = (n.slice || n.webkitSlice || n.mozSlice).call(n, 0, Math.min(this.selectRouteFileSize, n.size)) + , s = e.map(function(e) { + return { + domainName: e.Name, + domainInfo: e, + percent: 0, + startTime: (new Date).getTime(), + endTime: (new Date).getTime(), + complete: !1 + } + }) + , a = 0 + , c = s.length; + s.forEach(function(e, n) { + var i = new ev; + i.on("complete", function() { + s[n].endTime = (new Date).getTime(), + s[n].complete = !0, + s.forEach(function(e, t) { + n !== t && e.transport && e.transport.abort() + }), + r.formatRaceInfo(s, t) + }), + i.on("error", function(e) { + s[n].endTime = (new Date).getTime(), + s[n].complete = !0, + s[n].error = e.errText, + c <= ++a && r.formatRaceInfo(s, t) + }), + i.on("progress", function(e) { + e = e.loaded / e.total, + s[n].percent = e + }), + s[n].transport = i + }), + s.forEach(function(e) { + var t = e.domainInfo + , n = { + oid: t.StoreID, + tosDomain: "".concat(r.config.schema, "://").concat(t.Name) + } + , n = "".concat(eh.urlTemplate(o, n), "?speedtest") + , t = t.Sign; + e.transport.send({ + method: "post", + url: n, + headers: { + Authorization: t, + "Content-CRC32": "ignore" + }, + file: i, + binary: 1, + timeout: r.selectRouteTimeout + }) + }) + } + }, { + key: "formatRaceInfo", + value: function(e, t) { + e.sort(function(e, t) { + return e.percent < t.percent ? 1 : e.percent > t.percent ? -1 : e.error ? 1 : t.error ? -1 : 0 + }), + e.forEach(function(e) { + delete e.transport + }), + e = { + lastClientIp: this.clientIp, + lastSelectRouteTime: (new Date).getTime(), + raceInfo: e, + type: "success" + }, + this.uploaderCtx.storage.setItem(this.cacheKey, JSON.stringify(e)), + this.success(e, t) + } + }, { + key: "success", + value: function(e, t) { + var r = 2 < arguments.length && void 0 !== arguments[2] && arguments[2] + , t = t && this.formatXhr(t); + this.uploaderCtx.logger.send(ew(ex(ex({ + stage: "selectRoute", + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + fileSize: this.file && this.file.size + }, t), {}, { + useCache: r + }), e)), + this.uploaderCtx._broadcast("completeSelectRoute", ex(ex({}, e), {}, { + useCache: r + }), !0), + this.completeCallback({ + selectRouteResult: e.raceInfo + }) + } + }, { + key: "fail", + value: function(e) { + var t = { + error: e.error, + errorCode: e.errorCode, + message: e.message + }; + this.uploaderCtx.logger.send(ew(ex({ + stage: "selectRoute", + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + fileSize: this.file && this.file.size, + extra: t, + type: "warn" + }, this.formatXhr(e.xhr)))), + this.uploaderCtx._broadcast("completeSelectRoute", ex({ + type: "warn" + }, t), !0), + this.completeCallback() + } + }, { + key: "formatXhr", + value: function(e) { + return { + req: { + url: e.currentUrl, + param: e.params + }, + res: { + status: e.status, + header: e.getAllResponseHeaders(), + body: e.responseText + } + } + } + }], + ek(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + c + }() + , eD = { + crc32: function(e, t) { + for (var r = [0, 0x77073096, 0xee0e612c, 0x990951ba, 0x76dc419, 0x706af48f, 0xe963a535, 0x9e6495a3, 0xedb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, 0x9b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91, 0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de, 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7, 0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, 0x14015c4f, 0x63066cd9, 0xfa0f3d63, 0x8d080df5, 0x3b6e20c8, 0x4c69105e, 0xd56041e4, 0xa2677172, 0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b, 0x35b5a8fa, 0x42b2986c, 0xdbbbc9d6, 0xacbcf940, 0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59, 0x26d930ac, 0x51de003a, 0xc8d75180, 0xbfd06116, 0x21b4f4b5, 0x56b3c423, 0xcfba9599, 0xb8bda50f, 0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924, 0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d, 0x76dc4190, 0x1db7106, 0x98d220bc, 0xefd5102a, 0x71b18589, 0x6b6b51f, 0x9fbfe4a5, 0xe8b8d433, 0x7807c9a2, 0xf00f934, 0x9609a88e, 0xe10e9818, 0x7f6a0dbb, 0x86d3d2d, 0x91646c97, 0xe6635c01, 0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e, 0x6c0695ed, 0x1b01a57b, 0x8208f4c1, 0xf50fc457, 0x65b0d9c6, 0x12b7e950, 0x8bbeb8ea, 0xfcb9887c, 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65, 0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2, 0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb, 0x4369e96a, 0x346ed9fc, 0xad678846, 0xda60b8d0, 0x44042d73, 0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9, 0x5005713c, 0x270241aa, 0xbe0b1010, 0xc90c2086, 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f, 0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4, 0x59b33d17, 0x2eb40d81, 0xb7bd5c3b, 0xc0ba6cad, 0xedb88320, 0x9abfb3b6, 0x3b6e20c, 0x74b1d29a, 0xead54739, 0x9dd277af, 0x4db2615, 0x73dc1683, 0xe3630b12, 0x94643b84, 0xd6d6a3e, 0x7a6a5aa8, 0xe40ecf0b, 0x9309ff9d, 0xa00ae27, 0x7d079eb1, 0xf00f9344, 0x8708a3d2, 0x1e01f268, 0x6906c2fe, 0xf762575d, 0x806567cb, 0x196c3671, 0x6e6b06e7, 0xfed41b76, 0x89d32be0, 0x10da7a5a, 0x67dd4acc, 0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5, 0xd6d6a3e8, 0xa1d1937e, 0x38d8c2c4, 0x4fdff252, 0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b, 0xd80d2bda, 0xaf0a1b4c, 0x36034af6, 0x41047a60, 0xdf60efc3, 0xa867df55, 0x316e8eef, 0x4669be79, 0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236, 0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f, 0xc5ba3bbe, 0xb2bd0b28, 0x2bb45a92, 0x5cb36a04, 0xc2d7ffa7, 0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d, 0x9b64c2b0, 0xec63f226, 0x756aa39c, 0x26d930a, 0x9c0906a9, 0xeb0e363f, 0x72076785, 0x5005713, 0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0xcb61b38, 0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, 0xbdbdf21, 0x86d3d2d4, 0xf1d4e242, 0x68ddb3f8, 0x1fda836e, 0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777, 0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c, 0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45, 0xa00ae278, 0xd70dd2ee, 0x4e048354, 0x3903b3c2, 0xa7672661, 0xd06016f7, 0x4969474d, 0x3e6e77db, 0xaed16a4a, 0xd9d65adc, 0x40df0b66, 936918e3, 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9, 0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, 0xbad03605, 0xcdd70693, 0x54de5729, 0x23d967bf, 0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94, 0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d], n = ("undefined" != typeof Int32Array && (r = new Int32Array(r)), + -1 ^ ~~t), i = (e = new Uint8Array(e)).length, o = 0; o < i; o++) + n = r[255 & (n ^ e[o])] ^ n >>> 8; + return (-1 ^ n) >>> 0 + }, + dec2hex: function(e) { + if (void 0 !== e) + return function e(t) { + return t.length < 8 ? e(t = "0".concat(t)) : t + }(Number(e).toString(16)) + } + }; + function ej(e) { + return (ej = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function eI(e, t) { + for (var r = 0; r < t.length; r++) { + var n, i = t[r]; + i.enumerable = i.enumerable || !1, + i.configurable = !0, + "value"in i && (i.writable = !0), + Object.defineProperty(e, (n = function(e, t) { + if ("object" !== ej(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== ej(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(n = i.key, "string"), + "symbol" === ej(n) ? n : String(n)), i) + } + } + var eP = function() { + var e, t, r; + function n(e, t, r, i) { + !function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, n), + this.file = e, + this.successProcess = r, + this.failProcess = i, + this.sliceLength = t, + this.retryTime = 0, + this.fileSize = e.size, + this.crc32Array = [] + } + return e = n, + t = [{ + key: "start", + value: function() { + this.readFileCrc32(this.file) + } + }, { + key: "readFileCrc32", + value: function(e) { + var t = this + , r = this.sliceLength + , n = e.slice || e.webkitSlice || e.mozSlice + , i = new FileReader + , o = 0 + , s = 0 + , a = 0; + (function c() { + s < e.size && (s = Math.min(o + r, e.size), + e.size > 0x6400000) && (s = e.size), + i.readAsArrayBuffer(n.call(e, o, s)), + i.onload = function(r) { + r = r.target.result, + a = eD.crc32(r, 0), + t.crc32Array.push({ + start: o, + end: s, + crc32: eD.dec2hex(a), + buffer: r + }), + (o = s) < e.size ? c() : t.success(t.crc32Array) + } + } + )() + } + }, { + key: "success", + value: function(e) { + this.successProcess(e) + } + }, { + key: "fail", + value: function(e, t, r, n) { + 3 <= this.retryTime ? this.failProcess() : (this.readFileCrc32(e, t, r, n), + this.retryTime++) + } + }], + eI(e.prototype, t), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + n + }() + , eA = "The format of stsToken is incorrect."; + function eR(e) { + return (eR = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function ez() { + return (ez = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function eB(e, t) { + (null == t || t > e.length) && (t = e.length); + for (var r = 0, n = Array(t); r < t; r++) + n[r] = e[r]; + return n + } + function eU(e, t) { + for (var r = 0; r < t.length; r++) { + var n, i = t[r]; + i.enumerable = i.enumerable || !1, + i.configurable = !0, + "value"in i && (i.writable = !0), + Object.defineProperty(e, (n = function(e, t) { + if ("object" !== eR(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== eR(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(n = i.key, "string"), + "symbol" === eR(n) ? n : String(n)), i) + } + } + var eM = function() { + var e, t, r; + function n(e) { + var t = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : {}; + !function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, n), + this.context = e.context, + this.key = e.key, + this.isDirect = e.isDirect, + this.isImageBatchUpload = e.isImageBatchUpload, + this.file = e.file, + this.type = (this.isImageBatchUpload ? null == (e = this.file[0]) ? void 0 : e.type : null == (e = this.file) ? void 0 : e.type) || "", + this.sliceLength = eh.getFileSliceLength(this.file, t.getSliceFunc), + this.config = t + } + return e = n, + t = [{ + key: "start", + value: function(e, t, r) { + this.successProcess = t, + this.failProcess = r, + this._st = Date.now(), + this.crc32(this.file, this.sliceLength) + } + }, { + key: "crc32", + value: function(e, t) { + var r = this; + if (this.isImageBatchUpload) + for (var n = e.length, i = [], o = function(t) { + new eP(e[t],e[t].size,function(e) { + i[t] = e[0], + i.filter(function(e) { + return !!e + }).length === n && r.success(i) + } + ,function(e) { + r.fail(e) + } + ).start() + }, s = 0; s < n; s++) + o(s); + else + e && e.size && !(e.size <= 0) ? this.isDirect ? new eP(e,e.size,function(e) { + r.success(e) + } + ,function(e) { + r.fail({ + errorCode: 1000003, + message: "get crc32 error: ".concat(e && e.message) + }) + } + ).start() : this.sliceFile(e, t, function(e) { + r.success(e) + }, function(e) { + r.fail(e) + }) : this.fail({ + errorCode: 1000003, + message: "There is a problem with the input file or fileSize." + }) + } + }, { + key: "sliceFile", + value: function(e, t, r, n) { + for (var i = [], o = e.size, s = e.slice || e.webkitSlice || e.mozSlice, a = 0, c = 0, u = 0; c < o; ) + c = Math.min(a + t, o), + 0x6400000 < o && o - c <= 5242880 && (c = o), + i.push({ + start: a, + end: c, + crc32: 0 + }), + a = c; + try { + !function t(a) { + var c = new FileReader + , l = i[a].start + , f = i[a].end; + c.readAsArrayBuffer(s.call(e, l, f)), + c.onload = function(e) { + e = e.target.result, + u = eD.dec2hex(eD.crc32(e, 0)), + i[a].crc32 = u, + f === o ? r(i) : t(i.length - 1) + } + , + c.onerror = function(e) { + var t = e.target.error.name + , e = e.target.error.message; + n({ + crc32Array: i, + errorCode: 1000003, + message: "".concat(t, ": ").concat(e) + }) + } + }(0) + } catch (e) { + n({ + message: e && e.toString() + }) + } + } + }, { + key: "getCrc32Key", + value: function(e, t) { + var r; + return (t = "[object Array]" === Object.prototype.toString.call(t) ? function(e) { + if (Array.isArray(e)) + return eB(e) + }(r = t) || function(e) { + if ("undefined" != typeof Symbol && null != e[Symbol.iterator] || null != e["@@iterator"]) + return Array.from(e) + }(r) || function(e, t) { + var r; + if (e) + return "string" == typeof e ? eB(e, void 0) : "Map" === (r = "Object" === (r = Object.prototype.toString.call(e).slice(8, -1)) && e.constructor ? e.constructor.name : r) || "Set" === r ? Array.from(e) : "Arguments" === r || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r) ? eB(e, t) : void 0 + }(r) || function() { + throw TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") + }() : [t]).push(e[0].crc32, e[e.length - 1].crc32), + this.config.instanceId && t.push(this.config.instanceId), + t.join("_") + } + }, { + key: "success", + value: function(e) { + var t = this.context + , r = this.key + , n = [] + , i = []; + if (this.isImageBatchUpload) + for (var o = 0; o < this.file.length; o++) + n.push(this.file[o].size), + i.push(this.file[o].name); + else + n = this.file.size, + i = this.file.name; + var s = this.getCrc32Key(e, n) + , t = t.tasks[r]; + t && this.successProcess(ez(t, { + key: r, + crc32Array: e, + crc32Key: s, + sdkVersion: "2.0.9", + sliceLength: this.sliceLength, + extra: { + message: "get crc32 success" + }, + stage: "crc32", + type: "success", + fileSize: n, + fileName: i, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st, + isDirect: this.isDirect, + isImageBatchUpload: this.isImageBatchUpload + })) + } + }, { + key: "fail", + value: function(e) { + var t = this.context + , r = this.key + , n = e && e.message ? e.message : "get crc32 error" + , i = e && e.errorCode + , e = e && e.crc32Array + , t = ez(t.tasks[r], { + crc32Array: e, + extra: { + message: n, + errorCode: i + }, + type: "error", + stage: "crc32", + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + }); + this.failProcess(t) + } + }], + eU(e.prototype, t), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + n + }() + , eG = { + checkStsToken: function(e) { + return !e || e.SessionToken && e.SecretAccessKey && (e.AccessKeyId || e.AccessKeyID) + }, + checkServiceName: function(e, t, r) { + if ("vod" === r || r === es) + return r; + if (e !== er) { + if (e === en) + return es; + if (e === ei) { + if (t.objectConfig && t.objectConfig.spaceName) + return "vod"; + if (t.objectConfig && t.objectConfig.serviceId) + return es; + if (t.videoConfig && t.videoConfig.spaceName) + return "vod"; + if (t.imageConfig && t.imageConfig.serviceId) + return es + } + } + return "vod" + } + }; + function eF(e) { + return (eF = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function eN(e, t) { + var r, n = Object.keys(e); + return Object.getOwnPropertySymbols && (r = Object.getOwnPropertySymbols(e), + t && (r = r.filter(function(t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable + })), + n.push.apply(n, r)), + n + } + function eH() { + return (eH = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function eL(e, t) { + for (var r = 0; r < t.length; r++) { + var n = t[r]; + n.enumerable = n.enumerable || !1, + n.configurable = !0, + "value"in n && (n.writable = !0), + Object.defineProperty(e, eK(n.key), n) + } + } + function eK(e) { + return e = function(e, t) { + if ("object" !== eF(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== eF(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(e, "string"), + "symbol" === eF(e) ? e : String(e) + } + function eq(e, t) { + return (eq = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function eV(e) { + return (eV = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var eW = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && eq(e, t) + }(a, n.a); + var e, t, r, i, o, s = (e = a, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = eV(e); + return function(e, t) { + if (t && ("object" === eF(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, eV(this).constructor) : r.apply(this, arguments)) + } + ); + function a(e, t) { + var r; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, a), + (r = s.call(this)).options = e, + r.config = t, + r.uploaderCtx = e.context, + r.currFileCtx = e.context.tasks[e.key], + r.systemTimeGap = 0, + r.retryTime = t.retryTaskTime, + r.hasRetryTime = 0, + r.isImageBatchUpload = !!r.options.isImageBatchUpload, + r.isDirect = r.options.isDirect, + r.serviceName = eG.checkServiceName(r.options.type, r.config, r.options.serviceType), + r + } + return r = a, + i = [{ + key: "start", + value: function(e, t, r) { + this.startOptions = e, + this.failProcess = r, + this.successProcess = t, + this._st = Date.now(), + r = (e = this.uploaderCtx._getCache(this.currFileCtx.crc32Key)) ? JSON.parse(e) : {}, + !this.isDirect && r.oid && r.UploadID ? this.resumeFromCache(r) : this.startPreUpload() + } + }, { + key: "startPreUpload", + value: function() { + var e = this + , t = this.config.region + , r = new ev + , n = (r.on("complete", function(t) { + e.success(t) + }), + r.on("error", function(t) { + e.handleError(t) + }), + "") + , i = {} + , o = this.uploaderCtx.useBackupDomain + , s = eG.checkServiceName(this.options.type, this.config, this.options.serviceType) + , i = s === es ? (n = o ? this.config.imageFallbackHost : this.config.imageHost, + this.createImageXParams()) : (n = o ? this.config.videoFallbackHost : this.config.videoHost, + this.createVodParams()) + , o = (this.currFileCtx.fileSize && (i.FileSize = this.currFileCtx.fileSize), + this.config.useFileExtension && this.currFileCtx.fileName && (this.options.type === ei || this.options.type === en) && (o = this.currFileCtx.fileName, + o = eh.getFileSuffix(o)) && (i.FileExtension = o), + this.options.fileExtension && (i.FileExtension = this.options.fileExtension), + this.config.accountId && (i["X-Account-Id"] = this.config.accountId), + this.options.type !== er && this.config.bizType && (i.BizType = this.config.bizType, + i.AppID = this.config.appId, + i.UserID = this.config.userId), + this.config.openExperiment && (i.app_id = this.config.appId, + i.user_id = this.config.userId), + i.s = Math.random().toString(36).substring(2), + this.options.fileSize && (i.FileSize = this.options.fileSize), + this.currFileCtx.proxyStsToken || this.config.stsToken) + , a = eh.toQueryString(i) + , c = o.AccessKeyID + , u = o.AccessKeyId + , l = o.SecretAccessKey + , f = o.SessionToken + , o = o.CurrentTime + , a = { + method: "GET", + url: "".concat(n, "?").concat(a), + timeout: this.config.gatewayTimeout || 0, + region: t, + params: i, + pathname: eh.getPathByURL(n) + } + , t = new eb.a(a,s) + , i = (this.config.useServerCurrentTime && Math.abs(new Date(o) - new Date) > 6e4 && (this.systemTimeGap = new Date(o) - new Date), + this.systemTimeGap ? new Date((new Date).getTime() + this.systemTimeGap) : new Date); + t.addAuthorization({ + accessKeyId: u || c, + secretAccessKey: l, + sessionToken: f + }, i), + r.send(a) + } + }, { + key: "createImageXParams", + value: function() { + var e, t = { + Action: "ApplyImageUpload", + Version: "2018-08-01" + }; + return this.options.type === en && (this.config.imageConfig && this.config.imageConfig.serviceId ? t.ServiceId = this.config.imageConfig.serviceId : t.SpaceName = this.config.videoConfig && this.config.videoConfig.spaceName), + this.options.type === ei && (t.ServiceId = this.config.objectConfig && this.config.objectConfig.serviceId || this.config.imageConfig && this.config.imageConfig.serviceId), + this.currFileCtx.fileSize && 1 < this.currFileCtx.fileSize.length && (t.UploadNum = this.currFileCtx.fileSize.length), + this.options.storeKey && (e = this.options.storeKey, + "[object Array]" === Object.prototype.toString.call(e) ? t.StoreKeys = e : "[object String]" === Object.prototype.toString.call(e) && (t.StoreKeys = [e])), + t + } + }, { + key: "createVodParams", + value: function() { + var e = this.config.videoConfig && this.config.videoConfig.spaceName + , t = { + Action: "ApplyUploadInner", + Version: "2020-11-19", + SpaceName: e = this.options.type === ei && null != (t = this.config.objectConfig) && t.spaceName ? null == (t = this.config.objectConfig) ? void 0 : t.spaceName : e, + FileType: this.options.type, + IsInner: 1 + }; + return this.config.enOID && (t.EnOID = 1), + (this.options.testHost || this.config.testHost) && (t.TestHost = this.options.testHost || this.config.testHost), + this.startOptions && this.startOptions.selectRouteResult && (e = this.startOptions.selectRouteResult, + t.ClientBestHosts = e.map(function(e) { + return e.domainName + }).join(",")), + t + } + }, { + key: "resumeFromCache", + value: function(e) { + var t = this + , r = this.options.key + , n = new ev + , i = (n.on("complete", function(n) { + var i = null; + try { + var o = JSON.parse(n.response); + if (!(2e3 === o.code && 0 < o.data.partlist.length)) + return t.startPreUpload(); + var s = t.confirmCache(o.data.partlist) + , a = e.hasMerge ? 5 : s.isAllFinished ? 4 : 3 + , i = eH(t.currFileCtx, e, { + key: r, + xhr: n, + extra: { + message: "prepare upload from cache success" + }, + stage: "preUpload", + type: "success", + percent: 0, + cacheTask: a, + proxyStsToken: t.options.stsToken, + currentTask: 1, + status: 1, + isBreak: 1, + crc32Array: s.crc32Array, + stageStartTime: t._st, + stageEndTime: Date.now(), + duration: Date.now() - t._st, + totalDuration: Date.now() - t._st + t.currFileCtx.totalDuration + }) + } catch (e) { + return t.startPreUpload() + } + t.successProcess(i) + }), + n.on("error", function(e) { + e.status >= 400 ? t.startPreUpload() : t.fail({ + error: "request error", + xhr: e + }) + }), + this.config.userId); + n.send({ + method: "get", + url: eh.urlTemplate("{tosDomain}/upload/v1/{oid}?uploadid={uploadId}&action=part_list", { + tosDomain: e.tosDomain, + oid: e.oid, + uploadId: e.UploadID + }), + headers: function(e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}; + t % 2 ? eN(Object(r), !0).forEach(function(t) { + var n, i, o; + n = e, + i = t, + o = r[t], + (i = eK(i))in n ? Object.defineProperty(n, i, { + value: o, + enumerable: !0, + configurable: !0, + writable: !0 + }) : n[i] = o + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : eN(Object(r)).forEach(function(t) { + Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) + }) + } + return e + }({ + Authorization: e.signature, + "X-Storage-U": encodeURIComponent(i) + }, e.UploadHeader), + timeout: 3e4 + }) + } + }, { + key: "confirmCache", + value: function(e) { + var t = this.currFileCtx.crc32Array + , r = {} + , n = (e.forEach(function(e) { + void 0 === r[e.num - 1] && (r[e.num - 1] = { + tag: !0, + crc32: e.crc32 + }) + }), + !0) + , e = t.map(function(e, t) { + return r[t] && r[t].tag && r[t].crc32 ? (e.crc32 = r[t].crc32, + e.finished = !0, + e.loaded = e.end - e.start) : n = !1, + e + }); + return { + isAllFinished: n, + crc32Array: e + } + } + }, { + key: "handleError", + value: function(e) { + if ((this.options.type === en && this.config.imageFallbackHost || this.options.type === er && this.config.videoFallbackHost) && !this.uploaderCtx.useBackupDomain) + this.hasRetryTime < this.retryTime - 1 ? this.hasRetryTime++ : this.uploaderCtx.useBackupDomain = !0, + this.startPreUpload(); + else { + var t = { + error: "request fail: ".concat(e.statusText || e.errText || "UNKNOWN"), + xhr: e + }; + if (e.response) + try { + var r = JSON.parse(e.response); + r.ResponseMetadata && r.ResponseMetadata.Error && (t.errorCode = r.ResponseMetadata.Error.CodeN, + t.error = r.ResponseMetadata.Error.Code, + t.message = r.ResponseMetadata.Error.Message) + } catch (r) { + t.error = e.response.toString(), + t.message = e.response.toString() + } + this.fail(t) + } + } + }, { + key: "success", + value: function(e) { + if (e.response) { + var t = null; + try { + var r = JSON.parse(e.response); + if (r.ResponseMetadata.Error) + return this.fail({ + xhr: e, + errorCode: r.ResponseMetadata.Error.CodeN, + error: r.ResponseMetadata.Error.Code, + message: r.ResponseMetadata.Error.Message + }); + var n, i, o, s, a, c, u, l = this.serviceName, f = r.Result, p = l === es ? f.UploadAddress : f.InnerUploadAddress.UploadNodes[0], h = p.StoreInfos, d = p.UploadHosts, g = p.SessionKey, y = p.UploadHeader, m = l === es ? d[0] : p.UploadHost, v = null == (n = h[0]) ? void 0 : n.UploadID, b = [], _ = []; + this.isImageBatchUpload && 1 < h.length ? h.forEach(function(e) { + b.push(e.Auth), + _.push(e.StoreUri) + }) : (b = h[0].Auth, + _ = h[0].StoreUri), + "vod" === l && (i = f.InnerUploadAddress.UploadNodes).length && 1 < i.length && (s = { + SessionKey: (o = i[1]).SessionKey, + UploadHeader: o.UploadHeader, + StoreInfo: o.StoreInfos[0], + UploadHost: o.UploadHost + }), + this.startOptions && this.startOptions.enableSelectRoute && (u = !0, + this.startOptions.selectRouteResult) && (c = !(((a = this.startOptions.selectRouteResult)[0] && a[0].domainName) !== m)), + t = eH(this.currFileCtx, { + key: this.options.key, + useBackupDomain: this.uploaderCtx.useBackupDomain, + signature: b, + type: "success", + extra: { + message: "prepare upload success" + }, + stage: "preUpload", + oid: _, + systemTimeGap: this.systemTimeGap, + tosDomain: "".concat(this.config.schema, "://").concat(m), + xhr: e, + UploadHeader: void 0 === y ? {} : y, + SessionKey: g, + UploadID: v, + fallbackStoreInfo: s, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currFileCtx.totalDuration, + useClientSelectRouteResult: c, + enableSelectRoute: u + }) + } catch (t) { + return this.fail({ + error: "catch error: ".concat(t.message || t.toString()), + xhr: e + }) + } + return this.successProcess(t) + } + return this.fail({ + error: "request fail: ".concat(e.statusText || e.errText || "UNKNOWN"), + xhr: e + }) + } + }, { + key: "fail", + value: function(e) { + var t = this + , r = e.xhr + , n = e.errorCode || 1001e3 + , i = "prepare upload error: UNKNOWN" + , i = (r && (i = 0 === r.status ? "prepare upload error: NETERROR" : e.message || "prepare upload error: ".concat(r.status)), + eH(this.currFileCtx, { + extra: { + message: i, + error: e.error, + errorCode: n + }, + type: "error", + stage: "preUpload", + xhr: r, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currFileCtx.totalDuration + })); + this.isImageBatchUpload && (i.successImage = [], + i.failImage = null == (e = this.currFileCtx) ? void 0 : e.crc32Array.map(function(e, r) { + return { + crc32: e.crc32, + fileSize: null == (e = t.currFileCtx) ? void 0 : e.fileSize[r], + fileName: null == (e = t.currFileCtx) ? void 0 : e.fileName[r], + finishSize: 0, + success: !1 + } + })), + this.uploaderCtx._removeTaskCache(this.options.key), + this.failProcess(i) + } + }], + eL(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + a + }(); + function eJ(e) { + return (eJ = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function eQ(e, t) { + var r, n = Object.keys(e); + return Object.getOwnPropertySymbols && (r = Object.getOwnPropertySymbols(e), + t && (r = r.filter(function(t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable + })), + n.push.apply(n, r)), + n + } + function eX() { + return (eX = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function e$(e, t) { + for (var r = 0; r < t.length; r++) { + var n = t[r]; + n.enumerable = n.enumerable || !1, + n.configurable = !0, + "value"in n && (n.writable = !0), + Object.defineProperty(e, eZ(n.key), n) + } + } + function eZ(e) { + return e = function(e, t) { + if ("object" !== eJ(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== eJ(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(e, "string"), + "symbol" === eJ(e) ? e : String(e) + } + function eY(e, t) { + return (eY = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function e0(e) { + return (e0 = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var e1 = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && eY(e, t) + }(a, n.a); + var e, t, r, i, o, s = (e = a, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = e0(e); + return function(e, t) { + if (t && ("object" === eJ(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, e0(this).constructor) : r.apply(this, arguments)) + } + ); + function a(e, t) { + var r; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, a), + (r = s.call(this)).options = e, + r.config = t, + r.transport = new ev, + r.uploaderCtx = e.context, + r.currFileCtx = e.context.tasks[e.key], + r.eventInit(), + r + } + return r = a, + i = [{ + key: "initUpload", + value: function(e) { + e && (e = this.currFileCtx.fallbackStoreInfo) && eX(this.currFileCtx, { + oid: e.StoreInfo.StoreUri, + tosDomain: "".concat(this.config.schema, "://").concat(e.UploadHost), + signature: e.StoreInfo.Auth, + UploadHeader: e.UploadHeader, + SessionKey: e.SessionKey + }); + var e = { + oid: this.currFileCtx.oid, + tosDomain: this.currFileCtx.tosDomain + } + , e = eh.urlTemplate("{tosDomain}/upload/v1/{oid}?uploadmode=part&phase=init", e) + , t = this.config.userId; + this.transport.send({ + method: "post", + url: e, + headers: function(e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}; + t % 2 ? eQ(Object(r), !0).forEach(function(t) { + var n, i, o; + n = e, + i = t, + o = r[t], + (i = eZ(i))in n ? Object.defineProperty(n, i, { + value: o, + enumerable: !0, + configurable: !0, + writable: !0 + }) : n[i] = o + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : eQ(Object(r)).forEach(function(t) { + Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) + }) + } + return e + }({ + Authorization: this.currFileCtx.signature, + "X-Storage-U": encodeURIComponent(t) + }, this.currFileCtx.UploadHeader), + timeout: this.config.gatewayTimeout + }) + } + }, { + key: "start", + value: function(e, t, r) { + this.successProcess = t, + this.failProcess = r, + this._st = Date.now(), + this.initUpload(e && e.changeNodeRetry) + } + }, { + key: "eventInit", + value: function() { + var e = this; + this.transport.on("complete", function(t) { + var r = null; + try { + var n, i = JSON.parse(t.response), o = null == (n = i.data) ? void 0 : n.uploadid; + if (2e3 !== i.code || !o) + return e.fail({ + error: "fail! response.code: ".concat(i.code, ", fail message: ").concat(i.message), + xhr: t, + errorCode: null == i ? void 0 : i.code + }); + r = eX(e.currFileCtx, { + UploadID: o, + percent: 0, + type: "success", + extra: { + message: "init upload id success" + }, + stage: "initUploadID", + xhr: t, + stageStartTime: e._st, + stageEndTime: Date.now(), + duration: Date.now() - e._st, + totalDuration: Date.now() - e._st + e.currFileCtx.totalDuration + }) + } catch (r) { + return e.fail({ + error: "catch error: ".concat(r.message || JSON.stringify(r)), + xhr: t + }) + } + return e.successProcess(r) + }), + this.transport.on("error", function(t) { + e.fail({ + error: "request fail: ".concat(t.statusText || t.errText || "UNKNOWN"), + xhr: t + }) + }) + } + }, { + key: "fail", + value: function(e) { + var t = this.options.context + , r = this.options.key + , t = eX(t.tasks[r], { + extra: { + message: "init upload id error, ".concat(e.error), + errorCode: e.errorCode || 1002e3 + }, + type: "error", + stage: "initUploadID", + xhr: e.xhr, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currFileCtx.totalDuration + }); + this.uploaderCtx._removeTaskCache(this.options.key), + this.failProcess(t) + } + }], + e$(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + a + }(); + function e2(e) { + return (e2 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function e3(e, t) { + var r, n = Object.keys(e); + return Object.getOwnPropertySymbols && (r = Object.getOwnPropertySymbols(e), + t && (r = r.filter(function(t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable + })), + n.push.apply(n, r)), + n + } + function e4(e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}; + t % 2 ? e3(Object(r), !0).forEach(function(t) { + var n, i, o; + n = e, + i = t, + o = r[t], + (i = e6(i))in n ? Object.defineProperty(n, i, { + value: o, + enumerable: !0, + configurable: !0, + writable: !0 + }) : n[i] = o + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : e3(Object(r)).forEach(function(t) { + Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) + }) + } + return e + } + function e5(e, t) { + for (var r = 0; r < t.length; r++) { + var n = t[r]; + n.enumerable = n.enumerable || !1, + n.configurable = !0, + "value"in n && (n.writable = !0), + Object.defineProperty(e, e6(n.key), n) + } + } + function e6(e) { + return e = function(e, t) { + if ("object" !== e2(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== e2(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(e, "string"), + "symbol" === e2(e) ? e : String(e) + } + function e8(e, t) { + return (e8 = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function e7(e) { + return (e7 = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var e9 = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && e8(e, t) + }(a, n.a); + var e, t, r, i, o, s = (e = a, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = e7(e); + return function(e, t) { + if (t && ("object" === e2(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, e7(this).constructor) : r.apply(this, arguments)) + } + ); + function a(e) { + var t, r = e.sliceItem, n = e.crc32, i = e.url, o = e.signature, c = e.uploadHeader, u = e.userId, l = e.retryTime, f = e.timeout, e = e.method, e = void 0 === e ? "POST" : e; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, a), + (t = s.call(this)).fileSlice = r, + t.crc32 = n, + t.uploadUrl = i, + t.uploadHeader = c, + t.signature = o, + t.userId = u, + t.retryTime = l || 0, + t.method = e, + t.retryCount = 0, + t.timeout = f, + t.ready = !1, + t.cancel = !1, + t.transport = new ev, + t.eventInit(), + t + } + return r = a, + i = [{ + key: "upload", + value: function(e, t) { + this.isParamsValid() && (this._st = Date.now(), + this.transport && this.transport.send({ + method: this.method, + url: this.uploadUrl, + headers: e4({ + Authorization: this.signature, + "Content-CRC32": this.crc32, + "X-Storage-U": encodeURIComponent(this.userId) + }, this.uploadHeader), + file: this.fileSlice, + binary: 1, + timeout: this.timeout + }), + e) && this.emit("retry", t) + } + }, { + key: "isParamsValid", + value: function() { + return this.fileSlice && (this.fileSlice.size || this.fileSlice.byteLength) ? this.crc32 ? !!this.uploadUrl || (this.emit("error", { + message: "slice upload failed: NOURL", + crc32: this.crc32, + size: this.fileSlice.size || this.fileSlice.byteLength + }), + !1) : (this.emit("error", { + message: "slice upload failed: NOCRC32", + crc32: this.crc32, + size: this.fileSlice.size || this.fileSlice.byteLength + }), + !1) : (this.emit("error", { + message: "slice upload failed: NOCONTENT", + crc32: this.crc32 + }), + !1) + } + }, { + key: "eventInit", + value: function() { + var e = this; + this.transport.on("complete", function(t) { + try { + var r = JSON.parse(t.response); + 2e3 === r.code ? e.success(t) : e.fail(t, r) + } catch (r) { + e.fail(t) + } + }), + this.transport.on("error", function(t) { + e.fail(t) + }), + this.transport.on("progress", function(t) { + e.process(t) + }) + } + }, { + key: "success", + value: function(e) { + this.ready = !0; + var t = Date.now() - this._st + , r = this.fileSlice.size || this.fileSlice.byteLength; + this.emit("complete", { + crc32: this.crc32, + size: r, + speed: r / t, + xhr: e, + sliceStartTime: this._st, + sliceEndTime: Date.now(), + sliceDuration: Date.now() - this._st + }) + } + }, { + key: "fail", + value: function(e) { + var t, r, n = this, i = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : null; + this.cancel || (t = { + crc32: this.crc32, + size: this.fileSlice.size || this.fileSlice.byteLength, + xhr: e, + sliceStartTime: this._st, + sliceEndTime: Date.now(), + sliceDuration: Date.now() - this._st + }, + e && 401 === e.status ? this.emit("error", e4({ + message: "slice upload failed: UNAUTHORIZED" + }, t)) : (r = "slice upload failed: UNKNOWN", + e && (r = e.status ? "slice upload failed: ".concat((null == i ? void 0 : i.message) || e.status) : "slice upload failed: NETERROR"), + this.retryCount < this.retryTime ? (setTimeout(function() { + n.upload(!0, e4({ + message: r + }, t)) + }, 1e3), + this.retryCount++) : this.emit("error", e4({ + message: r, + errorCode: null == i ? void 0 : i.code + }, t)))) + } + }, { + key: "process", + value: function(e) { + this.cancel || this.emit("progress", { + crc32: this.crc32, + loaded: e.loaded || 0, + total: e.total || 0 + }) + } + }, { + key: "abort", + value: function() { + this.transport && (this.cancel = !0, + this.transport.abort()) + } + }, { + key: "destroy", + value: function() { + this.transport = null + } + }], + e5(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + a + }() + , $ = r(2) + , te = r.n($); + function tt(e) { + return (tt = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function tr() { + return (tr = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function tn(e, t) { + (null == t || t > e.length) && (t = e.length); + for (var r = 0, n = Array(t); r < t; r++) + n[r] = e[r]; + return n + } + function ti(e, t) { + for (var r = 0; r < t.length; r++) { + var n, i = t[r]; + i.enumerable = i.enumerable || !1, + i.configurable = !0, + "value"in i && (i.writable = !0), + Object.defineProperty(e, (n = function(e, t) { + if ("object" !== tt(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== tt(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(n = i.key, "string"), + "symbol" === tt(n) ? n : String(n)), i) + } + } + function to(e, t) { + return (to = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function ts(e) { + return (ts = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var ta = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && to(e, t) + }(c, n.a); + var e, t, r, o, s, a = (e = c, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = ts(e); + return function(e, t) { + if (t && ("object" === tt(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, ts(this).constructor) : r.apply(this, arguments)) + } + ); + function c(e) { + var t, r = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : {}; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, c), + (t = a.call(this)).file = e.file, + t.context = e.context, + t.key = e.key, + t.config = r, + t.finishArr = [], + t.errorLength = 0, + t.finishSize = 0, + t.retryUploadTime = Number(r.retryUploadTime), + t.progressMonitorTime = Number(r.progressMonitorTime), + t.progressMonitorSpeed = Number(r.progressMonitorSpeed), + t.uploadSliceCount = Number(r.uploadSliceCount), + t.realtimeSpeedInterval = Number(r.realtimeSpeedInterval), + t.processRetry = 0, + t.lastFinishSize = -1, + t.lastProcessPercent = -1, + t.lastIntervalSize = -1, + t.lastCalculateSpeedTime = -1, + t.lastCalculateSpeedSize = 0, + t.uploadHandlers = {}, + t + } + return r = c, + o = [{ + key: "start", + value: function(e, t, r) { + this.failProcess = r, + this.successProcess = t, + this.errorLength = 0, + this.currentCtx = this.context.tasks[this.key], + this.crc32Array = this.context.tasks[this.key].crc32Array, + this.uploadSliceCount = this.uploadSliceCount > this.crc32Array.length ? this.crc32Array.length : this.uploadSliceCount, + this.lastIndex = 0, + this.uploading = [], + this._uploadSize = this.crc32Array.reduce(function(e, t) { + return e + (t.finished ? 0 : t.end - t.start) + }, 0), + this._st = Date.now(), + this._lastSaveTime = Date.now(), + this.lastCalculateSpeedTime = this._st, + this.initWorker(), + this.setProgressMonitor(), + this.threadUpload() + } + }, { + key: "initWorker", + value: function() { + var e, t = this; + this.worker || (e = this.crc32Array, + this.worker = new te.a, + this.worker.onmessage = function(r) { + var n, i, r = (n = r.data, + i = 4, + function(e) { + if (Array.isArray(e)) + return e + }(n) || function(e, t) { + var r = null == e ? null : "undefined" != typeof Symbol && e[Symbol.iterator] || e["@@iterator"]; + if (null != r) { + var n, i, o, s, a = [], c = !0, u = !1; + try { + if (o = (r = r.call(e)).next, + 0 === t) { + if (Object(r) !== r) + return; + c = !1 + } else + for (; !(c = (n = o.call(r)).done) && (a.push(n.value), + a.length !== t); c = !0) + ; + } catch (e) { + u = !0, + i = e + } finally { + try { + if (!c && null != r.return && (s = r.return(), + Object(s) !== s)) + return + } finally { + if (u) + throw i + } + } + return a + } + }(n, 4) || function(e, t) { + var r; + if (e) + return "string" == typeof e ? tn(e, t) : "Map" === (r = "Object" === (r = Object.prototype.toString.call(e).slice(8, -1)) && e.constructor ? e.constructor.name : r) || "Set" === r ? Array.from(e) : "Arguments" === r || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r) ? tn(e, t) : void 0 + }(n, i) || function() { + throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") + }()), o = r[0], s = r[1], a = r[2], r = r[3], c = (new Date).getTime(), u = e[a]; + u.crc32 = s, + u.crc32StartTime = r, + u.crc32EndTime = c, + u.crc32Duration = c - r, + t.upload(u, o, a) + } + ) + } + }, { + key: "read", + value: function(e, t) { + var r = this + , n = this.file + , i = n.slice || n.webkitSlice || n.mozSlice + , o = new FileReader; + o.onload = function(e) { + var n = (new Date).getTime(); + r.worker.postMessage([e.target.result, t, n, !!r.config.clientEncrypt, r.currentCtx.clientEncryptKey, r.crc32Array.length - 1 === t], [e.target.result]) + } + , + o.onerror = function() { + r.stop(), + r.fail({ + extra: { + message: "An error occurred reading the file", + errorCode: 1003003 + } + }) + } + , + o.readAsArrayBuffer(i.call(n, e.start, e.end)) + } + }, { + key: "threadUpload", + value: function() { + if (this.uploading.length < this.uploadSliceCount) { + var e = this.lastIndex + , t = this.crc32Array[e]; + if (t) { + if (t.finished) { + if (-1 === this.finishArr.indexOf(t.start) && (this.finishArr.push(t.start), + this.finishArr.length >= this.crc32Array.length)) + return this.stop(), + void this.success() + } else + t.loaded = 0, + this.uploading.push(e), + this.read(t, e); + this.lastIndex++, + this.threadUpload() + } + } + } + }, { + key: "stop", + value: function() { + var e = this; + Object.keys(this.uploadHandlers).forEach(function(t) { + e.uploadHandlers[t].abort(), + e.uploadHandlers[t].destroy() + }), + this.uploadHandlers = {}, + this.worker && this.worker.terminate(), + this.worker = null, + this.clearMonitor() + } + }, { + key: "setProgressMonitor", + value: function() { + var e = this; + this.progressMonitorInterval = setInterval(function() { + var t, r = e.finishSize; + r - e.lastIntervalSize < e.progressMonitorTime / 1e3 * e.progressMonitorSpeed * 1024 ? (t = tr(e.currentCtx, { + stage: "process", + type: "warn", + extra: { + message: "percent are not updated in ".concat(e.progressMonitorTime, " seconds") + } + }), + e.context.logger.send(t), + e.context._broadcast("slowProgress", t), + e.clearMonitor()) : e.lastIntervalSize = r + }, this.progressMonitorTime) + } + }, { + key: "clearMonitor", + value: function() { + this.progressMonitorInterval && clearInterval(this.progressMonitorInterval) + } + }, { + key: "upload", + value: function(e, t, r) { + var n = this + , o = e.crc32 + , s = { + part_number: r + 1, + uploadId: this.currentCtx.UploadID, + oid: this.currentCtx.oid, + tosDomain: this.currentCtx.tosDomain + } + , s = eh.urlTemplate(i, s) + , a = this.config.userId + , t = (this.config.clientEncrypt || (t = eh.fileSlice(this.file, e.start, e.end)), + new e9({ + sliceItem: t, + crc32: o, + url: s, + signature: this.currentCtx.signature, + uploadHeader: this.currentCtx.UploadHeader, + userId: a, + method: "POST", + retryTime: this.retryUploadTime, + timeout: this.config.uploadTimeout + })); + t.on("complete", function(t) { + 1 === n.currentCtx.status && (t.start = e.start, + t.crc32StartTime = e.crc32StartTime, + t.crc32EndTime = e.crc32EndTime, + t.crc32Duration = e.crc32Duration, + t.index = r, + n.fileSliceSuccess(t)) + }), + t.on("error", function(t) { + 1 === n.currentCtx.status && (t.start = e.start, + t.crc32StartTime = e.crc32StartTime, + t.crc32EndTime = e.crc32EndTime, + t.crc32Duration = e.crc32Duration, + t.index = r, + n.fail(t)) + }), + t.on("progress", function(t) { + 1 === n.currentCtx.status && (t.start = e.start, + t.index = r, + n.process(t)) + }), + t.on("retry", function(t) { + 1 === n.currentCtx.status && (t.start = e.start, + t.index = r, + n.retry(t)) + }), + t.upload(), + this.uploadHandlers[r] = t + } + }, { + key: "success", + value: function(e) { + this.finishArr = []; + var t = Date.now() - this._st + , t = this._uploadSize / t + , t = tr(this.currentCtx, { + type: "success", + stage: "process", + percent: 100, + extra: { + message: "upload all success" + }, + speed: t, + xhr: e, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._lastSaveTime + this.currentCtx.totalDuration, + isAllFinish: !0 + }); + this.worker && this.worker.terminate(), + this.successProcess(t) + } + }, { + key: "fail", + value: function(e) { + var t = this.errorFormat(e); + t.type = "error", + void 0 !== e.statusCode && tr(this.currentCtx, { + statusCode: e.statusCode + }), + this.errorLength || (this.context.logger.send(tr({}, t)), + this.stop(), + this.context._broadcast("error", t), + this.currentCtx.isBreak ? this.context._cancel(this.key) : this.context._pause(this.key), + this.errorLength++) + } + }, { + key: "retry", + value: function(e) { + e = this.errorFormat(e), + this.context.logger.send(tr({}, e, { + type: "retry" + })) + } + }, { + key: "fileSliceSuccess", + value: function(e) { + var t, r = e.index, n = Date.now(), i = (-1 === this.finishArr.indexOf(e.start) && this.finishArr.push(e.start), + this.crc32Array[r].finished = !0, + this.crc32Array[r].speed = e.speed, + { + message: "slice upload success" + }); + e.xhr && (t = e.xhr, + i.currentUrl = t.currentUrl || "", + tr(this.currentCtx, { + req: { + url: t.currentUrl, + param: t.params + }, + res: { + status: t.status, + body: t.responseText, + header: t.getAllResponseHeaders() + } + }), + delete e.xhr), + this.context.logger.send(tr(this.currentCtx, { + stage: "process", + type: "success", + sliceIndex: r, + extra: i, + totalDuration: n - this._lastSaveTime + this.currentCtx.totalDuration, + sliceStartTime: e.sliceStartTime, + sliceEndTime: e.sliceEndTime, + sliceDuration: e.sliceDuration, + crc32StartTime: e.crc32StartTime, + crc32EndTime: e.crc32EndTime, + crc32Duration: e.crc32Duration + })), + this._lastSaveTime = n, + this.uploading.splice(this.uploading.indexOf(r), 1), + this.uploadHandlers[r] && delete this.uploadHandlers[r], + this.finishArr.length >= this.crc32Array.length ? (this.stop(), + this.success(e.xhr)) : this.threadUpload() + } + }, { + key: "getFinishSize", + value: function(e, t) { + var r = t.crc32 + , n = 0; + return e.forEach(function(e) { + e.crc32 === r ? (e.loaded = t.loaded, + n += t.loaded) : (e.loaded || (e.loaded = 0), + n += e.loaded) + }), + n + } + }, { + key: "process", + value: function(e) { + var t = this.currentCtx.realtimeSpeed || 0 + , r = this.currentCtx.fileSize + , n = (this.finishSize = this.getFinishSize(this.crc32Array, e), + this.finishSize > this.lastFinishSize && ((e = new Date).getTime() - this.lastCalculateSpeedTime > this.realtimeSpeedInterval && (i = e.getTime() - this.lastCalculateSpeedTime, + t = Math.floor((n = this.finishSize - this.lastCalculateSpeedSize) / i), + this.lastCalculateSpeedTime = e.getTime(), + this.lastCalculateSpeedSize = this.finishSize), + this.lastFinishSize = this.finishSize), + Math.floor(this.finishSize / r * 100) || 0) + , i = tr(this.currentCtx, { + stage: "process", + percent: n, + realtimeSpeed: t + }); + n > this.lastProcessPercent && 100 !== n && (this.lastProcessPercent = n, + this.context._broadcast("progress", i)) + } + }, { + key: "errorFormat", + value: function(e) { + var t = this.currentCtx.totalDuration + , r = Date.now() - this._st + , n = e.index + , i = e.crc32 ? { + message: e.message, + data: e.crc32, + size: e.size + } : e.extra + , o = (i.errorCode = (null == (o = e.extra) ? void 0 : o.errorCode) || e.errorCode || 1003e3, + tr(this.currentCtx, { + extra: i, + sliceIndex: n, + stage: "process", + req: {}, + res: {}, + totalDuration: r + t, + sliceStartTime: e.sliceStartTime, + sliceEndTime: e.sliceEndTime, + sliceDuration: e.sliceDuration, + crc32StartTime: e.crc32StartTime, + crc32EndTime: e.crc32EndTime, + crc32Duration: e.crc32Duration + })); + return e.xhr && (i = e.xhr, + o.req = { + url: e.xhr.currentUrl + }, + o.res = { + status: i.status, + body: i.responseText, + header: i.getAllResponseHeaders() + }, + delete e.xhr), + o + } + }], + ti(r.prototype, o), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + c + }(); + function tc(e) { + return (tc = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function tu() { + return (tu = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function tl(e, t) { + var r, n = Object.keys(e); + return Object.getOwnPropertySymbols && (r = Object.getOwnPropertySymbols(e), + t && (r = r.filter(function(t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable + })), + n.push.apply(n, r)), + n + } + function tf(e, t) { + for (var r = 0; r < t.length; r++) { + var n = t[r]; + n.enumerable = n.enumerable || !1, + n.configurable = !0, + "value"in n && (n.writable = !0), + Object.defineProperty(e, tp(n.key), n) + } + } + function tp(e) { + return e = function(e, t) { + if ("object" !== tc(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== tc(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(e, "string"), + "symbol" === tc(e) ? e : String(e) + } + function th(e, t) { + return (th = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function td(e) { + return (td = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var tg = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && th(e, t) + }(a, n.a); + var e, t, r, i, o, s = (e = a, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = td(e); + return function(e, t) { + if (t && ("object" === tc(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, td(this).constructor) : r.apply(this, arguments)) + } + ); + function a(e, t) { + var r; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, a), + (r = s.call(this)).options = e, + r.config = t, + r.transport = new ev, + r.eventInit(), + r.errorCount = 0, + r.uploaderCtx = e.context, + r.currFileCtx = e.context.tasks[e.key], + r + } + return r = a, + i = [{ + key: "mergeFile", + value: function() { + for (var e = { + oid: this.currFileCtx.oid, + uploadId: this.currFileCtx.UploadID, + tosDomain: this.currFileCtx.tosDomain + }, t = this.currFileCtx.crc32Array, r = "", n = 0; n < t.length; n++) + r = (r ? "".concat(r, ",") : "").concat(n + 1, ":").concat(t[n].crc32); + var e = eh.urlTemplate("{tosDomain}/upload/v1/{oid}?uploadmode=part&phase=finish&uploadid={uploadId}", e) + , i = this.config.userId + , i = function(e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}; + t % 2 ? tl(Object(r), !0).forEach(function(t) { + var n, i, o; + n = e, + i = t, + o = r[t], + (i = tp(i))in n ? Object.defineProperty(n, i, { + value: o, + enumerable: !0, + configurable: !0, + writable: !0 + }) : n[i] = o + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : tl(Object(r)).forEach(function(t) { + Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) + }) + } + return e + }({ + Authorization: this.currFileCtx.signature, + "X-Storage-U": encodeURIComponent(i) + }, this.currFileCtx.UploadHeader); + this.config.clientEncrypt && (i["x-upload-encryption-mode"] = 2, + i["x-upload-encryption-key"] = btoa(this.currFileCtx.clientEncryptKey)), + this.transport.send({ + method: "post", + url: e, + headers: i, + custom: r + }) + } + }, { + key: "start", + value: function(e, t, r) { + this.successProcess = t, + this.failProcess = r, + this._st = Date.now(), + this.mergeFile() + } + }, { + key: "eventInit", + value: function() { + var e = this + , t = this.options.stage; + this.transport.on("complete", function(r) { + var n = null; + try { + var i, o = JSON.parse(r.response); + if (2e3 !== o.code || null == (i = o.data) || !i.key) + return e.fail({ + error: "fail! response.code: ".concat(o.code, ", fail message: ").concat(o.message), + xhr: r, + errorCode: o.code + }); + n = tu(e.currFileCtx, { + stage: t, + type: "success", + hasMerge: !0, + extra: { + message: "merge file success" + }, + xhr: r, + stageStartTime: e._st, + stageEndTime: Date.now(), + duration: Date.now() - e._st, + totalDuration: Date.now() - e._st + e.currFileCtx.totalDuration + }) + } catch (t) { + return e.fail({ + error: "response parse error: ".concat(t.message || JSON.stringify(t)), + xhr: r + }) + } + return e.successProcess(n) + }), + this.transport.on("error", function(t) { + e.fail({ + error: "request fail: ".concat(t.statusText || t.errText), + xhr: t + }) + }) + } + }, { + key: "getProcessIndex", + value: function(e) { + var t = 0; + return e.forEach(function(e, r) { + "process" === e.stage && (t = r) + }), + t + } + }, { + key: "fail", + value: function(e) { + e = tu(this.currFileCtx, { + extra: { + message: "merge file error, ".concat(e.error), + errorCode: e.errorCode || 1004e3 + }, + type: "error", + stage: this.options.stage, + xhr: e.xhr, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currFileCtx.totalDuration + }), + this.failProcess(e) + } + }], + tf(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + a + }(); + function ty(e) { + return (ty = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function tm() { + return (tm = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function tv(e, t) { + for (var r = 0; r < t.length; r++) { + var n, i = t[r]; + i.enumerable = i.enumerable || !1, + i.configurable = !0, + "value"in i && (i.writable = !0), + Object.defineProperty(e, (n = function(e, t) { + if ("object" !== ty(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== ty(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(n = i.key, "string"), + "symbol" === ty(n) ? n : String(n)), i) + } + } + function tb(e, t) { + return (tb = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function t_(e) { + return (t_ = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var tS = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && tb(e, t) + }(c, n.a); + var e, t, r, i, s, a = (e = c, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = t_(e); + return function(e, t) { + if (t && ("object" === ty(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, t_(this).constructor) : r.apply(this, arguments)) + } + ); + function c(e) { + var t, r = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : {}; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, c), + (t = a.call(this)).options = e, + t.file = e.file, + t.context = e.context, + t.key = e.key, + t.isImageBatchUpload = e.isImageBatchUpload, + t.config = r, + t.finishArr = [], + t.errorLength = 0, + t.finishSize = 0, + t.retryUploadTime = t.config.retryUploadTime || 0, + t.processRetry = 0, + t.lastFinishSize = -1, + t.lastProcessPercent = -1, + t.lastIntervalSize = -1, + t.uploader = {}, + t._uploadProcessMap = {}, + t + } + return r = c, + i = [{ + key: "start", + value: function(e, t, r) { + this.failProcess = r, + this.successProcess = t, + this.currentCtx = this.context.tasks[this.key], + this.crc32Array = this.context.tasks[this.key].crc32Array, + this._uploadSize = this.isImageBatchUpload ? this.currentCtx.fileSize.reduce(function(e, t) { + return e + t + }) : this.file.size, + this._st = Date.now(), + this.upload() + } + }, { + key: "stop", + value: function() { + var e = this; + this.uploader && Object.keys(this.uploader).forEach(function(t) { + e.uploader[t] && (e.uploader[t].abort(), + e.uploader[t].destroy()) + }) + } + }, { + key: "upload", + value: function() { + for (var e = this, t = this.crc32Array.length, r = 0, n = 0, i = 0; i < t; i++) { + var s = this.crc32Array[i] + , a = s.buffer + , s = s.crc32 + , c = this.currentCtx.signature + , c = "[object Array]" === Object.prototype.toString.call(c) ? c[i] : c + , u = this.currentCtx.oid + , u = "[object Array]" === Object.prototype.toString.call(u) ? u[i] : u + , l = { + oid: u, + tosDomain: this.currentCtx.tosDomain + } + , l = eh.urlTemplate(o, l) + , f = this.config.userId + , p = void 0 + , h = this.isImageBatchUpload ? (p = this.currentCtx.fileSize[i], + this.currentCtx.fileName[i]) : (p = this.file.size, + this.file.name); + this._uploadProcessMap[s] && this._uploadProcessMap[s].success ? r += 1 : (this._uploadProcessMap[s] = { + crc32: s, + fileSize: p, + fileName: h, + oid: u, + finishSize: 0, + success: !1 + }, + (p = new e9({ + sliceItem: a, + crc32: s, + url: l, + signature: c, + uploadHeader: this.currentCtx.UploadHeader, + userId: f, + retryTime: this.retryUploadTime, + method: "POST", + timeout: this.config.uploadTimeout + })).on("complete", function(i) { + r++, + e._uploadProcessMap[i.crc32].finishSize = i.size, + e._uploadProcessMap[i.crc32].success = !0, + n + r === t && e.success(i.xhr) + }), + p.on("error", function(r) { + ++n === t && e.fail(r) + }), + p.on("progress", function(t) { + e.process(t) + }), + p.upload(), + this.uploader[s] = p) + } + } + }, { + key: "success", + value: function(e) { + this.finishArr = []; + var t = Date.now() - this._st + , t = this._uploadSize / t + , r = tm(this.currentCtx, { + type: "success", + stage: "process", + percent: 99, + extra: { + message: "direct upload success" + }, + speed: t, + xhr: e, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currentCtx.totalDuration + }); + this.isImageBatchUpload && (r.successImage = [], + r.failImage = [], + Object.values(this._uploadProcessMap).forEach(function(e) { + (e.success ? r.successImage : r.failImage).push(e) + })), + this.uploader = null, + this._uploadProcessMap = null, + this.successProcess(r) + } + }, { + key: "fail", + value: function(e) { + e = tm(this.currentCtx, { + extra: { + message: "direct upload error: ".concat(e.message || e.xhr.errText), + errorCode: e.errorCode || 1003e3 + }, + type: "error", + stage: "process", + xhr: e.xhr, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currentCtx.totalDuration + }), + this.isImageBatchUpload && (e.failImage = Object.values(this._uploadProcessMap)), + this.uploader = null, + this._uploadProcessMap = null, + this.failProcess(e) + } + }, { + key: "process", + value: function(e) { + var t = this._uploadSize + , e = (this._uploadProcessMap[e.crc32].finishSize = Math.max(this._uploadProcessMap[e.crc32].finishSize, e.loaded), + this.finishSize = Object.values(this._uploadProcessMap).reduce(function(e, t) { + return e + t.finishSize + }, 0), + this.finishSize > this.lastFinishSize && (this.lastFinishSize = this.finishSize), + Math.floor(this.finishSize / t * 100) || 0) + , t = tm(this.currentCtx, { + stage: "process", + percent: e + }); + e > this.lastProcessPercent && 100 !== e && (this.lastProcessPercent = e, + this.context._broadcast("progress", t)) + } + }], + tv(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + c + }(); + function tx(e) { + return (tx = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function tw() { + return (tw = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function tk(e, t) { + for (var r = 0; r < t.length; r++) { + var n, i = t[r]; + i.enumerable = i.enumerable || !1, + i.configurable = !0, + "value"in i && (i.writable = !0), + Object.defineProperty(e, (n = function(e, t) { + if ("object" !== tx(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== tx(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(n = i.key, "string"), + "symbol" === tx(n) ? n : String(n)), i) + } + } + function tE(e, t) { + return (tE = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function tO(e) { + return (tO = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var tT = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && tE(e, t) + }(c, n.a); + var e, t, r, o, s, a = (e = c, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = tO(e); + return function(e, t) { + if (t && ("object" === tx(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, tO(this).constructor) : r.apply(this, arguments)) + } + ); + function c(e) { + var t, r = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : {}; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, c), + (t = a.call(this)).options = e, + t.file = e.file, + t.context = e.context, + t.key = e.key, + t.config = r, + t.errorLength = 0, + t.retryUploadTime = Number(r.retryUploadTime), + t.maxUploadSliceCount = Number(r.uploadSliceCount), + t.uploadQueue = [], + t.crc32Array = [], + t.uploadSliceCount = 0, + t.isCalcCrc32 = !1, + t.isFileReading = !1, + t.hasStarted = !1, + t.hasCompleteUpload = !1, + t + } + return r = c, + o = [{ + key: "start", + value: function(e, t, r) { + this.failProcess = r, + this.successProcess = t, + this.currentCtx = this.context.tasks[this.key], + this.hasStarted = !0, + this._st = Date.now(), + this.initWorker() + } + }, { + key: "initWorker", + value: function() { + var e = this; + this.worker || (this.worker = new te.a, + this.worker.onmessage = function(t) { + e.isCalcCrc32 = !1; + var r = t.data[0] + , n = t.data[2] + , i = t.data[1]; + e.uploadQueue.forEach(function(t, o) { + t.index === n && (e.uploadQueue[o].crc32 = i, + e.uploadQueue[o].fileSliceBuffer = r, + e.crc32Array[n] = { + crc32: i + }) + }), + e.startUploadQueue() + } + , + this.startUploadQueue()) + } + }, { + key: "addStreamSlice", + value: function(e) { + var t = this + , r = e.fileSlice + , n = e.index + , e = (this.isFileReading = !0, + new FileReader); + e.readAsArrayBuffer(r), + e.onload = function(e) { + t.isFileReading = !1, + e = e.target.result, + t.uploadQueue.push({ + fileSliceBuffer: e, + index: n + }), + t.hasStarted && t.startUploadQueue() + } + } + }, { + key: "completeStreamUpload", + value: function() { + this.hasCompleteUpload = !0, + 0 !== this.uploadQueue.length || this.isFileReading || this.success() + } + }, { + key: "startUploadQueue", + value: function() { + var e; + this.uploadSliceCount <= this.maxUploadSliceCount && 0 < this.uploadQueue.length && this.uploadQueue[0].crc32 ? (e = this.uploadQueue.shift(), + this.uploadSliceCount++, + this.upload({ + sliceItem: e.fileSliceBuffer, + index: e.index, + crc32: e.crc32 + })) : 0 < this.uploadQueue.length && !this.uploadQueue[0].crc32 && this.startCrc32Queue() + } + }, { + key: "startCrc32Queue", + value: function() { + if (!this.isCalcCrc32) + for (var e = 0; e < this.uploadQueue.length; e++) { + var t = this.uploadQueue[e]; + if (!t.crc32) { + this.isCalcCrc32 = !0, + this.worker.postMessage([t.fileSliceBuffer, t.index], [t.fileSliceBuffer]); + break + } + } + } + }, { + key: "upload", + value: function(e) { + var t = this + , r = e.sliceItem + , n = e.index + , e = e.crc32 + , o = this.currentCtx.signature + , s = { + part_number: n + 1, + uploadId: this.currentCtx.UploadID, + oid: this.currentCtx.oid, + tosDomain: this.currentCtx.tosDomain + } + , s = eh.urlTemplate(i, s) + , a = this.config.userId + , r = new e9({ + sliceItem: r, + crc32: e, + url: s, + signature: o, + uploadHeader: this.currentCtx.UploadHeader, + userId: a, + retryTime: this.retryUploadTime, + method: "POST", + timeout: this.config.uploadTimeout + }); + r.on("complete", function(e) { + 1 === t.currentCtx.status && (e.index = n, + t.fileSliceSuccess(e)) + }), + r.on("error", function(e) { + 1 === t.currentCtx.status && (e.index = n, + t.fail(e)) + }), + r.upload() + } + }, { + key: "fileSliceSuccess", + value: function(e) { + var t = e.index + , r = Date.now() + , n = { + message: "stream slice upload success" + } + , i = (e.xhr && (i = e.xhr, + n.currentUrl = i.currentUrl || "", + tw(this.currentCtx, { + req: { + url: i.currentUrl, + param: i.params + }, + res: { + status: i.status, + body: i.responseText, + header: i.getAllResponseHeaders() + } + }), + delete e.xhr), + this.context.logger.send(tw(this.currentCtx, { + stage: "process", + type: "success", + sliceIndex: t, + extra: n, + totalDuration: r - this._lastSaveTime + this.currentCtx.totalDuration + })), + tw(this.currentCtx, { + uploadQueueLength: this.uploadQueue.length, + sliceIndex: t + })); + this.context._broadcast("stream-progress", i), + this.uploadSliceCount--, + this.hasCompleteUpload && 0 === this.uploadQueue.length ? this.success(e.xhr) : this.startUploadQueue() + } + }, { + key: "success", + value: function(e) { + this.isAllSuccess || (e = tw(this.currentCtx, { + type: "success", + stage: "process", + percent: 100, + extra: { + message: "all slice upload success" + }, + crc32Array: this.crc32Array, + xhr: e, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currentCtx.totalDuration + }), + this.successProcess(e)) + } + }, { + key: "fail", + value: function(e) { + var t = e.index + , e = tw(this.currentCtx, { + extra: { + message: "stream slice upload error" + }, + type: "error", + stage: "process", + xhr: e.xhr, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currentCtx.totalDuration, + sliceIndex: t + }); + this.context.logger.send(tw({}, e)), + this.context._broadcast("error", e) + } + }], + tk(r.prototype, o), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + c + }(); + function tC(e) { + return (tC = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function tD(e, t) { + var r, n = Object.keys(e); + return Object.getOwnPropertySymbols && (r = Object.getOwnPropertySymbols(e), + t && (r = r.filter(function(t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable + })), + n.push.apply(n, r)), + n + } + function tj(e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}; + t % 2 ? tD(Object(r), !0).forEach(function(t) { + var n, i, o; + n = e, + i = t, + o = r[t], + (i = tz(i))in n ? Object.defineProperty(n, i, { + value: o, + enumerable: !0, + configurable: !0, + writable: !0 + }) : n[i] = o + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : tD(Object(r)).forEach(function(t) { + Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) + }) + } + return e + } + function tI() { + return (tI = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function tP(e, t) { + return function(e) { + if (Array.isArray(e)) + return e + }(e) || function(e, t) { + var r = null == e ? null : "undefined" != typeof Symbol && e[Symbol.iterator] || e["@@iterator"]; + if (null != r) { + var n, i, o, s, a = [], c = !0, u = !1; + try { + if (o = (r = r.call(e)).next, + 0 === t) { + if (Object(r) !== r) + return; + c = !1 + } else + for (; !(c = (n = o.call(r)).done) && (a.push(n.value), + a.length !== t); c = !0) + ; + } catch (e) { + u = !0, + i = e + } finally { + try { + if (!c && null != r.return && (s = r.return(), + Object(s) !== s)) + return + } finally { + if (u) + throw i + } + } + return a + } + }(e, t) || function(e, t) { + var r; + if (e) + return "string" == typeof e ? tA(e, t) : "Map" === (r = "Object" === (r = Object.prototype.toString.call(e).slice(8, -1)) && e.constructor ? e.constructor.name : r) || "Set" === r ? Array.from(e) : "Arguments" === r || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r) ? tA(e, t) : void 0 + }(e, t) || function() { + throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") + }() + } + function tA(e, t) { + (null == t || t > e.length) && (t = e.length); + for (var r = 0, n = Array(t); r < t; r++) + n[r] = e[r]; + return n + } + function tR(e, t) { + for (var r = 0; r < t.length; r++) { + var n = t[r]; + n.enumerable = n.enumerable || !1, + n.configurable = !0, + "value"in n && (n.writable = !0), + Object.defineProperty(e, tz(n.key), n) + } + } + function tz(e) { + return e = function(e, t) { + if ("object" !== tC(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== tC(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(e, "string"), + "symbol" === tC(e) ? e : String(e) + } + function tB(e, t) { + return (tB = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function tU(e) { + return (tU = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var tM = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && tB(e, t) + }(a, n.a); + var e, t, r, i, o, s = (e = a, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = tU(e); + return function(e, t) { + if (t && ("object" === tC(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, tU(this).constructor) : r.apply(this, arguments)) + } + ); + function a(e, t) { + var r; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, a), + (r = s.call(this)).options = e, + r.config = t, + r.uploaderCtx = e.context, + r.currFileCtx = e.context.tasks[e.key], + r.isImageBatchUpload = !!r.options.isImageBatchUpload, + r.skipCommit = e.skipCommit, + r.transport = new ev, + r.eventInit(), + r + } + return r = a, + i = [{ + key: "commitUpload", + value: function() { + var e, t, r = this.config.region, n = "", i = {}, o = this.uploaderCtx.useBackupDomain, s = eG.checkServiceName(this.options.type, this.config, this.options.serviceType), o = (s === es && (n = o ? this.config.imageFallbackHost : this.config.imageHost, + i = (t = tP(this.createImageXParams(), 3))[0], + e = t[1], + t = t[2]), + "vod" === s && (n = o ? this.config.videoFallbackHost : this.config.videoHost, + i = (o = tP(this.createVodParams(), 3))[0], + e = o[1], + t = o[2]), + this.config.accountId && (i["X-Account-Id"] = this.config.accountId), + this.config.openExperiment && (i.app_id = this.config.appId, + i.user_id = this.config.userId), + eh.toQueryString(i)), a = this.currFileCtx.proxyStsToken || this.config.stsToken, c = a.AccessKeyID, u = a.AccessKeyId, l = a.SecretAccessKey, a = a.SessionToken, o = { + method: "POST", + url: "".concat(n, "?").concat(o), + timeout: this.config.gatewayTimeout, + region: r, + params: i, + headers: {}, + pathname: eh.getPathByURL(n) + }, r = (o.custom = t, + o.body = e, + s === es && (o.headers["Content-Type"] = "application/json"), + new eb.a(o,s)), i = this.currFileCtx.systemTimeGap, n = i ? new Date((new Date).getTime() + i) : new Date; + r.addAuthorization({ + accessKeyId: u || c, + secretAccessKey: l, + sessionToken: a + }, n), + this.transport.send(o) + } + }, { + key: "createImageXParams", + value: function() { + var e = { + Action: "CommitImageUpload", + Version: "2018-08-01" + } + , t = { + SessionKey: this.currFileCtx.SessionKey + } + , r = (this.options.type === en && (this.config.imageConfig && this.config.imageConfig.serviceId ? e.ServiceId = this.config.imageConfig.serviceId : e.SpaceName = this.config.videoConfig && this.config.videoConfig.spaceName, + Array.isArray(r = this.config.imageConfig && this.config.imageConfig.processAction) && 0 < r.length && (t.Functions = r), + this.config.skipMeta) && (e.SkipMeta = !0), + this.options.type === ei && (e.ServiceId = this.config.objectConfig && this.config.objectConfig.serviceId || this.config.imageConfig && this.config.imageConfig.serviceId), + JSON.stringify(t)); + return [e, t, r] + } + }, { + key: "createVodParams", + value: function() { + var e = null == (e = this.config.videoConfig) ? void 0 : e.spaceName + , t = { + Action: "CommitUploadInner", + Version: "2020-11-19", + SpaceName: e = this.options.type === ei && null != (t = this.config.objectConfig) && t.spaceName ? null == (t = this.config.objectConfig) ? void 0 : t.spaceName : e + } + , e = { + SessionKey: this.currFileCtx.SessionKey, + Functions: [] + } + , r = this.config.videoConfig && this.config.videoConfig.processAction + , n = (this.options.type === ei && null != (n = this.config.objectConfig) && n.processAction && (r = null == (n = this.config.objectConfig) ? void 0 : n.processAction), + Array.isArray(r) && 0 < r.length && (e.Functions = r), + (this.config.videoConfig && this.config.videoConfig.callbackArgs || this.options.callbackArgs) && (e.CallbackArgs = this.options.callbackArgs || this.config.videoConfig.callbackArgs), + this.options.type === er && this.config.skipDownload && (t.SkipDownload = !0), + this.options.type === ei && this.options.objectSync && (e.ObjectSync = this.options.objectSync), + this.options.type === er && this.options.needExactFormat && (e.needExactFormat = this.options.needExactFormat), + JSON.stringify(e)); + return [t, e, n] + } + }, { + key: "start", + value: function(e, t, r) { + if (this.successProcess = t, + this.failProcess = r, + this._st = Date.now(), + this.skipCommit) + return this.successProcess(tI(this.currFileCtx, { + stage: "complete", + type: "success", + percent: 100, + extra: { + message: "upload successful, skip commit" + }, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currFileCtx.totalDuration, + skipCommit: this.skipCommit + })); + try { + this.commitUpload() + } catch (e) { + this.fail({ + error: "catch error: ".concat(e.toString()) + }) + } + } + }, { + key: "eventInit", + value: function() { + var e = this; + this.transport.on("complete", function(t) { + var r = null; + try { + var n = JSON.parse(t.response); + if (n.ResponseMetadata.Error) + return e.fail({ + xhr: t, + errorCode: n.ResponseMetadata.Error.CodeN, + error: n.ResponseMetadata.Error.Code, + message: n.ResponseMetadata.Error.Message + }); + var i, o, s = eG.checkServiceName(e.options.type, e.config, e.options.serviceType), a = n.Result, c = {}; + s === es ? e.isImageBatchUpload ? (i = a.Results, + o = a.PluginResult || [], + i.forEach(function(e, t) { + i[t] = tj(tj({}, i[t]), o[t]) + }), + c = i) : tI(c = a.Results[0], a.PluginResult && a.PluginResult[0]) : c = a.Results[0], + r = tI(e.currFileCtx, { + stage: "complete", + type: "success", + percent: 100, + extra: { + message: "upload successful" + }, + uploadResult: c, + xhr: t, + stageStartTime: e._st, + stageEndTime: Date.now(), + duration: Date.now() - e._st, + totalDuration: Date.now() - e._st + e.currFileCtx.totalDuration, + skipCommit: e.skipCommit + }) + } catch (r) { + return e.fail({ + error: "catch error: ".concat(r.message || r.toString()), + xhr: t + }) + } + return e.successProcess(r) + }), + this.transport.on("error", function(t) { + var r = { + error: "request fail: ".concat(t.statusText || t.errText || "UNKNOWN"), + xhr: t + }; + if (t.response) + try { + var n = JSON.parse(t.response); + n.ResponseMetadata && n.ResponseMetadata.Error && (r.errorCode = n.ResponseMetadata.Error.CodeN, + r.error = n.ResponseMetadata.Error.Code, + r.message = n.ResponseMetadata.Error.Message) + } catch (e) { + r.error = t.response.toString(), + r.message = t.response.toString() + } + e.fail(r) + }) + } + }, { + key: "fail", + value: function(e) { + var t = e.xhr + , r = e.errorCode || 1005e3 + , n = "commit upload error: UNKNOWN" + , n = (t && (n = 0 === t.status ? "commit upload error: NETERROR" : e.message || "commit upload error: ".concat(t.status)), + tI(this.currFileCtx, { + extra: { + message: n, + error: e.error, + errorCode: r + }, + type: "error", + stage: "complete", + xhr: t, + stageStartTime: this._st, + stageEndTime: Date.now(), + duration: Date.now() - this._st, + totalDuration: Date.now() - this._st + this.currFileCtx.totalDuration, + skipCommit: this.skipCommit + })); + this.failProcess(n) + } + }], + tR(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + a + }(); + function tG(e) { + return (tG = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function tF(e, t) { + var r, n = Object.keys(e); + return Object.getOwnPropertySymbols && (r = Object.getOwnPropertySymbols(e), + t && (r = r.filter(function(t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable + })), + n.push.apply(n, r)), + n + } + function tN(e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}; + t % 2 ? tF(Object(r), !0).forEach(function(t) { + var n, i, o; + n = e, + i = t, + o = r[t], + (i = tK(i))in n ? Object.defineProperty(n, i, { + value: o, + enumerable: !0, + configurable: !0, + writable: !0 + }) : n[i] = o + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : tF(Object(r)).forEach(function(t) { + Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) + }) + } + return e + } + function tH() { + return (tH = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function tL(e, t) { + for (var r = 0; r < t.length; r++) { + var n = t[r]; + n.enumerable = n.enumerable || !1, + n.configurable = !0, + "value"in n && (n.writable = !0), + Object.defineProperty(e, tK(n.key), n) + } + } + function tK(e) { + return e = function(e, t) { + if ("object" !== tG(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== tG(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(e, "string"), + "symbol" === tG(e) ? e : String(e) + } + function tq(e, t) { + return (tq = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function tV(e) { + return (tV = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var tW = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && tq(e, t) + }(a, n.a); + var e, t, r, i, o, s = (e = a, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = tV(e); + return function(e, t) { + if (t && ("object" === tG(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, tV(this).constructor) : r.apply(this, arguments)) + } + ); + function a(e, t, r, n) { + var i; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, a), + (i = s.call(this, e)).tasks = e, + i.config = t, + i.key = n, + i.uploaderCtx = r, + i.current = 0, + i.length = i.tasks.length, + i.taskError = {}, + i.uploadList = [], + i.retryTaskTime = t.retryTaskTime, + i + } + return r = a, + i = [{ + key: "start", + value: function(e) { + var t = this.tasks.shift(); + t && (this.current = t.index, + this.execTask(t, e)) + } + }, { + key: "execTask", + value: function(e, t) { + var r, n, i = this, o = e.key, s = this.uploaderCtx, a = s.tasks[o]; + a && (r = a.cacheTask, + n = s.taskList[o].length, + r && 0 < e.index && e.index < r ? this.start() : (a.currentTask = e.index, + 1 === a.status && (1 !== e.index && "initUploadID" !== e.stage || (e.arg = tH(e.arg, t)), + e) && e.func.call(e.context, e.arg, function(r) { + var c; + s.taskList[o] && ((c = s.taskList[o][e.index + 1]) && 0 !== e.index && !a.isDirect && i.config.enableDiskBreakpoint ? s._saveTask(o, { + currentTask: c.index, + stage: c.stage + }) : e.index === n - 1 && s._removeTaskCache(o), + i.success(r), + 0 < i.tasks.length ? i.start(t) : s._queueSuccess(o)) + }, function(r) { + var n; + r.xhr && r.xhr.status >= 400 || 3 === e.index && r.isDirect ? i.fail(r) : !i.taskError[o] || i.taskError[o] < i.retryTaskTime ? (i.taskError[o] ? i.taskError[o]++ : i.taskError[o] = 1, + n = i.errorFormat(r, !0), + i.uploaderCtx.logger.send(n), + "initUploadID" === e.stage ? i.execTask(e, tN(tN({}, t), {}, { + changeNodeRetry: !0 + })) : i.execTask(e, t)) : (r.key = o, + i.fail(r)) + }))) + } + }, { + key: "addTask", + value: function(e) { + this.tasks.push(e) + } + }, { + key: "success", + value: function(e) { + var t; + e.xhr && (t = e.xhr, + e.req = { + url: t.currentUrl, + param: t.params + }, + e.res = { + status: t.status, + header: t.getAllResponseHeaders(), + body: t.responseText + }, + delete e.xhr), + tH(e, { + type: "success" + }); + try { + this.uploaderCtx._broadcast(e.stage, e) + } catch (e) { + console.error(e) + } + this.uploaderCtx.logger.send(e) + } + }, { + key: "fail", + value: function(e) { + var t = this.uploaderCtx + , r = e.key + , e = this.errorFormat(e); + try { + t._broadcast("error", e) + } catch (e) {} + t.tasks[r].isBreak ? t._cancel(r) : t._pause(r), + t.logger.send(e) + } + }, { + key: "cancel", + value: function(e) { + var t, r = this.key, n = this.uploaderCtx.tasks[r].currentTask; + this.uploaderCtx.taskList[r].forEach(function(e) { + n === e.index && (t = e) + }), + e ? 3 === n && this.uploaderCtx.tasks[r].isDirect && t && null != (e = t) && null != (e = e.context) && e.stop() : (this.tasks = [], + t && 3 === t.index && t.context.stop(), + this.uploaderCtx._removeTaskCache(r)) + } + }, { + key: "restart", + value: function() { + this.uploadList.forEach(function(e) { + e.cancel = !1 + }), + this.start() + } + }, { + key: "errorFormat", + value: function(e, t) { + var r, t = { + type: t ? "retry" : "error" + }; + return e.xhr && (r = e.xhr, + e.req = { + url: r.currentUrl, + param: r.params + }, + e.res = { + status: r.status, + header: r.getAllResponseHeaders(), + body: r.responseText + }, + e.extra && (e.extra.req = e.req, + e.extra.res = e.res), + delete e.xhr), + tH(e, t) + } + }], + tL(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + a + }(); + function tJ(e) { + return (tJ = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function tQ() { + return (tQ = Object.assign ? Object.assign.bind() : function(e) { + for (var t = 1; t < arguments.length; t++) { + var r, n = arguments[t]; + for (r in n) + Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]) + } + return e + } + ).apply(this, arguments) + } + function tX(e, t) { + for (var r = 0; r < t.length; r++) { + var n, i = t[r]; + i.enumerable = i.enumerable || !1, + i.configurable = !0, + "value"in i && (i.writable = !0), + Object.defineProperty(e, (n = function(e, t) { + if ("object" !== tJ(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== tJ(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(n = i.key, "string"), + "symbol" === tJ(n) ? n : String(n)), i) + } + } + function t$(e, t) { + return (t$ = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function tZ(e) { + if (void 0 === e) + throw ReferenceError("this hasn't been initialised - super() hasn't been called"); + return e + } + function tY(e) { + return (tY = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var t0 = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && t$(e, t) + }(c, n.a); + var e, t, r, i, o, a = (e = c, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = tY(e); + return function(e, t) { + if (t && ("object" === tJ(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return tZ(e) + }(this, t ? Reflect.construct(r, arguments, tY(this).constructor) : r.apply(this, arguments)) + } + ); + function c(e) { + var t; + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, c), + (t = a.call(this, e)).config = tQ({}, s), + t._mergeOptions(t.config, e), + t.tasks = {}, + t.taskList = {}, + t.cache = {}, + t.storage = eh.storage(tZ(t), t.config.enableDiskBreakpoint), + t.logger = t.config.noLog ? { + send: function() { + return !0 + } + } : new el(t.config,tZ(t)), + t + } + return r = c, + i = [{ + key: "_mergeOptions", + value: function(e, t) { + t && "object" === tJ(t) && (tQ(e, t), + Object.keys(t).forEach(function(r) { + "vodDomain" === r && (e.replace[r] = t[r]) + })) + } + }, { + key: "_setCache", + value: function(e, t) { + this.storage.setItem(e, t) + } + }, { + key: "_getCache", + value: function(e) { + return this.storage.getItem(e) + } + }, { + key: "_removeCache", + value: function(e) { + e ? this.storage.removeItem(e) : this.storage.clear() + } + }, { + key: "_addTask", + value: function(e, t) { + var r = this.tasks + , n = this.taskList; + r[e] && r[e].task ? n[e].push(t) : (n[e] = [], + n[e].push(t), + r[e] = r[e] || {}, + r[e].task = new tW([],this.config,this,e)), + r[e].task.addTask(t) + } + }, { + key: "_broadcast", + value: function(e, t, r) { + (r || 1 === (r = this.tasks[t.key].status) || 0 === r) && this.emit(e, t) + } + }, { + key: "_addCrc32ProcessTask", + value: function(e, t) { + var r = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : {} + , n = r.isDirect + , r = r.isImageBatchUpload + , e = new eM({ + file: e.file, + context: this, + key: t, + isDirect: n, + isImageBatchUpload: void 0 !== r && r + },this.config) + , n = { + context: e, + func: e.start, + arg: {}, + key: t, + index: 0, + stage: "crc32" + }; + this._addTask(t, n) + } + }, { + key: "_addPreUploadTask", + value: function(e, t) { + var r = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : {} + , n = r.isDirect + , r = r.isImageBatchUpload + , n = { + file: e.file, + stsToken: e.stsToken, + context: this, + type: e.type || er, + preUploadUriParams: e.preUploadUriParams || {}, + storeKey: e.storeKey, + testHost: e.testHost, + key: t, + isDirect: n, + isImageBatchUpload: void 0 !== r && r, + fileSize: e.fileSize, + serviceType: e.serviceType || null, + fileExtension: e.fileExtension + } + , r = new eW(n,this.config) + , e = { + context: r, + func: r.start, + arg: {}, + key: t, + index: 1, + stage: "preUpload" + }; + this._addTask(t, e) + } + }, { + key: "_addDirectUploadTask", + value: function(e, t) { + var r = (2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : {}).isImageBatchUpload + , e = new tS({ + file: e.file, + context: this, + key: t, + isImageBatchUpload: void 0 !== r && r + },this.config) + , r = { + context: e, + func: e.start, + arg: {}, + key: t, + index: 3, + stage: "process" + }; + this._addTask(t, r) + } + }, { + key: "_addInitUploadIDTask", + value: function(e, t) { + e = { + context: e = new e1({ + file: e.file, + context: this, + key: t + },this.config), + func: e.start, + arg: {}, + key: t, + index: 2, + stage: "initUploadID" + }, + this._addTask(t, e) + } + }, { + key: "_addUploadProcessTask", + value: function(e, t) { + e = { + context: e = new ta({ + file: e.file, + context: this, + key: t + },this.config), + func: e.start, + arg: {}, + key: t, + index: 3, + stage: "process" + }, + this._addTask(t, e) + } + }, { + key: "_addStreamUploadTask", + value: function(e, t) { + this.streamUploadTask = new tT({ + context: this, + key: t + },this.config); + var r = { + context: this.streamUploadTask, + func: this.streamUploadTask.start, + arg: {}, + key: t, + index: 3, + stage: "process" + }; + this._addTask(t, r) + } + }, { + key: "_mergeFileTask", + value: function(e, t) { + e = { + context: e = new tg({ + file: e.file, + context: this, + stage: "fileMerge", + key: t + },this.config), + func: e.start, + arg: {}, + key: t, + index: 4, + stage: "fileMerge" + }, + this._addTask(t, e) + } + }, { + key: "_getMetaInfoTask", + value: function(e, t) { + var r = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : {} + , n = r.isImageBatchUpload + , r = r.skipCommit + , n = { + file: e.file, + context: this, + data: e.data, + type: e.type || er, + callbackArgs: e.callbackArgs, + objectSync: e.objectSync, + needExactFormat: e.needExactFormat, + key: t, + isImageBatchUpload: void 0 !== n && n, + skipCommit: void 0 !== r && r, + serviceType: e.serviceType || null + } + , r = new tM(n,this.config) + , e = { + context: r, + func: r.start, + arg: {}, + key: t, + index: 5, + stage: "complete" + }; + this._addTask(t, e) + } + }, { + key: "_addAllUploadProcess", + value: function(e, t) { + var r = e.type === en && "[object Array]" === Object.prototype.toString.call(e.file) + , n = (this.tasks[t] = this.tasks[t] || {}, + this.tasks[t].fileType = e.type || er, + this.tasks[t].fileSize = e.file && e.file.size, + this.tasks[t].proxyStsToken = e.stsToken, + this.lastStsToken = e.stsToken, + this.lastFile = e.file, + e.file.size <= eh.getFileSliceLength(e.file) || r) + , n = (e.useDirectUpload && (n = !0), + this._addCrc32ProcessTask(e, t, { + isDirect: n, + isImageBatchUpload: r + }), + this._addPreUploadTask(e, t, { + isDirect: n, + isImageBatchUpload: r + }), + n ? this._addDirectUploadTask(e, t, { + isImageBatchUpload: r + }) : (this._addInitUploadIDTask(e, t), + this._addUploadProcessTask(e, t), + this._mergeFileTask(e, t)), + !(!this.config.skipCommit || eG.checkServiceName(e.type, this.config) !== es)); + this._getMetaInfoTask(e, t, { + isImageBatchUpload: r, + skipCommit: n + }) + } + }, { + key: "_addAllUploadProcessClientEncrypt", + value: function(e) { + var t, r = this; + return e.type === en && Array.isArray(e.file) ? (t = [], + e.file.forEach(function(n) { + t.push(r._createClientEncryptTask({ + stsToken: e.stsToken, + type: e.type, + file: n + })) + }), + t) : this._createClientEncryptTask(e) + } + }, { + key: "_createClientEncryptTask", + value: function(e) { + var t = eh.getUnique("file") + , r = (this.tasks[t] = this.tasks[t] || {}, + this.tasks[t].fileType = e.type || er, + this.tasks[t].fileSize = e.file && e.file.size, + this.tasks[t].proxyStsToken = e.stsToken, + this.tasks[t].clientEncryptKey = eh.generateKey(16), + this._addCrc32ProcessTask(e, t, { + isDirect: !1, + isImageBatchUpload: !1 + }), + this._addPreUploadTask(e, t, { + isDirect: !1, + isImageBatchUpload: !1 + }), + this._addInitUploadIDTask(e, t), + this._addUploadProcessTask(e, t), + this._mergeFileTask(e, t), + !(!this.config.skipCommit || eG.checkServiceName(e.type, this.config) !== es)); + return this._getMetaInfoTask(e, t, { + isImageBatchUpload: !1, + skipCommit: r + }), + t + } + }, { + key: "_addAllStreamUploadProcess", + value: function(e, t) { + this.tasks[t] = this.tasks[t] || {}, + this.tasks[t].fileType = e.type || er, + this.tasks[t].proxyStsToken = e.stsToken, + this._addPreUploadTask(e, t), + this._addInitUploadIDTask(e, t), + this._addStreamUploadTask(e, t), + this._mergeFileTask(e, t), + this._getMetaInfoTask(e, t) + } + }, { + key: "_addStreamSlice", + value: function(e) { + var t = e.fileSlice + , e = e.index; + this.streamUploadTask.addStreamSlice({ + fileSlice: t, + index: e + }) + } + }, { + key: "_completeStreamUpload", + value: function() { + this.streamUploadTask.completeStreamUpload() + } + }, { + key: "_run", + value: function(e, t) { + var r = this.tasks + , n = navigator.userAgent.toLowerCase().match(/msie ([\d.]+)/); + n && n[1] && 9 >= Number(n[1]) ? (this._broadcast("error", tQ(r[e], { + key: e, + status: 0, + stage: "browserError", + extra: { + message: "cannot support the browser below ie10" + }, + type: "error" + })), + this.logger.send(r[e]), + this._cancel(e)) : r[e] ? 3 === r[e].status ? this._restart(e) : (r[e].startTime = (new Date).getTime(), + r[e].task && 1 !== r[e].status && r[e].task.tasks.length && (r[e].status = 1, + this.logger.send(tQ({}, r[e], { + extra: { + message: "start upload" + }, + type: "start", + key: e + })), + r[e].task.start(t))) : console.warn("".concat(e, " is not exit in object tasks, stop running...")) + } + }, { + key: "_selectRoute", + value: function(e, t) { + new eC({ + stsToken: this.lastStsToken, + context: this, + type: er, + file: this.lastFile + },this.config).start(e, t) + } + }, { + key: "_restart", + value: function(e) { + var t, r, n = this, i = this.tasks; + i[e] ? (t = i[e].task, + r = i[e].currentTask || 0, + this.taskList[e].forEach(function(i, o) { + i.index === r && (t.tasks = n.taskList[e].slice(o)) + }), + t && 1 !== i[e].status && t.tasks.length && (i[e].status = 1, + t.restart())) : console.warn("".concat(e, " is not exit in object tasks")) + } + }, { + key: "_cancel", + value: function(e) { + var t = this.tasks; + t[e] ? (t[e].status = 2, + t[e].task.cancel(), + delete this.taskList[e]) : console.warn("".concat(e, " is not exit in object tasks")) + } + }, { + key: "_pause", + value: function(e) { + var t = this.tasks; + t[e] ? (t[e].status = 3, + t[e].task.cancel(!0), + t[e].isDirect || this._saveTask(e)) : console.warn("".concat(e, " is not exit in object tasks")) + } + }, { + key: "_removeTaskCache", + value: function(e) { + var t = this.tasks; + t[e] ? (t = t[e].crc32Key) && this._removeCache(t) : console.warn("".concat(e, " is not exit in object tasks")) + } + }, { + key: "_saveTask", + value: function(e, t) { + t = (e = tQ({}, this.tasks[e], t || {})).crc32Key; + try { + t && this._setCache(t, this.serializeCacheInfo(e)) + } catch (e) { + console.warn(e) + } + } + }, { + key: "serializeCacheInfo", + value: function(e) { + var t = ""; + delete e.task, + delete e.xhr, + delete e.crc32Array; + try { + t = JSON.stringify(e) + } catch (n) { + var r = {}; + Object.keys(e).forEach(function(t) { + "task" !== t && "xhr" !== t && "crc32Array" !== t && (r[t] = e[t]) + }), + t = JSON.stringify(r) + } + return t + } + }, { + key: "_queueSuccess", + value: function(e) { + var t, r = this.tasks; + r[e] ? (t = new Date, + r[e].endTime = t.getTime(), + r[e].time = r[e].endTime - r[e].startTime, + r[e].status = 0, + delete this.taskList[e], + delete r[e]) : console.warn("".concat(e, " is not exit in object tasks")) + } + }, { + key: "_removeFile", + value: function(e) { + delete this.tasks[e] + } + }, { + key: "_batchAction", + value: function(e, t) { + Object.keys(this.tasks).forEach(function(r) { + e && e(r, t) + }) + } + }, { + key: "_refreshSTSToken", + value: function(e) { + var t = this + , r = this.tasks; + Object.keys(r).forEach(function(n) { + var n = r[n] + , i = tQ({}, n, { + proxyStsToken: e + }) + , o = (n.proxyStsToken = e, + i.crc32Key); + o && (n.proxyStsToken = e, + t._setCache(o, t.serializeCacheInfo(i))) + }) + } + }, { + key: "_setOption", + value: function(e) { + this._mergeOptions(this.config, e) + } + }, { + key: "_getOption", + value: function(e) { + var t = tQ({}, this.config); + return Object.keys(t).forEach(function(e) { + (-1 < e.indexOf("Url") || "replace" === e || "log" === e) && delete t[e] + }), + e ? t[e] : t + } + }, { + key: "_userCancel", + value: function(e) { + var t = this + , r = this.tasks; + e ? (this._cancel(e), + this.logger.send(tQ({}, r[e], { + type: "cancel" + })), + delete this.tasks[e]) : Object.keys(r).forEach(function(e) { + t._cancel(e), + t.logger.send(tQ({}, r[e], { + type: "cancel" + })), + delete t.tasks[e] + }) + } + }, { + key: "_userPause", + value: function(e) { + var t = this + , r = this.tasks; + e ? (this._pause(e), + this.logger.send(tQ({}, r[e], { + type: "pause" + }))) : Object.keys(r).forEach(function(e) { + t._pause(e), + t.logger.send(tQ({}, r[e], { + type: "pause" + })) + }) + } + }], + tX(r.prototype, i), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + c + }(); + function t1(e) { + return (t1 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) { + return typeof e + } + : function(e) { + return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e + } + )(e) + } + function t2(e, t) { + var r, n = Object.keys(e); + return Object.getOwnPropertySymbols && (r = Object.getOwnPropertySymbols(e), + t && (r = r.filter(function(t) { + return Object.getOwnPropertyDescriptor(e, t).enumerable + })), + n.push.apply(n, r)), + n + } + function t3(e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}; + t % 2 ? t2(Object(r), !0).forEach(function(t) { + var n, i, o; + n = e, + i = t, + o = r[t], + (i = t5(i))in n ? Object.defineProperty(n, i, { + value: o, + enumerable: !0, + configurable: !0, + writable: !0 + }) : n[i] = o + }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : t2(Object(r)).forEach(function(t) { + Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t)) + }) + } + return e + } + function t4(e, t) { + for (var r = 0; r < t.length; r++) { + var n = t[r]; + n.enumerable = n.enumerable || !1, + n.configurable = !0, + "value"in n && (n.writable = !0), + Object.defineProperty(e, t5(n.key), n) + } + } + function t5(e) { + return e = function(e, t) { + if ("object" !== t1(e) || null === e) + return e; + var r = e[Symbol.toPrimitive]; + if (void 0 === r) + return ("string" === t ? String : Number)(e); + if (r = r.call(e, t || "default"), + "object" !== t1(r)) + return r; + throw TypeError("@@toPrimitive must return a primitive value.") + }(e, "string"), + "symbol" === t1(e) ? e : String(e) + } + function t6(e, t) { + return (t6 = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) { + return e.__proto__ = t, + e + } + )(e, t) + } + function t8(e) { + return (t8 = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) { + return e.__proto__ || Object.getPrototypeOf(e) + } + )(e) + } + var t7 = function() { + !function(e, t) { + if ("function" != typeof t && null !== t) + throw TypeError("Super expression must either be null or a function"); + e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + writable: !0, + configurable: !0 + } + }), + Object.defineProperty(e, "prototype", { + writable: !1 + }), + t && t6(e, t) + }(s, t0); + var e, t, r, n, i, o = (e = s, + t = function() { + if ("undefined" == typeof Reflect || !Reflect.construct || Reflect.construct.sham) + return !1; + if ("function" == typeof Proxy) + return !0; + try { + return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), + !0 + } catch (e) { + return !1 + } + }(), + function() { + var r = t8(e); + return function(e, t) { + if (t && ("object" === t1(t) || "function" == typeof t)) + return t; + if (void 0 !== t) + throw TypeError("Derived constructors may only return object or undefined"); + return function(e) { + if (void 0 !== e) + return e; + throw ReferenceError("this hasn't been initialised - super() hasn't been called") + }(e) + }(this, t ? Reflect.construct(r, arguments, t8(this).constructor) : r.apply(this, arguments)) + } + ); + function s() { + return function(e, t) { + if (!(e instanceof t)) + throw TypeError("Cannot call a class as a function") + }(this, s), + o.apply(this, arguments) + } + return r = s, + n = [{ + key: "start", + value: function(e) { + var t = this + , r = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : {}; + this.abort = !1, + r.selectRoute ? this._selectRoute(r, function(r) { + r = t3(t3({}, r), {}, { + enableSelectRoute: !0 + }), + e ? t._run(e, r) : t._batchAction(t._run.bind(t), r) + }) : e ? this._run(e) : this._batchAction(this._run.bind(this)) + } + }, { + key: "addFile", + value: function(e) { + var t; + return e && eG.checkStsToken(e.stsToken) ? e.file && this.config.clientEncrypt ? this._addAllUploadProcessClientEncrypt(e) : e.file ? (t = eh.getUnique("file"), + this._addAllUploadProcess(e, t), + t) : null : (this.emit("error", { + extra: { + message: eA, + errorCode: 1000002 + } + }), + null) + } + }, { + key: "addImageFile", + value: function(e) { + var t; + return e && eG.checkStsToken(e.stsToken) ? e.file ? (e.type = e.type || en, + t = eh.getUnique("file"), + this._addAllUploadProcess(e, t), + t) : null : (this.emit("error", { + extra: { + message: eA, + errorCode: 1000002 + } + }), + null) + } + }, { + key: "addStreamUploadTask", + value: function(e) { + var t; + return e && eG.checkStsToken(e.stsToken) ? (t = eh.getUnique("file"), + this._addAllStreamUploadProcess(e, t), + t) : (this.emit("error", { + extra: { + message: eA, + errorCode: 1000002 + } + }), + null) + } + }, { + key: "addStreamSlice", + value: function(e) { + var t = e.fileSlice + , e = e.index; + this._addStreamSlice({ + fileSlice: t, + index: e + }) + } + }, { + key: "completeStreamUpload", + value: function() { + this._completeStreamUpload() + } + }, { + key: "removeFile", + value: function(e) { + e && this._removeFile(e) + } + }, { + key: "cancel", + value: function(e) { + e ? this._userCancel(e) : this._batchAction(this._userCancel.bind(this)) + } + }, { + key: "pause", + value: function(e) { + this._userPause(e) + } + }, { + key: "restart", + value: function(e) { + e ? this._restart(e) : this._batchAction(this._restart.bind(this)) + } + }, { + key: "refreshSTSToken", + value: function(e) { + this._refreshSTSToken(e) + } + }, { + key: "setOption", + value: function(e) { + this._setOption(e) + } + }, { + key: "getOption", + value: function(e) { + return this._getOption(e) + } + }], + t4(r.prototype, n), + Object.defineProperty(r, "prototype", { + writable: !1 + }), + s + }() + } + ]).default + } + , + window.TR = new r(), + window.TT = t, + console.log("TR", window.TR) + // e.exports = window.TT +} + +TEST(); \ No newline at end of file diff --git a/temp/sha256_test.html b/temp/sha256_test.html new file mode 100644 index 0000000..953d9a1 --- /dev/null +++ b/temp/sha256_test.html @@ -0,0 +1,210 @@ + + + + + + SHA256 哈希测试 + + + + +
    +

    SHA256 哈希计算器

    + + + +

    CryptoJS WordArray 对象:

    +
    
    +
    +        

    十六进制哈希结果:

    +
    
    +    
    + +
    +

    AWS V4 签名计算器 (模拟)

    + + + +

    签名 Query:

    +
    
    +        

    ISO8601 时间 (X-Amz-Date):

    +
    
    +        

    Canonical Request:

    +
    
    +        

    String to Sign:

    +
    
    +        

    Authorization Header:

    +
    
    +    
    + + + + \ No newline at end of file diff --git a/temp/test-uploader.html b/temp/test-uploader.html new file mode 100644 index 0000000..3923651 --- /dev/null +++ b/temp/test-uploader.html @@ -0,0 +1,21 @@ + + + + + + Test Uploader Library + + + +

    Test Uploader Library

    + + + + + + + \ No newline at end of file diff --git a/temp/uploadres.json b/temp/uploadres.json new file mode 100644 index 0000000..139841a --- /dev/null +++ b/temp/uploadres.json @@ -0,0 +1,51 @@ +{ + "ResponseMetadata": { + "RequestId": "2025052922475201E932216072FC5090DB", + "Action": "ApplyImageUpload", + "Version": "2018-08-01", + "Service": "imagex", + "Region": "cn-north-1" + }, + "Result": { + "UploadAddress": { + "StoreInfos": [ + { + "StoreUri": "tos-cn-i-tb4s082cfz/4db9ec5f1f9f4a50912c4822dd802a73", + "Auth": "SpaceKey/tb4s082cfz/1/:version:v2:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NDg1NTE2NzIsInNpZ25hdHVyZUluZm8iOnsiYWNjZXNzS2V5IjoiZmFrZV9hY2Nlc3Nfa2V5IiwiYnVja2V0IjoidG9zLWNuLWktdGI0czA4MmNmeiIsImV4cGlyZSI6MTc0ODU1MTY3MiwiZmlsZUluZm9zIjpbeyJvaWRLZXkiOiI0ZGI5ZWM1ZjFmOWY0YTUwOTEyYzQ4MjJkZDgwMmE3MyIsImZpbGVUeXBlIjoiMSJ9XSwiZXh0cmEiOnsiYmxvY2tfbW9kZSI6IiIsImNvbnRlbnRfdHlwZV9ibG9jayI6IntcIm1pbWVfcGN0XCI6MCxcIm1vZGVcIjowLFwibWltZV9saXN0XCI6bnVsbCxcImNvbmZsaWN0X2Jsb2NrXCI6ZmFsc2V9IiwiZW5jcnlwdF9hbGdvIjoiIiwiZW5jcnlwdF9rZXkiOiIiLCJzcGFjZSI6InRiNHMwODJjZnoifX19.nLTguWWNvqdmSahb5qGFnrTXv7NR6PFPg7nqUSu_ebg", + "UploadID": "705a490d4d664e74a9f1b258eac4ebdf" + } + ], + "UploadHosts": [ + "tos-hl-x.snssdk.com" + ], + "UploadHeader": null, + "SessionKey": "eyJhY2NvdW50VHlwZSI6IkltYWdlWCIsImFwcElkIjoiIiwiYml6VHlwZSI6IiIsImZpbGVUeXBlIjoiaW1hZ2UiLCJsZWdhbCI6IiIsInN0b3JlSW5mb3MiOiJbe1wiU3RvcmVVcmlcIjpcInRvcy1jbi1pLXRiNHMwODJjZnovNGRiOWVjNWYxZjlmNGE1MDkxMmM0ODIyZGQ4MDJhNzNcIixcIkF1dGhcIjpcIlNwYWNlS2V5L3RiNHMwODJjZnovMS86dmVyc2lvbjp2MjpleUpoYkdjaU9pSklVekkxTmlJc0luUjVjQ0k2SWtwWFZDSjkuZXlKbGVIQWlPakUzTkRnMU5URTJOeklzSW5OcFoyNWhkSFZ5WlVsdVptOGlPbnNpWVdOalpYTnpTMlY1SWpvaVptRnJaVjloWTJObGMzTmZhMlY1SWl3aVluVmphMlYwSWpvaWRHOXpMV051TFdrdGRHSTBjekE0TW1ObWVpSXNJbVY0Y0dseVpTSTZNVGMwT0RVMU1UWTNNaXdpWm1sc1pVbHVabTl6SWpwYmV5SnZhV1JMWlhraU9pSTBaR0k1WldNMVpqRm1PV1kwWVRVd09URXlZelE0TWpKa1pEZ3dNbUUzTXlJc0ltWnBiR1ZVZVhCbElqb2lNU0o5WFN3aVpYaDBjbUVpT25zaVlteHZZMnRmYlc5a1pTSTZJaUlzSW1OdmJuUmxiblJmZEhsd1pWOWliRzlqYXlJNkludGNJbTFwYldWZmNHTjBYQ0k2TUN4Y0ltMXZaR1ZjSWpvd0xGd2liV2x0WlY5c2FYTjBYQ0k2Ym5Wc2JDeGNJbU52Ym1ac2FXTjBYMkpzYjJOclhDSTZabUZzYzJWOUlpd2laVzVqY25sd2RGOWhiR2R2SWpvaUlpd2laVzVqY25sd2RGOXJaWGtpT2lJaUxDSnpjR0ZqWlNJNkluUmlOSE13T0RKalpub2lmWDE5Lm5MVGd1V1dOdnFkbVNhaGI1cUdGbnJUWHY3TlI2UEZQZzducVVTdV9lYmdcIixcIlVwbG9hZElEXCI6XCI3MDVhNDkwZDRkNjY0ZTc0YTlmMWIyNThlYWM0ZWJkZlwiLFwiVXBsb2FkSGVhZGVyXCI6bnVsbCxcIlN0b3JhZ2VIZWFkZXJcIjpudWxsfV0iLCJ1cGxvYWRIb3N0IjoidG9zLWhsLXguc25zc2RrLmNvbSIsInVyaSI6InRvcy1jbi1pLXRiNHMwODJjZnovNGRiOWVjNWYxZjlmNGE1MDkxMmM0ODIyZGQ4MDJhNzMiLCJ1c2VySWQiOiIifQ==", + "Cloud": "" + }, + "FallbackUploadAddress": { + "StoreInfos": null, + "UploadHosts": null, + "UploadHeader": null, + "SessionKey": "", + "Cloud": "" + }, + "InnerUploadAddress": { + "UploadNodes": [ + { + "StoreInfos": [ + { + "StoreUri": "tos-cn-i-tb4s082cfz/4db9ec5f1f9f4a50912c4822dd802a73", + "Auth": "SpaceKey/tb4s082cfz/1/:version:v2:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NDg1NTE2NzIsInNpZ25hdHVyZUluZm8iOnsiYWNjZXNzS2V5IjoiZmFrZV9hY2Nlc3Nfa2V5IiwiYnVja2V0IjoidG9zLWNuLWktdGI0czA4MmNmeiIsImV4cGlyZSI6MTc0ODU1MTY3MiwiZmlsZUluZm9zIjpbeyJvaWRLZXkiOiI0ZGI5ZWM1ZjFmOWY0YTUwOTEyYzQ4MjJkZDgwMmE3MyIsImZpbGVUeXBlIjoiMSJ9XSwiZXh0cmEiOnsiYmxvY2tfbW9kZSI6IiIsImNvbnRlbnRfdHlwZV9ibG9jayI6IntcIm1pbWVfcGN0XCI6MCxcIm1vZGVcIjowLFwibWltZV9saXN0XCI6bnVsbCxcImNvbmZsaWN0X2Jsb2NrXCI6ZmFsc2V9IiwiZW5jcnlwdF9hbGdvIjoiIiwiZW5jcnlwdF9rZXkiOiIiLCJzcGFjZSI6InRiNHMwODJjZnoifX19.nLTguWWNvqdmSahb5qGFnrTXv7NR6PFPg7nqUSu_ebg", + "UploadID": "705a490d4d664e74a9f1b258eac4ebdf" + } + ], + "UploadHost": "tos-hl-x.snssdk.com", + "UploadHeader": null, + "SessionKey": "eyJhY2NvdW50VHlwZSI6IkltYWdlWCIsImFwcElkIjoiIiwiYml6VHlwZSI6IiIsImZpbGVUeXBlIjoiaW1hZ2UiLCJsZWdhbCI6IiIsInN0b3JlSW5mb3MiOiJbe1wiU3RvcmVVcmlcIjpcInRvcy1jbi1pLXRiNHMwODJjZnovNGRiOWVjNWYxZjlmNGE1MDkxMmM0ODIyZGQ4MDJhNzNcIixcIkF1dGhcIjpcIlNwYWNlS2V5L3RiNHMwODJjZnovMS86dmVyc2lvbjp2MjpleUpoYkdjaU9pSklVekkxTmlJc0luUjVjQ0k2SWtwWFZDSjkuZXlKbGVIQWlPakUzTkRnMU5URTJOeklzSW5OcFoyNWhkSFZ5WlVsdVptOGlPbnNpWVdOalpYTnpTMlY1SWpvaVptRnJaVjloWTJObGMzTmZhMlY1SWl3aVluVmphMlYwSWpvaWRHOXpMV051TFdrdGRHSTBjekE0TW1ObWVpSXNJbVY0Y0dseVpTSTZNVGMwT0RVMU1UWTNNaXdpWm1sc1pVbHVabTl6SWpwYmV5SnZhV1JMWlhraU9pSTBaR0k1WldNMVpqRm1PV1kwWVRVd09URXlZelE0TWpKa1pEZ3dNbUUzTXlJc0ltWnBiR1ZVZVhCbElqb2lNU0o5WFN3aVpYaDBjbUVpT25zaVlteHZZMnRmYlc5a1pTSTZJaUlzSW1OdmJuUmxiblJmZEhsd1pWOWliRzlqYXlJNkludGNJbTFwYldWZmNHTjBYQ0k2TUN4Y0ltMXZaR1ZjSWpvd0xGd2liV2x0WlY5c2FYTjBYQ0k2Ym5Wc2JDeGNJbU52Ym1ac2FXTjBYMkpzYjJOclhDSTZabUZzYzJWOUlpd2laVzVqY25sd2RGOWhiR2R2SWpvaUlpd2laVzVqY25sd2RGOXJaWGtpT2lJaUxDSnpjR0ZqWlNJNkluUmlOSE13T0RKalpub2lmWDE5Lm5MVGd1V1dOdnFkbVNhaGI1cUdGbnJUWHY3TlI2UEZQZzducVVTdV9lYmdcIixcIlVwbG9hZElEXCI6XCI3MDVhNDkwZDRkNjY0ZTc0YTlmMWIyNThlYWM0ZWJkZlwiLFwiVXBsb2FkSGVhZGVyXCI6bnVsbCxcIlN0b3JhZ2VIZWFkZXJcIjpudWxsfV0iLCJ1cGxvYWRIb3N0IjoidG9zLWhsLXguc25zc2RrLmNvbSIsInVyaSI6InRvcy1jbi1pLXRiNHMwODJjZnovNGRiOWVjNWYxZjlmNGE1MDkxMmM0ODIyZGQ4MDJhNzMiLCJ1c2VySWQiOiIifQ==" + } + ] + }, + "RequestId": "2025052922475201E932216072FC5090DB", + "SDKParam": null + } +} \ No newline at end of file diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..b6477c3 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "baseUrl": ".", + "module": "NodeNext", + "moduleResolution": "NodeNext", + "allowImportingTsExtensions": true, + "allowSyntheticDefaultImports": true, + "noEmit": true, + "paths": { + "@/*": ["src/*"] + }, + "outDir": "./dist" + }, + "include": ["src/**/*", "libs.d.ts"], + "exclude": ["node_modules", "dist"] +} \ No newline at end of file diff --git a/vercel.json b/vercel.json new file mode 100644 index 0000000..74f98bc --- /dev/null +++ b/vercel.json @@ -0,0 +1,27 @@ +{ + "builds": [ + { + "src": "./dist/*.html", + "use": "@vercel/static" + }, + { + "src": "./dist/index.js", + "use": "@vercel/node" + } + ], + "routes": [ + { + "src": "/", + "dest": "/dist/welcome.html" + }, + { + "src": "/(.*)", + "dest": "/dist", + "headers": { + "Access-Control-Allow-Credentials": "true", + "Access-Control-Allow-Methods": "GET,OPTIONS,PATCH,DELETE,POST,PUT", + "Access-Control-Allow-Headers": "X-CSRF-Token, X-Requested-With, Accept, Accept-Version, Content-Length, Content-MD5, Content-Type, Date, X-Api-Version, Content-Type, Authorization" + } + } + ] +} \ No newline at end of file diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..5f9a56a --- /dev/null +++ b/yarn.lock @@ -0,0 +1,1563 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@esbuild/win32-x64@0.23.0": + version "0.23.0" + resolved "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.23.0.tgz" + integrity sha512-Arm+WgUFLUATuoxCJcahGuk6Yj9Pzxd6l11Zb/2aAuv5kWWvvfhLFo2fni4uSK5vzlUdCGZ/BdV5tH8klj8p8g== + +"@hapi/bourne@^3.0.0": + version "3.0.0" + resolved "https://registry.npmmirror.com/@hapi/bourne/-/bourne-3.0.0.tgz" + integrity sha512-Waj1cwPXJDucOib4a3bAISsKJVb15MKi9IvmTI/7ssVEm6sywXGjVJDhl6/umt1pK1ZS7PacXU3A1PmFKHEZ2w== + +"@isaacs/cliui@^8.0.2": + version "8.0.2" + resolved "https://registry.npmmirror.com/@isaacs/cliui/-/cliui-8.0.2.tgz" + integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA== + dependencies: + string-width "^5.1.2" + string-width-cjs "npm:string-width@^4.2.0" + strip-ansi "^7.0.1" + strip-ansi-cjs "npm:strip-ansi@^6.0.1" + wrap-ansi "^8.1.0" + wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" + +"@jridgewell/gen-mapping@^0.3.2": + version "0.3.5" + resolved "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz" + integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== + dependencies: + "@jridgewell/set-array" "^1.2.1" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.24" + +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.2" + resolved "https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz" + integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== + +"@jridgewell/set-array@^1.2.1": + version "1.2.1" + resolved "https://registry.npmmirror.com/@jridgewell/set-array/-/set-array-1.2.1.tgz" + integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== + +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": + version "1.5.0" + resolved "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz" + integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ== + +"@jridgewell/trace-mapping@^0.3.24": + version "0.3.25" + resolved "https://registry.npmmirror.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz" + integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== + dependencies: + "@nodelib/fs.stat" "2.0.5" + run-parallel "^1.1.9" + +"@nodelib/fs.stat@^2.0.2", "@nodelib/fs.stat@2.0.5": + version "2.0.5" + resolved "https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== + +"@nodelib/fs.walk@^1.2.3": + version "1.2.8" + resolved "https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz" + integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== + dependencies: + "@nodelib/fs.scandir" "2.1.5" + fastq "^1.6.0" + +"@pkgjs/parseargs@^0.11.0": + version "0.11.0" + resolved "https://registry.npmmirror.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz" + integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== + +"@rollup/rollup-win32-x64-msvc@4.19.1": + version "4.19.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.19.1.tgz" + integrity sha512-2bIrL28PcK3YCqD9anGxDxamxdiJAxA+l7fWIwM5o8UqNy1t3d1NdAweO2XhA0KTDJ5aH1FsuiT5+7VhtHliXg== + +"@types/estree@1.0.5": + version "1.0.5" + resolved "https://registry.npmmirror.com/@types/estree/-/estree-1.0.5.tgz" + integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== + +"@types/formidable@^2.0.4": + version "2.0.6" + resolved "https://registry.npmmirror.com/@types/formidable/-/formidable-2.0.6.tgz" + integrity sha512-L4HcrA05IgQyNYJj6kItuIkXrInJvsXTPC5B1i64FggWKKqSL+4hgt7asiSNva75AoLQjq29oPxFfU4GAQ6Z2w== + dependencies: + "@types/node" "*" + +"@types/lodash@^4.14.202": + version "4.17.7" + resolved "https://registry.npmmirror.com/@types/lodash/-/lodash-4.17.7.tgz" + integrity sha512-8wTvZawATi/lsmNu10/j2hk1KEP0IvjubqPE3cu1Xz7xfXXt5oCq3SNUz4fMIP4XGF9Ky+Ue2tBA3hcS7LSBlA== + +"@types/luxon@~3.4.0": + version "3.4.2" + resolved "https://registry.npmmirror.com/@types/luxon/-/luxon-3.4.2.tgz" + integrity sha512-TifLZlFudklWlMBfhubvgqTXRzLDI5pCbGa4P8a3wPyUQSW+1xQ5eDsreP9DWHX3tjq1ke96uYG/nwundroWcA== + +"@types/mime@^3.0.4": + version "3.0.4" + resolved "https://registry.npmmirror.com/@types/mime/-/mime-3.0.4.tgz" + integrity sha512-iJt33IQnVRkqeqC7PzBHPTC6fDlRNRW8vjrgqtScAhrmMwe8c4Eo7+fUGTa+XdWrpEgpyKWMYmi2dIwMAYRzPw== + +"@types/node@*": + version "20.14.12" + resolved "https://registry.npmmirror.com/@types/node/-/node-20.14.12.tgz" + integrity sha512-r7wNXakLeSsGT0H1AU863vS2wa5wBOK4bWMjZz2wj+8nBx+m5PeIn0k8AloSLpRuiwdRQZwarZqHE4FNArPuJQ== + dependencies: + undici-types "~5.26.4" + +accepts@^1.3.5: + version "1.3.8" + resolved "https://registry.npmmirror.com/accepts/-/accepts-1.3.8.tgz" + integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== + dependencies: + mime-types "~2.1.34" + negotiator "0.6.3" + +ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== + +ansi-regex@^6.0.1: + version "6.0.1" + resolved "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-6.0.1.tgz" + integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== + +ansi-styles@^4.0.0: + version "4.3.0" + resolved "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +ansi-styles@^6.1.0: + version "6.2.1" + resolved "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-6.2.1.tgz" + integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== + +any-promise@^1.0.0: + version "1.3.0" + resolved "https://registry.npmmirror.com/any-promise/-/any-promise-1.3.0.tgz" + integrity sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A== + +anymatch@~3.1.2: + version "3.1.3" + resolved "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/array-union/-/array-union-2.1.0.tgz" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + +asap@^2.0.0: + version "2.0.6" + resolved "https://registry.npmmirror.com/asap/-/asap-2.0.6.tgz" + integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== + +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz" + integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== + +axios@^1.6.7: + version "1.7.2" + resolved "https://registry.npmmirror.com/axios/-/axios-1.7.2.tgz" + integrity sha512-2A8QhOMrbomlDuiLeK9XibIBzuHeRcqqNOHp0Cyp5EoJ1IFDh+XZH3A6BkXtv0K4gFGCI0Y4BM7B1wOEi0Rmgw== + dependencies: + follow-redirects "^1.15.6" + form-data "^4.0.0" + proxy-from-env "^1.1.0" + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +binary-extensions@^2.0.0: + version "2.3.0" + resolved "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.3.0.tgz" + integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== + +brace-expansion@^2.0.1: + version "2.0.1" + resolved "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.1.tgz" + integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== + dependencies: + balanced-match "^1.0.0" + +braces@^3.0.3, braces@~3.0.2: + version "3.0.3" + resolved "https://registry.npmmirror.com/braces/-/braces-3.0.3.tgz" + integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== + dependencies: + fill-range "^7.1.1" + +bundle-require@^5.0.0: + version "5.0.0" + resolved "https://registry.npmmirror.com/bundle-require/-/bundle-require-5.0.0.tgz" + integrity sha512-GuziW3fSSmopcx4KRymQEJVbZUfqlCqcq7dvs6TYwKRZiegK/2buMxQTPs6MGlNv50wms1699qYO54R8XfRX4w== + dependencies: + load-tsconfig "^0.2.3" + +bytes@3.1.2: + version "3.1.2" + resolved "https://registry.npmmirror.com/bytes/-/bytes-3.1.2.tgz" + integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== + +cac@^6.7.14: + version "6.7.14" + resolved "https://registry.npmmirror.com/cac/-/cac-6.7.14.tgz" + integrity sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ== + +cache-content-type@^1.0.0: + version "1.0.1" + resolved "https://registry.npmmirror.com/cache-content-type/-/cache-content-type-1.0.1.tgz" + integrity sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA== + dependencies: + mime-types "^2.1.18" + ylru "^1.2.0" + +call-bind@^1.0.7: + version "1.0.7" + resolved "https://registry.npmmirror.com/call-bind/-/call-bind-1.0.7.tgz" + integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + set-function-length "^1.2.1" + +chokidar@^3.6.0: + version "3.6.0" + resolved "https://registry.npmmirror.com/chokidar/-/chokidar-3.6.0.tgz" + integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== + dependencies: + anymatch "~3.1.2" + braces "~3.0.2" + glob-parent "~5.1.2" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.6.0" + optionalDependencies: + fsevents "~2.3.2" + +co-body@^5.1.1: + version "5.2.0" + resolved "https://registry.npmmirror.com/co-body/-/co-body-5.2.0.tgz" + integrity sha512-sX/LQ7LqUhgyaxzbe7IqwPeTr2yfpfUIQ/dgpKo6ZI4y4lpQA0YxAomWIY+7I7rHWcG02PG+OuPREzMW/5tszQ== + dependencies: + inflation "^2.0.0" + qs "^6.4.0" + raw-body "^2.2.0" + type-is "^1.6.14" + +co-body@^6.0.0: + version "6.2.0" + resolved "https://registry.npmmirror.com/co-body/-/co-body-6.2.0.tgz" + integrity sha512-Kbpv2Yd1NdL1V/V4cwLVxraHDV6K8ayohr2rmH0J87Er8+zJjcTa6dAn9QMPC9CRgU8+aNajKbSf1TzDB1yKPA== + dependencies: + "@hapi/bourne" "^3.0.0" + inflation "^2.0.0" + qs "^6.5.2" + raw-body "^2.3.3" + type-is "^1.6.16" + +co@^4.6.0: + version "4.6.0" + resolved "https://registry.npmmirror.com/co/-/co-4.6.0.tgz" + integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +colors@^1.4.0: + version "1.4.0" + resolved "https://registry.npmmirror.com/colors/-/colors-1.4.0.tgz" + integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== + +combined-stream@^1.0.8: + version "1.0.8" + resolved "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz" + integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== + dependencies: + delayed-stream "~1.0.0" + +commander@^4.0.0: + version "4.1.1" + resolved "https://registry.npmmirror.com/commander/-/commander-4.1.1.tgz" + integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== + +consola@^3.2.3: + version "3.2.3" + resolved "https://registry.npmmirror.com/consola/-/consola-3.2.3.tgz" + integrity sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ== + +content-disposition@~0.5.2: + version "0.5.4" + resolved "https://registry.npmmirror.com/content-disposition/-/content-disposition-0.5.4.tgz" + integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== + dependencies: + safe-buffer "5.2.1" + +content-type@^1.0.4: + version "1.0.5" + resolved "https://registry.npmmirror.com/content-type/-/content-type-1.0.5.tgz" + integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== + +cookies@~0.9.0: + version "0.9.1" + resolved "https://registry.npmmirror.com/cookies/-/cookies-0.9.1.tgz" + integrity sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw== + dependencies: + depd "~2.0.0" + keygrip "~1.1.0" + +copy-to@^2.0.1: + version "2.0.1" + resolved "https://registry.npmmirror.com/copy-to/-/copy-to-2.0.1.tgz" + integrity sha512-3DdaFaU/Zf1AnpLiFDeNCD4TOWe3Zl2RZaTzUvWiIk5ERzcCodOE20Vqq4fzCbNoHURFHT4/us/Lfq+S2zyY4w== + +crc-32@^1.2.2: + version "1.2.2" + resolved "https://registry.npmmirror.com/crc-32/-/crc-32-1.2.2.tgz" + integrity sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ== + +cron@^3.1.6: + version "3.1.7" + resolved "https://registry.npmmirror.com/cron/-/cron-3.1.7.tgz" + integrity sha512-tlBg7ARsAMQLzgwqVxy8AZl/qlTc5nibqYwtNGoCrd+cV+ugI+tvZC1oT/8dFH8W455YrywGykx/KMmAqOr7Jw== + dependencies: + "@types/luxon" "~3.4.0" + luxon "~3.4.0" + +cross-spawn@^7.0.0, cross-spawn@^7.0.3: + version "7.0.3" + resolved "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +date-fns@^3.3.1: + version "3.6.0" + resolved "https://registry.npmmirror.com/date-fns/-/date-fns-3.6.0.tgz" + integrity sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww== + +debug@^4.3.2, debug@^4.3.4, debug@^4.3.5: + version "4.3.6" + resolved "https://registry.npmmirror.com/debug/-/debug-4.3.6.tgz" + integrity sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg== + dependencies: + ms "2.1.2" + +deep-equal@~1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/deep-equal/-/deep-equal-1.0.1.tgz" + integrity sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw== + +define-data-property@^1.1.4: + version "1.1.4" + resolved "https://registry.npmmirror.com/define-data-property/-/define-data-property-1.1.4.tgz" + integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + gopd "^1.0.1" + +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz" + integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== + +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/delegates/-/delegates-1.0.0.tgz" + integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ== + +depd@^2.0.0, depd@~2.0.0, depd@2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/depd/-/depd-2.0.0.tgz" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== + +depd@~1.1.2: + version "1.1.2" + resolved "https://registry.npmmirror.com/depd/-/depd-1.1.2.tgz" + integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== + +destroy@^1.0.4: + version "1.2.0" + resolved "https://registry.npmmirror.com/destroy/-/destroy-1.2.0.tgz" + integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== + +dezalgo@^1.0.4: + version "1.0.4" + resolved "https://registry.npmmirror.com/dezalgo/-/dezalgo-1.0.4.tgz" + integrity sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig== + dependencies: + asap "^2.0.0" + wrappy "1" + +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.npmmirror.com/dir-glob/-/dir-glob-3.0.1.tgz" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + +eastasianwidth@^0.2.0: + version "0.2.0" + resolved "https://registry.npmmirror.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz" + integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.npmmirror.com/ee-first/-/ee-first-1.1.1.tgz" + integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +emoji-regex@^9.2.2: + version "9.2.2" + resolved "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-9.2.2.tgz" + integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== + +encodeurl@^1.0.2: + version "1.0.2" + resolved "https://registry.npmmirror.com/encodeurl/-/encodeurl-1.0.2.tgz" + integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== + +es-define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/es-define-property/-/es-define-property-1.0.0.tgz" + integrity sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ== + dependencies: + get-intrinsic "^1.2.4" + +es-errors@^1.3.0: + version "1.3.0" + resolved "https://registry.npmmirror.com/es-errors/-/es-errors-1.3.0.tgz" + integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== + +esbuild@^0.23.0, esbuild@>=0.18: + version "0.23.0" + resolved "https://registry.npmmirror.com/esbuild/-/esbuild-0.23.0.tgz" + integrity sha512-1lvV17H2bMYda/WaFb2jLPeHU3zml2k4/yagNMG8Q/YtfMjCwEUZa2eXXMgZTVSL5q1n4H7sQ0X6CdJDqqeCFA== + optionalDependencies: + "@esbuild/aix-ppc64" "0.23.0" + "@esbuild/android-arm" "0.23.0" + "@esbuild/android-arm64" "0.23.0" + "@esbuild/android-x64" "0.23.0" + "@esbuild/darwin-arm64" "0.23.0" + "@esbuild/darwin-x64" "0.23.0" + "@esbuild/freebsd-arm64" "0.23.0" + "@esbuild/freebsd-x64" "0.23.0" + "@esbuild/linux-arm" "0.23.0" + "@esbuild/linux-arm64" "0.23.0" + "@esbuild/linux-ia32" "0.23.0" + "@esbuild/linux-loong64" "0.23.0" + "@esbuild/linux-mips64el" "0.23.0" + "@esbuild/linux-ppc64" "0.23.0" + "@esbuild/linux-riscv64" "0.23.0" + "@esbuild/linux-s390x" "0.23.0" + "@esbuild/linux-x64" "0.23.0" + "@esbuild/netbsd-x64" "0.23.0" + "@esbuild/openbsd-arm64" "0.23.0" + "@esbuild/openbsd-x64" "0.23.0" + "@esbuild/sunos-x64" "0.23.0" + "@esbuild/win32-arm64" "0.23.0" + "@esbuild/win32-ia32" "0.23.0" + "@esbuild/win32-x64" "0.23.0" + +escape-html@^1.0.3: + version "1.0.3" + resolved "https://registry.npmmirror.com/escape-html/-/escape-html-1.0.3.tgz" + integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== + +eventsource-parser@^1.1.2: + version "1.1.2" + resolved "https://registry.npmmirror.com/eventsource-parser/-/eventsource-parser-1.1.2.tgz" + integrity sha512-v0eOBUbiaFojBu2s2NPBfYUoRR9GjcDNvCXVaqEf5vVfpIAh9f8RCo4vXTP8c63QRKCFwoLpMpTdPwwhEKVgzA== + +execa@^5.1.1: + version "5.1.1" + resolved "https://registry.npmmirror.com/execa/-/execa-5.1.1.tgz" + integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== + dependencies: + cross-spawn "^7.0.3" + get-stream "^6.0.0" + human-signals "^2.1.0" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.1" + onetime "^5.1.2" + signal-exit "^3.0.3" + strip-final-newline "^2.0.0" + +fast-glob@^3.2.9: + version "3.3.2" + resolved "https://registry.npmmirror.com/fast-glob/-/fast-glob-3.3.2.tgz" + integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.4" + +fastq@^1.6.0: + version "1.17.1" + resolved "https://registry.npmmirror.com/fastq/-/fastq-1.17.1.tgz" + integrity sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w== + dependencies: + reusify "^1.0.4" + +fill-range@^7.1.1: + version "7.1.1" + resolved "https://registry.npmmirror.com/fill-range/-/fill-range-7.1.1.tgz" + integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== + dependencies: + to-regex-range "^5.0.1" + +follow-redirects@^1.15.6: + version "1.15.6" + resolved "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.6.tgz" + integrity sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA== + +foreground-child@^3.1.0: + version "3.2.1" + resolved "https://registry.npmmirror.com/foreground-child/-/foreground-child-3.2.1.tgz" + integrity sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA== + dependencies: + cross-spawn "^7.0.0" + signal-exit "^4.0.1" + +form-data@^4.0.0: + version "4.0.0" + resolved "https://registry.npmmirror.com/form-data/-/form-data-4.0.0.tgz" + integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + +formidable@^2.0.1: + version "2.1.2" + resolved "https://registry.npmmirror.com/formidable/-/formidable-2.1.2.tgz" + integrity sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g== + dependencies: + dezalgo "^1.0.4" + hexoid "^1.0.0" + once "^1.4.0" + qs "^6.11.0" + +fresh@~0.5.2: + version "0.5.2" + resolved "https://registry.npmmirror.com/fresh/-/fresh-0.5.2.tgz" + integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== + +fs-extra@^11.2.0: + version "11.2.0" + resolved "https://registry.npmmirror.com/fs-extra/-/fs-extra-11.2.0.tgz" + integrity sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.2.tgz" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + +get-intrinsic@^1.1.3, get-intrinsic@^1.2.4: + version "1.2.4" + resolved "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz" + integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== + dependencies: + es-errors "^1.3.0" + function-bind "^1.1.2" + has-proto "^1.0.1" + has-symbols "^1.0.3" + hasown "^2.0.0" + +get-stream@^6.0.0: + version "6.0.1" + resolved "https://registry.npmmirror.com/get-stream/-/get-stream-6.0.1.tgz" + integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== + +glob-parent@^5.1.2, glob-parent@~5.1.2: + version "5.1.2" + resolved "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob@^10.3.10: + version "10.4.5" + resolved "https://registry.npmmirror.com/glob/-/glob-10.4.5.tgz" + integrity sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg== + dependencies: + foreground-child "^3.1.0" + jackspeak "^3.1.2" + minimatch "^9.0.4" + minipass "^7.1.2" + package-json-from-dist "^1.0.0" + path-scurry "^1.11.1" + +globby@^11.1.0: + version "11.1.0" + resolved "https://registry.npmmirror.com/globby/-/globby-11.1.0.tgz" + integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== + dependencies: + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.2.9" + ignore "^5.2.0" + merge2 "^1.4.1" + slash "^3.0.0" + +gopd@^1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/gopd/-/gopd-1.0.1.tgz" + integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== + dependencies: + get-intrinsic "^1.1.3" + +graceful-fs@^4.1.6, graceful-fs@^4.2.0: + version "4.2.11" + resolved "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.11.tgz" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== + +has-property-descriptors@^1.0.2: + version "1.0.2" + resolved "https://registry.npmmirror.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz" + integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== + dependencies: + es-define-property "^1.0.0" + +has-proto@^1.0.1: + version "1.0.3" + resolved "https://registry.npmmirror.com/has-proto/-/has-proto-1.0.3.tgz" + integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q== + +has-symbols@^1.0.3: + version "1.0.3" + resolved "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.0.3.tgz" + integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== + +has-tostringtag@^1.0.0: + version "1.0.2" + resolved "https://registry.npmmirror.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz" + integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== + dependencies: + has-symbols "^1.0.3" + +hasown@^2.0.0: + version "2.0.2" + resolved "https://registry.npmmirror.com/hasown/-/hasown-2.0.2.tgz" + integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== + dependencies: + function-bind "^1.1.2" + +hexoid@^1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/hexoid/-/hexoid-1.0.0.tgz" + integrity sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g== + +http-assert@^1.3.0: + version "1.5.0" + resolved "https://registry.npmmirror.com/http-assert/-/http-assert-1.5.0.tgz" + integrity sha512-uPpH7OKX4H25hBmU6G1jWNaqJGpTXxey+YOUizJUAgu0AjLUeC8D73hTrhvDS5D+GJN1DN1+hhc/eF/wpxtp0w== + dependencies: + deep-equal "~1.0.1" + http-errors "~1.8.0" + +http-errors@^1.6.3, http-errors@~1.8.0: + version "1.8.1" + resolved "https://registry.npmmirror.com/http-errors/-/http-errors-1.8.1.tgz" + integrity sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g== + dependencies: + depd "~1.1.2" + inherits "2.0.4" + setprototypeof "1.2.0" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.1" + +http-errors@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/http-errors/-/http-errors-2.0.0.tgz" + integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== + dependencies: + depd "2.0.0" + inherits "2.0.4" + setprototypeof "1.2.0" + statuses "2.0.1" + toidentifier "1.0.1" + +http-errors@2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/http-errors/-/http-errors-2.0.0.tgz" + integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== + dependencies: + depd "2.0.0" + inherits "2.0.4" + setprototypeof "1.2.0" + statuses "2.0.1" + toidentifier "1.0.1" + +human-signals@^2.1.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/human-signals/-/human-signals-2.1.0.tgz" + integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== + +iconv-lite@0.4.24: + version "0.4.24" + resolved "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.4.24.tgz" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + +ignore@^5.2.0: + version "5.3.1" + resolved "https://registry.npmmirror.com/ignore/-/ignore-5.3.1.tgz" + integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== + +image-size@^2.0.2: + version "2.0.2" + resolved "https://registry.npmmirror.com/image-size/-/image-size-2.0.2.tgz" + integrity sha512-IRqXKlaXwgSMAMtpNzZa1ZAe8m+Sa1770Dhk8VkSsP9LS+iHD62Zd8FQKs8fbPiagBE7BzoFX23cxFnwshpV6w== + +inflation@^2.0.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/inflation/-/inflation-2.1.0.tgz" + integrity sha512-t54PPJHG1Pp7VQvxyVCJ9mBbjG3Hqryges9bXoOO6GExCPa+//i/d5GSuFtpx3ALLd7lgIAur6zrIlBQyJuMlQ== + +inherits@2.0.4: + version "2.0.4" + resolved "https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/is-binary-path/-/is-binary-path-2.1.0.tgz" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-generator-function@^1.0.7: + version "1.0.10" + resolved "https://registry.npmmirror.com/is-generator-function/-/is-generator-function-1.0.10.tgz" + integrity sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A== + dependencies: + has-tostringtag "^1.0.0" + +is-glob@^4.0.1, is-glob@~4.0.1: + version "4.0.3" + resolved "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-stream@^2.0.0: + version "2.0.1" + resolved "https://registry.npmmirror.com/is-stream/-/is-stream-2.0.1.tgz" + integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== + +jackspeak@^3.1.2: + version "3.4.3" + resolved "https://registry.npmmirror.com/jackspeak/-/jackspeak-3.4.3.tgz" + integrity sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw== + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + +joycon@^3.1.1: + version "3.1.1" + resolved "https://registry.npmmirror.com/joycon/-/joycon-3.1.1.tgz" + integrity sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw== + +jsonfile@^6.0.1: + version "6.1.0" + resolved "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.1.0.tgz" + integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== + dependencies: + universalify "^2.0.0" + optionalDependencies: + graceful-fs "^4.1.6" + +keygrip@~1.1.0: + version "1.1.0" + resolved "https://registry.npmmirror.com/keygrip/-/keygrip-1.1.0.tgz" + integrity sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ== + dependencies: + tsscmp "1.0.6" + +koa-body@^5.0.0: + version "5.0.0" + resolved "https://registry.npmmirror.com/koa-body/-/koa-body-5.0.0.tgz" + integrity sha512-nHwEODrQGiyKBILCWO8QSS40C87cKr2cp3y/Cw8u9Z8w5t0CdSkGm3+y9WK5BIAlPpo9tTw5RtSbxpVyG79vmw== + dependencies: + "@types/formidable" "^2.0.4" + co-body "^5.1.1" + formidable "^2.0.1" + +koa-bodyparser@^4.4.1: + version "4.4.1" + resolved "https://registry.npmmirror.com/koa-bodyparser/-/koa-bodyparser-4.4.1.tgz" + integrity sha512-kBH3IYPMb+iAXnrxIhXnW+gXV8OTzCu8VPDqvcDHW9SQrbkHmqPQtiZwrltNmSq6/lpipHnT7k7PsjlVD7kK0w== + dependencies: + co-body "^6.0.0" + copy-to "^2.0.1" + type-is "^1.6.18" + +koa-compose@^4.1.0: + version "4.1.0" + resolved "https://registry.npmmirror.com/koa-compose/-/koa-compose-4.1.0.tgz" + integrity sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw== + +koa-convert@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/koa-convert/-/koa-convert-2.0.0.tgz" + integrity sha512-asOvN6bFlSnxewce2e/DK3p4tltyfC4VM7ZwuTuepI7dEQVcvpyFuBcEARu1+Hxg8DIwytce2n7jrZtRlPrARA== + dependencies: + co "^4.6.0" + koa-compose "^4.1.0" + +koa-range@^0.3.0: + version "0.3.0" + resolved "https://registry.npmmirror.com/koa-range/-/koa-range-0.3.0.tgz" + integrity sha512-Ich3pCz6RhtbajYXRWjIl6O5wtrLs6kE3nkXc9XmaWe+MysJyZO7K4L3oce1Jpg/iMgCbj+5UCiMm/rqVtcDIg== + dependencies: + stream-slice "^0.1.2" + +koa-router@^12.0.1: + version "12.0.1" + resolved "https://registry.npmmirror.com/koa-router/-/koa-router-12.0.1.tgz" + integrity sha512-gaDdj3GtzoLoeosacd50kBBTnnh3B9AYxDThQUo4sfUyXdOhY6ku1qyZKW88tQCRgc3Sw6ChXYXWZwwgjOxE0w== + dependencies: + debug "^4.3.4" + http-errors "^2.0.0" + koa-compose "^4.1.0" + methods "^1.1.2" + path-to-regexp "^6.2.1" + +koa@^2.15.0: + version "2.15.3" + resolved "https://registry.npmmirror.com/koa/-/koa-2.15.3.tgz" + integrity sha512-j/8tY9j5t+GVMLeioLaxweJiKUayFhlGqNTzf2ZGwL0ZCQijd2RLHK0SLW5Tsko8YyyqCZC2cojIb0/s62qTAg== + dependencies: + accepts "^1.3.5" + cache-content-type "^1.0.0" + content-disposition "~0.5.2" + content-type "^1.0.4" + cookies "~0.9.0" + debug "^4.3.2" + delegates "^1.0.0" + depd "^2.0.0" + destroy "^1.0.4" + encodeurl "^1.0.2" + escape-html "^1.0.3" + fresh "~0.5.2" + http-assert "^1.3.0" + http-errors "^1.6.3" + is-generator-function "^1.0.7" + koa-compose "^4.1.0" + koa-convert "^2.0.0" + on-finished "^2.3.0" + only "~0.0.2" + parseurl "^1.3.2" + statuses "^1.5.0" + type-is "^1.6.16" + vary "^1.1.2" + +koa2-cors@^2.0.6: + version "2.0.6" + resolved "https://registry.npmmirror.com/koa2-cors/-/koa2-cors-2.0.6.tgz" + integrity sha512-JRCcSM4lamM+8kvKGDKlesYk2ASrmSTczDtGUnIadqMgnHU4Ct5Gw7Bxt3w3m6d6dy3WN0PU4oMP43HbddDEWg== + +lilconfig@^3.1.1: + version "3.1.2" + resolved "https://registry.npmmirror.com/lilconfig/-/lilconfig-3.1.2.tgz" + integrity sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow== + +lines-and-columns@^1.1.6: + version "1.2.4" + resolved "https://registry.npmmirror.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz" + integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== + +load-tsconfig@^0.2.3: + version "0.2.5" + resolved "https://registry.npmmirror.com/load-tsconfig/-/load-tsconfig-0.2.5.tgz" + integrity sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg== + +lodash.sortby@^4.7.0: + version "4.7.0" + resolved "https://registry.npmmirror.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz" + integrity sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA== + +lodash@^4.17.21: + version "4.17.21" + resolved "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + +lru-cache@^10.2.0: + version "10.4.3" + resolved "https://registry.npmmirror.com/lru-cache/-/lru-cache-10.4.3.tgz" + integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== + +luxon@~3.4.0: + version "3.4.4" + resolved "https://registry.npmmirror.com/luxon/-/luxon-3.4.4.tgz" + integrity sha512-zobTr7akeGHnv7eBOXcRgMeCP6+uyYsczwmeRCauvpvaAltgNyTbLH/+VaEAPUeWBT+1GuNmz4wC/6jtQzbbVA== + +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.npmmirror.com/media-typer/-/media-typer-0.3.0.tgz" + integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== + +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/merge-stream/-/merge-stream-2.0.0.tgz" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== + +merge2@^1.3.0, merge2@^1.4.1: + version "1.4.1" + resolved "https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== + +methods@^1.1.2: + version "1.1.2" + resolved "https://registry.npmmirror.com/methods/-/methods-1.1.2.tgz" + integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== + +micromatch@^4.0.4: + version "4.0.7" + resolved "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.7.tgz" + integrity sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q== + dependencies: + braces "^3.0.3" + picomatch "^2.3.1" + +mime-db@1.52.0: + version "1.52.0" + resolved "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz" + integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== + +mime-types@^2.1.12, mime-types@^2.1.18, mime-types@~2.1.24, mime-types@~2.1.34: + version "2.1.35" + resolved "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz" + integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== + dependencies: + mime-db "1.52.0" + +mime@^4.0.1: + version "4.0.4" + resolved "https://registry.npmmirror.com/mime/-/mime-4.0.4.tgz" + integrity sha512-v8yqInVjhXyqP6+Kw4fV3ZzeMRqEW6FotRsKXjRS5VMTNIuXsdRoAvklpoRgSqXm6o9VNH4/C0mgedko9DdLsQ== + +mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + +minimatch@^9.0.4: + version "9.0.5" + resolved "https://registry.npmmirror.com/minimatch/-/minimatch-9.0.5.tgz" + integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== + dependencies: + brace-expansion "^2.0.1" + +minimist@^1.2.8: + version "1.2.8" + resolved "https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== + +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.1.2: + version "7.1.2" + resolved "https://registry.npmmirror.com/minipass/-/minipass-7.1.2.tgz" + integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +mz@^2.7.0: + version "2.7.0" + resolved "https://registry.npmmirror.com/mz/-/mz-2.7.0.tgz" + integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q== + dependencies: + any-promise "^1.0.0" + object-assign "^4.0.1" + thenify-all "^1.0.0" + +negotiator@0.6.3: + version "0.6.3" + resolved "https://registry.npmmirror.com/negotiator/-/negotiator-0.6.3.tgz" + integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== + +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +npm-run-path@^4.0.1: + version "4.0.1" + resolved "https://registry.npmmirror.com/npm-run-path/-/npm-run-path-4.0.1.tgz" + integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== + dependencies: + path-key "^3.0.0" + +object-assign@^4.0.1: + version "4.1.1" + resolved "https://registry.npmmirror.com/object-assign/-/object-assign-4.1.1.tgz" + integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== + +object-inspect@^1.13.1: + version "1.13.2" + resolved "https://registry.npmmirror.com/object-inspect/-/object-inspect-1.13.2.tgz" + integrity sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g== + +on-finished@^2.3.0: + version "2.4.1" + resolved "https://registry.npmmirror.com/on-finished/-/on-finished-2.4.1.tgz" + integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== + dependencies: + ee-first "1.1.1" + +once@^1.4.0: + version "1.4.0" + resolved "https://registry.npmmirror.com/once/-/once-1.4.0.tgz" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== + dependencies: + wrappy "1" + +onetime@^5.1.2: + version "5.1.2" + resolved "https://registry.npmmirror.com/onetime/-/onetime-5.1.2.tgz" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== + dependencies: + mimic-fn "^2.1.0" + +only@~0.0.2: + version "0.0.2" + resolved "https://registry.npmmirror.com/only/-/only-0.0.2.tgz" + integrity sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ== + +package-json-from-dist@^1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz" + integrity sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw== + +parseurl@^1.3.2: + version "1.3.3" + resolved "https://registry.npmmirror.com/parseurl/-/parseurl-1.3.3.tgz" + integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== + +path-key@^3.0.0, path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-scurry@^1.11.1: + version "1.11.1" + resolved "https://registry.npmmirror.com/path-scurry/-/path-scurry-1.11.1.tgz" + integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== + dependencies: + lru-cache "^10.2.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + +path-to-regexp@^6.2.1: + version "6.2.2" + resolved "https://registry.npmmirror.com/path-to-regexp/-/path-to-regexp-6.2.2.tgz" + integrity sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw== + +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.npmmirror.com/path-type/-/path-type-4.0.0.tgz" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + +picocolors@^1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.1.tgz" + integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== + +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: + version "2.3.1" + resolved "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== + +pirates@^4.0.1: + version "4.0.6" + resolved "https://registry.npmmirror.com/pirates/-/pirates-4.0.6.tgz" + integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== + +postcss-load-config@^6.0.1: + version "6.0.1" + resolved "https://registry.npmmirror.com/postcss-load-config/-/postcss-load-config-6.0.1.tgz" + integrity sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g== + dependencies: + lilconfig "^3.1.1" + +proxy-from-env@^1.1.0: + version "1.1.0" + resolved "https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz" + integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== + +punycode@^2.1.0: + version "2.3.1" + resolved "https://registry.npmmirror.com/punycode/-/punycode-2.3.1.tgz" + integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== + +qs@^6.11.0, qs@^6.4.0, qs@^6.5.2: + version "6.12.3" + resolved "https://registry.npmmirror.com/qs/-/qs-6.12.3.tgz" + integrity sha512-AWJm14H1vVaO/iNZ4/hO+HyaTehuy9nRqVdkTqlJt0HWvBiBIEXFmb4C0DGeYo3Xes9rrEW+TxHsaigCbN5ICQ== + dependencies: + side-channel "^1.0.6" + +queue-microtask@^1.2.2: + version "1.2.3" + resolved "https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== + +randombytes@2.0.3: + version "2.0.3" + resolved "https://registry.npmmirror.com/randombytes/-/randombytes-2.0.3.tgz" + integrity sha512-lDVjxQQFoCG1jcrP06LNo2lbWp4QTShEXnhActFBwYuHprllQV6VUpwreApsYqCgD+N1mHoqJ/BI/4eV4R2GYg== + +randomstring@^1.3.0: + version "1.3.0" + resolved "https://registry.npmmirror.com/randomstring/-/randomstring-1.3.0.tgz" + integrity sha512-gY7aQ4i1BgwZ8I1Op4YseITAyiDiajeZOPQUbIq9TPGPhUm5FX59izIaOpmKbME1nmnEiABf28d9K2VSii6BBg== + dependencies: + randombytes "2.0.3" + +raw-body@^2.2.0, raw-body@^2.3.3: + version "2.5.2" + resolved "https://registry.npmmirror.com/raw-body/-/raw-body-2.5.2.tgz" + integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA== + dependencies: + bytes "3.1.2" + http-errors "2.0.0" + iconv-lite "0.4.24" + unpipe "1.0.0" + +readdirp@~3.6.0: + version "3.6.0" + resolved "https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz" + integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== + dependencies: + picomatch "^2.2.1" + +resolve-from@^5.0.0: + version "5.0.0" + resolved "https://registry.npmmirror.com/resolve-from/-/resolve-from-5.0.0.tgz" + integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== + +reusify@^1.0.4: + version "1.0.4" + resolved "https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz" + integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== + +rollup@^4.19.0: + version "4.19.1" + resolved "https://registry.npmmirror.com/rollup/-/rollup-4.19.1.tgz" + integrity sha512-K5vziVlg7hTpYfFBI+91zHBEMo6jafYXpkMlqZjg7/zhIG9iHqazBf4xz9AVdjS9BruRn280ROqLI7G3OFRIlw== + dependencies: + "@types/estree" "1.0.5" + optionalDependencies: + "@rollup/rollup-android-arm-eabi" "4.19.1" + "@rollup/rollup-android-arm64" "4.19.1" + "@rollup/rollup-darwin-arm64" "4.19.1" + "@rollup/rollup-darwin-x64" "4.19.1" + "@rollup/rollup-linux-arm-gnueabihf" "4.19.1" + "@rollup/rollup-linux-arm-musleabihf" "4.19.1" + "@rollup/rollup-linux-arm64-gnu" "4.19.1" + "@rollup/rollup-linux-arm64-musl" "4.19.1" + "@rollup/rollup-linux-powerpc64le-gnu" "4.19.1" + "@rollup/rollup-linux-riscv64-gnu" "4.19.1" + "@rollup/rollup-linux-s390x-gnu" "4.19.1" + "@rollup/rollup-linux-x64-gnu" "4.19.1" + "@rollup/rollup-linux-x64-musl" "4.19.1" + "@rollup/rollup-win32-arm64-msvc" "4.19.1" + "@rollup/rollup-win32-ia32-msvc" "4.19.1" + "@rollup/rollup-win32-x64-msvc" "4.19.1" + fsevents "~2.3.2" + +run-parallel@^1.1.9: + version "1.2.0" + resolved "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + dependencies: + queue-microtask "^1.2.2" + +safe-buffer@5.2.1: + version "5.2.1" + resolved "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +"safer-buffer@>= 2.1.2 < 3": + version "2.1.2" + resolved "https://registry.npmmirror.com/safer-buffer/-/safer-buffer-2.1.2.tgz" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +set-function-length@^1.2.1: + version "1.2.2" + resolved "https://registry.npmmirror.com/set-function-length/-/set-function-length-1.2.2.tgz" + integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + gopd "^1.0.1" + has-property-descriptors "^1.0.2" + +setprototypeof@1.2.0: + version "1.2.0" + resolved "https://registry.npmmirror.com/setprototypeof/-/setprototypeof-1.2.0.tgz" + integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +side-channel@^1.0.6: + version "1.0.6" + resolved "https://registry.npmmirror.com/side-channel/-/side-channel-1.0.6.tgz" + integrity sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA== + dependencies: + call-bind "^1.0.7" + es-errors "^1.3.0" + get-intrinsic "^1.2.4" + object-inspect "^1.13.1" + +signal-exit@^3.0.3: + version "3.0.7" + resolved "https://registry.npmmirror.com/signal-exit/-/signal-exit-3.0.7.tgz" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== + +signal-exit@^4.0.1: + version "4.1.0" + resolved "https://registry.npmmirror.com/signal-exit/-/signal-exit-4.1.0.tgz" + integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== + +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.npmmirror.com/slash/-/slash-3.0.0.tgz" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +source-map@0.8.0-beta.0: + version "0.8.0-beta.0" + resolved "https://registry.npmmirror.com/source-map/-/source-map-0.8.0-beta.0.tgz" + integrity sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA== + dependencies: + whatwg-url "^7.0.0" + +statuses@^1.5.0, "statuses@>= 1.5.0 < 2": + version "1.5.0" + resolved "https://registry.npmmirror.com/statuses/-/statuses-1.5.0.tgz" + integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== + +statuses@2.0.1: + version "2.0.1" + resolved "https://registry.npmmirror.com/statuses/-/statuses-2.0.1.tgz" + integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== + +stream-slice@^0.1.2: + version "0.1.2" + resolved "https://registry.npmmirror.com/stream-slice/-/stream-slice-0.1.2.tgz" + integrity sha512-QzQxpoacatkreL6jsxnVb7X5R/pGw9OUv2qWTYWnmLpg4NdN31snPy/f3TdQE1ZUXaThRvj1Zw4/OGg0ZkaLMA== + +"string-width-cjs@npm:string-width@^4.2.0": + version "4.2.3" + resolved "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string-width@^4.1.0: + version "4.2.3" + resolved "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string-width@^5.0.1, string-width@^5.1.2: + version "5.1.2" + resolved "https://registry.npmmirror.com/string-width/-/string-width-5.1.2.tgz" + integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== + dependencies: + eastasianwidth "^0.2.0" + emoji-regex "^9.2.2" + strip-ansi "^7.0.1" + +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": + version "6.0.1" + resolved "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-ansi@^7.0.1: + version "7.1.0" + resolved "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-7.1.0.tgz" + integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ== + dependencies: + ansi-regex "^6.0.1" + +strip-final-newline@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz" + integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== + +sucrase@^3.35.0: + version "3.35.0" + resolved "https://registry.npmmirror.com/sucrase/-/sucrase-3.35.0.tgz" + integrity sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA== + dependencies: + "@jridgewell/gen-mapping" "^0.3.2" + commander "^4.0.0" + glob "^10.3.10" + lines-and-columns "^1.1.6" + mz "^2.7.0" + pirates "^4.0.1" + ts-interface-checker "^0.1.9" + +thenify-all@^1.0.0: + version "1.6.0" + resolved "https://registry.npmmirror.com/thenify-all/-/thenify-all-1.6.0.tgz" + integrity sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA== + dependencies: + thenify ">= 3.1.0 < 4" + +"thenify@>= 3.1.0 < 4": + version "3.3.1" + resolved "https://registry.npmmirror.com/thenify/-/thenify-3.3.1.tgz" + integrity sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw== + dependencies: + any-promise "^1.0.0" + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +toidentifier@1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/toidentifier/-/toidentifier-1.0.1.tgz" + integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== + +tr46@^1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/tr46/-/tr46-1.0.1.tgz" + integrity sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA== + dependencies: + punycode "^2.1.0" + +tree-kill@^1.2.2: + version "1.2.2" + resolved "https://registry.npmmirror.com/tree-kill/-/tree-kill-1.2.2.tgz" + integrity sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A== + +ts-interface-checker@^0.1.9: + version "0.1.13" + resolved "https://registry.npmmirror.com/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz" + integrity sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA== + +tsscmp@1.0.6: + version "1.0.6" + resolved "https://registry.npmmirror.com/tsscmp/-/tsscmp-1.0.6.tgz" + integrity sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA== + +tsup@^8.0.2: + version "8.2.3" + resolved "https://registry.npmmirror.com/tsup/-/tsup-8.2.3.tgz" + integrity sha512-6YNT44oUfXRbZuSMNmN36GzwPPIlD2wBccY7looM2fkTcxkf2NEmwr3OZuDZoySklnrIG4hoEtzy8yUXYOqNcg== + dependencies: + bundle-require "^5.0.0" + cac "^6.7.14" + chokidar "^3.6.0" + consola "^3.2.3" + debug "^4.3.5" + esbuild "^0.23.0" + execa "^5.1.1" + globby "^11.1.0" + joycon "^3.1.1" + picocolors "^1.0.1" + postcss-load-config "^6.0.1" + resolve-from "^5.0.0" + rollup "^4.19.0" + source-map "0.8.0-beta.0" + sucrase "^3.35.0" + tree-kill "^1.2.2" + +type-is@^1.6.14, type-is@^1.6.16, type-is@^1.6.18: + version "1.6.18" + resolved "https://registry.npmmirror.com/type-is/-/type-is-1.6.18.tgz" + integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== + dependencies: + media-typer "0.3.0" + mime-types "~2.1.24" + +typescript@^5.3.3, typescript@>=4.5.0: + version "5.5.4" + resolved "https://registry.npmmirror.com/typescript/-/typescript-5.5.4.tgz" + integrity sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q== + +undici-types@~5.26.4: + version "5.26.5" + resolved "https://registry.npmmirror.com/undici-types/-/undici-types-5.26.5.tgz" + integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== + +universalify@^2.0.0: + version "2.0.1" + resolved "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz" + integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw== + +unpipe@1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/unpipe/-/unpipe-1.0.0.tgz" + integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== + +uuid@^9.0.1: + version "9.0.1" + resolved "https://registry.npmmirror.com/uuid/-/uuid-9.0.1.tgz" + integrity sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA== + +vary@^1.1.2: + version "1.1.2" + resolved "https://registry.npmmirror.com/vary/-/vary-1.1.2.tgz" + integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== + +webidl-conversions@^4.0.2: + version "4.0.2" + resolved "https://registry.npmmirror.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz" + integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== + +whatwg-url@^7.0.0: + version "7.1.0" + resolved "https://registry.npmmirror.com/whatwg-url/-/whatwg-url-7.1.0.tgz" + integrity sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg== + dependencies: + lodash.sortby "^4.7.0" + tr46 "^1.0.1" + webidl-conversions "^4.0.2" + +which@^2.0.1: + version "2.0.2" + resolved "https://registry.npmmirror.com/which/-/which-2.0.2.tgz" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": + version "7.0.0" + resolved "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^8.1.0: + version "8.1.0" + resolved "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz" + integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== + dependencies: + ansi-styles "^6.1.0" + string-width "^5.0.1" + strip-ansi "^7.0.1" + +wrappy@1: + version "1.0.2" + resolved "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== + +yaml@^2.3.4, yaml@^2.4.2: + version "2.5.0" + resolved "https://registry.npmmirror.com/yaml/-/yaml-2.5.0.tgz" + integrity sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw== + +ylru@^1.2.0: + version "1.4.0" + resolved "https://registry.npmmirror.com/ylru/-/ylru-1.4.0.tgz" + integrity sha512-2OQsPNEmBCvXuFlIni/a+Rn+R2pHW9INm0BxXJ4hVDA8TirqMj+J/Rp9ItLatT/5pZqWwefVrTQcHpixsxnVlA==