Module: ShopifyCLI::Messages

Defined in:
lib/shopify_cli/messages/messages.rb

Constant Summary collapse

MESSAGES =
{
  apps: {
    create: {
      info: {
        created: "{{v}} {{green:%s}} was created in the organization's Partner Dashboard {{underline:%s}}",
        serve: "{{*}} Change directories to your new project folder {{green:%s}} and run "\
        "{{command:%s app serve}} to start a local server",
        install: "{{*}} Then, visit {{underline:%s/test}} to install {{green:%s}} on your Dev Store",
      },
    },
  },
  core: {
    errors: {
      missing_node: "Node.js is required to continue. Install Node.js here: https://nodejs.org/en/download.",
      missing_npm: "npm is required to continue. Install npm here: https://www.npmjs.com/get-npm.",
      missing_ruby: "Ruby is required to continue. Install Ruby here: https://www.ruby-lang.org/en/downloads.",
      bundle_info_failure: "Error getting version for %s gem",
      option_parser: {
        invalid_option: "The option {{command:%s}} is not supported.",
        invalid_option_store_equals: "        The option {{command:%s}} isn't recognized.\n\n        Try this:\n        {{command:--store=%s}}.\n        MESSAGE\n        missing_argument: \"The required argument {{command:%s}} is missing.\",\n      },\n    },\n    app: {\n      help: <<~HELP,\n      Suite of commands for developing apps. See {{command:%1$s app <command> --help}} for usage of each command.\n        Usage: {{command:%1$s app [ %2$s ]}}\n      HELP\n      error: {\n        type_not_found: <<~MESSAGE,\n        Couldn't detect the app type in directory %s. We currently support Rails, PHP, and NodeJS apps.\n        MESSAGE\n        missing_shopify_cli_yml: <<~MESSAGE,\n        Couldn't find a \#{Constants::Files::SHOPIFY_CLI_YML} file in the directory %s to determine the app type.\n        MESSAGE\n        invalid_project_type: <<~MESSAGE,\n        The project type %s doesn't represent an app.\n        MESSAGE\n      },\n      create: {\n        type_required_error: \"\",\n        invalid_type: \"The type %s is not supported. The only supported types are\"\\\n          \" {{command:[ rails | node | php ]}}\",\n        help: <<~HELP,\n        {{command:%s app create}}: Creates a new project in a subdirectory.\n          Usage: {{command:%s app create [ rails | node | php ]}}\n        HELP\n        rails: {\n          help: <<~HELP,\n            {{command:%s app create rails}}: Creates a ruby on rails app.\n              Usage: {{command:%s app create rails}}\n              Options:\n                {{command:--name=NAME}} App name. Any string.\n                {{command:--organization-id=ID}} Partner organization ID. Must be an existing organization.\n                {{command:--store-domain=MYSHOPIFYDOMAIN }} Development store URL. Must be an existing development store.\n                {{command:--db=DB}} Database type. Must be one of: mysql, postgresql, sqlite3, oracle, frontbase, ibm_db, sqlserver, jdbcmysql, jdbcsqlite3, jdbcpostgresql, jdbc.\n                {{command:--rails-opts=RAILSOPTS}} Additional options. Must be a string containing one or more valid Rails options, separated by spaces.\n          HELP\n\n          error: {\n            invalid_ruby_version: \"This project requires a Ruby version ~> 2.5 or Ruby 3.0.\",\n            dir_exists: \"Project directory %s already exists. Please use a different name.\",\n            install_failure: \"Error installing %s gem\",\n            node_required: \"node is required to create a rails project. Download at https://nodejs.org/en/download.\",\n            node_version_failure: \"Failed to get the current node version. Please make sure it is installed as \" \\\n              \"per the instructions at https://nodejs.org/en.\",\n            yarn_required: \"yarn is required to create a rails project. Download at \" \\\n              \"https://classic.yarnpkg.com/en/docs/install.\",\n            yarn_version_failure: \"Failed to get the current yarn version. Please make sure it is \" \\\n              \"installed as per the instructions at https://classic.yarnpkg.com/en/docs/install.\",\n          },\n\n          info: {\n            open_new_shell: \"{{*}} {{yellow:After installing %s, please open a new Command Prompt or PowerShell \" \\\n              \"window to continue.}}\",\n          },\n          installing_bundler: \"Installing bundler\u2026\",\n          generating_app: \"Generating new rails app project in %s\u2026\",\n          adding_shopify_gem: \"{{v}} Adding shopify_app gem\u2026\",\n          node_version: \"node %s\",\n          yarn_version: \"yarn %s\",\n          running_bundle_install: \"Running bundle install\u2026\",\n          running_generator: \"Running shopify_app generator\u2026\",\n          running_migrations: \"Running migrations\u2026\",\n          running_webpacker_install: \"Running webpacker:install\u2026\",\n        },\n        node: {\n          help: <<~HELP,\n            {{command:%s app create node}}: Creates an embedded nodejs app.\n              Usage: {{command:%s app create node}}\n              Options:\n                {{command:--name=NAME}} App name. Any string.\n                {{command:--organization-id=ID}} Partner organization ID. Must be an existing organization.\n                {{command:--store-domain=MYSHOPIFYDOMAIN }} Development store URL. Must be an existing development store.\n          HELP\n          error: {\n            node_required: \"node is required to create an app project. Download at https://nodejs.org/en/download.\",\n            npm_required: \"npm is required to create an app project. Download at https://www.npmjs.com/get-npm.\",\n            npm_version_failure: \"Failed to get the current npm version. Please make sure it is installed as per \" \\\n              \"the instructions at https://www.npmjs.com/get-npm.\",\n          },\n          node_version: \"node %s\",\n          npm_version: \"npm %s\",\n        },\n        php: {\n          help: <<~HELP,\n            {{command:%s app create php}}: Creates an embedded PHP app.\n              Usage: {{command:%s app create php}}\n              Options:\n                {{command:--name=NAME}} App name. Any string.\n                {{command:--organization-id=ID}} Partner organization ID. Must be an existing organization.\n                {{command:--store-domain=MYSHOPIFYDOMAIN}} Development store URL. Must be an existing development store.\n                {{command:--type=APPTYPE}} Whether this app is public or custom.\n                {{command:--verbose}} Output verbose information when installing dependencies.\n            HELP\n\n          error: {\n            php_required: <<~VERSION,\n              PHP is required to create an app project. For installation instructions, visit:\n                {{underline:https://www.php.net/manual/en/install.php}}\n              VERSION\n            php_version_failure: <<~VERSION,\n              Failed to get the current PHP version. Please make sure it is installed as per the instructions at:\n                {{underline:https://www.php.net/manual/en/install.php.}}\n              VERSION\n            php_version_too_low: \"Your PHP version is too low. Please use version %s or higher.\",\n            composer_required: <<~COMPOSER,\n              Composer is required to create an app project. Download at:\n                {{underline:https://getcomposer.org/download/}}\n              COMPOSER\n            npm_required: \"npm is required to create an app project. Download at https://www.npmjs.com/get-npm.\",\n            app_setup: \"Failed to set up the app\",\n          },\n\n          php_version: \"PHP %s\",\n          npm_version: \"npm %s\",\n          app_setting_up: \"Setting up app\u2026\",\n          app_set_up: \"App is now set up\",\n        },\n      },\n      deploy: {\n        help: <<~HELP,\n        Deploy the current app to a hosting service. Heroku ({{underline:https://www.heroku.com}}) is currently the only option, but more will be added in the future.\n          Usage: {{command:%s app deploy [ heroku ]}}\n        HELP\n        extended_help: <<~HELP,\n          {{bold:Subcommands:}}\n            {{cyan:heroku}}: Deploys the current app to Heroku.\n              Usage: {{command:%s app deploy heroku}}\n        HELP\n        error: {\n          missing_platform: <<~MESSAGE,\n          The platform argument is missing.\n            Usage: {{command:%s app deploy [ heroku ]}}\n          MESSAGE\n          invalid_platform: <<~MESSAGE,\n          The platform argument passed {{command:%s}} is not supported.\n            Usage: {{command:%s app deploy [ heroku ]}}\n          MESSAGE\n        },\n        heroku: {\n          downloading: \"Downloading Heroku CLI\u2026\",\n          downloaded: \"Downloaded Heroku CLI\",\n          installing: \"Installing Heroku CLI\u2026\",\n          installing_windows: \"Running Heroku CLI install wizard\u2026\",\n          installed: \"Installed Heroku CLI\",\n          authenticated_with_account: \"{{v}} Authenticated with Heroku as {{green:%s}}\",\n          authenticating: \"Authenticating with Heroku\u2026\",\n          authenticated: \"{{v}} Authenticated with Heroku\",\n          deploying: \"Deploying to Heroku\u2026\",\n          deployed: \"{{v}} Deployed to Heroku\",\n          php: {\n            post_deploy: <<~DEPLOYED,\n            {{v}} Deployed to Heroku, you can access your app at {{green:%s}}\n\n              If you're deploying this app for the first time, make sure to set up your database and your app's environment at {{bold:App dashboard -> Settings -> Config Vars}}.\n\n              When setting your config vars, don't forget to set up your database and the appropriate Laravel values for it, particularly {{bold:DB_CONNECTION and DB_DATABASE}}.\n            DEPLOYED\n            error: {\n              generate_app_key: \"Failed to generate Laravel APP_KEY\",\n            },\n          },\n          rails: {\n            db_check: {\n              validating: \"Validating application\u2026\",\n              checking: \"Checking database type\u2026\",\n              validated: \"Database type \\\"%s\\\" validated for platform \\\"Heroku\\\"\",\n              problem: \"A problem was encountered while checking your database type.\",\n              sqlite: <<~SQLITE,\n                Heroku does not support deployment using the SQLite database system.\n                Change the database type using {{command:rails db:system:change --to=[new_db_type]}}. For more info:\n                {{underline:https://gorails.com/episodes/rails-6-db-system-change-command}}\n              SQLITE\n            },\n          },\n          git: {\n            checking: \"Checking git repo\u2026\",\n            initialized: \"Git repo initialized\",\n            what_branch: \"What branch would you like to deploy?\",\n            branch_selected: \"{{v}} Git branch {{green:%s}} selected for deploy\",\n          },\n          app: {\n            no_apps_found: \"No existing Heroku app found. What would you like to do?\",\n            name: \"What is your Heroku app\u2019s name?\",\n            select: \"Specify an existing Heroku app\",\n            selecting: \"Selecting Heroku app %s\u2026\",\n            selected: \"{{v}} Heroku app {{green:%s}} selected\",\n            create: \"Create a new Heroku app\",\n            creating: \"Creating new Heroku app\u2026\",\n            created: \"{{v}} New Heroku app created\",\n            setting_configs: \"Setting Shopify app configs\u2026\",\n            configs_set: \"{{v}} Shopify app configs set\",\n          },\n        },\n      },\n      connect: {\n        help: <<~HELP,\n        {{command:%s app connect}}: Connects an existing app to Shopify CLI. Creates a config file.\n          Usage: {{command:%s app connect}}\n        HELP\n        connected: \"Project now connected to {{green:%s}}\",\n        production_warning: <<~MESSAGE,\n          {{yellow:! Warning: if you have connected to an {{bold:app in production}}, running {{command:serve}} may update the app URL and cause an outage.\n        MESSAGE\n      },\n      tunnel: {\n        help: <<~HELP,\n          Start or stop an http tunnel to your local development app using ngrok.\n            Usage: {{command:%s app tunnel [ auth | start | stop ]}}\n        HELP\n        extended_help: <<~HELP,\n          {{bold:Subcommands:}}\n\n            {{cyan:auth}}: Writes an ngrok auth token to ~/.ngrok2/ngrok.yml to connect with an ngrok account. Visit https://dashboard.ngrok.com/signup to sign up.\n              Usage: {{command:%1$s app tunnel auth <token>}}\n\n            {{cyan:start}}: Starts an ngrok tunnel, will print the URL for an existing tunnel if already running.\n              Usage: {{command:%1$s app tunnel start}}\n\n            {{cyan:stop}}: Stops the ngrok tunnel.\n              Usage: {{command:%1$s app tunnel stop}}\n\n        HELP\n        error: {\n          token_argument_missing: \"{{x}} {{red:auth requires a token argument}}\\n\\n\",\n        },\n      },\n      serve: {\n        help: <<~HELP,\n          Start a local development server for your project, as well as a public ngrok tunnel to your localhost.\n            Usage: {{command:%s app serve}}\n        HELP\n        extended_help: <<~HELP,\n          {{bold:Options:}}\n            {{cyan:--host=HOST}}: Bypass running tunnel and use custom host. HOST must be HTTPS url.\n            {{cyan:--port=PORT}}: Use custom port.\n            {{cyan:--no-update}}: Skips the dashboard URL update step\n        HELP\n        open_info: <<~MESSAGE,\n          {{*}} To install and start using your app, open this URL in your browser:\n          {{green:%s}}\n        MESSAGE\n        running_server: \"Running server\u2026\",\n        error: {\n          host_must_be_https: \"HOST must be a HTTPS url.\",\n          invalid_port: \"%s is not a valid port.\",\n        },\n      },\n      open: {\n        help: <<~HELP,\n          Open your local development app in the default browser.\n            Usage: {{command:%s app open}}\n          HELP\n      },\n    },\n    extension: {\n      push: {\n        web_pixel_extension: {\n          error: {\n            file_read_error: \"There was a problem reading %s\",\n            missing_config_key_error: \"Configuration is missing key: %s\",\n            invalid_config_value_error: \"Configuration value is invalid: %s\",\n          },\n        },\n        checkout_ui_extension: {\n          localization: {\n            error: {\n              bundle_too_large: \"Total size of all locale files must be less than %s.\",\n              duplicate_locale_code: \"Duplicate locale found: `%s`; locale codes\"\\\n                \" should be unique and are case insensitive.\",\n              file_empty: \"Locale file `%s` is empty.\",\n              file_too_large: \"Locale file `%s` too large; size must be less than %s.\",\n              invalid_file_extension: \"Invalid locale filename: `%s`; only .json files are allowed.\",\n              invalid_locale_code: \"Invalid locale filename: `%s`; locale code should be 2 or 3 letters,\"\\\n                \" optionally followed by a two-letter region code, e.g. `fr-CA`.\",\n              invalid_file_encoding: \"Invalid file encoding for `%s`; file encoding should be UTF-8.\",\n              single_default_locale: \"There must be one and only one locale identified as the default locale,\"\\\n                \" e.g. `en.default.json`\",\n            },\n          },\n        },\n      },\n    },\n    error_reporting: {\n      unhandled_error: {\n        message: \"{{x}} {{red:An unexpected error occurred.}}\",\n        issue_message: \"{{red:\\tTo \\e]8;;%s\\e\\\\submit an issue\\e]8;;\\e\\\\\"\\\n          \" include the stack trace.}}\",\n        stacktrace_message: \"{{red:\\tTo print the stack trace, add the environment variable %s.}}\",\n      },\n      report_error: {\n        question: \"Send an anonymized error report to Shopify?\",\n        yes: \"Yes, send\",\n        no: \"No, don't send\",\n      },\n    },\n    analytics: {\n      enable_prompt: {\n        uncaught_error: {\n          question: \"Automatically send reports from now on?\",\n          yes: \"Yes, automatically send anonymized reports to Shopify\",\n          no: \"No, don't send\",\n        },\n        usage: {\n          question: \"Automatically send anonymized usage and error reports to Shopify? We use these\"\\\n            \" to make development on Shopify better.\",\n          yes: \"Yes, automatically send anonymized reports to Shopify\",\n          no: \"No, don't send\",\n        },\n      },\n    },\n    connect: {\n      already_connected_warning: \"{{yellow:! This app appears to be already connected}}\",\n      project_type_select: \"What type of project would you like to connect?\",\n      cli_yml_saved: \".shopify-cli.yml saved to project root\",\n    },\n\n    context: {\n      open_url: <<~OPEN,\n        Please open this URL in your browser:\n        {{green:%s}}\n      OPEN\n    },\n\n    env_file: {\n      saving_header: \"writing %s file\u2026\",\n      saving: \"writing %s file\",\n      saved: \"%s saved to project root\",\n    },\n\n    config: {\n      help: <<~HELP,\n        Change configuration of how the CLI operates\n          Usage: {{command:%s config [ feature | analytics ] }}\n      HELP\n      feature: {\n        help: <<~HELP,\n          Change configuration of various features\n            Usage: {{command:%s config [ feature ] [ feature_name ] }}\n        HELP\n        enabled: \"{{v}} feature {{green:%s}} has been enabled\",\n        disabled: \"{{v}} feature {{green:%s}} has been disabled\",\n        is_enabled: \"{{v}} feature {{green:%s}} is currently enabled\",\n        is_disabled: \"{{v}} feature {{green:%s}} is currently disabled\",\n      },\n      analytics: {\n        help: <<~HELP,\n          Opt in/out of anonymous usage reporting\n            Usage: {{command:%s config [ analytics ] }}\n        HELP\n        enabled: \"{{v}} analytics have been enabled\",\n        disabled: \"{{v}} analytics have been disabled\",\n        is_enabled: \"{{v}} analytics are currently enabled\",\n        is_disabled: \"{{v}} analytics are currently disabled\",\n      },\n    },\n\n    git: {\n      error: {\n        directory_exists: \"Project directory already exists. Please create a project with a new name.\",\n        no_branches_found: \"Could not find any git branches\",\n        nonexistent: \"Git needs to be installed: https://git-scm.com/download\",\n        repo_not_initiated:\n          \"Git repo is not initiated. Please run {{command:git init}} and make at least one commit.\",\n        no_commits_made: \"No git commits have been made. Please make at least one commit.\",\n        remote_not_added: \"Remote could not be added.\",\n        sparse_checkout_not_enabled: \"Sparse checkout could not be enabled.\",\n        sparse_checkout_not_set: \"Sparse checkout set command failed.\",\n        pull_failed: \"Pull failed.\",\n        pull_failed_bad_branch: \"Pull failed. Branch %s cannot be found. Check the branch name and try again.\",\n        merge_failed: \"The file %s merge failed.\",\n      },\n\n      cloning: \"Cloning %s into %s\u2026\",\n      cloned: \"{{v}} Cloned into %s\",\n      pulling_from_to: \"Pulling %s into %s\u2026\",\n      pulling: \"Pulling\u2026\",\n      pulled: \"Pulled into %s\",\n    },\n\n    help: {\n      error: {\n        command_not_found: \"Command %s not found.\",\n      },\n\n      preamble: <<~MESSAGE,\n        Use {{command:%s help <command>}} to display detailed information about a specific command.\n\n      MESSAGE\n    },\n\n    heroku: {\n      error: {\n        authentication: \"Could not authenticate with Heroku\",\n        creation: \"Heroku app could not be created\",\n        deploy: \"Could not deploy to Heroku\",\n        download: \"Heroku CLI could not be downloaded\",\n        install: \"Could not install Heroku CLI\",\n        could_not_select_app: \"Heroku app {{green:%s}} could not be selected\",\n        set_config: \"Failed to set config %s to %s in Heroku app\",\n        add_buildpacks: \"Failed to add buildpacks in Heroku app\",\n      },\n    },\n\n    js_deps: {\n      error: {\n        missing_package: \"expected to have a file at: %s\",\n        invalid_package: \"{{info:%s}} was not valid JSON. Fix this then try again\",\n        install_spinner_error: \"Unable to install all %d dependencies\",\n        install_error: \"An error occurred while installing dependencies\",\n      },\n\n      installing: \"Installing dependencies with %s\u2026\",\n      installed: \"Dependencies installed\",\n      npm_installing_deps: \"Installing %d dependencies\u2026\",\n      npm_installed_deps: \"%d npm dependencies installed\",\n    },\n\n    login: {\n      help: <<~HELP,\n        Log in to the Shopify CLI by authenticating with a store or partner organization\n          Usage: {{command:%s login [--store/-s STORE]}}\n      HELP\n      invalid_shop: <<~MESSAGE,\n        Invalid store provided (%s). Please provide the store in the following format: my-store.myshopify.com\n      MESSAGE\n      shop_prompt: <<~PROMPT,\n        What store are you connecting to? (e.g. my-store.myshopify.com; do {{bold:NOT}} include protocol part, e.g., https://)\n      PROMPT\n      spinner: {\n        initiating: \"Initiating authentication\",\n        finalizing: \"Finalizing authentication\",\n        loading_organizations: \"Loading available partner organizations\",\n      },\n    },\n\n    logout: {\n      help: <<~HELP,\n        Log out of an authenticated partner organization and store, or clear invalid credentials\n          Usage: {{command:%s logout}}\n      HELP\n\n      success: \"Successfully logged out of your account\",\n    },\n\n    switch: {\n      help: <<~HELP,\n        Switch between development stores in your partner organization\n          Usage: {{command:%s switch [--store/-s STORE]}}\n      HELP\n      disabled_as_shopify_org: \"Can't switch development stores logged in as {{green:Shopify partners org}}\",\n      success: \"Switched development store to {{green:%s}}\",\n    },\n    identity_auth: {\n      error: {\n        timeout: \"Timed out while waiting for response from Shopify\",\n        local_identity_not_running: \"Identity needs to be running locally in order to proceed.\",\n        reauthenticate: \"Please login again with {{command:shopify login}}\",\n        invalid_destination: \"The store %s doesn't exist. Please log out and try again.\",\n      },\n\n      location: {\n        admin: \"development store\",\n        partner: \"Shopify Partners account\",\n        shopifolk: \"{{green:Shopify Employee account}}\",\n      },\n      authentication_required:\n        \"{{i}} Authentication required. Login to the URL below with your %s credentials to continue.\",\n\n      servlet: {\n        success_response: \"You've successfully logged into the Shopify CLI!\",\n        invalid_request_response: \"Invalid request: %s\",\n        invalid_state_response: \"The anti-forgery state token does not match the initial request.\",\n      },\n      login_prompt: \"Please ensure you've logged in with {{command:%s login}} and try again\",\n      token_authentication: \"%s environment variable. We'll authenticate using its value as a token.\",\n    },\n\n    options: {\n      help_text: \"Print help for command\",\n    },\n\n    partners_api: {\n      org_name_and_id: \"%s (%s)\",\n      error: {\n        account_not_found: <<~MESSAGE,\n          {{x}} error: Your account was not found. Please sign up at https://partners.shopify.com/signup\n          For authentication issues, run {{command:%s logout}} to clear invalid credentials\n        MESSAGE\n      },\n    },\n\n    php_deps: {\n      error: {\n        missing_package: \"Expected to have a file at: %s\",\n        invalid_package: \"{{info:%s}} was not valid JSON. Fix this then try again\",\n        install: \"Failed to install %s packages\",\n        install_spinner_error: \"Unable to install all %d dependencies\",\n        install_error: \"An error occurred while installing dependencies\",\n      },\n\n      installing: \"Installing Composer dependencies\u2026\",\n      installed: \"Dependencies installed\",\n      installed_count: \"%d dependencies installed\",\n    },\n\n    api: {\n      error: {\n        failed_auth: \"Failed to authenticate with Shopify. Please try again later.\",\n        failed_auth_debugging: \"{{red:Please provide this information with your report:}}\\n%s\\n\\n\",\n        forbidden: <<~FORBIDDEN,\n          Command not allowed with current login. Please check your login details with {{command:%s whoami}}. You may need to request additional permissions for this action.\n        FORBIDDEN\n        theme_access_invalid_password: \"Invalid password. Please check that it was generated from Theme Access app\"\\\n          \" for the current store.\",\n        theme_access_no_store: \"No store found. Please pass it through the environment variable SHOPIFY_SHOP\",\n        internal_server_error: \"{{red:{{x}} An unexpected error occurred on Shopify.}}\",\n        internal_server_error_debug: \"\\n{{red:Response details:}}\\n%s\\n\\n\",\n        invalid_url: \"Invalid URL: %s\",\n      },\n    },\n\n    populate: {\n      help: <<~HELP,\n        Populate a Shopify store with example customers, orders, or products.\n          Usage: {{command:%s populate [ customers | draftorders | products ]}}\n      HELP\n\n      extended_help: <<~HELP,\n        {{bold:Subcommands:}}\n\n          {{cyan:customers [options]}}: Add dummy customers to the specified store.\n            Usage: {{command:%1$s populate customers}}\n\n          {{cyan:draftorders [options]}}: Add dummy orders to the specified store.\n            Usage: {{command:%1$s populate draftorders}}\n\n          {{cyan:products [options]}}: Add dummy products to the specified store.\n            Usage: {{command:%1$s populate products}}\n\n        {{bold:Options:}}\n\n          {{cyan:--count [integer]}}: The number of dummy items to populate. Defaults to 5.\n          {{cyan:--silent}}: Silence the populate output.\n          {{cyan:--help}}: Display more options specific to each subcommand.\n\n        {{bold:Examples:}}\n\n          {{command:%1$s populate products}}\n            Populate your store with 5 additional products.\n\n          {{command:%1$s populate customers --count 30}}\n            Populate your store with 30 additional customers.\n\n          {{command:%1$s populate draftorders}}\n            Populate your store with 5 additional orders.\n\n          {{command:%1$s populate products --help}}\n            Display the list of options available to customize the {{command:%1$s populate products}} command.\n      HELP\n\n      error: {\n        no_shop: \"No store found. Please run {{command:%s login --store/-s STORE}} to login to a specific store\",\n      },\n\n      customer: {\n        added: \"%s added to {{green:%s}} at {{underline:%scustomers/%d}}\",\n      },\n\n      draft_order: {\n        added: \"DraftOrder added to {{green:%s}} at {{underline:%sdraft_orders/%d}}\",\n      },\n\n      options: {\n        header: \"{{bold:{{cyan:%s}} options:}}\",\n        count_help: \"Number of resources to generate\",\n      },\n\n      populating: \"Populating %d %ss\u2026\",\n\n      completion_message: <<~COMPLETION_MESSAGE,\n        Successfully added %d %s to {{green:%s}}\n        {{*}} View all %ss at {{underline:%s%ss}}\n      COMPLETION_MESSAGE\n\n      product: {\n        added: \"%s added to {{green:%s}} at {{underline:%sproducts/%d}}\",\n      },\n    },\n\n    project: {\n      error: {\n        not_in_project: <<~MESSAGE,\n          {{x}} You are not in a Shopify app project\n          {{yellow:{{*}}}}{{reset: Run}}{{cyan: shopify app create}}{{reset: to create your app}}\n        MESSAGE\n      },\n    },\n\n    yaml: {\n      error: {\n        not_hash: \"{{x}} %s was not a proper YAML file. Expecting a hash.\",\n        invalid: \"{{x}} %s contains invalid YAML: %s\",\n        not_found: \"{{x}} %s not found\",\n      },\n    },\n\n    project_type: {\n      error: {\n        cannot_override_core: \"Can't register duplicate core command '%s' from %s\",\n      },\n    },\n\n    system: {\n      help: <<~HELP,\n        Print details about the development system.\n          Usage: {{command:%s system [all]}}\n\n        {{cyan:all}}: displays more details about development system and environment\n\n      HELP\n\n      error: {\n        unknown_option: \"{{x}} {{red:unknown option '%s'}}\",\n      },\n\n      header: \"{{bold:Shopify CLI}}\",\n      shop_header: \"{{bold:Current Shop}}\",\n      const: \"%17s = %s\",\n      ruby_header: <<~RUBY_MESSAGE,\n        {{bold:Ruby (via RbConfig)}}\n          %s\n      RUBY_MESSAGE\n      rb_config: \"%-25s - RbConfig[\\\"%s\\\"]\",\n      command_header: \"{{bold:Commands}}\",\n      command_with_path: \"{{v}} %s, %s\",\n      command_not_found: \"{{x}} %s\",\n      ngrok_available: \"{{v}} ngrok, %s\",\n      ngrok_not_available: \"{{x}} ngrok NOT available\",\n      project: {\n        header: \"{{bold:In a {{cyan:%s}} project directory}}\",\n        command_with_path: \"{{v}} %s, %s, version %s\",\n        command_not_found: \"{{x}} %s\",\n        env_header: \"{{bold:Project environment}}\",\n        env_not_set: \"not set\",\n        env: \"%-18s = %s\",\n        no_env: \"{{x}} .env file not present\",\n      },\n      environment_header: \"{{bold:Environment}}\",\n      env: \"%-17s = %s\",\n      identity_header: \"{{bold:Identity}}\",\n      identity_is_shopifolk: \"{{v}} Checked user settings: you\u2019re Shopify staff!\",\n    },\n\n    store: {\n      help: <<~HELP,\n        Display current store.\n          Usage: {{command:%s store}}\n      HELP\n      shop: \"You're currently logged into {{green:%s}}\",\n    },\n\n    tasks: {\n      confirm_store: {\n        prompt: \"You are currently logged into {{green:%s}}. Do you want to proceed using this store?\",\n        confirmation: \"Proceeding using {{green:%s}}\",\n        cancelling: \"Cancelling\u2026\",\n      },\n      ensure_env: {\n        organization_select: \"To which partner organization does this project belong?\",\n        no_development_stores: <<~MESSAGE,\n          No development stores available.\n          Visit {{underline:https://partners.shopify.com/%d/stores}} to create one\n        MESSAGE\n        development_store_select: \"Which development store would you like to use?\",\n        app_select: \"To which app does this project belong?\",\n        no_apps: \"You have no apps to connect to, creating a new app.\",\n        app_name: \"App name\",\n        app_type: {\n          select: \"What type of app are you building?\",\n          select_public: \"Public: An app built for a wide merchant audience.\",\n          select_custom: \"Custom: An app custom built for a single client.\",\n          selected: \"App type {{green:%s}}\",\n        },\n      },\n      ensure_dev_store: {\n        could_not_verify_store: \"Couldn't verify your store. If you don't have a development store set up, \"\\\n          \"please create one in your Partners dashboard and run `shopify app connect`.\",\n        convert_to_dev_store: <<~MESSAGE,\n          Do you want to convert %s to a development store?\n          Doing this will allow you to install your app, but the store will become {{bold:transfer-disabled}}.\n          Learn more: https://shopify.dev/tutorials/transfer-a-development-store-to-a-merchant#transfer-disabled-stores\n          MESSAGE\n        transfer_disabled: \"{{v}} Transfer has been disabled on %s.\",\n      },\n      ensure_project_type: {\n        wrong_project_type: \"This command can only be run within %s projects.\",\n      },\n      update_dashboard_urls: {\n        updated: \"{{v}} Whitelist URLS updated in Partners Dashboard}}\",\n        update_error:\n          \"{{x}} error: For authentication issues, run {{command:%s logout}} to clear invalid credentials\",\n      },\n      select_org_and_shop: {\n        authentication_issue: \"For authentication issues, run {{command:%s logout}} to clear invalid credentials\",\n        create_store: \"Visit {{underline:https://partners.shopify.com/%s/stores}} to create one\",\n        development_store: \"Using development store {{green:%s}}\",\n        development_store_select: \"Select a development store\",\n        error: {\n          no_development_stores: \"{{x}} No Development Stores available.\",\n          no_organizations: \"No partner organizations available.\",\n          organization_not_found: \"Cannot find a partner organization with that ID\",\n          shopifolk_notice: <<~MESSAGE,\n            {{i}} As a {{green:Shopify}} employee, the authentication should take you to the Shopify Okta login,\n            NOT the partner account login. Please run {{command:%s logout}} and try again.\n          MESSAGE\n        },\n        first_party: \"Are you working on a {{green:Shopify project}} on behalf of the\"\\\n          \" {{green:Shopify partners org}}?\",\n        identified_as_shopify: \"We've identified you as a {{green:Shopify}} employee.\",\n        organization: \"Partner organization {{green:%s (%s)}}\",\n        organization_select: \"Select partner organization\",\n      },\n    },\n\n    tunnel: {\n      error: {\n        stop: \"ngrok tunnel could not be stopped. Try running {{command:killall -9 ngrok}}\",\n        url_fetch_failure: \"Unable to fetch external url\",\n        prereq_command_required: \"%1$s is required for installing ngrok. Please install %1$s using the appropriate\"\\\n          \" package manager for your system.\",\n        ngrok: \"Something went wrong with ngrok installation,\"\\\n          \"please make sure %s exists within %s before trying again\",\n        signup_required: \"A free ngrok account is required: {{underline:https://ngrok.com/signup}}. After you \"\\\n          \"signup, install your personal authorization token using {{command:%s app tunnel auth <token>}}.\",\n      },\n      installing: \"Installing ngrok\u2026\",\n      not_running: \"{{green:x}} ngrok tunnel not running\",\n      prereq_command_location: \"%s @ %s\",\n      start_with_account: \"{{v}} ngrok tunnel running at {{underline:%s}}, with account %s\",\n      stopped: \"{{green:x}} ngrok tunnel stopped\",\n      timed_out: \"{{x}} ngrok tunnel has timed out, restarting\u2026\",\n      will_timeout: \"{{*}} This tunnel will timeout in {{red:%s}}\",\n    },\n\n    version: {\n      help: <<~HELP,\n        Prints version number.\n          Usage: {{command:%s version}}\n      HELP\n    },\n\n    warning: {\n      development_version: <<~DEVELOPMENT,\n        {{*}} {{yellow:You are running a development version of the CLI at:}}\n          {{yellow:%s}}\n\n      DEVELOPMENT\n\n      new_version: <<~MESSAGE,\n        {{*}} {{yellow:A new version of Shopify CLI is available! You have version %s and the latest version is %s.\n\n          To upgrade, follow the instructions for the package manager you\u2019re using:\n          {{underline:https://shopify.dev/themes/tools/cli/upgrade-uninstall}}}}\n\n      MESSAGE\n\n      in_3_0_directory: <<~MESSAGE,\n        {{*}} {{yellow:You appear to be working with a CLI 3.0 project, but running a CLI 2.0 command. New syntax documentation: https://shopify.dev/apps/tools/cli/commands#command-syntax}}\n\n          For more information on CLI 3.0, see the documentation:\n          {{underline:https://shopify.dev/apps/tools/cli}}\n\n          Already have CLI 3.0 installed? Run it using your node package manager, as explained here:\n          {{underline:https://shopify.dev/apps/tools/cli/cli-2#running-shopify-cli-2-x-and-3-x-in-the-same-environment}}\n      MESSAGE\n\n      sunset: <<~MESSAGE,\n        {{*}} {{yellow:Note that CLI 2.x will be sunset on May 31, 2023.}}\n      MESSAGE\n\n      sunset_create_app: <<~MESSAGE,\n        {{*}} {{yellow:Note that this CLI 2.x command will be sunset on April 28, 2023. Check here for instructions on how to migrate over to CLI 3.x: {{underline:https://shopify.dev/apps/tools/cli/migrate}}.}}\n      MESSAGE\n\n      sunset_app: <<~MESSAGE,\n        {{*}} {{yellow:Note that CLI 2.x will be sunset on May 31, 2023. Check here for instructions on how to migrate over to CLI 3.x: {{underline:https://shopify.dev/apps/tools/cli/migrate}}.}}\n      MESSAGE\n\n      sunset_theme: <<~MESSAGE,\n        {{*}} {{yellow:Note that CLI 2.x will be sunset on May 31, 2023. Check here for instructions on how to migrate over to CLI 3.x: {{underline:https://shopify.dev/themes/tools/cli/migrate}}.}}\n      MESSAGE\n    },\n    reporting: {\n      help: <<~HELP,\n        Turns anonymous reporting on or off.\n          Usage: {{command:%s reporting on}}\n      HELP\n      invalid_argument: <<~MESSAGE,\n        {{command:%s reporting %s}} is not supported. The valid values are {{command:on}} or {{command:off}}\n      MESSAGE\n      missing_argument: <<~MESSAGE,\n        {{command:%s reporting}} expects an argument {{command:on}} or {{command:off}}\n      MESSAGE\n      turned_on_message: <<~MESSAGE,\n        Anonymized reports will be sent to Shopify.\n      MESSAGE\n      turned_off_message: <<~MESSAGE,\n        Turn on automatic reporting later with {{command:%s reporting on}}.\n      MESSAGE\n    },\n    whoami: {\n      help: <<~HELP,\n        Identifies which partner organization or store you are currently logged into.\n          Usage: {{command:%s whoami}}\n      HELP\n      not_logged_in: <<~MESSAGE,\n        It doesn't appear that you're logged in. You must log into a partner organization or a store staff account.\n\n        If trying to log into a store staff account, please use {{command:%s login --store/-s STORE}} to log in.\n      MESSAGE\n      logged_in_shop_only: <<~MESSAGE,\n        Logged into store {{green:%s}} as staff (no partner organizations available for this login)\n      MESSAGE\n      logged_in_partner_only: \"Logged into partner organization {{green:%s}}\",\n      logged_in_partner_and_shop: \"Logged into store {{green:%s}} in partner organization {{green:%s}}\",\n    },\n    error: \"Error\",\n    try_this: \"Try this\",\n  },\n}.freeze\n",