@authme/identity-verification 2.8.11 → 2.8.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/styles/style.css +11 -7
- package/index.cjs +61 -22
- package/index.js +61 -22
- package/package.json +6 -6
package/index.cjs
CHANGED
|
@@ -75,7 +75,12 @@ function __awaiter(thisArg, _arguments, P, generator) {
|
|
|
75
75
|
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
76
76
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
77
77
|
});
|
|
78
|
-
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
81
|
+
var e = new Error(message);
|
|
82
|
+
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
83
|
+
};
|
|
79
84
|
|
|
80
85
|
const LIVENESS_GUIDE_IMG = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzI3IiBoZWlnaHQ9IjI3NSIgdmlld0JveD0iMCAwIDMyNyAyNzUiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPHJlY3Qgd2lkdGg9IjMyNyIgaGVpZ2h0PSIyNzUiIGZpbGw9IiNGOEY4RjgiIC8+CiAgPHBhdGgKICAgIGQ9Ik05NC40NTc1IDg4LjgzNzZMNjcuMzUyNyA3MC4yNzAzQzY1LjUyNzMgNjguNjM4NyA2My4yOTQzIDY3LjQ0NzYgNjAuODgyMSA2Ny4wNzI0QzU3LjU0MDkgNjYuNTUwMiA1My41MTUxIDY3LjM5ODcgNTIuNzQ5MSA3NC4xODZDNTIuMTI5NyA3OS43MDA4IDU0LjAyMDQgODUuMTk5MiA1Ny41NzM1IDg5LjQ0MTNMOTQuNDU3NSAxMzguMDNWODguODM3NloiCiAgICBmaWxsPSIjRjhDQ0M3IiAvPgogIDxwYXRoIG9wYWNpdHk9IjAuMyIKICAgIGQ9Ik0xMTYuNzA5IDI3SDIzMS44OTJDMjQ0LjE2NSAyNyAyNTQuMTM5IDM2Ljk4NTMgMjU0LjEzOSA0OS4yNzExVjI3NC40NjJIOTQuNDYwOVY0OS4yNzExQzk0LjQ2MDkgMzYuOTg1MyAxMDQuNDM2IDI3IDExNi43MDkgMjdaIgogICAgZmlsbD0iIzQzQTJDMiIgLz4KICA8cGF0aAogICAgZD0iTTExNy4yNDUgNDUuOTkyOUgyMzEuMzUyQzIzNy42NDQgNDUuOTkyOSAyNDIuNzYxIDUxLjA5OTcgMjQyLjc2MSA1Ny40MTM5VjI3NC40NjNIMTA1LjgzNlY1Ny4zOTc2QzEwNS44MzYgNTEuMDk5NyAxMTAuOTM3IDQ1Ljk3NjYgMTE3LjI0NSA0NS45NzY2VjQ1Ljk5MjlaIgogICAgZmlsbD0id2hpdGUiIC8+CiAgPHBhdGgKICAgIGQ9Ik0xMjAuMzU5IDI1OS45NTdIMjI3LjgzMkMyMjkuNTkyIDI1OS45NTcgMjMxLjAyNyAyNjEuMzkzIDIzMS4wMjcgMjYzLjE1NVYyNzQuNDc4SDExNy4xNjRWMjYzLjE1NUMxMTcuMTY0IDI2MS4zOTMgMTE4LjU5OCAyNTkuOTU3IDEyMC4zNTkgMjU5Ljk1N1oiCiAgICBmaWxsPSIjMDBDMUI2IiAvPgogIDxwYXRoCiAgICBkPSJNMjcxLjgxOSAyNzQuNDZMMjcxLjUxIDI0My42MzlDMjcxLjUxIDI0My42MzkgMjc1LjQwNSAxNjIuMjIzIDI1NS4yNiAxNTMuNzIzQzI1NS4yNiAxNTMuNzIzIDIzOC42NTEgMTUwLjY4OCAyMzguNDA3IDE4NS42MDRMMjM2Ljk1NiAyMjYuNTA4QzIzNi45NTYgMjI2LjUwOCAyMDkuOTE3IDIzNS4wNzMgMjA2LjA3IDI3NC40NiIKICAgIGZpbGw9IiNGOENDQzciIC8+CiAgPHBhdGgKICAgIGQ9Ik03OS41NDYxIDI0Mi40MDFDNzkuNTQ2MSAyNDIuNDAxIDY1LjMzMzYgMjIxLjg5MiA2Ny45MjUxIDIwMi4xMzRDNjguNTQ0NSAxOTcuMzY5IDcwLjc2MTEgMTkyLjg2NiA3NC41NDI0IDE4OS45MTNDNzYuMTA3MSAxODguNjg5IDc4LjAxNCAxODcuNjI5IDgwLjI3OTUgMTg3LjA3NEw5NC40NDMxIDIwNy4xNzVWMjE2Ljc1M0M5Ni40MTUyIDIyMi4wMzkgOTkuMzE2NCAyMjcuNTM3IDEwMC42MiAyMzMuMDM2QzEwMS42OTYgMjM3LjU4OCAxMDIuNTYgMjQyLjIwNSAxMDIuODg2IDI0Ni44ODhDMTAzLjA5OCAyNDkuOTIzIDEwMy45NDUgMjU0LjgxNyAxMDIuMjgzIDI1Ny41NThDMTAxLjI1NiAyNTkuMjM5IDk4Ljg5MjcgMjU5LjQ4NCA5Ny4wNTA5IDI1OS4zMDRDODguMjY1OSAyNTguNDg4IDgzLjg2NTIgMjQ4LjY1IDc5LjU0NjEgMjQyLjQxN1YyNDIuNDAxWiIKICAgIGZpbGw9IiNGOENDQzciIC8+CiAgPHBhdGgKICAgIGQ9Ik05NC40NTg3IDIwNy4xNzVWMjE2Ljc1MkM5Ni40MzA5IDIyMi4wMzggOTkuMzMyIDIyNy41MzcgMTAwLjYzNiAyMzMuMDM1QzEwMS43MTIgMjM3LjU4NyAxMDIuNTc1IDI0Mi4yMDUgMTAyLjkwMSAyNDYuODg3QzEwMy4xMTMgMjQ5LjkyMiAxMDMuOTYxIDI1NC44MTcgMTAyLjI5OCAyNTcuNTU4QzEwMS4yNzIgMjU5LjIzOCA5OC45MDgzIDI1OS40ODMgOTcuMDY2NSAyNTkuMzA0Qzg4LjI4MTUgMjU4LjQ4OCA4My44ODA5IDI0OC42NDkgNzkuNTYxNyAyNDIuNDE3Qzc5LjU2MTcgMjQyLjQxNyA2NS4zNDkyIDIyMS45MDggNjcuOTQwNyAyMDIuMTQ5QzY4LjU2MDEgMTk3LjM4NSA3MC43NzY3IDE5Mi44ODIgNzQuNTU4IDE4OS45MjlDNzYuMTIyNyAxODguNzA1IDc4LjAyOTYgMTg3LjY0NSA4MC4yOTUxIDE4Ny4wOSIKICAgIHN0cm9rZT0iI0YyQjFBQyIgc3Ryb2tlLXdpZHRoPSIzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIC8+CiAgPHBhdGgKICAgIGQ9Ik04OC4yNjY4IDQyLjUzMkM4NS43NTY4IDQwLjczNzIgODQuMjA4NCAzOS43MDkzIDgxLjc5NjIgMzkuMzM0MUM3OC40NTUgMzguODEyIDc0LjQyOTIgMzkuNjYwNCA3My42NjMxIDQ2LjQ0NzhDNzMuMDQzOCA1MS45NjI1IDc0LjkzNDQgNTcuNDYwOSA3OC40ODc2IDYxLjcwM0w5NC40OTI5IDgyLjc4M1Y0Ni44MDY3TDg4LjI2NjggNDIuNTQ4M1Y0Mi41MzJaIgogICAgZmlsbD0iI0Y4Q0NDNyIgLz4KICA8cGF0aAogICAgZD0iTTg3LjM3MTMgMjAyLjg2OEM4Ny4zNzEzIDIwMi44NjggNzEuNTk0MSAxODIuNzAxIDY2LjkwMDEgMTU3LjQ5M0M2Ni4yOTcgMTU0LjI0NyA2Ni4yNDgxIDE1MC45MDIgNjcuMDMwNSAxNDcuNzA0QzY4Ljc0MTggMTQwLjcwNSA3NC42MjU3IDEzMS41MTkgOTQuNDYxMiAxMzcuMjEzVjE2My4yNjlDOTQuNDYxMiAxNjMuMjY5IDEwNS4zIDE4NC45NjkgMTAzLjYyMSAyMDAuMDk0QzEwMy42MjEgMjAwLjA5NCAxMDEuNjY1IDIxOC44MDggODcuMzg3NiAyMDIuODY4SDg3LjM3MTNaIgogICAgZmlsbD0iI0Y4Q0NDNyIgLz4KICA8cGF0aAogICAgZD0iTTk0LjQ2MDUgMTYzLjI2OUM5NC40NjA1IDE2My4yNjkgMTA1LjI5OSAxODQuOTY5IDEwMy42MiAyMDAuMDk0QzEwMy42MiAyMDAuMDk0IDEwMS42NjUgMjE4LjgwOCA4Ny4zODY5IDIwMi44NjhDODcuMzg2OSAyMDIuODY4IDcxLjYwOTcgMTgyLjcwMSA2Ni45MTU3IDE1Ny40OTNDNjYuMzEyNyAxNTQuMjQ3IDY2LjI2MzggMTUwLjkwMiA2Ny4wNDYxIDE0Ny43MDRDNjguNzU3NSAxNDAuNzA1IDc0LjY0MTMgMTMxLjUxOSA5NC40NzY4IDEzNy4yMTMiCiAgICBzdHJva2U9IiNGMkIxQUMiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiAvPgogIDxwYXRoIGQ9Ik0yMTcuMzk4IDExOS40M0gyMjQuMDgxIiBzdHJva2U9IndoaXRlIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgLz4KICA8cGF0aCBkPSJNMjIyLjY2OCAxMTcuMTk1TDIyNC42NCAxMTkuMzk4TDIyMi4zOTEgMTIxLjY1IiBzdHJva2U9IndoaXRlIiBzdHJva2UtbGluZWNhcD0icm91bmQiCiAgICBzdHJva2UtbGluZWpvaW49InJvdW5kIiAvPgogIDxtYXNrIGlkPSJtYXNrMF8xMDE0MF83OTU0MjgiIHN0eWxlPSJtYXNrLXR5cGU6bHVtaW5hbmNlIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4PSIxMjAiIHk9Ijc1IiB3aWR0aD0iMTA4IgogICAgaGVpZ2h0PSIxMzUiPgogICAgPHBhdGgKICAgICAgZD0iTTE3NC4wOTYgMjA5LjM2MkMyMDMuNTU4IDIwOS4zNjIgMjI3LjQ0MSAxNzkuNDg1IDIyNy40NDEgMTQyLjYzQzIyNy40NDEgMTA1Ljc3NSAyMDMuNTU4IDc1Ljg5ODQgMTc0LjA5NiA3NS44OTg0QzE0NC42MzQgNzUuODk4NCAxMjAuNzUgMTA1Ljc3NSAxMjAuNzUgMTQyLjYzQzEyMC43NSAxNzkuNDg1IDE0NC42MzQgMjA5LjM2MiAxNzQuMDk2IDIwOS4zNjJaIgogICAgICBmaWxsPSJ3aGl0ZSIgLz4KICA8L21hc2s+CiAgPGcgbWFzaz0idXJsKCNtYXNrMF8xMDE0MF83OTU0MjgpIj4KICAgIDxwYXRoCiAgICAgIGQ9Ik0yMDYuNjYyIDE3OS4xMjlDMjA2LjY2MiAxNzkuMTI5IDI3NC4wNTggMTg1LjM2MiAyMzMuOTQ2IDIzMi40OThIMTI2Ljg2NEMxMjYuODY0IDIzMi40OTggODkuNTA3NCAxOTkuMjYzIDEzOS4zODEgMTc5LjEyOUgyMDYuNjc5SDIwNi42NjJaIgogICAgICBmaWxsPSIjMjU2MDhBIiAvPgogICAgPHBhdGggZD0iTTE1Ni41OTEgMTg1LjgwNEwxNDkuODU5IDI0OS4wMTFMMTk3Ljg3NSAyNDYuMTcyTDE4OS43MjYgMTc1LjMxMkgxNTcuMjc1TDE1Ni41OTEgMTg1LjgwNFoiCiAgICAgIGZpbGw9IiNGOENDQzciIC8+CiAgICA8cGF0aAogICAgICBkPSJNMTI4LjIzNCAxMzcuMzc1QzEyOC4yMzQgMTM3LjM3NSAxMTYuMDc1IDEzNy44OTcgMTE3LjI5NyAxNTAuMjY0QzExNy4yOTcgMTUwLjI2NCAxMTguOTQzIDE1OC4yMjcgMTMzLjI3IDE1OS40MDFMMTI4LjIxNyAxMzcuMzc1SDEyOC4yMzRaIgogICAgICBmaWxsPSIjRjhDQ0M3IiAvPgogICAgPHBhdGgKICAgICAgZD0iTTEyNi4yMSAxMzAuODY3TDEzNC4yMjkgMTY1Ljg5N0MxMzQuMjI5IDE2NS44OTcgMTM4LjUzMiAxODcuOTcyIDE3MS41NTMgMTg5LjU4OEMyMDQuNTkgMTkxLjIwMyAyMDkuOTIgMTcxLjA4NSAyMDkuOTIgMTcxLjA4NUwyMjMuNTYyIDExOS42OTFDMjIzLjU2MiAxMTkuNjkxIDIyNi4zOTggNzkuNzgyMyAxNzguNDE1IDc1Ljk4MDdDMTc4LjQxNSA3NS45ODA3IDExNi44NTQgNzEuNTU5MSAxMjYuMjEgMTMwLjg2N1oiCiAgICAgIGZpbGw9IiNGOENDQzciIC8+CiAgICA8cGF0aCBkPSJNMjA3LjcwNSAyMDguMTA1TDE3MS4zMjYgMjMwLjM5M0wxNDcuNTYyIDIwOS43MzciIHN0cm9rZT0iIzIzMTgxNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogICAgICBzdHJva2UtbGluZWpvaW49InJvdW5kIiAvPgogICAgPHBhdGgKICAgICAgZD0iTTIxNi45MjcgMTM1LjQwMkMyMTYuOTI3IDEzNS40MDIgMjI5LjA4NiAxMzUuOTI0IDIyNy44NjMgMTQ4LjI5MkMyMjcuODYzIDE0OC4yOTIgMjI2LjIxNyAxNTYuMjU0IDIxMS44OTEgMTU3LjQyOUwyMTYuOTQzIDEzNS40MDJIMjE2LjkyN1oiCiAgICAgIGZpbGw9IiNGOENDQzciIC8+CiAgICA8cGF0aAogICAgICBkPSJNMTkyLjI3IDE0Ni4xMjNDMTk0LjcyNyAxNDYuMTIzIDE5Ni43MTkgMTQ0LjEyOSAxOTYuNzE5IDE0MS42NjlDMTk2LjcxOSAxMzkuMjA5IDE5NC43MjcgMTM3LjIxNSAxOTIuMjcgMTM3LjIxNUMxODkuODEyIDEzNy4yMTUgMTg3LjgyIDEzOS4yMDkgMTg3LjgyIDE0MS42NjlDMTg3LjgyIDE0NC4xMjkgMTg5LjgxMiAxNDYuMTIzIDE5Mi4yNyAxNDYuMTIzWiIKICAgICAgZmlsbD0iIzIzMTgxNSIgLz4KICAgIDxwYXRoCiAgICAgIGQ9Ik0xNTkuODQ4IDE0Ni4xMjNDMTYyLjMwNSAxNDYuMTIzIDE2NC4yOTggMTQ0LjEyOSAxNjQuMjk4IDE0MS42NjlDMTY0LjI5OCAxMzkuMjA5IDE2Mi4zMDUgMTM3LjIxNSAxNTkuODQ4IDEzNy4yMTVDMTU3LjM5MSAxMzcuMjE1IDE1NS4zOTggMTM5LjIwOSAxNTUuMzk4IDE0MS42NjlDMTU1LjM5OCAxNDQuMTI5IDE1Ny4zOTEgMTQ2LjEyMyAxNTkuODQ4IDE0Ni4xMjNaIgogICAgICBmaWxsPSIjMjMxODE1IiAvPgogICAgPHBhdGggZD0iTTE3Ni4wNyAxNDMuODg3VjE1Ny43NTUiIHN0cm9rZT0iIzIzMTgxNSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiCiAgICAgIHN0cm9rZS1saW5lam9pbj0icm91bmQiIC8+CiAgICA8cGF0aCBkPSJNMTcxLjc1IDE2OC40OTJDMTcxLjc1IDE2OC40OTIgMTc1LjAxIDE3MC40OTkgMTgwLjM4OCAxNjguNDkyIiBzdHJva2U9IiMyMzE4MTUiIHN0cm9rZS13aWR0aD0iMiIKICAgICAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiAvPgogICAgPHBhdGgKICAgICAgZD0iTTE1Ni40NTkgMTg2Ljk5MkMxNTYuNDU5IDE4Ni45OTIgMTY3LjYwNyAxOTQuNDQ5IDE5MS4xMjYgMTg3LjY2MUwxOTIuMDg4IDE5NS44MzVDMTkyLjA4OCAxOTUuODM1IDE3OC4xMzYgMjA0LjY5NSAxNTUuNTYyIDE5NS40MjdMMTU2LjQ1OSAxODYuOTkyWiIKICAgICAgZmlsbD0iIzI3MjgyOCIgLz4KICAgIDxwYXRoCiAgICAgIGQ9Ik0xOTEuMjc1IDEzMi43NkwyMDIuMTYzIDEzMS45OTNMMjAwLjk4OSAxMTEuNTQ5TDIxMy42MjEgMTM2LjQ0N0gyMjMuNTk2QzIyMy41OTYgMTM2LjQ0NyAyNDcuNDI0IDc5LjE2MjcgMjAyLjA5OCA4MC4zNTM3QzIwMi4wOTggODAuMzUzNyAxNjQuNjI3IDQ2LjMxOSAxMjUuMjMzIDg2LjYzNTNDMTI1LjIzMyA4Ni42MzUzIDEwMS4xNzYgMTE3LjU4NiAxMjYuMTk1IDEzOS43NDNMMTM4LjAxMSAxMzguNTg1TDE0MS4yNTUgMTEyLjU0NUwxOTEuMjc1IDEzMi43NloiCiAgICAgIGZpbGw9IiMyNzI4MjgiIC8+CiAgPC9nPgogIDxwYXRoCiAgICBkPSJNMTc0LjA5NiAyMDkuMzYyQzIwMy41NTggMjA5LjM2MiAyMjcuNDQxIDE3OS40ODUgMjI3LjQ0MSAxNDIuNjNDMjI3LjQ0MSAxMDUuNzc1IDIwMy41NTggNzUuODk4NCAxNzQuMDk2IDc1Ljg5ODRDMTQ0LjYzNCA3NS44OTg0IDEyMC43NSAxMDUuNzc1IDEyMC43NSAxNDIuNjNDMTIwLjc1IDE3OS40ODUgMTQ0LjYzNCAyMDkuMzYyIDE3NC4wOTYgMjA5LjM2MloiCiAgICBzdHJva2U9IiMwMEMxQjYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiAvPgogIDxwYXRoCiAgICBkPSJNMTc0LjEgMTk1LjY4NUMxOTguMTI4IDE5NS42ODUgMjE3LjYwNyAxNzEuNDI3IDIxNy42MDcgMTQxLjUwNEMyMTcuNjA3IDExMS41ODIgMTk4LjEyOCA4Ny4zMjQyIDE3NC4xIDg3LjMyNDJDMTUwLjA3MiA4Ny4zMjQyIDEzMC41OTQgMTExLjU4MiAxMzAuNTk0IDE0MS41MDRDMTMwLjU5NCAxNzEuNDI3IDE1MC4wNzIgMTk1LjY4NSAxNzQuMSAxOTUuNjg1WiIKICAgIHN0cm9rZT0iIzAwQzFCNiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS1kYXNoYXJyYXk9IjUgNSIgLz4KPC9zdmc+';
|
|
81
86
|
const DEFAULT_ICON_URI = 'data:image/png;base64,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';
|
|
@@ -28296,16 +28301,16 @@ function startLiveness(config) {
|
|
|
28296
28301
|
livenessConfig = res.parameters;
|
|
28297
28302
|
expiredIn = res.expiredIn;
|
|
28298
28303
|
}), rxjs.catchError(error => __awaiter(this, void 0, void 0, function* () {
|
|
28299
|
-
var _a, _b, _c, _d, _e, _f;
|
|
28304
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
28300
28305
|
const EVENT_NAME_ERROR_CODE = 7;
|
|
28301
28306
|
const INIT_RESPONSE_ERROR_MESSAGE__LivenessInavailable = 'Liveness Inavailable';
|
|
28302
28307
|
const INIT_RESPONSE_ERROR_MESSAGE__NotAllowedNewEvent = 'Not allowed new event';
|
|
28303
28308
|
const SHOW_ERROR_MESSAGE_INTERVAL = 3000;
|
|
28304
28309
|
// 針對 event name 沒有開啟 liveness 的相關處理
|
|
28305
|
-
if (((_c = (_b = (_a = error.cause) === null || _a === void 0 ? void 0 : _a.meta) === null || _b === void 0 ? void 0 : _b.responseContent) === null || _c === void 0 ? void 0 : _c.code) === EVENT_NAME_ERROR_CODE) {
|
|
28310
|
+
if (((_c = (_b = (_a = error.cause) === null || _a === void 0 ? void 0 : _a.meta) === null || _b === void 0 ? void 0 : _b.responseContent) === null || _c === void 0 ? void 0 : _c.code) === EVENT_NAME_ERROR_CODE || ((_f = (_e = (_d = error.cause) === null || _d === void 0 ? void 0 : _d.meta) === null || _e === void 0 ? void 0 : _e.responseContent) === null || _f === void 0 ? void 0 : _f.code) === 5) {
|
|
28306
28311
|
let throwError = new core.AuthmeError(core.ErrorCode.EVENT_NAME_WRONG, error.cause);
|
|
28307
28312
|
let errorMessage = undefined;
|
|
28308
|
-
switch ((
|
|
28313
|
+
switch ((_j = (_h = (_g = error.cause) === null || _g === void 0 ? void 0 : _g.meta) === null || _h === void 0 ? void 0 : _h.responseContent) === null || _j === void 0 ? void 0 : _j.message) {
|
|
28309
28314
|
case INIT_RESPONSE_ERROR_MESSAGE__LivenessInavailable:
|
|
28310
28315
|
errorMessage = 'sdk.general.error.functionNotEnabled';
|
|
28311
28316
|
throwError = new core.AuthmeError(core.ErrorCode.EVENT_NAME_WRONG, INIT_RESPONSE_ERROR_MESSAGE__LivenessInavailable);
|
|
@@ -28317,14 +28322,38 @@ function startLiveness(config) {
|
|
|
28317
28322
|
}
|
|
28318
28323
|
if (errorMessage) {
|
|
28319
28324
|
yield util.asyncOnLineShowErrorMessage(translateService.translate(errorMessage), translateService.translate('sdk.general.error.retry'), false);
|
|
28325
|
+
yield util.waitTime(SHOW_ERROR_MESSAGE_INTERVAL);
|
|
28326
|
+
throw throwError;
|
|
28320
28327
|
} else {
|
|
28321
|
-
|
|
28322
|
-
|
|
28328
|
+
`${translateService.translate('sdk.general.error.eventNameInvalid.title')} : ${translateService.translate('sdk.general.error.eventNameInvalid.content')}`;
|
|
28329
|
+
// await asyncOnLineShowErrorMessage(
|
|
28330
|
+
// defaultErrorMessage,
|
|
28331
|
+
// translateService.translate('sdk.general.error.retry'),
|
|
28332
|
+
// false
|
|
28333
|
+
// );
|
|
28334
|
+
// await asyncShowErrorMessage(
|
|
28335
|
+
// getTranslateInstance().translate(
|
|
28336
|
+
// 'sdk.general.error.eventNameInvalid.content'
|
|
28337
|
+
// ),
|
|
28338
|
+
// true,
|
|
28339
|
+
// {
|
|
28340
|
+
// callback: () => {
|
|
28341
|
+
// throw new AuthmeError(ErrorCode.EVENT_NAME_WRONG);
|
|
28342
|
+
// },
|
|
28343
|
+
// buttonText: getTranslateInstance().translate(
|
|
28344
|
+
// 'sdk.general.confirm'
|
|
28345
|
+
// ),
|
|
28346
|
+
// titleText: getTranslateInstance().translate(
|
|
28347
|
+
// 'sdk.general.error.eventNameInvalid.title'
|
|
28348
|
+
// ),
|
|
28349
|
+
// showErrorMessageHandler: showErrorMessageEventName,
|
|
28350
|
+
// }
|
|
28351
|
+
// );
|
|
28352
|
+
throw new core.AuthmeError(core.ErrorCode.EVENT_NAME_WRONG);
|
|
28323
28353
|
}
|
|
28324
|
-
|
|
28325
|
-
throw
|
|
28354
|
+
} else {
|
|
28355
|
+
throw error;
|
|
28326
28356
|
}
|
|
28327
|
-
throw error;
|
|
28328
28357
|
})));
|
|
28329
28358
|
const applyTextByResult = result => {
|
|
28330
28359
|
// debugLog('fas-response', result);
|
|
@@ -31757,7 +31786,8 @@ function startOCR(config) {
|
|
|
31757
31786
|
}
|
|
31758
31787
|
function main() {
|
|
31759
31788
|
const flags = {
|
|
31760
|
-
onConfirm: false
|
|
31789
|
+
onConfirm: false,
|
|
31790
|
+
resultModalActive: false
|
|
31761
31791
|
};
|
|
31762
31792
|
// startSpinner({
|
|
31763
31793
|
// text: translateService.translate('sdk.general.loading'),
|
|
@@ -31798,6 +31828,7 @@ function startOCR(config) {
|
|
|
31798
31828
|
if (config.ocrConfig.displayResultPage) {
|
|
31799
31829
|
// only for TWN IDCard
|
|
31800
31830
|
if (config.cardTypes[0].includes(idRecognition.IdRecognitionCardType.IDCard) && config.cardTypes[0].includes(idRecognition.CountryCode.TWN)) {
|
|
31831
|
+
flags.resultModalActive = true;
|
|
31801
31832
|
const keyMapping = {
|
|
31802
31833
|
[idRecognition.IdRecognitionCardType.IDCard]: 'idCard',
|
|
31803
31834
|
[idRecognition.IdRecognitionCardType.DriverLicense]: 'driverLicense',
|
|
@@ -31822,6 +31853,7 @@ function startOCR(config) {
|
|
|
31822
31853
|
// console.log('onClose');
|
|
31823
31854
|
}
|
|
31824
31855
|
});
|
|
31856
|
+
flags.resultModalActive = false;
|
|
31825
31857
|
if (res === 'close') {
|
|
31826
31858
|
const cancelResultObj = {
|
|
31827
31859
|
isSuccess: false,
|
|
@@ -31832,6 +31864,7 @@ function startOCR(config) {
|
|
|
31832
31864
|
return cancelResultObj;
|
|
31833
31865
|
}
|
|
31834
31866
|
} else {
|
|
31867
|
+
flags.resultModalActive = true;
|
|
31835
31868
|
modifiedData = yield renderConfirmUI({
|
|
31836
31869
|
cardType: config.ocrConfig.type,
|
|
31837
31870
|
items: {
|
|
@@ -31847,6 +31880,7 @@ function startOCR(config) {
|
|
|
31847
31880
|
translate: key => translateService.translate(key)
|
|
31848
31881
|
}
|
|
31849
31882
|
});
|
|
31883
|
+
flags.resultModalActive = false;
|
|
31850
31884
|
}
|
|
31851
31885
|
}
|
|
31852
31886
|
flags.onConfirm = true;
|
|
@@ -31891,7 +31925,11 @@ function startOCR(config) {
|
|
|
31891
31925
|
toastManualCapture.clear();
|
|
31892
31926
|
}
|
|
31893
31927
|
}));
|
|
31894
|
-
const detectScreenResizeError$ = handleScreenResizeError$(detectScreenResize$(), unsubscribe$,
|
|
31928
|
+
const detectScreenResizeError$ = handleScreenResizeError$(detectScreenResize$(), unsubscribe$,
|
|
31929
|
+
// () => !flags.onConfirm
|
|
31930
|
+
() => !flags.onConfirm && !flags.resultModalActive // Add check for resultModalActive
|
|
31931
|
+
);
|
|
31932
|
+
|
|
31895
31933
|
return rxjs.merge(flow$, cancel$, detectScreenResizeError$, timeout$).pipe(rxjs.take(1));
|
|
31896
31934
|
}
|
|
31897
31935
|
rxjs.fromEvent(window, 'offline').pipe(rxjs.switchMap(() => util.asyncOnLineShowErrorMessage(translateService.translate('sdk.general.error.alert.offline'), translateService.translate('sdk.general.error.retry'), false)), rxjs.takeUntil(unsubscribe$)).subscribe();
|
|
@@ -32951,11 +32989,11 @@ class LivenessModule {
|
|
|
32951
32989
|
uploadFullFrame: config.uploadFullFrame
|
|
32952
32990
|
}, shouldEncrypt, encryptDataBase64);
|
|
32953
32991
|
} catch (error) {
|
|
32954
|
-
const _error = error;
|
|
32955
32992
|
// 確保 `handleUploadError` 的結果被等待
|
|
32956
32993
|
const action = yield handleUploadError$1();
|
|
32957
32994
|
if (action === 'close') {
|
|
32958
|
-
throw _error; // 這樣 `throw` 就能正確被 `catch` 處理
|
|
32995
|
+
// throw _error; // 這樣 `throw` 就能正確被 `catch` 處理
|
|
32996
|
+
throw new core.AuthmeError(core.ErrorCode.ERROR_USER_CANCEL);
|
|
32959
32997
|
} else if (action === 'retry') {
|
|
32960
32998
|
yield handleUpload(id, frameList, resultList, meta, config, shouldEncrypt, encryptDataBase64);
|
|
32961
32999
|
}
|
|
@@ -33748,9 +33786,9 @@ function SendRequestWithRetry(promiseFactory, options = {}) {
|
|
|
33748
33786
|
var _a, _b, _c;
|
|
33749
33787
|
const errorParams = (options === null || options === void 0 ? void 0 : options.onErrorHandler) ? options === null || options === void 0 ? void 0 : options.onErrorHandler(e) : {};
|
|
33750
33788
|
util.stopSpinner();
|
|
33751
|
-
return util.asyncShowErrorMessage(core.getTranslateInstance().translate((_a = errorParams === null || errorParams === void 0 ? void 0 : errorParams.errorText) !== null && _a !== void 0 ? _a : 'sdk.general.error.alert.serverError'),
|
|
33752
|
-
//
|
|
33753
|
-
|
|
33789
|
+
return util.asyncShowErrorMessage(core.getTranslateInstance().translate((_a = errorParams === null || errorParams === void 0 ? void 0 : errorParams.errorText) !== null && _a !== void 0 ? _a : 'sdk.general.error.alert.serverError'), errorParams.showRetryButton,
|
|
33790
|
+
// false,
|
|
33791
|
+
{
|
|
33754
33792
|
callback: errorParams === null || errorParams === void 0 ? void 0 : errorParams.onButtonClick,
|
|
33755
33793
|
buttonText: core.getTranslateInstance().translate((_b = errorParams === null || errorParams === void 0 ? void 0 : errorParams.buttonText) !== null && _b !== void 0 ? _b : 'sdk.general.error.retry'),
|
|
33756
33794
|
titleText: core.getTranslateInstance().translate((_c = errorParams === null || errorParams === void 0 ? void 0 : errorParams.titleText) !== null && _c !== void 0 ? _c : ''),
|
|
@@ -34014,11 +34052,11 @@ class OCRModule {
|
|
|
34014
34052
|
}
|
|
34015
34053
|
return response;
|
|
34016
34054
|
} catch (error) {
|
|
34017
|
-
const _error = error;
|
|
34018
34055
|
// 確保 `handleUploadError` 的結果被等待
|
|
34019
34056
|
const action = yield handleUploadError();
|
|
34020
34057
|
if (action === 'close') {
|
|
34021
|
-
throw _error; // 這樣 `throw` 就能正確被 `catch` 處理
|
|
34058
|
+
// throw _error; // 這樣 `throw` 就能正確被 `catch` 處理
|
|
34059
|
+
throw new core.AuthmeError(core.ErrorCode.ERROR_USER_CANCEL);
|
|
34022
34060
|
} else if (action === 'retry') {
|
|
34023
34061
|
return yield handleUpload(option, docId, ocrOriginImg, requestImg, ocrImg, report);
|
|
34024
34062
|
}
|
|
@@ -34047,9 +34085,10 @@ class OCRModule {
|
|
|
34047
34085
|
return idRecognition.initScan(config.type, config.country, config.needConfirm, config.cardTypes);
|
|
34048
34086
|
}, {
|
|
34049
34087
|
onErrorHandler(e) {
|
|
34050
|
-
var _a, _b, _c;
|
|
34088
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
34051
34089
|
const _error = e;
|
|
34052
|
-
if (((_c = (_b = (_a = _error === null || _error === void 0 ? void 0 : _error.cause) === null || _a === void 0 ? void 0 : _a.meta) === null || _b === void 0 ? void 0 : _b.responseContent) === null || _c === void 0 ? void 0 : _c.code) === 7) {
|
|
34090
|
+
if (((_c = (_b = (_a = _error === null || _error === void 0 ? void 0 : _error.cause) === null || _a === void 0 ? void 0 : _a.meta) === null || _b === void 0 ? void 0 : _b.responseContent) === null || _c === void 0 ? void 0 : _c.code) === 7 || ((_f = (_e = (_d = _error === null || _error === void 0 ? void 0 : _error.cause) === null || _d === void 0 ? void 0 : _d.meta) === null || _e === void 0 ? void 0 : _e.responseContent) === null || _f === void 0 ? void 0 : _f.code) === 5) {
|
|
34091
|
+
(_g = document.querySelector('.video-container__close')) === null || _g === void 0 ? void 0 : _g.classList.add('hide');
|
|
34053
34092
|
return {
|
|
34054
34093
|
buttonText: 'sdk.general.confirm',
|
|
34055
34094
|
titleText: 'sdk.general.error.eventNameInvalid.title',
|
|
@@ -35668,8 +35707,8 @@ class AuthmeIdentityVerification extends engine.AuthmeFunctionModule {
|
|
|
35668
35707
|
}
|
|
35669
35708
|
|
|
35670
35709
|
var name = "authme/sdk";
|
|
35671
|
-
var version$1 = "2.8.
|
|
35672
|
-
var date = "2025-
|
|
35710
|
+
var version$1 = "2.8.13";
|
|
35711
|
+
var date = "2025-05-02T03:27:38+0000";
|
|
35673
35712
|
var packageInfo = {
|
|
35674
35713
|
name: name,
|
|
35675
35714
|
version: version$1,
|
package/index.js
CHANGED
|
@@ -67,7 +67,12 @@ function __awaiter(thisArg, _arguments, P, generator) {
|
|
|
67
67
|
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
68
68
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
69
69
|
});
|
|
70
|
-
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
73
|
+
var e = new Error(message);
|
|
74
|
+
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
75
|
+
};
|
|
71
76
|
|
|
72
77
|
const LIVENESS_GUIDE_IMG = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzI3IiBoZWlnaHQ9IjI3NSIgdmlld0JveD0iMCAwIDMyNyAyNzUiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPHJlY3Qgd2lkdGg9IjMyNyIgaGVpZ2h0PSIyNzUiIGZpbGw9IiNGOEY4RjgiIC8+CiAgPHBhdGgKICAgIGQ9Ik05NC40NTc1IDg4LjgzNzZMNjcuMzUyNyA3MC4yNzAzQzY1LjUyNzMgNjguNjM4NyA2My4yOTQzIDY3LjQ0NzYgNjAuODgyMSA2Ny4wNzI0QzU3LjU0MDkgNjYuNTUwMiA1My41MTUxIDY3LjM5ODcgNTIuNzQ5MSA3NC4xODZDNTIuMTI5NyA3OS43MDA4IDU0LjAyMDQgODUuMTk5MiA1Ny41NzM1IDg5LjQ0MTNMOTQuNDU3NSAxMzguMDNWODguODM3NloiCiAgICBmaWxsPSIjRjhDQ0M3IiAvPgogIDxwYXRoIG9wYWNpdHk9IjAuMyIKICAgIGQ9Ik0xMTYuNzA5IDI3SDIzMS44OTJDMjQ0LjE2NSAyNyAyNTQuMTM5IDM2Ljk4NTMgMjU0LjEzOSA0OS4yNzExVjI3NC40NjJIOTQuNDYwOVY0OS4yNzExQzk0LjQ2MDkgMzYuOTg1MyAxMDQuNDM2IDI3IDExNi43MDkgMjdaIgogICAgZmlsbD0iIzQzQTJDMiIgLz4KICA8cGF0aAogICAgZD0iTTExNy4yNDUgNDUuOTkyOUgyMzEuMzUyQzIzNy42NDQgNDUuOTkyOSAyNDIuNzYxIDUxLjA5OTcgMjQyLjc2MSA1Ny40MTM5VjI3NC40NjNIMTA1LjgzNlY1Ny4zOTc2QzEwNS44MzYgNTEuMDk5NyAxMTAuOTM3IDQ1Ljk3NjYgMTE3LjI0NSA0NS45NzY2VjQ1Ljk5MjlaIgogICAgZmlsbD0id2hpdGUiIC8+CiAgPHBhdGgKICAgIGQ9Ik0xMjAuMzU5IDI1OS45NTdIMjI3LjgzMkMyMjkuNTkyIDI1OS45NTcgMjMxLjAyNyAyNjEuMzkzIDIzMS4wMjcgMjYzLjE1NVYyNzQuNDc4SDExNy4xNjRWMjYzLjE1NUMxMTcuMTY0IDI2MS4zOTMgMTE4LjU5OCAyNTkuOTU3IDEyMC4zNTkgMjU5Ljk1N1oiCiAgICBmaWxsPSIjMDBDMUI2IiAvPgogIDxwYXRoCiAgICBkPSJNMjcxLjgxOSAyNzQuNDZMMjcxLjUxIDI0My42MzlDMjcxLjUxIDI0My42MzkgMjc1LjQwNSAxNjIuMjIzIDI1NS4yNiAxNTMuNzIzQzI1NS4yNiAxNTMuNzIzIDIzOC42NTEgMTUwLjY4OCAyMzguNDA3IDE4NS42MDRMMjM2Ljk1NiAyMjYuNTA4QzIzNi45NTYgMjI2LjUwOCAyMDkuOTE3IDIzNS4wNzMgMjA2LjA3IDI3NC40NiIKICAgIGZpbGw9IiNGOENDQzciIC8+CiAgPHBhdGgKICAgIGQ9Ik03OS41NDYxIDI0Mi40MDFDNzkuNTQ2MSAyNDIuNDAxIDY1LjMzMzYgMjIxLjg5MiA2Ny45MjUxIDIwMi4xMzRDNjguNTQ0NSAxOTcuMzY5IDcwLjc2MTEgMTkyLjg2NiA3NC41NDI0IDE4OS45MTNDNzYuMTA3MSAxODguNjg5IDc4LjAxNCAxODcuNjI5IDgwLjI3OTUgMTg3LjA3NEw5NC40NDMxIDIwNy4xNzVWMjE2Ljc1M0M5Ni40MTUyIDIyMi4wMzkgOTkuMzE2NCAyMjcuNTM3IDEwMC42MiAyMzMuMDM2QzEwMS42OTYgMjM3LjU4OCAxMDIuNTYgMjQyLjIwNSAxMDIuODg2IDI0Ni44ODhDMTAzLjA5OCAyNDkuOTIzIDEwMy45NDUgMjU0LjgxNyAxMDIuMjgzIDI1Ny41NThDMTAxLjI1NiAyNTkuMjM5IDk4Ljg5MjcgMjU5LjQ4NCA5Ny4wNTA5IDI1OS4zMDRDODguMjY1OSAyNTguNDg4IDgzLjg2NTIgMjQ4LjY1IDc5LjU0NjEgMjQyLjQxN1YyNDIuNDAxWiIKICAgIGZpbGw9IiNGOENDQzciIC8+CiAgPHBhdGgKICAgIGQ9Ik05NC40NTg3IDIwNy4xNzVWMjE2Ljc1MkM5Ni40MzA5IDIyMi4wMzggOTkuMzMyIDIyNy41MzcgMTAwLjYzNiAyMzMuMDM1QzEwMS43MTIgMjM3LjU4NyAxMDIuNTc1IDI0Mi4yMDUgMTAyLjkwMSAyNDYuODg3QzEwMy4xMTMgMjQ5LjkyMiAxMDMuOTYxIDI1NC44MTcgMTAyLjI5OCAyNTcuNTU4QzEwMS4yNzIgMjU5LjIzOCA5OC45MDgzIDI1OS40ODMgOTcuMDY2NSAyNTkuMzA0Qzg4LjI4MTUgMjU4LjQ4OCA4My44ODA5IDI0OC42NDkgNzkuNTYxNyAyNDIuNDE3Qzc5LjU2MTcgMjQyLjQxNyA2NS4zNDkyIDIyMS45MDggNjcuOTQwNyAyMDIuMTQ5QzY4LjU2MDEgMTk3LjM4NSA3MC43NzY3IDE5Mi44ODIgNzQuNTU4IDE4OS45MjlDNzYuMTIyNyAxODguNzA1IDc4LjAyOTYgMTg3LjY0NSA4MC4yOTUxIDE4Ny4wOSIKICAgIHN0cm9rZT0iI0YyQjFBQyIgc3Ryb2tlLXdpZHRoPSIzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIC8+CiAgPHBhdGgKICAgIGQ9Ik04OC4yNjY4IDQyLjUzMkM4NS43NTY4IDQwLjczNzIgODQuMjA4NCAzOS43MDkzIDgxLjc5NjIgMzkuMzM0MUM3OC40NTUgMzguODEyIDc0LjQyOTIgMzkuNjYwNCA3My42NjMxIDQ2LjQ0NzhDNzMuMDQzOCA1MS45NjI1IDc0LjkzNDQgNTcuNDYwOSA3OC40ODc2IDYxLjcwM0w5NC40OTI5IDgyLjc4M1Y0Ni44MDY3TDg4LjI2NjggNDIuNTQ4M1Y0Mi41MzJaIgogICAgZmlsbD0iI0Y4Q0NDNyIgLz4KICA8cGF0aAogICAgZD0iTTg3LjM3MTMgMjAyLjg2OEM4Ny4zNzEzIDIwMi44NjggNzEuNTk0MSAxODIuNzAxIDY2LjkwMDEgMTU3LjQ5M0M2Ni4yOTcgMTU0LjI0NyA2Ni4yNDgxIDE1MC45MDIgNjcuMDMwNSAxNDcuNzA0QzY4Ljc0MTggMTQwLjcwNSA3NC42MjU3IDEzMS41MTkgOTQuNDYxMiAxMzcuMjEzVjE2My4yNjlDOTQuNDYxMiAxNjMuMjY5IDEwNS4zIDE4NC45NjkgMTAzLjYyMSAyMDAuMDk0QzEwMy42MjEgMjAwLjA5NCAxMDEuNjY1IDIxOC44MDggODcuMzg3NiAyMDIuODY4SDg3LjM3MTNaIgogICAgZmlsbD0iI0Y4Q0NDNyIgLz4KICA8cGF0aAogICAgZD0iTTk0LjQ2MDUgMTYzLjI2OUM5NC40NjA1IDE2My4yNjkgMTA1LjI5OSAxODQuOTY5IDEwMy42MiAyMDAuMDk0QzEwMy42MiAyMDAuMDk0IDEwMS42NjUgMjE4LjgwOCA4Ny4zODY5IDIwMi44NjhDODcuMzg2OSAyMDIuODY4IDcxLjYwOTcgMTgyLjcwMSA2Ni45MTU3IDE1Ny40OTNDNjYuMzEyNyAxNTQuMjQ3IDY2LjI2MzggMTUwLjkwMiA2Ny4wNDYxIDE0Ny43MDRDNjguNzU3NSAxNDAuNzA1IDc0LjY0MTMgMTMxLjUxOSA5NC40NzY4IDEzNy4yMTMiCiAgICBzdHJva2U9IiNGMkIxQUMiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiAvPgogIDxwYXRoIGQ9Ik0yMTcuMzk4IDExOS40M0gyMjQuMDgxIiBzdHJva2U9IndoaXRlIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgLz4KICA8cGF0aCBkPSJNMjIyLjY2OCAxMTcuMTk1TDIyNC42NCAxMTkuMzk4TDIyMi4zOTEgMTIxLjY1IiBzdHJva2U9IndoaXRlIiBzdHJva2UtbGluZWNhcD0icm91bmQiCiAgICBzdHJva2UtbGluZWpvaW49InJvdW5kIiAvPgogIDxtYXNrIGlkPSJtYXNrMF8xMDE0MF83OTU0MjgiIHN0eWxlPSJtYXNrLXR5cGU6bHVtaW5hbmNlIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4PSIxMjAiIHk9Ijc1IiB3aWR0aD0iMTA4IgogICAgaGVpZ2h0PSIxMzUiPgogICAgPHBhdGgKICAgICAgZD0iTTE3NC4wOTYgMjA5LjM2MkMyMDMuNTU4IDIwOS4zNjIgMjI3LjQ0MSAxNzkuNDg1IDIyNy40NDEgMTQyLjYzQzIyNy40NDEgMTA1Ljc3NSAyMDMuNTU4IDc1Ljg5ODQgMTc0LjA5NiA3NS44OTg0QzE0NC42MzQgNzUuODk4NCAxMjAuNzUgMTA1Ljc3NSAxMjAuNzUgMTQyLjYzQzEyMC43NSAxNzkuNDg1IDE0NC42MzQgMjA5LjM2MiAxNzQuMDk2IDIwOS4zNjJaIgogICAgICBmaWxsPSJ3aGl0ZSIgLz4KICA8L21hc2s+CiAgPGcgbWFzaz0idXJsKCNtYXNrMF8xMDE0MF83OTU0MjgpIj4KICAgIDxwYXRoCiAgICAgIGQ9Ik0yMDYuNjYyIDE3OS4xMjlDMjA2LjY2MiAxNzkuMTI5IDI3NC4wNTggMTg1LjM2MiAyMzMuOTQ2IDIzMi40OThIMTI2Ljg2NEMxMjYuODY0IDIzMi40OTggODkuNTA3NCAxOTkuMjYzIDEzOS4zODEgMTc5LjEyOUgyMDYuNjc5SDIwNi42NjJaIgogICAgICBmaWxsPSIjMjU2MDhBIiAvPgogICAgPHBhdGggZD0iTTE1Ni41OTEgMTg1LjgwNEwxNDkuODU5IDI0OS4wMTFMMTk3Ljg3NSAyNDYuMTcyTDE4OS43MjYgMTc1LjMxMkgxNTcuMjc1TDE1Ni41OTEgMTg1LjgwNFoiCiAgICAgIGZpbGw9IiNGOENDQzciIC8+CiAgICA8cGF0aAogICAgICBkPSJNMTI4LjIzNCAxMzcuMzc1QzEyOC4yMzQgMTM3LjM3NSAxMTYuMDc1IDEzNy44OTcgMTE3LjI5NyAxNTAuMjY0QzExNy4yOTcgMTUwLjI2NCAxMTguOTQzIDE1OC4yMjcgMTMzLjI3IDE1OS40MDFMMTI4LjIxNyAxMzcuMzc1SDEyOC4yMzRaIgogICAgICBmaWxsPSIjRjhDQ0M3IiAvPgogICAgPHBhdGgKICAgICAgZD0iTTEyNi4yMSAxMzAuODY3TDEzNC4yMjkgMTY1Ljg5N0MxMzQuMjI5IDE2NS44OTcgMTM4LjUzMiAxODcuOTcyIDE3MS41NTMgMTg5LjU4OEMyMDQuNTkgMTkxLjIwMyAyMDkuOTIgMTcxLjA4NSAyMDkuOTIgMTcxLjA4NUwyMjMuNTYyIDExOS42OTFDMjIzLjU2MiAxMTkuNjkxIDIyNi4zOTggNzkuNzgyMyAxNzguNDE1IDc1Ljk4MDdDMTc4LjQxNSA3NS45ODA3IDExNi44NTQgNzEuNTU5MSAxMjYuMjEgMTMwLjg2N1oiCiAgICAgIGZpbGw9IiNGOENDQzciIC8+CiAgICA8cGF0aCBkPSJNMjA3LjcwNSAyMDguMTA1TDE3MS4zMjYgMjMwLjM5M0wxNDcuNTYyIDIwOS43MzciIHN0cm9rZT0iIzIzMTgxNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogICAgICBzdHJva2UtbGluZWpvaW49InJvdW5kIiAvPgogICAgPHBhdGgKICAgICAgZD0iTTIxNi45MjcgMTM1LjQwMkMyMTYuOTI3IDEzNS40MDIgMjI5LjA4NiAxMzUuOTI0IDIyNy44NjMgMTQ4LjI5MkMyMjcuODYzIDE0OC4yOTIgMjI2LjIxNyAxNTYuMjU0IDIxMS44OTEgMTU3LjQyOUwyMTYuOTQzIDEzNS40MDJIMjE2LjkyN1oiCiAgICAgIGZpbGw9IiNGOENDQzciIC8+CiAgICA8cGF0aAogICAgICBkPSJNMTkyLjI3IDE0Ni4xMjNDMTk0LjcyNyAxNDYuMTIzIDE5Ni43MTkgMTQ0LjEyOSAxOTYuNzE5IDE0MS42NjlDMTk2LjcxOSAxMzkuMjA5IDE5NC43MjcgMTM3LjIxNSAxOTIuMjcgMTM3LjIxNUMxODkuODEyIDEzNy4yMTUgMTg3LjgyIDEzOS4yMDkgMTg3LjgyIDE0MS42NjlDMTg3LjgyIDE0NC4xMjkgMTg5LjgxMiAxNDYuMTIzIDE5Mi4yNyAxNDYuMTIzWiIKICAgICAgZmlsbD0iIzIzMTgxNSIgLz4KICAgIDxwYXRoCiAgICAgIGQ9Ik0xNTkuODQ4IDE0Ni4xMjNDMTYyLjMwNSAxNDYuMTIzIDE2NC4yOTggMTQ0LjEyOSAxNjQuMjk4IDE0MS42NjlDMTY0LjI5OCAxMzkuMjA5IDE2Mi4zMDUgMTM3LjIxNSAxNTkuODQ4IDEzNy4yMTVDMTU3LjM5MSAxMzcuMjE1IDE1NS4zOTggMTM5LjIwOSAxNTUuMzk4IDE0MS42NjlDMTU1LjM5OCAxNDQuMTI5IDE1Ny4zOTEgMTQ2LjEyMyAxNTkuODQ4IDE0Ni4xMjNaIgogICAgICBmaWxsPSIjMjMxODE1IiAvPgogICAgPHBhdGggZD0iTTE3Ni4wNyAxNDMuODg3VjE1Ny43NTUiIHN0cm9rZT0iIzIzMTgxNSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiCiAgICAgIHN0cm9rZS1saW5lam9pbj0icm91bmQiIC8+CiAgICA8cGF0aCBkPSJNMTcxLjc1IDE2OC40OTJDMTcxLjc1IDE2OC40OTIgMTc1LjAxIDE3MC40OTkgMTgwLjM4OCAxNjguNDkyIiBzdHJva2U9IiMyMzE4MTUiIHN0cm9rZS13aWR0aD0iMiIKICAgICAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiAvPgogICAgPHBhdGgKICAgICAgZD0iTTE1Ni40NTkgMTg2Ljk5MkMxNTYuNDU5IDE4Ni45OTIgMTY3LjYwNyAxOTQuNDQ5IDE5MS4xMjYgMTg3LjY2MUwxOTIuMDg4IDE5NS44MzVDMTkyLjA4OCAxOTUuODM1IDE3OC4xMzYgMjA0LjY5NSAxNTUuNTYyIDE5NS40MjdMMTU2LjQ1OSAxODYuOTkyWiIKICAgICAgZmlsbD0iIzI3MjgyOCIgLz4KICAgIDxwYXRoCiAgICAgIGQ9Ik0xOTEuMjc1IDEzMi43NkwyMDIuMTYzIDEzMS45OTNMMjAwLjk4OSAxMTEuNTQ5TDIxMy42MjEgMTM2LjQ0N0gyMjMuNTk2QzIyMy41OTYgMTM2LjQ0NyAyNDcuNDI0IDc5LjE2MjcgMjAyLjA5OCA4MC4zNTM3QzIwMi4wOTggODAuMzUzNyAxNjQuNjI3IDQ2LjMxOSAxMjUuMjMzIDg2LjYzNTNDMTI1LjIzMyA4Ni42MzUzIDEwMS4xNzYgMTE3LjU4NiAxMjYuMTk1IDEzOS43NDNMMTM4LjAxMSAxMzguNTg1TDE0MS4yNTUgMTEyLjU0NUwxOTEuMjc1IDEzMi43NloiCiAgICAgIGZpbGw9IiMyNzI4MjgiIC8+CiAgPC9nPgogIDxwYXRoCiAgICBkPSJNMTc0LjA5NiAyMDkuMzYyQzIwMy41NTggMjA5LjM2MiAyMjcuNDQxIDE3OS40ODUgMjI3LjQ0MSAxNDIuNjNDMjI3LjQ0MSAxMDUuNzc1IDIwMy41NTggNzUuODk4NCAxNzQuMDk2IDc1Ljg5ODRDMTQ0LjYzNCA3NS44OTg0IDEyMC43NSAxMDUuNzc1IDEyMC43NSAxNDIuNjNDMTIwLjc1IDE3OS40ODUgMTQ0LjYzNCAyMDkuMzYyIDE3NC4wOTYgMjA5LjM2MloiCiAgICBzdHJva2U9IiMwMEMxQjYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiAvPgogIDxwYXRoCiAgICBkPSJNMTc0LjEgMTk1LjY4NUMxOTguMTI4IDE5NS42ODUgMjE3LjYwNyAxNzEuNDI3IDIxNy42MDcgMTQxLjUwNEMyMTcuNjA3IDExMS41ODIgMTk4LjEyOCA4Ny4zMjQyIDE3NC4xIDg3LjMyNDJDMTUwLjA3MiA4Ny4zMjQyIDEzMC41OTQgMTExLjU4MiAxMzAuNTk0IDE0MS41MDRDMTMwLjU5NCAxNzEuNDI3IDE1MC4wNzIgMTk1LjY4NSAxNzQuMSAxOTUuNjg1WiIKICAgIHN0cm9rZT0iIzAwQzFCNiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS1kYXNoYXJyYXk9IjUgNSIgLz4KPC9zdmc+';
|
|
73
78
|
const DEFAULT_ICON_URI = 'data:image/png;base64,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';
|
|
@@ -28288,16 +28293,16 @@ function startLiveness(config) {
|
|
|
28288
28293
|
livenessConfig = res.parameters;
|
|
28289
28294
|
expiredIn = res.expiredIn;
|
|
28290
28295
|
}), catchError(error => __awaiter(this, void 0, void 0, function* () {
|
|
28291
|
-
var _a, _b, _c, _d, _e, _f;
|
|
28296
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
28292
28297
|
const EVENT_NAME_ERROR_CODE = 7;
|
|
28293
28298
|
const INIT_RESPONSE_ERROR_MESSAGE__LivenessInavailable = 'Liveness Inavailable';
|
|
28294
28299
|
const INIT_RESPONSE_ERROR_MESSAGE__NotAllowedNewEvent = 'Not allowed new event';
|
|
28295
28300
|
const SHOW_ERROR_MESSAGE_INTERVAL = 3000;
|
|
28296
28301
|
// 針對 event name 沒有開啟 liveness 的相關處理
|
|
28297
|
-
if (((_c = (_b = (_a = error.cause) === null || _a === void 0 ? void 0 : _a.meta) === null || _b === void 0 ? void 0 : _b.responseContent) === null || _c === void 0 ? void 0 : _c.code) === EVENT_NAME_ERROR_CODE) {
|
|
28302
|
+
if (((_c = (_b = (_a = error.cause) === null || _a === void 0 ? void 0 : _a.meta) === null || _b === void 0 ? void 0 : _b.responseContent) === null || _c === void 0 ? void 0 : _c.code) === EVENT_NAME_ERROR_CODE || ((_f = (_e = (_d = error.cause) === null || _d === void 0 ? void 0 : _d.meta) === null || _e === void 0 ? void 0 : _e.responseContent) === null || _f === void 0 ? void 0 : _f.code) === 5) {
|
|
28298
28303
|
let throwError = new AuthmeError(ErrorCode.EVENT_NAME_WRONG, error.cause);
|
|
28299
28304
|
let errorMessage = undefined;
|
|
28300
|
-
switch ((
|
|
28305
|
+
switch ((_j = (_h = (_g = error.cause) === null || _g === void 0 ? void 0 : _g.meta) === null || _h === void 0 ? void 0 : _h.responseContent) === null || _j === void 0 ? void 0 : _j.message) {
|
|
28301
28306
|
case INIT_RESPONSE_ERROR_MESSAGE__LivenessInavailable:
|
|
28302
28307
|
errorMessage = 'sdk.general.error.functionNotEnabled';
|
|
28303
28308
|
throwError = new AuthmeError(ErrorCode.EVENT_NAME_WRONG, INIT_RESPONSE_ERROR_MESSAGE__LivenessInavailable);
|
|
@@ -28309,14 +28314,38 @@ function startLiveness(config) {
|
|
|
28309
28314
|
}
|
|
28310
28315
|
if (errorMessage) {
|
|
28311
28316
|
yield asyncOnLineShowErrorMessage(translateService.translate(errorMessage), translateService.translate('sdk.general.error.retry'), false);
|
|
28317
|
+
yield waitTime(SHOW_ERROR_MESSAGE_INTERVAL);
|
|
28318
|
+
throw throwError;
|
|
28312
28319
|
} else {
|
|
28313
|
-
|
|
28314
|
-
|
|
28320
|
+
`${translateService.translate('sdk.general.error.eventNameInvalid.title')} : ${translateService.translate('sdk.general.error.eventNameInvalid.content')}`;
|
|
28321
|
+
// await asyncOnLineShowErrorMessage(
|
|
28322
|
+
// defaultErrorMessage,
|
|
28323
|
+
// translateService.translate('sdk.general.error.retry'),
|
|
28324
|
+
// false
|
|
28325
|
+
// );
|
|
28326
|
+
// await asyncShowErrorMessage(
|
|
28327
|
+
// getTranslateInstance().translate(
|
|
28328
|
+
// 'sdk.general.error.eventNameInvalid.content'
|
|
28329
|
+
// ),
|
|
28330
|
+
// true,
|
|
28331
|
+
// {
|
|
28332
|
+
// callback: () => {
|
|
28333
|
+
// throw new AuthmeError(ErrorCode.EVENT_NAME_WRONG);
|
|
28334
|
+
// },
|
|
28335
|
+
// buttonText: getTranslateInstance().translate(
|
|
28336
|
+
// 'sdk.general.confirm'
|
|
28337
|
+
// ),
|
|
28338
|
+
// titleText: getTranslateInstance().translate(
|
|
28339
|
+
// 'sdk.general.error.eventNameInvalid.title'
|
|
28340
|
+
// ),
|
|
28341
|
+
// showErrorMessageHandler: showErrorMessageEventName,
|
|
28342
|
+
// }
|
|
28343
|
+
// );
|
|
28344
|
+
throw new AuthmeError(ErrorCode.EVENT_NAME_WRONG);
|
|
28315
28345
|
}
|
|
28316
|
-
|
|
28317
|
-
throw
|
|
28346
|
+
} else {
|
|
28347
|
+
throw error;
|
|
28318
28348
|
}
|
|
28319
|
-
throw error;
|
|
28320
28349
|
})));
|
|
28321
28350
|
const applyTextByResult = result => {
|
|
28322
28351
|
// debugLog('fas-response', result);
|
|
@@ -31749,7 +31778,8 @@ function startOCR(config) {
|
|
|
31749
31778
|
}
|
|
31750
31779
|
function main() {
|
|
31751
31780
|
const flags = {
|
|
31752
|
-
onConfirm: false
|
|
31781
|
+
onConfirm: false,
|
|
31782
|
+
resultModalActive: false
|
|
31753
31783
|
};
|
|
31754
31784
|
// startSpinner({
|
|
31755
31785
|
// text: translateService.translate('sdk.general.loading'),
|
|
@@ -31790,6 +31820,7 @@ function startOCR(config) {
|
|
|
31790
31820
|
if (config.ocrConfig.displayResultPage) {
|
|
31791
31821
|
// only for TWN IDCard
|
|
31792
31822
|
if (config.cardTypes[0].includes(IdRecognitionCardType.IDCard) && config.cardTypes[0].includes(CountryCode.TWN)) {
|
|
31823
|
+
flags.resultModalActive = true;
|
|
31793
31824
|
const keyMapping = {
|
|
31794
31825
|
[IdRecognitionCardType.IDCard]: 'idCard',
|
|
31795
31826
|
[IdRecognitionCardType.DriverLicense]: 'driverLicense',
|
|
@@ -31814,6 +31845,7 @@ function startOCR(config) {
|
|
|
31814
31845
|
// console.log('onClose');
|
|
31815
31846
|
}
|
|
31816
31847
|
});
|
|
31848
|
+
flags.resultModalActive = false;
|
|
31817
31849
|
if (res === 'close') {
|
|
31818
31850
|
const cancelResultObj = {
|
|
31819
31851
|
isSuccess: false,
|
|
@@ -31824,6 +31856,7 @@ function startOCR(config) {
|
|
|
31824
31856
|
return cancelResultObj;
|
|
31825
31857
|
}
|
|
31826
31858
|
} else {
|
|
31859
|
+
flags.resultModalActive = true;
|
|
31827
31860
|
modifiedData = yield renderConfirmUI({
|
|
31828
31861
|
cardType: config.ocrConfig.type,
|
|
31829
31862
|
items: {
|
|
@@ -31839,6 +31872,7 @@ function startOCR(config) {
|
|
|
31839
31872
|
translate: key => translateService.translate(key)
|
|
31840
31873
|
}
|
|
31841
31874
|
});
|
|
31875
|
+
flags.resultModalActive = false;
|
|
31842
31876
|
}
|
|
31843
31877
|
}
|
|
31844
31878
|
flags.onConfirm = true;
|
|
@@ -31883,7 +31917,11 @@ function startOCR(config) {
|
|
|
31883
31917
|
toastManualCapture.clear();
|
|
31884
31918
|
}
|
|
31885
31919
|
}));
|
|
31886
|
-
const detectScreenResizeError$ = handleScreenResizeError$(detectScreenResize$(), unsubscribe$,
|
|
31920
|
+
const detectScreenResizeError$ = handleScreenResizeError$(detectScreenResize$(), unsubscribe$,
|
|
31921
|
+
// () => !flags.onConfirm
|
|
31922
|
+
() => !flags.onConfirm && !flags.resultModalActive // Add check for resultModalActive
|
|
31923
|
+
);
|
|
31924
|
+
|
|
31887
31925
|
return merge(flow$, cancel$, detectScreenResizeError$, timeout$).pipe(take(1));
|
|
31888
31926
|
}
|
|
31889
31927
|
fromEvent(window, 'offline').pipe(switchMap(() => asyncOnLineShowErrorMessage(translateService.translate('sdk.general.error.alert.offline'), translateService.translate('sdk.general.error.retry'), false)), takeUntil(unsubscribe$)).subscribe();
|
|
@@ -32943,11 +32981,11 @@ class LivenessModule {
|
|
|
32943
32981
|
uploadFullFrame: config.uploadFullFrame
|
|
32944
32982
|
}, shouldEncrypt, encryptDataBase64);
|
|
32945
32983
|
} catch (error) {
|
|
32946
|
-
const _error = error;
|
|
32947
32984
|
// 確保 `handleUploadError` 的結果被等待
|
|
32948
32985
|
const action = yield handleUploadError$1();
|
|
32949
32986
|
if (action === 'close') {
|
|
32950
|
-
throw _error; // 這樣 `throw` 就能正確被 `catch` 處理
|
|
32987
|
+
// throw _error; // 這樣 `throw` 就能正確被 `catch` 處理
|
|
32988
|
+
throw new AuthmeError(ErrorCode.ERROR_USER_CANCEL);
|
|
32951
32989
|
} else if (action === 'retry') {
|
|
32952
32990
|
yield handleUpload(id, frameList, resultList, meta, config, shouldEncrypt, encryptDataBase64);
|
|
32953
32991
|
}
|
|
@@ -33740,9 +33778,9 @@ function SendRequestWithRetry(promiseFactory, options = {}) {
|
|
|
33740
33778
|
var _a, _b, _c;
|
|
33741
33779
|
const errorParams = (options === null || options === void 0 ? void 0 : options.onErrorHandler) ? options === null || options === void 0 ? void 0 : options.onErrorHandler(e) : {};
|
|
33742
33780
|
stopSpinner();
|
|
33743
|
-
return asyncShowErrorMessage(getTranslateInstance().translate((_a = errorParams === null || errorParams === void 0 ? void 0 : errorParams.errorText) !== null && _a !== void 0 ? _a : 'sdk.general.error.alert.serverError'),
|
|
33744
|
-
//
|
|
33745
|
-
|
|
33781
|
+
return asyncShowErrorMessage(getTranslateInstance().translate((_a = errorParams === null || errorParams === void 0 ? void 0 : errorParams.errorText) !== null && _a !== void 0 ? _a : 'sdk.general.error.alert.serverError'), errorParams.showRetryButton,
|
|
33782
|
+
// false,
|
|
33783
|
+
{
|
|
33746
33784
|
callback: errorParams === null || errorParams === void 0 ? void 0 : errorParams.onButtonClick,
|
|
33747
33785
|
buttonText: getTranslateInstance().translate((_b = errorParams === null || errorParams === void 0 ? void 0 : errorParams.buttonText) !== null && _b !== void 0 ? _b : 'sdk.general.error.retry'),
|
|
33748
33786
|
titleText: getTranslateInstance().translate((_c = errorParams === null || errorParams === void 0 ? void 0 : errorParams.titleText) !== null && _c !== void 0 ? _c : ''),
|
|
@@ -34006,11 +34044,11 @@ class OCRModule {
|
|
|
34006
34044
|
}
|
|
34007
34045
|
return response;
|
|
34008
34046
|
} catch (error) {
|
|
34009
|
-
const _error = error;
|
|
34010
34047
|
// 確保 `handleUploadError` 的結果被等待
|
|
34011
34048
|
const action = yield handleUploadError();
|
|
34012
34049
|
if (action === 'close') {
|
|
34013
|
-
throw _error; // 這樣 `throw` 就能正確被 `catch` 處理
|
|
34050
|
+
// throw _error; // 這樣 `throw` 就能正確被 `catch` 處理
|
|
34051
|
+
throw new AuthmeError(ErrorCode.ERROR_USER_CANCEL);
|
|
34014
34052
|
} else if (action === 'retry') {
|
|
34015
34053
|
return yield handleUpload(option, docId, ocrOriginImg, requestImg, ocrImg, report);
|
|
34016
34054
|
}
|
|
@@ -34039,9 +34077,10 @@ class OCRModule {
|
|
|
34039
34077
|
return initScan(config.type, config.country, config.needConfirm, config.cardTypes);
|
|
34040
34078
|
}, {
|
|
34041
34079
|
onErrorHandler(e) {
|
|
34042
|
-
var _a, _b, _c;
|
|
34080
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
34043
34081
|
const _error = e;
|
|
34044
|
-
if (((_c = (_b = (_a = _error === null || _error === void 0 ? void 0 : _error.cause) === null || _a === void 0 ? void 0 : _a.meta) === null || _b === void 0 ? void 0 : _b.responseContent) === null || _c === void 0 ? void 0 : _c.code) === 7) {
|
|
34082
|
+
if (((_c = (_b = (_a = _error === null || _error === void 0 ? void 0 : _error.cause) === null || _a === void 0 ? void 0 : _a.meta) === null || _b === void 0 ? void 0 : _b.responseContent) === null || _c === void 0 ? void 0 : _c.code) === 7 || ((_f = (_e = (_d = _error === null || _error === void 0 ? void 0 : _error.cause) === null || _d === void 0 ? void 0 : _d.meta) === null || _e === void 0 ? void 0 : _e.responseContent) === null || _f === void 0 ? void 0 : _f.code) === 5) {
|
|
34083
|
+
(_g = document.querySelector('.video-container__close')) === null || _g === void 0 ? void 0 : _g.classList.add('hide');
|
|
34045
34084
|
return {
|
|
34046
34085
|
buttonText: 'sdk.general.confirm',
|
|
34047
34086
|
titleText: 'sdk.general.error.eventNameInvalid.title',
|
|
@@ -35660,8 +35699,8 @@ class AuthmeIdentityVerification extends AuthmeFunctionModule {
|
|
|
35660
35699
|
}
|
|
35661
35700
|
|
|
35662
35701
|
var name = "authme/sdk";
|
|
35663
|
-
var version$1 = "2.8.
|
|
35664
|
-
var date = "2025-
|
|
35702
|
+
var version$1 = "2.8.13";
|
|
35703
|
+
var date = "2025-05-02T03:27:38+0000";
|
|
35665
35704
|
var packageInfo = {
|
|
35666
35705
|
name: name,
|
|
35667
35706
|
version: version$1,
|
package/package.json
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@authme/identity-verification",
|
|
3
|
-
"version": "2.8.
|
|
3
|
+
"version": "2.8.13",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"core-js": "^3.6.0",
|
|
6
6
|
"lottie-web": "^5.9.2",
|
|
7
7
|
"rxjs": "^7.4.0",
|
|
8
|
-
"@authme/core": "2.8.
|
|
9
|
-
"@authme/engine": "2.8.
|
|
10
|
-
"@authme/id-recognition": "2.8.
|
|
11
|
-
"@authme/
|
|
12
|
-
"@authme/
|
|
8
|
+
"@authme/core": "2.8.13",
|
|
9
|
+
"@authme/engine": "2.8.13",
|
|
10
|
+
"@authme/id-recognition": "2.8.13",
|
|
11
|
+
"@authme/liveness": "2.8.13",
|
|
12
|
+
"@authme/util": "2.8.13"
|
|
13
13
|
},
|
|
14
14
|
"module": "./index.js",
|
|
15
15
|
"main": "./index.cjs",
|