Sha256: 99d10433964d19698315ca7d494b8b88903bbaae1b4c0b00a185f831e02c1d1b

Contents?: true

Size: 1.07 KB

Versions: 3

Compression:

Stored size: 1.07 KB

Contents

# frozen_string_literal: true
require "shopify_cli"

module Node
  module Commands
    class Generate < ShopifyCli::Command
      subcommand :Page, "page", Project.project_filepath("commands/generate/page")
      subcommand :Billing, "billing", Project.project_filepath("commands/generate/billing")
      subcommand :Webhook, "webhook", Project.project_filepath("commands/generate/webhook")

      def call(*)
        @ctx.puts(self.class.help)
      end

      def self.help
        ShopifyCli::Context.message("node.generate.help")
      end

      def self.extended_help
        help
      end

      def self.run_generate(script, name, ctx)
        stat = ctx.system(script)
        unless stat.success?
          ctx.abort(response(stat.exitstatus, name, ctx))
        end
      end

      def self.response(code, name, ctx)
        case code
        when 1
          ctx.message("node.generate.error.generic", name)
        when 2
          ctx.message("node.generate.error.name_exists", name)
        else
          ctx.message("node.error.generic")
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
shopify-cli-1.8.0 lib/project_types/node/commands/generate.rb
shopify-cli-1.7.1 lib/project_types/node/commands/generate.rb
shopify-cli-1.7.0 lib/project_types/node/commands/generate.rb