@explorer02/cfm-survey-sdk 0.1.0 → 0.1.2

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.
Files changed (326) hide show
  1. package/dist/cli/index.d.mts +1 -0
  2. package/dist/cli/index.d.ts +0 -2
  3. package/dist/cli/index.js +38 -40
  4. package/dist/cli/index.mjs +39 -0
  5. package/dist/index.d.mts +706 -0
  6. package/dist/index.d.ts +706 -3
  7. package/dist/index.js +1 -6
  8. package/dist/index.mjs +1 -0
  9. package/package.json +9 -7
  10. package/templates/AGENT.md +650 -29
  11. package/dist/analytics/analyticsTracker.d.ts +0 -3
  12. package/dist/analytics/analyticsTracker.d.ts.map +0 -1
  13. package/dist/analytics/analyticsTracker.js +0 -34
  14. package/dist/analytics/analyticsTracker.js.map +0 -1
  15. package/dist/analytics/types.d.ts +0 -76
  16. package/dist/analytics/types.d.ts.map +0 -1
  17. package/dist/analytics/types.js +0 -3
  18. package/dist/analytics/types.js.map +0 -1
  19. package/dist/cli/const.d.ts +0 -10
  20. package/dist/cli/const.d.ts.map +0 -1
  21. package/dist/cli/const.js +0 -13
  22. package/dist/cli/const.js.map +0 -1
  23. package/dist/cli/constants.d.ts +0 -9
  24. package/dist/cli/constants.js +0 -12
  25. package/dist/cli/deploy.d.ts +0 -2
  26. package/dist/cli/deploy.d.ts.map +0 -1
  27. package/dist/cli/deploy.js +0 -21
  28. package/dist/cli/deploy.js.map +0 -1
  29. package/dist/cli/index.d.ts.map +0 -1
  30. package/dist/cli/index.js.map +0 -1
  31. package/dist/cli/init.d.ts +0 -2
  32. package/dist/cli/init.d.ts.map +0 -1
  33. package/dist/cli/init.js +0 -145
  34. package/dist/cli/init.js.map +0 -1
  35. package/dist/cli/questionnaire/engine.d.ts +0 -22
  36. package/dist/cli/questionnaire/engine.d.ts.map +0 -1
  37. package/dist/cli/questionnaire/engine.js +0 -218
  38. package/dist/cli/questionnaire/engine.js.map +0 -1
  39. package/dist/cli/questionnaire/questionnaire-cli.d.ts +0 -2
  40. package/dist/cli/questionnaire/questionnaire-cli.d.ts.map +0 -1
  41. package/dist/cli/questionnaire/questionnaire-cli.js +0 -3
  42. package/dist/cli/questionnaire/questionnaire-cli.js.map +0 -1
  43. package/dist/cli/questionnaire/questions.d.ts +0 -3
  44. package/dist/cli/questionnaire/questions.d.ts.map +0 -1
  45. package/dist/cli/questionnaire/questions.js +0 -337
  46. package/dist/cli/questionnaire/questions.js.map +0 -1
  47. package/dist/cli/questionnaire/runner.d.ts +0 -3
  48. package/dist/cli/questionnaire/runner.d.ts.map +0 -1
  49. package/dist/cli/questionnaire/runner.js +0 -161
  50. package/dist/cli/questionnaire/runner.js.map +0 -1
  51. package/dist/cli/questionnaire/server.d.ts +0 -11
  52. package/dist/cli/questionnaire/server.d.ts.map +0 -1
  53. package/dist/cli/questionnaire/server.js +0 -80
  54. package/dist/cli/questionnaire/server.js.map +0 -1
  55. package/dist/cli/questionnaire/types.d.ts +0 -95
  56. package/dist/cli/questionnaire/types.d.ts.map +0 -1
  57. package/dist/cli/questionnaire/types.js +0 -7
  58. package/dist/cli/questionnaire/types.js.map +0 -1
  59. package/dist/cli/utils/exec.d.ts +0 -4
  60. package/dist/cli/utils/exec.d.ts.map +0 -1
  61. package/dist/cli/utils/exec.js +0 -41
  62. package/dist/cli/utils/exec.js.map +0 -1
  63. package/dist/cli/utils/nodeCheck.d.ts +0 -2
  64. package/dist/cli/utils/nodeCheck.d.ts.map +0 -1
  65. package/dist/cli/utils/nodeCheck.js +0 -72
  66. package/dist/cli/utils/nodeCheck.js.map +0 -1
  67. package/dist/cli/utils/prompts.d.ts +0 -2
  68. package/dist/cli/utils/prompts.d.ts.map +0 -1
  69. package/dist/cli/utils/prompts.js +0 -29
  70. package/dist/cli/utils/prompts.js.map +0 -1
  71. package/dist/cli/utils/vercelCliCheck.d.ts +0 -6
  72. package/dist/cli/utils/vercelCliCheck.d.ts.map +0 -1
  73. package/dist/cli/utils/vercelCliCheck.js +0 -38
  74. package/dist/cli/utils/vercelCliCheck.js.map +0 -1
  75. package/dist/cli/utils/vercelDeploy.d.ts +0 -2
  76. package/dist/cli/utils/vercelDeploy.d.ts.map +0 -1
  77. package/dist/cli/utils/vercelDeploy.js +0 -21
  78. package/dist/cli/utils/vercelDeploy.js.map +0 -1
  79. package/dist/cli/utils/vercelLoginCheck.d.ts +0 -2
  80. package/dist/cli/utils/vercelLoginCheck.d.ts.map +0 -1
  81. package/dist/cli/utils/vercelLoginCheck.js +0 -42
  82. package/dist/cli/utils/vercelLoginCheck.js.map +0 -1
  83. package/dist/fetchSurvey/internalTypes.d.ts +0 -60
  84. package/dist/fetchSurvey/internalTypes.d.ts.map +0 -1
  85. package/dist/fetchSurvey/internalTypes.js +0 -3
  86. package/dist/fetchSurvey/internalTypes.js.map +0 -1
  87. package/dist/fetchSurvey/logger/fetchLogger.d.ts +0 -6
  88. package/dist/fetchSurvey/logger/fetchLogger.d.ts.map +0 -1
  89. package/dist/fetchSurvey/logger/fetchLogger.js +0 -37
  90. package/dist/fetchSurvey/logger/fetchLogger.js.map +0 -1
  91. package/dist/fetchSurvey/logger/mapperLogger.d.ts +0 -4
  92. package/dist/fetchSurvey/logger/mapperLogger.d.ts.map +0 -1
  93. package/dist/fetchSurvey/logger/mapperLogger.js +0 -16
  94. package/dist/fetchSurvey/logger/mapperLogger.js.map +0 -1
  95. package/dist/fetchSurvey/telemetry/fetchTelemetry.d.ts +0 -3
  96. package/dist/fetchSurvey/telemetry/fetchTelemetry.d.ts.map +0 -1
  97. package/dist/fetchSurvey/telemetry/fetchTelemetry.js +0 -29
  98. package/dist/fetchSurvey/telemetry/fetchTelemetry.js.map +0 -1
  99. package/dist/fetchSurvey/types.d.ts +0 -54
  100. package/dist/fetchSurvey/types.d.ts.map +0 -1
  101. package/dist/fetchSurvey/types.js +0 -3
  102. package/dist/fetchSurvey/types.js.map +0 -1
  103. package/dist/fetchSurvey/useFetchSurvey.d.ts +0 -25
  104. package/dist/fetchSurvey/useFetchSurvey.d.ts.map +0 -1
  105. package/dist/fetchSurvey/useFetchSurvey.js +0 -115
  106. package/dist/fetchSurvey/useFetchSurvey.js.map +0 -1
  107. package/dist/fetchSurvey/utils/cleaner.d.ts +0 -7
  108. package/dist/fetchSurvey/utils/cleaner.d.ts.map +0 -1
  109. package/dist/fetchSurvey/utils/cleaner.js +0 -35
  110. package/dist/fetchSurvey/utils/cleaner.js.map +0 -1
  111. package/dist/fetchSurvey/utils/constants.d.ts +0 -10
  112. package/dist/fetchSurvey/utils/constants.d.ts.map +0 -1
  113. package/dist/fetchSurvey/utils/constants.js +0 -13
  114. package/dist/fetchSurvey/utils/constants.js.map +0 -1
  115. package/dist/fetchSurvey/utils/extractSurveyLanguages.d.ts +0 -17
  116. package/dist/fetchSurvey/utils/extractSurveyLanguages.d.ts.map +0 -1
  117. package/dist/fetchSurvey/utils/extractSurveyLanguages.js +0 -61
  118. package/dist/fetchSurvey/utils/extractSurveyLanguages.js.map +0 -1
  119. package/dist/fetchSurvey/utils/index.d.ts +0 -6
  120. package/dist/fetchSurvey/utils/index.d.ts.map +0 -1
  121. package/dist/fetchSurvey/utils/index.js +0 -22
  122. package/dist/fetchSurvey/utils/index.js.map +0 -1
  123. package/dist/fetchSurvey/utils/mapSurveyPages.d.ts +0 -12
  124. package/dist/fetchSurvey/utils/mapSurveyPages.d.ts.map +0 -1
  125. package/dist/fetchSurvey/utils/mapSurveyPages.js +0 -30
  126. package/dist/fetchSurvey/utils/mapSurveyPages.js.map +0 -1
  127. package/dist/fetchSurvey/utils/mappers/index.d.ts +0 -3
  128. package/dist/fetchSurvey/utils/mappers/index.d.ts.map +0 -1
  129. package/dist/fetchSurvey/utils/mappers/index.js +0 -19
  130. package/dist/fetchSurvey/utils/mappers/index.js.map +0 -1
  131. package/dist/fetchSurvey/utils/mappers/questionMapper.d.ts +0 -42
  132. package/dist/fetchSurvey/utils/mappers/questionMapper.d.ts.map +0 -1
  133. package/dist/fetchSurvey/utils/mappers/questionMapper.js +0 -183
  134. package/dist/fetchSurvey/utils/mappers/questionMapper.js.map +0 -1
  135. package/dist/fetchSurvey/utils/mappers/questionMapper.test.d.ts +0 -2
  136. package/dist/fetchSurvey/utils/mappers/questionMapper.test.d.ts.map +0 -1
  137. package/dist/fetchSurvey/utils/mappers/questionMapper.test.js +0 -79
  138. package/dist/fetchSurvey/utils/mappers/questionMapper.test.js.map +0 -1
  139. package/dist/fetchSurvey/utils/mappers/surveyMapper.d.ts +0 -36
  140. package/dist/fetchSurvey/utils/mappers/surveyMapper.d.ts.map +0 -1
  141. package/dist/fetchSurvey/utils/mappers/surveyMapper.js +0 -65
  142. package/dist/fetchSurvey/utils/mappers/surveyMapper.js.map +0 -1
  143. package/dist/fetchSurvey/utils/url.d.ts +0 -14
  144. package/dist/fetchSurvey/utils/url.d.ts.map +0 -1
  145. package/dist/fetchSurvey/utils/url.js +0 -26
  146. package/dist/fetchSurvey/utils/url.js.map +0 -1
  147. package/dist/fetchSurvey/utils/validation.d.ts +0 -15
  148. package/dist/fetchSurvey/utils/validation.d.ts.map +0 -1
  149. package/dist/fetchSurvey/utils/validation.js +0 -36
  150. package/dist/fetchSurvey/utils/validation.js.map +0 -1
  151. package/dist/index.d.ts.map +0 -1
  152. package/dist/index.js.map +0 -1
  153. package/dist/logger/logger.d.ts +0 -26
  154. package/dist/logger/logger.d.ts.map +0 -1
  155. package/dist/logger/logger.js +0 -57
  156. package/dist/logger/logger.js.map +0 -1
  157. package/dist/queryClient.d.ts +0 -3
  158. package/dist/queryClient.d.ts.map +0 -1
  159. package/dist/queryClient.js +0 -64
  160. package/dist/queryClient.js.map +0 -1
  161. package/dist/submitSurvey/logger/resolutionLogger.d.ts +0 -4
  162. package/dist/submitSurvey/logger/resolutionLogger.d.ts.map +0 -1
  163. package/dist/submitSurvey/logger/resolutionLogger.js +0 -16
  164. package/dist/submitSurvey/logger/resolutionLogger.js.map +0 -1
  165. package/dist/submitSurvey/logger/submitLogger.d.ts +0 -7
  166. package/dist/submitSurvey/logger/submitLogger.d.ts.map +0 -1
  167. package/dist/submitSurvey/logger/submitLogger.js +0 -43
  168. package/dist/submitSurvey/logger/submitLogger.js.map +0 -1
  169. package/dist/submitSurvey/telemetry/submitTelemetry.d.ts +0 -3
  170. package/dist/submitSurvey/telemetry/submitTelemetry.d.ts.map +0 -1
  171. package/dist/submitSurvey/telemetry/submitTelemetry.js +0 -30
  172. package/dist/submitSurvey/telemetry/submitTelemetry.js.map +0 -1
  173. package/dist/submitSurvey/types.d.ts +0 -37
  174. package/dist/submitSurvey/types.d.ts.map +0 -1
  175. package/dist/submitSurvey/types.js +0 -3
  176. package/dist/submitSurvey/types.js.map +0 -1
  177. package/dist/submitSurvey/useSubmitResponse.d.ts +0 -18
  178. package/dist/submitSurvey/useSubmitResponse.d.ts.map +0 -1
  179. package/dist/submitSurvey/useSubmitResponse.js +0 -101
  180. package/dist/submitSurvey/useSubmitResponse.js.map +0 -1
  181. package/dist/submitSurvey/useSurveyPagination.d.ts +0 -0
  182. package/dist/submitSurvey/useSurveyPagination.js +0 -1
  183. package/dist/submitSurvey/utils/constants.d.ts +0 -5
  184. package/dist/submitSurvey/utils/constants.d.ts.map +0 -1
  185. package/dist/submitSurvey/utils/constants.js +0 -8
  186. package/dist/submitSurvey/utils/constants.js.map +0 -1
  187. package/dist/submitSurvey/utils/formatters.d.ts +0 -12
  188. package/dist/submitSurvey/utils/formatters.d.ts.map +0 -1
  189. package/dist/submitSurvey/utils/formatters.js +0 -29
  190. package/dist/submitSurvey/utils/formatters.js.map +0 -1
  191. package/dist/submitSurvey/utils/index.d.ts +0 -5
  192. package/dist/submitSurvey/utils/index.d.ts.map +0 -1
  193. package/dist/submitSurvey/utils/index.js +0 -21
  194. package/dist/submitSurvey/utils/index.js.map +0 -1
  195. package/dist/submitSurvey/utils/url.d.ts +0 -9
  196. package/dist/submitSurvey/utils/url.d.ts.map +0 -1
  197. package/dist/submitSurvey/utils/url.js +0 -20
  198. package/dist/submitSurvey/utils/url.js.map +0 -1
  199. package/dist/submitSurvey/utils/validation.d.ts +0 -20
  200. package/dist/submitSurvey/utils/validation.d.ts.map +0 -1
  201. package/dist/submitSurvey/utils/validation.js +0 -43
  202. package/dist/submitSurvey/utils/validation.js.map +0 -1
  203. package/dist/surveyPagination/actions/index.d.ts +0 -5
  204. package/dist/surveyPagination/actions/index.d.ts.map +0 -1
  205. package/dist/surveyPagination/actions/index.js +0 -12
  206. package/dist/surveyPagination/actions/index.js.map +0 -1
  207. package/dist/surveyPagination/actions/useOnBack.d.ts +0 -3
  208. package/dist/surveyPagination/actions/useOnBack.d.ts.map +0 -1
  209. package/dist/surveyPagination/actions/useOnBack.js +0 -33
  210. package/dist/surveyPagination/actions/useOnBack.js.map +0 -1
  211. package/dist/surveyPagination/actions/useOnChange.d.ts +0 -3
  212. package/dist/surveyPagination/actions/useOnChange.d.ts.map +0 -1
  213. package/dist/surveyPagination/actions/useOnChange.js +0 -14
  214. package/dist/surveyPagination/actions/useOnChange.js.map +0 -1
  215. package/dist/surveyPagination/actions/useOnNext.d.ts +0 -3
  216. package/dist/surveyPagination/actions/useOnNext.d.ts.map +0 -1
  217. package/dist/surveyPagination/actions/useOnNext.js +0 -82
  218. package/dist/surveyPagination/actions/useOnNext.js.map +0 -1
  219. package/dist/surveyPagination/actions/useOnSubmit.d.ts +0 -3
  220. package/dist/surveyPagination/actions/useOnSubmit.d.ts.map +0 -1
  221. package/dist/surveyPagination/actions/useOnSubmit.js +0 -102
  222. package/dist/surveyPagination/actions/useOnSubmit.js.map +0 -1
  223. package/dist/surveyPagination/dispatchers/index.d.ts +0 -4
  224. package/dist/surveyPagination/dispatchers/index.d.ts.map +0 -1
  225. package/dist/surveyPagination/dispatchers/index.js +0 -10
  226. package/dist/surveyPagination/dispatchers/index.js.map +0 -1
  227. package/dist/surveyPagination/dispatchers/useCheckBacktrackChanges.d.ts +0 -6
  228. package/dist/surveyPagination/dispatchers/useCheckBacktrackChanges.d.ts.map +0 -1
  229. package/dist/surveyPagination/dispatchers/useCheckBacktrackChanges.js +0 -28
  230. package/dist/surveyPagination/dispatchers/useCheckBacktrackChanges.js.map +0 -1
  231. package/dist/surveyPagination/dispatchers/useTrackOptionalSkips.d.ts +0 -4
  232. package/dist/surveyPagination/dispatchers/useTrackOptionalSkips.d.ts.map +0 -1
  233. package/dist/surveyPagination/dispatchers/useTrackOptionalSkips.js +0 -19
  234. package/dist/surveyPagination/dispatchers/useTrackOptionalSkips.js.map +0 -1
  235. package/dist/surveyPagination/dispatchers/useTrackPageTime.d.ts +0 -4
  236. package/dist/surveyPagination/dispatchers/useTrackPageTime.d.ts.map +0 -1
  237. package/dist/surveyPagination/dispatchers/useTrackPageTime.js +0 -12
  238. package/dist/surveyPagination/dispatchers/useTrackPageTime.js.map +0 -1
  239. package/dist/surveyPagination/effects/index.d.ts +0 -3
  240. package/dist/surveyPagination/effects/index.d.ts.map +0 -1
  241. package/dist/surveyPagination/effects/index.js +0 -8
  242. package/dist/surveyPagination/effects/index.js.map +0 -1
  243. package/dist/surveyPagination/effects/useResetPageStartTime.d.ts +0 -3
  244. package/dist/surveyPagination/effects/useResetPageStartTime.d.ts.map +0 -1
  245. package/dist/surveyPagination/effects/useResetPageStartTime.js +0 -11
  246. package/dist/surveyPagination/effects/useResetPageStartTime.js.map +0 -1
  247. package/dist/surveyPagination/effects/useSessionUnmountSummary.d.ts +0 -2
  248. package/dist/surveyPagination/effects/useSessionUnmountSummary.d.ts.map +0 -1
  249. package/dist/surveyPagination/effects/useSessionUnmountSummary.js +0 -32
  250. package/dist/surveyPagination/effects/useSessionUnmountSummary.js.map +0 -1
  251. package/dist/surveyPagination/effects/useTrackMaxVisitedPage.d.ts +0 -3
  252. package/dist/surveyPagination/effects/useTrackMaxVisitedPage.d.ts.map +0 -1
  253. package/dist/surveyPagination/effects/useTrackMaxVisitedPage.js +0 -13
  254. package/dist/surveyPagination/effects/useTrackMaxVisitedPage.js.map +0 -1
  255. package/dist/surveyPagination/effects/useUpdateAnalyticsContext.d.ts +0 -2
  256. package/dist/surveyPagination/effects/useUpdateAnalyticsContext.d.ts.map +0 -1
  257. package/dist/surveyPagination/effects/useUpdateAnalyticsContext.js +0 -15
  258. package/dist/surveyPagination/effects/useUpdateAnalyticsContext.js.map +0 -1
  259. package/dist/surveyPagination/logger/navigationLogger.d.ts +0 -7
  260. package/dist/surveyPagination/logger/navigationLogger.d.ts.map +0 -1
  261. package/dist/surveyPagination/logger/navigationLogger.js +0 -28
  262. package/dist/surveyPagination/logger/navigationLogger.js.map +0 -1
  263. package/dist/surveyPagination/logger/validationLogger.d.ts +0 -5
  264. package/dist/surveyPagination/logger/validationLogger.d.ts.map +0 -1
  265. package/dist/surveyPagination/logger/validationLogger.js +0 -20
  266. package/dist/surveyPagination/logger/validationLogger.js.map +0 -1
  267. package/dist/surveyPagination/telemetry/pageTelemetry.d.ts +0 -3
  268. package/dist/surveyPagination/telemetry/pageTelemetry.d.ts.map +0 -1
  269. package/dist/surveyPagination/telemetry/pageTelemetry.js +0 -25
  270. package/dist/surveyPagination/telemetry/pageTelemetry.js.map +0 -1
  271. package/dist/surveyPagination/telemetry/sessionTelemetry.d.ts +0 -8
  272. package/dist/surveyPagination/telemetry/sessionTelemetry.d.ts.map +0 -1
  273. package/dist/surveyPagination/telemetry/sessionTelemetry.js +0 -43
  274. package/dist/surveyPagination/telemetry/sessionTelemetry.js.map +0 -1
  275. package/dist/surveyPagination/types.d.ts +0 -43
  276. package/dist/surveyPagination/types.d.ts.map +0 -1
  277. package/dist/surveyPagination/types.js +0 -3
  278. package/dist/surveyPagination/types.js.map +0 -1
  279. package/dist/surveyPagination/useSurveyPagination.d.ts +0 -28
  280. package/dist/surveyPagination/useSurveyPagination.d.ts.map +0 -1
  281. package/dist/surveyPagination/useSurveyPagination.js +0 -93
  282. package/dist/surveyPagination/useSurveyPagination.js.map +0 -1
  283. package/dist/surveyPagination/utils/index.d.ts +0 -3
  284. package/dist/surveyPagination/utils/index.d.ts.map +0 -1
  285. package/dist/surveyPagination/utils/index.js +0 -19
  286. package/dist/surveyPagination/utils/index.js.map +0 -1
  287. package/dist/surveyPagination/utils/scroll.d.ts +0 -25
  288. package/dist/surveyPagination/utils/scroll.d.ts.map +0 -1
  289. package/dist/surveyPagination/utils/scroll.js +0 -67
  290. package/dist/surveyPagination/utils/scroll.js.map +0 -1
  291. package/dist/surveyPagination/utils/validation.d.ts +0 -24
  292. package/dist/surveyPagination/utils/validation.d.ts.map +0 -1
  293. package/dist/surveyPagination/utils/validation.js +0 -53
  294. package/dist/surveyPagination/utils/validation.js.map +0 -1
  295. package/dist/surveyProgress/useSurveyProgress.d.ts +0 -21
  296. package/dist/surveyProgress/useSurveyProgress.d.ts.map +0 -1
  297. package/dist/surveyProgress/useSurveyProgress.js +0 -34
  298. package/dist/surveyProgress/useSurveyProgress.js.map +0 -1
  299. package/dist/surveyProgress/utils/index.d.ts +0 -2
  300. package/dist/surveyProgress/utils/index.d.ts.map +0 -1
  301. package/dist/surveyProgress/utils/index.js +0 -18
  302. package/dist/surveyProgress/utils/index.js.map +0 -1
  303. package/dist/surveyProgress/utils/progress.d.ts +0 -27
  304. package/dist/surveyProgress/utils/progress.d.ts.map +0 -1
  305. package/dist/surveyProgress/utils/progress.js +0 -60
  306. package/dist/surveyProgress/utils/progress.js.map +0 -1
  307. package/dist/surveySDK/constants.d.ts +0 -10
  308. package/dist/surveySDK/constants.d.ts.map +0 -1
  309. package/dist/surveySDK/constants.js +0 -14
  310. package/dist/surveySDK/constants.js.map +0 -1
  311. package/dist/surveySDK/types.d.ts +0 -29
  312. package/dist/surveySDK/types.d.ts.map +0 -1
  313. package/dist/surveySDK/types.js +0 -3
  314. package/dist/surveySDK/types.js.map +0 -1
  315. package/dist/surveySDK/useSurveySDK.d.ts +0 -32
  316. package/dist/surveySDK/useSurveySDK.d.ts.map +0 -1
  317. package/dist/surveySDK/useSurveySDK.js +0 -86
  318. package/dist/surveySDK/useSurveySDK.js.map +0 -1
  319. package/dist/useFetchSurvey.d.ts +0 -73
  320. package/dist/useFetchSurvey.d.ts.map +0 -1
  321. package/dist/useFetchSurvey.js +0 -202
  322. package/dist/useFetchSurvey.js.map +0 -1
  323. package/dist/useSubmitResponse.d.ts +0 -40
  324. package/dist/useSubmitResponse.d.ts.map +0 -1
  325. package/dist/useSubmitResponse.js +0 -146
  326. package/dist/useSubmitResponse.js.map +0 -1
package/dist/index.js CHANGED
@@ -1,6 +1 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useSurveySDK = void 0;
4
- var useSurveySDK_1 = require("./surveySDK/useSurveySDK");
5
- Object.defineProperty(exports, "useSurveySDK", { enumerable: true, get: function () { return useSurveySDK_1.useSurveySDK; } });
6
- //# sourceMappingURL=index.js.map
1
+ "use strict";var g4=Object.create;var q=Object.defineProperty;var u4=Object.getOwnPropertyDescriptor;var p4=Object.getOwnPropertyNames;var M4=Object.getPrototypeOf,x4=Object.prototype.hasOwnProperty;var L4=(c,t)=>{for(var a in t)q(c,a,{get:t[a],enumerable:!0})},w1=(c,t,a,l)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of p4(t))!x4.call(c,i)&&i!==a&&q(c,i,{get:()=>t[i],enumerable:!(l=u4(t,i))||l.enumerable});return c};var X=(c,t,a)=>(a=c!=null?g4(M4(c)):{},w1(t||!c||!c.__esModule?q(a,"default",{value:c,enumerable:!0}):a,c)),m4=c=>w1(q({},"__esModule",{value:!0}),c);var G4={};L4(G4,{CsatEmojiMapping:()=>n4,CsatEmojiSet:()=>H,CsatStarIcons:()=>v4,getEmojiForIndex:()=>o4,useSurveySDK:()=>j2});module.exports=m4(G4);var _2=require("react");var $1=require("react"),c2=require("@tanstack/react-query");var F1=require("@tanstack/react-query");var K=!1,C4={debug:"background: #7f8c8d; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold;",info:"background: #2980b9; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold;",warn:"background: #f1c40f; color: #000; padding: 2px 5px; border-radius: 3px; font-weight: bold;",error:"background: #e74c3c; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold;",success:"background: #2ecc71; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold;",perf:"background: #9b59b6; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold;",analytics:"background: #e20074; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold;"};function b(c,t,a){if(!K&&c!=="analytics")return;let l=new Date().toLocaleTimeString(),i=`%c[SDK:${c.toUpperCase()}]`,r=C4[c];a!==void 0?console.log(`[${l}] ${i}`,r,t,a):console.log(`[${l}] ${i}`,r,t)}var M={setEnabled:c=>{K=c},isEnabled:()=>K,debug:(c,t)=>b("debug",c,t),info:(c,t)=>b("info",c,t),warn:(c,t)=>b("warn",c,t),error:(c,t)=>b("error",c,t),success:(c,t)=>b("success",c,t),analytics:(c,t)=>b("analytics",c,t),perf:c=>{b("perf",`${c.apiName} completed in ${c.durationMs.toFixed(2)}ms | Status: ${c.status}`,c)}};var N=new F1.QueryClient({defaultOptions:{queries:{staleTime:1/0,refetchOnWindowFocus:!1,refetchOnReconnect:!1,refetchInterval:!1,retryDelay:5e3,retry:(c,t)=>{if(c>=3)return M.error("Query failed permanently after 3 attempts. Stopping retries.",t),!1;if(t instanceof Error){let a=t.message;if(a.includes("400")||a.includes("401")||a.includes("403")||a.includes("404")||a.includes("422"))return M.error(`Query failed permanently due to client error (${a}). Skipping retry.`,t),!1}return M.warn(`Query failed. Retrying attempt ${c+1}/3...`,t),!0}},mutations:{networkMode:"always",retryDelay:5e3,retry:(c,t)=>{if(c>=3)return M.error("Mutation failed permanently after 3 attempts. Stopping retries.",t),!1;if(t instanceof Error){let a=t.message;if(a.includes("400")||a.includes("401")||a.includes("403")||a.includes("422"))return M.error("Mutation failed permanently due to validation/client error. Skipping retry.",t),!1}return M.warn(`Mutation failed. Retrying attempt ${c+1}/3...`,t),!0}}}});var B1="https://custom-p0.feedbook.me/api/feedback/survey/cfm",H1="eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJBY2Nlc3MgVG9rZW4gR2VuZXJhdGVkIEJ5IFNwcmlua2xyIiwic3VydmV5SWQiOiI2YTJlNWM2NDFiOGRiMmY5MDQ2Nzg4ODUiLCJpc3MiOiJTUFJJTktMUiIsInR5cCI6IkpXVCIsInN1cnZleU1vZGUiOiJTVEFOREFSRCIsInN1cnZleUF1dGhlbnRpY2F0aW9uU3RhdGUiOiJOT1RfUkVRVUlSRUQiLCJkaXN0cmlidXRpb25FbnRpdHlJZCI6IjZhMmU1ZDEzNDRjYTkzZjc3YTVlMzcyNyIsImF1ZCI6IlNQUklOS0xSIiwibmJmIjoxNzgxNDIyMTc5LCJzY29wZSI6WyJSRUFEIiwiV1JJVEUiXSwic3RhdGljU3VydmV5IjoidHJ1ZSIsInN1cnZleVJlc3BvbmRlclNuVHlwZSI6IkVYVEVSTkFMX0FQUExJQ0FUSU9OIiwic3VydmV5TGFuZ3VhZ2UiOiJlbiIsInBhcnRuZXJJZCI6OTAwNCwidG9rZW5UeXBlIjoiQUNDRVNTIiwiYXV0aFR5cGUiOiJTVVJWRVlfUkVTUE9OU0UiLCJpYXQiOjE3ODE0MjMzNzksImp0aSI6InNwcmlua2xyIn0.B4ffi1szwM_xQKXTlr0kQc9mVOS4qVbB5e6ir4NFuCoOmNmsl3PB1QeFJ5jPaQ42s0KTpbufPam9ja0Z84CJ620l2WtuS1RModEv7ZtuMNLWOixzRxZMduC5-V7WV85H6gr1e-HzX7wgqrxTk2Z9iTr-8AVuczlwScarCfqLhA-JE_EXkFScHoehmH7QB5q5-BfcxU32iQNYOk5NyeEHGAAWkkyiGPdrbE27njPnhTunB3kKgCBvHHLq0KmgoN9x_KnrB53O_0Xai419TT5vkBWlu5a_uotZckX014eQpxYH02w_LeOF8iWEKYe6R9ge-6DSbelaJSt6U6O8Fq-aXw";function f4(c){return`${B1}?instanceId=${encodeURIComponent(c)}&draftPreview=false`}function V1(c){let t=typeof c=="string"&&c.trim().length>0?c.trim():H1;return f4(t)}var w4={en:"English",hi:"Hindi",de:"Deutsch",es:"Espa\xF1ol",fr:"Fran\xE7ais",bn:"Bengali",gu:"Gujarati",it:"Italiano",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4",mr:"Marathi",pa:"Punjabi",ta:"Tamil",te:"Telugu",ur:"Urdu",zh:"\u4E2D\u6587"};function F4(c){let t=c.toLowerCase().trim();return w4[t]||c.toUpperCase()}function S1(c){let t=c.cfmSurveyDTO,a=new Set,l=t?.baseLanguage??"en";return a.add(l),t&&Array.isArray(t.surveyPages)&&t.surveyPages.forEach(i=>{(i.questionHolders??[]).forEach(r=>{let e=r.question;e&&e.translations&&Object.keys(e.translations).forEach(h=>{a.add(h)})})}),Array.from(a).map(i=>({code:i,name:F4(i)}))}var B4=new Set(["CFM_MATRIX","CSAT_MATRIX"]);function Y(c){let t=(c??"").toUpperCase();return t==="TEXTFIELD"?"text":t==="NPS_SCALE"||t==="RATING"||t==="SCALE"?"rating":B4.has(t)?"matrix":t==="RATING_MATRIX"?"rating_matrix":t==="SLIDER_MATRIX"?"slider_matrix":t==="TEXT_AND_MEDIA"?"text_and_media":t==="FILE_UPLOAD"?"file_upload":"radio"}function $(c,t,a){if(c.toUpperCase()==="NPS_SCALE")return"nps";let i=t.find(e=>e.key==="SCALE_TYPE")?.value?.[0]?.toUpperCase();return t.find(e=>e.key==="INPUT_TYPE")?.value?.[0]?.toUpperCase()==="SLIDER"?"slider":i==="CSAT"||i==="STAR"||i==="EMOJI"||a>0&&a<=5?"csat":"nps"}function Z(c=[],t){let a=c.filter(l=>l.additional?.isHintText&&!l.hidden).map(l=>t&&l.translations?.[t]?.answerText||l.answerText||"").filter(Boolean);return a.length>=3?{minLabel:a[0],midLabel:a[1],maxLabel:a[2]}:{minLabel:a[0],maxLabel:a[1]}}var H4=["#e2001a","#e4251b","#ec610a","#f18b00","#f7b200","#fcd900","#d2dc00","#9fca00","#6bb300","#339a00","#008000"];function R(c){return H4[c]??"#e20074"}function T(c,t,a){if(t==="text")return[];let i=(c.answerDetails??[]).filter(r=>!r.hidden&&!r.additional?.isHintText);return i.length>0?i.map((r,e)=>{let h=a&&r.translations?.[a]?.answerText||r.answerText||"",s=r.answerText??"",v=Number(s),o=Number.isFinite(v)&&s.trim()!==""?v:s,n={id:r.id??String(e),label:h,value:o};return t==="rating"&&typeof o=="number"&&(n.color=R(o)),n}):t==="rating"?Array.from({length:11},(r,e)=>({id:String(e),label:String(e),value:e,color:R(e)})):[]}function c1(c){let t=c.questionConfigs??[],a=c.additional??{},l=t.find(n=>n.key==="SLIDER_MIN")?.value?.[0]??t.find(n=>n.key==="MIN_VALUE")?.value?.[0]??a.sliderMin,i=t.find(n=>n.key==="SLIDER_MAX")?.value?.[0]??t.find(n=>n.key==="MAX_VALUE")?.value?.[0]??a.sliderMax,r=t.find(n=>n.key==="SLIDER_STEP")?.value?.[0]??a.sliderStep,e=t.find(n=>n.key==="DEFAULT_VALUE")?.value?.[0]??a.defaultValue,h=l!==void 0?Number(l):0,s=i!==void 0?Number(i):10,v=r!==void 0&&Number(r)>0?Number(r):1,o=e!==void 0?Number(e):void 0;return{min:Number.isFinite(h)?h:0,max:Number.isFinite(s)?s:10,step:Number.isFinite(v)?v:1,...o!==void 0&&Number.isFinite(o)?{defaultValue:o}:{}}}function A1(c,t,a,l){let i=(c.answerDetails??[]).filter(d=>!d.hidden&&!d.additional?.isHintText),r=$(c.answerType??"",a,i.length);if(r==="csat"){let{minLabel:d,maxLabel:g}=Z(c.answerDetails,l),z=T(c,"radio",l),L=a.map(m=>m.value?.[0]||"").join(" ").toUpperCase(),u=(c.dataSubType||"").toUpperCase(),p=`${L} ${u}`,x=a.find(m=>m.key==="BUTTON_TYPE")?.value?.[0]?.toLowerCase()||void 0;x||(p.includes("EMOJI")||p.includes("CSAT")||p.includes("SMILEY")||p.includes("FACE")?x="emoji":p.includes("STAR")?x="star":p.includes("GRAPHIC")||p.includes("SLIDER")?x="graphics":p.includes("DROP")?x="dropdown":p.includes("SELECT")?x="selectbox":p.includes("RADIO")?x="radio":p.includes("NUMBER")&&(x="numbered"));let f=a.find(m=>m.key==="ENABLE_NON_APPLICABLE")?.value?.[0]==="true",V=a.find(m=>m.key.includes("REVERSE"))?.value?.[0]?.toLowerCase()==="true"||c.additional?.reverseScaleOrder===!0||c.additional?.reverseScale===!0,P=a.find(m=>m.key==="LABEL_POSITIONING")?.value?.[0]?.toLowerCase()||void 0;if(V){z=[...z].reverse();let m=d;d=g,g=m}return f&&z.push({id:"na",label:"N/A",value:null}),{...t,type:"csat",options:z,...d?{minLabel:d}:{},...g?{maxLabel:g}:{},...x?{buttonType:x}:{},...f?{hasNotApplicable:f}:{},...V?{reverseScaleOrder:V}:{},...P?{labelPosition:P}:{}}}if(r==="slider"){let{minLabel:d,maxLabel:g}=Z(c.answerDetails,l),z=c1(c);return{...t,type:"slider",...z,...d?{minLabel:d}:{},...g?{maxLabel:g}:{}}}if(r==="rating_scale"){let{minLabel:d,midLabel:g,maxLabel:z}=Z(c.answerDetails,l),L=T(c,"radio",l),u=a.find(f=>f.key.includes("REVERSE"))?.value?.[0]?.toLowerCase()==="true"||c.additional?.reverseScaleOrder===!0||c.additional?.reverseScale===!0;if(u){L=[...L].reverse();let f=d;d=z,z=f}let p;return g&&L.length>0&&(p=(L.length-1)/2),{...t,type:"rating_scale",options:L,...d?{minLabel:d}:{},...g?{midLabel:g}:{},...p!==void 0?{midLabelIndex:p}:{},...z?{maxLabel:z}:{},...u?{reverseScaleOrder:u}:{}}}let{minLabel:e,midLabel:h,maxLabel:s}=Z(c.answerDetails,l),v=T(c,"rating",l),o=a.find(d=>d.key.includes("REVERSE"))?.value?.[0]?.toLowerCase()==="true"||c.additional?.reverseScaleOrder===!0||c.additional?.reverseScale===!0;if(o){v=[...v].reverse();let d=e;e=s,s=d}let n;return h&&(n=v.length===11?o?2.5:7.5:(v.length-1)/2),{...t,type:"rating",options:v,...e?{minLabel:e}:{},...h?{midLabel:h}:{},...n!==void 0?{midLabelIndex:n}:{},...s?{maxLabel:s}:{},...o?{reverseScaleOrder:o}:{}}}function y1(c,t,a){let l=T(c,"radio",a);return{...t,type:"radio",options:l}}function b1(c,t,a,l){let r=a.find(v=>v.key==="CONTENT_TYPE")?.childConfigs?.find(v=>v.key==="MAX_CHARACTER_COUNT"),e=r?.value?.[0]?Number(r.value[0]):void 0,h=c.answerDetails?.[0],s=h?l&&h.translations?.[l]?.answerText||h.answerText:void 0;return{...t,type:"text",...e!==void 0?{maxCharacterCount:e}:{},...s?{placeholder:s}:{}}}function R1(c,t,a){let l=c;if(a&&l.answerDetails&&l.answerDetails.length>=2){let r=t&&l.answerDetails[0].translations?.[t]?.answerText||l.answerDetails[0].answerText||"";if(r)return r}let i=t&&c.translations?.[t]?.questionText||c.questionText||c.answerText||"";return a&&i.includes(":")?i.split(":")[0].trim():i}function V4(c,t,a){let l=c;if(a&&l.answerDetails&&l.answerDetails.length>=2){let e=t&&l.answerDetails[1].translations?.[t]?.answerText||l.answerDetails[1].answerText||"";if(e)return e}let i=t&&c.translations?.[t]?.description||c.description||c.additional?.rightLabel||c.additional?.rightStatement||c.additional?.rightText;if(typeof i=="string"&&i.trim()!=="")return i;let r=t&&c.translations?.[t]?.questionText||c.questionText||c.answerText||"";if(a&&r.includes(":"))return r.split(":").slice(1).join(":").trim()}function O(c,t,a){let l=(c.matrixRowQuestions?.length??0)>0?c.matrixRowQuestions:c.childSurveyQuestions;return l&&l.length>0?l.filter(i=>i.id).map(i=>({id:i.id,text:R1(i,t,a),rightText:V4(i,t,a)})):(c.answerDetails??[]).filter(i=>!i.hidden&&!i.additional?.isHintText).map((i,r)=>({id:`row_${r}`,text:t&&i.translations?.[t]?.answerText||i.answerText||"",rightText:i.additional?.rightLabel||i.additional?.rightStatement||i.additional?.rightText}))}function t1(c,t,a){return c.matrixColumnQuestions&&c.matrixColumnQuestions.length>0?c.matrixColumnQuestions.filter(l=>l.id).map(l=>{let i=a&&l.translations?.[a]?.answerText||l.answerText||R1(l,a),r=l.answerText??i,e=Number(r),h=Number.isFinite(e)&&String(r).trim()!==""?e:r,s={id:l.id,label:i,value:h};return t&&typeof h=="number"&&(s.color=R(h)),s}):(c.answerDetails??[]).filter(l=>!l.hidden&&!l.additional?.isHintText).map((l,i)=>{let r=a&&l.translations?.[a]?.answerText||l.answerText||"",e=Number(r),h=Number.isFinite(e)&&r.trim()!==""?e:r,s={id:`col_${i}`,label:r,value:h};return t&&typeof h=="number"&&(s.color=R(h)),s})}function a1(c,t){let a=Number(c.additional?.sliderMin??0),l=Number(c.additional?.sliderMax??10),i=Number(c.additional?.sliderStep??1);return O(c,t).map(e=>({...e,min:Number.isFinite(a)?a:0,max:Number.isFinite(l)?l:10,step:Number.isFinite(i)&&i>0?i:1}))}function T1(c,t){let a=(c.answerType??"").toUpperCase(),l=a==="RATING_MATRIX"?"RATING_MATRIX":a==="CSAT_MATRIX"?"CSAT_MATRIX":"CFM_MATRIX",i=c.questionConfigs??[],r=i.find(o=>o.key==="MATRIX_TYPE"),e=r?.value?.[0]?.toLowerCase(),h=e==="bipolar",s=O(c,t,h),v=t1(c,l==="RATING_MATRIX",t);return{apiType:a,subType:l,configs:i,matrixTypeConfig:r,matrixType:e,isBipolar:h,rows:s,columns:v}}function k1(c,t){let{rows:a,columns:l}=t,i=l.map(o=>Number(o.value)).filter(o=>!isNaN(o)),r=i.length>0?Math.min(...i):1,e=i.length>0?Math.max(...i):l.length,h=1,s=l.length,v=a.map(o=>({...o,min:r,max:e,step:h}));return{...c,type:"slider_matrix",rows:v,ticks:s}}function P1(c,t,a,l){let{subType:i,configs:r,rows:e}=a,h=[...a.columns],s=r.map(u=>u.value?.[0]||"").join(" ").toUpperCase(),v=(c.dataSubType||"").toUpperCase(),o=`${s} ${v}`,n;o.includes("EMOJI")||o.includes("CSAT")||o.includes("SMILEY")||o.includes("FACE")?n="emoji":o.includes("STAR")?n="star":o.includes("GRAPHIC")||o.includes("SLIDER")?n="graphics":o.includes("DROP")?n="dropdown":o.includes("SELECT")?n="selectbox":o.includes("RADIO")?n="radio":o.includes("NUMBER")&&(n="numbered");let C=r.find(u=>u.key==="NOT_APPLICABLE_OPTIONS")?.value?.[0]==="true"||r.find(u=>u.key==="ENABLE_NON_APPLICABLE")?.value?.[0]==="true",d=r.find(u=>u.key.includes("REVERSE"))?.value?.[0]?.toLowerCase()==="true"||c.additional?.reverseScaleOrder===!0||c.additional?.reverseScale===!0,g=(c.answerDetails??[]).filter(u=>u.additional?.isHintText&&!u.hidden).map(u=>l&&u.translations?.[l]?.answerText||u.answerText||"").filter(Boolean);d&&(h=[...h].reverse(),g=[...g].reverse()),C&&h.push({id:"na",label:"N/A",value:null});let z=JSON.stringify(r).toUpperCase(),L="standard";return z.includes("CAROUSEL")?L="carousel":z.includes("DROPDOWN")&&(L="dropdown"),{...t,type:"matrix",subType:i,rows:e,columns:h,...n?{buttonType:n}:{},...C?{hasNotApplicable:C}:{},...d?{reverseScaleOrder:d}:{},...g.length>0?{labels:g}:{},...L!=="standard"?{matrixFormat:L}:{}}}function Z1(c,t,a,l){let{subType:i,configs:r,matrixType:e,rows:h}=a,s=[...a.columns],v=JSON.stringify(r).toUpperCase(),o="standard";v.includes("CAROUSEL")?o="carousel":v.includes("DROPDOWN")&&(o="dropdown"),console.log("CFM_MATRIX Configs:",JSON.stringify(r,null,2)),console.log("Detected matrixFormat:",o);let C=r.some(x=>x.key.includes("MULTI")||x.value?.[0]?.toUpperCase().includes("MULTI")||x.key.includes("ANSWER")&&x.value?.[0]?.toUpperCase().includes("MULTI")||x.key.includes("SELECT")&&x.value?.[0]?.toUpperCase().includes("MULTI"))?"multiple":"single",d=r.find(x=>x.key==="TRANSPOSE_TABLE")?.value?.[0]?.toLowerCase()==="true",g=r.find(x=>x.key==="REPEAT_SCALE")?.value?.[0]?.toLowerCase()==="true",z=r.find(x=>x.key==="NOT_APPLICABLE_OPTIONS")?.value?.[0]==="true"||r.find(x=>x.key==="ENABLE_NON_APPLICABLE")?.value?.[0]==="true",L=z?!1:d;z&&s.push({id:"na",label:"N/A",value:null});let u=r.find(x=>x.key==="ENABLE_SCALE")?.value?.[0]?.toLowerCase()!=="false",p;return e==="bipolar"&&(p=(c.answerDetails??[]).filter(x=>x.additional?.isHintText&&!x.hidden).map(x=>l&&x.translations?.[l]?.answerText||x.answerText||"").filter(Boolean)),{...t,type:"matrix",subType:i,rows:h,columns:s,...e?{matrixType:e}:{},matrixFormat:o,...C?{answerType:C}:{},...L?{transposeTable:L}:{},...g?{repeatScale:g}:{},...z?{hasNotApplicable:z}:{},...p&&p.length>0?{labels:p}:{},enableScale:u}}function E1(c,t,a){let l=T1(c,a);return l.matrixTypeConfig?.childConfigs?.find(e=>e.key==="MATRIX_FORMAT")?.value?.[0]?.toUpperCase()==="SLIDER"?k1(t,l):l.subType==="CSAT_MATRIX"||l.subType==="RATING_MATRIX"?P1(c,t,l,a):Z1(c,t,l,a)}function D1(c,t,a){let l=c.questionConfigs||[],i=l.find(m=>m.key==="SLIDER_TICKS_AND_VALUES"),r=i?.childConfigs||[],e=r.find(m=>m.key==="TICK_START")?.value?.[0],h=r.find(m=>m.key==="TICK_END")?.value?.[0],s=r.find(m=>m.key==="STEP_SIZE")?.value?.[0],v=i?.value?.[0],o=e!==void 0?Number(e):0,n=h!==void 0?Number(h):10,C=s!==void 0?Number(s):1,d=v!==void 0?Number(v):void 0,g={...c,additional:{...c.additional,sliderMin:o,sliderMax:n,sliderStep:C}},z=a1(g,a),L=(c.answerDetails||[]).filter(m=>m.additional?.isHintText).map(m=>a&&m.translations?.[a]?.answerText||m.answerText||"").filter(Boolean),u=m=>{for(let S of m){let A=l.find(y=>y.key===S)||r.find(y=>y.key===S);if(A&&A.value!==void 0&&A.value!==null&&A.value.length>0)return A.value[0]?.toString().toLowerCase()==="true"}return!1},p=l.find(m=>m.key==="SCALE_TYPE"||m.key==="VIEW_VARIANT")?.value?.[0]?.toUpperCase().includes("GRAPHIC"),x=u(["ENABLE_INPUT_BOX","SHOW_INPUT_BOX","INPUT_BOX","ENABLE_INPUT"]),f=u(["SHOW_VALUE","DISPLAY_VALUES"]),V=u(["NOT_APPLICABLE","NOT_APPLICABLE_OPTIONS"]),P=(c.answerDetails||[]).filter(m=>!m.additional?.isHintText&&!m.hidden).map(m=>m.translations?.[a||""]?.answerText||m.answerText||""),B;if(d!==void 0&&d>1){B=[];let m=(n-o)/(d-1);for(let S=0;S<d;S++){let A=o+S*m,y=Number(A.toFixed(2)),z4=P[S]||y.toString(),d4=`hsl(${Math.round(S/(d-1)*120)}, 90%, 40%)`;B.push({value:y,label:z4,color:d4})}}return{...t,type:"slider_matrix",rows:z,...L.length>0?{labels:L}:{},...d!==void 0&&Number.isFinite(d)?{ticks:d}:{},...B?{tickValues:B}:{},enableInputBox:x,displayValues:f,enableNotApplicable:V,...p?{sliderType:"graphics"}:{}}}function l1(c){let t=c.additional??{},a=t.mediaUrl??t.previewUrl,l=t.mediaMimeType,i=t.title,r=c.questionContainerAssets;if(Array.isArray(r)&&r.length>0){let e=r[0];(e.source||e.previewImageUrl)&&(a=e.source||e.previewImageUrl),e.type&&(e.type==="PHOTO"||e.type==="IMAGE"?l="image/*":e.type==="VIDEO"?l="video/*":l=e.type)}return{mediaUrl:a,mediaMimeType:l,mediaTitle:i}}function I1(c,t){let{mediaUrl:a,mediaMimeType:l,mediaTitle:i}=l1(c),r=c.questionConfigs||[],e=r.find(n=>n.key==="TEXT_AND_MEDIA_ALIGNMENT"),h=r.find(n=>n.key==="TEXT_AND_MEDIA_SIZE"),s=e?.value?.[0],v=h?.value?.[0]?Number(h.value[0]):void 0,o=t.text;if(Array.isArray(c.answerDetails)){let n=c.answerDetails.find(C=>C.additional?.textAndMediaFieldType==="HEADER");n&&n.answerText&&(o=n.answerText)}return{...t,text:o,type:"text_and_media",...a?{mediaUrl:a}:{},...l?{mediaMimeType:l}:{},...i?{mediaTitle:i}:{},...s?{mediaAlignment:s}:{},...v?{mediaSize:v}:{}}}function U1(c,t,a){let l=c.questionConfigs||[],i=c.answerDetails?.find(z=>z.additional?.fieldType==="UPLOAD_MESSAGE"),r=a&&i?.translations?.[a]?.answerText||i?.answerText||"",h=l.find(z=>z.key==="SUPPORTED_FILE_FORMAT")?.value?.map(z=>z.toUpperCase().replace(/^\./,""))||[],s=l.find(z=>z.key==="MAX_FILE_COUNT"),v=s?.value?.[0]?Number(s.value[0]):void 0,o=l.find(z=>z.key==="FILE_SIZE_LIMIT"),n=o?.childConfigs?.find(z=>z.key==="SIZE_LIMIT_ID")?.value?.[0],C=o?.childConfigs?.find(z=>z.key==="SIZE_FORMAT_ID")?.value?.[0],d=n?Number(n):void 0,g=C==="PER_FILE"||C==="IN_TOTAL"?C:void 0;return{...t,type:"file_upload",...r?{uploadMessage:r}:{},...h.length>0?{supportedFileFormats:h}:{},...v!==void 0?{maxFileCount:v}:{},...d!==void 0?{fileSizeLimit:d}:{},...g?{fileSizeLimitType:g}:{}}}function S4(c,t,a,l){let i=t.find(u=>u.key==="REQUIRED")?.value?.[0]==="true",r=t.find(u=>u.key==="REQUIRED_ERROR_MESSAGE"),e=r?.value?.[0];a&&r?.translations?.[a]?.value?.[0]&&(e=r.translations[a].value[0]);let h=a&&c.translations?.[a]?.questionRichText||a&&c.translations?.[a]?.questionText||c.questionRichText||c.questionText||"";l&&(h=h.replace(/\{\{(\w+)\}\}/g,(u,p)=>l[p]!==void 0?l[p]:u));let s=a&&c.translations?.[a]?.descriptionRichText||a&&c.translations?.[a]?.description||c.descriptionRichText||c.description||(typeof c.additional?.descriptionRichText=="string"?c.additional.descriptionRichText:"")||(typeof c.additional?.description=="string"?c.additional.description:"")||"";if(!s){let u=t.find(p=>p.key.includes("DESCRIPTION"));s=u?.value?.[0]||"",a&&u?.translations?.[a]?.valueRichText?.[0]?s=u.translations[a].valueRichText[0]:a&&u?.translations?.[a]?.value?.[0]&&(s=u.translations[a].value[0])}s&&l&&(s=s.replace(/\{\{(\w+)\}\}/g,(u,p)=>l[p]!==void 0?l[p]:u));let o=c.questionContainerAssets?.[0],n=o?.source||o?.mediaUrl||o?.previewImageUrl,C=o?.mediaMimeType,g=t.find(u=>u.key==="QUESTION_CONTAINER_MEDIA_ALIGNMENT")?.value?.[0],z=t.find(u=>u.key==="TEXT_AND_MEDIA_SIZE"),L=z?.value?.[0]?Number(z.value[0]):void 0;return{id:c.id??"",text:h,...s?{description:s}:{},required:i,...e?{requiredErrorMessage:e}:{},...c.questionNumber!==void 0?{questionNumber:c.questionNumber}:{},...n?{containerMediaUrl:n}:{},...C?{containerMediaMimeType:C}:{},...g?{containerMediaAlignment:g}:{},...L!==void 0?{containerMediaSize:L}:{}}}function q1(c,t,a){let l=c.questionConfigs??[],i=S4(c,l,t,a);switch(Y(c.answerType)){case"rating":return A1(c,i,l,t);case"text":return b1(c,i,l,t);case"matrix":case"rating_matrix":return E1(c,i,t);case"slider_matrix":return D1(c,i,t);case"text_and_media":return I1(c,i);case"file_upload":return U1(c,i,t);default:return y1(c,i,t)}}function N1(c,t,a){let l=c.cfmSurveyDTO;return!l||!Array.isArray(l.surveyPages)?[]:l.surveyPages.map((i,r)=>{let e=(i.questionHolders??[]).map(h=>h.question).filter(h=>!!h).map(h=>q1(h,t,a));return{id:`page_${r}`,title:`Page ${r+1}`,questions:e}})}function O1(c){return c.instanceId?.trim()?{instanceId:c.instanceId.trim(),language:c.surveyLanguage??c.cfmSurveyDTO?.baseLanguage??"en"}:null}function A4(c,t){return t??c.surveyLanguage??c.cfmSurveyDTO?.baseLanguage??"en"}function G1(c,t,a){let l=A4(c,t),i=S1(c),r=N1(c,l,a);return{id:c.cfmSurveyDTO?.id??"",language:l,languages:i,pages:r}}function Q1(c){M.info("Starting survey layout API fetch...",{url:c})}function r1(c,t,a){M.perf({apiName:"GET Survey Layout",durationMs:c,status:t,url:a,success:!1})}function W1(c,t,a,l){M.perf({apiName:"GET Survey Layout",durationMs:c,status:t,url:a,payloadSize:l,success:!0})}function _1(c){M.success("Raw survey layout fetched successfully",c)}function j1(c){M.error("Failed to fetch raw survey layout",c)}function J1(){M.warn("Cannot map survey: apiResponse is null or undefined")}function X1(c){M.success("Mapped survey layout successfully",c)}function K1(c){M.error("Failed to map survey layout",c)}function F(c){if(c.eventName==="survey_session_summary"){let{completed:t,totalDurationMs:a,maxVisitedPageIndex:l,totalQuestionsCount:i,answeredQuestionsCount:r,skippedQuestionsCount:e,skippedQuestionIds:h,validationErrorsCount:s,backtrackCount:v}=c.metadata;M.analytics(`Event: ${c.eventName} - SESSION SUMMARY TABLE:`);let o=[{Metric:"Completion Status",Value:t?"COMPLETED \u2705":"ABANDONED \u274C"},{Metric:"Total Time Spent",Value:`${(a/1e3).toFixed(2)} seconds`},{Metric:"Max Page Index Reached",Value:`${l}`},{Metric:"Total Questions",Value:i},{Metric:"Answered Questions",Value:r},{Metric:"Skipped Optional Questions",Value:e},{Metric:"Skipped Question IDs",Value:h.join(", ")||"None"},{Metric:"Validation Errors Triggered",Value:s},{Metric:"Backtrack Count",Value:v},{Metric:"Validation Error History",Value:c.metadata.validationHistory?.map(n=>`[Page ${n.pageIndex}] Attempt ${n.attemptNumber}: ${Object.keys(n.errors).join(", ")}`).join(" | ")||"NO Validation Erros Occurred"}];console.table(o)}else M.analytics(`Event: ${c.eventName}`,c.metadata)}function Y1(c,t,a,l){F({eventName:"survey_fetch_latency",metadata:{durationMs:c,status:t,success:!0,url:a,payloadSize:l}})}function i1(c,t,a){F({eventName:"api_error",metadata:{apiName:"GET Survey Layout",status:c,url:t,errorMessage:a}})}async function y4(c){let t=performance.now();Q1(c);try{let a=await fetch(c,{method:"GET",headers:{Accept:"application/json"},cache:"force-cache"}),l=performance.now()-t;if(!a.ok)throw r1(l,a.status,c),i1(a.status,c,`Survey fetch failed (${a.status})`),new Error(`Survey fetch failed (${a.status})`);let i=await a.json(),r=JSON.stringify(i),h=`${(new Blob([r]).size/1024).toFixed(2)} KB`;return W1(l,a.status,c,h),Y1(l,a.status,c,h),_1(i),i}catch(a){let l=performance.now()-t;throw r1(l,"FAILED",c),i1("FAILED",c,a?.message||String(a)),j1(a),a}}function t2(c){let t=V1(c?.instanceId),a=c?.language,l=c?.placeholders,{data:i,error:r,isLoading:e,isSuccess:h}=(0,c2.useQuery)({queryKey:["survey",t],queryFn:()=>y4(t),enabled:!!t},N),s=(0,$1.useMemo)(()=>{if(!h)return{survey:null,session:null};if(!i)return J1(),{survey:null,session:null};try{let v=G1(i,a,l),o=O1(i),n=o?{...o,language:v.language}:null;return X1(v),{survey:v,session:n}}catch(v){return K1(v),{survey:null,session:null}}},[i,h,a]);return{survey:s.survey,session:s.session,fetching:e,fetchError:r}}var D=require("react");var u2=require("react"),p2=require("@tanstack/react-query");function a2(c,t){M.info("Starting survey response HTTP POST...",{url:c,requestBody:t})}function l2(c,t){M.warn(c,t)}function r2(c,t,a,l,i){M.perf({apiName:"POST Submit Response",durationMs:c,status:t,url:a,requestSize:l,responseSize:i,success:!0})}function e1(c,t,a,l){M.perf({apiName:"POST Submit Response",durationMs:c,status:t,url:a,requestSize:l,success:!1})}function i2(c){M.success("Survey response submitted successfully",{responseId:c})}function e2(c,t){M.error(c,t)}function h2(c){M.debug("Resolved raw inputs to submit schema:",c)}function s2(c){M.debug("Constructed JSON request body:",c)}function o2(c){M.error("Failed to execute submit callback",c)}function n2(c,t,a,l,i){F({eventName:"survey_submit_latency",metadata:{durationMs:c,status:t,success:!0,url:a,requestSize:l,responseSize:i}})}function h1(c,t,a){F({eventName:"api_error",metadata:{apiName:"POST Submit Response",status:c,url:t,errorMessage:a}})}var v2="https://custom-p0.feedbook.me/api/feedback/survey/responseV2";function z2(c,t="en"){let a=new URLSearchParams({instanceId:c,surveySubmitted:"true",surveyLanguage:t});return`${v2}?${a.toString()}`}function d2(c,t){let a={},l={},i={};for(let r of t)r.type==="file_upload"&&(i[r.id]=[]);for(let r of t){let e=c[r.id];if(e!=null)switch(r.type){case"text_and_media":break;case"file_upload":{Array.isArray(e)&&(i[r.id]=e);break}case"matrix":case"rating_matrix":case"slider_matrix":{if(typeof e=="object"&&!Array.isArray(e)){let h=e;for(let[s,v]of Object.entries(h))if(v!=null){let o=`${r.id}_${s}`;a[o]=[String(v)]}}break}default:(typeof e=="string"||typeof e=="number")&&(a[r.id]=[String(e)]);break}}return{questionToAnswers:a,quesIdVsAttachmentDetails:i,optionLevelAnswers:l,conjointTasks:[]}}function b4(c){return typeof c=="object"&&c!==null&&"instanceId"in c&&"answers"in c}function g2(c,t,a){if(b4(c))return{...c,surveyLanguage:c.surveyLanguage??t?.language??"en",questions:c.questions??a?.pages.flatMap(l=>l.questions)??[]};if(!t?.instanceId)throw new Error("Survey session not ready. Fetch survey before submitting.");return{answers:c,instanceId:t.instanceId,surveyLanguage:t.language??"en",questions:a?.pages.flatMap(l=>l.questions)??[]}}async function R4({url:c,requestBody:t}){let a=performance.now(),i=`${(new Blob([JSON.stringify(t)]).size/1024).toFixed(2)} KB`;a2(c,t);try{let r=await fetch(c,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),e=await r.json().catch(n=>(l2("Failed to parse JSON response during submission",n),null)),h=performance.now()-a,v=`${((e?new Blob([JSON.stringify(e)]).size:0)/1024).toFixed(2)} KB`;if(!r.ok)throw e1(h,r.status,c,i),h1(r.status,c,`Submit failed (${r.status}): ${JSON.stringify(e)}`),new Error(`Submit failed (${r.status}): ${JSON.stringify(e)}`);let o=e?.responseId??"";return r2(h,r.status,c,i,v),n2(h,r.status,c,i,v),i2(o),{success:!0,responseId:o}}catch(r){let e=performance.now()-a;throw e1(e,"FAILED",c,i),h1("FAILED",c,r?.message||String(r)),e2("Failed to submit survey response",r),r}}function M2(c,t){let a=(0,p2.useMutation)({mutationFn:({url:i,requestBody:r})=>R4({url:i,requestBody:r})},N);return{submit:(0,u2.useCallback)(async i=>{try{let r=g2(i,c,t);h2(r);let e=r.surveyLanguage??"en",h=d2(r.answers,r.questions??[]);s2(h);let s=z2(r.instanceId,e);return await a.mutateAsync({url:s,requestBody:h})}catch(r){throw o2(r),r}},[c,t,a]),data:a.data??null,loading:a.isPending,error:a.error}}var E=require("react");function x2(c){return c.type==="text_and_media"}function T4(c,t){return c.rows.every(a=>{let l=t[a.id];return l!==void 0&&l!==""})}function s1(c,t){if(x2(c))return!0;let a=t[c.id];switch(c.type){case"matrix":case"rating_matrix":case"slider_matrix":return typeof a!="object"||Array.isArray(a)?!1:T4(c,a);default:return a!==void 0&&a!==""}}function o1(c,t,a){let l={},i=a?.startsWith("de")?"Beantworten Sie bitte diese Frage bevor Sie fortfahren.":"Please answer this question before you proceed.";return c.forEach(r=>{x2(r)||r.required&&!s1(r,t)&&(l[r.id]=r.requiredErrorMessage??i)}),l}function L2(c,t,a){let l={},i="",r=-1;for(let e=0;e<c.length;e++){let h=o1(c[e].questions,t,a);Object.keys(h).length>0&&(l={...l,...h},r===-1&&(r=e,i=Object.keys(h)[0]))}return r!==-1?{errors:l,errorPageIndex:r,firstErrorId:i}:null}function m2(c){return c.type==="text_and_media"}function C2(c){return!c||!Array.isArray(c.pages)?0:c.pages.reduce((t,a)=>{let l=(a.questions??[]).filter(i=>!m2(i));return t+l.length},0)}function f2(c,t,a=0){if(!c||!t||!Array.isArray(c.pages))return 0;let l=0;return c.pages.forEach((i,r)=>{let e=(i.questions??[]).filter(h=>!m2(h));r<a?l+=e.length:e.forEach(h=>{s1(h,t)&&l++})}),l}function w2(c,t){return t<=0?0:Math.min(100,Math.max(0,Math.round(c/t*100)))}function F2({survey:c,values:t,currentPageIndex:a=0}){let[l,i]=(0,E.useState)(0);return(0,E.useEffect)(()=>{a>l&&i(a)},[a,l]),(0,E.useMemo)(()=>{let r=C2(c),e=f2(c,t,l),h=w2(e,r),s=r>0&&e===r;return{totalQuestionsCount:r,answeredQuestionsCount:e,progressPercentage:h,isComplete:s}},[c,t,l])}var B2=require("react");function n1(c){let{currentPageIndex:t,paginationRefs:a}=c;(0,B2.useEffect)(()=>{a.current&&(a.current.pageStartTime=performance.now())},[t,a])}var H2=require("react");function v1(c){let{currentPageIndex:t,paginationRefs:a}=c;(0,H2.useEffect)(()=>{a.current&&t>a.current.maxVisitedPageIndex&&(a.current.maxVisitedPageIndex=t)},[t,a])}var R2=require("react");function V2(c,t){M.info(`Answer changed for question: ${c}`,{value:t})}function k(c,t){M.warn(c,t)}function S2(){M.info("Initiating survey submission...")}function A2(c){M.info(`Navigating back from page index: ${c}`)}function y2(c){M.info(`Navigating next from page index: ${c}`)}function b2(c){M.error("Error encountered during pagination submit trigger",c)}function U(c){return typeof document>"u"?null:document.getElementById(c)||null}function k4(c){return c.closest("main")||c.closest("form")||c.parentElement||c}function G(c,t){try{let l=c[t]?.questions?.[0];l?setTimeout(()=>{try{let i=U(l.id);i?k4(i).scrollIntoView({behavior:"smooth",block:"start"}):window.scrollTo({top:0,behavior:"smooth"})}catch(i){k("Failed to scroll page first question into view",i)}},50):window.scrollTo({top:0,behavior:"smooth"})}catch(a){k("Failed to trigger scroll navigation",a)}}function z1(c){let{currentPageIndex:t,setCurrentPageIndex:a,trackPageTime:l,pages:i,values:r,paginationRefs:e}=c;return(0,R2.useCallback)(()=>{if(t>0){A2(t),l(t);let h=e.current;if(h){h.backtrackCount+=1;let v=t-1,o=i[v]?.questions??[],n={};o.forEach(C=>{n[C.id]=r[C.id]}),h.backtrackSnapshots[v]={fromPageIndex:t,snapshot:n}}let s=t-1;a(s),G(i,s)}},[t,a,l,i,r,e])}var T2=require("react");function d1(c){let{setValues:t,setValidationErrors:a}=c;return(0,T2.useCallback)((l,i)=>{V2(l,i),t(r=>({...r,[l]:i})),a(r=>({...r,[l]:""}))},[t,a])}var D2=require("react");function k2(){M.success("Survey validation passed on submit")}function P2(c){M.warn("Full survey validation failed on submit",{validation:c})}function Q(c){M.error("Failed to run survey validation on submit",c)}function Z2(c){M.warn("Page validation failed",{errors:c})}function E2(c,t){F({eventName:"page_time_spent",metadata:{pageIndex:c,durationMs:t}})}function W(c,t,a){F({eventName:"validation_error",metadata:{pageIndex:c,errors:t,attemptNumber:a}})}function g1(c,t){let{survey:a,pages:l,values:i,currentPageIndex:r,setCurrentPageIndex:e,setValidationErrors:h,trackPageTime:s,trackOptionalSkips:v,checkBacktrackChanges:o,paginationRefs:n}=c,C=l[r],d=C?.questions??[];return(0,D2.useCallback)(()=>{if(!a||!C)return;let g={};try{g=o1(d,i,a.language)}catch(L){Q(L)}let z=n.current;if(z){if(Object.keys(g).length>0){Z2(g);let L=(z.validationAttempt[r]||0)+1;z.validationAttempt[r]=L,z.validationErrorsCount+=1,z.validationHistory.push({pageIndex:r,errors:g,attemptNumber:L}),W(r,g,L),h(g);let u=Object.keys(g)[0];setTimeout(()=>{try{let p=U(u);p&&p.scrollIntoView({behavior:"smooth",block:"center"})}catch(p){k("Failed to scroll validation error element into view",p)}},50);return}h({}),delete z.validationAttempt[r],s(r),v(r),o(r),r<l.length-1?(y2(r),e(L=>L+1),G(l,r+1)):t()}},[a,C,d,i,r,e,h,s,v,o,l,t,n])}var N2=require("react");function I2(c,t,a,l,i,r,e,h,s,v){F({eventName:"survey_session_summary",metadata:{maxVisitedPageIndex:t,totalDurationMs:a,completed:c,totalQuestionsCount:l,answeredQuestionsCount:i,skippedQuestionsCount:r,skippedQuestionIds:e,validationErrorsCount:h,backtrackCount:s,validationHistory:v}})}function U2(c,t){F({eventName:"optional_question_skipped",metadata:{questionId:c,pageIndex:t}})}function q2(c,t,a){F({eventName:"backtrack_revisited",metadata:{fromPageIndex:c,toPageIndex:t,changedAnswers:a}})}function u1(c){let{survey:t,pages:a,values:l,submit:i,currentPageIndex:r,setCurrentPageIndex:e,setValidationErrors:h,trackPageTime:s,trackOptionalSkips:v,checkBacktrackChanges:o,totalQuestionsCount:n,paginationRefs:C}=c;return(0,N2.useCallback)(async()=>{if(!t)return;S2();let d=null;try{d=L2(a,l,t.language),d||k2()}catch(z){Q(z)}let g=C.current;if(g){if(d){P2(d);let z=(g.validationAttempt[d.errorPageIndex]||0)+1;g.validationAttempt[d.errorPageIndex]=z,g.validationErrorsCount+=1,g.validationHistory.push({pageIndex:d.errorPageIndex,errors:d.errors,attemptNumber:z}),W(d.errorPageIndex,d.errors,z),h(d.errors),e(d.errorPageIndex),setTimeout(()=>{try{let L=U(d.firstErrorId);L&&L.scrollIntoView({behavior:"smooth",block:"center"})}catch(L){k("Failed to scroll validation error element into view",L)}},100);return}h({}),delete g.validationAttempt[r],s(r),v(r),o(r);try{let z=await i(l);if(z&&z.success&&!g.hasLoggedSummary){let L=performance.now()-g.sessionStartTime,u=[];a.forEach(x=>{x.questions.forEach(f=>{if(!f.required){let V=l[f.id];(V===void 0||V==="")&&u.push(f.id)}})});let p=u.length;I2(!0,g.maxVisitedPageIndex,L,n,n-p,p,u,g.validationErrorsCount,g.backtrackCount,g.validationHistory),g.hasLoggedSummary=!0}}catch(z){b2(z)}}},[t,a,l,i,r,e,h,s,v,o,n,C])}var O2=require("react");function p1(c,t,a){return(0,O2.useCallback)(l=>{if(!a.current)return;let i=a.current.backtrackSnapshots[l];if(i){let r=c[l]?.questions??[],e={},h=!1;r.forEach(s=>{let v=i.snapshot[s.id],o=t[s.id];v!==o&&(e[s.id]={oldValue:v??null,newValue:o??null},h=!0)}),h&&q2(i.fromPageIndex,l,e),delete a.current.backtrackSnapshots[l]}},[c,t,a])}var G2=require("react");function M1(c,t){return(0,G2.useCallback)(a=>{(c[a]?.questions??[]).forEach(i=>{let r=!i.required,e=t[i.id];r&&(e===void 0||e==="")&&U2(i.id,a)})},[c,t])}var Q2=require("react");function x1(c){return(0,Q2.useCallback)(t=>{if(!c.current)return;let a=performance.now()-c.current.pageStartTime;E2(t,a)},[c])}function W2({survey:c,session:t}){let[a,l]=(0,D.useState)({}),[i,r]=(0,D.useState)({}),[e,h]=(0,D.useState)(0),s=c?.pages??[],o=s[e]?.questions??[],{submit:n,data:C,loading:d,error:g}=M2(t,c),{progressPercentage:z,totalQuestionsCount:L,answeredQuestionsCount:u,isComplete:p}=F2({survey:c,values:a,currentPageIndex:e}),x=(0,D.useRef)({pageStartTime:performance.now(),sessionStartTime:performance.now(),maxVisitedPageIndex:0,validationAttempt:{},backtrackSnapshots:{},hasLoggedSummary:!1,validationErrorsCount:0,backtrackCount:0,validationHistory:[]}),f=x1(x),V=M1(s,a),P=p1(s,a,x),B={survey:c,session:t,pages:s,currentPageIndex:e,setCurrentPageIndex:h,values:a,setValues:l,validationErrors:i,setValidationErrors:r,paginationRefs:x,trackPageTime:f,trackOptionalSkips:V,checkBacktrackChanges:P,submit:n,totalQuestionsCount:L};v1(B),n1(B);let m=d1(B),S=z1(B),A=u1(B),y=g1(B,A);return{currentPageIndex:e,values:a,validationErrors:i,currentQuestions:o,pages:s,onChange:m,onBack:S,onNext:y,onSubmit:A,progressPercentage:z,totalQuestionsCount:L,answeredQuestionsCount:u,isComplete:p,submitting:d,submitError:g,submitData:C}}function j2({options:c}={}){M.setEnabled(c?.debug??!1);let{survey:t,session:a,fetching:l,fetchError:i}=t2({instanceId:c?.instanceId,language:c?.language,placeholders:c?.placeholders}),{currentPageIndex:r,values:e,validationErrors:h,currentQuestions:s,onBack:v,onNext:o,onSubmit:n,onChange:C,progressPercentage:d,submitting:g,submitError:z,submitData:L}=W2({survey:t,session:a}),u=(0,_2.useCallback)(p=>{p.type==="NEXT"&&t&&r===t.pages.length-1&&(p={type:"SUBMIT"}),M.info(`Action dispatched: ${p.type}`,p);try{switch(p.type){case"NEXT":o();break;case"PREVIOUS":v();break;case"SUBMIT":n();break;case"CHANGE":C(p.payload.questionId,p.payload.value);break;default:break}}catch(x){M.error(`Error executing action: ${p.type}`,x)}},[o,v,n,C,t,r]);return{surveyQueryResults:{data:t,error:i,isLoading:l},submitSurveyResults:{data:L,error:z,isLoading:g},state:{currentPageIndex:r,currentQuestions:s,values:e,validationErrors:h,progressPercentage:d},onAction:u}}var J=X(require("react"));var I=X(require("react"),1);var L1=X(require("react"),1),m1={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},C1=L1.default.createContext&&L1.default.createContext(m1);var P4=["attr","size","title"];function Z4(c,t){if(c==null)return{};var a,l,i=E4(c,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(c);for(l=0;l<r.length;l++)a=r[l],t.indexOf(a)===-1&&{}.propertyIsEnumerable.call(c,a)&&(i[a]=c[a])}return i}function E4(c,t){if(c==null)return{};var a={};for(var l in c)if({}.hasOwnProperty.call(c,l)){if(t.indexOf(l)!==-1)continue;a[l]=c[l]}return a}function _(){return _=Object.assign?Object.assign.bind():function(c){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var l in a)({}).hasOwnProperty.call(a,l)&&(c[l]=a[l])}return c},_.apply(null,arguments)}function J2(c,t){var a=Object.keys(c);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(c);t&&(l=l.filter(function(i){return Object.getOwnPropertyDescriptor(c,i).enumerable})),a.push.apply(a,l)}return a}function j(c){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?J2(Object(a),!0).forEach(function(l){D4(c,l,a[l])}):Object.getOwnPropertyDescriptors?Object.defineProperties(c,Object.getOwnPropertyDescriptors(a)):J2(Object(a)).forEach(function(l){Object.defineProperty(c,l,Object.getOwnPropertyDescriptor(a,l))})}return c}function D4(c,t,a){return(t=I4(t))in c?Object.defineProperty(c,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):c[t]=a,c}function I4(c){var t=U4(c,"string");return typeof t=="symbol"?t:t+""}function U4(c,t){if(typeof c!="object"||!c)return c;var a=c[Symbol.toPrimitive];if(a!==void 0){var l=a.call(c,t||"default");if(typeof l!="object")return l;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(c)}function X2(c){return c&&c.map((t,a)=>I.default.createElement(t.tag,j({key:a},t.attr),X2(t.child)))}function w(c){return t=>I.default.createElement(q4,_({attr:j({},c.attr)},t),X2(c.child))}function q4(c){var t=a=>{var{attr:l,size:i,title:r}=c,e=Z4(c,P4),h=i||a.size||"1em",s;return a.className&&(s=a.className),c.className&&(s=(s?s+" ":"")+c.className),I.default.createElement("svg",_({stroke:"currentColor",fill:"currentColor",strokeWidth:"0"},a.attr,l,e,{className:s,style:j(j({color:c.color||a.color},a.style),c.style),height:h,width:h,xmlns:"http://www.w3.org/2000/svg"}),r&&I.default.createElement("title",null,r),c.children)};return C1!==void 0?I.default.createElement(C1.Consumer,null,a=>t(a)):t(m1)}function K2(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM164.1 325.5C182 346.2 212.6 368 256 368s74-21.8 91.9-42.5c5.8-6.7 15.9-7.4 22.6-1.6s7.4 15.9 1.6 22.6C349.8 372.1 311.1 400 256 400s-93.8-27.9-116.1-53.5c-5.8-6.7-5.1-16.8 1.6-22.6s16.8-5.1 22.6 1.6zM144.4 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z"},child:[]}]})(c)}function Y2(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM164.1 325.5C182 346.2 212.6 368 256 368s74-21.8 91.9-42.5c5.8-6.7 15.9-7.4 22.6-1.6s7.4 15.9 1.6 22.6C349.8 372.1 311.1 400 256 400s-93.8-27.9-116.1-53.5c-5.8-6.7-5.1-16.8 1.6-22.6s16.8-5.1 22.6 1.6zm53.5-96.7s0 0 0 0c0 0 0 0 0 0l-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2c0 0 0 0 0 0c0 0 0 0 0 0s0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8c0 0 0 0 0 0s0 0 0 0zm160 0c0 0 0 0 0 0l-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2c0 0 0 0 0 0c0 0 0 0 0 0s0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8c0 0 0 0 0 0s0 0 0 0s0 0 0 0z"},child:[]}]})(c)}function $2(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M0 256a256 256 0 1 0 512 0A256 256 0 1 0 0 256zm240 80c0-8.8 7.2-16 16-16c45 0 85.6 20.5 115.7 53.1c6 6.5 5.6 16.6-.9 22.6s-16.6 5.6-22.6-.9c-25-27.1-57.4-42.9-92.3-42.9c-8.8 0-16-7.2-16-16zm-80 80c-26.5 0-48-21-48-47c0-20 28.6-60.4 41.6-77.7c3.2-4.4 9.6-4.4 12.8 0C179.6 308.6 208 349 208 369c0 26-21.5 47-48 47zM367.6 208a32 32 0 1 1 -64 0 32 32 0 1 1 64 0zm-192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z"},child:[]}]})(c)}function f1(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM176.4 176a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm128 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM160 336l192 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-192 0c-8.8 0-16-7.2-16-16s7.2-16 16-16z"},child:[]}]})(c)}function c4(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM388.1 312.8c12.3-3.8 24.3 6.9 19.3 18.7C382.4 390.6 324.2 432 256.3 432s-126.2-41.4-151.1-100.5c-5-11.8 7-22.5 19.3-18.7c39.7 12.2 84.5 19 131.8 19s92.1-6.8 131.8-19zM144.4 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z"},child:[]}]})(c)}function t4(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM388.1 312.8c12.3-3.8 24.3 6.9 19.3 18.7C382.4 390.6 324.2 432 256.3 432s-126.2-41.4-151.1-100.5c-5-11.8 7-22.5 19.3-18.7c39.7 12.2 84.5 19 131.8 19s92.1-6.8 131.8-19zM208 192c0 35.3-14.3 64-32 64s-32-28.7-32-64s14.3-64 32-64s32 28.7 32 64zm128 64c-17.7 0-32-28.7-32-64s14.3-64 32-64s32 28.7 32 64s-14.3 64-32 64z"},child:[]}]})(c)}function a4(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm407.4 75.5c5-11.8-7-22.5-19.3-18.7c-39.7 12.2-84.5 19-131.8 19s-92.1-6.8-131.8-19c-12.3-3.8-24.3 6.9-19.3 18.7c25 59.1 83.2 100.5 151.1 100.5s126.2-41.4 151.1-100.5zM160 120c-3.1 0-5.9 1.8-7.2 4.6l-16.6 34.7-38.1 5c-3.1 .4-5.6 2.5-6.6 5.5s-.1 6.2 2.1 8.3l27.9 26.5-7 37.8c-.6 3 .7 6.1 3.2 7.9s5.8 2 8.5 .6L160 232.5l33.8 18.3c2.7 1.5 6 1.3 8.5-.6s3.7-4.9 3.2-7.9l-7-37.8L226.4 178c2.2-2.1 3.1-5.3 2.1-8.3s-3.5-5.1-6.6-5.5l-38.1-5-16.6-34.7c-1.3-2.8-4.1-4.6-7.2-4.6zm192 0c-3.1 0-5.9 1.8-7.2 4.6l-16.6 34.7-38.1 5c-3.1 .4-5.6 2.5-6.6 5.5s-.1 6.2 2.1 8.3l27.9 26.5-7 37.8c-.6 3 .7 6.1 3.2 7.9s5.8 2 8.5 .6L352 232.5l33.8 18.3c2.7 1.5 6 1.3 8.5-.6s3.7-4.9 3.2-7.9l-7-37.8L418.4 178c2.2-2.1 3.1-5.3 2.1-8.3s-3.5-5.1-6.6-5.5l-38.1-5-16.6-34.7c-1.3-2.8-4.1-4.6-7.2-4.6z"},child:[]}]})(c)}function l4(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM159.3 388.7c-2.6 8.4-11.6 13.2-20 10.5s-13.2-11.6-10.5-20C145.2 326.1 196.3 288 256 288s110.8 38.1 127.3 91.3c2.6 8.4-2.1 17.4-10.5 20s-17.4-2.1-20-10.5C340.5 349.4 302.1 320 256 320s-84.5 29.4-96.7 68.7zM144.4 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z"},child:[]}]})(c)}function r4(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM176.4 176a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm128 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm-122 174.5c-12.4 5.2-26.5-4.1-21.1-16.4c16-36.6 52.4-62.1 94.8-62.1s78.8 25.6 94.8 62.1c5.4 12.3-8.7 21.6-21.1 16.4c-22.4-9.5-47.4-14.8-73.7-14.8s-51.3 5.3-73.7 14.8z"},child:[]}]})(c)}function i4(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM338.7 395.9c6.6-5.9 7.1-16 1.2-22.6C323.8 355.4 295.7 336 256 336s-67.8 19.4-83.9 37.3c-5.9 6.6-5.4 16.7 1.2 22.6s16.7 5.4 22.6-1.2c11.7-13 31.6-26.7 60.1-26.7s48.4 13.7 60.1 26.7c5.9 6.6 16 7.1 22.6 1.2zM176.4 272c17.7 0 32-14.3 32-32c0-1.5-.1-3-.3-4.4l10.9 3.6c8.4 2.8 17.4-1.7 20.2-10.1s-1.7-17.4-10.1-20.2l-96-32c-8.4-2.8-17.4 1.7-20.2 10.1s1.7 17.4 10.1 20.2l30.7 10.2c-5.8 5.8-9.3 13.8-9.3 22.6c0 17.7 14.3 32 32 32zm192-32c0-8.9-3.6-17-9.5-22.8l30.2-10.1c8.4-2.8 12.9-11.9 10.1-20.2s-11.9-12.9-20.2-10.1l-96 32c-8.4 2.8-12.9 11.9-10.1 20.2s11.9 12.9 20.2 10.1l11.7-3.9c-.2 1.5-.3 3.1-.3 4.7c0 17.7 14.3 32 32 32s32-14.3 32-32z"},child:[]}]})(c)}function e4(c){return w({tag:"svg",attr:{viewBox:"0 0 576 512"},child:[{tag:"path",attr:{d:"M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z"},child:[]}]})(c)}function h4(c){return w({tag:"svg",attr:{viewBox:"0 0 576 512"},child:[{tag:"path",attr:{d:"M528.1 171.5L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6zM388.6 312.3l23.7 138.4L288 385.4l-124.3 65.3 23.7-138.4-100.6-98 139-20.2 62.2-126 62.2 126 139 20.2-100.6 98z"},child:[]}]})(c)}var N4=["#dc2626","#e04832","#ea580c","#f59e0b","#eab308","#a3a323","#84cc16","#65a30d","#22c55e","#16a34a","#059669"],O4=[i4,$2,l4,r4,f1,f1,K2,Y2,c4,t4,a4],H={};for(let c=0;c<11;c++){let t=O4[c],a=N4[c];H[c+1]=J.default.createElement(t,{className:"transition-transform",style:{color:a,fontSize:"28px"}})}var s4={3:[3,6,8],4:[3,4,7,9],5:[3,4,6,7,9],6:[3,4,6,7,9,11]};function o4(c,t){if(t<=1)return H[6];if(s4[t]){let i=s4[t][c];if(i)return H[i]}let a=c/(t-1),l=Math.min(11,Math.max(1,Math.round(a*10)+1));return H[l]}var n4={1:H[1],2:H[4],3:H[6],4:H[8],5:H[11]},v4={filled:J.default.createElement(e4,{style:{color:"#e20074",fontSize:"28px"}}),empty:J.default.createElement(h4,{style:{color:"#d1d5db",fontSize:"28px",stroke:"#d1d5db",strokeWidth:"16px"}})};0&&(module.exports={CsatEmojiMapping,CsatEmojiSet,CsatStarIcons,getEmojiForIndex,useSurveySDK});
package/dist/index.mjs ADDED
@@ -0,0 +1 @@
1
+ import{useCallback as w4}from"react";import{useMemo as t4}from"react";import{useQuery as a4}from"@tanstack/react-query";import{QueryClient as W2}from"@tanstack/react-query";var W=!1,Q2={debug:"background: #7f8c8d; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold;",info:"background: #2980b9; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold;",warn:"background: #f1c40f; color: #000; padding: 2px 5px; border-radius: 3px; font-weight: bold;",error:"background: #e74c3c; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold;",success:"background: #2ecc71; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold;",perf:"background: #9b59b6; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold;",analytics:"background: #e20074; color: #fff; padding: 2px 5px; border-radius: 3px; font-weight: bold;"};function b(c,t,a){if(!W&&c!=="analytics")return;let l=new Date().toLocaleTimeString(),i=`%c[SDK:${c.toUpperCase()}]`,r=Q2[c];a!==void 0?console.log(`[${l}] ${i}`,r,t,a):console.log(`[${l}] ${i}`,r,t)}var M={setEnabled:c=>{W=c},isEnabled:()=>W,debug:(c,t)=>b("debug",c,t),info:(c,t)=>b("info",c,t),warn:(c,t)=>b("warn",c,t),error:(c,t)=>b("error",c,t),success:(c,t)=>b("success",c,t),analytics:(c,t)=>b("analytics",c,t),perf:c=>{b("perf",`${c.apiName} completed in ${c.durationMs.toFixed(2)}ms | Status: ${c.status}`,c)}};var I=new W2({defaultOptions:{queries:{staleTime:1/0,refetchOnWindowFocus:!1,refetchOnReconnect:!1,refetchInterval:!1,retryDelay:5e3,retry:(c,t)=>{if(c>=3)return M.error("Query failed permanently after 3 attempts. Stopping retries.",t),!1;if(t instanceof Error){let a=t.message;if(a.includes("400")||a.includes("401")||a.includes("403")||a.includes("404")||a.includes("422"))return M.error(`Query failed permanently due to client error (${a}). Skipping retry.`,t),!1}return M.warn(`Query failed. Retrying attempt ${c+1}/3...`,t),!0}},mutations:{networkMode:"always",retryDelay:5e3,retry:(c,t)=>{if(c>=3)return M.error("Mutation failed permanently after 3 attempts. Stopping retries.",t),!1;if(t instanceof Error){let a=t.message;if(a.includes("400")||a.includes("401")||a.includes("403")||a.includes("422"))return M.error("Mutation failed permanently due to validation/client error. Skipping retry.",t),!1}return M.warn(`Mutation failed. Retrying attempt ${c+1}/3...`,t),!0}}}});var L1="https://custom-p0.feedbook.me/api/feedback/survey/cfm",m1="eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJBY2Nlc3MgVG9rZW4gR2VuZXJhdGVkIEJ5IFNwcmlua2xyIiwic3VydmV5SWQiOiI2YTJlNWM2NDFiOGRiMmY5MDQ2Nzg4ODUiLCJpc3MiOiJTUFJJTktMUiIsInR5cCI6IkpXVCIsInN1cnZleU1vZGUiOiJTVEFOREFSRCIsInN1cnZleUF1dGhlbnRpY2F0aW9uU3RhdGUiOiJOT1RfUkVRVUlSRUQiLCJkaXN0cmlidXRpb25FbnRpdHlJZCI6IjZhMmU1ZDEzNDRjYTkzZjc3YTVlMzcyNyIsImF1ZCI6IlNQUklOS0xSIiwibmJmIjoxNzgxNDIyMTc5LCJzY29wZSI6WyJSRUFEIiwiV1JJVEUiXSwic3RhdGljU3VydmV5IjoidHJ1ZSIsInN1cnZleVJlc3BvbmRlclNuVHlwZSI6IkVYVEVSTkFMX0FQUExJQ0FUSU9OIiwic3VydmV5TGFuZ3VhZ2UiOiJlbiIsInBhcnRuZXJJZCI6OTAwNCwidG9rZW5UeXBlIjoiQUNDRVNTIiwiYXV0aFR5cGUiOiJTVVJWRVlfUkVTUE9OU0UiLCJpYXQiOjE3ODE0MjMzNzksImp0aSI6InNwcmlua2xyIn0.B4ffi1szwM_xQKXTlr0kQc9mVOS4qVbB5e6ir4NFuCoOmNmsl3PB1QeFJ5jPaQ42s0KTpbufPam9ja0Z84CJ620l2WtuS1RModEv7ZtuMNLWOixzRxZMduC5-V7WV85H6gr1e-HzX7wgqrxTk2Z9iTr-8AVuczlwScarCfqLhA-JE_EXkFScHoehmH7QB5q5-BfcxU32iQNYOk5NyeEHGAAWkkyiGPdrbE27njPnhTunB3kKgCBvHHLq0KmgoN9x_KnrB53O_0Xai419TT5vkBWlu5a_uotZckX014eQpxYH02w_LeOF8iWEKYe6R9ge-6DSbelaJSt6U6O8Fq-aXw";function _2(c){return`${L1}?instanceId=${encodeURIComponent(c)}&draftPreview=false`}function C1(c){let t=typeof c=="string"&&c.trim().length>0?c.trim():m1;return _2(t)}var j2={en:"English",hi:"Hindi",de:"Deutsch",es:"Espa\xF1ol",fr:"Fran\xE7ais",bn:"Bengali",gu:"Gujarati",it:"Italiano",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4",mr:"Marathi",pa:"Punjabi",ta:"Tamil",te:"Telugu",ur:"Urdu",zh:"\u4E2D\u6587"};function J2(c){let t=c.toLowerCase().trim();return j2[t]||c.toUpperCase()}function f1(c){let t=c.cfmSurveyDTO,a=new Set,l=t?.baseLanguage??"en";return a.add(l),t&&Array.isArray(t.surveyPages)&&t.surveyPages.forEach(i=>{(i.questionHolders??[]).forEach(r=>{let e=r.question;e&&e.translations&&Object.keys(e.translations).forEach(h=>{a.add(h)})})}),Array.from(a).map(i=>({code:i,name:J2(i)}))}var X2=new Set(["CFM_MATRIX","CSAT_MATRIX"]);function _(c){let t=(c??"").toUpperCase();return t==="TEXTFIELD"?"text":t==="NPS_SCALE"||t==="RATING"||t==="SCALE"?"rating":X2.has(t)?"matrix":t==="RATING_MATRIX"?"rating_matrix":t==="SLIDER_MATRIX"?"slider_matrix":t==="TEXT_AND_MEDIA"?"text_and_media":t==="FILE_UPLOAD"?"file_upload":"radio"}function j(c,t,a){if(c.toUpperCase()==="NPS_SCALE")return"nps";let i=t.find(e=>e.key==="SCALE_TYPE")?.value?.[0]?.toUpperCase();return t.find(e=>e.key==="INPUT_TYPE")?.value?.[0]?.toUpperCase()==="SLIDER"?"slider":i==="CSAT"||i==="STAR"||i==="EMOJI"||a>0&&a<=5?"csat":"nps"}function Z(c=[],t){let a=c.filter(l=>l.additional?.isHintText&&!l.hidden).map(l=>t&&l.translations?.[t]?.answerText||l.answerText||"").filter(Boolean);return a.length>=3?{minLabel:a[0],midLabel:a[1],maxLabel:a[2]}:{minLabel:a[0],maxLabel:a[1]}}var K2=["#e2001a","#e4251b","#ec610a","#f18b00","#f7b200","#fcd900","#d2dc00","#9fca00","#6bb300","#339a00","#008000"];function R(c){return K2[c]??"#e20074"}function T(c,t,a){if(t==="text")return[];let i=(c.answerDetails??[]).filter(r=>!r.hidden&&!r.additional?.isHintText);return i.length>0?i.map((r,e)=>{let h=a&&r.translations?.[a]?.answerText||r.answerText||"",s=r.answerText??"",v=Number(s),o=Number.isFinite(v)&&s.trim()!==""?v:s,n={id:r.id??String(e),label:h,value:o};return t==="rating"&&typeof o=="number"&&(n.color=R(o)),n}):t==="rating"?Array.from({length:11},(r,e)=>({id:String(e),label:String(e),value:e,color:R(e)})):[]}function J(c){let t=c.questionConfigs??[],a=c.additional??{},l=t.find(n=>n.key==="SLIDER_MIN")?.value?.[0]??t.find(n=>n.key==="MIN_VALUE")?.value?.[0]??a.sliderMin,i=t.find(n=>n.key==="SLIDER_MAX")?.value?.[0]??t.find(n=>n.key==="MAX_VALUE")?.value?.[0]??a.sliderMax,r=t.find(n=>n.key==="SLIDER_STEP")?.value?.[0]??a.sliderStep,e=t.find(n=>n.key==="DEFAULT_VALUE")?.value?.[0]??a.defaultValue,h=l!==void 0?Number(l):0,s=i!==void 0?Number(i):10,v=r!==void 0&&Number(r)>0?Number(r):1,o=e!==void 0?Number(e):void 0;return{min:Number.isFinite(h)?h:0,max:Number.isFinite(s)?s:10,step:Number.isFinite(v)?v:1,...o!==void 0&&Number.isFinite(o)?{defaultValue:o}:{}}}function w1(c,t,a,l){let i=(c.answerDetails??[]).filter(d=>!d.hidden&&!d.additional?.isHintText),r=j(c.answerType??"",a,i.length);if(r==="csat"){let{minLabel:d,maxLabel:g}=Z(c.answerDetails,l),z=T(c,"radio",l),L=a.map(m=>m.value?.[0]||"").join(" ").toUpperCase(),u=(c.dataSubType||"").toUpperCase(),p=`${L} ${u}`,x=a.find(m=>m.key==="BUTTON_TYPE")?.value?.[0]?.toLowerCase()||void 0;x||(p.includes("EMOJI")||p.includes("CSAT")||p.includes("SMILEY")||p.includes("FACE")?x="emoji":p.includes("STAR")?x="star":p.includes("GRAPHIC")||p.includes("SLIDER")?x="graphics":p.includes("DROP")?x="dropdown":p.includes("SELECT")?x="selectbox":p.includes("RADIO")?x="radio":p.includes("NUMBER")&&(x="numbered"));let f=a.find(m=>m.key==="ENABLE_NON_APPLICABLE")?.value?.[0]==="true",H=a.find(m=>m.key.includes("REVERSE"))?.value?.[0]?.toLowerCase()==="true"||c.additional?.reverseScaleOrder===!0||c.additional?.reverseScale===!0,P=a.find(m=>m.key==="LABEL_POSITIONING")?.value?.[0]?.toLowerCase()||void 0;if(H){z=[...z].reverse();let m=d;d=g,g=m}return f&&z.push({id:"na",label:"N/A",value:null}),{...t,type:"csat",options:z,...d?{minLabel:d}:{},...g?{maxLabel:g}:{},...x?{buttonType:x}:{},...f?{hasNotApplicable:f}:{},...H?{reverseScaleOrder:H}:{},...P?{labelPosition:P}:{}}}if(r==="slider"){let{minLabel:d,maxLabel:g}=Z(c.answerDetails,l),z=J(c);return{...t,type:"slider",...z,...d?{minLabel:d}:{},...g?{maxLabel:g}:{}}}if(r==="rating_scale"){let{minLabel:d,midLabel:g,maxLabel:z}=Z(c.answerDetails,l),L=T(c,"radio",l),u=a.find(f=>f.key.includes("REVERSE"))?.value?.[0]?.toLowerCase()==="true"||c.additional?.reverseScaleOrder===!0||c.additional?.reverseScale===!0;if(u){L=[...L].reverse();let f=d;d=z,z=f}let p;return g&&L.length>0&&(p=(L.length-1)/2),{...t,type:"rating_scale",options:L,...d?{minLabel:d}:{},...g?{midLabel:g}:{},...p!==void 0?{midLabelIndex:p}:{},...z?{maxLabel:z}:{},...u?{reverseScaleOrder:u}:{}}}let{minLabel:e,midLabel:h,maxLabel:s}=Z(c.answerDetails,l),v=T(c,"rating",l),o=a.find(d=>d.key.includes("REVERSE"))?.value?.[0]?.toLowerCase()==="true"||c.additional?.reverseScaleOrder===!0||c.additional?.reverseScale===!0;if(o){v=[...v].reverse();let d=e;e=s,s=d}let n;return h&&(n=v.length===11?o?2.5:7.5:(v.length-1)/2),{...t,type:"rating",options:v,...e?{minLabel:e}:{},...h?{midLabel:h}:{},...n!==void 0?{midLabelIndex:n}:{},...s?{maxLabel:s}:{},...o?{reverseScaleOrder:o}:{}}}function F1(c,t,a){let l=T(c,"radio",a);return{...t,type:"radio",options:l}}function B1(c,t,a,l){let r=a.find(v=>v.key==="CONTENT_TYPE")?.childConfigs?.find(v=>v.key==="MAX_CHARACTER_COUNT"),e=r?.value?.[0]?Number(r.value[0]):void 0,h=c.answerDetails?.[0],s=h?l&&h.translations?.[l]?.answerText||h.answerText:void 0;return{...t,type:"text",...e!==void 0?{maxCharacterCount:e}:{},...s?{placeholder:s}:{}}}function H1(c,t,a){let l=c;if(a&&l.answerDetails&&l.answerDetails.length>=2){let r=t&&l.answerDetails[0].translations?.[t]?.answerText||l.answerDetails[0].answerText||"";if(r)return r}let i=t&&c.translations?.[t]?.questionText||c.questionText||c.answerText||"";return a&&i.includes(":")?i.split(":")[0].trim():i}function Y2(c,t,a){let l=c;if(a&&l.answerDetails&&l.answerDetails.length>=2){let e=t&&l.answerDetails[1].translations?.[t]?.answerText||l.answerDetails[1].answerText||"";if(e)return e}let i=t&&c.translations?.[t]?.description||c.description||c.additional?.rightLabel||c.additional?.rightStatement||c.additional?.rightText;if(typeof i=="string"&&i.trim()!=="")return i;let r=t&&c.translations?.[t]?.questionText||c.questionText||c.answerText||"";if(a&&r.includes(":"))return r.split(":").slice(1).join(":").trim()}function U(c,t,a){let l=(c.matrixRowQuestions?.length??0)>0?c.matrixRowQuestions:c.childSurveyQuestions;return l&&l.length>0?l.filter(i=>i.id).map(i=>({id:i.id,text:H1(i,t,a),rightText:Y2(i,t,a)})):(c.answerDetails??[]).filter(i=>!i.hidden&&!i.additional?.isHintText).map((i,r)=>({id:`row_${r}`,text:t&&i.translations?.[t]?.answerText||i.answerText||"",rightText:i.additional?.rightLabel||i.additional?.rightStatement||i.additional?.rightText}))}function X(c,t,a){return c.matrixColumnQuestions&&c.matrixColumnQuestions.length>0?c.matrixColumnQuestions.filter(l=>l.id).map(l=>{let i=a&&l.translations?.[a]?.answerText||l.answerText||H1(l,a),r=l.answerText??i,e=Number(r),h=Number.isFinite(e)&&String(r).trim()!==""?e:r,s={id:l.id,label:i,value:h};return t&&typeof h=="number"&&(s.color=R(h)),s}):(c.answerDetails??[]).filter(l=>!l.hidden&&!l.additional?.isHintText).map((l,i)=>{let r=a&&l.translations?.[a]?.answerText||l.answerText||"",e=Number(r),h=Number.isFinite(e)&&r.trim()!==""?e:r,s={id:`col_${i}`,label:r,value:h};return t&&typeof h=="number"&&(s.color=R(h)),s})}function K(c,t){let a=Number(c.additional?.sliderMin??0),l=Number(c.additional?.sliderMax??10),i=Number(c.additional?.sliderStep??1);return U(c,t).map(e=>({...e,min:Number.isFinite(a)?a:0,max:Number.isFinite(l)?l:10,step:Number.isFinite(i)&&i>0?i:1}))}function V1(c,t){let a=(c.answerType??"").toUpperCase(),l=a==="RATING_MATRIX"?"RATING_MATRIX":a==="CSAT_MATRIX"?"CSAT_MATRIX":"CFM_MATRIX",i=c.questionConfigs??[],r=i.find(o=>o.key==="MATRIX_TYPE"),e=r?.value?.[0]?.toLowerCase(),h=e==="bipolar",s=U(c,t,h),v=X(c,l==="RATING_MATRIX",t);return{apiType:a,subType:l,configs:i,matrixTypeConfig:r,matrixType:e,isBipolar:h,rows:s,columns:v}}function S1(c,t){let{rows:a,columns:l}=t,i=l.map(o=>Number(o.value)).filter(o=>!isNaN(o)),r=i.length>0?Math.min(...i):1,e=i.length>0?Math.max(...i):l.length,h=1,s=l.length,v=a.map(o=>({...o,min:r,max:e,step:h}));return{...c,type:"slider_matrix",rows:v,ticks:s}}function A1(c,t,a,l){let{subType:i,configs:r,rows:e}=a,h=[...a.columns],s=r.map(u=>u.value?.[0]||"").join(" ").toUpperCase(),v=(c.dataSubType||"").toUpperCase(),o=`${s} ${v}`,n;o.includes("EMOJI")||o.includes("CSAT")||o.includes("SMILEY")||o.includes("FACE")?n="emoji":o.includes("STAR")?n="star":o.includes("GRAPHIC")||o.includes("SLIDER")?n="graphics":o.includes("DROP")?n="dropdown":o.includes("SELECT")?n="selectbox":o.includes("RADIO")?n="radio":o.includes("NUMBER")&&(n="numbered");let C=r.find(u=>u.key==="NOT_APPLICABLE_OPTIONS")?.value?.[0]==="true"||r.find(u=>u.key==="ENABLE_NON_APPLICABLE")?.value?.[0]==="true",d=r.find(u=>u.key.includes("REVERSE"))?.value?.[0]?.toLowerCase()==="true"||c.additional?.reverseScaleOrder===!0||c.additional?.reverseScale===!0,g=(c.answerDetails??[]).filter(u=>u.additional?.isHintText&&!u.hidden).map(u=>l&&u.translations?.[l]?.answerText||u.answerText||"").filter(Boolean);d&&(h=[...h].reverse(),g=[...g].reverse()),C&&h.push({id:"na",label:"N/A",value:null});let z=JSON.stringify(r).toUpperCase(),L="standard";return z.includes("CAROUSEL")?L="carousel":z.includes("DROPDOWN")&&(L="dropdown"),{...t,type:"matrix",subType:i,rows:e,columns:h,...n?{buttonType:n}:{},...C?{hasNotApplicable:C}:{},...d?{reverseScaleOrder:d}:{},...g.length>0?{labels:g}:{},...L!=="standard"?{matrixFormat:L}:{}}}function y1(c,t,a,l){let{subType:i,configs:r,matrixType:e,rows:h}=a,s=[...a.columns],v=JSON.stringify(r).toUpperCase(),o="standard";v.includes("CAROUSEL")?o="carousel":v.includes("DROPDOWN")&&(o="dropdown"),console.log("CFM_MATRIX Configs:",JSON.stringify(r,null,2)),console.log("Detected matrixFormat:",o);let C=r.some(x=>x.key.includes("MULTI")||x.value?.[0]?.toUpperCase().includes("MULTI")||x.key.includes("ANSWER")&&x.value?.[0]?.toUpperCase().includes("MULTI")||x.key.includes("SELECT")&&x.value?.[0]?.toUpperCase().includes("MULTI"))?"multiple":"single",d=r.find(x=>x.key==="TRANSPOSE_TABLE")?.value?.[0]?.toLowerCase()==="true",g=r.find(x=>x.key==="REPEAT_SCALE")?.value?.[0]?.toLowerCase()==="true",z=r.find(x=>x.key==="NOT_APPLICABLE_OPTIONS")?.value?.[0]==="true"||r.find(x=>x.key==="ENABLE_NON_APPLICABLE")?.value?.[0]==="true",L=z?!1:d;z&&s.push({id:"na",label:"N/A",value:null});let u=r.find(x=>x.key==="ENABLE_SCALE")?.value?.[0]?.toLowerCase()!=="false",p;return e==="bipolar"&&(p=(c.answerDetails??[]).filter(x=>x.additional?.isHintText&&!x.hidden).map(x=>l&&x.translations?.[l]?.answerText||x.answerText||"").filter(Boolean)),{...t,type:"matrix",subType:i,rows:h,columns:s,...e?{matrixType:e}:{},matrixFormat:o,...C?{answerType:C}:{},...L?{transposeTable:L}:{},...g?{repeatScale:g}:{},...z?{hasNotApplicable:z}:{},...p&&p.length>0?{labels:p}:{},enableScale:u}}function b1(c,t,a){let l=V1(c,a);return l.matrixTypeConfig?.childConfigs?.find(e=>e.key==="MATRIX_FORMAT")?.value?.[0]?.toUpperCase()==="SLIDER"?S1(t,l):l.subType==="CSAT_MATRIX"||l.subType==="RATING_MATRIX"?A1(c,t,l,a):y1(c,t,l,a)}function R1(c,t,a){let l=c.questionConfigs||[],i=l.find(m=>m.key==="SLIDER_TICKS_AND_VALUES"),r=i?.childConfigs||[],e=r.find(m=>m.key==="TICK_START")?.value?.[0],h=r.find(m=>m.key==="TICK_END")?.value?.[0],s=r.find(m=>m.key==="STEP_SIZE")?.value?.[0],v=i?.value?.[0],o=e!==void 0?Number(e):0,n=h!==void 0?Number(h):10,C=s!==void 0?Number(s):1,d=v!==void 0?Number(v):void 0,g={...c,additional:{...c.additional,sliderMin:o,sliderMax:n,sliderStep:C}},z=K(g,a),L=(c.answerDetails||[]).filter(m=>m.additional?.isHintText).map(m=>a&&m.translations?.[a]?.answerText||m.answerText||"").filter(Boolean),u=m=>{for(let V of m){let S=l.find(y=>y.key===V)||r.find(y=>y.key===V);if(S&&S.value!==void 0&&S.value!==null&&S.value.length>0)return S.value[0]?.toString().toLowerCase()==="true"}return!1},p=l.find(m=>m.key==="SCALE_TYPE"||m.key==="VIEW_VARIANT")?.value?.[0]?.toUpperCase().includes("GRAPHIC"),x=u(["ENABLE_INPUT_BOX","SHOW_INPUT_BOX","INPUT_BOX","ENABLE_INPUT"]),f=u(["SHOW_VALUE","DISPLAY_VALUES"]),H=u(["NOT_APPLICABLE","NOT_APPLICABLE_OPTIONS"]),P=(c.answerDetails||[]).filter(m=>!m.additional?.isHintText&&!m.hidden).map(m=>m.translations?.[a||""]?.answerText||m.answerText||""),B;if(d!==void 0&&d>1){B=[];let m=(n-o)/(d-1);for(let V=0;V<d;V++){let S=o+V*m,y=Number(S.toFixed(2)),O2=P[V]||y.toString(),G2=`hsl(${Math.round(V/(d-1)*120)}, 90%, 40%)`;B.push({value:y,label:O2,color:G2})}}return{...t,type:"slider_matrix",rows:z,...L.length>0?{labels:L}:{},...d!==void 0&&Number.isFinite(d)?{ticks:d}:{},...B?{tickValues:B}:{},enableInputBox:x,displayValues:f,enableNotApplicable:H,...p?{sliderType:"graphics"}:{}}}function Y(c){let t=c.additional??{},a=t.mediaUrl??t.previewUrl,l=t.mediaMimeType,i=t.title,r=c.questionContainerAssets;if(Array.isArray(r)&&r.length>0){let e=r[0];(e.source||e.previewImageUrl)&&(a=e.source||e.previewImageUrl),e.type&&(e.type==="PHOTO"||e.type==="IMAGE"?l="image/*":e.type==="VIDEO"?l="video/*":l=e.type)}return{mediaUrl:a,mediaMimeType:l,mediaTitle:i}}function T1(c,t){let{mediaUrl:a,mediaMimeType:l,mediaTitle:i}=Y(c),r=c.questionConfigs||[],e=r.find(n=>n.key==="TEXT_AND_MEDIA_ALIGNMENT"),h=r.find(n=>n.key==="TEXT_AND_MEDIA_SIZE"),s=e?.value?.[0],v=h?.value?.[0]?Number(h.value[0]):void 0,o=t.text;if(Array.isArray(c.answerDetails)){let n=c.answerDetails.find(C=>C.additional?.textAndMediaFieldType==="HEADER");n&&n.answerText&&(o=n.answerText)}return{...t,text:o,type:"text_and_media",...a?{mediaUrl:a}:{},...l?{mediaMimeType:l}:{},...i?{mediaTitle:i}:{},...s?{mediaAlignment:s}:{},...v?{mediaSize:v}:{}}}function k1(c,t,a){let l=c.questionConfigs||[],i=c.answerDetails?.find(z=>z.additional?.fieldType==="UPLOAD_MESSAGE"),r=a&&i?.translations?.[a]?.answerText||i?.answerText||"",h=l.find(z=>z.key==="SUPPORTED_FILE_FORMAT")?.value?.map(z=>z.toUpperCase().replace(/^\./,""))||[],s=l.find(z=>z.key==="MAX_FILE_COUNT"),v=s?.value?.[0]?Number(s.value[0]):void 0,o=l.find(z=>z.key==="FILE_SIZE_LIMIT"),n=o?.childConfigs?.find(z=>z.key==="SIZE_LIMIT_ID")?.value?.[0],C=o?.childConfigs?.find(z=>z.key==="SIZE_FORMAT_ID")?.value?.[0],d=n?Number(n):void 0,g=C==="PER_FILE"||C==="IN_TOTAL"?C:void 0;return{...t,type:"file_upload",...r?{uploadMessage:r}:{},...h.length>0?{supportedFileFormats:h}:{},...v!==void 0?{maxFileCount:v}:{},...d!==void 0?{fileSizeLimit:d}:{},...g?{fileSizeLimitType:g}:{}}}function $2(c,t,a,l){let i=t.find(u=>u.key==="REQUIRED")?.value?.[0]==="true",r=t.find(u=>u.key==="REQUIRED_ERROR_MESSAGE"),e=r?.value?.[0];a&&r?.translations?.[a]?.value?.[0]&&(e=r.translations[a].value[0]);let h=a&&c.translations?.[a]?.questionRichText||a&&c.translations?.[a]?.questionText||c.questionRichText||c.questionText||"";l&&(h=h.replace(/\{\{(\w+)\}\}/g,(u,p)=>l[p]!==void 0?l[p]:u));let s=a&&c.translations?.[a]?.descriptionRichText||a&&c.translations?.[a]?.description||c.descriptionRichText||c.description||(typeof c.additional?.descriptionRichText=="string"?c.additional.descriptionRichText:"")||(typeof c.additional?.description=="string"?c.additional.description:"")||"";if(!s){let u=t.find(p=>p.key.includes("DESCRIPTION"));s=u?.value?.[0]||"",a&&u?.translations?.[a]?.valueRichText?.[0]?s=u.translations[a].valueRichText[0]:a&&u?.translations?.[a]?.value?.[0]&&(s=u.translations[a].value[0])}s&&l&&(s=s.replace(/\{\{(\w+)\}\}/g,(u,p)=>l[p]!==void 0?l[p]:u));let o=c.questionContainerAssets?.[0],n=o?.source||o?.mediaUrl||o?.previewImageUrl,C=o?.mediaMimeType,g=t.find(u=>u.key==="QUESTION_CONTAINER_MEDIA_ALIGNMENT")?.value?.[0],z=t.find(u=>u.key==="TEXT_AND_MEDIA_SIZE"),L=z?.value?.[0]?Number(z.value[0]):void 0;return{id:c.id??"",text:h,...s?{description:s}:{},required:i,...e?{requiredErrorMessage:e}:{},...c.questionNumber!==void 0?{questionNumber:c.questionNumber}:{},...n?{containerMediaUrl:n}:{},...C?{containerMediaMimeType:C}:{},...g?{containerMediaAlignment:g}:{},...L!==void 0?{containerMediaSize:L}:{}}}function P1(c,t,a){let l=c.questionConfigs??[],i=$2(c,l,t,a);switch(_(c.answerType)){case"rating":return w1(c,i,l,t);case"text":return B1(c,i,l,t);case"matrix":case"rating_matrix":return b1(c,i,t);case"slider_matrix":return R1(c,i,t);case"text_and_media":return T1(c,i);case"file_upload":return k1(c,i,t);default:return F1(c,i,t)}}function Z1(c,t,a){let l=c.cfmSurveyDTO;return!l||!Array.isArray(l.surveyPages)?[]:l.surveyPages.map((i,r)=>{let e=(i.questionHolders??[]).map(h=>h.question).filter(h=>!!h).map(h=>P1(h,t,a));return{id:`page_${r}`,title:`Page ${r+1}`,questions:e}})}function E1(c){return c.instanceId?.trim()?{instanceId:c.instanceId.trim(),language:c.surveyLanguage??c.cfmSurveyDTO?.baseLanguage??"en"}:null}function c4(c,t){return t??c.surveyLanguage??c.cfmSurveyDTO?.baseLanguage??"en"}function D1(c,t,a){let l=c4(c,t),i=f1(c),r=Z1(c,l,a);return{id:c.cfmSurveyDTO?.id??"",language:l,languages:i,pages:r}}function I1(c){M.info("Starting survey layout API fetch...",{url:c})}function $(c,t,a){M.perf({apiName:"GET Survey Layout",durationMs:c,status:t,url:a,success:!1})}function U1(c,t,a,l){M.perf({apiName:"GET Survey Layout",durationMs:c,status:t,url:a,payloadSize:l,success:!0})}function q1(c){M.success("Raw survey layout fetched successfully",c)}function N1(c){M.error("Failed to fetch raw survey layout",c)}function O1(){M.warn("Cannot map survey: apiResponse is null or undefined")}function G1(c){M.success("Mapped survey layout successfully",c)}function Q1(c){M.error("Failed to map survey layout",c)}function F(c){if(c.eventName==="survey_session_summary"){let{completed:t,totalDurationMs:a,maxVisitedPageIndex:l,totalQuestionsCount:i,answeredQuestionsCount:r,skippedQuestionsCount:e,skippedQuestionIds:h,validationErrorsCount:s,backtrackCount:v}=c.metadata;M.analytics(`Event: ${c.eventName} - SESSION SUMMARY TABLE:`);let o=[{Metric:"Completion Status",Value:t?"COMPLETED \u2705":"ABANDONED \u274C"},{Metric:"Total Time Spent",Value:`${(a/1e3).toFixed(2)} seconds`},{Metric:"Max Page Index Reached",Value:`${l}`},{Metric:"Total Questions",Value:i},{Metric:"Answered Questions",Value:r},{Metric:"Skipped Optional Questions",Value:e},{Metric:"Skipped Question IDs",Value:h.join(", ")||"None"},{Metric:"Validation Errors Triggered",Value:s},{Metric:"Backtrack Count",Value:v},{Metric:"Validation Error History",Value:c.metadata.validationHistory?.map(n=>`[Page ${n.pageIndex}] Attempt ${n.attemptNumber}: ${Object.keys(n.errors).join(", ")}`).join(" | ")||"NO Validation Erros Occurred"}];console.table(o)}else M.analytics(`Event: ${c.eventName}`,c.metadata)}function W1(c,t,a,l){F({eventName:"survey_fetch_latency",metadata:{durationMs:c,status:t,success:!0,url:a,payloadSize:l}})}function c1(c,t,a){F({eventName:"api_error",metadata:{apiName:"GET Survey Layout",status:c,url:t,errorMessage:a}})}async function l4(c){let t=performance.now();I1(c);try{let a=await fetch(c,{method:"GET",headers:{Accept:"application/json"},cache:"force-cache"}),l=performance.now()-t;if(!a.ok)throw $(l,a.status,c),c1(a.status,c,`Survey fetch failed (${a.status})`),new Error(`Survey fetch failed (${a.status})`);let i=await a.json(),r=JSON.stringify(i),h=`${(new Blob([r]).size/1024).toFixed(2)} KB`;return U1(l,a.status,c,h),W1(l,a.status,c,h),q1(i),i}catch(a){let l=performance.now()-t;throw $(l,"FAILED",c),c1("FAILED",c,a?.message||String(a)),N1(a),a}}function _1(c){let t=C1(c?.instanceId),a=c?.language,l=c?.placeholders,{data:i,error:r,isLoading:e,isSuccess:h}=a4({queryKey:["survey",t],queryFn:()=>l4(t),enabled:!!t},I),s=t4(()=>{if(!h)return{survey:null,session:null};if(!i)return O1(),{survey:null,session:null};try{let v=D1(i,a,l),o=E1(i),n=o?{...o,language:v.language}:null;return G1(v),{survey:v,session:n}}catch(v){return Q1(v),{survey:null,session:null}}},[i,h,a]);return{survey:s.survey,session:s.session,fetching:e,fetchError:r}}import{useState as g1,useRef as f4}from"react";import{useCallback as i4}from"react";import{useMutation as e4}from"@tanstack/react-query";function j1(c,t){M.info("Starting survey response HTTP POST...",{url:c,requestBody:t})}function J1(c,t){M.warn(c,t)}function X1(c,t,a,l,i){M.perf({apiName:"POST Submit Response",durationMs:c,status:t,url:a,requestSize:l,responseSize:i,success:!0})}function t1(c,t,a,l){M.perf({apiName:"POST Submit Response",durationMs:c,status:t,url:a,requestSize:l,success:!1})}function K1(c){M.success("Survey response submitted successfully",{responseId:c})}function Y1(c,t){M.error(c,t)}function $1(c){M.debug("Resolved raw inputs to submit schema:",c)}function c2(c){M.debug("Constructed JSON request body:",c)}function t2(c){M.error("Failed to execute submit callback",c)}function a2(c,t,a,l,i){F({eventName:"survey_submit_latency",metadata:{durationMs:c,status:t,success:!0,url:a,requestSize:l,responseSize:i}})}function a1(c,t,a){F({eventName:"api_error",metadata:{apiName:"POST Submit Response",status:c,url:t,errorMessage:a}})}var l2="https://custom-p0.feedbook.me/api/feedback/survey/responseV2";function r2(c,t="en"){let a=new URLSearchParams({instanceId:c,surveySubmitted:"true",surveyLanguage:t});return`${l2}?${a.toString()}`}function i2(c,t){let a={},l={},i={};for(let r of t)r.type==="file_upload"&&(i[r.id]=[]);for(let r of t){let e=c[r.id];if(e!=null)switch(r.type){case"text_and_media":break;case"file_upload":{Array.isArray(e)&&(i[r.id]=e);break}case"matrix":case"rating_matrix":case"slider_matrix":{if(typeof e=="object"&&!Array.isArray(e)){let h=e;for(let[s,v]of Object.entries(h))if(v!=null){let o=`${r.id}_${s}`;a[o]=[String(v)]}}break}default:(typeof e=="string"||typeof e=="number")&&(a[r.id]=[String(e)]);break}}return{questionToAnswers:a,quesIdVsAttachmentDetails:i,optionLevelAnswers:l,conjointTasks:[]}}function r4(c){return typeof c=="object"&&c!==null&&"instanceId"in c&&"answers"in c}function e2(c,t,a){if(r4(c))return{...c,surveyLanguage:c.surveyLanguage??t?.language??"en",questions:c.questions??a?.pages.flatMap(l=>l.questions)??[]};if(!t?.instanceId)throw new Error("Survey session not ready. Fetch survey before submitting.");return{answers:c,instanceId:t.instanceId,surveyLanguage:t.language??"en",questions:a?.pages.flatMap(l=>l.questions)??[]}}async function h4({url:c,requestBody:t}){let a=performance.now(),i=`${(new Blob([JSON.stringify(t)]).size/1024).toFixed(2)} KB`;j1(c,t);try{let r=await fetch(c,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),e=await r.json().catch(n=>(J1("Failed to parse JSON response during submission",n),null)),h=performance.now()-a,v=`${((e?new Blob([JSON.stringify(e)]).size:0)/1024).toFixed(2)} KB`;if(!r.ok)throw t1(h,r.status,c,i),a1(r.status,c,`Submit failed (${r.status}): ${JSON.stringify(e)}`),new Error(`Submit failed (${r.status}): ${JSON.stringify(e)}`);let o=e?.responseId??"";return X1(h,r.status,c,i,v),a2(h,r.status,c,i,v),K1(o),{success:!0,responseId:o}}catch(r){let e=performance.now()-a;throw t1(e,"FAILED",c,i),a1("FAILED",c,r?.message||String(r)),Y1("Failed to submit survey response",r),r}}function h2(c,t){let a=e4({mutationFn:({url:i,requestBody:r})=>h4({url:i,requestBody:r})},I);return{submit:i4(async i=>{try{let r=e2(i,c,t);$1(r);let e=r.surveyLanguage??"en",h=i2(r.answers,r.questions??[]);c2(h);let s=r2(r.instanceId,e);return await a.mutateAsync({url:s,requestBody:h})}catch(r){throw t2(r),r}},[c,t,a]),data:a.data??null,loading:a.isPending,error:a.error}}import{useState as o4,useEffect as n4,useMemo as v4}from"react";function s2(c){return c.type==="text_and_media"}function s4(c,t){return c.rows.every(a=>{let l=t[a.id];return l!==void 0&&l!==""})}function l1(c,t){if(s2(c))return!0;let a=t[c.id];switch(c.type){case"matrix":case"rating_matrix":case"slider_matrix":return typeof a!="object"||Array.isArray(a)?!1:s4(c,a);default:return a!==void 0&&a!==""}}function r1(c,t,a){let l={},i=a?.startsWith("de")?"Beantworten Sie bitte diese Frage bevor Sie fortfahren.":"Please answer this question before you proceed.";return c.forEach(r=>{s2(r)||r.required&&!l1(r,t)&&(l[r.id]=r.requiredErrorMessage??i)}),l}function o2(c,t,a){let l={},i="",r=-1;for(let e=0;e<c.length;e++){let h=r1(c[e].questions,t,a);Object.keys(h).length>0&&(l={...l,...h},r===-1&&(r=e,i=Object.keys(h)[0]))}return r!==-1?{errors:l,errorPageIndex:r,firstErrorId:i}:null}function n2(c){return c.type==="text_and_media"}function v2(c){return!c||!Array.isArray(c.pages)?0:c.pages.reduce((t,a)=>{let l=(a.questions??[]).filter(i=>!n2(i));return t+l.length},0)}function z2(c,t,a=0){if(!c||!t||!Array.isArray(c.pages))return 0;let l=0;return c.pages.forEach((i,r)=>{let e=(i.questions??[]).filter(h=>!n2(h));r<a?l+=e.length:e.forEach(h=>{l1(h,t)&&l++})}),l}function d2(c,t){return t<=0?0:Math.min(100,Math.max(0,Math.round(c/t*100)))}function g2({survey:c,values:t,currentPageIndex:a=0}){let[l,i]=o4(0);return n4(()=>{a>l&&i(a)},[a,l]),v4(()=>{let r=v2(c),e=z2(c,t,l),h=d2(e,r),s=r>0&&e===r;return{totalQuestionsCount:r,answeredQuestionsCount:e,progressPercentage:h,isComplete:s}},[c,t,l])}import{useEffect as z4}from"react";function i1(c){let{currentPageIndex:t,paginationRefs:a}=c;z4(()=>{a.current&&(a.current.pageStartTime=performance.now())},[t,a])}import{useEffect as d4}from"react";function e1(c){let{currentPageIndex:t,paginationRefs:a}=c;d4(()=>{a.current&&t>a.current.maxVisitedPageIndex&&(a.current.maxVisitedPageIndex=t)},[t,a])}import{useCallback as u4}from"react";function u2(c,t){M.info(`Answer changed for question: ${c}`,{value:t})}function k(c,t){M.warn(c,t)}function p2(){M.info("Initiating survey submission...")}function M2(c){M.info(`Navigating back from page index: ${c}`)}function x2(c){M.info(`Navigating next from page index: ${c}`)}function L2(c){M.error("Error encountered during pagination submit trigger",c)}function E(c){return typeof document>"u"?null:document.getElementById(c)||null}function g4(c){return c.closest("main")||c.closest("form")||c.parentElement||c}function q(c,t){try{let l=c[t]?.questions?.[0];l?setTimeout(()=>{try{let i=E(l.id);i?g4(i).scrollIntoView({behavior:"smooth",block:"start"}):window.scrollTo({top:0,behavior:"smooth"})}catch(i){k("Failed to scroll page first question into view",i)}},50):window.scrollTo({top:0,behavior:"smooth"})}catch(a){k("Failed to trigger scroll navigation",a)}}function h1(c){let{currentPageIndex:t,setCurrentPageIndex:a,trackPageTime:l,pages:i,values:r,paginationRefs:e}=c;return u4(()=>{if(t>0){M2(t),l(t);let h=e.current;if(h){h.backtrackCount+=1;let v=t-1,o=i[v]?.questions??[],n={};o.forEach(C=>{n[C.id]=r[C.id]}),h.backtrackSnapshots[v]={fromPageIndex:t,snapshot:n}}let s=t-1;a(s),q(i,s)}},[t,a,l,i,r,e])}import{useCallback as p4}from"react";function s1(c){let{setValues:t,setValidationErrors:a}=c;return p4((l,i)=>{u2(l,i),t(r=>({...r,[l]:i})),a(r=>({...r,[l]:""}))},[t,a])}import{useCallback as M4}from"react";function m2(){M.success("Survey validation passed on submit")}function C2(c){M.warn("Full survey validation failed on submit",{validation:c})}function N(c){M.error("Failed to run survey validation on submit",c)}function f2(c){M.warn("Page validation failed",{errors:c})}function w2(c,t){F({eventName:"page_time_spent",metadata:{pageIndex:c,durationMs:t}})}function O(c,t,a){F({eventName:"validation_error",metadata:{pageIndex:c,errors:t,attemptNumber:a}})}function o1(c,t){let{survey:a,pages:l,values:i,currentPageIndex:r,setCurrentPageIndex:e,setValidationErrors:h,trackPageTime:s,trackOptionalSkips:v,checkBacktrackChanges:o,paginationRefs:n}=c,C=l[r],d=C?.questions??[];return M4(()=>{if(!a||!C)return;let g={};try{g=r1(d,i,a.language)}catch(L){N(L)}let z=n.current;if(z){if(Object.keys(g).length>0){f2(g);let L=(z.validationAttempt[r]||0)+1;z.validationAttempt[r]=L,z.validationErrorsCount+=1,z.validationHistory.push({pageIndex:r,errors:g,attemptNumber:L}),O(r,g,L),h(g);let u=Object.keys(g)[0];setTimeout(()=>{try{let p=E(u);p&&p.scrollIntoView({behavior:"smooth",block:"center"})}catch(p){k("Failed to scroll validation error element into view",p)}},50);return}h({}),delete z.validationAttempt[r],s(r),v(r),o(r),r<l.length-1?(x2(r),e(L=>L+1),q(l,r+1)):t()}},[a,C,d,i,r,e,h,s,v,o,l,t,n])}import{useCallback as x4}from"react";function F2(c,t,a,l,i,r,e,h,s,v){F({eventName:"survey_session_summary",metadata:{maxVisitedPageIndex:t,totalDurationMs:a,completed:c,totalQuestionsCount:l,answeredQuestionsCount:i,skippedQuestionsCount:r,skippedQuestionIds:e,validationErrorsCount:h,backtrackCount:s,validationHistory:v}})}function B2(c,t){F({eventName:"optional_question_skipped",metadata:{questionId:c,pageIndex:t}})}function H2(c,t,a){F({eventName:"backtrack_revisited",metadata:{fromPageIndex:c,toPageIndex:t,changedAnswers:a}})}function n1(c){let{survey:t,pages:a,values:l,submit:i,currentPageIndex:r,setCurrentPageIndex:e,setValidationErrors:h,trackPageTime:s,trackOptionalSkips:v,checkBacktrackChanges:o,totalQuestionsCount:n,paginationRefs:C}=c;return x4(async()=>{if(!t)return;p2();let d=null;try{d=o2(a,l,t.language),d||m2()}catch(z){N(z)}let g=C.current;if(g){if(d){C2(d);let z=(g.validationAttempt[d.errorPageIndex]||0)+1;g.validationAttempt[d.errorPageIndex]=z,g.validationErrorsCount+=1,g.validationHistory.push({pageIndex:d.errorPageIndex,errors:d.errors,attemptNumber:z}),O(d.errorPageIndex,d.errors,z),h(d.errors),e(d.errorPageIndex),setTimeout(()=>{try{let L=E(d.firstErrorId);L&&L.scrollIntoView({behavior:"smooth",block:"center"})}catch(L){k("Failed to scroll validation error element into view",L)}},100);return}h({}),delete g.validationAttempt[r],s(r),v(r),o(r);try{let z=await i(l);if(z&&z.success&&!g.hasLoggedSummary){let L=performance.now()-g.sessionStartTime,u=[];a.forEach(x=>{x.questions.forEach(f=>{if(!f.required){let H=l[f.id];(H===void 0||H==="")&&u.push(f.id)}})});let p=u.length;F2(!0,g.maxVisitedPageIndex,L,n,n-p,p,u,g.validationErrorsCount,g.backtrackCount,g.validationHistory),g.hasLoggedSummary=!0}}catch(z){L2(z)}}},[t,a,l,i,r,e,h,s,v,o,n,C])}import{useCallback as L4}from"react";function v1(c,t,a){return L4(l=>{if(!a.current)return;let i=a.current.backtrackSnapshots[l];if(i){let r=c[l]?.questions??[],e={},h=!1;r.forEach(s=>{let v=i.snapshot[s.id],o=t[s.id];v!==o&&(e[s.id]={oldValue:v??null,newValue:o??null},h=!0)}),h&&H2(i.fromPageIndex,l,e),delete a.current.backtrackSnapshots[l]}},[c,t,a])}import{useCallback as m4}from"react";function z1(c,t){return m4(a=>{(c[a]?.questions??[]).forEach(i=>{let r=!i.required,e=t[i.id];r&&(e===void 0||e==="")&&B2(i.id,a)})},[c,t])}import{useCallback as C4}from"react";function d1(c){return C4(t=>{if(!c.current)return;let a=performance.now()-c.current.pageStartTime;w2(t,a)},[c])}function V2({survey:c,session:t}){let[a,l]=g1({}),[i,r]=g1({}),[e,h]=g1(0),s=c?.pages??[],o=s[e]?.questions??[],{submit:n,data:C,loading:d,error:g}=h2(t,c),{progressPercentage:z,totalQuestionsCount:L,answeredQuestionsCount:u,isComplete:p}=g2({survey:c,values:a,currentPageIndex:e}),x=f4({pageStartTime:performance.now(),sessionStartTime:performance.now(),maxVisitedPageIndex:0,validationAttempt:{},backtrackSnapshots:{},hasLoggedSummary:!1,validationErrorsCount:0,backtrackCount:0,validationHistory:[]}),f=d1(x),H=z1(s,a),P=v1(s,a,x),B={survey:c,session:t,pages:s,currentPageIndex:e,setCurrentPageIndex:h,values:a,setValues:l,validationErrors:i,setValidationErrors:r,paginationRefs:x,trackPageTime:f,trackOptionalSkips:H,checkBacktrackChanges:P,submit:n,totalQuestionsCount:L};e1(B),i1(B);let m=s1(B),V=h1(B),S=n1(B),y=o1(B,S);return{currentPageIndex:e,values:a,validationErrors:i,currentQuestions:o,pages:s,onChange:m,onBack:V,onNext:y,onSubmit:S,progressPercentage:z,totalQuestionsCount:L,answeredQuestionsCount:u,isComplete:p,submitting:d,submitError:g,submitData:C}}function F4({options:c}={}){M.setEnabled(c?.debug??!1);let{survey:t,session:a,fetching:l,fetchError:i}=_1({instanceId:c?.instanceId,language:c?.language,placeholders:c?.placeholders}),{currentPageIndex:r,values:e,validationErrors:h,currentQuestions:s,onBack:v,onNext:o,onSubmit:n,onChange:C,progressPercentage:d,submitting:g,submitError:z,submitData:L}=V2({survey:t,session:a}),u=w4(p=>{p.type==="NEXT"&&t&&r===t.pages.length-1&&(p={type:"SUBMIT"}),M.info(`Action dispatched: ${p.type}`,p);try{switch(p.type){case"NEXT":o();break;case"PREVIOUS":v();break;case"SUBMIT":n();break;case"CHANGE":C(p.payload.questionId,p.payload.value);break;default:break}}catch(x){M.error(`Error executing action: ${p.type}`,x)}},[o,v,n,C,t,r]);return{surveyQueryResults:{data:t,error:i,isLoading:l},submitSurveyResults:{data:L,error:z,isLoading:g},state:{currentPageIndex:r,currentQuestions:s,values:e,validationErrors:h,progressPercentage:d},onAction:u}}import x1 from"react";import D from"react";import S2 from"react";var u1={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},p1=S2.createContext&&S2.createContext(u1);var B4=["attr","size","title"];function H4(c,t){if(c==null)return{};var a,l,i=V4(c,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(c);for(l=0;l<r.length;l++)a=r[l],t.indexOf(a)===-1&&{}.propertyIsEnumerable.call(c,a)&&(i[a]=c[a])}return i}function V4(c,t){if(c==null)return{};var a={};for(var l in c)if({}.hasOwnProperty.call(c,l)){if(t.indexOf(l)!==-1)continue;a[l]=c[l]}return a}function G(){return G=Object.assign?Object.assign.bind():function(c){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var l in a)({}).hasOwnProperty.call(a,l)&&(c[l]=a[l])}return c},G.apply(null,arguments)}function A2(c,t){var a=Object.keys(c);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(c);t&&(l=l.filter(function(i){return Object.getOwnPropertyDescriptor(c,i).enumerable})),a.push.apply(a,l)}return a}function Q(c){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?A2(Object(a),!0).forEach(function(l){S4(c,l,a[l])}):Object.getOwnPropertyDescriptors?Object.defineProperties(c,Object.getOwnPropertyDescriptors(a)):A2(Object(a)).forEach(function(l){Object.defineProperty(c,l,Object.getOwnPropertyDescriptor(a,l))})}return c}function S4(c,t,a){return(t=A4(t))in c?Object.defineProperty(c,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):c[t]=a,c}function A4(c){var t=y4(c,"string");return typeof t=="symbol"?t:t+""}function y4(c,t){if(typeof c!="object"||!c)return c;var a=c[Symbol.toPrimitive];if(a!==void 0){var l=a.call(c,t||"default");if(typeof l!="object")return l;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(c)}function y2(c){return c&&c.map((t,a)=>D.createElement(t.tag,Q({key:a},t.attr),y2(t.child)))}function w(c){return t=>D.createElement(b4,G({attr:Q({},c.attr)},t),y2(c.child))}function b4(c){var t=a=>{var{attr:l,size:i,title:r}=c,e=H4(c,B4),h=i||a.size||"1em",s;return a.className&&(s=a.className),c.className&&(s=(s?s+" ":"")+c.className),D.createElement("svg",G({stroke:"currentColor",fill:"currentColor",strokeWidth:"0"},a.attr,l,e,{className:s,style:Q(Q({color:c.color||a.color},a.style),c.style),height:h,width:h,xmlns:"http://www.w3.org/2000/svg"}),r&&D.createElement("title",null,r),c.children)};return p1!==void 0?D.createElement(p1.Consumer,null,a=>t(a)):t(u1)}function b2(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM164.1 325.5C182 346.2 212.6 368 256 368s74-21.8 91.9-42.5c5.8-6.7 15.9-7.4 22.6-1.6s7.4 15.9 1.6 22.6C349.8 372.1 311.1 400 256 400s-93.8-27.9-116.1-53.5c-5.8-6.7-5.1-16.8 1.6-22.6s16.8-5.1 22.6 1.6zM144.4 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z"},child:[]}]})(c)}function R2(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM164.1 325.5C182 346.2 212.6 368 256 368s74-21.8 91.9-42.5c5.8-6.7 15.9-7.4 22.6-1.6s7.4 15.9 1.6 22.6C349.8 372.1 311.1 400 256 400s-93.8-27.9-116.1-53.5c-5.8-6.7-5.1-16.8 1.6-22.6s16.8-5.1 22.6 1.6zm53.5-96.7s0 0 0 0c0 0 0 0 0 0l-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2c0 0 0 0 0 0c0 0 0 0 0 0s0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8c0 0 0 0 0 0s0 0 0 0zm160 0c0 0 0 0 0 0l-.2-.2c-.2-.2-.4-.5-.7-.9c-.6-.8-1.6-2-2.8-3.4c-2.5-2.8-6-6.6-10.2-10.3c-8.8-7.8-18.8-14-27.7-14s-18.9 6.2-27.7 14c-4.2 3.7-7.7 7.5-10.2 10.3c-1.2 1.4-2.2 2.6-2.8 3.4c-.3 .4-.6 .7-.7 .9l-.2 .2c0 0 0 0 0 0c0 0 0 0 0 0s0 0 0 0c-2.1 2.8-5.7 3.9-8.9 2.8s-5.5-4.1-5.5-7.6c0-17.9 6.7-35.6 16.6-48.8c9.8-13 23.9-23.2 39.4-23.2s29.6 10.2 39.4 23.2c9.9 13.2 16.6 30.9 16.6 48.8c0 3.4-2.2 6.5-5.5 7.6s-6.9 0-8.9-2.8c0 0 0 0 0 0s0 0 0 0s0 0 0 0z"},child:[]}]})(c)}function T2(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M0 256a256 256 0 1 0 512 0A256 256 0 1 0 0 256zm240 80c0-8.8 7.2-16 16-16c45 0 85.6 20.5 115.7 53.1c6 6.5 5.6 16.6-.9 22.6s-16.6 5.6-22.6-.9c-25-27.1-57.4-42.9-92.3-42.9c-8.8 0-16-7.2-16-16zm-80 80c-26.5 0-48-21-48-47c0-20 28.6-60.4 41.6-77.7c3.2-4.4 9.6-4.4 12.8 0C179.6 308.6 208 349 208 369c0 26-21.5 47-48 47zM367.6 208a32 32 0 1 1 -64 0 32 32 0 1 1 64 0zm-192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z"},child:[]}]})(c)}function M1(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM176.4 176a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm128 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM160 336l192 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-192 0c-8.8 0-16-7.2-16-16s7.2-16 16-16z"},child:[]}]})(c)}function k2(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM388.1 312.8c12.3-3.8 24.3 6.9 19.3 18.7C382.4 390.6 324.2 432 256.3 432s-126.2-41.4-151.1-100.5c-5-11.8 7-22.5 19.3-18.7c39.7 12.2 84.5 19 131.8 19s92.1-6.8 131.8-19zM144.4 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z"},child:[]}]})(c)}function P2(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM388.1 312.8c12.3-3.8 24.3 6.9 19.3 18.7C382.4 390.6 324.2 432 256.3 432s-126.2-41.4-151.1-100.5c-5-11.8 7-22.5 19.3-18.7c39.7 12.2 84.5 19 131.8 19s92.1-6.8 131.8-19zM208 192c0 35.3-14.3 64-32 64s-32-28.7-32-64s14.3-64 32-64s32 28.7 32 64zm128 64c-17.7 0-32-28.7-32-64s14.3-64 32-64s32 28.7 32 64s-14.3 64-32 64z"},child:[]}]})(c)}function Z2(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm407.4 75.5c5-11.8-7-22.5-19.3-18.7c-39.7 12.2-84.5 19-131.8 19s-92.1-6.8-131.8-19c-12.3-3.8-24.3 6.9-19.3 18.7c25 59.1 83.2 100.5 151.1 100.5s126.2-41.4 151.1-100.5zM160 120c-3.1 0-5.9 1.8-7.2 4.6l-16.6 34.7-38.1 5c-3.1 .4-5.6 2.5-6.6 5.5s-.1 6.2 2.1 8.3l27.9 26.5-7 37.8c-.6 3 .7 6.1 3.2 7.9s5.8 2 8.5 .6L160 232.5l33.8 18.3c2.7 1.5 6 1.3 8.5-.6s3.7-4.9 3.2-7.9l-7-37.8L226.4 178c2.2-2.1 3.1-5.3 2.1-8.3s-3.5-5.1-6.6-5.5l-38.1-5-16.6-34.7c-1.3-2.8-4.1-4.6-7.2-4.6zm192 0c-3.1 0-5.9 1.8-7.2 4.6l-16.6 34.7-38.1 5c-3.1 .4-5.6 2.5-6.6 5.5s-.1 6.2 2.1 8.3l27.9 26.5-7 37.8c-.6 3 .7 6.1 3.2 7.9s5.8 2 8.5 .6L352 232.5l33.8 18.3c2.7 1.5 6 1.3 8.5-.6s3.7-4.9 3.2-7.9l-7-37.8L418.4 178c2.2-2.1 3.1-5.3 2.1-8.3s-3.5-5.1-6.6-5.5l-38.1-5-16.6-34.7c-1.3-2.8-4.1-4.6-7.2-4.6z"},child:[]}]})(c)}function E2(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM159.3 388.7c-2.6 8.4-11.6 13.2-20 10.5s-13.2-11.6-10.5-20C145.2 326.1 196.3 288 256 288s110.8 38.1 127.3 91.3c2.6 8.4-2.1 17.4-10.5 20s-17.4-2.1-20-10.5C340.5 349.4 302.1 320 256 320s-84.5 29.4-96.7 68.7zM144.4 208a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm192-32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z"},child:[]}]})(c)}function D2(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM176.4 176a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm128 32a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm-122 174.5c-12.4 5.2-26.5-4.1-21.1-16.4c16-36.6 52.4-62.1 94.8-62.1s78.8 25.6 94.8 62.1c5.4 12.3-8.7 21.6-21.1 16.4c-22.4-9.5-47.4-14.8-73.7-14.8s-51.3 5.3-73.7 14.8z"},child:[]}]})(c)}function I2(c){return w({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM338.7 395.9c6.6-5.9 7.1-16 1.2-22.6C323.8 355.4 295.7 336 256 336s-67.8 19.4-83.9 37.3c-5.9 6.6-5.4 16.7 1.2 22.6s16.7 5.4 22.6-1.2c11.7-13 31.6-26.7 60.1-26.7s48.4 13.7 60.1 26.7c5.9 6.6 16 7.1 22.6 1.2zM176.4 272c17.7 0 32-14.3 32-32c0-1.5-.1-3-.3-4.4l10.9 3.6c8.4 2.8 17.4-1.7 20.2-10.1s-1.7-17.4-10.1-20.2l-96-32c-8.4-2.8-17.4 1.7-20.2 10.1s1.7 17.4 10.1 20.2l30.7 10.2c-5.8 5.8-9.3 13.8-9.3 22.6c0 17.7 14.3 32 32 32zm192-32c0-8.9-3.6-17-9.5-22.8l30.2-10.1c8.4-2.8 12.9-11.9 10.1-20.2s-11.9-12.9-20.2-10.1l-96 32c-8.4 2.8-12.9 11.9-10.1 20.2s11.9 12.9 20.2 10.1l11.7-3.9c-.2 1.5-.3 3.1-.3 4.7c0 17.7 14.3 32 32 32s32-14.3 32-32z"},child:[]}]})(c)}function U2(c){return w({tag:"svg",attr:{viewBox:"0 0 576 512"},child:[{tag:"path",attr:{d:"M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z"},child:[]}]})(c)}function q2(c){return w({tag:"svg",attr:{viewBox:"0 0 576 512"},child:[{tag:"path",attr:{d:"M528.1 171.5L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6zM388.6 312.3l23.7 138.4L288 385.4l-124.3 65.3 23.7-138.4-100.6-98 139-20.2 62.2-126 62.2 126 139 20.2-100.6 98z"},child:[]}]})(c)}var R4=["#dc2626","#e04832","#ea580c","#f59e0b","#eab308","#a3a323","#84cc16","#65a30d","#22c55e","#16a34a","#059669"],T4=[I2,T2,E2,D2,M1,M1,b2,R2,k2,P2,Z2],A={};for(let c=0;c<11;c++){let t=T4[c],a=R4[c];A[c+1]=x1.createElement(t,{className:"transition-transform",style:{color:a,fontSize:"28px"}})}var N2={3:[3,6,8],4:[3,4,7,9],5:[3,4,6,7,9],6:[3,4,6,7,9,11]};function k4(c,t){if(t<=1)return A[6];if(N2[t]){let i=N2[t][c];if(i)return A[i]}let a=c/(t-1),l=Math.min(11,Math.max(1,Math.round(a*10)+1));return A[l]}var P4={1:A[1],2:A[4],3:A[6],4:A[8],5:A[11]},Z4={filled:x1.createElement(U2,{style:{color:"#e20074",fontSize:"28px"}}),empty:x1.createElement(q2,{style:{color:"#d1d5db",fontSize:"28px",stroke:"#d1d5db",strokeWidth:"16px"}})};export{P4 as CsatEmojiMapping,A as CsatEmojiSet,Z4 as CsatStarIcons,k4 as getEmojiForIndex,F4 as useSurveySDK};
package/package.json CHANGED
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "name": "@explorer02/cfm-survey-sdk",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "main": "dist/index.js",
5
+ "module": "dist/index.mjs",
5
6
  "types": "dist/index.d.ts",
6
7
  "bin": {
7
8
  "cfm-sdk": "./dist/cli/index.js"
@@ -12,9 +13,8 @@
12
13
  "postinstall.js"
13
14
  ],
14
15
  "scripts": {
15
- "build": "tsc",
16
+ "build": "tsup",
16
17
  "lint": "tsc --noEmit",
17
- "prepare": "yarn build",
18
18
  "postinstall": "node postinstall.js",
19
19
  "test": "vitest run",
20
20
  "test:watch": "vitest"
@@ -26,10 +26,12 @@
26
26
  "@testing-library/jest-dom": "^6.4.2",
27
27
  "@testing-library/react": "^14.2.1",
28
28
  "@testing-library/user-event": "^14.5.2",
29
- "@types/react": "^19.1.6",
29
+ "@types/react": "^17.0.0",
30
30
  "@tanstack/react-query": "^5.0.0",
31
31
  "jsdom": "^24.0.0",
32
- "typescript": "^5.8.3",
33
- "vitest": "^1.3.1"
32
+ "tsup": "^8.0.2",
33
+ "typescript": "^6.0.0",
34
+ "vitest": "^1.3.1",
35
+ "react-icons": ">=5.0.0"
34
36
  }
35
- }
37
+ }