# frozen_string_literal: true require "liquid" require_relative "platformos_check/version" require_relative "platformos_check/bug" require_relative "platformos_check/exceptions" require_relative "platformos_check/json_helper" require_relative "platformos_check/app_file_rewriter" require_relative "platformos_check/app_file" require_relative "platformos_check/yaml_file" require_relative "platformos_check/translation_file" require_relative "platformos_check/schema_file" require_relative "platformos_check/config_file" require_relative "platformos_check/user_schema_file" require_relative "platformos_check/graphql_file" require_relative "platformos_check/graphql_traverser" require_relative "platformos_check/liquid_file" require_relative "platformos_check/page_file" require_relative "platformos_check/partial_file" require_relative "platformos_check/form_file" require_relative "platformos_check/layout_file" require_relative "platformos_check/migration_file" require_relative "platformos_check/sms_file" require_relative "platformos_check/email_file" require_relative "platformos_check/api_call_file" require_relative "platformos_check/asset_file" require_relative "platformos_check/json_file" require_relative "platformos_check/analyzer" require_relative "platformos_check/check" require_relative "platformos_check/checks_tracking" require_relative "platformos_check/liquid_check" require_relative "platformos_check/html_check" require_relative "platformos_check/yaml_check" require_relative "platformos_check/cli" require_relative "platformos_check/disabled_check" require_relative "platformos_check/disabled_checks" require_relative "platformos_check/regex_helpers" require_relative "platformos_check/json_helpers" require_relative "platformos_check/position_helper" require_relative "platformos_check/position" require_relative "platformos_check/checks" require_relative "platformos_check/config" require_relative "platformos_check/node" require_relative "platformos_check/tags/base_tag_methods" require_relative "platformos_check/tags/base" require_relative "platformos_check/tags/base_block" require_relative "platformos_check/tags/background" require_relative "platformos_check/tags/cache" require_relative "platformos_check/tags/context" require_relative "platformos_check/tags/export" require_relative "platformos_check/tags/form" require_relative "platformos_check/tags/function" require_relative "platformos_check/tags/graphql" require_relative "platformos_check/tags/hash_assign" require_relative "platformos_check/tags/log" require_relative "platformos_check/tags/parse_json" require_relative "platformos_check/tags/print" require_relative "platformos_check/tags/redirect_to" require_relative "platformos_check/tags/render" require_relative "platformos_check/tags/response_headers" require_relative "platformos_check/tags/response_status" require_relative "platformos_check/tags/return" require_relative "platformos_check/tags/session" require_relative "platformos_check/tags/sign_in" require_relative "platformos_check/tags/spam_protection" require_relative "platformos_check/tags/theme_render" require_relative "platformos_check/tags/try" require_relative "platformos_check/tags" require_relative "platformos_check/liquid_node" require_relative "platformos_check/html_node" require_relative "platformos_check/offense" require_relative "platformos_check/printer" require_relative "platformos_check/json_printer" require_relative "platformos_check/platformos_liquid" require_relative "platformos_check/string_helpers" require_relative "platformos_check/storage" require_relative "platformos_check/file_system_storage" require_relative "platformos_check/in_memory_storage" require_relative "platformos_check/app" require_relative "platformos_check/corrector" require_relative "platformos_check/liquid_visitor" require_relative "platformos_check/html_visitor" require_relative "platformos_check/language_server" Dir[__dir__ + "/platformos_check/checks/*.rb"].each { |file| require file } Encoding.default_external = Encoding::UTF_8 Encoding.default_internal = Encoding::UTF_8 module PlatformosCheck def self.debug? ENV["PLATFORMOS_CHECK_DEBUG"] == "true" end def self.debug_log_file ENV.fetch("PLATFORMOS_CHECK_DEBUG_LOG_FILE", nil) end def self.with_liquid_c_disabled if defined?(Liquid::C) was_enabled = Liquid::C.enabled Liquid::C.enabled = false if was_enabled end yield ensure Liquid::C.enabled = true if defined?(Liquid::C) && was_enabled end def self.log(message) bridge = LanguageServer::Bridge.new(LanguageServer::IOMessenger.new) bridge.log("###############\n #{message}\n##################") end end