Module: LucidShopify

Defined in:
lib/lucid_shopify.rb,
lib/lucid_shopify/error.rb,
lib/lucid_shopify/types.rb,
lib/lucid_shopify/client.rb,
lib/lucid_shopify/config.rb,
lib/lucid_shopify/request.rb,
lib/lucid_shopify/version.rb,
lib/lucid_shopify/webhook.rb,
lib/lucid_shopify/response.rb,
lib/lucid_shopify/authorise.rb,
lib/lucid_shopify/container.rb,
lib/lucid_shopify/credentials.rb,
lib/lucid_shopify/get_request.rb,
lib/lucid_shopify/put_request.rb,
lib/lucid_shopify/post_request.rb,
lib/lucid_shopify/send_request.rb,
lib/lucid_shopify/webhook_list.rb,
lib/lucid_shopify/create_charge.rb,
lib/lucid_shopify/create_webhook.rb,
lib/lucid_shopify/delete_request.rb,
lib/lucid_shopify/delete_webhook.rb,
lib/lucid_shopify/verify_webhook.rb,
lib/lucid_shopify/activate_charge.rb,
lib/lucid_shopify/verify_callback.rb,
lib/lucid_shopify/throttled_strategy.rb,
lib/lucid_shopify/create_all_webhooks.rb,
lib/lucid_shopify/delete_all_webhooks.rb,
lib/lucid_shopify/webhook_handler_list.rb,
lib/lucid_shopify/redis_throttled_strategy.rb

Defined Under Namespace

Modules: Types Classes: ActivateCharge, Authorise, Client, Config, CreateAllWebhooks, CreateCharge, CreateWebhook, Credentials, DeleteAllWebhooks, DeleteRequest, DeleteWebhook, GetRequest, PostRequest, PutRequest, RedisThrottledStrategy, Request, Response, SendRequest, ThrottledStrategy, VerifyCallback, VerifyWebhook, Webhook, WebhookHandlerList, WebhookList

Constant Summary collapse

Error =

Subclass this class for all gem exceptions, so that callers may r escue any subclass with:

rescue LucidShopify::Error => e
Class.new(StandardError)
VERSION =
'0.33.0'
Container =
Dry::Container.new

Class Method Summary collapse

Class Method Details

.configConfig

Returns:



36
37
38
# File 'lib/lucid_shopify/config.rb', line 36

def config
  @config ||= configure
end

.configure(options = {}) ⇒ Config

Parameters:

  • options (Hash) (defaults to: {})

Returns:



15
16
17
18
19
20
# File 'lib/lucid_shopify/config.rb', line 15

def configure(options = {})
  @config = Config.new(
    **@config.to_h.compact,
    **options,
  )
end

.configure_from_file(path = 'config/shopify.rb') ⇒ Config

Parameters:

  • path (String) (defaults to: 'config/shopify.rb')

Returns:



27
28
29
30
31
# File 'lib/lucid_shopify/config.rb', line 27

def configure_from_file(path = 'config/shopify.rb')
  options = LucidUtils::ConfigFromFile.new.(path, env_prefix: 'shopify')

  configure(options)
end

.handlersWebhookHandlerList

Handlers for webhook topics.

Examples:

LucidShopify.handlers.register('orders/create', OrdersCreateWebhook.new)

Call topic handlers

webhook = Webhook.new(myshopify_domain, topic, data)

LucidShopify.handlers.delegate(webhook)

Returns:



67
68
69
# File 'lib/lucid_shopify.rb', line 67

def handlers
  @handlers ||= WebhookHandlerList.new
end

.webhooksWebhookList

Webhooks created for each shop.

Examples:

LucidShopify.webhooks.register('orders/create', fields: 'id,tags')

Returns:



50
51
52
# File 'lib/lucid_shopify.rb', line 50

def webhooks
  @webhooks ||= WebhookList.new
end