{"version":3,"file":"./modules/FriendlyCaptcha.xxxxxxxx.js","mappings":"oIAIe,MAAMA,EAGjB,YAAOC,CAAMC,EAPM,mCAQfC,MAAMC,KAAKC,SAASC,iBAAiBJ,IAAWK,QAAQC,IAAuBA,EAAKC,QAAQC,oBAAmBC,SAASC,IACpH,IAAIZ,EAAgBY,GACpBA,EAAQH,QAAQC,kBAAoB,MAAM,GAElD,CAEA,WAAAG,CAAmBD,GAAA,KAAAA,QAAAA,EACfE,KAAKC,UAAYH,EAAQI,aAAa,mBAEtCF,KAAKG,YACT,CAEQ,gBAAMA,GACV,MAAMC,EAAUJ,KAAKF,QAAQO,cAAc,gBAC3C,IAAKD,EAAS,OAEd,MAAME,EAAUN,KAAKO,WAAWH,GAC1BI,EAAWJ,aAAO,EAAPA,EAASF,aAAa,aACjCO,EAAYT,KAAKU,aAAaN,GAC9BO,EAAiBP,aAAO,EAAPA,EAASF,aAAa,wBAEvCU,EAAe,CACjBN,QAASA,EACTG,UAAWA,EACXD,SAAUA,GAOd,GAJIG,IACAC,EAAQD,eAAiBA,GAGzBE,OAAOC,kBACP,IAAID,OAAOC,kBAAkBC,eAAeX,EAASQ,OAClD,CACH,IAAKZ,KAAKC,UAAW,OAErB,SADMe,OAA+B,GAAGhB,KAAKC,cACxCY,OAAOC,kBAAmB,OAE/B,IAAID,OAAOC,kBAAkBC,eAAeX,EAASQ,E,CAE7D,CAEQ,UAAAL,CAAWH,GACf,OAAOA,aAAO,EAAPA,EAASF,aAAa,eACjC,CAEQ,YAAAQ,CAAaN,GACjB,OAAOA,aAAO,EAAPA,EAASF,aAAa,aACjC,E,+CCvDJ,Q,SAA8B,O","sources":["webpack:///./modules/FriendlyCaptcha/FriendlyCaptcha.ts","webpack:///./modules/FriendlyCaptcha/index.ts"],"sourcesContent":["const moduleSelector = '[data-module=\"FriendlyCaptcha\"]';\r\n\r\ntype StartMode = \"auto\" | \"focus\" | \"none\";\r\n\r\nexport default class FriendlyCaptcha {\r\n private widgetSrc: string;\r\n\r\n static setup(selector: string = moduleSelector): void {\r\n Array.from(document.querySelectorAll(selector)).filter((node: HTMLElement) => !node.dataset.moduleInitialized).forEach((element: HTMLElement) => {\r\n new FriendlyCaptcha(element);\r\n element.dataset.moduleInitialized = 'true';\r\n });\r\n }\r\n\r\n constructor(public element: HTMLElement) {\r\n this.widgetSrc = element.getAttribute('data-widget-src');\r\n\r\n this.initWidget();\r\n }\r\n\r\n private async initWidget() {\r\n const captcha = this.element.querySelector(\".frc-captcha\") as HTMLElement;\r\n if (!captcha) return;\r\n\r\n const sitekey = this.getSiteKey(captcha);\r\n const language = captcha?.getAttribute(\"data-lang\");\r\n const startMode = this.getStartMode(captcha);\r\n const puzzleEndpoint = captcha?.getAttribute(\"data-puzzle-endpoint\");\r\n\r\n const options: any = {\r\n sitekey: sitekey,\r\n startMode: startMode,\r\n language: language\r\n }\r\n\r\n if (puzzleEndpoint) {\r\n options.puzzleEndpoint = puzzleEndpoint;\r\n }\r\n\r\n if (window.friendlyChallenge) {\r\n new window.friendlyChallenge.WidgetInstance(captcha, options);\r\n } else {\r\n if (!this.widgetSrc) return;\r\n await import(/*webpackIgnore: true*/ `${this.widgetSrc}`);\r\n if (!window.friendlyChallenge) return;\r\n\r\n new window.friendlyChallenge.WidgetInstance(captcha, options);\r\n }\r\n }\r\n\r\n private getSiteKey(captcha: Element) {\r\n return captcha?.getAttribute(\"data-sitekey\");\r\n }\r\n\r\n private getStartMode(captcha: Element) {\r\n return captcha?.getAttribute(\"data-start\") as StartMode;\r\n }\r\n}","import FriendlyCaptcha from './FriendlyCaptcha';\r\nexport default FriendlyCaptcha;"],"names":["FriendlyCaptcha","setup","selector","Array","from","document","querySelectorAll","filter","node","dataset","moduleInitialized","forEach","element","constructor","this","widgetSrc","getAttribute","initWidget","captcha","querySelector","sitekey","getSiteKey","language","startMode","getStartMode","puzzleEndpoint","options","window","friendlyChallenge","WidgetInstance","import"],"sourceRoot":""}