{"version":3,"mappings":"sSAYA,MAAMA,EAAc,IAAY,CAC9BC,EAAgB,MAAM,CACpB,aACA,yBACA,mBACA,6BACA,mBACA,KAAK,EAAE,CAAC,EACH,iBAAa,OAAO,WAAa,CAAC,EACzC,OAAO,UAAU,KAAK,CACpB,MAAO,mCACR,EACDC,EAAa,MAAM,CACjB,SAAU,iBACV,OAAU,4BACX,EAEDC,EAAU,MAAM,CACd,WAAY,UACZ,QAAY,CACV,KAAMC,EAAa,2BAA2B,EAChD,CACD,CACH,EAEMC,EAAc,IAAY,CAC9BJ,EAAgB,MAAM,CACpB,aACA,yBACA,mBACA,6BACA,mBACA,KAAK,EAAE,CAAC,EACH,iBAAa,OAAO,WAAa,CAAC,EACzC,OAAO,UAAU,KAAK,CACpB,MAAO,mCACR,EACDC,EAAa,MAAM,CACjB,SAAU,iBACV,OAAU,4BACX,EAEDC,EAAU,MAAM,CACd,WAAY,UACZ,QAAY,CACV,KAAMC,EAAa,2BAA2B,EAChD,CACD,CACH,EC5BK,IAAAE,OACHA,EAAA,QAAiB,UACjBA,EAAA,QAAiB,UACjBA,EAAA,SAAiB,WACjBA,EAAA,eAAiB,uBAJdA,OAAA,IAYL,MAAMC,EAAS,CAAC,CAAC,sBAAAC,EAAuB,cAAAC,EAAe,mBAAAC,KAC9CC,EAAQ,QAAAC,EAAA,IACb,OACE,wBACF,OAED,KAAMC,GACEC,EACL,CACE,IAAUD,EAAO,8BAA8B,EAC/C,OAAU,OACV,SAAU,OACV,KAAM,CACJ,sBAAAL,EACA,cAAAC,EAEA,mBAAAC,CAAA,CAEJ,EACA,CACE,qBAAsB,CAAC,CAAC,iBAAAK,KAAsB,CAC5C,OAAQA,EAAkB,CACxB,IAAK,KACL,IAAK,KACH,OAAOC,EAA2B,WACpC,QACE,OAAOA,EAA2B,eACtC,CACF,CAEJ,CACD,EACA,KAAK,KACI,CAAC,YAAa,SAAuB,EAC9C,EACA,MAAOC,GAAoB,CAC1B,GAAIA,aAA2B,MACvB,MAAAA,EAGF,MAAE,SAAAC,GAAaD,EACrB,OAAQC,EAAS,OAAQ,CACvB,IAAK,KACK,OAAC,YAAa,UAAwB,EAEhD,IAAK,KACK,OAAC,YAAa,sBAA8B,EAEtD,QACU,OAAC,YAAa,SAAuB,EACjD,CACD","names":["trackSignUp","Google_PageView","Google_Event","GA4_Event","PageInstance","trackSignIn","ResultTypeEnums","create","authentication_handle","email_address","sign_in_on_success","Promise","__vitePreload","Routes","q_ajax_3","http_status_code","AJAX_ERROR_HANDLER_ACTIONS","reason_or_error","response"],"ignoreList":[],"sources":["../../../app/assets/javascripts/app/authentication/tracking/index.ts","../../../app/assets/javascripts/app/resources/users/create/index.ts"],"sourcesContent":["\nimport Google_PageView from \"app/tracking/google/page_view\"\nimport Google_Event from \"app/tracking/google/event\"\nimport GA4_Event from \"app/tracking/google/google_analytics_4/event\"\nimport PageInstance from \"app/page_instance\"\n\ndeclare global {\n  interface Window {\n    dataLayer: object[] | null\n  }\n}\n\nconst trackSignUp = (): void => {\n  Google_PageView.track([\n    \"/fake-path\",\n    \"/apps/spacious-web-app\",\n    \"/pages/all-pages\",\n    \"/components/authentication\",\n    \"/events/sign_up\",\n  ].join(\"\"))\n  window.dataLayer = (window.dataLayer || [])\n  window.dataLayer.push({\n    event: \"app:authentication:authenticated\",\n  })\n  Google_Event.track({\n    category: \"Authentication\",\n    action:   \"Sign in / Sign up Success\",\n  })\n\n  GA4_Event.track({\n    event_name: \"sign_up\",\n    options:    {\n      page: PageInstance.currentPageNameForTracking(),\n    },\n  })\n}\n\nconst trackSignIn = (): void => {\n  Google_PageView.track([\n    \"/fake-path\",\n    \"/apps/spacious-web-app\",\n    \"/pages/all-pages\",\n    \"/components/authentication\",\n    \"/events/sign_in\",\n  ].join(\"\"))\n  window.dataLayer = (window.dataLayer || [])\n  window.dataLayer.push({\n    event: \"app:authentication:authenticated\",\n  })\n  Google_Event.track({\n    category: \"Authentication\",\n    action:   \"Sign in / Sign up Success\",\n  })\n\n  GA4_Event.track({\n    event_name: \"sign_in\",\n    options:    {\n      page: PageInstance.currentPageNameForTracking(),\n    },\n  })\n}\n\nexport {\n  trackSignUp,\n  trackSignIn,\n}\n","\n// region JS Imports\n\n// region External Modules\nimport Promise from \"plugins/bluebird/index\"\n/* eslint-enable no-unused-vars */\nimport {\n  q_ajax_3,\n  ERROR_HANDLER_ACTIONS as AJAX_ERROR_HANDLER_ACTIONS,\n} from \"app/utils/q_ajax/q_ajax_3\"\n// endregion External Modules\n\n// region Private Modules\n// endregion Private Modules\n\n// region Public Components\n// endregion Public Components\n\n// region Private Components\n// endregion Private Components\n\n// endregion JS Imports\n/* eslint-disable no-unused-vars */\n\n\ninterface Input {\n  authentication_handle: string,\n  email_address: string,\n  sign_in_on_success: boolean,\n}\n\n/* eslint-disable no-unused-vars */\nenum ResultTypeEnums {\n  SUCCESS =        \"SUCCESS\",\n  INVALID =        \"INVALID\",\n  CONFLICT =       \"CONFLICT\",\n  PARAMS_INVALID = \"INPUT_PARAMS_INVALID\",\n}\n/* eslint-enable no-unused-vars */\n\ninterface PromiseResolvePayload {\n  result_type: ResultTypeEnums,\n}\n\nconst create = ({authentication_handle, email_address, sign_in_on_success}: Input): Promise<PromiseResolvePayload> => {\n  return Promise.resolve(\n    import(\n      \"plugins/js-routes\"\n    )\n  )\n  .then((Routes) => {\n    return q_ajax_3(\n      {\n        url:      Routes.create_api_web_app_users_path(),\n        method:   \"POST\",\n        dataType: \"json\",\n        data: {\n          authentication_handle:  authentication_handle,\n          email_address:          email_address,\n\n          sign_in_on_success: sign_in_on_success,\n        },\n      },\n      {\n        custom_error_handler: ({http_status_code}) => {\n          switch (http_status_code) {\n            case 409:\n            case 422:\n              return AJAX_ERROR_HANDLER_ACTIONS.STOP_RETRY\n            default:\n              return AJAX_ERROR_HANDLER_ACTIONS.CONTINUE_RETRY\n          }\n        },\n      },\n    )\n  })\n  .then(() => {\n    return ({result_type: ResultTypeEnums.SUCCESS})\n  })\n  .catch((reason_or_error) => {\n    if (reason_or_error instanceof Error) {\n      throw reason_or_error\n    }\n\n    const { response } = reason_or_error\n    switch (response.status) {\n      case 409: {\n        return ({result_type: ResultTypeEnums.CONFLICT})\n      }\n      case 422: {\n        return ({result_type: ResultTypeEnums.PARAMS_INVALID})\n      }\n      default:\n        return ({result_type: ResultTypeEnums.INVALID})\n    }\n  })\n}\n\nexport {\n  create as default,\n  create,\n  ResultTypeEnums,\n}\n"],"file":"assets/index-CbMaKdel.js"}