@wix/cli-app 1.1.81 → 1.1.83

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 (84) hide show
  1. package/build/{AddPermissionCommand-SFC44F4N.js → AddPermissionCommand-5X3K4KUG.js} +2 -2
  2. package/build/{CreateVersionCommand-DMS7UHEW.js → CreateVersionCommand-XWWXAFOX.js} +3 -3
  3. package/build/{DevCommand-IMACMU76.js → DevCommand-EOEGQX2B.js} +14 -14
  4. package/build/{GenerateCommand-BXBYWPR6.js → GenerateCommand-IOFKL3RC.js} +1009 -868
  5. package/build/GenerateCommand-IOFKL3RC.js.map +1 -0
  6. package/build/{LogsCommand-DXPP2Y63.js → LogsCommand-23QQRT3D.js} +3 -3
  7. package/build/PreviewCommand-FBODGF7Y.js +19 -0
  8. package/build/ReleaseCommand-SNCMQQXK.js +28 -0
  9. package/build/{ReleaseCommand-ZZFTWS7J.js.map → ReleaseCommand-SNCMQQXK.js.map} +1 -1
  10. package/build/ServeCommand-SGREOUDA.js +43 -0
  11. package/build/ServeCommand-SGREOUDA.js.map +1 -0
  12. package/build/{build-5B2A76I7.js → build-PYB5PAZO.js} +8 -8
  13. package/build/{chunk-GCHPKOS2.js → chunk-3X2VYRBF.js} +13 -7
  14. package/build/chunk-3X2VYRBF.js.map +1 -0
  15. package/build/{chunk-R3BD56LW.js → chunk-4PXJSX4C.js} +2 -2
  16. package/build/{chunk-32DDGTGH.js → chunk-5TP6T6QK.js} +84 -17
  17. package/build/chunk-5TP6T6QK.js.map +1 -0
  18. package/build/{chunk-PJJ6F4A3.js → chunk-63VDDLLQ.js} +2 -2
  19. package/build/{chunk-6GF7ZOLW.js → chunk-AN77SZN2.js} +9 -11
  20. package/build/{chunk-6GF7ZOLW.js.map → chunk-AN77SZN2.js.map} +1 -1
  21. package/build/{chunk-RZHKF2FT.js → chunk-E4UNGBQY.js} +2 -2
  22. package/build/{chunk-JYPZQDKR.js → chunk-GGDJQXOX.js} +3 -3
  23. package/build/{chunk-3BX4VLQC.js → chunk-KLBXSZ6R.js} +3 -3
  24. package/build/{chunk-ZVADFZDF.js → chunk-QREADZZF.js} +5 -5
  25. package/build/{chunk-DBASREIW.js → chunk-SIJDKP2Q.js} +1312 -534
  26. package/build/chunk-SIJDKP2Q.js.map +1 -0
  27. package/build/{chunk-D7ONS7OD.js → chunk-TJFERWU7.js} +5 -5
  28. package/build/{chunk-VV2OOBF3.js → chunk-VB3AXXRP.js} +2 -2
  29. package/build/{chunk-OPFPQV74.js → chunk-VLQG5SQF.js} +79 -4
  30. package/build/{chunk-OPFPQV74.js.map → chunk-VLQG5SQF.js.map} +1 -1
  31. package/build/{chunk-LNBDMMJU.js → chunk-WNR36YTI.js} +2 -2
  32. package/build/{chunk-42T5NHSS.js → chunk-Y4GJ3NS4.js} +2 -2
  33. package/build/{chunk-S426UONM.js → chunk-ZCUJ356B.js} +2 -2
  34. package/build/{chunk-2Y6DEXNR.js → chunk-ZLLXHWZF.js} +957 -375
  35. package/build/{chunk-2Y6DEXNR.js.map → chunk-ZLLXHWZF.js.map} +1 -1
  36. package/build/{chunk-CYJERK24.js → chunk-ZOZ5LJV7.js} +7 -7
  37. package/build/{chunk-CYJERK24.js.map → chunk-ZOZ5LJV7.js.map} +1 -1
  38. package/build/cloudflare-runtime/entry.js +33 -9
  39. package/build/cloudflare-runtime/getRegisteredExtensions.js +33 -9
  40. package/build/index.js +34 -31
  41. package/build/index.js.map +1 -1
  42. package/build/platform-sdk/chunk-MM2KVUBI.js +2 -0
  43. package/build/platform-sdk/chunk-MM2KVUBI.js.map +1 -0
  44. package/build/platform-sdk/dashboard.js +1 -1
  45. package/build/platform-sdk/editor.js +1 -1
  46. package/build/platform-sdk/site.js +1 -1
  47. package/build/{preview-XTPTMI6C.js → preview-PIFWQKW3.js} +13 -14
  48. package/build/{preview-XTPTMI6C.js.map → preview-PIFWQKW3.js.map} +1 -1
  49. package/build/{release-MNTPIKSG.js → release-6Z6LMTRW.js} +15 -16
  50. package/build/{release-MNTPIKSG.js.map → release-6Z6LMTRW.js.map} +1 -1
  51. package/build/{render-command-HQXTOVW5.js → render-command-3G25G5MU.js} +6 -6
  52. package/build/src-MHMTXBSY.js +1120 -0
  53. package/build/src-MHMTXBSY.js.map +1 -0
  54. package/package.json +8 -7
  55. package/build/GenerateCommand-BXBYWPR6.js.map +0 -1
  56. package/build/PreviewCommand-IKMUVCVS.js +0 -20
  57. package/build/ReleaseCommand-ZZFTWS7J.js +0 -29
  58. package/build/ServeCommand-2ESXE2E2.js +0 -169
  59. package/build/ServeCommand-2ESXE2E2.js.map +0 -1
  60. package/build/chunk-32DDGTGH.js.map +0 -1
  61. package/build/chunk-3FL4P2SD.js +0 -92
  62. package/build/chunk-3FL4P2SD.js.map +0 -1
  63. package/build/chunk-DBASREIW.js.map +0 -1
  64. package/build/chunk-GCHPKOS2.js.map +0 -1
  65. package/build/platform-sdk/chunk-BGEA2LRQ.js +0 -2
  66. package/build/platform-sdk/chunk-BGEA2LRQ.js.map +0 -1
  67. /package/build/{AddPermissionCommand-SFC44F4N.js.map → AddPermissionCommand-5X3K4KUG.js.map} +0 -0
  68. /package/build/{CreateVersionCommand-DMS7UHEW.js.map → CreateVersionCommand-XWWXAFOX.js.map} +0 -0
  69. /package/build/{DevCommand-IMACMU76.js.map → DevCommand-EOEGQX2B.js.map} +0 -0
  70. /package/build/{LogsCommand-DXPP2Y63.js.map → LogsCommand-23QQRT3D.js.map} +0 -0
  71. /package/build/{PreviewCommand-IKMUVCVS.js.map → PreviewCommand-FBODGF7Y.js.map} +0 -0
  72. /package/build/{build-5B2A76I7.js.map → build-PYB5PAZO.js.map} +0 -0
  73. /package/build/{chunk-R3BD56LW.js.map → chunk-4PXJSX4C.js.map} +0 -0
  74. /package/build/{chunk-PJJ6F4A3.js.map → chunk-63VDDLLQ.js.map} +0 -0
  75. /package/build/{chunk-RZHKF2FT.js.map → chunk-E4UNGBQY.js.map} +0 -0
  76. /package/build/{chunk-JYPZQDKR.js.map → chunk-GGDJQXOX.js.map} +0 -0
  77. /package/build/{chunk-3BX4VLQC.js.map → chunk-KLBXSZ6R.js.map} +0 -0
  78. /package/build/{chunk-ZVADFZDF.js.map → chunk-QREADZZF.js.map} +0 -0
  79. /package/build/{chunk-D7ONS7OD.js.map → chunk-TJFERWU7.js.map} +0 -0
  80. /package/build/{chunk-VV2OOBF3.js.map → chunk-VB3AXXRP.js.map} +0 -0
  81. /package/build/{chunk-LNBDMMJU.js.map → chunk-WNR36YTI.js.map} +0 -0
  82. /package/build/{chunk-42T5NHSS.js.map → chunk-Y4GJ3NS4.js.map} +0 -0
  83. /package/build/{chunk-S426UONM.js.map → chunk-ZCUJ356B.js.map} +0 -0
  84. /package/build/{render-command-HQXTOVW5.js.map → render-command-3G25G5MU.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/messages.json"],"sourcesContent":["{\n \"create_version_command_def.option.version_type\": \"The type of version you would like to create\",\n \"create_version_command_def.option.approve_preview\": \"Approve preview automatically\",\n \"create_version_command_def.option.base_url\": \"The base url for when static files have been uploaded to an external cdn\",\n \"create_version_command_def.option.site\": \"The site id to use for Application Preview urls, defaults to the current selected development site\",\n \"dev_command_def.option.https\": \"Start local dev server on https\",\n \"app_preview_command_def.option.site\": \"The site id to use for Application Preview urls, defaults to the current selected development site\",\n \"app_preview_command_def.option.base_url\": \"The base url for when static files have been uploaded to an external cdn\",\n \"app_preview_command_def.option.json\": \"Output in JSON format\",\n \"general.loading\": \"Loading...\",\n \"general.no_site_id_configured\": \"You don't have a Development Site currently configured\",\n \"general.site_id_not_found\": \"Your currently configured Development Site was not found ({id})\\nThis may happen because the site was deleted or your access has been revoked.\\n\\nPlease select another Development Site to continue\",\n \"general.dashboard_page_text\": \"<0>Click here</0> to open your application in the Wix Dashboard\",\n \"general.dashboard_page_click_here\": \"Click here\",\n \"general.close_screen\": \"Press <0/> to close\",\n \"logs.backend.clear\": \"Press <0/> to clear\",\n \"general.open_page_error\": \"Failed to open the browser for <0>{title}</0>, use the following URL to open it in your browser:\",\n \"general.dashboard_pages_viewer.title\": \"Press a number key to open a dashboard page:\",\n \"general.dashboard_plugins_viewer.title\": \"Press a number key to open a dashboard plugin:\",\n \"general.dashboard_menu_plugins_viewer.title\": \"Press a number key to open a dashboard menu plugin:\",\n \"general.backend_api_viewer.title\": \"Press a number key to trigger an api:\",\n \"general.backend_plugin_viewer.title\": \"Press a number key to trigger an plugin:\",\n \"general.backend_events_viewer.title\": \"Press a number key to trigger an event:\",\n \"general.numeric_viewer.show_more\": \"View more...\",\n \"general.platform.site\": \"Site\",\n \"general.platform.unpublished_site\": \"Site (publish the site to enable site preview)\",\n \"general.platform.editor\": \"Editor\",\n \"general.platform.dashboard\": \"Dashboard\",\n \"general.platform.blocks_editor\": \"Blocks Editor\",\n \"general.platform.backend\": \"Backend\",\n \"general.platform.none\": \"Your project doesn't seem to have any extensions.\\n\\nExtensions are the building blocks of your app.\\nMake sure it is configured properly, or read our <0>documentation</0> to start developing your first extension.\",\n \"general.dev_site.current\": \"Current Development Site: {name}\",\n \"general.view_changes\": \"View your local changes: <0>(Press a key to open)</0>\",\n \"general.open_preview.title_single\": \"Open the preview on the\",\n \"general.open_preview.title_multiple\": \"Open the preview on:\",\n \"preview_command.creating_preview\": \"Creating a preview...\",\n \"preview_command.creating_preview_success\": \"Preview created successfully!\",\n \"preview_command.uploading_files\": \"Uploading your application files...\",\n \"preview_command.uploading_files_success\": \"Uploaded successfully!\",\n \"dev_command.site_provider.loading\": \"Resolving development site...\",\n \"preview_command.note_about_temporary_backend\": \"This preview URL will be available for three days. Afterward, you can create a new preview if you need to.\",\n \"dev_command.dev_environment.loading\": \"Starting dev environment...\",\n \"dev_command.dev_environment.started\": \"Development environment ready\",\n \"dev_command.dev_site.change\": \"(Press <0/> to switch)\",\n \"dev_command.dev_site.current\": \"Current Dev Site: <0>{siteName}</0>\",\n \"dev_command.site_selector.error\": \"Failed to change Development Site!\",\n \"dev_command.dashboard_pages_screen.select_label\": \"Select a dashboard page to open\",\n \"dev_command.dashboard_menu_plugin_screen.select_label\": \"Select a dashboard menu plugin to open\",\n \"dev_command.dashboard_page_plugin_screen.select_label\": \"Select a dashboard plugin to open\",\n \"dev_command.dashboard_modal_screen.select_label\": \"Select a dashboard modal to open\",\n \"dev_command.backend_apis_screen.select_label\": \"Select api to trigger\",\n \"dev_command.backend_events_screen.select_label\": \"Select event to trigger\",\n \"dev_command.backend_plugins_screen.select_label\": \"Select plugin to trigger\",\n \"dev_command.required_apps.loading\": \"Checking required apps...\",\n \"dev_command.required_apps.warning\": \"Make sure you have {requiredAppNames} installed on your site\",\n \"dev_command.config_change\": \"Loading App Manifest changes...\",\n \"dev_command.config_update\": \"App Manifest updated. Refresh existing browser tabs to view the latest changes.\",\n \"dev_command.config_didnt_update\": \"No App Manifest update occurred\",\n \"dev_command.blocks.syncing_revision\": \"Syncing blocks editor changes locally...\",\n \"dev_command.blocks_revision_updated\": \"Wix Blocks revision has been updated. Your Blocks Editor widgets and panels are now synced with your local project.\",\n \"dev_command.blocks_editor_connected\": \"Blocks Editor connected\",\n \"dev_command.tunneling.confirm\": \"To proceed, we'll set up a secure tunnel from your machine for development purposes\",\n \"dev_command.tunneling.abort_dev\": \"Operation aborted. Tunneling is necessary to run your application.\",\n \"serve_command.starting_serve_environment\": \"Starting serve environment...\",\n \"serve_command.starting_serve_environment_success\": \"Serve environment started! <0/>\",\n \"serve_command.production_build\": \"Application is using a production build\",\n \"create_version_command.deprecated.description\": \"This command is deprecated, please use \\\"release\\\" command instead\",\n \"embedded_script.type.essential\": \"Essential\",\n \"embedded_script.type.essential.description\": \"Must load regardless of policy\",\n \"embedded_script.type.functional\": \"Functional\",\n \"embedded_script.type.functional.description\": \"Adds optional functionality to the site\",\n \"embedded_script.type.analytics\": \"Analytics\",\n \"embedded_script.type.analytics.description\": \"Adds analytics abilities to the site\",\n \"embedded_script.type.advertising\": \"Advertising\",\n \"embedded_script.type.advertising.description\": \"Adds advertising content or advertising tracking to the site\",\n \"embedded_script.placement.head\": \"Head\",\n \"embedded_script.placement.head.description\": \"In the document head\",\n \"embedded_script.placement.body_start\": \"Body Start\",\n \"embedded_script.placement.body_start.description\": \"Prepended in the body\",\n \"embedded_script.placement.body_end\": \"Body End\",\n \"embedded_script.placement.body_end.description\": \"Appended in the body\",\n \"generate_command.description\": \"Add new extensions to your application\",\n \"generate_command.go_back\": \"Press <0/> to go back to the previous step\",\n \"generate_command.flow.dashboard_category\": \"Dashboard\",\n \"generate_command.flow.site_category\": \"Site\",\n \"generate_command.flow.backend_category\": \"Backend\",\n \"generate_command.flow.dashboard_page\": \"Dashboard Page\",\n \"generate_command.flow.sidebar_category\": \"Sidebar Category\",\n \"generate_command.flow.dashboard_plugin\": \"Dashboard Plugin\",\n \"generate_command.flow.dashboard_menu_plugin\": \"Dashboard Menu Plugin\",\n \"generate_command.flow.embedded_script\": \"Embedded Script\",\n \"generate_command.flow.site_plugin\": \"Site Plugin\",\n \"generate_command.flow.event\": \"Event\",\n \"generate_command.flow.api.title\": \"API\",\n \"generate_command.flow.web_method.title\": \"Web Method\",\n \"generate_command.flow.dashboard_modal\": \"Dashboard Modal\",\n \"generate_command.flow.custom_element\": \"Site Widget\",\n \"generate_command.flow.service_plugin\": \"Service Plugin\",\n \"generate_command.flow.choose_flow\": \"What kind of extension would you like to generate?\",\n \"generate_command.generation.loading\": \"Generating {subject}...\",\n \"generate_command.generation.title\": \"Generated Successfully\",\n \"generate_command.generation.done\": \"🚀 The new {extensionType} has been generated successfully.\",\n \"generate_command.generation.ecommerce_notification\": \"ℹ️ eCommerce plugins can require more than one business solution to be installed. To add additional required business solutions, navigate to your app's dashboard.\",\n \"generate_command.generation.learn_more\": \"<0/> Learn more about {extensionType}: <1/>\",\n \"generate_command.generation.install_dependencies_question\": \"Would you like to install dependencies now?\",\n \"generate_command.generation.new_dependencies\": \"⚠️ New app dependencies have been added. Please run <0>{pkgManagerName} install</0> before continuing to work.\",\n \"generate_command.generation.dependencies_installed\": \"✅ Dependencies installed\",\n \"generate_command.dashboard_page.choose_route\": \"Enter the route for the new page:\",\n \"generate_command.dashboard_page.route_placeholder\": \"my-page\",\n \"generate_command.dashboard_page.choose_title\": \"Page title:\",\n \"generate_command.dashboard_page.title_placeholder\": \"My Page\",\n \"generate_command.dashboard_page.add_to_category\": \"Add to a sidebar category?\",\n \"generate_command.dashboard_page.choose_category\": \"Sidebar category:\",\n \"generate_command.sidebar_category.choose_label\": \"Enter the label for the new category:\",\n \"generate_command.sidebar_category.label_placeholder\": \"My App\",\n \"generate_command.site_widget_wizard.choose_extention.title\": \"Which framework do you want to use?\",\n \"generate_command.site_widget_wizard.choose_extention.info\": \"You can't change this after selection\",\n \"generate_command.site_widget_wizard.custom_element_option.title\": \"Custom Element\",\n \"generate_command.site_widget_wizard.custom_element_option.description\": \"Code with React and TypeScript (<0>read more</0>)\",\n \"generate_command.site_widget_wizard.blocks.title\": \"Blocks\",\n \"generate_command.site_widget_wizard.blocks.description\": \"Create your widgets using advanced design options in Blocks, then add code locally in your IDE (<0>read more</0>)\",\n \"generate_command.blocks.success\": \"Follow these steps to add Blocks widget:\\n1. Run npm run dev, then type 'B'. The Blocks Editor will open in a new tab.\\n2. Design your widget, then sync your design to local code files.\\n3. When you're done, go to your IDE and start developing your widget's code.\\n\\n<0>Read more</0>\",\n \"generate_command.custom_element.validation.element_exists\": \"The {extensionType} folder must be unique, please choose a name that has yet to be used in your application.\",\n \"generate_command.custom_element.validation.element_invalid\": \"The {extensionType} folder name must include a hyphen (-) and contain only lowercase letters and numbers.\",\n \"generate_command.custom_element.choose_folder\": \"Enter a folder name for your site widget:\",\n \"generate_command.custom_element.folder_placeholder\": \"my-widget\",\n \"generate_command.custom_element.choose_name\": \"Enter a name for your site widget:\",\n \"generate_command.custom_element.choose_name.error\": \"Enter a name that is shorter than 30 characters.\",\n \"generate_command.custom_element.name_placeholder\": \"My Widget\",\n \"generate_command.custom_element.link_dashboard_page\": \"Link dashboard page to custom element?\",\n \"generate_command.custom_element.choose_dashboard_page\": \"Choose dashboard page:\",\n \"generate_command.site_plugin.choose_folder\": \"Enter a folder name for your site plugin:\",\n \"generate_command.site_plugin.folder_placeholder\": \"my-site-plugin\",\n \"generate_command.site_plugin.choose_name\": \"Enter a name for your site plugin:\",\n \"generate_command.site_plugin.name_placeholder\": \"My Site Plugin\",\n \"generate_command.site_plugin.plugin_app\": \"Select a Wix app to view its plugin slots\",\n \"generate_command.site_plugin.plugin_app.description\": \"(<0>read more</0>)\",\n \"generate_command.site_plugin.choose_placement\": \"Select the slot in which you’d like to place your plugin\",\n \"generate_command.site_plugin.widget_docs\": \"<0>read more</0>\",\n \"generate_command.embedded_script.validation.script_exists\": \"The script folder must be unique, please choose a name that has not been used yet in your application.\",\n \"generate_command.embedded_script.validation.script_invalid\": \"The script folder must be a valid path ([a-z0-9-/]+) and must not start with a dot.\",\n \"generate_command.embedded_script.choose_folder\": \"Script folder (relative to src/site/embedded-scripts):\",\n \"generate_command.embedded_script.folder_placeholder\": \"my-script\",\n \"generate_command.embedded_script.choose_name\": \"Script name:\",\n \"generate_command.embedded_script.name_placeholder\": \"My Script\",\n \"generate_command.embedded_script.choose_type\": \"Script type:\",\n \"generate_command.embedded_script.type_info\": \"Determine if site visitors' consent is needed to run the script, <0>read more</0>\",\n \"generate_command.embedded_script.choose_placement\": \"Placement:\",\n \"generate_command.embedded_script.placement_info\": \"Will determine where the script is embedded\",\n \"generate_command.dashboard_modal.validation.folder_exists\": \"The modal folder must be unique, please choose a folder name that has not been used yet in your application.\",\n \"generate_command.dashboard_modal.validation.folder_invalid\": \"The modal folder must be a valid path ([a-z0-9-/]+) and must not start with a dot.\",\n \"generate_command.dashboard_modal.choose_folder\": \"Enter the folder name for the new modal:\",\n \"generate_command.dashboard_modal.folder_placeholder\": \"my-modal\",\n \"generate_command.dashboard_modal.choose_title\": \"Modal title:\",\n \"generate_command.dashboard_modal.title_placeholder\": \"My Modal\",\n \"generate_command.dashboard.plugin_app\": \"Select a Wix app to view its plugin slots\",\n \"generate_command.dashboard.plugin_app.description\": \"(<0>read more</0>)\",\n \"generate_command.dashboard_plugin.what_to_extend\": \"What would you like to extend?\",\n \"generate_command.dashboard_plugin.what_to_extend.description\": \"Plugins let you extend Wix apps by embedding your UI inside dedicated slots within a dashboard page (<0>read more</0>)\",\n \"generate_command.dashboard_plugin.what_to_extend.item_description\": \"<0>read more</0>\",\n \"generate_command.dashboard_plugin.choose_folder\": \"Plugin folder (relative to src/dashboard/plugins)\",\n \"generate_command.dashboard_plugin.folder_placeholder\": \"my-plugin\",\n \"generate_command.dashboard_plugin.choose_title\": \"Plugin title\",\n \"generate_command.dashboard_plugin.title_placeholder\": \"My Plugin\",\n \"generate_command.required_app\": \"Would you like to set {appsNames} as a requirement for your app?\",\n \"generate_command.required_app.description\": \"This means sites must have {appsNames} installed before installing your app (<0>read more</0>)\",\n \"generate_command.required_business_solution\": \"Select a business solution your extension requires\",\n \"generate_command.required_business_solution.loading\": \"Checking required apps...\",\n \"generate_command.required_business_solution.none\": \"None\",\n \"generate_command.required_business_solution.already_required\": \"app is already configured as required\",\n \"generate_command.required_business_solution.description\": \"(you can add more required business solutions later)\",\n \"generate_command.required_business_solution.error\": \"Unable to retrieve the required apps from the App Dashboard\",\n \"generate_command.required_business_solution.error.hint\": \"Please manually add required apps directly from the <0>app audience page</0>\",\n \"generate_command.dashboard_menu_plugin.what_to_extend\": \"What would you like to extend?\",\n \"generate_command.dashboard_menu_plugin.what_to_extend.description\": \"Menu Plugins let you extend Wix apps by adding a menu item in a pre-defined slot in a menu on a dashboard page (<0>read more</0>)\",\n \"generate_command.dashboard_menu_plugin.what_to_extend.item_description\": \"<0>read more</0>\",\n \"generate_command.dashboard_menu_plugin.what_to_do\": \"What action will happen after clicking on the menu item?\",\n \"generate_command.dashboard_menu_plugin.what_to_do.navigate_to_page\": \"Navigate to a page\",\n \"generate_command.dashboard_menu_plugin.what_to_do.open_modal\": \"Open a modal\",\n \"generate_command.dashboard_menu_plugin.what_to_do.navigate_to_page.choose_page\": \"Choose a page the menu item will navigate to:\",\n \"generate_command.dashboard_menu_plugin.what_to_do.navigate_to_page.choose_page.info\": \"Choose from a list of available pages in your project or manually add a page from a different app\",\n \"generate_command.dashboard_menu_plugin.what_to_do.navigate_to_page.choose_page.other\": \"Use a page from a different app\",\n \"generate_command.dashboard_menu_plugin.what_to_do.navigate_to_page.choose_page.other.choose_page_id\": \"What is the unique id of the page?\",\n \"generate_command.dashboard_menu_plugin.what_to_do.navigate_to_page.choose_page.other.page_id_invalid\": \"Page id has to be in the format of a uuid\",\n \"generate_command.dashboard_menu_plugin.what_to_do.open_modal.choose_component\": \"Choose the modal to open:\",\n \"generate_command.dashboard_menu_plugin.what_to_do.open_modal.choose_component.info\": \"Choose from a list of available modals in your project or manually add a modal from a different app\",\n \"generate_command.dashboard_menu_plugin.what_to_do.open_modal.choose_component.other\": \"Use a modal from a different app\",\n \"generate_command.dashboard_menu_plugin.what_to_do.open_modal.choose_component.other.choose_component_id\": \"What is the unique id of the modal?\",\n \"generate_command.dashboard_menu_plugin.what_to_do.open_modal.choose_component.other.component_id_invalid\": \"Modal id has to be in the format of a uuid\",\n \"generate_command.dashboard_menu_plugin.choose_folder\": \"Menu Plugin folder (relative to src/dashboard/menu-plugins)\",\n \"generate_command.dashboard_menu_plugin.folder_placeholder\": \"my-plugin\",\n \"generate_command.dashboard_menu_plugin.choose_title\": \"Menu Plugin title\",\n \"generate_command.dashboard_menu_plugin.title_placeholder\": \"My Plugin\",\n \"generate_command.api.api_placeholder\": \"my-api\",\n \"generate_command.api.choose_api_name\": \"How would you like to name your API?\",\n \"generate_command.api.choose_folder\": \"API folder (relative to src/backend/api):\",\n \"generate_command.api.choose_api_name.error\": \"API name must be unique, can not include special characters or spaces, and must be shorter than 20 characters\",\n \"generate_command.api.choose_method\": \"Choose an API method\",\n \"generate_command.web_method.choose_filename.placeholder\": \"backend/my-web-method\",\n \"generate_command.web_method.choose_filename\": \"Web Method file name (relative to the src folder):\",\n \"generate_command.web_method.choose_filename.error\": \"Web Method file name must be unique, can not include special characters or spaces, and must be shorter than 20 characters\",\n \"generate_command.event.choose_folder\": \"Event folder (relative to src/backend/events):\",\n \"generate_command.event.folder_placeholder\": \"my-event\",\n \"generate_command.event.choose_folder.error\": \"Event name must be unique, can not include special characters or spaces, and must be shorter than 20 characters\",\n \"generate_command.service_plugin.choose_type\": \"Which service plugin do you want to create\",\n \"generate_command.service_plugin.choose_name\": \"How would you like to name your service plugin\",\n \"generate_command.service_plugin.name_placeholder\": \"my-service-plugin\",\n \"generate_command.service_plugin.groups.stores\": \"Stores\",\n \"generate_command.service_plugin.ecom_additional_fees\": \"Ecom Additional Fees\",\n \"generate_command.service_plugin.ecom_shipping_rates\": \"Ecom Shipping Rates\",\n \"generate_command.service_plugin.ecom_discount_triggers\": \"Ecom Discount Triggers\",\n \"generate_command.service_plugin.ecom_validations\": \"Ecom Validations\",\n \"generate_command.service_plugin.ecom_payment_settings\": \"Ecom Payment Settings\",\n \"generate_command.service_plugin.ecom_gift_cards_provider\": \"Ecom Gift Cards Provider\",\n \"logs_command_def.option.version\": \"Specify the app version to fetch production logs from\",\n \"logs_command.connecting\": \"Connecting to the log server...\",\n \"logs_command.listening_to_logs\": \"Listening to logs from the server.\",\n \"logs_command.prod_env_logs\": \"Prod Environment logs for the version: {version}\",\n \"release_command_def.description\": \"Release a new version of your application\",\n \"release_command_def.option.site\": \"The site id to use for Application Preview urls, defaults to the current selected development site\",\n \"release_command_def.option.base_url\": \"The base url for when static files have been uploaded to an external cdn\",\n \"release_command_def.option.comment\": \"The comment for your release version, not visible by users\",\n \"release_command_def.option.version_type\": \"The type of version you would like to create\",\n \"release_command.loading_app_details\": \"Loading application details...\",\n \"release_command.creating_draft\": \"Updating draft application version\",\n \"release_command.check_preview_before_version_release\": \"Before creating a new version, let's create a preview of your app\",\n \"release_command.confirm_version_events_warning\": \"Your project includes backend events. Once you proceed, any changes to events will be immediately deployed to production and take effect automatically, even without a new version release.\",\n \"release_command.enter_release_comment\": \"Enter a comment describing any changes made to this version. This won't be shown to users (optional)\",\n \"release_command.release_comment_requirement\": \"The comment is limited to a maximum of 250 characters\",\n \"release_command.version_type_question\": \"What type of version would you like to create?\",\n \"release_command.next_steps\": \"Next Steps:\",\n \"release_command.open_stats\": \"<0/> View your app reviews and statistics in the <1>app dashboard</1>\",\n \"release_command.distribute_other\": \"<0/> Learn other ways to <1>distribute your app</1>\",\n \"release_command.distribute\": \"<0/> Choose your distribution method from the <1>app dashboard</1>\",\n \"release_command.version.minor\": \"Minor ({version})\",\n \"release_command.version.minor_disabled\": \"Minor\",\n \"release_command.version.minor.description\": \"update doesn’t require Wix user consent\",\n \"release_command.version.minor.disabled\": \"Recent changes you made require this release to be a major release. <0>Learn more</0>\",\n \"release_command.version.major\": \"Major ({version})\",\n \"release_command.version.major.description\": \"update requires Wix user consent\",\n \"release_command.confirm_version_creation\": \"Changes will be visible to your app users immediately and can’t be undone. Do you want to continue?\",\n \"release_command.releasing\": \"Releasing...\",\n \"release_command.released\": \"Version {version} was created\"\n}\n"],"mappings":"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","names":[]}
@@ -1,2 +0,0 @@
1
- import{b as x}from"./chunk-BGTZ3RNN.js";import{a as b,b as A,d as H}from"./chunk-7EYXEF6M.js";import{f as v}from"./chunk-SBZEOPXX.js";H();import{wixContext as N}from"@wix/sdk-context";var B=e=>{switch(e){case"get":case"GET":return"GET";case"post":case"POST":return"POST";case"put":case"PUT":return"PUT";case"delete":case"DELETE":return"DELETE";case"patch":case"PATCH":return"PATCH";case"head":case"HEAD":return"HEAD";case"options":case"OPTIONS":return"OPTIONS";default:throw new Error(`Unknown method: ${e}`)}},P=e=>a=>async s=>{let d,r=t=>{if(d=e(s)(t),d.url===void 0)throw new Error("Url was not successfully created for this request, please reach out to support channels for assistance.");let{method:i,url:o,params:p}=d;return{...d,method:B(i),url:o,data:d.data,params:p}};try{let t=await a.request(r);if(d===void 0)throw new Error("Request options were not created for this request, please reach out to support channels for assistance.");let i=Array.isArray(d.transformResponse)?d.transformResponse:[d.transformResponse],o=t.data;return i.forEach(p=>{p&&(o=p(t.data,t.headers))}),o}catch(t){throw typeof t=="object"&&t!==null&&"response"in t&&typeof t.response=="object"&&t.response!==null&&"data"in t.response?t.response.data:t}},M=e=>e.__isAmbassador?!0:!!e().__isAmbassador;var R="__metadata",w="www.wixapis.com";var g=class extends Error{constructor(s,d){super(s);v(this,"message");v(this,"response");this.message=s,this.response=d}async details(){let s=await this.response.json();return D(this.response.status,s?.message,s?.details,{requestId:this.response.headers.get("X-Wix-Request-Id"),details:s})}},D=(e,a,s,d)=>({details:{...!s?.validationError&&{applicationError:{description:a,code:e,data:d}},...s},message:a,requestId:d?.requestId});var C=e=>e?.method&&["post","put","patch"].includes(e.method.toLocaleLowerCase())&&e.body?{"Content-Type":"application/json"}:{},U=e=>e&&typeof e=="object"&&!Array.isArray(e);var j=e=>e.__type==="host";function I(e,a){return e.create(a)}var G="x-wix-bi-gateway";function S(e,a,s){return{[G]:F({environment:`js-sdk${s?`-${s}`:""}`,"package-name":e.packageName??a?.PACKAGE_NAME,"method-fqn":e.methodFqn,entity:e.entityFqdn})}}function F(e){return Object.entries(e).filter(([a,s])=>!!s).map(([a,s])=>`${a}=${s}`).join(",")}function W(e,a,s,d,r,t,i){return x(()=>e({request:async o=>{let p=o({host:t?.HTTPHost||w}),c=p;c.method==="GET"&&c.fallback?.length&&c.params.toString().length>4e3&&(c=p.fallback[0]);let y=`https://${t?.HTTPHost??w}${c.url}`;c.params&&c.params.toString()&&(y+=`?${c.params.toString()}`);try{let u=S(p,a,i),n=await s(y,{method:c.method,...c.data&&{body:JSON.stringify(c.data)},headers:{...u}});if(n.status!==200){let h=null;try{h=await n.json()}catch{}throw V(n.status,h?.message,h?.details,{requestId:n.headers.get("X-Wix-Request-Id"),details:h})}return{data:await n.json(),headers:n.headers,status:n.status,statusText:n.statusText}}catch(u){throw u.message?.includes("fetch is not defined")&&console.error("Node.js v18+ is required"),u}},fetchWithAuth:s,wixAPIFetch:d,getActiveToken:r}))}var V=(e,a,s,d)=>({response:{data:{details:{...!s?.validationError&&{applicationError:{description:a,code:e,data:d}},...s},message:a},status:e},responseId:d?.requestId});H();function _(){return{emit(e,...a){for(let s=0,d=this.events[e]||[],r=d.length;s<r;s++)d[s](...a)},events:{},on(e,a){return(this.events[e]||=[]).push(a),()=>{this.events[e]=this.events[e]?.filter(s=>a!==s)}}}}var q=e=>e.__type==="event-definition";function $(e,a,s,d){let r;if(e.isDomainEvent){let i=s,{deletedEvent:o,actionEvent:p,createdEvent:c,updatedEvent:f,...y}=i,u={...d,...y};o?o?.deletedEntity?r={entity:o?.deletedEntity,metadata:u}:r={metadata:u}:p?r={data:p.body,metadata:u}:r={entity:c?.entity??f?.currentEntity,metadata:u}}else r={data:s,metadata:d};let t=e.transformations??(i=>i);return a(t(r))}function J(e){let a=new Map,s=_(),d={...s,getRegisteredEvents:()=>a,async process(r,t={expectedEvents:[]}){let{eventType:i,identity:o,instanceId:p,payload:c}=await this.parseJWT(r),f=[...t.expectedEvents,...Array.from(a.keys()).map(u=>({type:u}))];if(f.length>0&&!f.some(({type:u})=>u===i))throw new Error(`Unexpected event type: ${i}. Expected one of: ${f.map(u=>u.type).join(", ")}`);let y=a.get(i)??[];return await Promise.all(y.map(({eventDefinition:u,handler:n})=>$(u,n,c,{instanceId:p,identity:o}))),{instanceId:p,eventType:i,payload:c,identity:o}},async processRequest(r,t){let i=await r.text();return this.process(i,t)},async parseJWT(r){if(!e.decodeJWT)throw new Error("decodeJWT is not supported by the authentication strategy");let{decoded:t,valid:i}=await e.decodeJWT(r);if(!i)throw new Error("JWT is not valid");if(typeof t.data!="string")throw new Error(`Unexpected type of JWT data: expected string, got ${typeof t.data}`);let o=JSON.parse(t.data),p=o.eventType,c=o.instanceId,f=o.identity?JSON.parse(o.identity):void 0,y=JSON.parse(o.data);return{instanceId:c,eventType:p,payload:y,identity:f}},async parseRequest(r){let t=await r.text();return this.parseJWT(t)},async executeHandlers(r){let t=Array.from(a.keys()).map(o=>({type:o}));if(t.length>0&&!t.some(({type:o})=>o===r.eventType))throw new Error(`Unexpected event type: ${r.eventType}. Expected one of: ${t.map(o=>o.type).join(", ")}`);let i=a.get(r.eventType)??[];await Promise.all(i.map(({eventDefinition:o,handler:p})=>$(o,p,r.payload,{instanceId:r.instanceId,identity:r.identity})))},apps:{AppInstalled:b("AppInstalled")(),AppRemoved:b("AppRemoved")()}};return{initModule(r){return t=>{let i=a.get(r.type)??[];i.push({eventDefinition:r,handler:t}),a.set(r.type,i),s.emit("registered",r)}},client:d}}var L=e=>e.__type==="service-plugin-definition";function O(e){let a=new Map,s=_(),d={...s,getRegisteredServicePlugins:()=>a,async parseJWT(r){if(!e.decodeJWT)throw new Error("decodeJWT is not supported by the authentication strategy");let{decoded:t,valid:i}=await e.decodeJWT(r,!0);if(!i)throw new Error("JWT is not valid");if(typeof t.data!="object"||t.data===null||!("metadata"in t.data)||typeof t.data.metadata!="object"||t.data.metadata===null||!("appExtensionType"in t.data.metadata)||typeof t.data.metadata.appExtensionType!="string")throw new Error("Unexpected JWT data: expected object with metadata.appExtensionType string");return t.data},async process(r){let t=await this.parseJWT(r.body);return this.executeHandler(t,r.url)},async parseRequest(r){let t=await r.text();return this.parseJWT(t)},async processRequest(r){let t=r.url,i=await r.text();try{let o=await this.process({url:t,body:i});return Response.json(o)}catch(o){if(o.errorType==="SPI"&&o.applicationCode&&o.httpCode)return Response.json({applicationError:{code:o.applicationCode,data:o.data}},{status:o.httpCode});throw o}},async executeHandler(r,t){let i=r.metadata.appExtensionType.toLowerCase(),o=a.get(i)??[];if(o.length===0)throw new Error(`No service plugin implementations found for component type ${i}`);if(o.length>1)throw new Error(`Multiple service plugin implementations found for component type ${i}. This is currently not supported`);let{implementation:p,servicePluginDefinition:c}=o[0],f=c.methods.find(u=>t.endsWith(u.primaryHttpMappingPath));if(!f)throw new Error("Unexpect request: request url did not match any method: "+t);let y=p[f.name];if(!y)throw new Error(`Got request for service plugin method ${f.name} but no implementation was provided. Available methods: ${Object.keys(p).join(", ")}`);return f.transformations.toREST(await y(f.transformations.fromREST(r)))}};return{initModule(r){return t=>{let i=a.get(r.componentType.toLowerCase())??[];i.push({servicePluginDefinition:r,implementation:t}),a.set(r.componentType.toLowerCase(),i),s.emit("registered",r)}},client:d}}function _e(e){let a=e.headers||{Authorization:""},s=e.auth||{getAuthHeaders:n=>Promise.resolve({headers:{}})},d=s.getAuthHeaders.bind(void 0,e.host);s.getAuthHeaders=d;let r=async(n,l)=>{if(typeof n=="string"||n instanceof URL)return fetch(n,{...l,headers:{...l?.headers,...(await d()).headers}});for(let[h,m]of Object.entries((await d()).headers))n.headers.set(h,m);return fetch(n,l)},{client:t,initModule:i}=O(s),{client:o,initModule:p}=J(s),c=async(n,l)=>{let h=await d(),m=C(l);return fetch(n,{...l,headers:{...m,...a,...h?.headers,...l?.headers,...e.host?.essentials?.passThroughHeaders}})},f=(n,l)=>{if(q(n))return p(n);if(L(n))return i(n);if(j(n)&&e.host)return I(n,e.host);if(typeof n=="function"){if("__type"in n&&n.__type===A)return n;let h=e.host?.apiBaseUrl??w;return W(x(()=>M(n))?P(n):n,l??{},c,(m,E)=>{let T=new URL(m,`https://${h}`);return T.host=h,T.protocol="https",c(T.toString(),E)},s.getActiveToken,{HTTPHost:h},e.host?.name)}else return U(n)?Object.fromEntries(Object.entries(n).map(([h,m])=>[h,f(m,n[R])])):n},y=n=>{for(let l in n)a[l]=n[l]};return{...e.modules?f(e.modules):{},auth:s,setHeaders:y,use:f,enableContext(n,l={elevated:!1}){n==="global"?globalThis.__wix_context__!=null?l.elevated?globalThis.__wix_context__.elevatedClient=this:globalThis.__wix_context__.client=this:l.elevated?globalThis.__wix_context__={elevatedClient:this}:globalThis.__wix_context__={client:this}:l.elevated?N.elevatedClient=this:N.client=this},fetch:(n,l)=>{let h=e.host?.apiBaseUrl??w,m=new URL(n,`https://${h}`);return m.host=h,m.protocol="https",c(m.toString(),l)},fetchWithAuth:r,async graphql(n,l,h={apiVersion:"alpha"}){let m=e?.host?.apiBaseUrl??w,E=await c(`https://${m}/graphql/${h.apiVersion}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({query:n,variables:l})});if(E.status!==200)throw new g(`GraphQL request failed with status ${E.status}`,E);let{data:T,errors:k}=await E.json();return{data:T??{},errors:k}},webhooks:o,servicePlugins:t}}export{_e as a};
2
- //# sourceMappingURL=chunk-BGEA2LRQ.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../node_modules/@wix/sdk/build/wixClient.js","../../../node_modules/@wix/sdk/build/ambassador-modules.js","../../../node_modules/@wix/sdk/build/common.js","../../../node_modules/@wix/sdk/build/fetch-error.js","../../../node_modules/@wix/sdk/build/helpers.js","../../../node_modules/@wix/sdk/build/host-modules.js","../../../node_modules/@wix/sdk/build/bi/biHeaderGenerator.js","../../../node_modules/@wix/sdk/build/rest-modules.js","../../../node_modules/@wix/sdk/build/event-handlers-modules.js","../../../node_modules/@wix/sdk/build/nanoevents.js","../../../node_modules/@wix/sdk/build/service-plugin-modules.js"],"sourcesContent":["import { wixContext } from '@wix/sdk-context';\nimport { SERVICE_PLUGIN_ERROR_TYPE, } from '@wix/sdk-types';\nimport { isAmbassadorModule, toHTTPModule } from './ambassador-modules.js';\nimport { DEFAULT_API_URL, PUBLIC_METADATA_KEY } from './common.js';\nimport { FetchErrorResponse } from './fetch-error.js';\nimport { getDefaultContentHeader, isObject } from './helpers.js';\nimport { buildHostModule, isHostModule } from './host-modules.js';\nimport { buildRESTDescriptor } from './rest-modules.js';\nimport { eventHandlersModules, isEventHandlerModule, } from './event-handlers-modules.js';\nimport { isServicePluginModule, servicePluginsModules, } from './service-plugin-modules.js';\nimport { runWithoutContext } from '@wix/sdk-runtime/context';\nexport function createClient(config) {\n const _headers = config.headers || { Authorization: '' };\n const authStrategy = config.auth ||\n {\n getAuthHeaders: (_) => Promise.resolve({ headers: {} }),\n };\n const boundGetAuthHeaders = authStrategy.getAuthHeaders.bind(undefined, config.host);\n authStrategy.getAuthHeaders = boundGetAuthHeaders;\n const fetchWithAuth = async (urlOrRequest, requestInit) => {\n if (typeof urlOrRequest === 'string' || urlOrRequest instanceof URL) {\n return fetch(urlOrRequest, {\n ...requestInit,\n headers: {\n ...requestInit?.headers,\n ...(await boundGetAuthHeaders()).headers,\n },\n });\n }\n else {\n for (const [k, v] of Object.entries((await boundGetAuthHeaders()).headers)) {\n urlOrRequest.headers.set(k, v);\n }\n return fetch(urlOrRequest, requestInit);\n }\n };\n const { client: servicePluginsClient, initModule: initServicePluginModule } = servicePluginsModules(authStrategy);\n const { client: eventHandlersClient, initModule: initEventHandlerModule } = eventHandlersModules(authStrategy);\n const boundFetch = async (url, options) => {\n const authHeaders = await boundGetAuthHeaders();\n const defaultContentTypeHeader = getDefaultContentHeader(options);\n return fetch(url, {\n ...options,\n headers: {\n ...defaultContentTypeHeader,\n ..._headers,\n ...authHeaders?.headers,\n ...options?.headers,\n ...config.host?.essentials?.passThroughHeaders,\n },\n });\n };\n // This is typed as `any` because when trying to properly type it as defined\n // on the WixClient, typescript starts failing with `Type instantiation is\n // excessively deep and possibly infinite.`\n const use = (modules, metadata) => {\n if (isEventHandlerModule(modules)) {\n return initEventHandlerModule(modules);\n }\n else if (isServicePluginModule(modules)) {\n return initServicePluginModule(modules);\n }\n else if (isHostModule(modules) && config.host) {\n return buildHostModule(modules, config.host);\n }\n else if (typeof modules === 'function') {\n // The generated namespaces all have the error classes on them and\n // a class is also a function, so we need to explicitly ignore these\n // error classes using a static field that exists on them.\n if ('__type' in modules && modules.__type === SERVICE_PLUGIN_ERROR_TYPE) {\n return modules;\n }\n const apiBaseUrl = config.host?.apiBaseUrl ?? DEFAULT_API_URL;\n return buildRESTDescriptor(runWithoutContext(() => isAmbassadorModule(modules))\n ? toHTTPModule(modules)\n : modules, metadata ?? {}, boundFetch, (relativeUrl, fetchOptions) => {\n const finalUrl = new URL(relativeUrl, `https://${apiBaseUrl}`);\n finalUrl.host = apiBaseUrl;\n finalUrl.protocol = 'https';\n return boundFetch(finalUrl.toString(), fetchOptions);\n }, authStrategy.getActiveToken, { HTTPHost: apiBaseUrl }, config.host?.name);\n }\n else if (isObject(modules)) {\n return Object.fromEntries(Object.entries(modules).map(([key, value]) => {\n return [key, use(value, modules[PUBLIC_METADATA_KEY])];\n }));\n }\n else {\n return modules;\n }\n };\n const setHeaders = (headers) => {\n for (const k in headers) {\n _headers[k] = headers[k];\n }\n };\n const wrappedModules = config.modules\n ? use(config.modules)\n : {};\n return {\n ...wrappedModules,\n auth: authStrategy,\n setHeaders,\n use,\n enableContext(contextType, opts = { elevated: false }) {\n if (contextType === 'global') {\n if (globalThis.__wix_context__ != null) {\n if (opts.elevated) {\n globalThis.__wix_context__.elevatedClient = this;\n }\n else {\n globalThis.__wix_context__.client = this;\n }\n }\n else {\n if (opts.elevated) {\n globalThis.__wix_context__ = { elevatedClient: this };\n }\n else {\n globalThis.__wix_context__ = { client: this };\n }\n }\n }\n else {\n if (opts.elevated) {\n wixContext.elevatedClient = this;\n }\n else {\n wixContext.client = this;\n }\n }\n },\n /**\n * @param relativeUrl The URL to fetch relative to the API base URL\n * @param options The fetch options\n * @returns The fetch Response object\n * @deprecated Use `fetchWithAuth` instead\n */\n fetch: (relativeUrl, options) => {\n const apiBaseUrl = config.host?.apiBaseUrl ?? DEFAULT_API_URL;\n const finalUrl = new URL(relativeUrl, `https://${apiBaseUrl}`);\n finalUrl.host = apiBaseUrl;\n finalUrl.protocol = 'https';\n return boundFetch(finalUrl.toString(), options);\n },\n fetchWithAuth,\n async graphql(query, variables, opts = {\n apiVersion: 'alpha',\n }) {\n const apiBaseUrl = config?.host?.apiBaseUrl ?? DEFAULT_API_URL;\n const res = await boundFetch(`https://${apiBaseUrl}/graphql/${opts.apiVersion}`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({ query, variables }),\n });\n if (res.status !== 200) {\n throw new FetchErrorResponse(`GraphQL request failed with status ${res.status}`, res);\n }\n const { data, errors } = await res.json();\n return { data: data ?? {}, errors };\n },\n webhooks: eventHandlersClient,\n servicePlugins: servicePluginsClient,\n };\n}\n","const parseMethod = (method) => {\n switch (method) {\n case 'get':\n case 'GET':\n return 'GET';\n case 'post':\n case 'POST':\n return 'POST';\n case 'put':\n case 'PUT':\n return 'PUT';\n case 'delete':\n case 'DELETE':\n return 'DELETE';\n case 'patch':\n case 'PATCH':\n return 'PATCH';\n case 'head':\n case 'HEAD':\n return 'HEAD';\n case 'options':\n case 'OPTIONS':\n return 'OPTIONS';\n default:\n throw new Error(`Unknown method: ${method}`);\n }\n};\nexport const toHTTPModule = (factory) => (httpClient) => async (payload) => {\n let requestOptions;\n const HTTPFactory = (context) => {\n requestOptions = factory(payload)(context);\n if (requestOptions.url === undefined) {\n throw new Error('Url was not successfully created for this request, please reach out to support channels for assistance.');\n }\n const { method, url, params } = requestOptions;\n return {\n ...requestOptions,\n method: parseMethod(method),\n url,\n data: requestOptions.data,\n params,\n };\n };\n try {\n const response = await httpClient.request(HTTPFactory);\n if (requestOptions === undefined) {\n throw new Error('Request options were not created for this request, please reach out to support channels for assistance.');\n }\n const transformations = Array.isArray(requestOptions.transformResponse)\n ? requestOptions.transformResponse\n : [requestOptions.transformResponse];\n /**\n * Based on Axios implementation:\n * https://github.com/axios/axios/blob/3f53eb6960f05a1f88409c4b731a40de595cb825/lib/core/transformData.js#L22\n */\n let data = response.data;\n transformations.forEach((transform) => {\n if (transform) {\n data = transform(response.data, response.headers);\n }\n });\n return data;\n }\n catch (e) {\n if (typeof e === 'object' &&\n e !== null &&\n 'response' in e &&\n typeof e.response === 'object' &&\n e.response !== null &&\n 'data' in e.response) {\n throw e.response.data;\n }\n throw e;\n }\n};\n/*\n * Because of issues with tree-shaking, we cant really put static parameter on module.\n * We still have check for __isAmbassador for backward compatibility\n */\nexport const isAmbassadorModule = (module) => {\n if (module.__isAmbassador) {\n return true;\n }\n const fn = module();\n return Boolean(fn.__isAmbassador);\n};\n","export const PUBLIC_METADATA_KEY = '__metadata';\nexport const DEFAULT_API_URL = 'www.wixapis.com';\nexport const FORCE_WRITE_API_URLS = ['/ecom/v1/carts/current'];\n","export class FetchErrorResponse extends Error {\n message;\n response;\n constructor(message, response) {\n super(message);\n this.message = message;\n this.response = response;\n }\n async details() {\n const dataError = await this.response.json();\n return errorBuilder(this.response.status, dataError?.message, dataError?.details, {\n requestId: this.response.headers.get('X-Wix-Request-Id'),\n details: dataError,\n });\n }\n}\nconst errorBuilder = (code, description, details, data) => {\n return {\n details: {\n ...(!details?.validationError && {\n applicationError: {\n description,\n code,\n data,\n },\n }),\n ...details,\n },\n message: description,\n requestId: data?.requestId,\n };\n};\n","// we follow a simplified version of the axios convention\n// https://github.com/axios/axios/blob/649d739288c8e2c55829ac60e2345a0f3439c730/lib/defaults/index.js#L65\nexport const getDefaultContentHeader = (options) => {\n if (options?.method &&\n ['post', 'put', 'patch'].includes(options.method.toLocaleLowerCase()) &&\n options.body) {\n return { 'Content-Type': 'application/json' };\n }\n return {};\n};\nexport const isObject = (val) => val && typeof val === 'object' && !Array.isArray(val);\nexport function parsePublicKeyIfEncoded(publicKey) {\n if (publicKey.includes('\\n') || publicKey.includes('\\r')) {\n // publicKey is multi-line string, can be used as is\n return publicKey.trim();\n }\n else {\n // publicKey is base64 encoded\n return typeof atob !== 'undefined'\n ? atob(publicKey)\n : Buffer.from(publicKey, 'base64').toString('utf-8');\n }\n}\n","export const isHostModule = (val) => val.__type === 'host';\nexport function buildHostModule(val, host) {\n return val.create(host);\n}\n","export const WixBIHeaderName = 'x-wix-bi-gateway';\nexport function biHeaderGenerator(apiMetadata, publicMetadata, environment) {\n return {\n [WixBIHeaderName]: objectToKeyValue({\n environment: `js-sdk${environment ? `-${environment}` : ``}`,\n 'package-name': apiMetadata.packageName ?? publicMetadata?.PACKAGE_NAME,\n 'method-fqn': apiMetadata.methodFqn,\n entity: apiMetadata.entityFqdn,\n }),\n };\n}\nfunction objectToKeyValue(input) {\n return Object.entries(input)\n .filter(([_, value]) => Boolean(value))\n .map(([key, value]) => `${key}=${value}`)\n .join(',');\n}\n","import { biHeaderGenerator } from './bi/biHeaderGenerator.js';\nimport { DEFAULT_API_URL } from './common.js';\nimport { runWithoutContext } from '@wix/sdk-runtime/context';\nexport function buildRESTDescriptor(origFunc, publicMetadata, boundFetch, wixAPIFetch, getActiveToken, options, hostName) {\n return runWithoutContext(() => origFunc({\n request: async (factory) => {\n const requestOptions = factory({\n host: options?.HTTPHost || DEFAULT_API_URL,\n });\n let request = requestOptions;\n if (request.method === 'GET' &&\n request.fallback?.length &&\n request.params.toString().length > 4000) {\n request = requestOptions.fallback[0];\n }\n const domain = options?.HTTPHost ?? DEFAULT_API_URL;\n let url = `https://${domain}${request.url}`;\n if (request.params && request.params.toString()) {\n url += `?${request.params.toString()}`;\n }\n try {\n const biHeader = biHeaderGenerator(requestOptions, publicMetadata, hostName);\n const res = await boundFetch(url, {\n method: request.method,\n ...(request.data && {\n body: JSON.stringify(request.data),\n }),\n headers: {\n ...biHeader,\n },\n });\n if (res.status !== 200) {\n let dataError = null;\n try {\n dataError = await res.json();\n }\n catch (e) {\n //\n }\n throw errorBuilder(res.status, dataError?.message, dataError?.details, {\n requestId: res.headers.get('X-Wix-Request-Id'),\n details: dataError,\n });\n }\n const data = await res.json();\n return {\n data,\n headers: res.headers,\n status: res.status,\n statusText: res.statusText,\n };\n }\n catch (e) {\n if (e.message?.includes('fetch is not defined')) {\n console.error('Node.js v18+ is required');\n }\n throw e;\n }\n },\n fetchWithAuth: boundFetch,\n wixAPIFetch,\n getActiveToken,\n }));\n}\nconst errorBuilder = (code, description, details, data) => {\n return {\n response: {\n data: {\n details: {\n ...(!details?.validationError && {\n applicationError: {\n description,\n code,\n data,\n },\n }),\n ...details,\n },\n message: description,\n },\n status: code,\n },\n responseId: data?.requestId,\n };\n};\n","import { EventDefinition, } from '@wix/sdk-types';\nimport { createNanoEvents } from './nanoevents.js';\nexport const isEventHandlerModule = (val) => val.__type === 'event-definition';\nexport function buildEventDefinition(eventDefinition, registerHandler) {\n return (handler) => {\n registerHandler(eventDefinition, handler);\n };\n}\nfunction runHandler(eventDefinition, handler, payload, baseEventMetadata) {\n let envelope;\n if (eventDefinition.isDomainEvent) {\n const domainEventPayload = payload;\n const { deletedEvent, actionEvent, createdEvent, updatedEvent, ...domainEventMetadata } = domainEventPayload;\n const metadata = {\n ...baseEventMetadata,\n ...domainEventMetadata,\n };\n if (deletedEvent) {\n if (deletedEvent?.deletedEntity) {\n envelope = {\n entity: deletedEvent?.deletedEntity,\n metadata,\n };\n }\n else {\n envelope = { metadata };\n }\n }\n else if (actionEvent) {\n envelope = {\n data: actionEvent.body,\n metadata,\n };\n }\n else {\n envelope = {\n entity: createdEvent?.entity ?? updatedEvent?.currentEntity,\n metadata,\n };\n }\n }\n else {\n envelope = {\n data: payload,\n metadata: baseEventMetadata,\n };\n }\n const transformFromRESTFn = eventDefinition.transformations ?? ((x) => x);\n return handler(transformFromRESTFn(envelope));\n}\nexport function eventHandlersModules(authStrategy) {\n const eventHandlers = new Map();\n const webhooksEmitter = createNanoEvents();\n const client = {\n ...webhooksEmitter,\n getRegisteredEvents: () => eventHandlers,\n async process(jwt, opts = {\n expectedEvents: [],\n }) {\n const { eventType, identity, instanceId, payload } = await this.parseJWT(jwt);\n const allExpectedEvents = [\n ...opts.expectedEvents,\n ...Array.from(eventHandlers.keys()).map((type) => ({ type })),\n ];\n if (allExpectedEvents.length > 0 &&\n !allExpectedEvents.some(({ type }) => type === eventType)) {\n throw new Error(`Unexpected event type: ${eventType}. Expected one of: ${allExpectedEvents\n .map((x) => x.type)\n .join(', ')}`);\n }\n const handlers = eventHandlers.get(eventType) ?? [];\n await Promise.all(handlers.map(({ eventDefinition, handler }) => runHandler(eventDefinition, handler, payload, {\n instanceId,\n identity,\n })));\n return {\n instanceId,\n eventType,\n payload,\n identity,\n };\n },\n async processRequest(request, opts) {\n const body = await request.text();\n return this.process(body, opts);\n },\n async parseJWT(jwt) {\n if (!authStrategy.decodeJWT) {\n throw new Error('decodeJWT is not supported by the authentication strategy');\n }\n const { decoded, valid } = await authStrategy.decodeJWT(jwt);\n if (!valid) {\n throw new Error('JWT is not valid');\n }\n if (typeof decoded.data !== 'string') {\n throw new Error(`Unexpected type of JWT data: expected string, got ${typeof decoded.data}`);\n }\n const parsedDecoded = JSON.parse(decoded.data);\n const eventType = parsedDecoded.eventType;\n const instanceId = parsedDecoded.instanceId;\n const identity = parsedDecoded.identity\n ? JSON.parse(parsedDecoded.identity)\n : undefined;\n const payload = JSON.parse(parsedDecoded.data);\n return {\n instanceId,\n eventType,\n payload,\n identity,\n };\n },\n async parseRequest(request) {\n const jwt = await request.text();\n return this.parseJWT(jwt);\n },\n async executeHandlers(event) {\n const allExpectedEvents = Array.from(eventHandlers.keys()).map((type) => ({ type }));\n if (allExpectedEvents.length > 0 &&\n !allExpectedEvents.some(({ type }) => type === event.eventType)) {\n throw new Error(`Unexpected event type: ${event.eventType}. Expected one of: ${allExpectedEvents\n .map((x) => x.type)\n .join(', ')}`);\n }\n const handlers = eventHandlers.get(event.eventType) ?? [];\n await Promise.all(handlers.map(({ eventDefinition, handler }) => runHandler(eventDefinition, handler, event.payload, {\n instanceId: event.instanceId,\n identity: event.identity,\n })));\n },\n apps: {\n AppInstalled: EventDefinition('AppInstalled')(),\n AppRemoved: EventDefinition('AppRemoved')(),\n },\n };\n return {\n initModule(eventDefinition) {\n return (handler) => {\n const handlers = eventHandlers.get(eventDefinition.type) ?? [];\n handlers.push({ eventDefinition, handler });\n eventHandlers.set(eventDefinition.type, handlers);\n webhooksEmitter.emit('registered', eventDefinition);\n };\n },\n client,\n };\n}\n","// Inlined from https://github.com/ai/nanoevents/blob/main/index.js\n/**\n * Create event emitter.\n *\n * ```js\n * import { createNanoEvents } from 'nanoevents'\n *\n * class Ticker {\n * constructor() {\n * this.emitter = createNanoEvents()\n * }\n * on(...args) {\n * return this.emitter.on(...args)\n * }\n * tick() {\n * this.emitter.emit('tick')\n * }\n * }\n * ```\n * @returns Event emitter.\n */\nexport function createNanoEvents() {\n return {\n emit(event, ...args) {\n for (let i = 0, callbacks = this.events[event] || [], length = callbacks.length; i < length; i++) {\n callbacks[i](...args);\n }\n },\n events: {},\n on(event, cb) {\n (this.events[event] ||= []).push(cb);\n return () => {\n this.events[event] = this.events[event]?.filter((i) => cb !== i);\n };\n },\n };\n}\n","import { createNanoEvents } from './nanoevents.js';\nexport const isServicePluginModule = (val) => val.__type === 'service-plugin-definition';\nexport function servicePluginsModules(authStrategy) {\n const servicePluginsImplementations = new Map();\n const servicePluginsEmitter = createNanoEvents();\n const client = {\n ...servicePluginsEmitter,\n getRegisteredServicePlugins: () => servicePluginsImplementations,\n async parseJWT(jwt) {\n if (!authStrategy.decodeJWT) {\n throw new Error('decodeJWT is not supported by the authentication strategy');\n }\n const { decoded, valid } = await authStrategy.decodeJWT(jwt, true);\n if (!valid) {\n throw new Error('JWT is not valid');\n }\n if (typeof decoded.data !== 'object' ||\n decoded.data === null ||\n !('metadata' in decoded.data) ||\n typeof decoded.data.metadata !== 'object' ||\n decoded.data.metadata === null ||\n !('appExtensionType' in decoded.data.metadata) ||\n typeof decoded.data.metadata.appExtensionType !== 'string') {\n throw new Error('Unexpected JWT data: expected object with metadata.appExtensionType string');\n }\n return decoded.data;\n },\n async process(request) {\n const servicePluginRequest = await this.parseJWT(request.body);\n return this.executeHandler(servicePluginRequest, request.url);\n },\n async parseRequest(request) {\n const body = await request.text();\n return this.parseJWT(body);\n },\n async processRequest(request) {\n const url = request.url;\n const body = await request.text();\n try {\n const implMethodResult = await this.process({ url, body });\n return Response.json(implMethodResult);\n }\n catch (err) {\n if (err.errorType === 'SPI' && err.applicationCode && err.httpCode) {\n return Response.json({ applicationError: { code: err.applicationCode, data: err.data } }, { status: err.httpCode });\n }\n throw err;\n }\n },\n async executeHandler(servicePluginRequest, url) {\n const componentType = servicePluginRequest.metadata.appExtensionType.toLowerCase();\n const implementations = servicePluginsImplementations.get(componentType) ?? [];\n if (implementations.length === 0) {\n throw new Error(`No service plugin implementations found for component type ${componentType}`);\n }\n else if (implementations.length > 1) {\n throw new Error(`Multiple service plugin implementations found for component type ${componentType}. This is currently not supported`);\n }\n const { implementation: impl, servicePluginDefinition } = implementations[0];\n const method = servicePluginDefinition.methods.find((m) => url.endsWith(m.primaryHttpMappingPath));\n if (!method) {\n throw new Error('Unexpect request: request url did not match any method: ' + url);\n }\n const implMethod = impl[method.name];\n if (!implMethod) {\n throw new Error(`Got request for service plugin method ${method.name} but no implementation was provided. Available methods: ${Object.keys(impl).join(', ')}`);\n }\n return method.transformations.toREST(await implMethod(method.transformations.fromREST(servicePluginRequest)));\n },\n };\n return {\n initModule(servicePluginDefinition) {\n return (implementation) => {\n const implementations = servicePluginsImplementations.get(servicePluginDefinition.componentType.toLowerCase()) ?? [];\n implementations.push({ servicePluginDefinition, implementation });\n servicePluginsImplementations.set(servicePluginDefinition.componentType.toLowerCase(), implementations);\n servicePluginsEmitter.emit('registered', servicePluginDefinition);\n };\n },\n client,\n };\n}\n"],"mappings":"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","names":["init_browser","wixContext","parseMethod","method","toHTTPModule","factory","httpClient","payload","requestOptions","HTTPFactory","context","url","params","response","transformations","data","transform","e","isAmbassadorModule","module","PUBLIC_METADATA_KEY","DEFAULT_API_URL","FetchErrorResponse","message","response","__publicField","dataError","errorBuilder","code","description","details","data","getDefaultContentHeader","options","isObject","val","isHostModule","val","buildHostModule","host","WixBIHeaderName","biHeaderGenerator","apiMetadata","publicMetadata","environment","objectToKeyValue","input","_","value","key","buildRESTDescriptor","origFunc","publicMetadata","boundFetch","wixAPIFetch","getActiveToken","options","hostName","runWithoutContext","factory","requestOptions","DEFAULT_API_URL","request","url","biHeader","biHeaderGenerator","res","dataError","errorBuilder","e","code","description","details","data","init_browser","createNanoEvents","event","args","i","callbacks","length","cb","isEventHandlerModule","val","runHandler","eventDefinition","handler","payload","baseEventMetadata","envelope","domainEventPayload","deletedEvent","actionEvent","createdEvent","updatedEvent","domainEventMetadata","metadata","transformFromRESTFn","x","eventHandlersModules","authStrategy","eventHandlers","webhooksEmitter","createNanoEvents","client","jwt","opts","eventType","identity","instanceId","allExpectedEvents","type","handlers","request","body","decoded","valid","parsedDecoded","event","EventDefinition","isServicePluginModule","val","servicePluginsModules","authStrategy","servicePluginsImplementations","servicePluginsEmitter","createNanoEvents","client","jwt","decoded","valid","request","servicePluginRequest","body","url","implMethodResult","err","componentType","implementations","impl","servicePluginDefinition","method","m","implMethod","implementation","createClient","config","_headers","authStrategy","_","boundGetAuthHeaders","fetchWithAuth","urlOrRequest","requestInit","k","v","servicePluginsClient","initServicePluginModule","servicePluginsModules","eventHandlersClient","initEventHandlerModule","eventHandlersModules","boundFetch","url","options","authHeaders","defaultContentTypeHeader","getDefaultContentHeader","use","modules","metadata","isEventHandlerModule","isServicePluginModule","isHostModule","buildHostModule","SERVICE_PLUGIN_ERROR_TYPE","apiBaseUrl","DEFAULT_API_URL","buildRESTDescriptor","runWithoutContext","isAmbassadorModule","toHTTPModule","relativeUrl","fetchOptions","finalUrl","isObject","key","value","PUBLIC_METADATA_KEY","setHeaders","headers","contextType","opts","wixContext","query","variables","res","FetchErrorResponse","data","errors"]}