Sha256: a2f613273d30bc51e2cae82c5b292fc3dc3138b7dd6ad4fdb42d073eabe1d6fe
Contents?: true
Size: 1.99 KB
Versions: 2
Compression:
Stored size: 1.99 KB
Contents
# typed: strict if defined?(::Rails) require 'js_routes/engine' end require 'js_routes/version' require "js_routes/configuration" require "js_routes/instance" require "js_routes/types" require 'active_support/core_ext/string/indent' require "digest/sha2" module JsRoutes extend T::Sig # # API # class << self include JsRoutes::Types extend T::Sig sig { params(block: ConfigurationBlock).void } def setup(&block) configuration.setup(&block) end sig { returns(JsRoutes::Configuration) } def configuration @configuration ||= T.let(Configuration.new, T.nilable(JsRoutes::Configuration)) end sig { params(opts: T.untyped).returns(String) } def generate(**opts) Instance.new(**opts).generate end sig { params(file_name: FileName, typed: T::Boolean, opts: T.untyped).void } def generate!(file_name = configuration.file, typed: false, **opts) Instance.new(file: file_name, **opts).generate! definitions!(file_name, **opts) if typed end sig { params(file_name: FileName, opts: T.untyped).void } def remove!(file_name = configuration.file, **opts) Instance.new(file: file_name, **opts).remove! end sig { params(opts: T.untyped).returns(String) } def definitions(**opts) generate(**opts, module_type: 'DTS') end sig { params(file_name: FileName, opts: T.untyped).void } def definitions!(file_name = nil, **opts) file_name ||= configuration.file file_name = file_name&.sub(%r{(\.d)?\.(j|t)s\Z}, ".d.ts") generate!(file_name, **opts, module_type: 'DTS') end sig { params(value: T.untyped).returns(String) } def json(value) ActiveSupport::JSON.encode(value) end sig { returns(String) } def digest Digest::SHA256.file( Rails.root.join("config/routes.rb") ).hexdigest end end module Generators end end require "js_routes/middleware" require "js_routes/generators/webpacker" require "js_routes/generators/middleware"
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
js-routes-2.3.4 | lib/js_routes.rb |
js-routes-2.3.3 | lib/js_routes.rb |