From 74457896791257cadd0166989218d1ad582f2803 Mon Sep 17 00:00:00 2001 From: jmather-c <117302272+jmather-c@users.noreply.github.com> Date: Tue, 14 Nov 2023 11:58:12 -0800 Subject: [PATCH] PLATINT-2697: auth split POC (#1180) --- .gitignore | 1 + LocalDev-Testing.md | 66 + app/controllers/controller_helpers.rb | 20 +- app/controllers/sessions_controller.rb | 364 +- bin/expose-for-salesforce.sh | 42 + bin/pre-commit.sh | 8 + config/initializers/omniauth.rb | 80 +- config/routes.rb | 8 +- config/spring.rb | 6 +- .../utilities/state_encryption_algo.rb | 319 + lib/stripe-force/db/user.rb | 17 +- lib/stripe-force/db/user/kms_encryption.rb | 66 +- manual_test/auth/index.html | 17 + manual_test/auth/test.js | 25 + package.json | 5 + sfdx/.forceignore | 7 +- sfdx/.husky/pre-commit | 9 + sfdx/.node-version | 1 + sfdx/bin/check-dev-settings | 20 +- sfdx/bin/generate-cpq-scratch-org | 46 +- sfdx/bin/pre-commit.sh | 5 + .../classes/ConfigExportVFController.cls | 2 +- .../default/classes/ConfigPayloadHelper.cls | 2 + .../main/default/classes/Debug_Helper.cls | 21 +- .../classes/Sentry_ExceptionFactoryTest.cls | 3 +- .../main/default/classes/StripeOAuthState.cls | 151 + .../classes/StripeOAuthState.cls-meta.xml | 5 + .../main/default/classes/UriTargets.cls | 80 + .../default/classes/UriTargets.cls-meta.xml | 5 + .../main/default/classes/constants.cls | 8 + .../main/default/classes/errorLogger.cls | 2 +- .../default/classes/maintenanceUtilities.cls | 23 +- .../main/default/classes/setupAssistant.cls | 387 +- .../main/default/classes/test_errorLogger.cls | 8 +- .../default/classes/test_setupAssistant.cls | 270 +- .../main/default/classes/utilities.cls | 164 +- ...tup Connection Data Layout.layout-meta.xml | 46 +- .../lwc/dataMappingStep/dataMappingStep.js | 21 +- .../main/default/lwc/debugger/debugger.js | 35 +- .../integrationUserSetupStep.css | 8 + .../integrationUserSetupStep.html | 59 + .../integrationUserSetupStep.js | 231 + .../integrationUserSetupStep.js-meta.xml | 7 + .../integrationUserType.html | 42 + .../integrationUserType.js | 13 + .../integrationUserType.js-meta.xml | 7 + .../default/lwc/pollingStep/pollingStep.js | 5 +- .../lwc/serviceManager/serviceManager.js | 229 + .../serviceManager/serviceManager.js-meta.xml | 7 + .../main/default/lwc/setup/setup.html | 66 +- .../force-app/main/default/lwc/setup/setup.js | 139 +- sfdx/force-app/main/default/lwc/step/step.js | 3 +- .../stripeAccountConnectionModes.html | 43 + .../stripeAccountConnectionModes.js | 11 + .../stripeAccountConnectionModes.js-meta.xml | 7 + .../stripeAccountSetupStep.css | 8 + .../stripeAccountSetupStep.html | 62 + .../stripeAccountSetupStep.js | 205 + .../stripeAccountSetupStep.js-meta.xml | 7 + .../syncPreferencesItem.js | 5 +- .../systemConnectionsStep.css | 7 +- .../systemConnectionsStep.html | 90 +- .../systemConnectionsStep.js | 324 +- .../systemConnectionsStepItem.css | 6 + .../systemConnectionsStepItem.html | 23 + .../systemConnectionsStepItem.js | 86 + .../systemConnectionsStepItem.js-meta.xml | 7 + .../lwc/systemStatusUtils/eventEmitter.js | 72 + .../systemStatusUtils/postMessageListener.js | 174 + .../systemStatusUtils/systemStatusUtils.js | 95 + .../systemStatusUtils.js-meta.xml | 7 + .../force-app/main/default/lwc/toast/toast.js | 3 + .../force-app/main/default/lwc/utils/utils.js | 22 +- .../Enable_Apex_Debug__c.field-meta.xml | 12 + .../fields/Enable_JS_Debug__c.field-meta.xml | 12 + .../fields/Global_Key__c.field-meta.xml | 2 +- ...cal_Authorization_Target__c.field-meta.xml | 11 + .../OAuth_AutoClose_Window__c.field-meta.xml | 12 + .../OAuth_State_Signing_Key__c.field-meta.xml | 12 + .../fields/Platform_Target__c.field-meta.xml | 17 + .../Use_Local_OpenAPI_Spec__c.field-meta.xml | 11 - ...rimary_Stripe_Account_Id__c.field-meta.xml | 12 + ...ta.xml => illustrations.resource-meta.xml} | 0 .../stripe_illustration_dataMapping.svg | 38 + .../stripe_illustration_syncPreferences.svg | 26 + .../stripe_illustration_systemConnections.svg | 26 + .../stripe_setup_authorizeWebhooks.svg | 36 + .../stripe_setupIllustrations.zip | Bin 5079 -> 0 bytes sfdx/jest.config.js | 6 + sfdx/package-lock.json | 17962 ++++++++++++++++ sfdx/package.json | 30 + sorbet/custom/fixes.rbi | 21 +- sorbet/rbi/hidden-definitions/errors.txt | 11610 +++++++--- sorbet/rbi/hidden-definitions/hidden.rbi | 2579 ++- test/controllers/test_session_controller.rb | 92 +- 95 files changed, 32557 insertions(+), 4415 deletions(-) create mode 100644 LocalDev-Testing.md create mode 100755 bin/expose-for-salesforce.sh create mode 100755 bin/pre-commit.sh create mode 100644 lib/integrations/utilities/state_encryption_algo.rb create mode 100644 manual_test/auth/index.html create mode 100644 manual_test/auth/test.js create mode 100644 package.json create mode 100755 sfdx/.husky/pre-commit create mode 100644 sfdx/.node-version create mode 100755 sfdx/bin/pre-commit.sh create mode 100644 sfdx/force-app/main/default/classes/StripeOAuthState.cls create mode 100644 sfdx/force-app/main/default/classes/StripeOAuthState.cls-meta.xml create mode 100644 sfdx/force-app/main/default/classes/UriTargets.cls create mode 100644 sfdx/force-app/main/default/classes/UriTargets.cls-meta.xml create mode 100644 sfdx/force-app/main/default/lwc/integrationUserSetupStep/integrationUserSetupStep.css create mode 100644 sfdx/force-app/main/default/lwc/integrationUserSetupStep/integrationUserSetupStep.html create mode 100644 sfdx/force-app/main/default/lwc/integrationUserSetupStep/integrationUserSetupStep.js create mode 100644 sfdx/force-app/main/default/lwc/integrationUserSetupStep/integrationUserSetupStep.js-meta.xml create mode 100644 sfdx/force-app/main/default/lwc/integrationUserType/integrationUserType.html create mode 100644 sfdx/force-app/main/default/lwc/integrationUserType/integrationUserType.js create mode 100644 sfdx/force-app/main/default/lwc/integrationUserType/integrationUserType.js-meta.xml create mode 100644 sfdx/force-app/main/default/lwc/serviceManager/serviceManager.js create mode 100644 sfdx/force-app/main/default/lwc/serviceManager/serviceManager.js-meta.xml create mode 100644 sfdx/force-app/main/default/lwc/stripeAccountConnectionModes/stripeAccountConnectionModes.html create mode 100644 sfdx/force-app/main/default/lwc/stripeAccountConnectionModes/stripeAccountConnectionModes.js create mode 100644 sfdx/force-app/main/default/lwc/stripeAccountConnectionModes/stripeAccountConnectionModes.js-meta.xml create mode 100644 sfdx/force-app/main/default/lwc/stripeAccountSetupStep/stripeAccountSetupStep.css create mode 100644 sfdx/force-app/main/default/lwc/stripeAccountSetupStep/stripeAccountSetupStep.html create mode 100644 sfdx/force-app/main/default/lwc/stripeAccountSetupStep/stripeAccountSetupStep.js create mode 100644 sfdx/force-app/main/default/lwc/stripeAccountSetupStep/stripeAccountSetupStep.js-meta.xml create mode 100644 sfdx/force-app/main/default/lwc/systemConnectionsStepItem/systemConnectionsStepItem.css create mode 100644 sfdx/force-app/main/default/lwc/systemConnectionsStepItem/systemConnectionsStepItem.html create mode 100644 sfdx/force-app/main/default/lwc/systemConnectionsStepItem/systemConnectionsStepItem.js create mode 100644 sfdx/force-app/main/default/lwc/systemConnectionsStepItem/systemConnectionsStepItem.js-meta.xml create mode 100644 sfdx/force-app/main/default/lwc/systemStatusUtils/eventEmitter.js create mode 100644 sfdx/force-app/main/default/lwc/systemStatusUtils/postMessageListener.js create mode 100644 sfdx/force-app/main/default/lwc/systemStatusUtils/systemStatusUtils.js create mode 100644 sfdx/force-app/main/default/lwc/systemStatusUtils/systemStatusUtils.js-meta.xml create mode 100644 sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Enable_Apex_Debug__c.field-meta.xml create mode 100644 sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Enable_JS_Debug__c.field-meta.xml create mode 100644 sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Local_Authorization_Target__c.field-meta.xml create mode 100644 sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/OAuth_AutoClose_Window__c.field-meta.xml create mode 100644 sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/OAuth_State_Signing_Key__c.field-meta.xml create mode 100644 sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Platform_Target__c.field-meta.xml delete mode 100644 sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Use_Local_OpenAPI_Spec__c.field-meta.xml create mode 100644 sfdx/force-app/main/default/objects/Stripe_Connection__c/fields/Primary_Stripe_Account_Id__c.field-meta.xml rename sfdx/force-app/main/default/staticresources/{stripe_setupIllustrations.resource-meta.xml => illustrations.resource-meta.xml} (100%) create mode 100644 sfdx/force-app/main/default/staticresources/illustrations/stripe_illustration_dataMapping.svg create mode 100644 sfdx/force-app/main/default/staticresources/illustrations/stripe_illustration_syncPreferences.svg create mode 100644 sfdx/force-app/main/default/staticresources/illustrations/stripe_illustration_systemConnections.svg create mode 100644 sfdx/force-app/main/default/staticresources/illustrations/stripe_setup_authorizeWebhooks.svg delete mode 100644 sfdx/force-app/main/default/staticresources/stripe_setupIllustrations.zip create mode 100644 sfdx/jest.config.js create mode 100644 sfdx/package-lock.json create mode 100644 sfdx/package.json diff --git a/.gitignore b/.gitignore index 9b96209a76..3a8f26d208 100644 --- a/.gitignore +++ b/.gitignore @@ -11,6 +11,7 @@ IlluminatedCloud # Ignore bundler config. /.bundle +/bin/* # Ignore the default SQLite database. /db/*.sqlite3 diff --git a/LocalDev-Testing.md b/LocalDev-Testing.md new file mode 100644 index 0000000000..6cc01a5b75 --- /dev/null +++ b/LocalDev-Testing.md @@ -0,0 +1,66 @@ +# How to test locally + +1. Follow normal setup routine. +2. Run ruby locally... what works for me is: `dotenv bundle exec puma` +2. Make the local instance internet accessible. You can use ngrok, or my custom localtunnel server if you like. Details below. +3. Add a Remote Site Config for this url to enable Salesforce to call it. + (Setup -> Remote Site Settings), /lightning/setup/SecurityRemoteProxy/home +4. Edit the Default Setup_Connection_Data__mdt record, turn on "Local Authorization + Target" and set "Platform Target" to the URL from step 2. /lightning/setup/CustomMetadata/home +5. If something seems wonky, set OAuth_State_Signing_Key__c to `98ae2216688a8b879c25f17ed793bfa7bb11201ddda97ad01b2d282a06aa191a` in Salesforce, but it should default to it even if not set. +6. Test! + +## making localdev accessible + +We can (and do!) use http://localhost:3100 for some local testing, but in order for Salesforce to be able +to call it, we need to expose it somewhere that Salesforce can call it. + +The simplest way to do this is with some sort of local tunnel system. + +### ngrok + +#### Installation + +Be sure to install from NPM, not the website. + +``` +npm install -g ngrok +``` + +#### Setup + +Create an account with [ngrok](https://ngrok.com/), and configure your authtoken. + +``` +ngrok authtoken +``` + +#### Running + +To run ngrok, execute: + +``` +ngrok http 3100 +``` + +### My secure localtunnel server + +I run a dedicated localtunnel server for just such purposes as well. + +It keeps no logs or anything, and just does what it says on the box to provide public HTTPS transit. + +For ease of use, I have added [bin/expose-for-salesforce.sh](bin/expose-for-salesforce.sh) to the repo. + +Simply run `./bin/expose-for-salesforce.sh`, and it will give you a URL to use. + +``` +st-jmather-c1:stripe-salesforce jmather-c$ ./bin/expose-for-salesforce.sh +your url is: https://jmather-c.lt.jmather.com +``` + +Please note: this is for developer use only. It is not a production service, and I make no guarantees about it. + +For use with CI, or other purposes, Stripe should set up their own localtunnel secure server using +[my localtunnel-server fork](https://github.com/jmather/localtunnel-secure-server). + +Thanks! \ No newline at end of file diff --git a/app/controllers/controller_helpers.rb b/app/controllers/controller_helpers.rb index 0f750ec6ec..904820c424 100644 --- a/app/controllers/controller_helpers.rb +++ b/app/controllers/controller_helpers.rb @@ -22,16 +22,20 @@ module ControllerHelpers end end - sig { params(user: StripeForce::User, raw_namespace: T.nilable(String)).returns(String) } - protected def build_postmessage_domain(user, raw_namespace) - salesforce_namespace = subdomain_namespace_from_param(raw_namespace) - iframe_domain = iframe_domain_from_user(user) - "https://#{user.sf_subdomain}--#{salesforce_namespace}.#{iframe_domain}" + sig { params(state: StateEncryptionAlgo::StripeOAuthState).returns(String) } + protected def build_postmessage_domain_from_state(state) + namespace = subdomain_namespace_from_param(state.salesforce_namespace) + subdomain = state.salesforce_instance_subdomain + iframe_domain = iframe_domain_from_user(state) + "https://#{subdomain}--#{namespace}.#{iframe_domain}" end - sig { params(user: StripeForce::User).returns(String) } - protected def iframe_domain_from_user(user) - if user.scratch_org? + sig { params(state: StateEncryptionAlgo::StripeOAuthState).returns(String) } + protected def iframe_domain_from_user(state) + scratch_org_type = StripeForce::Constants::SFInstanceTypes::SCRATCH_ORG.serialize + is_scratch_org = state.salesforce_instance_type == scratch_org_type + + if is_scratch_org "scratch.vf.force.com" else "visualforce.com" diff --git a/app/controllers/sessions_controller.rb b/app/controllers/sessions_controller.rb index 470fa30a22..d6d07bf40d 100644 --- a/app/controllers/sessions_controller.rb +++ b/app/controllers/sessions_controller.rb @@ -1,7 +1,11 @@ # frozen_string_literal: true # typed: true +require 'sorbet-runtime' class SessionsController < ApplicationController + extend T::Sig + include StateEncryptionAlgo + # If you're using a strategy that POSTs during callback, you'll need to skip the authenticity token check for the callback action only. skip_before_action :verify_authenticity_token, only: :create @@ -13,118 +17,106 @@ def root_action if Rails.env.production? head :ok else - render_oauth_post_redirect('salesforce') + auth_entrypoint end end # LWC "authorize" button hits this action - def login_entrypoint + def auth_entrypoint + state = nil + begin + state = require_state + rescue StateException + # only happens with old code calling us + state = create_state(oauth_version: 'v1',) + extract_salesforce_metadata(state) + end oauth_type = params.require(:oauth_type) - # the namespace can change depending on what SF environment we are in - # we need to postMessage to the correct domain when auth is complete - salesforce_namespace = subdomain_namespace_from_param(params.permit(:salesforceNamespace)["salesforceNamespace"]) - session[:salesforce_namespace] = salesforce_namespace - - salesforce_instance_type = salesforce_instance_type_from_headers(request.headers[SALESFORCE_INSTANCE_TYPE_HEADER]) - session[:salesforce_instance_type] = salesforce_instance_type - - render_oauth_post_redirect(oauth_type) - end - - def salesforce_callback - salesforce_callback_handler - - user = T.must(StripeForce::User.find(id: session[:user_id])) + session[:state] = state.to_s + prompt = params[:prompt] - # TODO before redirecting to Stripe, check if there's a valid Stripe connection - - postmessage_domain = build_postmessage_domain(user, session[:salesforce_namespace]) - - is_production_org = session[:salesforce_instance_type] == SFInstanceTypes::PRODUCTION.serialize - - omniauth_path_name = is_production_org ? 'stripelivemode' : 'stripetestmode' - - render inline: <<-EOL - <%= form_tag(omniauth_path('#{omniauth_path_name}'), method: 'post', id: 'js-submission') %> - - - EOL + render_oauth_post_redirect(oauth_type, state, prompt) end - def salesforce_callback_v2 - salesforce_callback_handler - - user = T.must(StripeForce::User.find(id: session[:user_id])) - postmessage_domain = build_postmessage_domain(user, session[:salesforce_namespace]) - - render inline: <<-EOL -
-

Great, you're connected!

-

Your Salesforce account is connected. You can safely close this window.

-

Navigate to Salesforce to authenticate with Stripe.

-
- - - EOL + def auth_v2_entrypoint + oauth_type = params.require(:oauth_type) + begin + state = require_state(oauth_version: 'v2') + session[:state] = state.to_s + prompt = params[:prompt] + render_oauth_post_redirect(oauth_type, state, prompt) + rescue StateException => e + v2_failure_response(oauth_type, e.state, "Connection State is Invalid.") + end end - private def salesforce_instance_type_from_headers(raw_header) - SFInstanceTypes.try_deserialize(raw_header)&.serialize + def salesforce_callback + begin + state = require_state + + user_id = salesforce_callback_handler(state) + # user = T.must(StripeForce::User.find(id: user_id)) + state.user_id = user_id + # puts state.data.to_json + if state.oauth_version == 'v2' + sf_v2_callback_response(state) + else + # because we need to persist the session for the redirect to Stripe used by v1 auth flow + session[:state] = state.to_s + sf_v1_callback_response(state) + end + rescue StateException => e + v2_failure_response("salesforce", e.state, "Connection State is Invalid.") + end end def stripe_callback - stripe_account_id = stripe_callback_handler - user = T.must(StripeForce::User.find(id: session[:user_id])) - - user.cache_connection_status(StripeForce::Constants::Platforms::STRIPE, true) - user.update(stripe_account_id: stripe_account_id,) - - postmessage_domain = build_postmessage_domain(user, session[:salesforce_namespace]) - - render inline: <<-EOL -
-

Great, you're connected!

-

Your Stripe & Salesforce accounts are connected. You can safely close this window.

-

Navigate to Salesforce to configure this connector.

-
- - - EOL - end - - def stripe_callback_v2_livemode - stripe_account_id = stripe_callback_handler - user = T.must(StripeForce::User.find(id: session[:user_id])) - - user.cache_stripe_v2_connection_status(connected: true, livemode: true) - user.update(stripe_account_id: stripe_account_id,) - - postmessage_domain = build_postmessage_domain(user, session[:salesforce_namespace]) - - render inline: get_stripe_callback_v2_render(stripe_account_id, postmessage_domain) + begin + state = require_state + livemode = request.path.include? '/stripelivemode/' + user_id = stripe_callback_handler(state, livemode) + user = T.must(StripeForce::User.find(id: user_id)) + + if state.oauth_version == 'v2' + user.cache_stripe_v2_connection_status(connected: true, livemode: livemode) + stripe_v2_callback_response(state) + else + user.cache_connection_status(StripeForce::Constants::Platforms::STRIPE, true) + # this is for the old LWC, we need to redirect to the salesforce auth page + stripe_v1_callback_response(state) + end + rescue StateException => e + v2_failure_response("salesforce", e.state, "Connection State is Invalid.") + end end - def stripe_callback_v2_testmode - stripe_account_id = stripe_callback_handler - user = T.must(StripeForce::User.find(id: session[:user_id])) + sig { params(state: StateEncryptionAlgo::StripeOAuthState).void } + private def extract_salesforce_metadata(state) + # the namespace can change depending on what SF environment we are in + # we need to postMessage to the correct domain when auth is complete + if state.salesforce_namespace.nil? + salesforce_namespace = subdomain_namespace_from_param(params.permit(:salesforceNamespace)["salesforceNamespace"]) + state.salesforce_namespace = salesforce_namespace + end - user.cache_stripe_v2_connection_status(connected: true, livemode: false) - user.update(stripe_account_id: stripe_account_id,) + if state.salesforce_instance_type.nil? + salesforce_instance_type = salesforce_instance_type_from_headers(request.headers[SALESFORCE_INSTANCE_TYPE_HEADER]) + salesforce_instance_type = params.permit(:instanceType)["instanceType"] unless params.permit(:instanceType)["instanceType"].nil? + salesforce_instance_type = determine_instance_type(request.referer, nil) if salesforce_instance_type.nil? - postmessage_domain = build_postmessage_domain(user, session[:salesforce_namespace]) + state.salesforce_instance_type = salesforce_instance_type + end - render inline: get_stripe_callback_v2_render(stripe_account_id, postmessage_domain) + if state.salesforce_instance_subdomain.nil? + uri = request.referer.match(%r{https://([^/]+)/})[1] + uri_host = uri.split('.')&.first + uri_host = uri_host[0..uri_host.length - 4] if uri_host && uri_host[(uri_host.length - 3)..] == "--#{state.salesforce_namespace}" + state.salesforce_instance_subdomain = uri_host if uri_host + end end - private def salesforce_callback_handler + private def salesforce_callback_handler(state) sf_auth = auth_hash raw_sf_account_url = sf_auth["uid"] @@ -132,11 +124,20 @@ def stripe_callback_v2_testmode # ex: "https://login.salesforce.com/id/00D5e000003V0C7EAK/0055e000005HBroAAG", sf_account_id = raw_sf_account_url.match(%r{id/([^/]+)/})[1] - user = StripeForce::User.find(salesforce_account_id: sf_account_id) + if sf_account_id.blank? + log.warn 'callback requested with empty sf_account_id', + sf_account_id: sf_account_id + head :not_found + return + end + + state.salesforce_account_id = sf_account_id if state.salesforce_account_id.nil? + + user = StripeForce::User.find(salesforce_account_id: state.salesforce_account_id) log.default_tags[:sf_account_id] = sf_account_id - if !user + unless user log.info 'creating new user' user = StripeForce::User.new(salesforce_account_id: sf_account_id) @@ -144,15 +145,19 @@ def stripe_callback_v2_testmode Integrations::ErrorContext.report_feature_usage("New user. sf_account_id: #{sf_account_id}") end - log.info 'updating existing user' + log.default_tags[:user_id] = user.id + state.user_id = user.id + log.info 'updating existing user' sf_credentials = sf_auth["credentials"] sf_refresh_token = sf_credentials['refresh_token'] sf_instance_url = sf_credentials["instance_url"] sf_token = sf_credentials["token"] + # puts sf_credentials.to_json # TODO it seems possible for a user to auth against the wrong account, need to investigate further if !user.new? && user.salesforce_account_id != sf_account_id + # this likely means a user is trying to auth to Salesforce Org A but most recently logged into Salesforce Org B raise "user already exists and account ID is not equal, this should never happen" end user.salesforce_account_id = sf_account_id @@ -160,6 +165,11 @@ def stripe_callback_v2_testmode user.salesforce_instance_url = sf_instance_url user.salesforce_token = sf_token + user.salesforce_instance_type = determine_instance_type(sf_instance_url, state) + user.salesforce_namespace = state.salesforce_namespace + + # puts user.to_json + user.name = sf_auth["extra"]["display_name"] user.email = sf_auth["extra"]["email"] @@ -167,29 +177,60 @@ def stripe_callback_v2_testmode user.cache_connection_status(StripeForce::Constants::Platforms::SALESFORCE, true) - session[:user_id] = user.id + user.id end - private def stripe_callback_handler - user_id = session[:user_id] + private def salesforce_instance_type_from_headers(raw_header) + SFInstanceTypes.try_deserialize(raw_header)&.serialize + end + + private def determine_instance_type(instance_url, state) + # example urls + # scratch: https://momentum-customization-3160-dev-ed--c.scratch.vf.force.com/ + # sandbox: https://momentum-customization-3160-dev-ed.cs88.my.salesforce.com/ + # sandbox: https://somesite--sandboxname.sandbox.my.salesforce.com/ + # production: https://momentum-customization-3160-dev-ed.my.salesforce.com/ + # production: https://somesite.my.salesforce.com/ + return state.salesforce_instance_type unless state.nil? || state.salesforce_instance_type.nil? + if instance_url.include? ".scratch." + SFInstanceTypes::SCRATCH_ORG.serialize + elsif instance_url.include? ".sandbox." + SFInstanceTypes::SANDBOX.serialize + else + SFInstanceTypes::PRODUCTION.serialize + end + end + + # pushing the logic to creating users records on to the post-install endpoint. + private def stripe_callback_handler(state, livemode) + stripe_auth = auth_hash + stripe_account_id = stripe_auth["uid"] - if user_id.blank? - log.warn 'callback requested with empty user_id', - user_id: user_id + if stripe_account_id.blank? + log.warn 'callback requested with empty stripe_account_id', + stripe_account_id: stripe_account_id head :not_found return end - user = StripeForce::User[user_id] + state.stripe_account_id = stripe_account_id if state.stripe_account_id.nil? + state.primary_stripe_account_id = stripe_account_id if state.primary_stripe_account_id.nil? + + unless state.user_id + return nil + end + + user = StripeForce::User.find(id: state.user_id) + + log.default_tags[:stripe_account_id] = stripe_account_id if user.blank? - Integrations::ErrorContext.report_edge_case("invalid user identifier", metadata: {user_id: user_id}) + Integrations::ErrorContext.report_edge_case("invalid user identifier", metadata: {user_id: state.user_id}) head :not_found return end - stripe_auth = auth_hash - stripe_account_id = stripe_auth["uid"] + log.default_tags[:user_id] = user.id log.info 'updating stripe account ID', user_id: user.id, stripe_account_id: stripe_account_id @@ -197,11 +238,65 @@ def stripe_callback_v2_testmode Integrations::ErrorContext.report_edge_case("stripe account ID already set, overwriting") end - stripe_account_id + user.update(stripe_account_id: stripe_account_id, livemode: livemode) + + user.id + end + + def sf_v1_callback_response(state) + # TODO before redirecting to Stripe, check if there's a valid Stripe connection + postmessage_domain = build_postmessage_domain_from_state(state) + is_production_org = state.salesforce_instance_type == SFInstanceTypes::PRODUCTION.serialize + omniauth_path_name = is_production_org ? 'stripelivemode' : 'stripetestmode' + render locals: {omniauth_path_name: omniauth_path_name, state: state}, inline: <<-EOL + <%= form_tag(omniauth_path(omniauth_path_name), method: 'post', id: 'js-submission') do %> + <%= hidden_field_tag(:state, state) %> + <% end %> + + + EOL end - def get_stripe_callback_v2_render(stripe_account_id, postmessage_domain) - <<-EOL + def sf_v2_callback_response(state) + postmessage_domain = build_postmessage_domain_from_state(state) + + render inline: <<-EOL +
+

Great, you're connected!

+

Your Salesforce account is connected. You can safely close this window.

+

Navigate to Salesforce to authenticate with Stripe.

+
+ + + EOL + end + + def stripe_v1_callback_response(state) + postmessage_domain = build_postmessage_domain_from_state(state) + + render inline: <<-EOL +
+

Great, you're connected!

+

Your Stripe & Salesforce accounts are connected. You can safely close this window.

+

Navigate to Salesforce to configure this connector.

+
+ + + EOL + end + + def stripe_v2_callback_response(state) + postmessage_domain = build_postmessage_domain_from_state(state) + + render inline: <<-EOL

Great, you're connected!

Your Stripe is connected. You can safely close this window.

@@ -209,7 +304,25 @@ def get_stripe_callback_v2_render(stripe_account_id, postmessage_domain)
+ EOL + end + + # there's scenarios where we don't have proper information to build the postmessage domain + # So let's allow any, just for failure messages. + def v2_failure_response(system_id, state, message) + postmessage_domain = "*" + + render inline: <<-EOL +
+

We encountered an error!

+

#{message}

+

Navigate to Salesforce to try again.

+
+ + EOL end @@ -218,9 +331,13 @@ def failure render inline: 'Authorization Failure' end - private def render_oauth_post_redirect(oauth_type) - render locals: {oauth_type: oauth_type}, inline: <<-EOL - <%= form_tag(omniauth_path(oauth_type), method: 'post', id: 'js-submission') %> + private def render_oauth_post_redirect(oauth_type, state, prompt) + auth_path = omniauth_path(oauth_type) + auth_path = omniauth_path(oauth_type, prompt: prompt) if prompt + render locals: {auth_path: auth_path, state: state.to_s}, inline: <<-EOL + <%= form_tag(auth_path, method: 'post', id: 'js-submission') do %> + <%= hidden_field_tag(:state, state) %> + <% end %> + + V1 Auth + + + V2 Salesforce + + + V2 Stripe + +
+ +
+ + \ No newline at end of file diff --git a/manual_test/auth/test.js b/manual_test/auth/test.js new file mode 100644 index 0000000000..003a2e34d2 --- /dev/null +++ b/manual_test/auth/test.js @@ -0,0 +1,25 @@ +var v1 = 'http://localhost:3100/auth/salesforce?salesforceNamespace=c&instanceType=SANDBOX'; +var v2_sf = 'http://localhost:3100/auth/v2/salesforce?salesforceNamespace=c&state=6380672431a8cdf563ff521225e07e91a83ab217eeb633e6b5acdac4499a4e822abbee4d2351cfb3c1fb721515143d9ba5df21473a80df145a7401ce760f25e567dddc1658c8ab8e67d6ad2a64994e571a315885a2168ef74a13d14fcf03fced18c0acfff95b6dbf1ffec14f3d719b625bd7cb232184c80c73f019a1243ffe29ef3e183c074372e773d6b8e4ef7f883737d3f24174d4b4a211df45e8ecb9d034'; +var v2_st = 'http://localhost:3100/auth/v2/stripetestmode?salesforceNamespace=c&state=bb6363f0ebf9af9caafa7f20b33046f97f45589495e226e034fb439ac06233b3a9d0e262d554f771de292c6edcc3dd8a473adf91930373e75c82de945520256747ab232430d8a7fb128dfa762951a61deb397e592917afa559bcddd358830e3a1f866796bfec105ae9392cf75013a7819e8b3b3e044e876d9ffd6fca75d101245d6302364283a13fc304662b5a843a10d048b4ef2eb0e241b01cc5f141290a72ea529eb3c04d07c953e9f84ca99f18a193bef0c93012d72d00d8331600f3416fe06440d82b384622b27bb2db56df0b066b9f71a9879b8be93751e1fcd15cf86e'; + +var subwin = null; + +function showV1() { + subwin = window.open(v1, '_blank'); + return false; +} + +function showV2Sf() { + subwin = window.open(v2_sf, '_blank'); + return false; +} + +function showV2St() { + subwin = window.open(v2_st, '_blank'); + return false; +} + +window.addEventListener('onpostmessage', function(event) { + var doc = document.getElementById('postmsg'); + doc.innerHTML += '
' + JSON.stringify(e) + '
'; +}); \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000000..c61bce5d7e --- /dev/null +++ b/package.json @@ -0,0 +1,5 @@ +{ + "scripts": { + "pre-commit": "bin/pre-commit.sh" + } +} \ No newline at end of file diff --git a/sfdx/.forceignore b/sfdx/.forceignore index 979bcb279b..e54a4e151b 100644 --- a/sfdx/.forceignore +++ b/sfdx/.forceignore @@ -3,4 +3,9 @@ sfdx/.sfdx/ **/.eslintrc.json force-app/main/default/featureParameters/** -force-app/main/default/customMetadata/Setup_Connection_Data.Default.md-meta.xml \ No newline at end of file +force-app/main/default/customMetadata/Setup_Connection_Data.Default.md-meta.xml +force-app/main/default/permissionsetgroups/** +force-app/main/default/permissionsets/sfdcInternalInt__sfdc_cpq.permissionset-meta.xml +force-app/main/default/permissionsets/SteelBrickCPQStandardObjectsAccess.permissionset-meta.xml +sfdx/force-app/main/scratchSetup/profiles/Admin.profile-meta.xml +sfdx/force-app/main/default/profiles/Admin.profile-meta.xml \ No newline at end of file diff --git a/sfdx/.husky/pre-commit b/sfdx/.husky/pre-commit new file mode 100755 index 0000000000..6f2d0f058e --- /dev/null +++ b/sfdx/.husky/pre-commit @@ -0,0 +1,9 @@ +#!/bin/sh +. "$(dirname "$0")/_/husky.sh" +cd "$(dirname "$0")"/.. || exit 1 +cd ../ || exit 1 +echo "Running ruby checks" +bin/pre-commit.sh || exit 1 +cd sfdx || exit 1 +echo "Running sfdx checks" +bin/pre-commit.sh || exit 1 diff --git a/sfdx/.node-version b/sfdx/.node-version new file mode 100644 index 0000000000..d61534ca03 --- /dev/null +++ b/sfdx/.node-version @@ -0,0 +1 @@ +17.9.1 \ No newline at end of file diff --git a/sfdx/bin/check-dev-settings b/sfdx/bin/check-dev-settings index db9c4f6d03..7bd5440bf4 100755 --- a/sfdx/bin/check-dev-settings +++ b/sfdx/bin/check-dev-settings @@ -8,20 +8,22 @@ HAS_ERROR=0 echo "🔁 Making sure we don't have any developer settings enabled"; -# Check local openapi override -CHECK_PATH="force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Use_Local_OpenAPI_Spec__c.field-meta.xml" -CHECK_DEFAULT_VALUE=`grep "defaultValue" $CHECK_PATH | sed "s/.*>\\(.*\\)<.*/\1/"` -if [ "$CHECK_DEFAULT_VALUE" != "false" ]; then - echo "❌ Setup_Connection_Data__mdt.Use_Local_OpenAPI_Spec__c.defaultValue is not false." - HAS_ERROR=1 -else - echo "👍 Setup_Connection_Data__mdt.Use_Local_OpenAPI_Spec__c.defaultValue is false." -fi +# Check local openapi override -- dead +#CHECK_PATH="force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Use_Local_OpenAPI_Spec__c.field-meta.xml" +#CHECK_DEFAULT_VALUE=`grep "defaultValue" $CHECK_PATH | sed "s/.*>\\(.*\\)<.*/\1/"` +#if [ "$CHECK_DEFAULT_VALUE" != "false" ]; then +# echo "❌ Setup_Connection_Data__mdt.Use_Local_OpenAPI_Spec__c.defaultValue is not false." +# HAS_ERROR=1 +#else +# echo "👍 Setup_Connection_Data__mdt.Use_Local_OpenAPI_Spec__c.defaultValue is false." +#fi # Check apex debug CHECK_PATH="force-app/main/default/classes" CHECK_ENABLE_DEBUG=`grep -R enableDebug $CHECK_PATH | grep true` +echo $CHECK_ENABLE_DEBUG + if [ ! -z "$CHECK_ENABLE_DEBUG" ]; then echo "❌ Debug_Helper is enabled globally." HAS_ERROR=1 diff --git a/sfdx/bin/generate-cpq-scratch-org b/sfdx/bin/generate-cpq-scratch-org index 71fe5ff012..546785fed8 100755 --- a/sfdx/bin/generate-cpq-scratch-org +++ b/sfdx/bin/generate-cpq-scratch-org @@ -8,9 +8,24 @@ # settings: # https://developer.salesforce.com/docs/metadata-coverage/55 -set -e -o pipefail +if [ -z "$DEVHUB_USER" ]; then + DEVHUB_USER=$(sfdx force:config:get defaultdevhubusername --json | jq -r '.result[0].value') +fi +if [ -z "$DEVHUB_USER" ]; then + DEVHUB_USER=pbo+billing@stripe.com +fi cd "$(dirname "$0")/.." +source ../.env + +if [ -z "$1" ]; then + salesforceAlias="$(basename $HOME)"-scratch +else + salesforceAlias=$1 +fi + +set -e -o pipefail + if [ ! -z "$CI" ]; then echo "This should only be run locally" @@ -22,7 +37,12 @@ if [[ -z $(which jq) ]]; then exit 1 fi -sfdx config:set defaultdevhubusername=pbo+billing@stripe.com +if [[ $(sfdx config:get defaultdevhubusername --json | jq -r '.result[0].value') == "null" ]]; then + echo "No default devhub set, using '$DEVHUB_USER'" + sfdx config:set defaultdevhubusername=$DEVHUB_USER +else + echo "Default devhub already set, skipping" +fi # TODO should check if billing pbo is authorized. Run this if not: # sfdx force:auth:web:login -a pbo+billing@stripe.com @@ -30,12 +50,6 @@ sfdx config:set defaultdevhubusername=pbo+billing@stripe.com # TODO consider adding additional features to the scratch def # https://cs.github.com/SFDC-Assets/platform-events-demo/blob/a33c18a32dd8135060ccf69f2d84f003bac7a98e/config/project-scratch-def.json?q=path%3A*scratch-def.json+day#L5 -if [ -z "$1" ]; then - salesforceAlias="$(basename $HOME)"-scratch -else - salesforceAlias=$1 -fi - echo "Using alias '$salesforceAlias'..." # NOTE this will not work unless .sfdx/ @@ -44,10 +58,9 @@ echo "Creating scratch org..." sfdx force:org:create --loglevel=TRACE -f config/project-scratch-def.json -a $salesforceAlias -d 30 -w 15 # install CPQ package, pull package ID from: https://steelbrick2.force.com/InstallPremium (Spring 23 v242.2) -sfdx force:package:install -r --package 04t4N000000N6FFQA0 -w 30 -u $salesforceAlias - -sfdx force:user:password:generate -u $salesforceAlias -sfdx force:user:display -u $salesforceAlias +sfdx force:package:install -r --package 04t4N000000N6FFQA0 -w 30 -o $salesforceAlias +sfdx force:user:password:generate -o $salesforceAlias +sfdx force:user:display -o $salesforceAlias echo "Setup complete." @@ -62,7 +75,7 @@ fi sfdx force:user:permsetlicense:assign -n 'Salesforce CPQ License' -u $salesforceAlias sfdx config:set restDeploy=true apiVersion=54.0 -sfdx force:source:push --loglevel=debug -u $salesforceAlias +sfdx force:source:push --loglevel=debug -o $salesforceAlias # needs to be done after the source:push since this references custom perm sets sfdx force:user:permset:assign -n "Stripe_Connector_Integration_User, Stripe_Connector_Sync_Management_User, Stripe_Connector_Coupon_User, Order_Permissions" -u $salesforceAlias @@ -72,9 +85,9 @@ if [ ! -z "$SF_MANAGED_PACKAGE_API_KEY" ]; then echo -e "Managed package key is not yet, set up global key manually.\n" echo "# Connector Setup" echo -e "Manual step: Create global key. Label/Name: Default. Key: pull from SF_MANAGED_PACKAGE_API_KEY in your env.\n\n" - sfdx force:org:open -u $salesforceAlias -p '/lightning/setup/CustomMetadata/page?address=%2Fm02%3Fsetupid%3DCustomMetadata' > /dev/null + sfdx force:org:open -o $salesforceAlias -p '/lightning/setup/CustomMetadata/page?address=%2Fm02%3Fsetupid%3DCustomMetadata' > /dev/null else - sed "s|____GLOBAL_KEY____|$SF_MANAGED_PACKAGE_API_KEY|" scripts/apex/create_global_key_metadata | sfdx force:apex:execute + sed "s|____GLOBAL_KEY____|$SF_MANAGED_PACKAGE_API_KEY|" scripts/apex/create_global_key_metadata | sfdx force:apex:execute -o $salesforceAlias fi echo "# CPQ Setup" @@ -87,10 +100,9 @@ echo "Manual step: Installed Packages > Configure > Subscription & Renewals > Co echo "Manual step: Installed Packages > Configure > Subscription & Renewals > Enable Evergreen Subscriptions" echo "Manual step: Installed Packages > Configure > Order > Default Order Start Date > Quote Start Date" echo $'\n\n' -sfdx force:org:open -u $salesforceAlias -p "/lightning/setup/ImportedPackage/home" > /dev/null +sfdx force:org:open -o $salesforceAlias -p "/lightning/setup/ImportedPackage/home" > /dev/null echo "Opening up another tab to the Stripe app, authorize Salesforce & Stripe" -sfdx force:org:open -u $salesforceAlias -p '/lightning/n/Setup' > /dev/null # open https://rest-na.steelbrick.com/oauth/auth/https%3A%2F%2Ftest.salesforce.com/SBQQ # open https://salesforce.suitesync.io/auth/salesforcesandbox diff --git a/sfdx/bin/pre-commit.sh b/sfdx/bin/pre-commit.sh new file mode 100755 index 0000000000..6ad260fcd2 --- /dev/null +++ b/sfdx/bin/pre-commit.sh @@ -0,0 +1,5 @@ +#!/usr/bin/env bash + +cd "$(dirname $0)" || exit 1 +cd .. || exit 1 +./bin/check-dev-settings \ No newline at end of file diff --git a/sfdx/force-app/main/default/classes/ConfigExportVFController.cls b/sfdx/force-app/main/default/classes/ConfigExportVFController.cls index 7b0e463e95..9c5d5ed911 100644 --- a/sfdx/force-app/main/default/classes/ConfigExportVFController.cls +++ b/sfdx/force-app/main/default/classes/ConfigExportVFController.cls @@ -121,7 +121,7 @@ public with sharing class ConfigExportVFController { try { //construct call out to rubys configuration endpoint - String route = constants.RUBY_SERVICE_BASE_URI + constants.RUBY_SERVICE_CONFIG_URI; + String route = UriTargets.getAuthorizationBaseUri() + '/v1/configuration'; HttpResponse response = utilities.makeCallout(route,'GET'); //if the call out is successful pull out all mapping objects and add to list diff --git a/sfdx/force-app/main/default/classes/ConfigPayloadHelper.cls b/sfdx/force-app/main/default/classes/ConfigPayloadHelper.cls index f7d4e0cdc2..05ea8f3dd9 100644 --- a/sfdx/force-app/main/default/classes/ConfigPayloadHelper.cls +++ b/sfdx/force-app/main/default/classes/ConfigPayloadHelper.cls @@ -133,6 +133,7 @@ public with sharing class ConfigPayloadHelper { } public void extractFieldMappingData(Map configPayload, responseData response, Boolean showInternalFields) { + debugger.debug('extractFieldMappingData: configPayload', configPayload); List hiddenMapperFields = getHiddenMapperFields(configPayload); //used to store configuration maps from response @@ -176,6 +177,7 @@ public with sharing class ConfigPayloadHelper { stripMapFields(data, analysis.topLevelRemovals); Set allKeys = new Set(analysis.subLevelRemovals.keySet()); allKeys.addAll(analysis.partialLevelRemovals.keySet()); + debugger.debug('stripHiddenMapperFields: allKeys', allKeys); for (String keyField : allKeys) { if (data.containsKey(keyField) == false) { diff --git a/sfdx/force-app/main/default/classes/Debug_Helper.cls b/sfdx/force-app/main/default/classes/Debug_Helper.cls index 83ae3fa502..2df2d7a1cd 100644 --- a/sfdx/force-app/main/default/classes/Debug_Helper.cls +++ b/sfdx/force-app/main/default/classes/Debug_Helper.cls @@ -5,6 +5,7 @@ public with sharing class Debug_Helper { // This should always be null going to production. // We leave this configurable for developers to expose debug logs during development. + @TestVisible private Boolean enableDebug = false; @TestVisible @@ -18,7 +19,9 @@ public with sharing class Debug_Helper { public class DebugHelperException extends Sentry_Exception {} // empty constructor to use the default above to make it easy to flip for debugging. - public Debug_Helper() { } + public Debug_Helper() { + enableDebug = utilities.isApexDebuggingEnabled(); + } public Debug_Helper(Boolean enableDebug) { this.enableDebug = enableDebug; @@ -36,7 +39,21 @@ public with sharing class Debug_Helper { } public void debug(String source, Object data) { - debug(source, data.toString()); + if (data instanceof Exception) { + Map exceptionMap = new Map(); + exceptionMap.put('message', ((Exception)data).getMessage()); + exceptionMap.put('stackTrace', ((Exception)data).getStackTraceString()); + exceptionMap.put('cause', ((Exception)data).getCause()); + exceptionMap.put('lineNumber', ((Exception)data).getLineNumber()); + exceptionMap.put('type', ((Exception)data).getTypeName()); + debug(source, exceptionMap); + return; + } + if (data == null) { + debug(source, 'null'); + } else { + debug(source, data.toString()); + } } public void debug(String source, String message) { diff --git a/sfdx/force-app/main/default/classes/Sentry_ExceptionFactoryTest.cls b/sfdx/force-app/main/default/classes/Sentry_ExceptionFactoryTest.cls index 6bc50eb5b9..f466847081 100644 --- a/sfdx/force-app/main/default/classes/Sentry_ExceptionFactoryTest.cls +++ b/sfdx/force-app/main/default/classes/Sentry_ExceptionFactoryTest.cls @@ -10,6 +10,7 @@ public with sharing class Sentry_ExceptionFactoryTest { @IsTest static void TestMakingExceptions() { Sentry_Exception ex; + Sentry_Exception ex2; Test.startTest(); @@ -28,7 +29,7 @@ public with sharing class Sentry_ExceptionFactoryTest { System.assert(sentryException instanceof Sentry_Exception); System.assert(sentryExceptionFromString instanceof Sentry_Exception); System.assert(basic instanceof BasicException); - System.assert(extended instanceof ExtendedException); + System.assert(extended instanceof ExtendedException); if(utilities.isPackagedEnvironment()) { System.assertEquals(constants.NAMESPACE + '.Sentry_ExceptionFactoryTest', ex.context.get('exceptionClass')); diff --git a/sfdx/force-app/main/default/classes/StripeOAuthState.cls b/sfdx/force-app/main/default/classes/StripeOAuthState.cls new file mode 100644 index 0000000000..eae785ff21 --- /dev/null +++ b/sfdx/force-app/main/default/classes/StripeOAuthState.cls @@ -0,0 +1,151 @@ +/** + * Created by jmather-c on 8/18/23. + */ + +public with sharing class StripeOAuthState { + + public class OAuthInvalidStateException extends Sentry_Exception {} + + private static Map JWTHeader = new Map{ + 'alg' => 'HS256', + 'typ' => 'JWT' + }; + private static String JWTAlgo = 'hmacSHA256'; + + + public Map data; + + public String org_id { + get { return (String) data.get('org_id'); } + set { data.put('org_id', value); } + } + + public String csrf { + get { return (String) data.get('csrf'); } + set { data.put('csrf', value); } + } + + public String user_id { + get { return (String) data.get('user_id'); } + set { data.put('user_id', value); } + } + + public String namespace { + get { return (String) data.get('salesforce_namespace'); } + set { data.put('salesforce_namespace', value); } + } + + public String instance_type { + get { return (String) data.get('salesforce_instance_type'); } + set { data.put('salesforce_instance_type', value); } + } + + public String primary_stripe_account_id { + get { return (String) data.get('primary_stripe_account_id'); } + set { data.put('primary_stripe_account_id', value); } + } + + public String salesforce_instance_subdomain { + get { return (String) data.get('salesforce_instance_subdomain'); } + set { data.put('salesforce_instance_subdomain', value); } + } + + + public static StripeOAuthState create() { + Stripe_Connection__c conn = utilities.getStripeConnection(); + Url instanceUrl = new Url(Url.getOrgDomainUrl().toExternalForm()); + String subdomain = instanceUrl.getHost().split('\\.')[0]; + return new StripeOAuthState( + UserInfo.getOrganizationId(), + EncodingUtil.convertToHex(Crypto.generateAesKey(256)), + subdomain, + conn.Primary_Stripe_Account_Id__c); + } + + public static StripeOAuthState from_encrypted_state(String encrypted_state) { + Map data = StripeOAuthState.decrypt(encrypted_state); + if (data == null) { + OAuthInvalidStateException ex = (OAuthInvalidStateException) Sentry_ExceptionFactory.build(OAuthInvalidStateException.class); + ex.setMessage('Invalid OAuth State'); + ex.context.put('encrypted_state', encrypted_state); + + throw ex; + } + return new StripeOAuthState(data); + } + + private StripeOAuthState() { + } + + public StripeOAuthState(Map data) { + this.data = data; + } + + public StripeOAuthState(String org_id, String csrf, String salesforce_instance_subdomain, String primary_stripe_account_id) { + this.data = new Map(); + this.org_id = org_id; + this.csrf = csrf; + this.namespace = constants.NAMESPACE; + this.instance_type = Sentry_Environment.getInstanceType().name(); + this.salesforce_instance_subdomain = salesforce_instance_subdomain; + this.primary_stripe_account_id = primary_stripe_account_id; + } + + override public String toString() { + return StripeOAuthState.encrypt(data); + } + + public String toJSON() { + return JSON.serialize(data); + } + + // jwt encoding reffed from + // https://help.salesforce.com/s/articleView?id=sfdo.EL_Create_a_JWT.htm&type=5 + + public static String toSanitizedBase64(Blob b) { + String base64 = EncodingUtil.base64Encode(b); + base64 = base64.replaceAll('=', ''); + base64 = base64.replaceAll('\\+', '-'); + base64 = base64.replaceAll('\\/', '_'); + + return base64; + } + + public static Blob fromSanitizedBase64(String s) { + String base64 = s.replaceAll('-', '+'); + base64 = base64.replaceAll('_', '/'); + // '=' * (4 - b64.length % 4) + base64 = base64 + '='.repeat(4 - Math.mod(base64.length(), 4)); + return EncodingUtil.base64Decode(base64); + } + + public static String encrypt(Map state) { + try { + String header_b64 = toSanitizedBase64(Blob.valueOf(JSON.serialize(JWTHeader))); + String state_b64 = toSanitizedBase64(Blob.valueOf(JSON.serialize(state))); + Blob hash = Crypto.generateMac(JWTAlgo, Blob.valueOf(state_b64), utilities.getOAuthStateSigningKey()); + String hash_b64 = toSanitizedBase64(hash); + return header_b64 + '.' + state_b64 + '.' + hash_b64; + } catch (Exception e) { + errorLogger.create('StripeOAuthState.encrypt failed', e); + return null; + } + } + + public static Map decrypt(String state) { + try { + List parts = state.split('\\.'); + String input = parts[1]; + Blob hash = fromSanitizedBase64(parts[2]); + Boolean verified = Crypto.verifyHmac(JWTAlgo, Blob.valueOf(input), utilities.getOAuthStateSigningKey(), hash); + if (!verified) { + errorLogger.create('StripeOAuthState.decrypt failed', 'hash verification failed', '120', 'StripeOAuthState.decrypt'); + return null; + } + return (Map) JSON.deserializeUntyped(fromSanitizedBase64(parts[1]).toString()); + } catch (Exception e) { + errorLogger.create('StripeOAuthState.decrypt failed', e); + return null; + } + } +} \ No newline at end of file diff --git a/sfdx/force-app/main/default/classes/StripeOAuthState.cls-meta.xml b/sfdx/force-app/main/default/classes/StripeOAuthState.cls-meta.xml new file mode 100644 index 0000000000..40d67933d0 --- /dev/null +++ b/sfdx/force-app/main/default/classes/StripeOAuthState.cls-meta.xml @@ -0,0 +1,5 @@ + + + 54.0 + Active + diff --git a/sfdx/force-app/main/default/classes/UriTargets.cls b/sfdx/force-app/main/default/classes/UriTargets.cls new file mode 100644 index 0000000000..283175508b --- /dev/null +++ b/sfdx/force-app/main/default/classes/UriTargets.cls @@ -0,0 +1,80 @@ +/** + * Created by jmather-c on 9/1/23. + */ + +public with sharing class UriTargets { + static final Debug_Helper debugger = new Debug_Helper(); + + public static String getTranslateAllEndpoint() { + return getPlatformBaseUri() + constants.RUBY_SERVICE_TRANSLATE_ALL_URI; + } + + public static String getTranslateEndpoint() { + return getPlatformBaseUri() + constants.RUBY_SERVICE_TRANSLATE_URI; + } + + public static String getConfigEndpoint() { + return getPlatformBaseUri() + constants.RUBY_SERVICE_CONFIG_URI; + } + + public static String getConnectionStatusesEndpoint() { + return getPlatformBaseUri() + constants.RUBY_SERVICE_CONNECTION_STATUS_URI; + } + + public static String getOpenApiSpecEndpoint() { + return getPlatformBaseUri() + constants.RUBY_SERVICE_OPENAPI_URI; + } + + public static String getPostInstallEndpoint() { + return getPlatformBaseUri() + constants.RUBY_SERVICE_POST_INSTALL_URI; + } + + public static String getStripeAuthorizationUri(Boolean liveMode, StripeOAuthState state) { + String params = '?salesforceNamespace=' + constants.NAMESPACE; + params += '&state=' + state.toString(); + debugger.debug('UriTargets.getStripeAuthorizationUri state', state.data); + + if (liveMode) { + return getAuthorizationBaseUri() + constants.RUBY_SERVICE_STRIPE_LIVE_URI + params; + } + + return getAuthorizationBaseUri() + constants.RUBY_SERVICE_STRIPE_TEST_URI + params; + } + + public static String getIntegrationUserAuthorizationUrl(StripeOAuthState state, Boolean forceLogin) { + String params = '?salesforceNamespace=' + constants.NAMESPACE; + if (forceLogin) { + params += '&prompt=login%20consent'; + } + + params += '&state=' + state.toString(); + debugger.debug('UriTargets.getIntegrationUserAuthorizationUrl state', state.data); + + if (constants.IS_SANDBOX) { + return getAuthorizationBaseUri() + constants.RUBY_SERVICE_SALESFORCE_TEST_URI + params; + } + + return getAuthorizationBaseUri() + constants.RUBY_SERVICE_SALESFORCE_PROD_URI + params; + } + + public static String getAuthorizationBaseUri() { + Setup_Connection_Data__mdt config = utilities.getConnectionData(); + + if (config != null && config.Local_Authorization_Target__c) { + return constants.RUBY_SERVICE_LOCAL_BASE_URI; + } + + return constants.RUBY_SERVICE_BASE_URI; + } + + public static String getPlatformBaseUri() { + Setup_Connection_Data__mdt config = utilities.getConnectionData(); + + if (config != null && String.isNotEmpty(config.Platform_Target__c)) { + return config.Platform_Target__c; + } + + return constants.RUBY_SERVICE_BASE_URI; + } + +} \ No newline at end of file diff --git a/sfdx/force-app/main/default/classes/UriTargets.cls-meta.xml b/sfdx/force-app/main/default/classes/UriTargets.cls-meta.xml new file mode 100644 index 0000000000..40d67933d0 --- /dev/null +++ b/sfdx/force-app/main/default/classes/UriTargets.cls-meta.xml @@ -0,0 +1,5 @@ + + + 54.0 + Active + diff --git a/sfdx/force-app/main/default/classes/constants.cls b/sfdx/force-app/main/default/classes/constants.cls index 8d0d33d78c..3959a5e5ce 100644 --- a/sfdx/force-app/main/default/classes/constants.cls +++ b/sfdx/force-app/main/default/classes/constants.cls @@ -29,9 +29,17 @@ public with sharing class constants { //Stripe Ruby URIS public static final String RUBY_SERVICE_BASE_URI = 'https://salesforce.suitesync.io'; + public static final String RUBY_SERVICE_LOCAL_BASE_URI = 'http://localhost:3100'; public static final String RUBY_SERVICE_CONFIG_URI = '/v1/configuration'; + public static final String RUBY_SERVICE_CONNECTION_STATUS_URI = '/v1/connection_statuses'; public static final String RUBY_SERVICE_TRANSLATE_URI = '/v1/translate'; public static final String RUBY_SERVICE_TRANSLATE_ALL_URI = '/v1/translate_all'; + public static final String RUBY_SERVICE_SALESFORCE_PROD_URI = '/auth/v2/salesforce'; + public static final String RUBY_SERVICE_SALESFORCE_TEST_URI = '/auth/v2/salesforcesandbox'; + public static final String RUBY_SERVICE_STRIPE_LIVE_URI = '/auth/v2/stripelivemode'; + public static final String RUBY_SERVICE_STRIPE_TEST_URI = '/auth/v2/stripetestmode'; + public static final String RUBY_SERVICE_POST_INSTALL_URI = '/v1/post-install'; + public static final String RUBY_SERVICE_OPENAPI_URI = '/openapi.json'; //Setup Data Record Name public static final String SETUP_DATA_RECORD_NAME = 'SetupData'; diff --git a/sfdx/force-app/main/default/classes/errorLogger.cls b/sfdx/force-app/main/default/classes/errorLogger.cls index c1fc612eb4..571938d898 100644 --- a/sfdx/force-app/main/default/classes/errorLogger.cls +++ b/sfdx/force-app/main/default/classes/errorLogger.cls @@ -15,7 +15,7 @@ public virtual with sharing class errorLogger { debugger.debug('errorLogger', err); } public static void create(String errorName, Exception excep) { - if(!Test.isRunningTest())Sentry.record(excep); debugger.debug(errorName, excep); + if(!Test.isRunningTest() && !utilities.isDeveloperModeEnabled())Sentry.record(excep); } } diff --git a/sfdx/force-app/main/default/classes/maintenanceUtilities.cls b/sfdx/force-app/main/default/classes/maintenanceUtilities.cls index 2f82f3ec8f..693d33b040 100644 --- a/sfdx/force-app/main/default/classes/maintenanceUtilities.cls +++ b/sfdx/force-app/main/default/classes/maintenanceUtilities.cls @@ -3,7 +3,26 @@ global with sharing class maintenanceUtilities { // resets the organizational-level API key // this is not accessible at all once the package is deployed global static void resetServiceConnection() { - Stripe_Connection__c stripeConnectRec = Stripe_Connection__c.getOrgDefaults(); - utilities.generatePackageKey(stripeConnectRec); + Stripe_Connection__c stripeConnectRec = utilities.getStripeConnection(); + utilities.generatePackageKey(stripeConnectRec); + } + + global static void resetEnvironment() { + maintenanceUtilities.resetSetupData(); + maintenanceUtilities.resetConnection(); + } + + @Future + global static void resetSetupData() { + List setupData = [SELECT Id FROM Setup_Data__c]; + delete setupData; + } + + @Future + global static void resetConnection() { + Stripe_Connection__c stripeConnectRec = utilities.getStripeConnection(); + if (stripeConnectRec.Id != null) { + delete stripeConnectRec; + } } } \ No newline at end of file diff --git a/sfdx/force-app/main/default/classes/setupAssistant.cls b/sfdx/force-app/main/default/classes/setupAssistant.cls index 15f9578901..68a85cff7a 100644 --- a/sfdx/force-app/main/default/classes/setupAssistant.cls +++ b/sfdx/force-app/main/default/classes/setupAssistant.cls @@ -1,10 +1,37 @@ public with sharing class setupAssistant { + @TestVisible + static final String STATUS_CONNECTED = 'connected'; + @TestVisible + static final String STATUS_DISCONNECTED = 'disconnected'; + @TestVisible + static final String STATUS_FAILED = 'failed'; + @TestVisible + static final String STATUS_FRESH = 'fresh'; + @TestVisible + static final String KEY_SALESFORCE = 'salesforce'; + @TestVisible + static final String KEY_STRIPE = 'stripe'; + @TestVisible + static final String KEY_STATUS = 'status'; + static final String KEY_SERVICE = 'service'; + @TestVisible + static final String KEY_SERVICES = 'services'; + static final String KEY_CONNECTION_STATUS = 'connection_status'; + @TestVisible + static final String SERVICE_DELIMINATOR = '|'; + @TestVisible + static final String KEY_SALESFORCE_SERVICE = KEY_SALESFORCE + SERVICE_DELIMINATOR + UserInfo.getOrganizationId(); + @TestVisible + static final String KEY_STRIPE_SERVICE = KEY_STRIPE + SERVICE_DELIMINATOR + KEY_STRIPE; + @TestVisible private static ConfigPayloadHelper payloadHelper = new ConfigPayloadHelper(); @TestVisible private static Debug_Helper debugger = new Debug_Helper(); + public class ConnectionNotInitializedException extends Sentry_Exception {} + static Boolean isConnected() { Stripe_Connection__c stripeConnectRec = Stripe_Connection__c.getOrgDefaults(); return utilities.isConnected(stripeConnectRec); @@ -18,6 +45,36 @@ public with sharing class setupAssistant { return ref.getUrl(); } + @AuraEnabled(Cacheable=true) + public static Boolean isJSDebugEnabled() { + return utilities.isJSDebuggingEnabled(); + } + + @AuraEnabled(Cacheable=true) + public static Boolean isOAuthAutoCloseWindowEnabled() { + return utilities.isOAuthAutoCloseEnabled(); + } + + @AuraEnabled(Cacheable=false) + public static Map validateSharedState(String service, String state) { + debugger.debug('validateSharedState service', service); + debugger.debug('validateSharedState state', state); + try { + Map data = StripeOAuthState.from_encrypted_state(state).data; + Stripe_Connection__c conn = utilities.getStripeConnection(); + String stripePrefix = KEY_STRIPE + SERVICE_DELIMINATOR; + Boolean isStripeConnection = service.startsWith(stripePrefix); + if (String.isBlank(conn.Primary_Stripe_Account_Id__c) && isStripeConnection) { + conn.Primary_Stripe_Account_Id__c = service.substring(stripePrefix.length()); + update conn; + } + return data; + } catch (Exception e) { + errorLogger.create('OAuth state decryption failed', e); + throw e; + } + } + @AuraEnabled(Cacheable=true) public static String getExportableConfigDownloadUrl() { return Page.ConfigExportDownload.getUrl(); @@ -99,34 +156,79 @@ public with sharing class setupAssistant { return rd.getJsonString(); } + @AuraEnabled + public static String revokeIntegrationUserAuthorization() { + responseData rd = new responseData(); + Stripe_Connection__c stripeConnectRec = Stripe_Connection__c.getOrgDefaults(); + stripeConnectRec.Salesforce_Connected__c = false; + rd.put(KEY_STATUS, STATUS_DISCONNECTED); + rd.put(KEY_SERVICE, KEY_SALESFORCE_SERVICE); + update stripeConnectRec; + return rd.getJsonString(); + } + + // validates connection status + @AuraEnabled + public static String getIntegrationUserAuthorizationUri(Boolean forceLogin) { + StripeOAuthState state = StripeOAuthState.create(); + responseData rd = new responseData(); + rd.put('authorization_uri', UriTargets.getIntegrationUserAuthorizationUrl(state, forceLogin)); + rd.put('message_origin_uri', UriTargets.getAuthorizationBaseUri()); + + return rd.getJsonString(); + } + // validates connection status @AuraEnabled - public static String validateConnectionStatus(Boolean isConnectedCallback, String systemConnected) { + public static String getStripeAuthorizationUri(Boolean liveMode) { + StripeOAuthState state = StripeOAuthState.create(); responseData rd = new responseData(); + rd.put('authorization_uri', UriTargets.getStripeAuthorizationUri(liveMode, state)); + rd.put('message_origin_uri', UriTargets.getAuthorizationBaseUri()); + + return rd.getJsonString(); + } + + + // validates connection status + @AuraEnabled + public static String validateConnectionStatus(String systemToCheck) { + responseData rd = new responseData(); + Map config = new Map(); + config.put('platform_uri', UriTargets.getAuthorizationBaseUri()); + config.put('salesforce_sandbox_uri_fragment', '/auth/v2/salesforcesandbox'); + config.put('salesforce_production_uri_fragment', '/auth/v2/salesforce'); + config.put('stripe_live_uri_fragment', '/auth/v2/stripelivemode'); + config.put('stripe_test_uri_fragment', '/auth/v2/stripetestmode'); + config.put('is_sandbox', constants.IS_SANDBOX); + config.put('salesforce_namespace', constants.NAMESPACE); + rd.put('config', config); + + StripeOAuthState state = StripeOAuthState.create(); + config.put('state', state.toString()); try { // gets custom setting record to determin if we are in a sandbox or production org - rd.put('isSandbox', constants.IS_SANDBOX); - rd.put('salesforceNamespace', constants.NAMESPACE); - Stripe_Connection__c stripeConnectRec = Stripe_Connection__c.getOrgDefaults(); + Stripe_Connection__c stripeConnectRec = utilities.getStripeConnection(); // checks if we have a org-level API key generated, if we don't we should generate one - if(stripeConnectRec.Id == null) { + // saving this conditional for later down the line... +// if (stripeConnectRec.Id == null && stripeConnectRec.Primary_Stripe_Account_Id__c != null) { + if (stripeConnectRec.Id == null) { // NOTE this is a VERY important line! `generatePackageKey` makes another callout and persists the organization-specific API key // on the ruby service. This key is also persisted locally within the salesforce account. utilities.generatePackageKey(stripeConnectRec); - rd.put('isStripeConnected','stripeDisconnected'); - rd.put('isSalesforceConnected','salesforceDisconnected'); + rd.put(KEY_STRIPE, STATUS_DISCONNECTED); + rd.put(KEY_SALESFORCE, STATUS_DISCONNECTED); return rd.getJsonString(); } // make callout to ruby services configuration endpoint to see if the org is connected to Stripe and Salesforce - String route = utilities.getPlatformConfigEndpoint(); + String route = UriTargets.getConfigEndpoint(); HttpResponse response = utilities.makeCallout(route, 'GET'); - Map errorBody; Map responseBody; /* @@ -134,8 +236,8 @@ public with sharing class setupAssistant { response from the ruby service and send a status of failed to signify to show an error toast */ if(response.getStatusCode() != 200) { - rd.put('isStripeConnected','failed'); - rd.put('isSalesforceConnected','failed'); + rd.put(KEY_STRIPE, STATUS_FAILED); + rd.put(KEY_SALESFORCE, STATUS_FAILED); errorLogger.create('validateConnectionStatus', String.valueOf(response.getStatusCode()), (String)response.getStatus(), 'Failed to get connection status from Ruby service.'); return rd.getJsonString(); } @@ -146,29 +248,190 @@ public with sharing class setupAssistant { */ responseBody = (Map)JSON.deserializeUntyped(response.getBody()); - payloadHelper.extractConnectionStatus(responseBody, stripeConnectRec); + //get connection status values from response + Map connectionStatus = (Map)responseBody.get(KEY_CONNECTION_STATUS); + stripeConnectRec.Stripe_Connected__c = (Boolean)connectionStatus.get(KEY_STRIPE); + stripeConnectRec.Salesforce_Connected__c = (Boolean)connectionStatus.get(KEY_SALESFORCE); + + // Question: why do we care if it's a connected callback? Why can't we just return the same data regardless? + // Answer: returning 'failed' tells us if there is a problem between the ruby service and salesforce. + // Answer 2: It was the tell for if we were checking a single service or both. + // Question: why do we need distinct strings here for the status? Can't we just pass a boolean? + // Answer: The value is an enum: connected, disconnected, failed, or fresh. + + rd.put(KEY_SALESFORCE, (stripeConnectRec.Salesforce_Connected__c) ? STATUS_CONNECTED : STATUS_DISCONNECTED); + rd.put(KEY_STRIPE, (stripeConnectRec.Stripe_Connected__c) ? STATUS_CONNECTED : STATUS_DISCONNECTED); + + // We return a connection status of 'fresh' to determine if we should show a toast message of success or not + if (systemToCheck == KEY_SALESFORCE) { + rd.put(KEY_SALESFORCE, (stripeConnectRec.Salesforce_Connected__c) ? STATUS_FRESH : STATUS_DISCONNECTED); + } else if (systemToCheck == KEY_STRIPE) { + rd.put(KEY_STRIPE, (stripeConnectRec.Stripe_Connected__c) ? STATUS_FRESH : STATUS_DISCONNECTED); + } - // TODO why do we care if it's a connected callback? Why can't we just return the same data regardless? - if(isConnectedCallback) { - // why do we need distinct strings here for the status? Can't we just pass a boolean? - // because of the 'freshConnection' value in the condition below. - String status = stripeConnectRec.Salesforce_Connected__c ? 'salesforceConnected' : 'salesforceDisconnected'; - rd.put('isSalesforceConnected', status); + upsert stripeConnectRec; + return rd.getJsonString(); + } catch (Exception e) { + rd.addError(e); + } - status = stripeConnectRec.Stripe_Connected__c ? 'stripeConnected' : 'stripeDisconnected'; - rd.put('isStripeConnected', status); - } else { - /*if the response shows they are connected we will udpate the Setup Connection custom setting record to signify they are connected - We return a connection status of freshConnection to determine if we should show a toast message of success or not*/ - if(systemConnected == constants.SYSTEM_STRIPE) { - String status = stripeConnectRec.Stripe_Connected__c ? 'freshConnection' : 'stripeDisconnected'; - rd.put('isStripeConnected', status); - } else if(systemConnected == constants.SYSTEM_SALESFORCE) { - String status = stripeConnectRec.Stripe_Connected__c ? 'freshConnection' : 'salesforceDisconnected'; - rd.put('isSalesforceConnected', status); - } + return rd.getJsonString(); + } + + @AuraEnabled + public static String checkServiceConnectionStatuses() { + responseData rd = new responseData(); + // gets custom setting record to determine if we are in a sandbox or production org + Stripe_Connection__c stripeConnectRec = utilities.getStripeConnection(); + + // checks if we have a org-level API key generated, if we don't we should generate one + if (stripeConnectRec.Id == null) { + // NOTE this is a VERY important line! `generatePackageKey` makes another callout and persists the organization-specific API key + // on the ruby service. This key is also persisted locally within the salesforce account. + utilities.generatePackageKey(stripeConnectRec); + rd.put(KEY_SERVICES, new Map{ + KEY_SALESFORCE_SERVICE => STATUS_DISCONNECTED, + KEY_STRIPE_SERVICE => STATUS_DISCONNECTED + }); + rd.put('message', 'Not yet connected.'); + } else { + Stripe_Connection__c conn = utilities.getStripeConnection(); + String STRIPE_SERVICE = String.isBlank(conn.Primary_Stripe_Account_Id__c) ? KEY_STRIPE_SERVICE : KEY_STRIPE + SERVICE_DELIMINATOR + conn.Primary_Stripe_Account_Id__c; + String salesforceStatus = (stripeConnectRec.Salesforce_Connected__c) ? STATUS_CONNECTED : STATUS_DISCONNECTED; + String stripeStatus = (stripeConnectRec.Stripe_Connected__c) ? STATUS_CONNECTED : STATUS_DISCONNECTED; + rd.put(KEY_SERVICES, new Map{ + KEY_SALESFORCE_SERVICE => salesforceStatus, + STRIPE_SERVICE => stripeStatus + }); + } + + return rd.getJsonString(); + } + + // Gets the current connection statuses (connected, disconnected, failed, or fresh) for both Stripe and Salesforce + // This forces checks of the tokens platform side. + @AuraEnabled(Continuation=true) + public static Object getServiceConnectionStatuses(String serviceToCheck) { + debugger.debug('getServiceConnectionStatuses', serviceToCheck); + // gets custom setting record to determin if we are in a sandbox or production org + Stripe_Connection__c stripeConnectRec = getStripeConnection(); + + // make callout to ruby services configuration endpoint to see if the org is connected to Stripe and Salesforce + String route = UriTargets.getConnectionStatusesEndpoint(); + Integer timeout = 30000; + HttpRequest request = utilities.buildRequest(route, 'GET', timeout); + debugger.debug('request', request); + Continuation con = new Continuation(timeout / 1000); + con.addHttpRequest(request); + con.state = serviceToCheck; + con.continuationMethod = 'handleServiceConnectionStatusesResponse'; + if (Test.isRunningTest()) { + con.continuationMethod = 'handleServiceConnectionStatusesResponseTest'; + } + debugger.debug('getServiceConnectionStatuses','returning continuation...'); + return con; + } + + // this is for tests... I know not why it's like this. + public static Object handleServiceConnectionStatusesResponseTest() { + List labels = new List(); + labels.add('continuation-1'); + return handleServiceConnectionStatusesResponse(labels, KEY_STRIPE_SERVICE); + } + + @AuraEnabled + public static Object handleServiceConnectionStatusesResponse(List labels, Object state) { + debugger.debug('handleServiceConnectionStatusesResponse','resuming continuation...'); + debugger.debug('handleServiceConnectionStatusesResponse.labels',labels); + debugger.debug('handleServiceConnectionStatusesResponse.state',state); + String serviceToCheck = String.valueOf(state); + + return handleServiceConnectionStatusesResponseProcessor(Continuation.getResponse(labels[0]), serviceToCheck); + } + + // Gets the current connection statuses (connected, disconnected, failed, or fresh) for both Stripe and Salesforce + // This forces checks of the tokens platform side. + public static Object getServiceConnectionStatusesSync(String serviceToCheck) { + debugger.debug('getServiceConnectionStatusesSync', serviceToCheck); + + // make callout to ruby services configuration endpoint to see if the org is connected to Stripe and Salesforce + String route = UriTargets.getConnectionStatusesEndpoint(); + Integer timeout = 30000; + HttpRequest request = utilities.buildRequest(route, 'GET', timeout); + debugger.debug('request', request); + + responseData rd = new responseData(); + + try { + Http http = new Http(); + HttpResponse response = http.send(request); + return handleServiceConnectionStatusesResponseProcessor(response, serviceToCheck); + } catch (Exception e) { + rd.addError(e); + } + + return rd.getJsonString(); + } + + public static Object handleServiceConnectionStatusesResponseProcessor(HttpResponse response, String serviceToCheck) { + responseData rd = new responseData(); + Stripe_Connection__c stripeConnectRec = getStripeConnection(); + + try { + Map responseBody; + Stripe_Connection__c conn = utilities.getStripeConnection(); + String STRIPE_SERVICE = String.isBlank(conn.Primary_Stripe_Account_Id__c) ? KEY_STRIPE_SERVICE : KEY_STRIPE + SERVICE_DELIMINATOR + conn.Primary_Stripe_Account_Id__c; + + /* + if we do not get a 200 status code back we create an Error Log record to show we did not get a success + response from the ruby service and send a status of failed to signify to show an error toast + */ + if(response.getStatusCode() != 200) { + rd.put(KEY_SERVICES, new Map { + KEY_SALESFORCE_SERVICE => STATUS_DISCONNECTED, + STRIPE_SERVICE => STATUS_DISCONNECTED + }); + errorLogger.create('validateConnectionStatus', String.valueOf(response.getStatusCode()), (String)response.getStatus(), 'Failed to get connection status from Ruby service.'); + rd.put('message', 'Failed to get connection status from Ruby service.' + response.getBody()); + return rd.getJsonString(); + } + + debugger.debug('handleServiceConnectionStatusesResponse response body', response.getBody()); + + /* + if we get a 200 response code from the ruby service we will check the connection status object + in the payload to determine weather the user successfully connected to stripe or not + */ + responseBody = (Map)JSON.deserializeUntyped(response.getBody()); + + //get connection status values from response + debugger.debug('Got connection status result', responseBody); + stripeConnectRec.Stripe_Connected__c = (Boolean)responseBody.get(KEY_STRIPE); + stripeConnectRec.Salesforce_Connected__c = (Boolean)responseBody.get(KEY_SALESFORCE); + debugger.debug('stripeConnectRec', stripeConnectRec); + + // Question: why do we care if it's a connected callback? Why can't we just return the same data regardless? + // Answer: returning 'failed' tells us if there is a problem between the ruby service and salesforce. + // Answer 2: It was the tell for if we were checking a single service or both. + // Question: why do we need distinct strings here for the status? Can't we just pass a boolean? + // Answer: The value is an enum: connected, disconnected, failed, or fresh. + + String salesforceStatus = (stripeConnectRec.Salesforce_Connected__c) ? STATUS_CONNECTED : STATUS_DISCONNECTED; + String stripeStatus = (stripeConnectRec.Stripe_Connected__c) ? STATUS_CONNECTED : STATUS_DISCONNECTED; + + // We return a connection status of 'fresh' to determine if we should show a toast message of success or not +// debugger.debug('serviceToCheck', serviceToCheck); + if (serviceToCheck == KEY_SALESFORCE_SERVICE) { + salesforceStatus = (stripeConnectRec.Salesforce_Connected__c) ? STATUS_FRESH : salesforceStatus; + } else if (serviceToCheck == STRIPE_SERVICE) { + stripeStatus = (stripeConnectRec.Stripe_Connected__c) ? STATUS_FRESH : stripeStatus; } + rd.put(KEY_SERVICES, new Map { + KEY_SALESFORCE_SERVICE => salesforceStatus, + STRIPE_SERVICE => stripeStatus + }); + upsert stripeConnectRec; return rd.getJsonString(); } catch (Exception e) { @@ -221,27 +484,14 @@ public with sharing class setupAssistant { 'Salesforce-Key' => '' }; - String route = constants.RUBY_SERVICE_BASE_URI + '/openapi.json'; + // this has to stay the ruby base service uri because the request is being made from apex + String route = UriTargets.getOpenApiSpecEndpoint(); Map responseBody = null; - Setup_Connection_Data__mdt connectionData = utilities.getConnectionData(); - if (connectionData.Use_Local_OpenAPI_Spec__c) { - String NS = constants.NAMESPACE == 'c' ? null : constants.NAMESPACE; - List resources = [SELECT Body FROM StaticResource WHERE Name = 'OpenApiOverride' AND NamespacePrefix = :NS]; - if (resources.size() > 0) { - responseBody = (Map)JSON.deserializeUntyped(resources[0].Body.toString()); - } - } - HttpResponse response; - if (responseBody == null) { - response = utilities.makeCallout(route,'GET', headers); - if (response.getStatusCode() == 200) { - responseBody = (Map)JSON.deserializeUntyped(response.getBody()); - } - } - - if(responseBody != null) { + response = utilities.makeCallout(route,'GET', headers); + if (response.getStatusCode() == 200) { + responseBody = (Map)JSON.deserializeUntyped(response.getBody()); rd.put('formattedStripeCustomerFields', (List)responseBody.get('formattedStripeCustomerFields')); rd.put('formattedStripeProductItemFields', (List)responseBody.get('formattedStripeProductItemFields')); rd.put('formattedStripeSubscriptionFields', (List)responseBody.get('formattedStripeSubscriptionFields')); @@ -251,11 +501,7 @@ public with sharing class setupAssistant { rd.put('formattedStripePriceOrderItemFields', (List)responseBody.get('formattedStripePriceFields')); rd.put('formattedStripeCouponFields', (List)responseBody.get('formattedStripeCouponFields')); } else { - if (response != null) { - errorLogger.create('getFormattedStripeObjectFields', String.valueOf(response.getStatusCode()), (String)response.getStatus(), 'Failed to get mapping configuration from ruby service.'); - } else { - errorLogger.create('getFormattedStripeObjectFields', 'An unknown error occurred', null, null); - } + errorLogger.create('getFormattedStripeObjectFields', String.valueOf(response.getStatusCode()), (String)response.getStatus(), 'Failed to get mapping configuration from ruby service.'); } } catch (Exception e) { rd.addError(e); @@ -276,7 +522,7 @@ public with sharing class setupAssistant { Map allMappingConfigurations = new Map(); //construct call out to rubys configuration endpoint - String route = utilities.getPlatformConfigEndpoint(); + String route = UriTargets.getConfigEndpoint(); HttpResponse response = utilities.makeCallout(route,'GET'); //if the call out is successful pull out all mapping objects and add to list @@ -292,6 +538,7 @@ public with sharing class setupAssistant { } } } catch (Exception e) { + debugger.debug('getMappingConfigurations error', e); rd.addError(e); } rd.put('isConnected',isConnected); @@ -304,7 +551,7 @@ public with sharing class setupAssistant { responseData rd = new responseData(); try { if(isConnected()) { - String route = utilities.getPlatformConfigEndpoint(); + String route = UriTargets.getConfigEndpoint(); HttpResponse response = utilities.makeCallout(route, 'PUT', jsonMappingConfigurationsObject); rd = utilities.validateCalloutResponse(response, 'saveMappingConfigurations'); } @@ -328,7 +575,7 @@ public with sharing class setupAssistant { } //make callout to ruby services configuration endpoint to get stored stripe setting values - String route = utilities.getPlatformConfigEndpoint(); + String route = UriTargets.getConfigEndpoint(); HttpResponse response = utilities.makeCallout(route, 'GET'); Map errorBody; @@ -432,7 +679,7 @@ public with sharing class setupAssistant { 'settings' => settings }; - String route = utilities.getPlatformConfigEndpoint(); + String route = UriTargets.getConfigEndpoint(); HttpResponse response = utilities.makeCallout(route, 'PUT', JSON.serialize(resquestBody)); rd = utilities.validateCalloutResponse(response, 'saveSyncPreferences'); @@ -458,7 +705,7 @@ public with sharing class setupAssistant { } }; - String route = utilities.getPlatformConfigEndpoint(); + String route = UriTargets.getConfigEndpoint(); HttpResponse response = utilities.makeCallout(route, 'PUT', JSON.serialize(resquestBody)); rd = utilities.validateCalloutResponse(response, 'activatePolling'); } @@ -490,7 +737,7 @@ public with sharing class setupAssistant { Sync_Record__c recordToSync = syncRecordList[0]; - String route = utilities.getPlatformTranslateEndpoint(); + String route = UriTargets.getTranslateEndpoint(); Map body = new Map{ 'object_type' => (String)recordToSync.Primary_Object_Type__c, @@ -528,7 +775,7 @@ public with sharing class setupAssistant { } //make callout to ruby services configuration endpoint to get stored stripe setting values - String route = utilities.getPlatformConfigEndpoint(); + String route = UriTargets.getConfigEndpoint(); HttpResponse response = utilities.makeCallout(route, 'GET'); if (response.getStatusCode() != 200) { @@ -613,7 +860,7 @@ public with sharing class setupAssistant { 'filters' => queryFilterMap } }; - String route = utilities.getPlatformConfigEndpoint(); + String route = UriTargets.getConfigEndpoint(); HttpResponse response = utilities.makeCallout(route, 'PUT', JSON.serialize(resquestBody)); if(response.getStatusCode() != 200) { @@ -645,7 +892,7 @@ public with sharing class setupAssistant { debugger.debug('setupAssistant.syncAllRecords', 'is connected'); - String route = utilities.getPlatformTranslateAllEndpoint(); + String route = UriTargets.getTranslateAllEndpoint(); Map body = new Map{ 'object_type' => objectType @@ -707,7 +954,7 @@ public with sharing class setupAssistant { } //here is where we need to validate if its record or not - String route = utilities.getPlatformTranslateEndpoint(); + String route = UriTargets.getTranslateEndpoint(); Map body = new Map { 'object_type' => objectName, @@ -940,12 +1187,22 @@ public with sharing class setupAssistant { }; } + private static Stripe_Connection__c getStripeConnection() { + Stripe_Connection__c stripeConnectRec = Stripe_Connection__c.getOrgDefaults(); + + // checks if we have a org-level API key generated, if we don't we should generate one + if (stripeConnectRec.Id == null) { + throw new ConnectionNotInitializedException(); + } + + return stripeConnectRec; + } //Creates a test metadata record in test context - @testVisible static List setupConfigMetadata { + @TestVisible static List setupConfigMetadata { get { if (setupConfigMetadata == null) - setupConfigMetadata = utilities.getStripeConnectionKey(); + setupConfigMetadata = utilities.getStripeConnectionData(); return setupConfigMetadata; } set; } } diff --git a/sfdx/force-app/main/default/classes/test_errorLogger.cls b/sfdx/force-app/main/default/classes/test_errorLogger.cls index f3ab78bd62..8b5c115817 100644 --- a/sfdx/force-app/main/default/classes/test_errorLogger.cls +++ b/sfdx/force-app/main/default/classes/test_errorLogger.cls @@ -18,14 +18,16 @@ public with sharing class test_errorLogger { List logs = debugOutput.lines; - System.assertEquals(3, logs.size()); + System.assertEquals(4, logs.size()); String line1 = logs[0]; String line2 = logs[1]; String line3 = logs[2]; + String line4 = logs[3]; System.assertEquals('[errorLogger] {action_taken=Error, dump=dump test, line_number=error, message=error}', line1); - System.assertEquals('[jsonParseError] System.JSONException: Unexpected character (\'b\' (code 98)): expected a valid value (number, String,', line2); - System.assertEquals('[jsonParseError] array, object, \'true\', \'false\' or \'null\') at input location [1,2]', line3); + System.assertEquals('[jsonParseError] {cause=null, lineNumber=11, message=Unexpected character (\'b\' (code 98)): expected a valid value (nu', line2); + System.assertEquals('[jsonParseError] mber, String, array, object, \'true\', \'false\' or \'null\') at input location [1,2], stackTrace=(System', line3); + System.assertEquals('[jsonParseError] Code)\nClass.test_errorLogger.testCreate: line 12, column 1, type=System.JSONException}', line4); } } diff --git a/sfdx/force-app/main/default/classes/test_setupAssistant.cls b/sfdx/force-app/main/default/classes/test_setupAssistant.cls index 9c851c8c24..f0199d9d23 100644 --- a/sfdx/force-app/main/default/classes/test_setupAssistant.cls +++ b/sfdx/force-app/main/default/classes/test_setupAssistant.cls @@ -2,6 +2,41 @@ public with sharing class test_setupAssistant { static Debug_Helper debugger = new Debug_Helper(); + @IsTest + static void testIsJSDebugEnabled() { + Setup_Connection_Data__mdt testSetupData = getTestStripeConnectionKey(); + testSetupData.Enable_JS_Debug__c = false; + setTestGlobalKey(testSetupData); + + Boolean isJSDebugEnabledFalse = setupAssistant.isJSDebugEnabled(); + testSetupData.Enable_JS_Debug__c = true; + Boolean isJSDebugEnabledTrue = setupAssistant.isJSDebugEnabled(); + + System.assertEquals(true, isJSDebugEnabledTrue, 'correctly relays true'); + System.assertEquals(false, isJSDebugEnabledFalse, 'correctly relays false'); + } + + @IsTest + static void testIsOAuthAutoCloseWindowEnabled() { + Setup_Connection_Data__mdt testSetupData = getTestStripeConnectionKey(); + testSetupData.OAuth_AutoClose_Window__c = false; + setTestGlobalKey(testSetupData); + + Boolean isOAuthAutoCloseWindowEnabledFalse = setupAssistant.isOAuthAutoCloseWindowEnabled(); + testSetupData.OAuth_AutoClose_Window__c = true; + Boolean isOAuthAutoCloseWindowEnabledTrue = setupAssistant.isOAuthAutoCloseWindowEnabled(); + + System.assertEquals(true, isOAuthAutoCloseWindowEnabledTrue, 'correctly relays true'); + System.assertEquals(false, isOAuthAutoCloseWindowEnabledFalse, 'correctly relays false'); + } + + @IsTest + static void testGetDownloadForSupportUrl() { + Id recId = UserInfo.getUserId(); + String url = setupAssistant.getDownloadForSupportUrl(recId); + System.assert(url.contains('recordId=' + recId), 'url contains recordId set to ' + recId); + } + @isTest static public void testSetupAssistant_getSetupData() { setupAssistant.saveData(new Map(), false); @@ -63,15 +98,15 @@ public with sharing class test_setupAssistant { Test.startTest(); Test.setMock(HttpCalloutMock.class, new stripeConnectionSuccessMock()); - String connectedCallbackResponse = setupAssistant.validateConnectionStatus(true, ''); + String connectedCallbackResponse = setupAssistant.validateConnectionStatus(null); Test.stopTest(); Map connectedCallbackResponseMap = (Map)JSON.deserializeUntyped(connectedCallbackResponse); System.assert((Boolean)connectedCallbackResponseMap.get('isSuccess'), connectedCallbackResponseMap.get('error')); Map connectecCallbackResultsMap = (Map)connectedCallbackResponseMap.get('results'); - System.assertEquals('stripeConnected', connectecCallbackResultsMap.get('isStripeConnected')); - System.assertEquals('salesforceConnected', connectecCallbackResultsMap.get('isSalesforceConnected')); + System.assertEquals(setupAssistant.STATUS_CONNECTED, connectecCallbackResultsMap.get(setupAssistant.KEY_STRIPE)); + System.assertEquals(setupAssistant.STATUS_CONNECTED, connectecCallbackResultsMap.get(setupAssistant.KEY_SALESFORCE)); } @isTest @@ -82,14 +117,14 @@ public with sharing class test_setupAssistant { Test.startTest(); Test.setMock(HttpCalloutMock.class, new stripeConnectionSuccessMock()); - String response = setupAssistant.validateConnectionStatus(true, ''); + String response = setupAssistant.validateConnectionStatus(null); Test.stopTest(); Map responseMap = (Map)JSON.deserializeUntyped(response); System.assert((Boolean)responseMap.get('isSuccess'), responseMap.get('error')); Map resultsMap = (Map)responseMap.get('results'); - System.assertEquals('stripeConnected', resultsMap.get('isStripeConnected')); - System.assertEquals('salesforceConnected', resultsMap.get('isSalesforceConnected')); + System.assertEquals(setupAssistant.STATUS_CONNECTED, resultsMap.get(setupAssistant.KEY_STRIPE)); + System.assertEquals(setupAssistant.STATUS_CONNECTED, resultsMap.get(setupAssistant.KEY_SALESFORCE)); } @isTest @@ -100,7 +135,7 @@ public with sharing class test_setupAssistant { Test.startTest(); Test.setMock(HttpCalloutMock.class, new stripeNotConnectedMock()); - String stripeResponse = setupAssistant.validateConnectionStatus(false, 'stripe'); + String stripeResponse = setupAssistant.validateConnectionStatus('stripe'); Test.stopTest(); Map stripeResponseMap = (Map)JSON.deserializeUntyped(stripeResponse); @@ -108,7 +143,7 @@ public with sharing class test_setupAssistant { System.assert((Boolean)stripeResponseMap.get('isSuccess'), stripeResponseMap.get('error')); Map stripeResultsMap = (Map)stripeResponseMap.get('results'); - System.assertEquals('stripeDisconnected', stripeResultsMap.get('isStripeConnected')); + System.assertEquals(setupAssistant.STATUS_DISCONNECTED, stripeResultsMap.get(setupAssistant.KEY_STRIPE)); } @isTest @@ -119,7 +154,7 @@ public with sharing class test_setupAssistant { Test.startTest(); Test.setMock(HttpCalloutMock.class, new stripeNotConnectedMock()); - String salesforceResponse = setupAssistant.validateConnectionStatus(false, 'salesforce'); + String salesforceResponse = setupAssistant.validateConnectionStatus('salesforce'); Test.stopTest(); Map salesforceResponseMap = (Map)JSON.deserializeUntyped(salesforceResponse); @@ -127,7 +162,7 @@ public with sharing class test_setupAssistant { System.assert((Boolean)salesforceResponseMap.get('isSuccess'), salesforceResponseMap.get('error')); Map salesforceResultsMap = (Map)salesforceResponseMap.get('results'); - System.assertEquals('salesforceDisconnected', salesforceResultsMap.get('isSalesforceConnected')); + System.assertEquals(setupAssistant.STATUS_DISCONNECTED, salesforceResultsMap.get(setupAssistant.KEY_SALESFORCE)); } /* @@ -143,7 +178,7 @@ public with sharing class test_setupAssistant { Test.startTest(); Test.setMock(HttpCalloutMock.class, new stripeConnectionSuccessMock()); - String response = setupAssistant.validateConnectionStatus(true, ''); + String response = setupAssistant.validateConnectionStatus(null); Test.stopTest(); Map responseMap = (Map)JSON.deserializeUntyped(response); @@ -281,23 +316,15 @@ public with sharing class test_setupAssistant { Setup_Connection_Data__mdt testSetupData = getTestStripeConnectionKey(); setTestGlobalKey(testSetupData); insertTestConnectedRecord(); - stripeSuccessMock callMock = new stripeSuccessMock(); + OpenAPIMock callMock = new OpenAPIMock(); Test.setMock(HttpCalloutMock.class, callMock); Test.startTest(); - testSetupData.Use_Local_OpenAPI_Spec__c = true; - String staticResourceResponse = setupAssistant.getFormattedStripeObjectFields(); - System.assertEquals(0, callMock.calls); - - testSetupData.Use_Local_OpenAPI_Spec__c = false; String response = setupAssistant.getFormattedStripeObjectFields(); System.assertEquals(1, callMock.calls); Test.stopTest(); - // ensure we got semi-assured response for our static resource call... - System.assert(staticResourceResponse.length() > 200, 'Response for static resource call is non-trivial length'); - Map responseMap = (Map)JSON.deserializeUntyped(response); System.assert((Boolean)responseMap.get('isSuccess'), responseMap.get('error')); @@ -309,12 +336,23 @@ public with sharing class test_setupAssistant { List testSubscriptionItemFields = (List)resultsMap.get('formattedStripeSubscriptionItemFields'); List testPriceFields = (List)resultsMap.get('formattedStripePriceFields'); - System.assertEquals(5, testCustomerFields.size()); - System.assertEquals(5, testProductFields.size()); - System.assertEquals(5, testSubscriptionFields.size()); - System.assertEquals(5, testSubscriptionPhaseFields.size()); - System.assertEquals(5, testSubscriptionItemFields.size()); - System.assertEquals(5, testPriceFields.size()); + Map> assertions = new Map>{ + 'testCustomerFields' => new List{6, testCustomerFields.size()}, + 'testProductFields' => new List{4, testProductFields.size()}, + 'testSubscriptionFields' => new List{7, testSubscriptionFields.size()}, + 'testSubscriptionPhaseFields' => new List{5, testSubscriptionPhaseFields.size()}, + 'testSubscriptionItemFields' => new List{1, testSubscriptionItemFields.size()}, + 'testPriceFields' => new List{3, testPriceFields.size()} + }; + + // I know this looks dumb but so does fixing these one at a time... + Map expect = new Map{}; + Map actual = new Map{}; + for (String key : assertions.keySet()) { + expect.put(key, assertions.get(key)[0]); + actual.put(key, assertions.get(key)[1]); + } + System.assertEquals(expect, actual); } @@ -562,6 +600,7 @@ public with sharing class test_setupAssistant { fields.put(Setup_Connection_Data__mdt.Label.getDescribe().getName(), 'Default'); fields.put(Setup_Connection_Data__mdt.DeveloperName.getDescribe().getName(), 'Default'); fields.put(Setup_Connection_Data__mdt.Global_Key__c.getDescribe().getName(), 'testGlobalGUID'); + fields.put(Setup_Connection_Data__mdt.OAuth_State_Signing_Key__c.getDescribe().getName(), EncodingUtil.convertToHex(Crypto.generateAesKey(256))); testSetupData = (Setup_Connection_Data__mdt) JSON.deserialize(JSON.serialize(fields), Setup_Connection_Data__mdt.class); return testSetupData; @@ -786,6 +825,18 @@ public with sharing class test_setupAssistant { } } + private class OpenAPIMock implements HttpCalloutMock { + public Integer calls = 0; + public HttpResponse respond(HttpRequest req) { + calls++; + HttpResponse res = new HttpResponse(); + + res.setBody('{"formattedStripeCustomerFields":[{"label":"Standard Mappings","name":"standard","description":"","fields":[{"name":"balance","value":"balance","description":"

An integer amount in cents (or local equivalent) that represents the customer\'s current balance, which affect the customer\'s future invoices. A negative amount represents a credit that decreases the amount due on an invoice; a positive amount increases the amount due on an invoice.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"coupon","value":"coupon","description":"

A coupon contains information about a percent-off or amount-off discount you\\nmight want to apply to a customer. Coupons may be applied to subscriptions, invoices,\\ncheckout sessions, quotes, and more. Coupons do not work with conventional one-off charges or payment intents.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"description","value":"description","description":"

An arbitrary string that you can _attach to a customer object. It is displayed alongside the customer in the dashboard.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"email","value":"email","description":"

Customer\'s email address. It\'s displayed alongside the customer in your dashboard and can be useful for searching and tracking. This may be up to 512 characters.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"invoice prefix","value":"invoice_prefix","description":"

The prefix for the customer used to generate unique invoice numbers. Must be 3–12 uppercase letters or numbers.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"name","value":"name","description":"

The customer\'s full name or business name.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"next invoice sequence","value":"next_invoice_sequence","description":"

The sequence to be used on the customer\'s next invoice. Defaults to 1.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"payment method","value":"payment_method","description":"

ID of the payment method used in this charge.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"phone","value":"phone","description":"

The customer\'s phone number.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"promotion code","value":"promotion_code","description":"

The API ID of a promotion code to apply to the customer. The customer will have a discount applied on all recurring payments. Charges you create through the API will not have the discount.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"source","value":"source","description":"

The source object for errors returned on a request involving a source.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"tax exempt","value":"tax_exempt","description":"

The customer\'s tax exemption. One of none, exempt, or reverse.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":"","enum":["","exempt","none","reverse"]},{"name":"test clock","value":"test_clock","description":"

ID of the test clock to _attach to the customer.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Address","name":"address","description":"","fields":[{"name":"city","value":"address.city","description":"

City, district, suburb, town, or village.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"country","value":"address.country","description":"

Two-letter country code (ISO 3166-1 alpha-2).

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"line1","value":"address.line1","description":"

Address line 1 (e.g., street, PO Box, or company name).

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"line2","value":"address.line2","description":"

Address line 2 (e.g., apartment, suite, unit, or building).

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"postal code","value":"address.postal_code","description":"

ZIP or postal code.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"state","value":"address.state","description":"

State, county, province, or region.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Cash balance Settings","name":"cash_balance.settings","description":"","fields":[{"name":"reconciliation mode","value":"cash_balance.settings.reconciliation_mode","description":"

The configuration for how funds that land in the customer cash balance are reconciled.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Invoice settings","name":"invoice_settings","description":"","fields":[{"name":"default payment method","value":"invoice_settings.default_payment_method","description":"

ID of the default payment method for the invoice. It must belong to the customer associated with the invoice. If not set, defaults to the subscription\'s default payment method, if any, or to the default payment method in the customer\'s invoice settings.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"footer","value":"invoice_settings.footer","description":"

Footer displayed on the invoice.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Shipping","name":"shipping","description":"","fields":[{"name":"carrier","value":"shipping.carrier","description":"

The delivery service that shipped a physical product, such as Fedex, UPS, USPS, etc.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"name","value":"shipping.name","description":"

Recipient name.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"phone","value":"shipping.phone","description":"

Recipient phone (including extension).

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"tracking number","value":"shipping.tracking_number","description":"

The tracking number for a physical product, obtained from the delivery service. If multiple tracking numbers were generated for this purchase, please separate them with commas.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Shipping address","name":"shipping.address","description":"","fields":[{"name":"city","value":"shipping.address.city","description":"

City, district, suburb, town, or village.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"country","value":"shipping.address.country","description":"

Two-letter country code (ISO 3166-1 alpha-2).

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"line1","value":"shipping.address.line1","description":"

Address line 1 (e.g., street, PO Box, or company name).

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"line2","value":"shipping.address.line2","description":"

Address line 2 (e.g., apartment, suite, unit, or building).

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"postal code","value":"shipping.address.postal_code","description":"

ZIP or postal code.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"state","value":"shipping.address.state","description":"

State, county, province, or region.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]}],"formattedStripeProductItemFields":[{"label":"Standard Mappings","name":"standard","description":"","fields":[{"name":"active","value":"active","description":"

Whether the product is currently available for purchase. Defaults to true.

","type":"boolean","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"description","value":"description","description":"

The product\'s description, meant to be displayable to the customer. Use this field to optionally store a long form explanation of the product being sold for your own rendering purposes.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"name","value":"name","description":"

The product\'s name, meant to be displayable to the customer.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"shippable","value":"shippable","description":"

Whether this product is shipped (i.e., physical goods).

","type":"boolean","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"statement descriptor","value":"statement_descriptor","description":"

An arbitrary string to be displayed on your customer\'s credit card or bank statement. While most banks display this information consistently, some may display it incorrectly or not at all.

\\n

This may be up to 22 characters. The statement description may not include <, >, \\\\, \\", \' characters, and will appear on your customer\'s statement in capital letters. Non-ASCII characters are automatically stripped.\\n It must contain at least one letter.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"tax code","value":"tax_code","description":"

A tax code ID.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"unit label","value":"unit_label","description":"

A label that represents units of this product in Stripe and on customers’ receipts and invoices. When set, this will be included in associated invoice line item descriptions.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"url","value":"url","description":"

A URL of a publicly-accessible webpage for this product.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Default price data","name":"default_price_data","description":"","fields":[{"name":"currency","value":"default_price_data.currency","description":"

Three-letter ISO currency code, in lowercase. Must be a supported currency.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"tax behavior","value":"default_price_data.tax_behavior","description":"

Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of inclusive, exclusive, or unspecified. Once specified as either inclusive or exclusive, it cannot be changed.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"unit amount","value":"default_price_data.unit_amount","description":"

The cost of each unit of product being credited.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"unit amount decimal","value":"default_price_data.unit_amount_decimal","description":"

Same as unit_amount, but contains a decimal value with at most 12 decimal places.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Default price data Recurring","name":"default_price_data.recurring","description":"","fields":[{"name":"interval","value":"default_price_data.recurring.interval","description":"

Interval (or event) to which the amount applies.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"interval count","value":"default_price_data.recurring.interval_count","description":"

The number of intervals between payments. For example, interval=month and interval_count=3 indicates one payment every three months. Maximum of one year interval allowed (1 year, 12 months, or 52 weeks). This parameter is optional when interval=sporadic.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Package dimensions","name":"package_dimensions","description":"","fields":[{"name":"height","value":"package_dimensions.height","description":"

Height, in inches.

","type":"number","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"length","value":"package_dimensions.length","description":"

Length, in inches.

","type":"number","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"weight","value":"package_dimensions.weight","description":"

Weight, in ounces.

","type":"number","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"width","value":"package_dimensions.width","description":"

Width, in inches.

","type":"number","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]}],"formattedStripeSubscriptionFields":[{"label":"Standard Mappings","name":"standard","description":"","fields":[{"name":"end behavior","value":"end_behavior","description":"

Configures how the subscription schedule behaves when it ends. Possible values are release or cancel with the default being release. release will end the subscription schedule and keep the underlying subscription running.cancel will end the subscription schedule and cancel the underlying subscription.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":"","enum":["cancel","none","release","renew"]},{"name":"from subscription","value":"from_subscription","description":"

Migrate an existing subscription to be managed by a subscription schedule. If this parameter is set, a subscription schedule will be created using the subscription\'s item(s), set to auto-renew using the subscription\'s interval. When using this parameter, other parameters (such as phase values) cannot be set. To create a subscription schedule with other modifications, we recommend making two separate API calls.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"start date","value":"start_date","description":"

When the subscription schedule starts. We recommend using now so that it starts the subscription immediately. You can also use a Unix timestamp to backdate the subscription so that it starts on a past date, or set a future date for the subscription to start on.

","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Default settings","name":"default_settings","description":"","fields":[{"name":"application fee percent","value":"default_settings.application_fee_percent","description":"

This represents the percentage of the subscription invoice subtotal that will be transferred to the application owner\'s Stripe account.

","type":"number","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"billing cycle anchor","value":"default_settings.billing_cycle_anchor","description":"

Determines the date of the first full invoice, and, for plans with month or year intervals, the day of the month for subsequent invoices.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"collection method","value":"default_settings.collection_method","description":"

Either charge_automatically, or send_invoice. When charging automatically, Stripe will attempt to pay this invoice using the default source attached to the customer. When sending an invoice, Stripe will email this invoice to the customer with payment instructions.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"default payment method","value":"default_settings.default_payment_method","description":"

ID of the default payment method for the invoice. It must belong to the customer associated with the invoice. If not set, defaults to the subscription\'s default payment method, if any, or to the default payment method in the customer\'s invoice settings.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Default settings Billing thresholds","name":"billing_thresholds","description":"","fields":[{"name":"amount gte","value":"default_settings.billing_thresholds.amount_gte","description":"

The total invoice amount threshold boundary if it triggered the threshold invoice.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"reset billing cycle anchor","value":"default_settings.billing_thresholds.reset_billing_cycle_anchor","description":"

Indicates if the billing_cycle_anchor should be reset when a threshold is reached. If true, billing_cycle_anchor will be updated to the date/time the threshold was last reached; otherwise, the value will remain unchanged. This value may not be true if the subscription contains items with plans that have aggregate_usage=last_ever.

","type":"boolean","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Default settings Transfer data","name":"transfer_data","description":"","fields":[{"name":"amount percent","value":"default_settings.transfer_data.amount_percent","description":"

A non-negative decimal between 0 and 100, with at most two decimal places. This represents the percentage of the subscription invoice subtotal that will be transferred to the destination account. By default, the entire amount will be transferred to the destination.

","type":"number","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"destination","value":"default_settings.transfer_data.destination","description":"

ID of an existing, connected Stripe account to transfer funds to if transfer_data was specified in the charge request.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Default settings Automatic tax","name":"default_settings.automatic_tax","description":"","fields":[{"name":"enabled","value":"default_settings.automatic_tax.enabled","description":"

Whether Stripe automatically computes tax on this invoice.

","type":"boolean","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Default settings Invoice settings","name":"default_settings.invoice_settings","description":"","fields":[{"name":"days until due","value":"default_settings.invoice_settings.days_until_due","description":"

Number of days within which a customer must pay invoices generated by this quote. This value will be null for quotes where collection_method=charge_automatically.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"template","value":"default_settings.invoice_settings.rendering.template","description":"Invoice rendering template id to use for this subscription\'s invoice","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"template version","value":"default_settings.invoice_settings.rendering.template_version","description":"Version of the rendering template that will be used. If this field is null, then the latest version of the template will be automatically used.","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Prebilling","name":"prebilling","description":"","fields":[{"name":"Iterations","value":"prebilling.iterations","description":"

This is used to determine the number of billing cycles to prebill.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]}],"formattedStripeSubscriptionItemFields":[{"label":"Standard Mappings","name":"standard","description":"","fields":[{"name":"quantity","value":"quantity","description":"

The quantity you\'d like to apply to the subscription item you\'re creating.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]}],"formattedStripeSubscriptionSchedulePhaseFields":[{"label":"Standard Mappings","name":"standard","description":"","fields":[{"name":"application fee percent","value":"application_fee_percent","description":"

This represents the percentage of the subscription invoice subtotal that will be transferred to the application owner\'s Stripe account.

","type":"number","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"billing cycle anchor","value":"billing_cycle_anchor","description":"

Determines the date of the first full invoice, and, for plans with month or year intervals, the day of the month for subsequent invoices.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":"","enum":["automatic","phase_start"]},{"name":"collection method","value":"collection_method","description":"

Either charge_automatically, or send_invoice. When charging automatically, Stripe will attempt to pay this invoice using the default source attached to the customer. When sending an invoice, Stripe will email this invoice to the customer with payment instructions.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":"","enum":["charge_automatically","send_invoice"]},{"name":"coupon","value":"coupon","description":"

A coupon contains information about a percent-off or amount-off discount you\\nmight want to apply to a customer. Coupons may be applied to subscriptions, invoices,\\ncheckout sessions, quotes, and more. Coupons do not work with conventional one-off charges or payment intents.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"default payment method","value":"default_payment_method","description":"

ID of the default payment method for the invoice. It must belong to the customer associated with the invoice. If not set, defaults to the subscription\'s default payment method, if any, or to the default payment method in the customer\'s invoice settings.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"end date","value":"end_date","description":"

End date of the mandate or subscription. If not provided, the mandate will be active until canceled. If provided, end date should be after start date.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"iterations","value":"iterations","description":"","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"proration behavior","value":"proration_behavior","description":"

Whether to create prorations when canceling subscriptions. Possible values are none and create_prorations.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":"","enum":["always_invoice","create_prorations","none"]},{"name":"trial","value":"trial","description":"","type":"boolean","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"trial end","value":"trial_end","description":"

If the subscription has a trial, the end of that trial.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Automatic tax","name":"automatic_tax","description":"","fields":[{"name":"enabled","value":"automatic_tax.enabled","description":"

Whether Stripe automatically computes tax on this invoice.

","type":"boolean","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Billing thresholds","name":"billing_thresholds","description":"","fields":[{"name":"enabled","value":"billing_thresholds.enabled","description":"

Whether Stripe automatically computes tax on this invoice.

","type":"boolean","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Invoice settings","name":"invoice_settings","description":"","fields":[{"name":"days until due","value":"invoice_settings.days_until_due","description":"

Number of days within which a customer must pay invoices generated by this quote. This value will be null for quotes where collection_method=charge_automatically.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Transfer data","name":"transfer_data","description":"","fields":[{"name":"amount percent","value":"transfer_data.amount_percent","description":"

A non-negative decimal between 0 and 100, with at most two decimal places. This represents the percentage of the subscription invoice subtotal that will be transferred to the destination account. By default, the entire amount will be transferred to the destination.

","type":"number","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"destination","value":"transfer_data.destination","description":"

ID of an existing, connected Stripe account to transfer funds to if transfer_data was specified in the charge request.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]}],"formattedStripePriceFields":[{"label":"Standard Mappings","name":"standard","description":"","fields":[{"name":"active","value":"active","description":"

Whether the price can be used for new purchases. Defaults to true.

","type":"boolean","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"billing scheme","value":"billing_scheme","description":"

Describes how to compute the price per period. Either per_unit or tiered. per_unit indicates that the fixed amount (specified in unit_amount or unit_amount_decimal) will be charged per unit in quantity (for prices with usage_type=licensed), or per unit of total usage (for prices with usage_type=metered). tiered indicates that the unit pricing will be computed using a tiering strategy as defined using the tiers and tiers_mode attributes.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":"","enum":["per_unit","tiered"]},{"name":"currency","value":"currency","description":"

Three-letter ISO currency code, in lowercase. Must be a supported currency.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"lookup key","value":"lookup_key","description":"

A lookup key used to retrieve prices dynamically from a static string. This may be up to 200 characters.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"nickname","value":"nickname","description":"

A brief description of the price, hidden from customers.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"tax behavior","value":"tax_behavior","description":"

Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of inclusive, exclusive, or unspecified. Once specified as either inclusive or exclusive, it cannot be changed.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":"","enum":["exclusive","inclusive","unspecified"]},{"name":"tiers mode","value":"tiers_mode","description":"

Defines if the tiering price should be graduated or volume based. In volume-based tiering, the maximum quantity within a period determines the per unit price, in graduated tiering pricing can successively change as the quantity grows.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":"","enum":["graduated","volume"]},{"name":"transfer lookup key","value":"transfer_lookup_key","description":"

If set to true, will atomically remove the lookup key from the existing price, and assign it to this price.

","type":"boolean","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"unit amount","value":"unit_amount","description":"

A positive integer in cents (or local equivalent) (or 0 for a free price) representing how much to charge.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"unit amount decimal","value":"unit_amount_decimal","description":"

Same as unit_amount, but accepts a decimal value in cents (or local equivalent) with at most 12 decimal places. Only one of unit_amount and unit_amount_decimal can be set.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Recurring","name":"recurring","description":"","fields":[{"name":"aggregate usage","value":"recurring.aggregate_usage","description":"

Specifies a usage aggregation strategy for plans of usage_type=metered. Allowed values are sum for summing up all usage during a period, last_during_period for using the last usage record reported within a period, last_ever for using the last usage record ever (across period bounds) or max which uses the usage record with the maximum reported usage during a period. Defaults to sum.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"interval","value":"recurring.interval","description":"

Interval (or event) to which the amount applies.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"interval count","value":"recurring.interval_count","description":"

The number of intervals between payments. For example, interval=month and interval_count=3 indicates one payment every three months. Maximum of one year interval allowed (1 year, 12 months, or 52 weeks). This parameter is optional when interval=sporadic.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"usage type","value":"recurring.usage_type","description":"

Configures how the quantity per period should be determined. Can be either metered or licensed. licensed automatically bills the quantity set when adding it to a subscription. metered aggregates the total usage based on usage records. Defaults to licensed.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]},{"label":"Transform quantity","name":"transform_quantity","description":"","fields":[{"name":"divide by","value":"transform_quantity.divide_by","description":"

Divide usage by this number.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"round","value":"transform_quantity.round","description":"

After division, either round the result up or down.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]}],"formattedStripeCouponFields":[{"label":"Standard Mappings","name":"standard","description":"","fields":[{"name":"amount off","value":"amount_off","description":"

A positive integer representing the amount to subtract from an invoice total (required if percent_off is not passed).

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"duration","value":"duration","description":"

Specifies how long the discount will be in effect if used on a subscription. Can be forever, once, or repeating. Defaults to once.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":"","enum":["forever","once","repeating"]},{"name":"duration in months","value":"duration_in_months","description":"

Required only if duration is repeating, in which case it must be a positive integer that specifies the number of months the discount will be in effect.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"max redemptions","value":"max_redemptions","description":"

A positive integer specifying the number of times the coupon can be redeemed before it\'s no longer valid. For example, you might have a 50% off coupon that the first 20 readers of your blog can use.

","type":"integer","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"name","value":"name","description":"

Name of the coupon displayed to customers on, for instance invoices, or receipts. By default the id is shown if name is not set.

","type":"string","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""},{"name":"percent off","value":"percent_off","description":"

A positive float larger than 0, and smaller or equal to 100, that represents the discount the coupon will apply (required if amount_off is not passed).

","type":"number","defaultValue":"","requiredValue":"","hasOverride":false,"staticValue":false,"hasSfValue":false,"hasRequiredValue":false,"sfValue":"","sfValueType":""}]}]}'); + res.setStatusCode(200); + return res; + } + } + private class stripeConnectFailMock implements HttpCalloutMock { public HttpResponse respond(HttpRequest req) { HttpResponse res = new HttpResponse(); @@ -817,4 +868,171 @@ public with sharing class test_setupAssistant { return res2; } } + + public class ConnectionStatusesMock implements HttpCalloutMock { + public Integer calls = 0; + public HttpResponse respond(HttpRequest req) { + calls += 1; + HttpResponse res = new HttpResponse(); + responseData rd = new responseData(); + Map services = new Map(); + services.put(setupAssistant.KEY_SALESFORCE_SERVICE, setupAssistant.STATUS_CONNECTED); + services.put(setupAssistant.KEY_STRIPE_SERVICE, setupAssistant.STATUS_CONNECTED); + rd.put(setupAssistant.KEY_SERVICES, services); + + res.setBody(JSON.serialize(rd)); + res.setStatusCode(200); + + return res; + } + } + + @IsTest + static void validateSharedState() { + Setup_Connection_Data__mdt testSetupData = getTestStripeConnectionKey(); + setTestGlobalKey(testSetupData); + + StripeOAuthState state = StripeOAuthState.create(); + String stateString = state.toString(); + + String service = 'foo'; + Map restoredState = setupAssistant.validateSharedState(service, stateString); + Map oldState = (Map) JSON.deserializeUntyped(state.toJSON()); + for (String key : oldState.keySet()) { + System.assertEquals(oldState.get(key), restoredState.get(key)); + } + for (String key : restoredState.keySet()) { + System.assertEquals(oldState.get(key), restoredState.get(key)); + } + } + + @IsTest + static void getExportableConfigDownloadUrl() { + // this basically just has to work... we can't actually test it... + String url = setupAssistant.getExportableConfigDownloadUrl(); + System.assertNotEquals(null, url); + } + + @IsTest + static void revokeIntegrationUserAuthorization() { + Setup_Connection_Data__mdt testSetupData = getTestStripeConnectionKey(); + setTestGlobalKey(testSetupData); + insertTestConnectedRecord(); + + // this is really just a placeholder... + setupAssistant.revokeIntegrationUserAuthorization(); + } + + @IsTest + static void getIntegrationUserAuthorizationUri() { + Setup_Connection_Data__mdt testSetupData = getTestStripeConnectionKey(); + setTestGlobalKey(testSetupData); + insertTestConnectedRecord(); + + responseData uriUnforced = unpack(setupAssistant.getIntegrationUserAuthorizationUri(false)); + responseData uriForced = unpack(setupAssistant.getIntegrationUserAuthorizationUri(true)); + + System.assert(uriUnforced.getString('authorization_uri').contains('prompt=login') == false); + System.assert(uriUnforced.getString('authorization_uri').contains(uriUnforced.getString('message_origin_uri'))); + System.assert(uriForced.getString('authorization_uri').contains('prompt=login') == true); + System.assert(uriForced.getString('authorization_uri').contains(uriForced.getString('message_origin_uri'))); + } + + @IsTest + static void getStripeAuthorizationUri() { + Setup_Connection_Data__mdt testSetupData = getTestStripeConnectionKey(); + setTestGlobalKey(testSetupData); + insertTestConnectedRecord(); + + responseData testMode = unpack(setupAssistant.getStripeAuthorizationUri(false)); + responseData liveMode = unpack(setupAssistant.getStripeAuthorizationUri(true)); + + System.assert(testMode.getString('authorization_uri').contains('live') == false); + System.assert(testMode.getString('authorization_uri').contains('test') == true); + System.assert(testMode.getString('authorization_uri').contains(testMode.getString('message_origin_uri'))); + System.assert(liveMode.getString('authorization_uri').contains('test') == false); + System.assert(liveMode.getString('authorization_uri').contains('live') == true); + System.assert(liveMode.getString('authorization_uri').contains(liveMode.getString('message_origin_uri'))); + } + + @IsTest + static void checkServiceConnectionStatuses() { + Setup_Connection_Data__mdt testSetupData = getTestStripeConnectionKey(); + setTestGlobalKey(testSetupData); + insertTestConnectedRecord(); + + ConnectionStatusesMock m = new ConnectionStatusesMock(); + Test.setMock(HttpCalloutMock.class, m); + + responseData statuses = unpack(setupAssistant.checkServiceConnectionStatuses()); + Map services = (Map) statuses.results.get('services'); + System.assert(services.get(setupAssistant.KEY_STRIPE_SERVICE) == setupAssistant.STATUS_CONNECTED); + System.assert(services.get(setupAssistant.KEY_SALESFORCE_SERVICE) == setupAssistant.STATUS_CONNECTED); + System.assert(m.calls == 0, 'This one does not call out'); + } + + @IsTest + static void testGetServiceConnectionStatuses() { + Setup_Connection_Data__mdt testSetupData = getTestStripeConnectionKey(); + setTestGlobalKey(testSetupData); + insertTestConnectedRecord(); + + Map services = new Map(); + services.put(setupAssistant.KEY_SALESFORCE, true); + services.put(setupAssistant.KEY_STRIPE, true); + HttpResponse resp = new HttpResponse(); + resp.setBody(JSON.serialize(services)); + resp.setStatusCode(200); + + Continuation con = (Continuation) setupAssistant.getServiceConnectionStatuses(setupAssistant.KEY_STRIPE_SERVICE); + Test.setContinuationResponse('continuation-1', resp); + setupAssistant cont = new setupAssistant(); + + String result = (String) Test.invokeContinuationMethod(cont, con); + + debugger.debug('apex result', result); + responseData statuses = unpack(result); + services = (Map) statuses.results.get('services'); + debugger.debug('services', services); + System.assert(services.get(setupAssistant.KEY_STRIPE_SERVICE) == setupAssistant.STATUS_FRESH); + System.assert(services.get(setupAssistant.KEY_SALESFORCE_SERVICE) == setupAssistant.STATUS_CONNECTED); + } + + @IsTest + static void testGetServiceConnectionStatusesSync() { + Setup_Connection_Data__mdt testSetupData = getTestStripeConnectionKey(); + setTestGlobalKey(testSetupData); + insertTestConnectedRecord(); + + Map services = new Map(); + services.put(setupAssistant.KEY_SALESFORCE, true); + services.put(setupAssistant.KEY_STRIPE, true); + HttpResponse resp = new HttpResponse(); + resp.setBody(JSON.serialize(services)); + resp.setStatusCode(200); + + Continuation con = (Continuation) setupAssistant.getServiceConnectionStatuses(setupAssistant.KEY_STRIPE_SERVICE); + Test.setContinuationResponse('continuation-1', resp); + setupAssistant cont = new setupAssistant(); + + String result = (String) Test.invokeContinuationMethod(cont, con); + + debugger.debug('apex result', result); + responseData statuses = unpack(result); + services = (Map) statuses.results.get('services'); + debugger.debug('services', services); + System.assert(services.get(setupAssistant.KEY_STRIPE_SERVICE) == setupAssistant.STATUS_FRESH); + System.assert(services.get(setupAssistant.KEY_SALESFORCE_SERVICE) == setupAssistant.STATUS_CONNECTED); + } + + + private static responseData unpack(String data) { + debugger.debug('unpacking', data); + responseData rd = new responseData(); + Map res = (Map) JSON.deserializeUntyped(data); + rd.results = (Map) res.get('results'); + rd.error = (String) res.get('error'); + rd.isSuccess = (Boolean) res.get('isSuccess'); + return rd; + } } diff --git a/sfdx/force-app/main/default/classes/utilities.cls b/sfdx/force-app/main/default/classes/utilities.cls index 21336522fe..0504c8ff14 100644 --- a/sfdx/force-app/main/default/classes/utilities.cls +++ b/sfdx/force-app/main/default/classes/utilities.cls @@ -1,4 +1,8 @@ public with sharing class utilities { + // generate with: System.debug(EncodingUtil.to(Crypto.generateAesKey(256))); + private static String stateEncryptionKey = '98ae2216688a8b879c25f17ed793bfa7bb11201ddda97ad01b2d282a06aa191a'; + private static String stateSigningKey = '98ae2216688a8b879c25f17ed793bfa7bb11201ddda97ad01b2d282a06aa191a'; + @TestVisible static ConfigPayloadHelper configPayloadHelper = new ConfigPayloadHelper(); @@ -6,18 +10,33 @@ public with sharing class utilities { static Debug_Helper debugger = new Debug_Helper(); public class SetupIsNotCompleteException extends Exception {} + public class HttpCalloutFailedException extends Exception {} - // used a method to prepare for an eventual future where the base uri is configurable. - public static String getPlatformConfigEndpoint() { - return constants.RUBY_SERVICE_BASE_URI + constants.RUBY_SERVICE_CONFIG_URI; - } + public static Map requestPlatformConfig() { + // make callout to ruby services configuration endpoint to see if the org is connected to Stripe and Salesforce + String route = UriTargets.getConfigEndpoint(); + HttpResponse response = utilities.makeCallout(route, 'GET'); - public static String getPlatformTranslateEndpoint() { - return constants.RUBY_SERVICE_BASE_URI + constants.RUBY_SERVICE_TRANSLATE_URI; - } + /* + if we do not get a 200 status code back we create an Error Log record to show we did not get a success + response from the ruby service and send a status of failed to signify to show an error toast + */ + if(response.getStatusCode() != 200) { + Sentry_Exception e = (Sentry_Exception) Sentry_ExceptionFactory.build(HttpCalloutFailedException.class); + e.setMessage('Failed to get configuration from Ruby service.'); + e.context.put('route', route); + e.context.put('response', response.getBody()); + e.context.put('response_status', response.getStatus()); + e.context.put('response_status_code', response.getStatusCode()); + errorLogger.create('requestPlatformConfig', e); + return null; + } - public static String getPlatformTranslateAllEndpoint() { - return constants.RUBY_SERVICE_BASE_URI + constants.RUBY_SERVICE_TRANSLATE_ALL_URI; + /* + if we get a 200 response code from the ruby service we will check the connection status object + in the payload to determine weather the user successfully connected to stripe or not + */ + return (Map)JSON.deserializeUntyped(response.getBody()); } public static Boolean isPackagedEnvironment() { @@ -227,6 +246,64 @@ public with sharing class utilities { return rd.getJsonString(); } + public static String getStripeConnectionKey() { + if (setupConfigMetadata != null && setupConfigMetadata.isEmpty() == false) { + return setupConfigMetadata[0].Global_Key__c; + } + + Sentry_Log.logSentry('missing metadata record with global key'); + throw new SetupIsNotCompleteException('Org is not setup correctly, missing custom metadata record with global key'); + } + + public static Blob getOAuthStateSigningKey() { + if (setupConfigMetadata != null && setupConfigMetadata.isEmpty() == false) { + String encKey = setupConfigMetadata[0].OAuth_State_Signing_Key__c; + if (String.isBlank(encKey) || encKey == null) { + encKey = stateSigningKey; + } + debugger.debug('utilities.getOAuthStateSigningKey', 'encKey: ' + encKey); + return EncodingUtil.convertFromHex(encKey); + } + + return null; + } + + public static Boolean isDeveloperModeEnabled() { + if (setupConfigMetadata != null && setupConfigMetadata.isEmpty() == false) { + return setupConfigMetadata[0].Enable_JS_Debug__c || setupConfigMetadata[0].Enable_Apex_Debug__c || setupConfigMetadata[0].Local_Authorization_Target__c; + } + + return false; + } + + public static Boolean isApexDebuggingEnabled() { + if (setupConfigMetadata != null && setupConfigMetadata.isEmpty() == false) { + return setupConfigMetadata[0].Enable_Apex_Debug__c; + } + + return false; + } + + public static Boolean isJSDebuggingEnabled() { + if (setupConfigMetadata != null && setupConfigMetadata.isEmpty() == false) { + return setupConfigMetadata[0].Enable_JS_Debug__c; + } + + return false; + } + + public static Boolean isOAuthAutoCloseEnabled() { + if (setupConfigMetadata != null && setupConfigMetadata.isEmpty() == false) { + return setupConfigMetadata[0].OAuth_AutoClose_Window__c; + } + + return false; + } + + public static Stripe_Connection__c getStripeConnection() { + return Stripe_Connection__c.getOrgDefaults(); + } + public static Setup_Connection_Data__mdt getConnectionData() { if (setupConfigMetadata != null && setupConfigMetadata.isEmpty() == false) { return setupConfigMetadata[0]; @@ -235,7 +312,7 @@ public with sharing class utilities { return new Setup_Connection_Data__mdt(); } - public static List getStripeConnectionKey() { + public static List getStripeConnectionData() { return setupConfigMetadata; } @@ -250,16 +327,18 @@ public with sharing class utilities { } Setup_Connection_Data__mdt setupData = setupConfigList[0]; + String authorization = 'Bearer ' + StripeOAuthState.create().toString(); Map headers = new Map { - 'Salesforce-Key' => (String)setupData.Global_Key__c + 'Salesforce-Key' => (String)setupData.Global_Key__c, + 'Authorization' => authorization }; // generate unique key for this organization used to authenticate against the integration service - Blob blb = Crypto.GenerateAESKey(128); - String packageKey = EncodingUtil.ConvertTohex(blb); + Blob blb = Crypto.generateAesKey(128); + String packageKey = EncodingUtil.convertToHex(blb); - String route = constants.RUBY_SERVICE_BASE_URI + '/v1/post-install'; + String route = UriTargets.getPostInstallEndpoint(); Map body = new Map { 'key' => packageKey @@ -283,6 +362,10 @@ public with sharing class utilities { return makeCallout(endPoint, method, null, null); } + public static HttpResponse makeCallout(String endPoint, String method, Integer timeoutLength){ + return makeCallout(endPoint, method, null, null, timeoutLength); + } + public static HttpResponse makeCallout(String endPoint, String method, String body){ return makeCallout(endPoint, method, body, null); } @@ -292,12 +375,25 @@ public with sharing class utilities { } public static HttpResponse makeCallout(String endPoint, String method, String body, Map headers) { - debugger.debug('utilities.makeCallout', 'endpoint: ' + endPoint); - debugger.debug('utilities.makeCallout', 'method: ' + method); - debugger.debug('utilities.makeCallout', 'body: ' + body); - debugger.debug('utilities.makeCallout', 'headers: ' + headers); + return makeCallout(endPoint, method, body, headers, 5000); + } + public static HttpResponse makeCallout(String endPoint, String method, String body, Map headers, Integer timeoutLength){ Http httpMethod = new Http(); + HttpRequest request = buildRequest(endPoint, method, body, headers, timeoutLength); + debugger.debug('utilities.makeCallout', 'Calling endpoint'); + HttpResponse response = httpMethod.send(request); + return response; + } + public static HttpRequest buildRequest(String endPoint, String method, Integer timeoutLength) { + return buildRequest(endPoint, method, null, null, timeoutLength); + } + public static HttpRequest buildRequest(String endPoint, String method, String body, Map headers, Integer timeoutLength){ + debugger.debug('utilities.buildRequest', 'endpoint: ' + endPoint); + debugger.debug('utilities.buildRequest', 'method: ' + method); + debugger.debug('utilities.buildRequest', 'body: ' + body); + debugger.debug('utilities.buildRequest', 'headers: ' + headers); + HttpRequest request = new HttpRequest(); // 5s timeout in case the ruby server is backed up @@ -306,12 +402,12 @@ public with sharing class utilities { request.setMethod(method); request.setTimeout(requestTimeoutLength); - if(body != null) { + if (body != null) { //these headers are required for the API to respond properly request.setHeader('Content-Type', 'application/json'); request.setHeader('Accept', 'application/json'); request.setBody(body); - debugger.debug('utilities.makeCallout', 'Set body with default body headers'); + debugger.debug('utilities.buildRequest', 'Set body with default body headers'); } /* these standard headers will be add to the request if none are provided @@ -321,31 +417,29 @@ public with sharing class utilities { request.setHeader('Salesforce-Package-Namespace', constants.NAMESPACE); // TODO this does not seem to be coming over properly - if(utilities.isPackagedEnvironment()) { + if (utilities.isPackagedEnvironment()) { request.setHeader('Salesforce-Package-Id', (String)getPackageVersionString()); } else { // For non-package environments, lets just set it as version 0 request.setHeader('Salesforce-Package-Id', '0.0.0.0'); } - debugger.debug('utilities.makeCallout', 'Set default headers'); + debugger.debug('utilities.buildRequest', 'Set default headers'); /* this only happens in the case the key is passed in after generating the package level api key, otherwise we will use the organization-specific api key */ - if(headers != null) { - debugger.debug('utilities.makeCallout', 'Set custom headers'); + if (headers != null) { + debugger.debug('utilities.buildRequest', 'Set custom headers'); request.setHeader('Salesforce-Key', headers.get('Salesforce-Key')); - debugger.debug('utilities.makeCallout', 'Calling endpoint'); - HttpResponse response = httpMethod.send(request); - return response; + return request; } Stripe_Connection__c stripeConnectRec = Stripe_Connection__c.getOrgDefaults(); if (stripeConnectRec.Id == null || stripeConnectRec.API_Key__c == null) { - debugger.debug('utilities.makeCallout', 'Missing Stripe_Connection__c.Id or API_Key__c'); + debugger.debug('utilities.buildRequest', 'Missing Stripe_Connection__c.Id or API_Key__c'); /* This error should only be thrown in a scratch org when unmangaed key is deployed to an org and the custom metadata record containing the global key was not created @@ -354,11 +448,10 @@ public with sharing class utilities { throw new SetupIsNotCompleteException('Connector is not setup correctly, missing metadata.'); } - debugger.debug('utilities.makeCallout', 'Setting default API key header'); + debugger.debug('utilities.buildRequest', 'Setting default API key header'); request.setHeader('Salesforce-Key', (String)stripeConnectRec.API_Key__c); - debugger.debug('utilities.makeCallout', 'Calling endpoint'); - HttpResponse response = httpMethod.send(request); - return response; +// request.setHeader('Authorization', 'Bearer ' + StripeOAuthState.create().toString()); + return request; } public static responseData validateCalloutResponse(HttpResponse response, String actionTaken) { @@ -447,14 +540,15 @@ public with sharing class utilities { } //Creates a test metadata record in test context - @testVisible static List setupConfigMetadata { + @TestVisible static List setupConfigMetadata { get { if (setupConfigMetadata == null) { - setupConfigMetadata = [SELECT Global_Key__c, Use_Local_OpenAPI_Spec__c + setupConfigMetadata = [SELECT Global_Key__c, + Local_Authorization_Target__c, Enable_Apex_Debug__c, OAuth_AutoClose_Window__c, + Enable_JS_Debug__c, Platform_Target__c, OAuth_State_Signing_Key__c FROM Setup_Connection_Data__mdt LIMIT 1]; } return setupConfigMetadata; } set; } - } \ No newline at end of file diff --git a/sfdx/force-app/main/default/layouts/Setup_Connection_Data__mdt-Setup Connection Data Layout.layout-meta.xml b/sfdx/force-app/main/default/layouts/Setup_Connection_Data__mdt-Setup Connection Data Layout.layout-meta.xml index e3ba5fe74c..666705dd78 100644 --- a/sfdx/force-app/main/default/layouts/Setup_Connection_Data__mdt-Setup Connection Data Layout.layout-meta.xml +++ b/sfdx/force-app/main/default/layouts/Setup_Connection_Data__mdt-Setup Connection Data Layout.layout-meta.xml @@ -28,9 +28,44 @@ Required NamespacePrefix + + Edit + OAuth_State_Signing_Key__c + + + true + true + true + + + + Edit + Local_Authorization_Target__c + + + Edit + Platform_Target__c + + + + + Edit + Enable_Apex_Debug__c + + + Edit + Enable_JS_Debug__c + + + Edit + OAuth_AutoClose_Window__c + + + + false false @@ -51,9 +86,12 @@ - false + true false false + + + @@ -62,4 +100,10 @@ false false false + + 00hDS00000B72IW + 4 + 0 + Default + diff --git a/sfdx/force-app/main/default/lwc/dataMappingStep/dataMappingStep.js b/sfdx/force-app/main/default/lwc/dataMappingStep/dataMappingStep.js index f614fb24b9..13a21ab3b7 100644 --- a/sfdx/force-app/main/default/lwc/dataMappingStep/dataMappingStep.js +++ b/sfdx/force-app/main/default/lwc/dataMappingStep/dataMappingStep.js @@ -5,6 +5,8 @@ import getMappingConfigurations from '@salesforce/apex/setupAssistant.getMapping import saveMappingConfigurations from '@salesforce/apex/setupAssistant.saveMappingConfigurations'; import { getErrorMessage } from 'c/utils'; import Alert from 'c/alert'; +import { Debugger } from "c/debugger"; +const DebugLog = Debugger.withContext('DataMappingStep'); const TERMINATION_METADATA_PREFIX = 'sbc_termination.'; @@ -265,7 +267,7 @@ export default class DataMappingStep extends LightningElement { if(metadataFieldList.length) { for(let i = 0; i < metadataFieldList.length; i++) { const fieldData = metadataFieldList[i]; - // console.log({ fieldData: JSON.parse(JSON.stringify(fieldData)) }); + DebugLog({ fieldData }); const keyPrefix = fieldData.onTermination ? TERMINATION_METADATA_PREFIX : ''; const metadataKey = keyPrefix + 'metadata.' + fieldData.value; @@ -394,7 +396,7 @@ export default class DataMappingStep extends LightningElement { const targetFieldIndex = event.currentTarget.closest('tr').dataset.index; if (targetFieldIndex) { const currentVal = this.activeMetadataObjectFields.metadataMapping.fields[parseInt(targetFieldIndex)].onTermination; - // console.log({ checked, currentVal, nextVal: !currentVal }) + DebugLog({ checked, currentVal, nextVal: !currentVal }) const updatedSelection = { onTermination: !currentVal, }; @@ -609,6 +611,9 @@ export default class DataMappingStep extends LightningElement { this.dispatchEvent(this.contentLoading); try { const getFormattedStripeObjects = await getFormattedStripeObjectFields(); + + DebugLog('getFormattedStripeObjects', getFormattedStripeObjects) + const responseData = JSON.parse(getFormattedStripeObjects); if(responseData.error) { this.showToast(responseData.error, 'error', 'sticky'); @@ -632,7 +637,7 @@ export default class DataMappingStep extends LightningElement { this.activeObject = 'customer'; this.activeObjectDescription = this.ACTIVE_OBJECT_INFO[this.activeObject]['description']; this.activeObjectAlerts = this.ACTIVE_OBJECT_INFO[this.activeObject]['alerts']; - // console.log('activeMappings', JSON.parse(JSON.stringify(this.activeStripeObjectMappings))); + DebugLog('activeMappings', this.activeStripeObjectMappings); } } @@ -643,6 +648,8 @@ export default class DataMappingStep extends LightningElement { isConnectedCallback: isConnectedCallback, ObjectApiName: ObjectName }); + + DebugLog('getPicklistValues', getPicklistValues); const picklistValueResponseData = JSON.parse(getPicklistValues); if(picklistValueResponseData.error) { @@ -686,9 +693,9 @@ export default class DataMappingStep extends LightningElement { this.configurationHash = mappingConfigurationResponseData.results.configurationHash; this.hiddenMapperFields = mappingConfigurationResponseData.results.hiddenMapperFields; - // console.log('hiddenMapperFields', JSON.parse(JSON.stringify(this.hiddenMapperFields))); + DebugLog('hiddenMapperFields', this.hiddenMapperFields); this.allMappingConfigurations = mappingConfigurationResponseData.results.allMappingConfigurations; - // console.log('listOfStripeMappingObjects', JSON.parse(JSON.stringify(this.listOfStripeMappingObjects))); + DebugLog('listOfStripeMappingObjects', this.listOfStripeMappingObjects); for (const mappingContainer of this.listOfStripeMappingObjects) { this.setFieldMappings(mappingContainer.object, mappingContainer.mappingsObject, mappingContainer.metadataMappingsObject.metadataMapping.fields); } @@ -720,13 +727,13 @@ export default class DataMappingStep extends LightningElement { applyHiddenMapperFieldDataToCategories(objectName, mappingObjs) { const segments = this.hiddenMapperFieldSegments; - // console.log('segments.paths', segments.paths); + DebugLog('segments.paths', segments.paths); if (segments.paths.length === 0) { return mappingObjs; } const paths = this.getHiddenMapperFieldPathsForObject(objectName, segments.paths); - // console.log('paths', paths); + DebugLog('paths', paths); if (paths.length === 0) { return mappingObjs; diff --git a/sfdx/force-app/main/default/lwc/debugger/debugger.js b/sfdx/force-app/main/default/lwc/debugger/debugger.js index 3df707e86e..56c89f74b2 100644 --- a/sfdx/force-app/main/default/lwc/debugger/debugger.js +++ b/sfdx/force-app/main/default/lwc/debugger/debugger.js @@ -1,9 +1,33 @@ /** * Created by jmather-c on 6/1/23. */ +import isJSDebugEnabled from '@salesforce/apex/setupAssistant.isJSDebugEnabled'; +import isOAuthAutoCloseWindowEnabled from '@salesforce/apex/setupAssistant.isOAuthAutoCloseWindowEnabled'; class Debugger { - static debug = false; + static config = null; + static oauthAutoCloseWindow = null; + static initialized = false; + + static init() { + if (!this.initialized) { + this.initialized = true; + Debugger.config = isJSDebugEnabled(); + Debugger.oauthAutoCloseWindow = isOAuthAutoCloseWindowEnabled(); + } + return Debugger.config; + } + + static withContext(context) { + const dat = this; + return function (var_args) { + const newargs = [context]; + for (let i = 0; i < arguments.length; i++) { + newargs.push(arguments[i]); + } + dat.exec(console.log, newargs); + } + } /** * @param {...*} var_args @@ -27,9 +51,12 @@ class Debugger { } static exec(target, args) { - if (this.debug) { - target.apply(console, this.sanitize(args)); - } + this.init() + .then(isEnabled => { + if (isEnabled) { + target.apply(console, this.sanitize(args)); + } + }) } /** diff --git a/sfdx/force-app/main/default/lwc/integrationUserSetupStep/integrationUserSetupStep.css b/sfdx/force-app/main/default/lwc/integrationUserSetupStep/integrationUserSetupStep.css new file mode 100644 index 0000000000..060358e7a8 --- /dev/null +++ b/sfdx/force-app/main/default/lwc/integrationUserSetupStep/integrationUserSetupStep.css @@ -0,0 +1,8 @@ +/** + * Created by jmather-c on 8/31/23. + */ +.stripe-status { + border-radius: var(--lwc-borderRadiusLarge, .5rem); + padding: var(--lwc-spacingMedium, 1rem); + box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.10); +} \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/integrationUserSetupStep/integrationUserSetupStep.html b/sfdx/force-app/main/default/lwc/integrationUserSetupStep/integrationUserSetupStep.html new file mode 100644 index 0000000000..530181fe44 --- /dev/null +++ b/sfdx/force-app/main/default/lwc/integrationUserSetupStep/integrationUserSetupStep.html @@ -0,0 +1,59 @@ + + + + \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/integrationUserSetupStep/integrationUserSetupStep.js b/sfdx/force-app/main/default/lwc/integrationUserSetupStep/integrationUserSetupStep.js new file mode 100644 index 0000000000..a393596bfb --- /dev/null +++ b/sfdx/force-app/main/default/lwc/integrationUserSetupStep/integrationUserSetupStep.js @@ -0,0 +1,231 @@ +import getIntegrationUserAuthorizationUri from '@salesforce/apex/setupAssistant.getIntegrationUserAuthorizationUri'; +import revokeIntegrationUserAuthorization from '@salesforce/apex/setupAssistant.revokeIntegrationUserAuthorization'; +import {LightningElement, track, api} from 'lwc'; +import {getErrorMessage, createToast, openWindow} from 'c/utils' +import {Debugger} from "c/debugger"; +import {MessageListener, ConnectionStatus, ListenerEvents, ServiceManagerServices} from "c/systemStatusUtils"; +import { Manager, ServiceEvents } from "c/serviceManager"; +const DebugLog = Debugger.withContext('IntegrationUserSetupStep'); +const SERVICE_DELIMINATOR = '|'; + +export default class IntegrationUserSetupStep extends LightningElement { + @track isConnected = false; + @track loading = false; + @track modalLoading = false; + @track status = ConnectionStatus.loading; + + @track integrationUserType = 'self'; + @api hideAction = false; + @api isSetup = false; + _connectWindow = null; + _expectedUpdate = undefined; + + async connectedCallback() { + if (this._boundConnectionStatusUpdated) { + DebugLog('connectedCallback', 'already connected'); + return; + } + + DebugLog('connectedCallback', 'connecting'); + this._boundConnectionStatusUpdated = this._connectionStatusUpdated.bind(this); + Manager.on(ServiceEvents.connection_status_updated, this._boundConnectionStatusUpdated); + } + + disconnectedCallback() { + if (this._boundConnectionStatusUpdated === undefined) { + DebugLog('disconnectedCallback', 'already disconnected'); + return; + } + + DebugLog('disconnectedCallback', 'disconnecting'); + Manager.off(ServiceEvents.connection_status_updated, this._boundConnectionStatusUpdated); + } + + async forceRefresh() { + await Manager.updateConnectionStatuses(); + } + + // connected to the "Authorize" button in the UI + // main entry point for starting the authorization flow + async authorizeIntegrationUser() { + DebugLog('authorizeIntegrationUser called'); + this.loading = true; + const forceLogin = this.integrationUserType !== 'self'; + const authInfo = await getIntegrationUserAuthorizationUri({ forceLogin }); + /** @type {IntegrationUserAuthorizationUriPayload} */ + const responseData = JSON.parse(authInfo); + DebugLog('authorizeIntegrationUser responseData', responseData); + this._connectToMessageListener(); + MessageListener.listenFor(responseData.results.message_origin_uri); + this._expectedUpdate = true; + this._connectWindow = openWindow(responseData.results.authorization_uri); + } + + updateAccountType(event) { + this.integrationUserType = event.detail.value; + } + + get loginDisabled() { + return !this.integrationUserType; + } + + showUnauthorizeModal() { + this.template.querySelector('.stripe-modal_confirm-unauthorize').show(); + } + + hideUnauthorizeModal() { + this.template.querySelector('.stripe-modal_confirm-unauthorize').hide(); + } + + async unauthorizeUser() { + this.modalLoading = true; + try { + const revokedToken = await revokeIntegrationUserAuthorization(); + /** @type {SystemStatusPayload} */ + const responseData = JSON.parse(revokedToken); + if (!responseData.isSuccess) { + this._showToast(responseData.error, 'error', 'sticky'); + return; + } + + this._expectedUpdate = false; + Manager.updateConnectionStatuses(responseData.results.service); + } catch (error) { + let errorMessage = getErrorMessage(error); + this._showToast(errorMessage, 'error', 'sticky'); + } finally { + this.modalLoading = false; + this.hideUnauthorizeModal(); + } + } + + /** + * + * @param {ConnectionStatusChangeEvent} event + * @private + */ + _connectionStatusUpdated(event) { + DebugLog('connectionStatusUpdated', JSON.parse(JSON.stringify(event.detail))); + DebugLog('connectionStatusUpdated', {expectedUpdate: this._expectedUpdate}); + if (this._expectedUpdate === null) { + DebugLog('Not expecting an update, bailing...'); + return; + } + + const statuses = event.detail.statuses; + const salesforceService = Object.keys(statuses).find(key => key.startsWith(ServiceManagerServices.salesforce + SERVICE_DELIMINATOR)); + this.status = statuses[salesforceService]; + this.isConnected = this.status === ConnectionStatus.fresh || this.status === ConnectionStatus.connected; + DebugLog('connectionStatusUpdated', 'salesforce status', { + salesforceService, + statue: this.status, + isConnected: this.isConnected, + isSetup: this.isSetup, + }); + + if (this._expectedUpdate !== undefined && this.status === 'failed') { + DebugLog('connectionStatusUpdated', 'got failed status'); + this._showErrorToast(); + } + + if (this._expectedUpdate === true && this.status === ConnectionStatus.fresh) { + DebugLog('connectionStatusUpdated', 'got fresh status'); + this._showToast('Integration User has been successfully connected.', 'success'); + } else if (this._expectedUpdate === false && this.status === ConnectionStatus.disconnected) { + DebugLog('connectionStatusUpdated', 'got disconnected status'); + this._showToast('Integration User successfully unauthorized.', 'success'); + } + + if (this.isSetup && this.isConnected) { + DebugLog('connectionStatusUpdated', 'dispatching stepcomplete'); + this.dispatchEvent(new CustomEvent('stepcomplete', { detail: { step: 'integration_user_connection' }} )); + } + + this._expectedUpdate = undefined; + this.loading = false; + } + + _onResponseReceived(event) { + DebugLog('_onResponseReceived', 'got response', event.detail); + Debugger.oauthAutoCloseWindow.then((autoClose) => { + DebugLog('_onResponseReceived', 'oauthAutoCloseWindow', {autoClose}); + if (autoClose) { + DebugLog('_onResponseReceived', 'oauthAutoCloseWindow', 'closing window'); + this._connectWindow.close(); + } else { + DebugLog('_onResponseReceived', 'oauthAutoCloseWindow', 'not closing window'); + } + }); + } + + _onConnectionSuccess(event) { + DebugLog('_onConnectionSuccess', 'got success', event.detail); + return Manager.updateConnectionStatuses(event.detail.service); + } + + _onConnectionError(error) { + DebugLog('_onConnectionError', 'got error', error); + this._showErrorToast(); + } + + _onMessageComplete(event) { + DebugLog('_onConnectionComplete', 'got complete', event.detail); + this._disconnectFromMessageListener(); + } + + /** + * + * @private + */ + _connectToMessageListener() { + if (this._boundOnResponseReceived) { + DebugLog('_connectToMessageListener', 'already initialized'); + return; + } + + this._boundOnResponseReceived = this._onResponseReceived.bind(this); + this._boundOnConnectionSuccess = this._onConnectionSuccess.bind(this); + this._boundOnConnectionError = this._onConnectionError.bind(this); + this._boundOnMessageComplete = this._onMessageComplete.bind(this); + + MessageListener.on(ListenerEvents.response_received, this._boundOnResponseReceived); + MessageListener.on(ListenerEvents.connection_successful, this._boundOnConnectionSuccess); + MessageListener.on(ListenerEvents.error, this._boundOnConnectionError); + MessageListener.on(ListenerEvents.complete, this._boundOnMessageComplete); + } + + _disconnectFromMessageListener() { + if (!this._boundOnResponseReceived) { + DebugLog('_disconnectFromMessageListener', 'already uninitialized'); + return; + } + + MessageListener.off(ListenerEvents.response_received, this._boundOnResponseReceived); + MessageListener.off(ListenerEvents.connection_successful, this._boundOnConnectionSuccess); + MessageListener.off(ListenerEvents.error, this._boundOnConnectionError); + MessageListener.off(ListenerEvents.complete, this._boundOnMessageComplete); + + this._boundOnResponseReceived = undefined; + this._boundOnConnectionSuccess = undefined; + this._boundOnConnectionError = undefined; + this._boundOnMessageComplete = undefined; + } + + _showErrorToast() { + DebugLog('_showErrorToast', 'Showing error toast'); + this._showToast('There was a problem checking connection status. Please refresh the page and try again.', 'error', 'sticky'); + } + + /** + * + * @param {string} url + * @private + */ + _openWindow(url) { + this._connectWindow = openWindow(url); + } + + _showToast(message, variant, mode) { + this.dispatchEvent(createToast(message, variant, mode)); + } +} \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/integrationUserSetupStep/integrationUserSetupStep.js-meta.xml b/sfdx/force-app/main/default/lwc/integrationUserSetupStep/integrationUserSetupStep.js-meta.xml new file mode 100644 index 0000000000..1b6f6b66cf --- /dev/null +++ b/sfdx/force-app/main/default/lwc/integrationUserSetupStep/integrationUserSetupStep.js-meta.xml @@ -0,0 +1,7 @@ + + + 54.0 + Integration User Setup Step + false + Integration User Setup Step + diff --git a/sfdx/force-app/main/default/lwc/integrationUserType/integrationUserType.html b/sfdx/force-app/main/default/lwc/integrationUserType/integrationUserType.html new file mode 100644 index 0000000000..e17c6d0a0f --- /dev/null +++ b/sfdx/force-app/main/default/lwc/integrationUserType/integrationUserType.html @@ -0,0 +1,42 @@ + + + + \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/integrationUserType/integrationUserType.js b/sfdx/force-app/main/default/lwc/integrationUserType/integrationUserType.js new file mode 100644 index 0000000000..44befadbea --- /dev/null +++ b/sfdx/force-app/main/default/lwc/integrationUserType/integrationUserType.js @@ -0,0 +1,13 @@ +/** + * Created by jmather-c on 9/5/23. + * + * Note: Currently unused, but may be useful in the future. + */ + +import {LightningElement} from 'lwc'; + +export default class IntegrationUserType extends LightningElement { + doSelect(event) { + this.dispatchEvent(new CustomEvent('select', { detail: { value: event.currentTarget.value } })); + } +} \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/integrationUserType/integrationUserType.js-meta.xml b/sfdx/force-app/main/default/lwc/integrationUserType/integrationUserType.js-meta.xml new file mode 100644 index 0000000000..b3ea052e43 --- /dev/null +++ b/sfdx/force-app/main/default/lwc/integrationUserType/integrationUserType.js-meta.xml @@ -0,0 +1,7 @@ + + + 54.0 + Integration User Type + false + Integration User Type + diff --git a/sfdx/force-app/main/default/lwc/pollingStep/pollingStep.js b/sfdx/force-app/main/default/lwc/pollingStep/pollingStep.js index 9edbc87c92..09cbd3262a 100644 --- a/sfdx/force-app/main/default/lwc/pollingStep/pollingStep.js +++ b/sfdx/force-app/main/default/lwc/pollingStep/pollingStep.js @@ -99,7 +99,6 @@ export default class PollingStep extends LightningElement { return; } - // console.log(syncPrefs); Debugger.log('pollingStep', 'initPageStateData', syncPrefs); this.pollingEnabled = syncPrefs.polling_enabled; @@ -197,7 +196,7 @@ export default class PollingStep extends LightningElement { const savedSyncPreferencesResponseData = JSON.parse(updatedSyncPreferences); if (savedSyncPreferencesResponseData.isSuccess) { - console.log('save result', JSON.parse(JSON.stringify(savedSyncPreferencesResponseData.results))); + Debugger.log('save result', savedSyncPreferencesResponseData.results); this.configurationHash = savedSyncPreferencesResponseData.results.configurationHash; this.showToast('Changes were successfully saved', 'success'); this.dispatchEvent(new CustomEvent('savecomplete', { @@ -291,7 +290,7 @@ export default class PollingStep extends LightningElement { * @returns {POLLING_STATUS} */ get pollingStatus() { - // console.log('syncPrefs', this.syncPreferences); + Debugger.log('syncPrefs', this.syncPreferences); if (this.hasSynced === false) { return POLLING_STATUS.DISABLED; } diff --git a/sfdx/force-app/main/default/lwc/serviceManager/serviceManager.js b/sfdx/force-app/main/default/lwc/serviceManager/serviceManager.js new file mode 100644 index 0000000000..d92ce9d315 --- /dev/null +++ b/sfdx/force-app/main/default/lwc/serviceManager/serviceManager.js @@ -0,0 +1,229 @@ +/** + * Created by jmather-c on 8/31/23. + */ +import getServiceConnectionStatuses from '@salesforce/apexContinuation/setupAssistant.getServiceConnectionStatuses'; +import checkServiceConnectionStatuses from '@salesforce/apex/setupAssistant.checkServiceConnectionStatuses'; +import {ConnectionStatus, ServiceManagerServices, EventEmitter} from "c/systemStatusUtils"; +import {Debugger} from "c/debugger"; +const DebugLog = Debugger.withContext('ServiceManager'); +const SERVICE_DELIMINATOR = '|'; + +/** @typedef {Object} ConnectionStatusChangeDetail + * @property {string, ConnectionStatus} statuses + * @property {string, ConnectionStatus} changes + */ + +/** @typedef {Object} CoreFunctionalityEstablishedDetail + * @property {boolean} salesforce + * @property {boolean} stripe + */ + +/** @typedef {Event} ConnectionStatusChangeEvent + * @property {ConnectionStatusChangeDetail} detail + */ + +/** @typedef {Event} CoreFunctionalityEstablishedEvent + * @property {CoreFunctionalityEstablishedDetail} detail + */ + +/** @enum {string} */ +const ServiceEvents = { + connection_status_updated: 'connection_status_updated', + core_functionality_established: 'core_functionality_established', +} + +class ServiceManager extends EventEmitter { + /** @type {{string: ConnectionStatus}} */ + statuses = {}; + updating = null; + initialized = false; + initializing = null; + core_functionality_established = { + [ServiceManagerServices.salesforce]: false, + [ServiceManagerServices.stripe]: false, + }; + + constructor() { + super(ServiceEvents); + DebugLog('New ServiceManager instance created'); + this.updateConnectionStatuses(); + } + + _initialize() { + if (this.initialized) { + return Promise.resolve(this.statuses); + } + if (this.initializing) { + DebugLog('ServiceManager initialization already in progress'); + return this.initializing; + } + this.initializing = checkServiceConnectionStatuses() + .then((result) => { + /** @type {SystemConnectionStatusesPayload} */ + const responseData = JSON.parse(result); + DebugLog('ServiceManager initialization complete', { responseData }); + const statuses = this._processServiceStatusResults(responseData); + this.initialized = true; + this.initializing = null; + return statuses; + }) + .catch((error) => { + this._processServiceStatusError(error); + this.initializing = null; + this.initialized = false; + }); + return this.initializing; + } + + /** + * + * @param {string} [serviceToCheck] + * @return {null} + */ + updateConnectionStatuses(serviceToCheck) { + DebugLog('Updating connection statuses', { serviceToCheck }); + if (this.updating) { + DebugLog('Connection status update already in progress'); + return this.updating; + } + this.updating = new Promise((resolve, reject) => { + this._initialize().then(() => { + return getServiceConnectionStatuses({ serviceToCheck }) + .then(result => { + /** @type {SystemConnectionStatusesPayload} */ + const responseData = JSON.parse(result); + DebugLog('Connection status update complete', { responseData }); + return resolve(this._processServiceStatusResults(responseData)) + }) + .catch(reject); + }).catch(reject); + }).catch(error => this._processServiceStatusError) + + return this.updating; + } + + _processServiceStatusError(error) { + Debugger.error(error); + this.updating = null; + } + + /** + * + * @param {SystemConnectionStatusesPayload} responseData + * @return {{string: ConnectionStatus}} + * @private + */ + _processServiceStatusResults(responseData) { + DebugLog('Connection status update complete, processing results', responseData); + + const oldStatuses = this.statuses; + const newStatuses = responseData.results.services; + const changes = {}; + const checkCFE = { + [ServiceManagerServices.salesforce]: this.core_functionality_established[ServiceManagerServices.salesforce], + [ServiceManagerServices.stripe]: this.core_functionality_established[ServiceManagerServices.stripe], + }; + let cfeChanged = false; + DebugLog('current statuses', oldStatuses); + DebugLog('new statuses', newStatuses); + DebugLog('check cfe', checkCFE); + + for (const service in newStatuses) { + const [service_type, service_id] = service.split(SERVICE_DELIMINATOR); + if (this.statuses[service] !== newStatuses[service]) { + changes[service] = newStatuses[service]; + // this._fireEvent(service, newStatuses[service]); + } + + if (checkCFE[service_type] === false && this._isConnected(newStatuses[service])) { + cfeChanged = true; + checkCFE[service_type] = true; + } + } + + DebugLog('changes', changes); + DebugLog('check cfe', checkCFE); + + this.core_functionality_established = checkCFE; + this.statuses = newStatuses; + + if (Object.keys(changes).length > 0) { + DebugLog('firing connection_status_updated event', changes); + this._fireEvent(ServiceEvents.connection_status_updated, { + statuses: this.statuses, + changes, + }); + } + + // for (const serviceType in checkCFE) { + // this._fireEvent(serviceType, checkCFE[serviceType]); + // } + + if (cfeChanged) { + DebugLog('firing core_functionality_established event', this.statuses); + this._fireEvent(ServiceEvents.core_functionality_established, { + isConnected: this.isCoreFunctionalityEnabled(), + statuses: this.statuses, + isFirstRun: Object.keys(oldStatuses).length === 0, + }); + } + + this.updating = null; + return this.statuses; + } + + isCoreFunctionalityEnabled() { + return this.core_functionality_established[ServiceManagerServices.salesforce] && this.core_functionality_established[ServiceManagerServices.stripe]; + } + + /** + * + * @param {string} status + * @return {boolean} + * @private + */ + _isConnected(status) { + return status === ConnectionStatus.connected || status === ConnectionStatus.fresh; + } + + /** + * + * @param {ServiceEvents|string} event_name + * @param {Function} callback + */ + on(event_name, callback) { + super.on(event_name, callback); + + if (event_name === ServiceEvents.connection_status_updated) { + callback(this._createEvent(ServiceEvents.connection_status_updated, { statuses: this.statuses })); + } + + if (event_name === ServiceEvents.core_functionality_established && this.isCoreFunctionalityEnabled()) { + callback(this._createEvent(ServiceEvents.core_functionality_established, this.core_functionality_established)); + } + + if (this.statuses[event_name] !== undefined) { + callback(this._createEvent(event_name, this.statuses[event_name])); + } + } + + /** + * + * @param {ServiceEvents|string} event_name + * @param {Function} callback + */ + off(event_name, callback) { super.off(event_name, callback); } + + /** + * + * @param {ServiceEvents|string} event_name + * @param {Object} detail + * @protected + * @emits {Event} + */ + _fireEvent(event_name, detail) { super._fireEvent(event_name, detail); } +} + +const Manager = new ServiceManager(); + +export { Manager, ServiceEvents }; \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/serviceManager/serviceManager.js-meta.xml b/sfdx/force-app/main/default/lwc/serviceManager/serviceManager.js-meta.xml new file mode 100644 index 0000000000..9ba880eb85 --- /dev/null +++ b/sfdx/force-app/main/default/lwc/serviceManager/serviceManager.js-meta.xml @@ -0,0 +1,7 @@ + + + 54.0 + Service Manager + false + Service Manager + diff --git a/sfdx/force-app/main/default/lwc/setup/setup.html b/sfdx/force-app/main/default/lwc/setup/setup.html index 86aa24fcae..d61486b070 100644 --- a/sfdx/force-app/main/default/lwc/setup/setup.html +++ b/sfdx/force-app/main/default/lwc/setup/setup.html @@ -290,12 +290,15 @@

  • - System Connections + Stripe Account
  • -
  • +
  • + Integration User +
  • +
  • Data Mapping
  • -
  • +
  • Manage Integration
@@ -308,7 +311,8 @@

- +

Allow your Salesforce org and Stripe to communicate. Review the current connection status for both Stripe and Salesforce. If there is an issue, you may need to reconnect one or both accounts.

- - + + +
+ +

+ Allow your Salesforce org and Stripe to communicate. Review the current connection status for both Stripe and Salesforce. If there is an issue, you may need to reconnect one or both accounts. +

+ +
- +

Determine how Stripe data is mapped to your Salesforce org. Mappings are grouped by Stripe object, each of which has its own set of mapping groups. Field mappings can either be a Salesforce field, which reads Salesforce data on a per-record basis, or a static value, which will apply the same value to all records.

@@ -426,7 +456,7 @@

Stripe Billing Connector onshowtoast={showToast}> - +

Determine how and when data is synced between Stripe and Salesforce. Adjust when Stripe data should start to sync, how many records are saved in your org at one time, how many Salesforce API calls Stripe is allowed to make, and more. Default values have been provided; be sure to review and adjust sync settings to suit your Salesforce org's needs.

diff --git a/sfdx/force-app/main/default/lwc/setup/setup.js b/sfdx/force-app/main/default/lwc/setup/setup.js index 7fe4f5cf28..575f2a0d76 100644 --- a/sfdx/force-app/main/default/lwc/setup/setup.js +++ b/sfdx/force-app/main/default/lwc/setup/setup.js @@ -1,5 +1,8 @@ import { LightningElement, track, api } from 'lwc'; import { getErrorMessage } from 'c/utils' +import { Manager, ServiceEvents } from "c/serviceManager"; +import { Debugger } from 'c/debugger'; +const DebugLog = Debugger.withContext('SetupWizard'); import companyLogo from '@salesforce/resourceUrl/companyLogo'; import checkUserPermissions from '@salesforce/apex/setupAssistant.checkUserPermissions'; @@ -7,12 +10,14 @@ import getSetupData from '@salesforce/apex/setupAssistant.getSetupData'; import getPackageVersion from '@salesforce/apex/utilities.getPackageVersion'; import setOrgType from '@salesforce/apex/utilities.setOrgType'; import saveData from '@salesforce/apex/setupAssistant.saveData'; -import illustrations from '@salesforce/resourceUrl/stripe_setupIllustrations'; +import illustrations from '@salesforce/resourceUrl/illustrations'; export default class FirstTimeSetup extends LightningElement { systemConnectionsIllustration = illustrations + '/stripe_illustration_systemConnections.svg'; dataMappingIllustration = illustrations + '/stripe_illustration_dataMapping.svg'; syncPreferencesIllustration = illustrations + '/stripe_illustration_syncPreferences.svg'; + integrationUserIllustration = illustrations + '/stripe_setup_authorizeWebhooks.svg'; + formattedPackageVersion = ''; @track contentShown = false; @track logoUrl = companyLogo; @@ -31,17 +36,25 @@ export default class FirstTimeSetup extends LightningElement { @track stepName; @track steps = [ { - title: 'Connect Stripe and Salesforce', - name: 'C-SYSTEM-CONNECTIONS-STEP', + title: 'Connect Your Stripe Account', + name: 'C-STRIPE_ACCOUNT_SETUP-STEP', orderIndex: 1, isComplete: false, isActive: false, - component: 'c-system-connections-step', + component: 'c-stripe-account-setup-step', + }, + { + title: 'Connect the Integration User', + name: 'C-INTEGRATION-USER-SETUP-STEP', + orderIndex: 2, + isComplete: false, + isActive: false, + component: 'c-integration-user-setup-step', }, { title: 'Define Data Mapping', name: 'C-DATA-MAPPING-STEP', - orderIndex: 2, + orderIndex: 3, isComplete: false, isActive: false, component: 'c-data-mapping-step', @@ -49,7 +62,7 @@ export default class FirstTimeSetup extends LightningElement { { title: 'Manage Integration', name: 'C-SYNC-PREFERENCES-STEP', - orderIndex: 3, + orderIndex: 4, isComplete: false, isActive: false, component: 'c-sync-preferences-step', @@ -57,7 +70,7 @@ export default class FirstTimeSetup extends LightningElement { { title: 'Activate Syncing', name: 'C-POLLING-STEP', - orderIndex: 4, + orderIndex: 5, isComplete: false, isActive: false, component: 'c-polling-step', @@ -65,7 +78,7 @@ export default class FirstTimeSetup extends LightningElement { { title: 'Update Salesforce Pages', name: 'C-ORG-SETTINGS-STEP', - orderIndex: 5, + orderIndex: 6, isComplete: false, isActive: false, component: 'c-org-settings-step', @@ -73,17 +86,19 @@ export default class FirstTimeSetup extends LightningElement { ]; setupStepRefs = { - systemConnections: 0, - dataMapping: 1, - syncPreferences: 2, - polling: 3, - orgSettings: 4, + stripeAccount: 0, + integrationUser: 1, + dataMapping: 2, + syncPreferences: 3, + polling: 4, + orgSettings: 5, }; generalStepRefs = { - systemConnections: 0, - dataMapping: 1, - syncPreferences: 2, + stripeAccount: 0, + integrationUser: 1, + dataMapping: 2, + syncPreferences: 3, }; @track missingPermissions = {}; @@ -167,14 +182,40 @@ export default class FirstTimeSetup extends LightningElement { } } - getmappingconfigurations() { - this.template.querySelector('c-data-mapping-step').getPicklistValuesForMapper(true, ''); - this.template.querySelector('c-sync-preferences-step').connectedCallback(); - this.template.querySelector('c-polling-step').connectedCallback(); - this.nextDisabled = false; + completeStep(event) { + DebugLog('stepComplete', event.detail.step); + DebugLog('activeStep', this.activeStepIndex); + this.steps[this.activeStepIndex].isComplete = true; + if (event.detail.step === 'integration_user_connection' && this.activeStepIndex === this.setupStepRefs.integrationUser) { + this.nextDisabled = this.steps[this.setupStepRefs.integrationUser].isComplete === false; + } + if (event.detail.step === 'stripe_account_connection' && this.activeStepIndex === this.setupStepRefs.stripeAccount) { + this.nextDisabled = this.steps[this.setupStepRefs.stripeAccount].isComplete === false; + } + } + + systemsConnected(event) { + DebugLog('systemsConnected', event.detail); + if (event.detail.isConnected && this.setupComplete === false && event.detail.isFirstRun === false) { + DebugLog('Refreshing data dependent items.'); + this.template.querySelector('c-data-mapping-step').getPicklistValuesForMapper(true, ''); + this.template.querySelector('c-sync-preferences-step').connectedCallback(); + this.template.querySelector('c-polling-step').connectedCallback(); + this.nextDisabled = false; + } + } + + disconnectedCallback() { + if (this.boundSystemsConnected) { + Manager.off(ServiceEvents.core_functionality_established, this.boundSystemsConnected); + } } async connectedCallback() { + if (this.boundSystemsConnected === undefined) { + this.boundSystemsConnected = this.systemsConnected.bind(this); + Manager.on(ServiceEvents.core_functionality_established, this.boundSystemsConnected); + } try { const userPermissionCheck = await checkUserPermissions(); const userPermissionResponseData = JSON.parse(userPermissionCheck); @@ -223,11 +264,15 @@ export default class FirstTimeSetup extends LightningElement { } async fetchSetupData() { + DebugLog('fetchSetupData', 'Fetching setup data'); this.steps[this.activeStepIndex].isActive = true; try { const setupData = await getSetupData(); const responseData = JSON.parse(setupData); + DebugLog('fetchSetupData', 'Setup data response', responseData); + if (responseData.error) { + DebugLog('fetchSetupData', 'Error fetching setup data', responseData.error); this.showSetupToast(responseData.error, 'error', 'sticky'); return; } @@ -238,35 +283,37 @@ export default class FirstTimeSetup extends LightningElement { } let completedSteps = JSON.parse(responseData.results.setupData.Steps_Completed__c); - if (!responseData.results.isConnected && Object.keys(completedSteps).length > 0) { - //setting info step to complete and landing user on auth step - this.setupStarted = true; - this.steps[this.activeStepIndex].isComplete = true; - this.steps[this.activeStepIndex].isActive = false; - this.activeStepIndex = this.setupStepRefs.systemConnections; - this.steps[this.activeStepIndex].isActive = true; - return; - } + DebugLog('fetchSetupData', 'Completed steps', completedSteps); if (!responseData.results.isConnected && Object.keys(completedSteps).length <= 0) { + DebugLog('fetchSetupData', 'Not connected, no completed steps'); + // also in what scenario is length less than 0? return; } this.nextDisabled = false; this.setupStarted = true; - this.steps[this.activeStepIndex].isComplete = true; this.steps[this.activeStepIndex].isActive = false; + + // this seems bad... but so much of this is bad... so... whatever? lol. It works. for (const step in completedSteps) { + DebugLog('fetchSetupData', 'Processing step', step); this.steps[this.activeStepIndex].isComplete = true; if (this.activeStepIndex < this.steps.length - 1) { - this.showNextStep(); + this.activeStepIndex++; } } + this.steps[this.activeStepIndex].isActive = true; + if (this.activeStepIndex < 2) { + this.nextDisabled = true; + } + DebugLog('fetchSetupData', 'Final state', { activeStepIndex: this.activeStepIndex, steps: this.steps }); } catch (error) { let errorMessage = getErrorMessage(error); + DebugLog('fetchSetupData', 'Error fetching setup data', { errorMessage, error }); this.showSetupToast(errorMessage, 'error', 'sticky'); } } @@ -281,10 +328,10 @@ export default class FirstTimeSetup extends LightningElement { } next(e) { - console.log('got next', e); + DebugLog('got next', e); this.contentLoading = true; this.stepName = this.steps[this.activeStepIndex].name; - console.log('processing step', this.stepName); + DebugLog('processing step', this.stepName); if(this.stepName === 'C-DATA-MAPPING-STEP') { return this.template.querySelector('c-data-mapping-step').saveDataMappings(); } else if(this.stepName === 'C-SYNC-PREFERENCES-STEP') { @@ -349,9 +396,12 @@ export default class FirstTimeSetup extends LightningElement { const newActiveStep = this.template.querySelector('c-step[data-index="' + this.activeStepIndex + '"]'); if(lastActiveStep && newActiveStep) { this.steps[lastActiveStep.dataset.index].isActive = false; - this.steps[lastActiveStep.dataset.index].isComplete = false; + // this.steps[lastActiveStep.dataset.index].isComplete = false; this.steps[newActiveStep.dataset.index].isActive = true; - this.steps[newActiveStep.dataset.index].isComplete = false; + // this.steps[newActiveStep.dataset.index].isComplete = false; + if (newActiveStep.dataset.index < 2) { + this.nextDisabled = false; + } lastActiveStep.classList.add('slds-hide'); newActiveStep.classList.remove('slds-hide'); } @@ -433,9 +483,20 @@ export default class FirstTimeSetup extends LightningElement { this.activeStepIndex++; const newActiveStep = this.template.querySelector('c-step[data-index="' + this.activeStepIndex + '"]'); if (lastActiveStep && newActiveStep) { - this.steps[lastActiveStep.dataset.index].isActive = false; - this.steps[lastActiveStep.dataset.index].isComplete = true; - this.steps[newActiveStep.dataset.index].isActive = true; + DebugLog('showNextStep', 'moving to next step'); + const lastActiveStepIndex = parseInt(lastActiveStep.dataset.index, 10); + const newActiveStepIndex = parseInt(newActiveStep.dataset.index, 10); + const lastStepObj = this.steps[lastActiveStepIndex]; + const nextStepObj = this.steps[newActiveStepIndex]; + DebugLog('showNextStep', 'last', lastStepObj); + DebugLog('showNextStep', 'next', nextStepObj); + lastStepObj.isActive = false; + lastStepObj.isComplete = true; + nextStepObj.isActive = true; + + if (newActiveStepIndex < 2) { + this.nextDisabled = nextStepObj.isComplete === false; + } lastActiveStep.classList.add('slds-hide'); newActiveStep.classList.remove('slds-hide'); } diff --git a/sfdx/force-app/main/default/lwc/step/step.js b/sfdx/force-app/main/default/lwc/step/step.js index 3caca135e4..6469123aef 100644 --- a/sfdx/force-app/main/default/lwc/step/step.js +++ b/sfdx/force-app/main/default/lwc/step/step.js @@ -2,6 +2,7 @@ import { LightningElement, api, track, wire } from 'lwc'; import getExportableConfigDownloadUrl from '@salesforce/apex/setupAssistant.getExportableConfigDownloadUrl'; import LightningConfirm from 'lightning/confirm'; import LightningAlert from "lightning/alert"; +import { Debugger } from 'c/debugger'; export default class SetupStep extends LightningElement { @api stepName = ''; @@ -67,7 +68,7 @@ export default class SetupStep extends LightningElement { } next() { - console.log('sending next event'); + Debugger.log('sending next event'); this.dispatchEvent(new CustomEvent('next', { bubbles: true, composed: true diff --git a/sfdx/force-app/main/default/lwc/stripeAccountConnectionModes/stripeAccountConnectionModes.html b/sfdx/force-app/main/default/lwc/stripeAccountConnectionModes/stripeAccountConnectionModes.html new file mode 100644 index 0000000000..901a3c3238 --- /dev/null +++ b/sfdx/force-app/main/default/lwc/stripeAccountConnectionModes/stripeAccountConnectionModes.html @@ -0,0 +1,43 @@ + + + + \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/stripeAccountConnectionModes/stripeAccountConnectionModes.js b/sfdx/force-app/main/default/lwc/stripeAccountConnectionModes/stripeAccountConnectionModes.js new file mode 100644 index 0000000000..5869996682 --- /dev/null +++ b/sfdx/force-app/main/default/lwc/stripeAccountConnectionModes/stripeAccountConnectionModes.js @@ -0,0 +1,11 @@ +/** + * Created by jmather-c on 9/5/23. + */ + +import {LightningElement} from 'lwc'; + +export default class StripeAccountConnectionModes extends LightningElement { + doSelect(event) { + this.dispatchEvent(new CustomEvent('select', { detail: { value: event.currentTarget.value } })); + } +} \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/stripeAccountConnectionModes/stripeAccountConnectionModes.js-meta.xml b/sfdx/force-app/main/default/lwc/stripeAccountConnectionModes/stripeAccountConnectionModes.js-meta.xml new file mode 100644 index 0000000000..14a4009e9a --- /dev/null +++ b/sfdx/force-app/main/default/lwc/stripeAccountConnectionModes/stripeAccountConnectionModes.js-meta.xml @@ -0,0 +1,7 @@ + + + 54.0 + Stripe Account Connection Modes + false + Stripe Account Connection Modes + diff --git a/sfdx/force-app/main/default/lwc/stripeAccountSetupStep/stripeAccountSetupStep.css b/sfdx/force-app/main/default/lwc/stripeAccountSetupStep/stripeAccountSetupStep.css new file mode 100644 index 0000000000..060358e7a8 --- /dev/null +++ b/sfdx/force-app/main/default/lwc/stripeAccountSetupStep/stripeAccountSetupStep.css @@ -0,0 +1,8 @@ +/** + * Created by jmather-c on 8/31/23. + */ +.stripe-status { + border-radius: var(--lwc-borderRadiusLarge, .5rem); + padding: var(--lwc-spacingMedium, 1rem); + box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.10); +} \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/stripeAccountSetupStep/stripeAccountSetupStep.html b/sfdx/force-app/main/default/lwc/stripeAccountSetupStep/stripeAccountSetupStep.html new file mode 100644 index 0000000000..736cf28594 --- /dev/null +++ b/sfdx/force-app/main/default/lwc/stripeAccountSetupStep/stripeAccountSetupStep.html @@ -0,0 +1,62 @@ + + + + \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/stripeAccountSetupStep/stripeAccountSetupStep.js b/sfdx/force-app/main/default/lwc/stripeAccountSetupStep/stripeAccountSetupStep.js new file mode 100644 index 0000000000..2815719b45 --- /dev/null +++ b/sfdx/force-app/main/default/lwc/stripeAccountSetupStep/stripeAccountSetupStep.js @@ -0,0 +1,205 @@ +import getStripeAuthorizationUri from '@salesforce/apex/setupAssistant.getStripeAuthorizationUri'; +import {LightningElement, track, api} from 'lwc'; +import {getErrorMessage, createToast, openWindow} from 'c/utils' +import {Debugger} from "c/debugger"; +import {MessageListener, ConnectionStatus, ListenerEvents, ServiceManagerServices} from "c/systemStatusUtils"; +import { Manager, ServiceEvents } from "c/serviceManager"; +const DebugLog = Debugger.withContext('StripeAccountSetupStep'); +const SERVICE_DELIMINATOR = '|'; + +export default class StripeAccountSetupStep extends LightningElement { + @track isConnected = false; + @track loading = false; + @track modalLoading = false; + @track status = ConnectionStatus.loading; + @track accountType; + @api hideAction = false; + @api isSetup = false; + _connectWindow = null; + _expectedUpdate = undefined; + + async connectedCallback() { + if (this._boundConnectionStatusUpdated) { + DebugLog('connectedCallback', 'already connected'); + return; + } + + DebugLog('connectedCallback', 'connecting'); + this._boundConnectionStatusUpdated = this._connectionStatusUpdated.bind(this); + Manager.on(ServiceEvents.connection_status_updated, this._boundConnectionStatusUpdated); + } + + disconnectedCallback() { + if (this._boundConnectionStatusUpdated === undefined) { + DebugLog('disconnectedCallback', 'already disconnected'); + return; + } + + DebugLog('disconnectedCallback', 'disconnecting'); + Manager.off(ServiceEvents.connection_status_updated, this._boundConnectionStatusUpdated); + } + + async forceRefresh() { + await Manager.updateConnectionStatuses(); + } + + // connected to the "Authorize" button in the UI + // main entry point for starting the authorization flow + /** + * + * @return {Promise} + */ + async authorizeIntegrationUser() { + DebugLog('authorizeIntegrationUser called'); + this.loading = true; + const authInfo = await getStripeAuthorizationUri({ liveMode: this.accountType === 'live' }); + /** @type {IntegrationUserAuthorizationUriPayload} */ + const responseData = JSON.parse(authInfo); + DebugLog('authorizeIntegrationUser responseData', responseData); + this._connectToMessageListener(); + MessageListener.listenFor(responseData.results.message_origin_uri); + this._expectedUpdate = true; + this._connectWindow = openWindow(responseData.results.authorization_uri); + } + + get loginDisabled() { + return !this.accountType; + } + + updateAccountType(event) { + this.accountType = event.detail.value; + } + + /** + * + * @param {ConnectionStatusChangeEvent} event + * @private + */ + _connectionStatusUpdated(event) { + DebugLog('connectionStatusUpdated', JSON.parse(JSON.stringify(event.detail))); + DebugLog('connectionStatusUpdated', {expectedUpdate: this._expectedUpdate}); + if (this._expectedUpdate === null) { + DebugLog('Not expecting an update, bailing...'); + return; + } + + const statuses = event.detail.statuses; + const stripeService = Object.keys(statuses).find(key => key.startsWith(ServiceManagerServices.stripe + SERVICE_DELIMINATOR)); + this.status = statuses[stripeService]; + this.isConnected = this.status === ConnectionStatus.fresh || this.status === ConnectionStatus.connected; + DebugLog('connectionStatusUpdated', 'stripe status', { + stripeService, + status: this.status, + isConnected: this.isConnected, + isSetup: this.isSetup, + }); + + if (this._expectedUpdate !== undefined && this.status === 'failed') { + DebugLog('connectionStatusUpdated', 'got failed status'); + this._showErrorToast(); + } + + if (this._expectedUpdate === true && this.status === ConnectionStatus.fresh) { + DebugLog('connectionStatusUpdated', 'got fresh status'); + this._showToast('Integration User has been successfully connected.', 'success'); + } else if (this._expectedUpdate === false && this.status === ConnectionStatus.disconnected) { + DebugLog('connectionStatusUpdated', 'got disconnected status'); + this._showToast('Integration User successfully unauthorized.', 'success'); + } + + DebugLog('connectionStatusUpdated', 'isSetup', this.isSetup); + DebugLog('connectionStatusUpdated', 'isConnected', this.isConnected); + + if (this.isSetup && this.isConnected) { + DebugLog('connectionStatusUpdated', 'dispatching stepcomplete'); + this.dispatchEvent(new CustomEvent('stepcomplete', { detail: { step: 'stripe_account_connection' }} )); + } + + this._expectedUpdate = undefined; + this.loading = false; + } + + _onResponseReceived(event) { + DebugLog('_onResponseReceived', 'got response', event.detail); + Debugger.oauthAutoCloseWindow.then((autoClose) => { + DebugLog('_onResponseReceived', 'oauthAutoCloseWindow', {autoClose}); + if (autoClose) { + DebugLog('_onResponseReceived', 'oauthAutoCloseWindow', 'closing window'); + this._connectWindow.close(); + } else { + DebugLog('_onResponseReceived', 'oauthAutoCloseWindow', 'not closing window'); + } + }); + } + + _onConnectionSuccess(event) { + DebugLog('_onConnectionSuccess', 'got success', event.detail); + return Manager.updateConnectionStatuses(event.detail.service); + } + + _onConnectionError(error) { + DebugLog('_onConnectionError', 'got error', error); + this._showErrorToast(); + } + + _onMessageComplete(event) { + DebugLog('_onConnectionComplete', 'got complete', event.detail); + this._disconnectFromMessageListener(); + } + + /** + * + * @private + */ + _connectToMessageListener() { + if (this._boundOnResponseReceived) { + DebugLog('_connectToMessageListener', 'already initialized'); + return; + } + + this._boundOnResponseReceived = this._onResponseReceived.bind(this); + this._boundOnConnectionSuccess = this._onConnectionSuccess.bind(this); + this._boundOnConnectionError = this._onConnectionError.bind(this); + this._boundOnMessageComplete = this._onMessageComplete.bind(this); + + MessageListener.on(ListenerEvents.response_received, this._boundOnResponseReceived); + MessageListener.on(ListenerEvents.connection_successful, this._boundOnConnectionSuccess); + MessageListener.on(ListenerEvents.error, this._boundOnConnectionError); + MessageListener.on(ListenerEvents.complete, this._boundOnMessageComplete); + } + + _disconnectFromMessageListener() { + if (!this._boundOnResponseReceived) { + DebugLog('_disconnectFromMessageListener', 'already uninitialized'); + return; + } + + MessageListener.off(ListenerEvents.response_received, this._boundOnResponseReceived); + MessageListener.off(ListenerEvents.connection_successful, this._boundOnConnectionSuccess); + MessageListener.off(ListenerEvents.error, this._boundOnConnectionError); + MessageListener.off(ListenerEvents.complete, this._boundOnMessageComplete); + + this._boundOnResponseReceived = undefined; + this._boundOnConnectionSuccess = undefined; + this._boundOnConnectionError = undefined; + this._boundOnMessageComplete = undefined; + } + + _showErrorToast() { + DebugLog('_showErrorToast', 'showing error toast'); + this._showToast('There was a problem checking connection status. Please refresh the page and try again.', 'error', 'sticky'); + } + + /** + * + * @param {string} url + * @private + */ + _openWindow(url) { + this._connectWindow = openWindow(url); + } + + _showToast(message, variant, mode) { + this.dispatchEvent(createToast(message, variant, mode)); + } +} \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/stripeAccountSetupStep/stripeAccountSetupStep.js-meta.xml b/sfdx/force-app/main/default/lwc/stripeAccountSetupStep/stripeAccountSetupStep.js-meta.xml new file mode 100644 index 0000000000..cd1e6f7c56 --- /dev/null +++ b/sfdx/force-app/main/default/lwc/stripeAccountSetupStep/stripeAccountSetupStep.js-meta.xml @@ -0,0 +1,7 @@ + + + 54.0 + Stripe Account Setup Step + false + Stripe Account Setup Step + diff --git a/sfdx/force-app/main/default/lwc/syncPreferencesItem/syncPreferencesItem.js b/sfdx/force-app/main/default/lwc/syncPreferencesItem/syncPreferencesItem.js index 085180a2ce..5c618cc2f5 100644 --- a/sfdx/force-app/main/default/lwc/syncPreferencesItem/syncPreferencesItem.js +++ b/sfdx/force-app/main/default/lwc/syncPreferencesItem/syncPreferencesItem.js @@ -3,6 +3,7 @@ */ import { LightningElement, api } from 'lwc'; +import { Debugger } from "c/debugger"; export default class SyncPreferencesItem extends LightningElement { @api name; @@ -15,8 +16,8 @@ export default class SyncPreferencesItem extends LightningElement { @api first = false; get displayItem() { - // console.log('name', this.name); - // console.log('toggleFieldVisibilityList', JSON.parse(JSON.stringify(this.toggleFieldVisibilityList))); + Debugger.log('name', this.name); + Debugger.log('toggleFieldVisibilityList', this.toggleFieldVisibilityList); const isInToggleList = this.toggleFieldVisibilityList.indexOf(this.name) !== -1; if (this.hidden) { // if it is not visible by default, then it must be in toggleFieldVisibilityList to be visible diff --git a/sfdx/force-app/main/default/lwc/systemConnectionsStep/systemConnectionsStep.css b/sfdx/force-app/main/default/lwc/systemConnectionsStep/systemConnectionsStep.css index 4fedf518c0..d1eda4e0d4 100644 --- a/sfdx/force-app/main/default/lwc/systemConnectionsStep/systemConnectionsStep.css +++ b/sfdx/force-app/main/default/lwc/systemConnectionsStep/systemConnectionsStep.css @@ -1,8 +1,3 @@ -.slds-notify { - border-radius: var(--lwc-borderRadiusMedium, 0.25rem); -} - -.slds-notify + .slds-notify, -.stripe-primary-action { +.item-wrapper + .item-wrapper { margin-top: var(--lwc-spacingLarge, 1.5rem); } \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/systemConnectionsStep/systemConnectionsStep.html b/sfdx/force-app/main/default/lwc/systemConnectionsStep/systemConnectionsStep.html index aef6853d05..949c7f43cc 100644 --- a/sfdx/force-app/main/default/lwc/systemConnectionsStep/systemConnectionsStep.html +++ b/sfdx/force-app/main/default/lwc/systemConnectionsStep/systemConnectionsStep.html @@ -1,59 +1,39 @@ \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/systemConnectionsStep/systemConnectionsStep.js b/sfdx/force-app/main/default/lwc/systemConnectionsStep/systemConnectionsStep.js index 1ef4624da6..21f662a44b 100644 --- a/sfdx/force-app/main/default/lwc/systemConnectionsStep/systemConnectionsStep.js +++ b/sfdx/force-app/main/default/lwc/systemConnectionsStep/systemConnectionsStep.js @@ -1,120 +1,272 @@ import validateConnectionStatus from '@salesforce/apex/setupAssistant.validateConnectionStatus'; -import { LightningElement, track, api, wire } from 'lwc'; +import validateSharedState from '@salesforce/apex/setupAssistant.validateSharedState'; +import { LightningElement, track, api } from 'lwc'; import { getErrorMessage } from 'c/utils' +import { Debugger } from "c/debugger"; +import { ConnectionStatus, TextStrings } from "c/systemStatusUtils"; +const DebugLog = Debugger.withContext('SystemConnectionsStep'); -export default class SystemConnectionsStep extends LightningElement { - @track salesforceComplete = false; - @track stripeComplete = false; - @track connectWindow; - @track isSandbox; - // TODO should be pulled from APEX, use http://localhost:3100 for localdev - @track rubyBaseURI = 'https://salesforce.suitesync.io'; - @track salesforceNamespace; - @api hideAction = false; +function failedCheckResponse() { + return { + salesforceStatus: ConnectionStatus.failed, + stripeStatus: ConnectionStatus.failed, + isComplete: false, + }; +} - connectedCallback() { - this.stripeConnectedAppCallback(true); - } - stripeConnectedAppCallback() { - this.validateConnectionStatus(true, ''); - this.postMessageListener = (event) => { -// console.log('Got event: ' + JSON.parse(JSON.stringify(event))); - if(event.origin !== this.rubyBaseURI) { - console.log("bad post message origin") - return - } +let platformUri = ''; +let salesforceSandboxUriFragment = ''; +let salesforceProductionUriFragment = ''; +let stripeLiveUriFragment = ''; +let stripeTestUriFragment = ''; +let isSandbox = false; +let salesforceNamespace = ''; +let state = ''; - if (event.data === 'stripeConnectionSuccessful') { - this.validateConnectionStatus(false, 'salesforce'); - } else if (event.data === 'salesforceConnectionSuccessful') { - this.connectWindow.close(); - this.validateConnectionStatus(false, 'stripe'); - } else { - console.log("bad postmessage data") - } - } - - window.addEventListener("message", this.postMessageListener.bind(this)); +export default class SystemConnectionsStep extends LightningElement { + @track isSalesforceConnected = false; + @track isStripeConnected = false; + @track modalLoading = false; + @track salesforceStatus = ConnectionStatus.loading; + @track stripeStatus = ConnectionStatus.loading; + @api hideAction = false; + _listenerInitialized = false; + _connectWindow = null; + _listening = false; + + async connectedCallback() { + this._initializeMessageListener(); + await this._checkConnectionStatus(); } disconnectedCallback() { - window.removeEventListener('message', this.postMessageListener); + this._destroyMessageListener(); } // connected to the "Authorize" button in the UI // main entry point for starting the authorization flow - connectToStripe(event) { - let oauthConnectionURL = this.rubyBaseURI; + connectToSalesforce() { + let oauthConnectionURL = platformUri; - if(this.isSandbox) { - oauthConnectionURL += '/auth/salesforcesandbox' + if (isSandbox) { + oauthConnectionURL += salesforceSandboxUriFragment; } else { - oauthConnectionURL += '/auth/salesforce' + oauthConnectionURL += salesforceProductionUriFragment; } // TODO should be removed since the namespace is defined via the post install ste[p] - oauthConnectionURL += "?salesforceNamespace=" + this.salesforceNamespace + oauthConnectionURL += "?salesforceNamespace=" + salesforceNamespace + "&state=" + state; + this._listening = true; + + this._openWindow(oauthConnectionURL); + } + + connectToStripe() { + this.showConnectToStripeModal(); + } - this.connectWindow = window.open(oauthConnectionURL, '"_blank"'); + connectToStripeLiveMode() { + return this._connectToStripe(true); } - async validateConnectionStatus(isConnectedCallback, systemConnected) { + connectToStripeTestMode() { + return this._connectToStripe(false); + } + + /** + * + * @param {boolean} isLive + */ + _connectToStripe(isLive) { + let oauthConnectionURL = platformUri; + + if (isLive) { + oauthConnectionURL += stripeLiveUriFragment; + } else { + oauthConnectionURL += stripeTestUriFragment; + } + + oauthConnectionURL += "?state=" + state; + this._listening = true; + this._openWindow(oauthConnectionURL); + } + + get isComplete() { + return this.isSalesforceConnected && this.isStripeConnected; + } + + + showConnectToStripeModal() { + this.template.querySelector('.stripe-modal-connect-stripe-account').show(); + } + + hideConnectToStripeModal() { + this.template.querySelector('.stripe-modal-connect-stripe-account').hide(); + } + + /** + * + * @param {string} [systemToCheck] + * @return {Promise} + */ + async _validateConnectionStatus(systemToCheck) { + DebugLog('_fetchIntegrationUserStatus systemToCheck', systemToCheck); + const validateConnection = await validateConnectionStatus({ + systemToCheck : systemToCheck + }); + /** @type {SystemConnectionStatusesPayload} */ + const responseData = JSON.parse(validateConnection); + + if (responseData.isSuccess) { + const results = responseData.results; + const config = results.config; + DebugLog('_fetchIntegrationUserStatus config', config); + isSandbox = config.is_sandbox; + salesforceNamespace = config.salesforce_namespace; + salesforceSandboxUriFragment = config.salesforce_sandbox_uri_fragment; + salesforceProductionUriFragment = config.salesforce_production_uri_fragment; + platformUri = config.platform_uri; + state = config.state; + stripeTestUriFragment = config.stripe_test_uri_fragment; + stripeLiveUriFragment = config.stripe_live_uri_fragment; + delete results.config; + return responseData.results; + } else { + throw new Error(responseData.error); + } + } + + async _checkConnectionStatus(systemToCheck) { this.loading = true; try { - const validateConnection = await validateConnectionStatus({ - isConnectedCallback : isConnectedCallback, - systemConnected : systemConnected - }); - const responseData = JSON.parse(validateConnection); - - if(responseData.isSuccess) { - const isStripeConnected = responseData.results.isStripeConnected; - const isSalesforceConnected = responseData.results.isSalesforceConnected; - this.isSandbox = responseData.results.isSandbox - this.salesforceNamespace = responseData.results.salesforceNamespace - - if (isStripeConnected === 'freshConnection') { - this.stripeComplete = true; - this.showToast('Stripe to Salesforce authorization successfully completed', 'success', 'dismissable'); - } - - if (isSalesforceConnected === 'freshConnection') { - this.salesforceComplete = true; - this.showToast('Salesforce to Stripe authorization successfully completed', 'success', 'dismissable'); - } + const results = await this._validateConnectionStatus(systemToCheck); + DebugLog('_checkConnectionStatus', '_checkConnectionStatus results', results); + this.stripeStatus = results.stripe; + this.salesforceStatus = results.salesforce; - if (isStripeConnected === 'stripeDisconnected') { - this.stripeComplete = false; - } else if (isStripeConnected === 'stripeConnected') { - this.stripeComplete = true; - } + if (this.stripeStatus === 'failed' && this.salesforceStatus === 'failed') { + this.isSalesforceConnected = false; + this.isStripeConnected = false; + DebugLog('_checkConnectionStatus', 'both statuses failed'); + this._showToast('There was a problem checking connection status. Please refresh the page and try again.', 'error', 'sticky'); + this.loading = false; + return failedCheckResponse(); + } - if (isSalesforceConnected === 'salesforceDisconnected') { - this.salesforceComplete = false; - } else if (isSalesforceConnected === 'salesforceConnected') { - this.salesforceComplete = true; - } + const oldStripeState = this.isStripeConnected; + const oldSalesforceState = this.isSalesforceConnected; - if (this.salesforceComplete === true && this.stripeComplete === true) { - this.dispatchEvent(new CustomEvent('getmappingconfigurations')); - } + this._checkConnectionResult(this.stripeStatus, TextStrings.stripe, TextStrings.salesforce, (v) => this.isStripeConnected = v); + this._checkConnectionResult(this.salesforceStatus, TextStrings.salesforce, TextStrings.stripe, (v) => this.isSalesforceConnected = v); + + const hasChanged = oldStripeState !== this.isStripeConnected || oldSalesforceState !== this.isSalesforceConnected; - if (isStripeConnected === 'failed' && isSalesforceConnected === 'failed') { - this.salesforceComplete = false; - this.stripeComplete = false; - this.showToast('There was a problem checking connection status. Please refresh the page and try again.', 'error', 'sticky'); - } - } else { - this.showToast(responseData.error, 'error', 'sticky'); + const details = { + stripeStatus: this.stripeStatus, + salesforceStatus: this.salesforceStatus, + hasChanged, + isComplete: this.isComplete, } + this.dispatchEvent(new CustomEvent('systemsconnected', { detail: details })); + this.loading = false; + return details; } catch (error) { let errorMessage = getErrorMessage(error); - this.showToast(errorMessage, 'error', 'sticky'); + this._showToast(errorMessage, 'error', 'sticky'); + } + + this.loading = false; + return failedCheckResponse(); + } + + async _postMessageListener(event) { + if (!this._listening) { + return; + } + this._listening = false; + DebugLog('Got event: ' + event); + if (event.origin !== platformUri) { + DebugLog('_postMessageListener', "bad post message origin"); + return; + } + + this._connectWindow.close(); + + const [ result, identifier, state ] = event.data.split('-'); + DebugLog('_postMessageListener', 'got response', { result, identifier, state }); + const [ system, id ] = identifier.split('_'); + if (system === 'stripe') { + this.hideConnectToStripeModal(); + } + + if (result === 'connection_successful') { + return validateSharedState({ service: identifier, state: state }) + .then((response) => { + DebugLog('_postMessageListener', 'connectionSetupComplete', response); + return this._checkConnectionStatus(system); + }) + .catch((error) => { + DebugLog('_postMessageListener', 'Caught error', error); + this._showToast('There was a problem checking connection status. Please refresh the page and try again.', 'error', 'sticky'); + }); + } else { + DebugLog('_postMessageListener', 'Result was not successful', result); + this._showToast('There was a problem checking connection status. Please refresh the page and try again.', 'error', 'sticky'); } } - showToast(message, variant, mode) { + _initializeMessageListener() { + if (this._listenerInitialized) { + return; + } + + this._boundPostMessageListener = this._postMessageListener.bind(this); + + window.addEventListener("message", this._boundPostMessageListener); + this._listenerInitialized = true; + } + + _destroyMessageListener() { + if (this._listenerInitialized === false) { + return; + } + + window.removeEventListener('message', this._boundPostMessageListener); + delete this._boundPostMessageListener; + this._listenerInitialized = false; + } + + /** + * + * @param {ConnectionStatus} value + * @param {string} from + * @param {string} to + * @param {function(boolean)} setBoolValue + * @private + */ + _checkConnectionResult (value, from, to, setBoolValue) { + if (value === ConnectionStatus.fresh || value === ConnectionStatus.connected) { + setBoolValue(true); + + if (value === ConnectionStatus.fresh) { + this._showToast(`${from} to ${to} authorization successfully completed.`, 'success'); + } + } else { + setBoolValue(false); + } + } + + /** + * + * @param {string} url + * @private + */ + _openWindow(url) { + this._connectWindow = window.open(url, '"_blank"'); + } + + _showToast(message, variant, mode) { this.dispatchEvent(new CustomEvent('showtoast', { bubbles: true, composed: true, @@ -127,8 +279,4 @@ export default class SystemConnectionsStep extends LightningElement { } })); } - - get actionLabel() { - return (this.salesforceComplete && this.stripeComplete) ? 'Reauthorize' : 'Authorize'; - } } diff --git a/sfdx/force-app/main/default/lwc/systemConnectionsStepItem/systemConnectionsStepItem.css b/sfdx/force-app/main/default/lwc/systemConnectionsStepItem/systemConnectionsStepItem.css new file mode 100644 index 0000000000..b449cbf6de --- /dev/null +++ b/sfdx/force-app/main/default/lwc/systemConnectionsStepItem/systemConnectionsStepItem.css @@ -0,0 +1,6 @@ +/** + * Created by jmather-c on 8/10/23. + */ +.slds-notify { + border-radius: var(--lwc-borderRadiusMedium, 0.25rem); +} \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/systemConnectionsStepItem/systemConnectionsStepItem.html b/sfdx/force-app/main/default/lwc/systemConnectionsStepItem/systemConnectionsStepItem.html new file mode 100644 index 0000000000..33b872fa3d --- /dev/null +++ b/sfdx/force-app/main/default/lwc/systemConnectionsStepItem/systemConnectionsStepItem.html @@ -0,0 +1,23 @@ + + + + \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/systemConnectionsStepItem/systemConnectionsStepItem.js b/sfdx/force-app/main/default/lwc/systemConnectionsStepItem/systemConnectionsStepItem.js new file mode 100644 index 0000000000..945def51a6 --- /dev/null +++ b/sfdx/force-app/main/default/lwc/systemConnectionsStepItem/systemConnectionsStepItem.js @@ -0,0 +1,86 @@ +/** + * Created by jmather-c on 8/10/23. + */ + +import {LightningElement, api, track} from 'lwc'; + +/** + * @enum {string} + * @readonly + */ +const ConnectionStatus = { + failed: 'failed', + fresh: 'fresh', + connected: 'connected', + disconnected: 'disconnected', + loading: 'loading', +} + +const Strings = { + connected: 'Connected', + not_connected: 'Not Connected', + authorize: 'Authorize', + reauthorize: 'Reauthorize', + success: 'success', + offline: 'offline', +}; + +const Icons = { + true: 'utility:success', + false: 'utility:offline', +} + +const AssistiveText = { + true: 'success', + false: 'offline', +} + +const ActionLabels = { + true: 'Reauthorize', + false: 'Authorize', +} + +const NoticeClasses = { + true: 'slds-notify slds-notify_alert slds-theme_alert-texture slds-theme_success', + false: 'slds-notify slds-notify_alert slds-theme_alert-texture slds-theme_offline', +} + +export default class SystemConnectionsStepItem extends LightningElement { + @api system; + @api status; + + triggerConnect() { + let evt = new CustomEvent("connect", { + detail: { + system: this.system, + } + }); + this.dispatchEvent(evt); + } + + get _isConnected() { + return this.status === ConnectionStatus.connected || this.status === ConnectionStatus.fresh; + } + + get _status() { + const label = this._isConnected ? Strings.connected : Strings.not_connected; + return `${this.system}: ${label}`; + } + + get _icon() { + return Icons[this._isConnected]; + } + + get _noticeClasses() { + return NoticeClasses[this._isConnected]; + } + + get _assistiveText() { + return AssistiveText[this._isConnected]; + } + + get _actionLabel() { + const label = ActionLabels[this._isConnected]; + return `${label} ${this.system}`; + } +} \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/systemConnectionsStepItem/systemConnectionsStepItem.js-meta.xml b/sfdx/force-app/main/default/lwc/systemConnectionsStepItem/systemConnectionsStepItem.js-meta.xml new file mode 100644 index 0000000000..a695f12212 --- /dev/null +++ b/sfdx/force-app/main/default/lwc/systemConnectionsStepItem/systemConnectionsStepItem.js-meta.xml @@ -0,0 +1,7 @@ + + + 54.0 + System Connections Step Item + false + System Connections Step Item + diff --git a/sfdx/force-app/main/default/lwc/systemStatusUtils/eventEmitter.js b/sfdx/force-app/main/default/lwc/systemStatusUtils/eventEmitter.js new file mode 100644 index 0000000000..f06e4506be --- /dev/null +++ b/sfdx/force-app/main/default/lwc/systemStatusUtils/eventEmitter.js @@ -0,0 +1,72 @@ +/** + * Created by jmather-c on 8/31/23. + */ + +function initializeEvents(events) { + const eventContainer = {}; + for (const event_name in events) { + eventContainer[event_name] = []; + } + return eventContainer; +} + +export class EventEmitter { + _events = {}; + + /** + * + * @param {string} origin + */ + constructor(events) { + this._events = initializeEvents(events); + } + + /** + * + * @param {string} event_name + * @param {Function} callback + */ + on(event_name, callback) { + if (!this._events[event_name]) { + throw new Error(`Event ${event_name} is not supported`); + } + this._events[event_name].push(callback); + } + + /** + * + * @param {string} event_name + * @param {Function} callback + */ + off(event_name, callback) { + if (!this._events[event_name]) { + throw new Error(`Event ${event_name} is not supported`); + } + this._events[event_name] = this._events[event_name].filter(cb => cb !== callback); + } + + /** + * + * @param {string} event_name + * @param {Object} detail + * @protected + * @emits {Event<{event_name}>} + */ + _fireEvent(event_name, detail) { + if (!this._events[event_name]) { + throw new Error(`Event ${event_name} is not supported`); + } + this._events[event_name].forEach(cb => cb(this._createEvent(event_name, detail))); + } + + /** + * + * @param {string} event_name + * @param {Object} detail + * @return {CustomEvent<{event_name}>} + * @protected + */ + _createEvent(event_name, detail) { + return new CustomEvent(event_name, { detail: JSON.parse(JSON.stringify(detail)) }); + } +} \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/systemStatusUtils/postMessageListener.js b/sfdx/force-app/main/default/lwc/systemStatusUtils/postMessageListener.js new file mode 100644 index 0000000000..06d6896962 --- /dev/null +++ b/sfdx/force-app/main/default/lwc/systemStatusUtils/postMessageListener.js @@ -0,0 +1,174 @@ +/** + * Created by jmather-c on 8/30/23. + */ +import validateSharedState from '@salesforce/apex/setupAssistant.validateSharedState'; +import {Debugger} from "c/debugger"; +import {EventEmitter} from "./eventEmitter"; + +const DebugLog = Debugger.withContext('PostMessageListener'); +const SERVICE_DELIMINATOR = '|'; +const STATE_DELIMINATOR = '-'; + +/** @enum {string} */ +export const ListenerEvents = { + error: 'error', + response_received: 'response_received', + state_validated: 'state_validated', + connection_successful: 'connection_successful', + complete: 'complete', +} + +class PostMessageListener extends EventEmitter { + _isInitialized = false; + _isListening = false; + + constructor() { + super(ListenerEvents); + DebugLog('New PostMessageListener instance created'); + this._initializeMessageListener(); + } + + /** + * + * @param {ListenerEvents} event_name + * @param {Function} callback + */ + on(event_name, callback) { super.on(event_name, callback); } + + /** + * + * @param {ListenerEvents} event_name + * @param {Function} callback + */ + off(event_name, callback) { super.off(event_name, callback); } + + /** + * + * @param {string} origin + */ + listenFor(origin) { + DebugLog('Listening for post messages from ' + origin); + this.updateOrigin(origin); + this._isListening = true; + } + + detach() { + DebugLog('Detaching post message listener'); + this._detachMessageListener(); + } + + /** + * + * @param {string} origin + */ + updateOrigin(origin) { + DebugLog('Updating origin to ' + origin); + this._origin = origin; + } + + /** + * + * @param {string} event_name + * @param {Object} detail + * @protected + * @emits {Event} + */ + _fireEvent(event_name, detail) { super._fireEvent(event_name, detail); } + + _initializeMessageListener() { + DebugLog('_initializeMessageListener', 'Initializing message listener'); + if (this._isInitialized) { + DebugLog('_initializeMessageListener', 'Already initialized'); + return; + } + + if (this._boundPostMessageListener === undefined) { + DebugLog('_initializeMessageListener', 'Binding post message listener'); + this._boundPostMessageListener = this._listener.bind(this); + } + + DebugLog('_initializeMessageListener', 'Attaching message listener'); + window.addEventListener("message", this._boundPostMessageListener); + this._isInitialized = true; + } + + _detachMessageListener() { + DebugLog('_detachMessageListener', 'Detaching message listener'); + if (this._isInitialized === false) { + DebugLog('_detachMessageListener', 'Message listener already detached'); + return; + } + + DebugLog('_detachMessageListener', 'Removing message listener'); + window.removeEventListener('message', this._boundPostMessageListener); + this._isInitialized = false; + } + + _listener(event) { + DebugLog('_listener', 'Got event: ' + event); + DebugLog('_listener', 'Got event data: ', {data: event.data, origin: event.origin}); + + if(this._isListening === false) { + DebugLog('_listener', 'Not listening'); + return; + } + + this._isListening = false; + + if (event.origin !== this._origin) { + this._fireEvent(ListenerEvents.error, new Error('bad_message_origin')); + DebugLog('_listener', `Bad post message origin. Expected ${this._origin} but got ${event.origin}`); + return; + } + + const pieces = event.data.split(STATE_DELIMINATOR); + const result = pieces.splice(0, 1)[0]; + const service = pieces.splice(0, 1)[0]; + const state = pieces.join('-'); + this._fireEvent(ListenerEvents.response_received, { + raw: event.data, + result, + service, + state, + }); + + DebugLog({result, service, state}); + + const postValidation = (validatedState) => { + DebugLog('_listener', 'postValidation', 'validatedState', validatedState); + this._fireEvent(ListenerEvents.state_validated, validatedState); + + // We assume a service looks like _ + // We do this instead of splitting on '_' in case the id contains an underscore (like stripe's acct_). + const [system, id] = service.split(SERVICE_DELIMINATOR); + const details = { + service, + system, + id, + result, + state: validatedState, + } + DebugLog('_listener', 'postValidation', 'details', details); + + if (result === 'connection_successful') { + DebugLog('_listener', 'postValidation', 'firing connection_successful'); + this._fireEvent(ListenerEvents.connection_successful, details); + } else { + DebugLog('_listener', 'postValidation', 'firing error'); + this._fireEvent(ListenerEvents.error, details); + } + + DebugLog('_listener', 'postValidation', 'firing complete'); + this._fireEvent(ListenerEvents.complete, details); + }; + + return validateSharedState({ service: service, state }) + .then(postValidation) + .catch((error) => { + DebugLog('_listener', 'validateSharedState', 'error', error); + this._fireEvent(ListenerEvents.error, error); + }); + } +} + +export const MessageListener = new PostMessageListener(); \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/systemStatusUtils/systemStatusUtils.js b/sfdx/force-app/main/default/lwc/systemStatusUtils/systemStatusUtils.js new file mode 100644 index 0000000000..fca9776212 --- /dev/null +++ b/sfdx/force-app/main/default/lwc/systemStatusUtils/systemStatusUtils.js @@ -0,0 +1,95 @@ +/** + * Created by jmather-c on 8/30/23. + */ + +import { MessageListener, ListenerEvents } from "./postMessageListener"; +import {EventEmitter} from "./eventEmitter"; + +class SystemStatusUtils { + +} + +/** + * @enum {string} + * @readonly + */ +const ConnectionStatus = { + failed: 'failed', + fresh: 'fresh', + connected: 'connected', + disconnected: 'disconnected', + loading: 'loading' +} + +/** + * @enum {string} + * @readonly + */ +const ServiceManagerServices = { + salesforce: 'salesforce', + stripe: 'stripe', +} + + +/** @typedef {Object} SystemConnectionStatusConfig + * @property {boolean} is_sandbox + * @property {string} salesforce_namespace + * @property {string} salesforce_sandbox_uri_fragment + * @property {string} salesforce_production_uri_fragment + * @property {string} stripe_test_uri_fragment + * @property {string} stripe_live_uri_fragment + * @property {string} platform_uri + * @property {string} state + */ + +/** @typedef {Object} SystemConnectionStatusesPayload + * @property {{services: {string: ConnectionStatus}}} results + * @property {boolean} isSuccess + * @property {string} error + */ + +/** @typedef {Object} IntegrationUserAuthorizationUriResults + * @property {string} authorization_uri + * @property {string} message_origin_uri + */ + +/** @typedef {Object} IntegrationUserAuthorizationUriPayload + * @property {IntegrationUserAuthorizationUriResults} results + * @property {boolean} isSuccess + * @property {string} error + */ + +/** @typedef {Object} SystemStatus + * @property {ConnectionStatus} status + * @property {string} service + */ + +/** @typedef {Object} SystemStatusPayload + * @property {SystemStatus} results + * @property {boolean} isSuccess + * @property {string} error + */ + + +const TextStrings = { + salesforce: 'Salesforce', + stripe: 'Stripe', + connected: 'Connected', + not_connected: 'Not Connected', + authorize: 'Authorize', + reauthorize: 'Reauthorize', + success: 'success', + offline: 'offline', + icon_success: 'utility:success', + icon_offline: 'utility:offline', +} + +export { + SystemStatusUtils, + ConnectionStatus, + TextStrings, + MessageListener, + ListenerEvents, + EventEmitter, + ServiceManagerServices, +} \ No newline at end of file diff --git a/sfdx/force-app/main/default/lwc/systemStatusUtils/systemStatusUtils.js-meta.xml b/sfdx/force-app/main/default/lwc/systemStatusUtils/systemStatusUtils.js-meta.xml new file mode 100644 index 0000000000..13a8ba1198 --- /dev/null +++ b/sfdx/force-app/main/default/lwc/systemStatusUtils/systemStatusUtils.js-meta.xml @@ -0,0 +1,7 @@ + + + 54.0 + System Status Utils + false + System Status Utils + diff --git a/sfdx/force-app/main/default/lwc/toast/toast.js b/sfdx/force-app/main/default/lwc/toast/toast.js index 91d47909db..ac54ab2257 100644 --- a/sfdx/force-app/main/default/lwc/toast/toast.js +++ b/sfdx/force-app/main/default/lwc/toast/toast.js @@ -1,4 +1,6 @@ import { LightningElement, api, track } from 'lwc'; +import { Debugger } from "c/debugger"; +const DebugLog = Debugger.withContext('Toast'); export default class Toast extends LightningElement { @track timeout; @@ -8,6 +10,7 @@ export default class Toast extends LightningElement { @track showCloseButton = false; @api show(message, variant, mode) { + DebugLog('show called', { message, variant, mode }); this.message = message; this.variant = variant; this.mode = mode; diff --git a/sfdx/force-app/main/default/lwc/utils/utils.js b/sfdx/force-app/main/default/lwc/utils/utils.js index 19eb5ef7bf..d08a24dab0 100644 --- a/sfdx/force-app/main/default/lwc/utils/utils.js +++ b/sfdx/force-app/main/default/lwc/utils/utils.js @@ -5,7 +5,27 @@ function getErrorMessage(error) { return JSON.stringify(error); } +function openWindow(url) { + return window.open(url, '"_blank"'); +} + +function createToast(message, variant, mode) { + return new CustomEvent('showtoast', { + bubbles: true, + composed: true, + detail: { + toast: { + message: message, + variant: variant ? variant : 'info', + mode: mode ? mode : 'dismissible' + } + } + }); +} + export { - getErrorMessage + getErrorMessage, + createToast, + openWindow, } \ No newline at end of file diff --git a/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Enable_Apex_Debug__c.field-meta.xml b/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Enable_Apex_Debug__c.field-meta.xml new file mode 100644 index 0000000000..e8c81e23e8 --- /dev/null +++ b/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Enable_Apex_Debug__c.field-meta.xml @@ -0,0 +1,12 @@ + + + Enable_Apex_Debug__c + false + Developer config to turn on apex debug logging. This should only ever be false in production. + Developer config to turn on apex debug logging. This should only ever be false in production. + false + + false + Checkbox + DeveloperControlled + diff --git a/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Enable_JS_Debug__c.field-meta.xml b/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Enable_JS_Debug__c.field-meta.xml new file mode 100644 index 0000000000..ce0ca715f0 --- /dev/null +++ b/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Enable_JS_Debug__c.field-meta.xml @@ -0,0 +1,12 @@ + + + Enable_JS_Debug__c + false + false + Enables the JavaScript debugger output. Should only ever be disabled in production. + Enables the JavaScript debugger output. Should only ever be disabled in production. + + false + Checkbox + DeveloperControlled + diff --git a/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Global_Key__c.field-meta.xml b/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Global_Key__c.field-meta.xml index 961f1af308..a80d52c7f7 100644 --- a/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Global_Key__c.field-meta.xml +++ b/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Global_Key__c.field-meta.xml @@ -4,9 +4,9 @@ The key required to register a connection with the Stripe Billing Connector platform. The key required to register a connection with the Stripe Billing Connector platform. false - DeveloperControlled 131072 LongTextArea 3 + DeveloperControlled diff --git a/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Local_Authorization_Target__c.field-meta.xml b/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Local_Authorization_Target__c.field-meta.xml new file mode 100644 index 0000000000..3784b4c2d0 --- /dev/null +++ b/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Local_Authorization_Target__c.field-meta.xml @@ -0,0 +1,11 @@ + + + Local_Authorization_Target__c + false + Redirect browser authentication to http://localhost:3100 + false + Redirect browser authentication to http://localhost:3100 + + Checkbox + DeveloperControlled + diff --git a/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/OAuth_AutoClose_Window__c.field-meta.xml b/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/OAuth_AutoClose_Window__c.field-meta.xml new file mode 100644 index 0000000000..a1df04471d --- /dev/null +++ b/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/OAuth_AutoClose_Window__c.field-meta.xml @@ -0,0 +1,12 @@ + + + OAuth_AutoClose_Window__c + true + false + Disabling this will leave the auth window open for debugging. Should only ever be enabled in production. + Disabling this will leave the auth window open for debugging. Should only ever be enabled in production. + + false + Checkbox + DeveloperControlled + diff --git a/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/OAuth_State_Signing_Key__c.field-meta.xml b/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/OAuth_State_Signing_Key__c.field-meta.xml new file mode 100644 index 0000000000..b2ae0b5c14 --- /dev/null +++ b/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/OAuth_State_Signing_Key__c.field-meta.xml @@ -0,0 +1,12 @@ + + + OAuth_State_Signing_Key__c + "98ae2216688a8b879c25f17ed793bfa7bb11201ddda97ad01b2d282a06aa191a" + Generate with: System.debug(EncodingUtil.convertToHex(Crypto.generateAesKey(256))); + This is the Shared Key to use for signing the state JWT passed to platform. + false + + 64 + Text + DeveloperControlled + diff --git a/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Platform_Target__c.field-meta.xml b/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Platform_Target__c.field-meta.xml new file mode 100644 index 0000000000..c8170c4792 --- /dev/null +++ b/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Platform_Target__c.field-meta.xml @@ -0,0 +1,17 @@ + + + Platform_Target__c + "https://salesforce.suitesync.io" + This is where Salesforce will call to get information from the platform. +Production value: https://salesforce.suitesync.io +Dev value will be dynamically given from whatever tool you are using to expose your server. + false + This is where Salesforce will call to get information from the platform. +Production value: https://salesforce.suitesync.io + + 255 + false + Text + false + DeveloperControlled + diff --git a/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Use_Local_OpenAPI_Spec__c.field-meta.xml b/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Use_Local_OpenAPI_Spec__c.field-meta.xml deleted file mode 100644 index a1b7ab5c4f..0000000000 --- a/sfdx/force-app/main/default/objects/Setup_Connection_Data__mdt/fields/Use_Local_OpenAPI_Spec__c.field-meta.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - Use_Local_OpenAPI_Spec__c - false - Developer config to target using an openapi.json from Salesforce assets. This should only ever be false in production. - Developer config to target using an openapi.json from Salesforce assets. This should only ever be false in production. - false - DeveloperControlled - - Checkbox - diff --git a/sfdx/force-app/main/default/objects/Stripe_Connection__c/fields/Primary_Stripe_Account_Id__c.field-meta.xml b/sfdx/force-app/main/default/objects/Stripe_Connection__c/fields/Primary_Stripe_Account_Id__c.field-meta.xml new file mode 100644 index 0000000000..ea46ec0205 --- /dev/null +++ b/sfdx/force-app/main/default/objects/Stripe_Connection__c/fields/Primary_Stripe_Account_Id__c.field-meta.xml @@ -0,0 +1,12 @@ + + + Primary_Stripe_Account_Id__c + false + + The first Stripe Account connected to the app. + This is the first Stripe Account connected to the app. + false + false + Text + 50 + diff --git a/sfdx/force-app/main/default/staticresources/stripe_setupIllustrations.resource-meta.xml b/sfdx/force-app/main/default/staticresources/illustrations.resource-meta.xml similarity index 100% rename from sfdx/force-app/main/default/staticresources/stripe_setupIllustrations.resource-meta.xml rename to sfdx/force-app/main/default/staticresources/illustrations.resource-meta.xml diff --git a/sfdx/force-app/main/default/staticresources/illustrations/stripe_illustration_dataMapping.svg b/sfdx/force-app/main/default/staticresources/illustrations/stripe_illustration_dataMapping.svg new file mode 100644 index 0000000000..2d84265ae8 --- /dev/null +++ b/sfdx/force-app/main/default/staticresources/illustrations/stripe_illustration_dataMapping.svg @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sfdx/force-app/main/default/staticresources/illustrations/stripe_illustration_syncPreferences.svg b/sfdx/force-app/main/default/staticresources/illustrations/stripe_illustration_syncPreferences.svg new file mode 100644 index 0000000000..d26ce45c58 --- /dev/null +++ b/sfdx/force-app/main/default/staticresources/illustrations/stripe_illustration_syncPreferences.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sfdx/force-app/main/default/staticresources/illustrations/stripe_illustration_systemConnections.svg b/sfdx/force-app/main/default/staticresources/illustrations/stripe_illustration_systemConnections.svg new file mode 100644 index 0000000000..44fd0207e0 --- /dev/null +++ b/sfdx/force-app/main/default/staticresources/illustrations/stripe_illustration_systemConnections.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sfdx/force-app/main/default/staticresources/illustrations/stripe_setup_authorizeWebhooks.svg b/sfdx/force-app/main/default/staticresources/illustrations/stripe_setup_authorizeWebhooks.svg new file mode 100644 index 0000000000..f9be44a036 --- /dev/null +++ b/sfdx/force-app/main/default/staticresources/illustrations/stripe_setup_authorizeWebhooks.svg @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sfdx/force-app/main/default/staticresources/stripe_setupIllustrations.zip b/sfdx/force-app/main/default/staticresources/stripe_setupIllustrations.zip deleted file mode 100644 index 0c28f2d40c76e4a100845c13ae657a3fd84d577e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5079 zcmb`LWmFXGw#SE(5RgGqLIiXGX+#>7?(P`6lx7&|R1g?JLXcFt2ZkINLRzGUW+>@K zy79`r_g&|`_n!0Rtoz^VS!+LEp1s!d;s4uvYpUSjQUD141kl@57x3Sbp#T6_089W+ zh=-$_t+}Icr65{CUVs2vzu~f5kb8~dD=k|o!>*Nz#^t^eS-{#;P?W)o#CStb|)5x1d30f&OAOD>B zMd7N+nac2Jw-RM*(7PHYG~=6P1TiIKF)2qvwe|WM*`R~g)e?!)ADb8|7Uf^*7pPc% zA1J;IHR#+axF^u=x540|dwFREraUajY@eE%LRJ0#$rRT6a*TGO$t6P=BTl)## zVxFv#4?MsEEep?nm4`4TNMwNP>jcMJ2RKqtKk9ysyEw#VykWfYtd1F5jFC;;+a1># z%#~Ns_DNR~e?|Nrc{{&)X-?h(Z-#yq!T1P=;h0t9{)~w)6|sKS0&gZ<)GZmFik~PX z$Ii|Xx!$OhYtwNdeXua|@w!N~BtCsU@mT^bE0?KX51DFwX}1SQ5s}e>XbWrB>6iWD zGX^E&Duc&mQzh}tVlk5^@kvfFR+2f=czM;Tuv{cV5q5DdS!+12gK@lpV8*J;P&JkD z7zHI~4#Tq=Lue`cm7$f6U`^EJSB2E1wrxSZLZFC)@rcx?g7N9F)VT^l=!OC7PUZP2 z(r-V#;*3+~tP~c>lZN;e1?A$QMMshJ)hZh@5}GWNh*gt6!jMc5s)UH2BK6RH+mcI( zFWMf(#(s?KdK$Nrb!HHM36tx3aB)Jj#8Mc$JIU!eYh+^5)Q3vXger{L2>tAKgP=U*Y9|tEA{*)tLiOi{zsriFs|QhE<;K2>zZ6 zwXGoU>}AyYz~IRJ8f0tB@d(i>;Jv?)ObV456`-6O`|Jl3NEKdC?EYhdiH8Y~!Y@ z#4~-B*m-QoW*q71ypiwPp}U9;+H~$o;za0%?l4CRO9nX}5&gor8O3{i4I^3%HX?Kw zf=glUK(J5WYH##(A(!ttxKH}`Ip2JD8G1bvbo@jf=DkU)A+h3UC*Ge}ka943KT{j1 zHFl!(C_9rxge5zQMC5Vyt`*gV>p`_ZCbVm$-@AcbLuzTGK>RwfAnl-9C)2KLq|ZB* zR^yT;^O3p_8ZNvVX%^Hbu*s(}P0=krk}v#=_3%AtjsPT%Sc>&Q)6IVd!S81x)xB4T zf(GtiMpzg21l#BL1HeNh!y>sja5f8Ij`jK}_JdOF`H|;50V*gd-?~7G#ZuCBduU@@ z3O#RqCs%|EIc*4KdAY-pTe@gOfkpwg8}T*MD^T?>p0}}YEn^|29l^3VehlI@T3Bi1 zmOD&;LbVCl#ZBlD zHV>L_p6zniU8?)fIiIHWE)^c8J)s0OMTTfmDp17c%u!1CwG#X0KlO;)qlOtef=&2{ z#8NE`Gc+WeQVp)CXR=S#mWpSQ9$be{;Wtm=TNCGk%|=%;c!cg$pU$&FKR(xpehr+J z>&nX2sg>ZaACN|Z-*YB%NgI)CYprQW6Dc4>ZT;gN`aa}~tk}<(4t|*XS&i=KH{xO! zf7@y|EXf4-H=HTyKPF6ex;*sushQmttChRM$Q>CTkkET)cma7GWA1>FBOtHSYvy8A zAJ_xv{+za$RNKFBZ`n~N*r*n{@qAN1cUAM-dwK}fStK^YcX9eEV3Hx`NO0|{FYP0? zYFGR5vE#_k_b#hTzg82wx$-Fj+cqLpZPcmu;`9quOP2XYn4=@}hmT`IUss)#v_4AVD zQ=Zyr8RX9AnXX^XrP=?+(p14Ga5QMBZ@L2j+%i$~pVG2|7ytnM3tD>mxL9j?*xK28 z*t%HTdj1b$O8udwidM=cm`b=N=9*oH{SOdOIIMl2GOr~ccO+k~}&9No3`5CqS_-lIQFS_RM zn9P~mUR`Q`aGQiqbB|sl8=y)ki!x?9K|FIY;uLH*^jUfO#2FWQTT!H-ESi}_R6E^m zlpR(0KHH8+5MPbkQo=_ylw2f@xQ`da_PQDb#q%6U2zDM{fDnBvA~mwl*R2@L%^qfd zvTmP4(j1Y?0xGpfKbq_j*m8}9ga61B3Lh9F4!LGyj4gSH8jCm$?Pth?bn~%DuI*b` z3yPHpw_4D>mhV$SY|VsBQJr`G!%s)(AQyZ%{U+0tD@ZgEYK%cp+(E?kRY=kqodD$y4tRmG$IOf_@=g`?h$H~E%}-z zB_!v$m0FR2iGWdtn)cMzH>(&zVS~63AGgmQqmrZ*@(0yn?h1URvYdz%S&_~{OUG>w zMc|lil||AwO^BNa5mYkUC^wmn7@7aAqBV1Qj#*Q`GdE16y>N~#Qrt>b+4OPj2p9Vv z8M|ye_R(E=8&9@P=NO{0q-aFQSCFEo9PSB$mb^o!@3(aaLW4RTzK3P9r8$MiN*hOZhyFPMMGAiTcPN3&m$n7<81risN_ zS?n-#xEZqdg)}{%J%jk|+%4w&dS_^?0FhvUL=?#<=ExXX3j_|3CHcS0obbKs({&#j z#oe=v>U#&{Z3yj6m*vjk(Py0CAO8{fJOMnoBd8>A;YIsW>MH;ShspWWxuIQU%arJH zvtjQPtao`SB@)2%81Va=6w|EMw;vUGUT9^FEo%`m<)znuCvl*qDETn-b*Mt){)XJB zde#QhG8SWP1ykDhc;qFCD} zF=-B7-`4mb`ro5hbpan7?l`i0uR2LEX#$bBNB8u*vDVXJXt{O~Q!$(yA|Xx51yW1y z4okysh^|(?-06p9x>CKnwo$h66qBGE9R=s1u*Ru2J^e|F3|ny}{x~-nlbZ%ZEqC%3 z7Y)ajOsb*`Xv$f$${m~W4uhi4NBKLikGPVxDWufv2%+I7XYZo6J-7daTQSbq(}4Jaw>ha@e_R-N37Z zJd*?Dl?sO*z3&A&QRhv6DZ@=7lX8L7W1{uV#R|jP{)C8t6!@|;PrAIB7c4x-W-dAE zif{jXR_c}xb^4J8MR)+fEd%~Rhp@lRQmaG&0Q%GfAd^j&D z)1r{4Z)Wfi-s_Jz_xT+FC+)>R`QXBx%3P@{{=-CWpDvo6NU75z+-(!JcuNkBUFwZL zlpNd5>TdqTylQ%A5M4WaBm97Y6hENCw<;}ml13o(aI-gJu>V!f%r2c^7|5gaLzZ$s zBi=`K5xrL+s{39rEI?A9)q-*jYQs0EZYqGz0Hr48oTf2QG8efy_?x%mXrF&+t?|K6 z^iH)|A;$gqZk%3+{Bv+z`*hkaIsk>anpzmO;jjOke(&LcugG`$meQmxyXUjY1gBdV z>fH>H`qV;YPfbomeb2~M`Beafx@ZWD$C*&ql8K@-CDX; z%yeaCX_JaRq9!%A!p_gtiQ!waEM=FaBwF{q{K3Li|C6WC?j(+USHSkXj_}8(jY( zNt0G8pfzeNCiKV4HBMkKQ$gu>nyjy~fR7K{`l&o<-&C5Ag$K1#w9+Wk5`tb^fPa{pEYy`5* z{AvVHoxY2}ejTNSU#sw1aj2UkeSa0#8vPRO-Jz*;pa`Tk(QbYDxKMF&9ZyEDP`?oa zn|b_}iGeaK206oGki7{E=Y$9Y1EWA-H4?P=7`>2v_Q^zRdXUmwzjf4Kkm2TH^+HF<`|ae(r%pr@sO6Po%uCM zqg*_tFdh3XMy0GA&HIi-9un1q!z#*Vxxx!y@;q5Y>AX~WhTR|9eOr)D%Gi6|wJohQ zamM;7EnYR$risF1Likshngb_vI=+O@Aaq|5=m*2?qty*BAT>#TtiVpgaVgW#_DNe) zl@ae@d2UY=Do%Vh|-He5`w11k(yD~?k&j!Ym&r$Vg1jx%BdheKdPDoqPwcuB6J!Yw8;AF(b z7v(fwW-J|6cRx0n@IwhX>4RP1Yg+Hj{cP`rIWoi+@Wo~lHs|5o-o$ZbXU=Ni{C42H zx_y87R{5p;&B89GU%#ikYRax=swZs81H1Wght<*pymqOqA^8CR0b&<#*i(}>J z7`mMtkQ1{y#Ztj(a6p}(s|9>erM3v-U75z78ps9lQXE*@>aQ=iD764#FetY{5Dh^On diff --git a/sfdx/jest.config.js b/sfdx/jest.config.js new file mode 100644 index 0000000000..4d78e4bed3 --- /dev/null +++ b/sfdx/jest.config.js @@ -0,0 +1,6 @@ +const { jestConfig } = require('@salesforce/sfdx-lwc-jest/config'); + +module.exports = { + ...jestConfig, + modulePathIgnorePatterns: ['/.localdevserver'] +}; \ No newline at end of file diff --git a/sfdx/package-lock.json b/sfdx/package-lock.json new file mode 100644 index 0000000000..a783266ef6 --- /dev/null +++ b/sfdx/package-lock.json @@ -0,0 +1,17962 @@ +{ + "name": "salesforce-app", + "version": "1.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "salesforce-app", + "version": "1.0.0", + "hasInstallScript": true, + "devDependencies": { + "@lwc/eslint-plugin-lwc": "^1.1.2", + "@prettier/plugin-xml": "^2.0.1", + "@salesforce/eslint-config-lwc": "^3.2.3", + "@salesforce/eslint-plugin-aura": "^2.0.0", + "@salesforce/eslint-plugin-lightning": "^1.0.0", + "@salesforce/sfdx-lwc-jest": "^1.1.0", + "eslint": "^8.11.0", + "eslint-plugin-import": "^2.25.4", + "eslint-plugin-jest": "^26.1.2", + "husky": "^8.0.3", + "lint-staged": "^12.3.7", + "prettier": "^2.6.0", + "prettier-plugin-apex": "^1.10.0" + } + }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", + "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.22.13", + "chalk": "^2.4.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", + "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.15.tgz", + "integrity": "sha512-PtZqMmgRrvj8ruoEOIwVA3yoF91O+Hgw9o7DAUTNBA6Mo2jpu31clx9a7Nz/9JznqetTR6zwfC4L3LAjKQXUwA==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.22.15", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-module-transforms": "^7.22.15", + "@babel/helpers": "^7.22.15", + "@babel/parser": "^7.22.15", + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.22.15", + "@babel/types": "^7.22.15", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/eslint-parser": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.22.15.tgz", + "integrity": "sha512-yc8OOBIQk1EcRrpizuARSQS0TWAcOMpEJ1aafhNznaeYkeL+OhqnDObGFylB8ka8VFF/sZc+S4RzHyO+3LjQxg==", + "dev": true, + "dependencies": { + "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", + "eslint-visitor-keys": "^2.1.0", + "semver": "^6.3.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || >=14.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.11.0", + "eslint": "^7.5.0 || ^8.0.0" + } + }, + "node_modules/@babel/generator": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.15.tgz", + "integrity": "sha512-Zu9oWARBqeVOW0dZOjXc3JObrzuqothQ3y/n1kUtrjCoCPLkXUwMvOo/F/TCfoHMbWIFlWwpZtkZVb9ga4U2pA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.15", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", + "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-validator-option": "^7.22.15", + "browserslist": "^4.21.9", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz", + "integrity": "sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.15", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", + "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", + "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", + "dev": true, + "dependencies": { + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.15.tgz", + "integrity": "sha512-qLNsZbgrNh0fDQBCPocSL8guki1hcPvltGDv/NxvUoABwFq7GkKSu1nRXeJkVZc+wJvne2E0RKQz+2SQrz6eAA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.15.tgz", + "integrity": "sha512-l1UiX4UyHSFsYt17iQ3Se5pQQZZHa22zyIXURmvkmLCD4t/aU+dvNWHatKac/D9Vm9UES7nvIqHs4jZqKviUmQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", + "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz", + "integrity": "sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", + "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.15.tgz", + "integrity": "sha512-4E/F9IIEi8WR94324mbDUMo074YTheJmd7eZF5vITTeYchqAi6sYXRLHUVsmkdmY4QjfKTcB2jB7dVP3NaBElQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", + "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.15.tgz", + "integrity": "sha512-7pAjK0aSdxOwR+CcYAqgWOGy5dcfvzsTIfFTb2odQqW47MDfv14UaJDY6eng8ylM2EaeKXdxaSWESbkmaQHTmw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.22.15", + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.13.tgz", + "integrity": "sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.5", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.15.tgz", + "integrity": "sha512-RWmQ/sklUN9BvGGpCDgSubhHWfAx24XDTDObup4ffvxaYsptOg2P3KG0j+1eWKLxpkX0j0uHxmpq2Z1SP/VhxA==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-dynamic-import": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", + "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-dynamic-import instead.", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", + "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead.", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-decorators": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.22.10.tgz", + "integrity": "sha512-z1KTVemBjnz+kSEilAsI4lbkPOl5TvJH7YDSY1CTIzvLWJ+KHXp+mRe8VPmfnyvqOPqar1V2gid2PleKzRUstQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz", + "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz", + "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.15.tgz", + "integrity": "sha512-jWL4eh90w0HQOTKP2MoXXUpVxilxsB2Vl4ji69rSjS3EcZ/v4sBmn+A3NpepuJzBhOaEBbR7udonlHHn5DWidg==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.15.tgz", + "integrity": "sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.15.tgz", + "integrity": "sha512-1uirS0TnijxvQLnlv5wQBwOX3E1wCFX7ITv+9pBV2wKEk4K+M5tqDaoNXnTH8tjEIYHLO98MwiTWO04Ggz4XuA==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-typescript": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-typescript": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.15.tgz", + "integrity": "sha512-HblhNmh6yM+cU4VwbBRpxFhxsTdfS1zsvH9W+gEjD0ARV9+8B4sNfpI6GuhePti84nuvhiwKS539jKPFHskA9A==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", + "@babel/plugin-syntax-jsx": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.15", + "@babel/plugin-transform-typescript": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.15.tgz", + "integrity": "sha512-DdHPwvJY0sEeN4xJU5uRLmZjgMMDIvMPniLuYzUVXj/GGzysPl0/fwt44JBkyUIzGJPV8QgHMcQdQ34XFuKTYQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.22.15", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.15.tgz", + "integrity": "sha512-X+NLXr0N8XXmN5ZsaQdm9U2SSC3UbIYq/doL++sueHOTisgZHoKaQtZxGuV2cUPQHMfjKEfg/g6oy7Hm6SKFtA==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.15", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.8.0.tgz", + "integrity": "sha512-JylOEEzDiOryeUnFbQz+oViCXS0KsvR1mvHkoMiu5+UiBvy+RYX7tzlIIIEstF/gVa2tj9AQXk3dgnxv6KxhFg==", + "dev": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/eslintrc/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@eslint/eslintrc/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "8.48.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.48.0.tgz", + "integrity": "sha512-ZSjtmelB7IJfWD2Fvb7+Z+ChTIKWq6kjda95fLcQKNS5aheVHn4IkfgRQE3sIIzTcSLwLcLZUD9UBt+V7+h+Pw==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@hapi/hoek": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", + "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==", + "dev": true + }, + "node_modules/@hapi/topo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz", + "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", + "dev": true, + "dependencies": { + "@hapi/hoek": "^9.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.11", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", + "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", + "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/console/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/console/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/console/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/console/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@jest/console/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", + "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "dev": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/reporters": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^27.5.1", + "jest-config": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-resolve-dependencies": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "jest-watcher": "^27.5.1", + "micromatch": "^4.0.4", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/core/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/core/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@jest/core/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", + "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "dev": true, + "dependencies": { + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", + "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@sinonjs/fake-timers": "^8.0.1", + "@types/node": "*", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", + "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/types": "^27.5.1", + "expect": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", + "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "dev": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-haste-map": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^8.1.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/reporters/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/reporters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/reporters/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@jest/reporters/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dev": true, + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", + "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9", + "source-map": "^0.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", + "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", + "dev": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", + "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", + "dev": true, + "dependencies": { + "@jest/test-result": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-runtime": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/transform/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/transform/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/transform/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/transform/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@jest/transform/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/types/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/types/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@jest/types/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", + "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@lwc/babel-plugin-component": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/babel-plugin-component/-/babel-plugin-component-2.42.0.tgz", + "integrity": "sha512-JqMM7vxKCUypgxnjxizfSFmm1hPRw8blFIyY1sxiBSrwXhZXTHxtstLRCZkATRsG4dAjj4wQ7SrNRhd7oQXD9Q==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "~7.18.6", + "@lwc/errors": "2.42.0", + "@lwc/shared": "2.42.0", + "line-column": "~1.0.2" + }, + "peerDependencies": { + "@babel/core": "^7" + } + }, + "node_modules/@lwc/babel-plugin-component/node_modules/@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@lwc/compiler": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/compiler/-/compiler-2.42.0.tgz", + "integrity": "sha512-0NJFUAFVp4I/TI4GHvSwS86tyv7GuduxHLVsZ0Q42rAdvJmbMBvD8jIlCflhHLgzT0ePSD6pkoq9aKjks03RnQ==", + "dev": true, + "dependencies": { + "@babel/core": "~7.21.0", + "@babel/plugin-proposal-class-properties": "~7.18.6", + "@babel/plugin-proposal-object-rest-spread": "~7.20.2", + "@lwc/babel-plugin-component": "2.42.0", + "@lwc/errors": "2.42.0", + "@lwc/shared": "2.42.0", + "@lwc/style-compiler": "2.42.0", + "@lwc/template-compiler": "2.42.0" + } + }, + "node_modules/@lwc/compiler/node_modules/@babel/core": { + "version": "7.21.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.8.tgz", + "integrity": "sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.21.4", + "@babel/generator": "^7.21.5", + "@babel/helper-compilation-targets": "^7.21.5", + "@babel/helper-module-transforms": "^7.21.5", + "@babel/helpers": "^7.21.5", + "@babel/parser": "^7.21.8", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@lwc/engine-dom": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/engine-dom/-/engine-dom-2.42.0.tgz", + "integrity": "sha512-yLo+C8MsLfDPrpAiHN8ktdVi2we2z1fryfXNYu9TMIaXwro/Bdw8PMzpIz5Q0E19KruGaAmixAzaLxymhwj2gQ==", + "dev": true + }, + "node_modules/@lwc/engine-server": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@lwc/engine-server/-/engine-server-3.2.0.tgz", + "integrity": "sha512-ICu1TqfgB7n9YwiMdLfu6V1DWL+szyBzlDSTY/AGcRGcOQDmR+5Aa28PYxUc3+8OaU1voNtkcnJzXpq+if84Vw==", + "dev": true, + "peer": true + }, + "node_modules/@lwc/errors": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/errors/-/errors-2.42.0.tgz", + "integrity": "sha512-byCYjSXoV8B3s9d+rPwpQwGZ2y4u6Gh+QJkDT6ZGgcXhBCWeQLPp87rnZdhTau3Da0P7319G+ivOp57smbk/Eg==", + "dev": true + }, + "node_modules/@lwc/eslint-plugin-lwc": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@lwc/eslint-plugin-lwc/-/eslint-plugin-lwc-1.6.3.tgz", + "integrity": "sha512-CpZDkdxdbw8s+qyTib4keFN9lPlMO6UFSVtVem44xB2k+YvGGc1r4E3ihnkbutcuMqLws3gNGCEpUeRUqX28Ig==", + "dev": true, + "dependencies": { + "globals": "^13.20.0", + "minimatch": "^6.2.0" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "@babel/eslint-parser": "^7", + "eslint": "^7 || ^8" + } + }, + "node_modules/@lwc/eslint-plugin-lwc/node_modules/globals": { + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@lwc/eslint-plugin-lwc/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@lwc/jest-preset": { + "version": "11.8.0", + "resolved": "https://registry.npmjs.org/@lwc/jest-preset/-/jest-preset-11.8.0.tgz", + "integrity": "sha512-BHb246V3LGm8q1HPYKFEZIgHwgFi8X5lN2R0FZavfyt1lnGhSa4ilS/zpLAgTHhyTOUhXkR4BKTDauCGLl4brw==", + "dev": true, + "dependencies": { + "@lwc/jest-resolver": "11.8.0", + "@lwc/jest-serializer": "11.8.0", + "@lwc/jest-transformer": "11.8.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@lwc/compiler": "*", + "@lwc/engine-dom": "*", + "@lwc/engine-server": ">=2", + "@lwc/synthetic-shadow": "*", + "jest": "^26 || ^27 || ^28 || ^29" + } + }, + "node_modules/@lwc/jest-resolver": { + "version": "11.8.0", + "resolved": "https://registry.npmjs.org/@lwc/jest-resolver/-/jest-resolver-11.8.0.tgz", + "integrity": "sha512-mN5tXW1jko671GUE/yZP/xbZ1ECpnZo40dLMzFctIUF9kOmMjRMv/xdsBTtBnI59W2WKMYDs8G7pywdMFBeZvw==", + "dev": true, + "dependencies": { + "@lwc/jest-shared": "11.8.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "jest": "^26 || ^27 || ^28 || ^29" + } + }, + "node_modules/@lwc/jest-serializer": { + "version": "11.8.0", + "resolved": "https://registry.npmjs.org/@lwc/jest-serializer/-/jest-serializer-11.8.0.tgz", + "integrity": "sha512-bjIywlnvTkfEvBNKOrb/DHMvTw/V78ZSgNwry2eCHcDFI93adj6HkAx+Qq214uprnT/lZUtxosJBTcc/DkjrpA==", + "dev": true, + "dependencies": { + "pretty-format": "^29.5.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "jest": "^26 || ^27 || ^28 || ^29" + } + }, + "node_modules/@lwc/jest-shared": { + "version": "11.8.0", + "resolved": "https://registry.npmjs.org/@lwc/jest-shared/-/jest-shared-11.8.0.tgz", + "integrity": "sha512-g4xgbD5+NC75omjZ6YZZ/tJhhrBnFEj2Lx/oY/yLtKUDXRX//PiWmGGcdlUbM5X8T8Bx9VR1wFttlB2Ta26VPQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/@lwc/jest-transformer": { + "version": "11.8.0", + "resolved": "https://registry.npmjs.org/@lwc/jest-transformer/-/jest-transformer-11.8.0.tgz", + "integrity": "sha512-qEyQnw95I7NtFugoTbIRlxN7jXiKCsrEo6ZvMOtyVAAJeKjbv02j+2XCSp15e8usnH5UFNY7DKm2wTxMfr991A==", + "dev": true, + "dependencies": { + "@babel/core": "^7.21.3", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-decorators": "^7.21.0", + "@babel/plugin-transform-modules-commonjs": "^7.21.2", + "@babel/preset-typescript": "^7.21.0", + "@lwc/jest-shared": "11.8.0", + "babel-preset-jest": "^29.5.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@lwc/compiler": "*", + "jest": "^26 || ^27 || ^28 || ^29" + } + }, + "node_modules/@lwc/module-resolver": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/module-resolver/-/module-resolver-2.42.0.tgz", + "integrity": "sha512-pwtgFNm/sNIS7daRnLCNLY4CqO/B31/ZwsqQd3Hs5eaH9iSFrGnoUm4sTVFyLljVAy7CXKdakwkvcj3JKjsO+w==", + "dev": true, + "dependencies": { + "resolve": "~1.22.1" + } + }, + "node_modules/@lwc/shared": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/shared/-/shared-2.42.0.tgz", + "integrity": "sha512-YSI9VObp3fJ5yyg6vE4tDRB8dqKRT5ZYmKL03lzQh6+NMcjqv+EyW48Q2pPcv2ghsg0mJHvHBl7+hFGe5Z03OQ==", + "dev": true + }, + "node_modules/@lwc/style-compiler": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/style-compiler/-/style-compiler-2.42.0.tgz", + "integrity": "sha512-8p9YKqiNqK9XlblLgHYigRfNFsohmKYl400w/t5uewaMlLx/DoPlxcUmeEhGtibqkGEK7uqnuvLZDsO99Tuylw==", + "dev": true, + "dependencies": { + "@lwc/shared": "2.42.0", + "postcss": "~8.4.20", + "postcss-selector-parser": "~6.0.11", + "postcss-value-parser": "~4.2.0", + "string.prototype.matchall": "^4.0.8" + } + }, + "node_modules/@lwc/synthetic-shadow": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/synthetic-shadow/-/synthetic-shadow-2.42.0.tgz", + "integrity": "sha512-UgtQqoyoIH8qi2Tv05PuX3FGRjeASyBb8Ylqmn4qed7nCOeek5uUbWh2sX2Ck/lK73qVqk4jiH8xsK9MIrQvoQ==", + "dev": true + }, + "node_modules/@lwc/template-compiler": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/template-compiler/-/template-compiler-2.42.0.tgz", + "integrity": "sha512-IMmm50fJUVG4kiX8gVptT6V/amtGMIi1dbcCU7rixjoBxd/F20lhZN3yHSPiWGFmoBWri16cFd+5hu3YYPRJdw==", + "dev": true, + "dependencies": { + "@lwc/errors": "2.42.0", + "@lwc/shared": "2.42.0", + "acorn": "~8.8.2", + "astring": "~1.8.3", + "estree-walker": "~2.0.2", + "he": "~1.2.0", + "parse5": "~6.0.1" + } + }, + "node_modules/@lwc/wire-service": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/wire-service/-/wire-service-2.42.0.tgz", + "integrity": "sha512-ZUY+8tYRxSYP5Murcb9tHZYXfMas4gNGfnt50Z/FxMX2kEC8Snp6sPyUTV1k4q+zTNu0zJ+WYHVpMgB+QfUc+w==", + "dev": true + }, + "node_modules/@mdn/browser-compat-data": { + "version": "5.3.14", + "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-5.3.14.tgz", + "integrity": "sha512-Y9XQrphVcE6u9xMm+gIqN86opbU/5s2W1pdPyKRyFV5B7+2jWM2gLI5JpfhZncaoDKvhy6FYwK04aCz5UM/bTQ==", + "dev": true + }, + "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { + "version": "5.1.1-v1", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", + "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", + "dev": true, + "dependencies": { + "eslint-scope": "5.1.1" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@prettier/plugin-xml": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@prettier/plugin-xml/-/plugin-xml-2.2.0.tgz", + "integrity": "sha512-UWRmygBsyj4bVXvDiqSccwT1kmsorcwQwaIy30yVh8T+Gspx4OlC0shX1y+ZuwXZvgnafmpRYKks0bAu9urJew==", + "dev": true, + "dependencies": { + "@xml-tools/parser": "^1.0.11", + "prettier": ">=2.4.0" + } + }, + "node_modules/@salesforce/eslint-config-lwc": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@salesforce/eslint-config-lwc/-/eslint-config-lwc-3.5.2.tgz", + "integrity": "sha512-TqD5pF/OwjNNrms5nn9f6bf630T7WzXuH0RYF1ybsFOYsGQ2vFxD/F5fUNAjdQgLTR0hXK303j8yIw2fwTiOIQ==", + "dev": true, + "dependencies": { + "@babel/core": "~7.22.8", + "@babel/eslint-parser": "~7.22.7", + "eslint-restricted-globals": "~0.2.0", + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "@lwc/eslint-plugin-lwc": "^1.0.0", + "@salesforce/eslint-plugin-lightning": "^1.0.0", + "eslint": "^7 || ^8", + "eslint-plugin-import": "*", + "eslint-plugin-jest": "*" + } + }, + "node_modules/@salesforce/eslint-config-lwc/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@salesforce/eslint-config-lwc/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@salesforce/eslint-config-lwc/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@salesforce/eslint-plugin-aura": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@salesforce/eslint-plugin-aura/-/eslint-plugin-aura-2.1.0.tgz", + "integrity": "sha512-7HfwSBKTHQZQboLoEhkBY7bYR9wTaT+G5jHXGlq8y31hEnNhJXRZ+RERDEwDm1jYa2SV9lE8nMNr0/8EKIGjlQ==", + "dev": true, + "dependencies": { + "eslint-plugin-compat": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "eslint": "^7 || ^8" + } + }, + "node_modules/@salesforce/eslint-plugin-lightning": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@salesforce/eslint-plugin-lightning/-/eslint-plugin-lightning-1.0.0.tgz", + "integrity": "sha512-zk0PKXAcHKHepAG2EOSWlkOTxQM0Aw1CT6+MUxJcM42fCDwH/yPPpGkG3CWtRfmVViODGOwU9ywU2wlkAYcvUQ==", + "dev": true, + "peerDependencies": { + "eslint": "^7 || ^8" + } + }, + "node_modules/@salesforce/sfdx-lwc-jest": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@salesforce/sfdx-lwc-jest/-/sfdx-lwc-jest-1.4.1.tgz", + "integrity": "sha512-BYKt4FxBJfKkWUKvSC2Yxb+mnIcP+6URbawsX8aeo1pKRnz6TDusiNZE8bR+8ZRWwnmeUC0fzKlZEi3xIqzMRg==", + "dev": true, + "dependencies": { + "@lwc/compiler": "2.42.0", + "@lwc/engine-dom": "2.42.0", + "@lwc/jest-preset": "11.8.0", + "@lwc/jest-resolver": "11.8.0", + "@lwc/jest-serializer": "11.8.0", + "@lwc/jest-transformer": "11.8.0", + "@lwc/module-resolver": "2.42.0", + "@lwc/synthetic-shadow": "2.42.0", + "@lwc/wire-service": "2.42.0", + "@salesforce/wire-service-jest-util": "4.0.1", + "chalk": "^4.1.2", + "fast-glob": "^3.2.12", + "jest": "27.4.7", + "yargs": "~17.6.2" + }, + "bin": { + "lwc-jest": "bin/sfdx-lwc-jest", + "sfdx-lwc-jest": "bin/sfdx-lwc-jest" + } + }, + "node_modules/@salesforce/sfdx-lwc-jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@salesforce/sfdx-lwc-jest/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@salesforce/sfdx-lwc-jest/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@salesforce/sfdx-lwc-jest/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@salesforce/sfdx-lwc-jest/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@salesforce/sfdx-lwc-jest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@salesforce/wire-service-jest-util": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@salesforce/wire-service-jest-util/-/wire-service-jest-util-4.0.1.tgz", + "integrity": "sha512-6u3ZGXDCeRnKSX8WHRpVQAXmGiee6NkhmQb0gXmcPAm8zW/Q7o7lRJNvXKnxnXY7qyiKXVYDQAFKJjtGpaCfjw==", + "dev": true, + "peerDependencies": { + "@lwc/engine-dom": "^2.0.0" + } + }, + "node_modules/@sideway/address": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", + "integrity": "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==", + "dev": true, + "dependencies": { + "@hapi/hoek": "^9.0.0" + } + }, + "node_modules/@sideway/formula": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", + "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==", + "dev": true + }, + "node_modules/@sideway/pinpoint": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", + "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==", + "dev": true + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true + }, + "node_modules/@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", + "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@types/babel__core": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.1.tgz", + "integrity": "sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.1.tgz", + "integrity": "sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", + "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", + "dev": true + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", + "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.12", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz", + "integrity": "sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==", + "dev": true + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true + }, + "node_modules/@types/node": { + "version": "20.5.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.5.9.tgz", + "integrity": "sha512-PcGNd//40kHAS3sTlzKB9C9XL4K0sTup8nbG5lC14kzEteTNuAFh9u5nA0o5TWnSG2r/JNPRXFVcHJIIeRlmqQ==", + "dev": true + }, + "node_modules/@types/prettier": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", + "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", + "dev": true + }, + "node_modules/@types/semver": { + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.1.tgz", + "integrity": "sha512-cJRQXpObxfNKkFAZbJl2yjWtJCqELQIdShsogr1d2MilP8dKD9TE/nEKHkJgUNHdGKCQaf9HbIynuV2csLGVLg==", + "dev": true + }, + "node_modules/@types/stack-utils": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", + "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", + "dev": true + }, + "node_modules/@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", + "dev": true + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@typescript-eslint/utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", + "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@xml-tools/parser": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@xml-tools/parser/-/parser-1.0.11.tgz", + "integrity": "sha512-aKqQ077XnR+oQtHJlrAflaZaL7qZsulWc/i/ZEooar5JiWj1eLt0+Wg28cpa+XLney107wXqneC+oG1IZvxkTA==", + "dev": true, + "dependencies": { + "chevrotain": "7.1.1" + } + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "dev": true + }, + "node_modules/acorn": { + "version": "8.8.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", + "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "dev": true, + "dependencies": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + } + }, + "node_modules/acorn-globals/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", + "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "is-array-buffer": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-includes": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", + "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", + "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", + "integrity": "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", + "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.1.tgz", + "integrity": "sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "get-intrinsic": "^1.2.1", + "is-array-buffer": "^3.0.2", + "is-shared-array-buffer": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ast-metadata-inferer": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/ast-metadata-inferer/-/ast-metadata-inferer-0.8.0.tgz", + "integrity": "sha512-jOMKcHht9LxYIEQu+RVd22vtgrPaVCtDRQ/16IGmurdzxvYbDd5ynxjnyrzLnieG96eTcAyaoj/wN/4/1FyyeA==", + "dev": true, + "dependencies": { + "@mdn/browser-compat-data": "^5.2.34" + } + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/astring": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/astring/-/astring-1.8.6.tgz", + "integrity": "sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==", + "dev": true, + "bin": { + "astring": "bin/astring" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axios": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.5.0.tgz", + "integrity": "sha512-D4DdjDo5CY50Qms0qGQTTw6Q44jl7zRwY7bthds06pUGfChBCTcQs+N743eFWGEd6pRTMd6A+I87aWyFV5wiZQ==", + "dev": true, + "dependencies": { + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/axios/node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/babel-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", + "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "dev": true, + "dependencies": { + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/babel-jest/node_modules/babel-plugin-jest-hoist": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", + "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "dev": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/babel-jest/node_modules/babel-preset-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", + "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "dev": true, + "dependencies": { + "babel-plugin-jest-hoist": "^27.5.1", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-jest/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/babel-jest/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/babel-jest/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/babel-jest/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-jest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "dev": true, + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "dev": true, + "dependencies": { + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true + }, + "node_modules/browserslist": { + "version": "4.21.10", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", + "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001517", + "electron-to-chromium": "^1.4.477", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.11" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001527", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001527.tgz", + "integrity": "sha512-YkJi7RwPgWtXVSgK4lG9AHH57nSzvvOp9MesgXmw4Q7n0C3H04L0foHqfxcmSAm5AcWb8dW9AYj2tR7/5GnddQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/chevrotain": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/chevrotain/-/chevrotain-7.1.1.tgz", + "integrity": "sha512-wy3mC1x4ye+O+QkEinVJkPf5u2vsrDIYW9G7ZuwFl6v/Yu0LwUuT2POsb+NUWApebyxfkQq6+yDfRExbnI5rcw==", + "dev": true, + "dependencies": { + "regexp-to-ast": "0.5.0" + } + }, + "node_modules/ci-info": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", + "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", + "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", + "dev": true + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-truncate": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "dev": true, + "dependencies": { + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/cliui/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/cliui/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, + "node_modules/data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dev": true, + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true + }, + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-properties": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", + "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", + "dev": true, + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "dev": true, + "dependencies": { + "webidl-conversions": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "node_modules/electron-to-chromium": { + "version": "1.4.508", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.508.tgz", + "integrity": "sha512-FFa8QKjQK/A5QuFr2167myhMesGrhlOBD+3cYNxO9/S4XzHEXesyTD/1/xF644gC8buFPz3ca6G1LOQD0tZrrg==", + "dev": true + }, + "node_modules/emittery": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", + "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.1.tgz", + "integrity": "sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "arraybuffer.prototype.slice": "^1.0.1", + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-set-tostringtag": "^2.0.1", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.2.1", + "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.5", + "is-array-buffer": "^3.0.2", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.10", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.3", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.0", + "safe-array-concat": "^1.0.0", + "safe-regex-test": "^1.0.0", + "string.prototype.trim": "^1.2.7", + "string.prototype.trimend": "^1.0.6", + "string.prototype.trimstart": "^1.0.6", + "typed-array-buffer": "^1.0.0", + "typed-array-byte-length": "^1.0.0", + "typed-array-byte-offset": "^1.0.0", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", + "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", + "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dev": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/escodegen/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint": { + "version": "8.48.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.48.0.tgz", + "integrity": "sha512-sb6DLeIuRXxeM1YljSe1KEx9/YYeZFQWcV8Rq9HfigmdDEugjLEVEa1ozDjL6YDjBpQHPJxJzze+alxi4T3OLg==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "8.48.0", + "@humanwhocodes/config-array": "^0.11.10", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dev": true, + "dependencies": { + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-module-utils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", + "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", + "dev": true, + "dependencies": { + "debug": "^3.2.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-compat": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-compat/-/eslint-plugin-compat-4.2.0.tgz", + "integrity": "sha512-RDKSYD0maWy5r7zb5cWQS+uSPc26mgOzdORJ8hxILmWM7S/Ncwky7BcAtXVY5iRbKjBdHsWU8Yg7hfoZjtkv7w==", + "dev": true, + "dependencies": { + "@mdn/browser-compat-data": "^5.3.13", + "ast-metadata-inferer": "^0.8.0", + "browserslist": "^4.21.10", + "caniuse-lite": "^1.0.30001524", + "find-up": "^5.0.0", + "lodash.memoize": "^4.1.2", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=14.x" + }, + "peerDependencies": { + "eslint": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/eslint-plugin-compat/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-compat/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-compat/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/eslint-plugin-import": { + "version": "2.28.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.1.tgz", + "integrity": "sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==", + "dev": true, + "dependencies": { + "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", + "array.prototype.flat": "^1.3.1", + "array.prototype.flatmap": "^1.3.1", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.7", + "eslint-module-utils": "^2.8.0", + "has": "^1.0.3", + "is-core-module": "^2.13.0", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", + "object.values": "^1.1.6", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + } + }, + "node_modules/eslint-plugin-import/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/eslint-plugin-jest": { + "version": "26.9.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-26.9.0.tgz", + "integrity": "sha512-TWJxWGp1J628gxh2KhaH1H1paEdgE2J61BBF1I59c6xWeL5+D1BzMxGDN/nXAfX+aSkR5u80K+XhskK6Gwq9ng==", + "dev": true, + "dependencies": { + "@typescript-eslint/utils": "^5.10.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "@typescript-eslint/eslint-plugin": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "@typescript-eslint/eslint-plugin": { + "optional": true + }, + "jest": { + "optional": true + } + } + }, + "node_modules/eslint-restricted-globals": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eslint-restricted-globals/-/eslint-restricted-globals-0.2.0.tgz", + "integrity": "sha512-kwYJALm5KS2QW3Mc1PgObO4V+pTR6RQtRT65L1GQILlEnAhabUQqGAX7/qUjoQR4KZJKehWpBtyDEiDecwmY9A==", + "dev": true + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/eslint/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eslint/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/eslint/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/eslint/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree/node_modules/acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.0.tgz", + "integrity": "sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==", + "dev": true, + "dependencies": { + "flatted": "^3.2.7", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", + "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "bin": { + "he": "bin/he" + } + }, + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "dev": true, + "dependencies": { + "whatwg-encoding": "^1.0.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/husky": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", + "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", + "dev": true, + "bin": { + "husky": "lib/bin.js" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/typicode" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/internal-slot": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", + "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", + "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", + "dev": true, + "dependencies": { + "which-typed-array": "^1.1.11" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "dev": true + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", + "dev": true, + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", + "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest": { + "version": "27.4.7", + "resolved": "https://registry.npmjs.org/jest/-/jest-27.4.7.tgz", + "integrity": "sha512-8heYvsx7nV/m8m24Vk26Y87g73Ba6ueUd0MWed/NXMhSZIm62U/llVbS0PJe1SHunbyXjJ/BqG1z9bFjGUIvTg==", + "dev": true, + "dependencies": { + "@jest/core": "^27.4.7", + "import-local": "^3.0.2", + "jest-cli": "^27.4.7" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", + "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "execa": "^5.0.0", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", + "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-circus/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-circus/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/jest-circus/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", + "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "dev": true, + "dependencies": { + "@jest/core": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "prompts": "^2.0.1", + "yargs": "^16.2.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-cli/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/jest-cli/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-cli/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-cli/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/jest-cli/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-cli/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-config": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", + "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.8.0", + "@jest/test-sequencer": "^27.5.1", + "@jest/types": "^27.5.1", + "babel-jest": "^27.5.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.9", + "jest-circus": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-jasmine2": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-config/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-config/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-config/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/jest-config/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-diff/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-diff/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-diff/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff/node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-diff/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/jest-diff/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-docblock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", + "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "dev": true, + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-each": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", + "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-each/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-each/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-each/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-each/node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-each/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/jest-each/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-jsdom": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", + "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1", + "jsdom": "^16.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-node": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", + "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-jasmine2": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", + "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-jasmine2/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-jasmine2/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-jasmine2/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-jasmine2/node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-jasmine2/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/jest-jasmine2/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-leak-detector": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", + "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", + "dev": true, + "dependencies": { + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-leak-detector/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-leak-detector/node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-leak-detector/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-matcher-utils/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-matcher-utils/node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/jest-matcher-utils/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-message-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-message-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-message-util/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-message-util/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/jest-message-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-mock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", + "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", + "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", + "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-snapshot": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-resolve/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-resolve/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-resolve/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-resolve/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-resolve/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", + "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "dev": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-leak-detector": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "source-map-support": "^0.5.6", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runner/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runner/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-runner/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", + "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/globals": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runtime/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runtime/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-runtime/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-serializer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", + "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", + "dev": true, + "dependencies": { + "@types/node": "*", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", + "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.7.2", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.0.0", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^27.5.1", + "semver": "^7.3.2" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-snapshot/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-util/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", + "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "leven": "^3.1.0", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-validate/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-validate/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-validate/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-validate/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate/node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-validate/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/jest-validate/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", + "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", + "dev": true, + "dependencies": { + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^27.5.1", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-watcher/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-watcher/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-watcher/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-watcher/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/jest-watcher/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/joi": { + "version": "17.10.1", + "resolved": "https://registry.npmjs.org/joi/-/joi-17.10.1.tgz", + "integrity": "sha512-vIiDxQKmRidUVp8KngT8MZSOcmRVm2zV7jbMjNYWuHcJWI0bUck3nRTGQjhpPlQenIQIBC5Vp9AhcnHbWQqafw==", + "dev": true, + "dependencies": { + "@hapi/hoek": "^9.0.0", + "@hapi/topo": "^5.0.0", + "@sideway/address": "^4.1.3", + "@sideway/formula": "^3.0.1", + "@sideway/pinpoint": "^2.0.0" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "dev": true, + "dependencies": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/keyv": { + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.3.tgz", + "integrity": "sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lilconfig": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.5.tgz", + "integrity": "sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/line-column": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/line-column/-/line-column-1.0.2.tgz", + "integrity": "sha512-Ktrjk5noGYlHsVnYWh62FLVs4hTb8A3e+vucNZMgPeAOITdshMSgv4cCZQeRDjm7+goqmo6+liZwTXo+U3sVww==", + "dev": true, + "dependencies": { + "isarray": "^1.0.0", + "isobject": "^2.0.0" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/lint-staged": { + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-12.5.0.tgz", + "integrity": "sha512-BKLUjWDsKquV/JuIcoQW4MSAI3ggwEImF1+sB4zaKvyVx1wBk3FsG7UK9bpnmBTN1pm7EH2BBcMwINJzCRv12g==", + "dev": true, + "dependencies": { + "cli-truncate": "^3.1.0", + "colorette": "^2.0.16", + "commander": "^9.3.0", + "debug": "^4.3.4", + "execa": "^5.1.1", + "lilconfig": "2.0.5", + "listr2": "^4.0.5", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-inspect": "^1.12.2", + "pidtree": "^0.5.0", + "string-argv": "^0.3.1", + "supports-color": "^9.2.2", + "yaml": "^1.10.2" + }, + "bin": { + "lint-staged": "bin/lint-staged.js" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/lint-staged" + } + }, + "node_modules/lint-staged/node_modules/supports-color": { + "version": "9.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-9.4.0.tgz", + "integrity": "sha512-VL+lNrEoIXww1coLPOmiEmK/0sGigko5COxI09KzHc2VJXJsQ37UaQ+8quuxjDeA7+KnLGTWRyOXSLLR2Wb4jw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/listr2": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-4.0.5.tgz", + "integrity": "sha512-juGHV1doQdpNT3GSTs9IUN43QJb7KHdF9uqg7Vufs/tG9VTzpFphqF4pm/ICdAABGQxsyNn9CiYA3StkI6jpwA==", + "dev": true, + "dependencies": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.16", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.5.5", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "enquirer": ">= 2.3.0 < 3" + }, + "peerDependenciesMeta": { + "enquirer": { + "optional": true + } + } + }, + "node_modules/listr2/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/listr2/node_modules/cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/listr2/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/listr2/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/listr2/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/listr2/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/listr2/node_modules/slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/listr2/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/log-update/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/log-update/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/log-update/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/log-update/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-update/node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/log-update/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-update/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-dir/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/minimatch": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz", + "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", + "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node_modules/node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nwsapi": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", + "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==", + "dev": true + }, + "node_modules/object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", + "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", + "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1" + } + }, + "node_modules/object.values": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", + "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "dev": true, + "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pidtree": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.5.0.tgz", + "integrity": "sha512-9nxspIM7OpZuhBxPg73Zvyq7j1QMPMPsGKTqRc2XOaFQauDvoNz9fM1Wdkjmeo7l9GXOZiRs97sPkuayl39wjA==", + "dev": true, + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/postcss": { + "version": "8.4.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.29.tgz", + "integrity": "sha512-cbI+jaqIeu/VGqXEarWkRCCffhjgXc0qjBtXpqJhTBohMUjUQnbBr0xqX3vEKudc4iviTewcJo5ajcec5+wdJw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.13", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", + "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/prettier-plugin-apex": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/prettier-plugin-apex/-/prettier-plugin-apex-1.13.0.tgz", + "integrity": "sha512-QeGHrNOR6EXoH0Mto385FDrRC+XSCc/8zvtqNvhEaFovEMC7InDp2Mn5WxjJzQUdgtUYoXL+NYcSm3nxMqsymQ==", + "dev": true, + "dependencies": { + "axios": "^1.0.0", + "jest-docblock": "^29.0.0", + "wait-on": "^7.0.0", + "yargs": "^17.0.0" + }, + "bin": { + "apex-ast-serializer": "vendor/apex-ast-serializer/bin/apex-ast-serializer", + "apex-ast-serializer-http": "vendor/apex-ast-serializer/bin/apex-ast-serializer-http", + "start-apex-server": "dist/bin/start-apex-server.js", + "stop-apex-server": "dist/bin/stop-apex-server.js" + }, + "engines": { + "node": ">= 14.0.0" + }, + "peerDependencies": { + "prettier": "^2.0.0" + } + }, + "node_modules/prettier-plugin-apex/node_modules/jest-docblock": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.6.3.tgz", + "integrity": "sha512-2+H+GOTQBEm2+qFSQ7Ma+BvyV+waiIFxmZF5LdpBsAEjWX8QYjSCa4FrkIYtbfXUJJJnFCYrOtt6TZ+IAiTjBQ==", + "dev": true, + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.3.tgz", + "integrity": "sha512-ZsBgjVhFAj5KeK+nHfF1305/By3lechHQSMWCTl8iHSbfOm2TN5nHEtFc/+W7fAyUeCs2n5iow72gld4gW0xDw==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "dev": true + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true + }, + "node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/regexp-to-ast": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/regexp-to-ast/-/regexp-to-ast-0.5.0.tgz", + "integrity": "sha512-tlbJqcMHnPKI9zSrystikWKwHkBqu2a/Sgw01h3zFjvYrMxEDYHzzoMZnUrbIfpTFEsoRnnviOXNCzFiSc54Qw==", + "dev": true + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz", + "integrity": "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "functions-have-names": "^1.2.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "dev": true + }, + "node_modules/resolve": { + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve.exports": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", + "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", + "dev": true + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dev": true, + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-array-concat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.0.tgz", + "integrity": "sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-array-concat/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + }, + "node_modules/safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "dev": true, + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/slice-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-argv": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz", + "integrity": "sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==", + "dev": true, + "engines": { + "node": ">=0.6.19" + } + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.9.tgz", + "integrity": "sha512-6i5hL3MqG/K2G43mWXWgP+qizFW/QH/7kCNN13JrJS5q48FN5IKksLDscexKP3dnmB6cdm9jlNgAsWNLpSykmA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.5", + "regexp.prototype.flags": "^1.5.0", + "side-channel": "^1.0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz", + "integrity": "sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz", + "integrity": "sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, + "node_modules/terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/test-exclude/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/test-exclude/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/throat": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz", + "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", + "dev": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", + "dev": true, + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dev": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.14.2", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz", + "integrity": "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==", + "dev": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tsconfig-paths/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/tsconfig-paths/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", + "dev": true + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", + "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1", + "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz", + "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "has-proto": "^1.0.1", + "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz", + "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "has-proto": "^1.0.1", + "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", + "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "is-typed-array": "^1.1.9" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", + "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", + "dev": true, + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/v8-to-istanbul": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", + "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", + "dev": true, + "dependencies": { + "browser-process-hrtime": "^1.0.0" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "dev": true, + "dependencies": { + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/wait-on": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-7.0.1.tgz", + "integrity": "sha512-9AnJE9qTjRQOlTZIldAaf/da2eW0eSRSgcqq85mXQja/DW3MriHxkpODDSUEg+Gri/rKEcXUZHe+cevvYItaog==", + "dev": true, + "dependencies": { + "axios": "^0.27.2", + "joi": "^17.7.0", + "lodash": "^4.17.21", + "minimist": "^1.2.7", + "rxjs": "^7.8.0" + }, + "bin": { + "wait-on": "bin/wait-on" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/wait-on/node_modules/axios": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "dev": true, + "dependencies": { + "follow-redirects": "^1.14.9", + "form-data": "^4.0.0" + } + }, + "node_modules/wait-on/node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true, + "engines": { + "node": ">=10.4" + } + }, + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dev": true, + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.11.tgz", + "integrity": "sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/wrap-ansi/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "dev": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "17.6.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", + "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/yargs/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + }, + "dependencies": { + "@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true + }, + "@ampproject/remapping": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@babel/code-frame": { + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", + "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", + "dev": true, + "requires": { + "@babel/highlight": "^7.22.13", + "chalk": "^2.4.2" + } + }, + "@babel/compat-data": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", + "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", + "dev": true + }, + "@babel/core": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.15.tgz", + "integrity": "sha512-PtZqMmgRrvj8ruoEOIwVA3yoF91O+Hgw9o7DAUTNBA6Mo2jpu31clx9a7Nz/9JznqetTR6zwfC4L3LAjKQXUwA==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.22.15", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-module-transforms": "^7.22.15", + "@babel/helpers": "^7.22.15", + "@babel/parser": "^7.22.15", + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.22.15", + "@babel/types": "^7.22.15", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + } + }, + "@babel/eslint-parser": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.22.15.tgz", + "integrity": "sha512-yc8OOBIQk1EcRrpizuARSQS0TWAcOMpEJ1aafhNznaeYkeL+OhqnDObGFylB8ka8VFF/sZc+S4RzHyO+3LjQxg==", + "dev": true, + "requires": { + "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", + "eslint-visitor-keys": "^2.1.0", + "semver": "^6.3.1" + } + }, + "@babel/generator": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.15.tgz", + "integrity": "sha512-Zu9oWARBqeVOW0dZOjXc3JObrzuqothQ3y/n1kUtrjCoCPLkXUwMvOo/F/TCfoHMbWIFlWwpZtkZVb9ga4U2pA==", + "dev": true, + "requires": { + "@babel/types": "^7.22.15", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", + "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-validator-option": "^7.22.15", + "browserslist": "^4.21.9", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz", + "integrity": "sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.15", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + } + }, + "@babel/helper-environment-visitor": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", + "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", + "dev": true + }, + "@babel/helper-function-name": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", + "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", + "dev": true, + "requires": { + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.15.tgz", + "integrity": "sha512-qLNsZbgrNh0fDQBCPocSL8guki1hcPvltGDv/NxvUoABwFq7GkKSu1nRXeJkVZc+wJvne2E0RKQz+2SQrz6eAA==", + "dev": true, + "requires": { + "@babel/types": "^7.22.15" + } + }, + "@babel/helper-module-imports": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "dev": true, + "requires": { + "@babel/types": "^7.22.15" + } + }, + "@babel/helper-module-transforms": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.15.tgz", + "integrity": "sha512-l1UiX4UyHSFsYt17iQ3Se5pQQZZHa22zyIXURmvkmLCD4t/aU+dvNWHatKac/D9Vm9UES7nvIqHs4jZqKviUmQ==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.15" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", + "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "dev": true + }, + "@babel/helper-replace-supers": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz", + "integrity": "sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5" + } + }, + "@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "dev": true, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-string-parser": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", + "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "dev": true + }, + "@babel/helper-validator-identifier": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.15.tgz", + "integrity": "sha512-4E/F9IIEi8WR94324mbDUMo074YTheJmd7eZF5vITTeYchqAi6sYXRLHUVsmkdmY4QjfKTcB2jB7dVP3NaBElQ==", + "dev": true + }, + "@babel/helper-validator-option": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", + "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", + "dev": true + }, + "@babel/helpers": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.15.tgz", + "integrity": "sha512-7pAjK0aSdxOwR+CcYAqgWOGy5dcfvzsTIfFTb2odQqW47MDfv14UaJDY6eng8ylM2EaeKXdxaSWESbkmaQHTmw==", + "dev": true, + "requires": { + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.22.15", + "@babel/types": "^7.22.15" + } + }, + "@babel/highlight": { + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.13.tgz", + "integrity": "sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.22.5", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.15.tgz", + "integrity": "sha512-RWmQ/sklUN9BvGGpCDgSubhHWfAx24XDTDObup4ffvxaYsptOg2P3KG0j+1eWKLxpkX0j0uHxmpq2Z1SP/VhxA==", + "dev": true + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", + "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", + "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.7" + } + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.12.13" + } + }, + "@babel/plugin-syntax-decorators": { + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.22.10.tgz", + "integrity": "sha512-z1KTVemBjnz+kSEilAsI4lbkPOl5TvJH7YDSY1CTIzvLWJ+KHXp+mRe8VPmfnyvqOPqar1V2gid2PleKzRUstQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" + } + }, + "@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-jsx": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz", + "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" + } + }, + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-typescript": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz", + "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.15.tgz", + "integrity": "sha512-jWL4eh90w0HQOTKP2MoXXUpVxilxsB2Vl4ji69rSjS3EcZ/v4sBmn+A3NpepuJzBhOaEBbR7udonlHHn5DWidg==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.15.tgz", + "integrity": "sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5" + } + }, + "@babel/plugin-transform-typescript": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.15.tgz", + "integrity": "sha512-1uirS0TnijxvQLnlv5wQBwOX3E1wCFX7ITv+9pBV2wKEk4K+M5tqDaoNXnTH8tjEIYHLO98MwiTWO04Ggz4XuA==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-typescript": "^7.22.5" + } + }, + "@babel/preset-typescript": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.15.tgz", + "integrity": "sha512-HblhNmh6yM+cU4VwbBRpxFhxsTdfS1zsvH9W+gEjD0ARV9+8B4sNfpI6GuhePti84nuvhiwKS539jKPFHskA9A==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", + "@babel/plugin-syntax-jsx": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.15", + "@babel/plugin-transform-typescript": "^7.22.15" + } + }, + "@babel/template": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" + } + }, + "@babel/traverse": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.15.tgz", + "integrity": "sha512-DdHPwvJY0sEeN4xJU5uRLmZjgMMDIvMPniLuYzUVXj/GGzysPl0/fwt44JBkyUIzGJPV8QgHMcQdQ34XFuKTYQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.22.15", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15", + "debug": "^4.1.0", + "globals": "^11.1.0" + } + }, + "@babel/types": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.15.tgz", + "integrity": "sha512-X+NLXr0N8XXmN5ZsaQdm9U2SSC3UbIYq/doL++sueHOTisgZHoKaQtZxGuV2cUPQHMfjKEfg/g6oy7Hm6SKFtA==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.15", + "to-fast-properties": "^2.0.0" + } + }, + "@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, + "@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^3.3.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true + } + } + }, + "@eslint-community/regexpp": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.8.0.tgz", + "integrity": "sha512-JylOEEzDiOryeUnFbQz+oViCXS0KsvR1mvHkoMiu5+UiBvy+RYX7tzlIIIEstF/gVa2tj9AQXk3dgnxv6KxhFg==", + "dev": true + }, + "@eslint/eslintrc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", + "dev": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "globals": { + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true + } + } + }, + "@eslint/js": { + "version": "8.48.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.48.0.tgz", + "integrity": "sha512-ZSjtmelB7IJfWD2Fvb7+Z+ChTIKWq6kjda95fLcQKNS5aheVHn4IkfgRQE3sIIzTcSLwLcLZUD9UBt+V7+h+Pw==", + "dev": true + }, + "@hapi/hoek": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", + "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==", + "dev": true + }, + "@hapi/topo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz", + "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", + "dev": true, + "requires": { + "@hapi/hoek": "^9.0.0" + } + }, + "@humanwhocodes/config-array": { + "version": "0.11.11", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", + "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", + "dev": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + } + } + }, + "@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true + }, + "@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "requires": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "dependencies": { + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + } + } + }, + "@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true + }, + "@jest/console": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", + "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@jest/core": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", + "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "dev": true, + "requires": { + "@jest/console": "^27.5.1", + "@jest/reporters": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^27.5.1", + "jest-config": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-resolve-dependencies": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "jest-watcher": "^27.5.1", + "micromatch": "^4.0.4", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@jest/environment": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", + "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "dev": true, + "requires": { + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1" + } + }, + "@jest/fake-timers": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", + "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@sinonjs/fake-timers": "^8.0.1", + "@types/node": "*", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + } + }, + "@jest/globals": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", + "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/types": "^27.5.1", + "expect": "^27.5.1" + } + }, + "@jest/reporters": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", + "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "dev": true, + "requires": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-haste-map": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^8.1.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dev": true, + "requires": { + "@sinclair/typebox": "^0.27.8" + } + }, + "@jest/source-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", + "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", + "dev": true, + "requires": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9", + "source-map": "^0.6.0" + } + }, + "@jest/test-result": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", + "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", + "dev": true, + "requires": { + "@jest/console": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + } + }, + "@jest/test-sequencer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", + "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", + "dev": true, + "requires": { + "@jest/test-result": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-runtime": "^27.5.1" + } + }, + "@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "dev": true + }, + "@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", + "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "@lwc/babel-plugin-component": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/babel-plugin-component/-/babel-plugin-component-2.42.0.tgz", + "integrity": "sha512-JqMM7vxKCUypgxnjxizfSFmm1hPRw8blFIyY1sxiBSrwXhZXTHxtstLRCZkATRsG4dAjj4wQ7SrNRhd7oQXD9Q==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "~7.18.6", + "@lwc/errors": "2.42.0", + "@lwc/shared": "2.42.0", + "line-column": "~1.0.2" + }, + "dependencies": { + "@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + } + } + }, + "@lwc/compiler": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/compiler/-/compiler-2.42.0.tgz", + "integrity": "sha512-0NJFUAFVp4I/TI4GHvSwS86tyv7GuduxHLVsZ0Q42rAdvJmbMBvD8jIlCflhHLgzT0ePSD6pkoq9aKjks03RnQ==", + "dev": true, + "requires": { + "@babel/core": "~7.21.0", + "@babel/plugin-proposal-class-properties": "~7.18.6", + "@babel/plugin-proposal-object-rest-spread": "~7.20.2", + "@lwc/babel-plugin-component": "2.42.0", + "@lwc/errors": "2.42.0", + "@lwc/shared": "2.42.0", + "@lwc/style-compiler": "2.42.0", + "@lwc/template-compiler": "2.42.0" + }, + "dependencies": { + "@babel/core": { + "version": "7.21.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.8.tgz", + "integrity": "sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.21.4", + "@babel/generator": "^7.21.5", + "@babel/helper-compilation-targets": "^7.21.5", + "@babel/helper-module-transforms": "^7.21.5", + "@babel/helpers": "^7.21.5", + "@babel/parser": "^7.21.8", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.0" + } + } + } + }, + "@lwc/engine-dom": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/engine-dom/-/engine-dom-2.42.0.tgz", + "integrity": "sha512-yLo+C8MsLfDPrpAiHN8ktdVi2we2z1fryfXNYu9TMIaXwro/Bdw8PMzpIz5Q0E19KruGaAmixAzaLxymhwj2gQ==", + "dev": true + }, + "@lwc/engine-server": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@lwc/engine-server/-/engine-server-3.2.0.tgz", + "integrity": "sha512-ICu1TqfgB7n9YwiMdLfu6V1DWL+szyBzlDSTY/AGcRGcOQDmR+5Aa28PYxUc3+8OaU1voNtkcnJzXpq+if84Vw==", + "dev": true, + "peer": true + }, + "@lwc/errors": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/errors/-/errors-2.42.0.tgz", + "integrity": "sha512-byCYjSXoV8B3s9d+rPwpQwGZ2y4u6Gh+QJkDT6ZGgcXhBCWeQLPp87rnZdhTau3Da0P7319G+ivOp57smbk/Eg==", + "dev": true + }, + "@lwc/eslint-plugin-lwc": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@lwc/eslint-plugin-lwc/-/eslint-plugin-lwc-1.6.3.tgz", + "integrity": "sha512-CpZDkdxdbw8s+qyTib4keFN9lPlMO6UFSVtVem44xB2k+YvGGc1r4E3ihnkbutcuMqLws3gNGCEpUeRUqX28Ig==", + "dev": true, + "requires": { + "globals": "^13.20.0", + "minimatch": "^6.2.0" + }, + "dependencies": { + "globals": { + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true + } + } + }, + "@lwc/jest-preset": { + "version": "11.8.0", + "resolved": "https://registry.npmjs.org/@lwc/jest-preset/-/jest-preset-11.8.0.tgz", + "integrity": "sha512-BHb246V3LGm8q1HPYKFEZIgHwgFi8X5lN2R0FZavfyt1lnGhSa4ilS/zpLAgTHhyTOUhXkR4BKTDauCGLl4brw==", + "dev": true, + "requires": { + "@lwc/jest-resolver": "11.8.0", + "@lwc/jest-serializer": "11.8.0", + "@lwc/jest-transformer": "11.8.0" + } + }, + "@lwc/jest-resolver": { + "version": "11.8.0", + "resolved": "https://registry.npmjs.org/@lwc/jest-resolver/-/jest-resolver-11.8.0.tgz", + "integrity": "sha512-mN5tXW1jko671GUE/yZP/xbZ1ECpnZo40dLMzFctIUF9kOmMjRMv/xdsBTtBnI59W2WKMYDs8G7pywdMFBeZvw==", + "dev": true, + "requires": { + "@lwc/jest-shared": "11.8.0" + } + }, + "@lwc/jest-serializer": { + "version": "11.8.0", + "resolved": "https://registry.npmjs.org/@lwc/jest-serializer/-/jest-serializer-11.8.0.tgz", + "integrity": "sha512-bjIywlnvTkfEvBNKOrb/DHMvTw/V78ZSgNwry2eCHcDFI93adj6HkAx+Qq214uprnT/lZUtxosJBTcc/DkjrpA==", + "dev": true, + "requires": { + "pretty-format": "^29.5.0" + } + }, + "@lwc/jest-shared": { + "version": "11.8.0", + "resolved": "https://registry.npmjs.org/@lwc/jest-shared/-/jest-shared-11.8.0.tgz", + "integrity": "sha512-g4xgbD5+NC75omjZ6YZZ/tJhhrBnFEj2Lx/oY/yLtKUDXRX//PiWmGGcdlUbM5X8T8Bx9VR1wFttlB2Ta26VPQ==", + "dev": true + }, + "@lwc/jest-transformer": { + "version": "11.8.0", + "resolved": "https://registry.npmjs.org/@lwc/jest-transformer/-/jest-transformer-11.8.0.tgz", + "integrity": "sha512-qEyQnw95I7NtFugoTbIRlxN7jXiKCsrEo6ZvMOtyVAAJeKjbv02j+2XCSp15e8usnH5UFNY7DKm2wTxMfr991A==", + "dev": true, + "requires": { + "@babel/core": "^7.21.3", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-decorators": "^7.21.0", + "@babel/plugin-transform-modules-commonjs": "^7.21.2", + "@babel/preset-typescript": "^7.21.0", + "@lwc/jest-shared": "11.8.0", + "babel-preset-jest": "^29.5.0" + } + }, + "@lwc/module-resolver": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/module-resolver/-/module-resolver-2.42.0.tgz", + "integrity": "sha512-pwtgFNm/sNIS7daRnLCNLY4CqO/B31/ZwsqQd3Hs5eaH9iSFrGnoUm4sTVFyLljVAy7CXKdakwkvcj3JKjsO+w==", + "dev": true, + "requires": { + "resolve": "~1.22.1" + } + }, + "@lwc/shared": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/shared/-/shared-2.42.0.tgz", + "integrity": "sha512-YSI9VObp3fJ5yyg6vE4tDRB8dqKRT5ZYmKL03lzQh6+NMcjqv+EyW48Q2pPcv2ghsg0mJHvHBl7+hFGe5Z03OQ==", + "dev": true + }, + "@lwc/style-compiler": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/style-compiler/-/style-compiler-2.42.0.tgz", + "integrity": "sha512-8p9YKqiNqK9XlblLgHYigRfNFsohmKYl400w/t5uewaMlLx/DoPlxcUmeEhGtibqkGEK7uqnuvLZDsO99Tuylw==", + "dev": true, + "requires": { + "@lwc/shared": "2.42.0", + "postcss": "~8.4.20", + "postcss-selector-parser": "~6.0.11", + "postcss-value-parser": "~4.2.0", + "string.prototype.matchall": "^4.0.8" + } + }, + "@lwc/synthetic-shadow": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/synthetic-shadow/-/synthetic-shadow-2.42.0.tgz", + "integrity": "sha512-UgtQqoyoIH8qi2Tv05PuX3FGRjeASyBb8Ylqmn4qed7nCOeek5uUbWh2sX2Ck/lK73qVqk4jiH8xsK9MIrQvoQ==", + "dev": true + }, + "@lwc/template-compiler": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/template-compiler/-/template-compiler-2.42.0.tgz", + "integrity": "sha512-IMmm50fJUVG4kiX8gVptT6V/amtGMIi1dbcCU7rixjoBxd/F20lhZN3yHSPiWGFmoBWri16cFd+5hu3YYPRJdw==", + "dev": true, + "requires": { + "@lwc/errors": "2.42.0", + "@lwc/shared": "2.42.0", + "acorn": "~8.8.2", + "astring": "~1.8.3", + "estree-walker": "~2.0.2", + "he": "~1.2.0", + "parse5": "~6.0.1" + } + }, + "@lwc/wire-service": { + "version": "2.42.0", + "resolved": "https://registry.npmjs.org/@lwc/wire-service/-/wire-service-2.42.0.tgz", + "integrity": "sha512-ZUY+8tYRxSYP5Murcb9tHZYXfMas4gNGfnt50Z/FxMX2kEC8Snp6sPyUTV1k4q+zTNu0zJ+WYHVpMgB+QfUc+w==", + "dev": true + }, + "@mdn/browser-compat-data": { + "version": "5.3.14", + "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-5.3.14.tgz", + "integrity": "sha512-Y9XQrphVcE6u9xMm+gIqN86opbU/5s2W1pdPyKRyFV5B7+2jWM2gLI5JpfhZncaoDKvhy6FYwK04aCz5UM/bTQ==", + "dev": true + }, + "@nicolo-ribaudo/eslint-scope-5-internals": { + "version": "5.1.1-v1", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", + "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", + "dev": true, + "requires": { + "eslint-scope": "5.1.1" + } + }, + "@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true + }, + "@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@prettier/plugin-xml": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@prettier/plugin-xml/-/plugin-xml-2.2.0.tgz", + "integrity": "sha512-UWRmygBsyj4bVXvDiqSccwT1kmsorcwQwaIy30yVh8T+Gspx4OlC0shX1y+ZuwXZvgnafmpRYKks0bAu9urJew==", + "dev": true, + "requires": { + "@xml-tools/parser": "^1.0.11", + "prettier": ">=2.4.0" + } + }, + "@salesforce/eslint-config-lwc": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@salesforce/eslint-config-lwc/-/eslint-config-lwc-3.5.2.tgz", + "integrity": "sha512-TqD5pF/OwjNNrms5nn9f6bf630T7WzXuH0RYF1ybsFOYsGQ2vFxD/F5fUNAjdQgLTR0hXK303j8yIw2fwTiOIQ==", + "dev": true, + "requires": { + "@babel/core": "~7.22.8", + "@babel/eslint-parser": "~7.22.7", + "eslint-restricted-globals": "~0.2.0", + "semver": "^7.5.3" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "@salesforce/eslint-plugin-aura": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@salesforce/eslint-plugin-aura/-/eslint-plugin-aura-2.1.0.tgz", + "integrity": "sha512-7HfwSBKTHQZQboLoEhkBY7bYR9wTaT+G5jHXGlq8y31hEnNhJXRZ+RERDEwDm1jYa2SV9lE8nMNr0/8EKIGjlQ==", + "dev": true, + "requires": { + "eslint-plugin-compat": "^4.0.2" + } + }, + "@salesforce/eslint-plugin-lightning": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@salesforce/eslint-plugin-lightning/-/eslint-plugin-lightning-1.0.0.tgz", + "integrity": "sha512-zk0PKXAcHKHepAG2EOSWlkOTxQM0Aw1CT6+MUxJcM42fCDwH/yPPpGkG3CWtRfmVViODGOwU9ywU2wlkAYcvUQ==", + "dev": true, + "requires": {} + }, + "@salesforce/sfdx-lwc-jest": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@salesforce/sfdx-lwc-jest/-/sfdx-lwc-jest-1.4.1.tgz", + "integrity": "sha512-BYKt4FxBJfKkWUKvSC2Yxb+mnIcP+6URbawsX8aeo1pKRnz6TDusiNZE8bR+8ZRWwnmeUC0fzKlZEi3xIqzMRg==", + "dev": true, + "requires": { + "@lwc/compiler": "2.42.0", + "@lwc/engine-dom": "2.42.0", + "@lwc/jest-preset": "11.8.0", + "@lwc/jest-resolver": "11.8.0", + "@lwc/jest-serializer": "11.8.0", + "@lwc/jest-transformer": "11.8.0", + "@lwc/module-resolver": "2.42.0", + "@lwc/synthetic-shadow": "2.42.0", + "@lwc/wire-service": "2.42.0", + "@salesforce/wire-service-jest-util": "4.0.1", + "chalk": "^4.1.2", + "fast-glob": "^3.2.12", + "jest": "27.4.7", + "yargs": "~17.6.2" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@salesforce/wire-service-jest-util": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@salesforce/wire-service-jest-util/-/wire-service-jest-util-4.0.1.tgz", + "integrity": "sha512-6u3ZGXDCeRnKSX8WHRpVQAXmGiee6NkhmQb0gXmcPAm8zW/Q7o7lRJNvXKnxnXY7qyiKXVYDQAFKJjtGpaCfjw==", + "dev": true, + "requires": {} + }, + "@sideway/address": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", + "integrity": "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==", + "dev": true, + "requires": { + "@hapi/hoek": "^9.0.0" + } + }, + "@sideway/formula": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", + "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==", + "dev": true + }, + "@sideway/pinpoint": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", + "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==", + "dev": true + }, + "@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true + }, + "@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + }, + "@sinonjs/fake-timers": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", + "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.7.0" + } + }, + "@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dev": true + }, + "@types/babel__core": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.1.tgz", + "integrity": "sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==", + "dev": true, + "requires": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@types/babel__template": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "dev": true, + "requires": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@types/babel__traverse": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.1.tgz", + "integrity": "sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==", + "dev": true, + "requires": { + "@babel/types": "^7.20.7" + } + }, + "@types/graceful-fs": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", + "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", + "dev": true + }, + "@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "*" + } + }, + "@types/istanbul-reports": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", + "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "dev": true, + "requires": { + "@types/istanbul-lib-report": "*" + } + }, + "@types/json-schema": { + "version": "7.0.12", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz", + "integrity": "sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==", + "dev": true + }, + "@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true + }, + "@types/node": { + "version": "20.5.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.5.9.tgz", + "integrity": "sha512-PcGNd//40kHAS3sTlzKB9C9XL4K0sTup8nbG5lC14kzEteTNuAFh9u5nA0o5TWnSG2r/JNPRXFVcHJIIeRlmqQ==", + "dev": true + }, + "@types/prettier": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", + "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", + "dev": true + }, + "@types/semver": { + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.1.tgz", + "integrity": "sha512-cJRQXpObxfNKkFAZbJl2yjWtJCqELQIdShsogr1d2MilP8dKD9TE/nEKHkJgUNHdGKCQaf9HbIynuV2csLGVLg==", + "dev": true + }, + "@types/stack-utils": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", + "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", + "dev": true + }, + "@types/yargs": { + "version": "16.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.5.tgz", + "integrity": "sha512-AxO/ADJOBFJScHbWhq2xAhlWP24rY4aCEG/NFaMvbT3X2MgRsLjhjQwsn0Zi5zn0LG9jUhCCZMeX9Dkuw6k+vQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", + "dev": true + }, + "@typescript-eslint/scope-manager": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" + } + }, + "@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "@typescript-eslint/utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", + "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "dev": true, + "requires": { + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true + } + } + }, + "@xml-tools/parser": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@xml-tools/parser/-/parser-1.0.11.tgz", + "integrity": "sha512-aKqQ077XnR+oQtHJlrAflaZaL7qZsulWc/i/ZEooar5JiWj1eLt0+Wg28cpa+XLney107wXqneC+oG1IZvxkTA==", + "dev": true, + "requires": { + "chevrotain": "7.1.1" + } + }, + "abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "dev": true + }, + "acorn": { + "version": "8.8.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", + "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "dev": true + }, + "acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "dev": true, + "requires": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + }, + "dependencies": { + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true + } + } + }, + "acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "requires": {} + }, + "acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true + }, + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "requires": { + "debug": "4" + } + }, + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "requires": { + "type-fest": "^0.21.3" + } + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "array-buffer-byte-length": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", + "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "is-array-buffer": "^3.0.1" + } + }, + "array-includes": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", + "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "is-string": "^1.0.7" + } + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true + }, + "array.prototype.findlastindex": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", + "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.2.1" + } + }, + "array.prototype.flat": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", + "integrity": "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + } + }, + "array.prototype.flatmap": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", + "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + } + }, + "arraybuffer.prototype.slice": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.1.tgz", + "integrity": "sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==", + "dev": true, + "requires": { + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "get-intrinsic": "^1.2.1", + "is-array-buffer": "^3.0.2", + "is-shared-array-buffer": "^1.0.2" + } + }, + "ast-metadata-inferer": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/ast-metadata-inferer/-/ast-metadata-inferer-0.8.0.tgz", + "integrity": "sha512-jOMKcHht9LxYIEQu+RVd22vtgrPaVCtDRQ/16IGmurdzxvYbDd5ynxjnyrzLnieG96eTcAyaoj/wN/4/1FyyeA==", + "dev": true, + "requires": { + "@mdn/browser-compat-data": "^5.2.34" + } + }, + "astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true + }, + "astring": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/astring/-/astring-1.8.6.tgz", + "integrity": "sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "dev": true + }, + "axios": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.5.0.tgz", + "integrity": "sha512-D4DdjDo5CY50Qms0qGQTTw6Q44jl7zRwY7bthds06pUGfChBCTcQs+N743eFWGEd6pRTMd6A+I87aWyFV5wiZQ==", + "dev": true, + "requires": { + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + }, + "dependencies": { + "form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + } + } + }, + "babel-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", + "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "dev": true, + "requires": { + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "babel-plugin-jest-hoist": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", + "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "dev": true, + "requires": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + } + }, + "babel-preset-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", + "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "dev": true, + "requires": { + "babel-plugin-jest-hoist": "^27.5.1", + "babel-preset-current-node-syntax": "^1.0.0" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + } + }, + "babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", + "dev": true, + "requires": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + } + }, + "babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "dev": true, + "requires": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" + } + }, + "babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "dev": true, + "requires": { + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" + } + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true + }, + "browserslist": { + "version": "4.21.10", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", + "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001517", + "electron-to-chromium": "^1.4.477", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.11" + } + }, + "bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "requires": { + "node-int64": "^0.4.0" + } + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "caniuse-lite": { + "version": "1.0.30001527", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001527.tgz", + "integrity": "sha512-YkJi7RwPgWtXVSgK4lG9AHH57nSzvvOp9MesgXmw4Q7n0C3H04L0foHqfxcmSAm5AcWb8dW9AYj2tR7/5GnddQ==", + "dev": true + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true + }, + "chevrotain": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/chevrotain/-/chevrotain-7.1.1.tgz", + "integrity": "sha512-wy3mC1x4ye+O+QkEinVJkPf5u2vsrDIYW9G7ZuwFl6v/Yu0LwUuT2POsb+NUWApebyxfkQq6+yDfRExbnI5rcw==", + "dev": true, + "requires": { + "regexp-to-ast": "0.5.0" + } + }, + "ci-info": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", + "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", + "dev": true + }, + "cjs-module-lexer": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", + "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", + "dev": true + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "cli-truncate": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "dev": true, + "requires": { + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" + } + }, + "cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "dependencies": { + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true + }, + "collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true + }, + "cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true + }, + "cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "requires": { + "cssom": "~0.3.6" + }, + "dependencies": { + "cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + } + } + }, + "data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dev": true, + "requires": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + } + }, + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true + }, + "dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true + }, + "deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true + }, + "define-properties": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", + "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", + "dev": true, + "requires": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true + }, + "detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true + }, + "diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "requires": { + "path-type": "^4.0.0" + } + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "dev": true, + "requires": { + "webidl-conversions": "^5.0.0" + }, + "dependencies": { + "webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "dev": true + } + } + }, + "eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.508", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.508.tgz", + "integrity": "sha512-FFa8QKjQK/A5QuFr2167myhMesGrhlOBD+3cYNxO9/S4XzHEXesyTD/1/xF644gC8buFPz3ca6G1LOQD0tZrrg==", + "dev": true + }, + "emittery": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", + "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", + "dev": true + }, + "emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-abstract": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.1.tgz", + "integrity": "sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==", + "dev": true, + "requires": { + "array-buffer-byte-length": "^1.0.0", + "arraybuffer.prototype.slice": "^1.0.1", + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-set-tostringtag": "^2.0.1", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.2.1", + "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.5", + "is-array-buffer": "^3.0.2", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.10", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.3", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.0", + "safe-array-concat": "^1.0.0", + "safe-regex-test": "^1.0.0", + "string.prototype.trim": "^1.2.7", + "string.prototype.trimend": "^1.0.6", + "string.prototype.trimstart": "^1.0.6", + "typed-array-buffer": "^1.0.0", + "typed-array-byte-length": "^1.0.0", + "typed-array-byte-offset": "^1.0.0", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.10" + } + }, + "es-set-tostringtag": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", + "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "has-tostringtag": "^1.0.0" + } + }, + "es-shim-unscopables": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", + "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + }, + "escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dev": true, + "requires": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2", + "source-map": "~0.6.1" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "eslint": { + "version": "8.48.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.48.0.tgz", + "integrity": "sha512-sb6DLeIuRXxeM1YljSe1KEx9/YYeZFQWcV8Rq9HfigmdDEugjLEVEa1ozDjL6YDjBpQHPJxJzze+alxi4T3OLg==", + "dev": true, + "requires": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "8.48.0", + "@humanwhocodes/config-array": "^0.11.10", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + }, + "eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + } + }, + "eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + }, + "globals": { + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true + } + } + }, + "eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dev": true, + "requires": { + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "eslint-module-utils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", + "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", + "dev": true, + "requires": { + "debug": "^3.2.7" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "eslint-plugin-compat": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-compat/-/eslint-plugin-compat-4.2.0.tgz", + "integrity": "sha512-RDKSYD0maWy5r7zb5cWQS+uSPc26mgOzdORJ8hxILmWM7S/Ncwky7BcAtXVY5iRbKjBdHsWU8Yg7hfoZjtkv7w==", + "dev": true, + "requires": { + "@mdn/browser-compat-data": "^5.3.13", + "ast-metadata-inferer": "^0.8.0", + "browserslist": "^4.21.10", + "caniuse-lite": "^1.0.30001524", + "find-up": "^5.0.0", + "lodash.memoize": "^4.1.2", + "semver": "^7.5.4" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "eslint-plugin-import": { + "version": "2.28.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.1.tgz", + "integrity": "sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==", + "dev": true, + "requires": { + "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", + "array.prototype.flat": "^1.3.1", + "array.prototype.flatmap": "^1.3.1", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.7", + "eslint-module-utils": "^2.8.0", + "has": "^1.0.3", + "is-core-module": "^2.13.0", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", + "object.values": "^1.1.6", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + } + } + }, + "eslint-plugin-jest": { + "version": "26.9.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-26.9.0.tgz", + "integrity": "sha512-TWJxWGp1J628gxh2KhaH1H1paEdgE2J61BBF1I59c6xWeL5+D1BzMxGDN/nXAfX+aSkR5u80K+XhskK6Gwq9ng==", + "dev": true, + "requires": { + "@typescript-eslint/utils": "^5.10.0" + } + }, + "eslint-restricted-globals": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eslint-restricted-globals/-/eslint-restricted-globals-0.2.0.tgz", + "integrity": "sha512-kwYJALm5KS2QW3Mc1PgObO4V+pTR6RQtRT65L1GQILlEnAhabUQqGAX7/qUjoQR4KZJKehWpBtyDEiDecwmY9A==", + "dev": true + }, + "eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + } + }, + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + }, + "espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "requires": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "dependencies": { + "acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "dev": true + }, + "eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true + } + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, + "requires": { + "estraverse": "^5.1.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "requires": { + "estraverse": "^5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + } + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true + }, + "expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + } + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "dependencies": { + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + } + } + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, + "fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "requires": { + "bser": "2.1.1" + } + }, + "file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "requires": { + "flat-cache": "^3.0.4" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "flat-cache": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.0.tgz", + "integrity": "sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==", + "dev": true, + "requires": { + "flatted": "^3.2.7", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + } + }, + "flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "dev": true + }, + "follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "dev": true + }, + "for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dev": true, + "requires": { + "is-callable": "^1.1.3" + } + }, + "form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "optional": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" + } + }, + "functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true + }, + "gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "get-intrinsic": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", + "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3" + } + }, + "get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true + }, + "get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true + }, + "get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + } + } + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "requires": { + "is-glob": "^4.0.3" + } + }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + }, + "globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dev": true, + "requires": { + "define-properties": "^1.1.3" + } + }, + "globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + } + }, + "gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.3" + } + }, + "graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.1" + } + }, + "has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "dev": true + }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true + }, + "html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "dev": true, + "requires": { + "whatwg-encoding": "^1.0.5" + } + }, + "html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "requires": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + } + }, + "https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "requires": { + "agent-base": "6", + "debug": "4" + } + }, + "human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true + }, + "husky": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", + "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", + "dev": true + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "dev": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "requires": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "internal-slot": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", + "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", + "dev": true, + "requires": { + "get-intrinsic": "^1.2.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, + "is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "requires": { + "has-bigints": "^1.0.1" + } + }, + "is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true + }, + "is-core-module": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true + }, + "is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true + }, + "is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true + }, + "is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true + }, + "is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "is-typed-array": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", + "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", + "dev": true, + "requires": { + "which-typed-array": "^1.1.11" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "dev": true + }, + "is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + }, + "istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "requires": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + } + }, + "istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "dependencies": { + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + } + }, + "istanbul-reports": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", + "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", + "dev": true, + "requires": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + } + }, + "jest": { + "version": "27.4.7", + "resolved": "https://registry.npmjs.org/jest/-/jest-27.4.7.tgz", + "integrity": "sha512-8heYvsx7nV/m8m24Vk26Y87g73Ba6ueUd0MWed/NXMhSZIm62U/llVbS0PJe1SHunbyXjJ/BqG1z9bFjGUIvTg==", + "dev": true, + "requires": { + "@jest/core": "^27.4.7", + "import-local": "^3.0.2", + "jest-cli": "^27.4.7" + } + }, + "jest-changed-files": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", + "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "execa": "^5.0.0", + "throat": "^6.0.1" + } + }, + "jest-circus": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", + "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true + } + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jest-cli": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", + "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "dev": true, + "requires": { + "@jest/core": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "prompts": "^2.0.1", + "yargs": "^16.2.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true + } + } + }, + "jest-config": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", + "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "dev": true, + "requires": { + "@babel/core": "^7.8.0", + "@jest/test-sequencer": "^27.5.1", + "@jest/types": "^27.5.1", + "babel-jest": "^27.5.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.9", + "jest-circus": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-jasmine2": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true + } + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true + } + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jest-docblock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", + "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "dev": true, + "requires": { + "detect-newline": "^3.0.0" + } + }, + "jest-each": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", + "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true + } + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jest-environment-jsdom": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", + "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1", + "jsdom": "^16.6.0" + } + }, + "jest-environment-node": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", + "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + } + }, + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + }, + "jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.3.2", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + } + }, + "jest-jasmine2": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", + "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "throat": "^6.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true + } + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jest-leak-detector": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", + "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", + "dev": true, + "requires": { + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true + }, + "pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + } + } + }, + "jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true + } + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true + } + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jest-mock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", + "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*" + } + }, + "jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "requires": {} + }, + "jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true + }, + "jest-resolve": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", + "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.0", + "slash": "^3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jest-resolve-dependencies": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", + "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-snapshot": "^27.5.1" + } + }, + "jest-runner": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", + "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "dev": true, + "requires": { + "@jest/console": "^27.5.1", + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-leak-detector": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "source-map-support": "^0.5.6", + "throat": "^6.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jest-runtime": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", + "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/globals": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jest-serializer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", + "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", + "dev": true, + "requires": { + "@types/node": "*", + "graceful-fs": "^4.2.9" + } + }, + "jest-snapshot": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", + "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "dev": true, + "requires": { + "@babel/core": "^7.7.2", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.0.0", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^27.5.1", + "semver": "^7.3.2" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true + } + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jest-validate": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", + "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "leven": "^3.1.0", + "pretty-format": "^27.5.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true + } + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jest-watcher": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", + "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", + "dev": true, + "requires": { + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^27.5.1", + "string-length": "^4.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "dependencies": { + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "joi": { + "version": "17.10.1", + "resolved": "https://registry.npmjs.org/joi/-/joi-17.10.1.tgz", + "integrity": "sha512-vIiDxQKmRidUVp8KngT8MZSOcmRVm2zV7jbMjNYWuHcJWI0bUck3nRTGQjhpPlQenIQIBC5Vp9AhcnHbWQqafw==", + "dev": true, + "requires": { + "@hapi/hoek": "^9.0.0", + "@hapi/topo": "^5.0.0", + "@sideway/address": "^4.1.3", + "@sideway/formula": "^3.0.1", + "@sideway/pinpoint": "^2.0.0" + } + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "requires": { + "argparse": "^2.0.1" + } + }, + "jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "dev": true, + "requires": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + } + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + }, + "json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true + }, + "keyv": { + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.3.tgz", + "integrity": "sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==", + "dev": true, + "requires": { + "json-buffer": "3.0.1" + } + }, + "kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true + }, + "leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true + }, + "levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "lilconfig": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.5.tgz", + "integrity": "sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg==", + "dev": true + }, + "line-column": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/line-column/-/line-column-1.0.2.tgz", + "integrity": "sha512-Ktrjk5noGYlHsVnYWh62FLVs4hTb8A3e+vucNZMgPeAOITdshMSgv4cCZQeRDjm7+goqmo6+liZwTXo+U3sVww==", + "dev": true, + "requires": { + "isarray": "^1.0.0", + "isobject": "^2.0.0" + } + }, + "lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "lint-staged": { + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-12.5.0.tgz", + "integrity": "sha512-BKLUjWDsKquV/JuIcoQW4MSAI3ggwEImF1+sB4zaKvyVx1wBk3FsG7UK9bpnmBTN1pm7EH2BBcMwINJzCRv12g==", + "dev": true, + "requires": { + "cli-truncate": "^3.1.0", + "colorette": "^2.0.16", + "commander": "^9.3.0", + "debug": "^4.3.4", + "execa": "^5.1.1", + "lilconfig": "2.0.5", + "listr2": "^4.0.5", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-inspect": "^1.12.2", + "pidtree": "^0.5.0", + "string-argv": "^0.3.1", + "supports-color": "^9.2.2", + "yaml": "^1.10.2" + }, + "dependencies": { + "supports-color": { + "version": "9.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-9.4.0.tgz", + "integrity": "sha512-VL+lNrEoIXww1coLPOmiEmK/0sGigko5COxI09KzHc2VJXJsQ37UaQ+8quuxjDeA7+KnLGTWRyOXSLLR2Wb4jw==", + "dev": true + } + } + }, + "listr2": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-4.0.5.tgz", + "integrity": "sha512-juGHV1doQdpNT3GSTs9IUN43QJb7KHdF9uqg7Vufs/tG9VTzpFphqF4pm/ICdAABGQxsyNn9CiYA3StkI6jpwA==", + "dev": true, + "requires": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.16", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.5.5", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "requires": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true + }, + "lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dev": true, + "requires": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + } + } + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "requires": { + "semver": "^7.5.3" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "requires": { + "tmpl": "1.0.5" + } + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true + }, + "micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "requires": { + "mime-db": "1.52.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "minimatch": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz", + "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + }, + "minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "nanoid": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", + "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "dev": true + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "dev": true + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "requires": { + "path-key": "^3.0.0" + } + }, + "nwsapi": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", + "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==", + "dev": true + }, + "object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "dev": true + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, + "object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + } + }, + "object.fromentries": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", + "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + } + }, + "object.groupby": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", + "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1" + } + }, + "object.values": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", + "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "requires": { + "mimic-fn": "^2.1.0" + } + }, + "optionator": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "dev": true, + "requires": { + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + } + }, + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true + }, + "pidtree": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.5.0.tgz", + "integrity": "sha512-9nxspIM7OpZuhBxPg73Zvyq7j1QMPMPsGKTqRc2XOaFQauDvoNz9fM1Wdkjmeo7l9GXOZiRs97sPkuayl39wjA==", + "dev": true + }, + "pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "requires": { + "find-up": "^4.0.0" + }, + "dependencies": { + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + } + } + }, + "postcss": { + "version": "8.4.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.29.tgz", + "integrity": "sha512-cbI+jaqIeu/VGqXEarWkRCCffhjgXc0qjBtXpqJhTBohMUjUQnbBr0xqX3vEKudc4iviTewcJo5ajcec5+wdJw==", + "dev": true, + "requires": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + }, + "postcss-selector-parser": { + "version": "6.0.13", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", + "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true + }, + "prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "dev": true + }, + "prettier-plugin-apex": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/prettier-plugin-apex/-/prettier-plugin-apex-1.13.0.tgz", + "integrity": "sha512-QeGHrNOR6EXoH0Mto385FDrRC+XSCc/8zvtqNvhEaFovEMC7InDp2Mn5WxjJzQUdgtUYoXL+NYcSm3nxMqsymQ==", + "dev": true, + "requires": { + "axios": "^1.0.0", + "jest-docblock": "^29.0.0", + "wait-on": "^7.0.0", + "yargs": "^17.0.0" + }, + "dependencies": { + "jest-docblock": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.6.3.tgz", + "integrity": "sha512-2+H+GOTQBEm2+qFSQ7Ma+BvyV+waiIFxmZF5LdpBsAEjWX8QYjSCa4FrkIYtbfXUJJJnFCYrOtt6TZ+IAiTjBQ==", + "dev": true, + "requires": { + "detect-newline": "^3.0.0" + } + } + } + }, + "pretty-format": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.3.tgz", + "integrity": "sha512-ZsBgjVhFAj5KeK+nHfF1305/By3lechHQSMWCTl8iHSbfOm2TN5nHEtFc/+W7fAyUeCs2n5iow72gld4gW0xDw==", + "dev": true, + "requires": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true + } + } + }, + "prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "requires": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + } + }, + "proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "dev": true + }, + "psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true + }, + "punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "dev": true + }, + "querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true + }, + "react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "regexp-to-ast": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/regexp-to-ast/-/regexp-to-ast-0.5.0.tgz", + "integrity": "sha512-tlbJqcMHnPKI9zSrystikWKwHkBqu2a/Sgw01h3zFjvYrMxEDYHzzoMZnUrbIfpTFEsoRnnviOXNCzFiSc54Qw==", + "dev": true + }, + "regexp.prototype.flags": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz", + "integrity": "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "functions-have-names": "^1.2.3" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true + }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "dev": true + }, + "resolve": { + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", + "dev": true, + "requires": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "requires": { + "resolve-from": "^5.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + } + } + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "resolve.exports": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", + "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", + "dev": true + }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, + "rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", + "dev": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dev": true, + "requires": { + "tslib": "^2.1.0" + } + }, + "safe-array-concat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.0.tgz", + "integrity": "sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "dependencies": { + "isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + } + } + }, + "safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "dev": true, + "requires": { + "xmlchars": "^2.2.0" + } + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "slice-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", + "dev": true, + "requires": { + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true + } + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true + }, + "source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "requires": { + "escape-string-regexp": "^2.0.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true + } + } + }, + "string-argv": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz", + "integrity": "sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==", + "dev": true + }, + "string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "requires": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + } + }, + "string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "requires": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true + }, + "strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "requires": { + "ansi-regex": "^6.0.1" + } + } + } + }, + "string.prototype.matchall": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.9.tgz", + "integrity": "sha512-6i5hL3MqG/K2G43mWXWgP+qizFW/QH/7kCNN13JrJS5q48FN5IKksLDscexKP3dnmB6cdm9jlNgAsWNLpSykmA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.5", + "regexp.prototype.flags": "^1.5.0", + "side-channel": "^1.0.4" + } + }, + "string.prototype.trim": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz", + "integrity": "sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "string.prototype.trimstart": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz", + "integrity": "sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true + }, + "strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true + }, + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dev": true, + "requires": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "dependencies": { + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true + }, + "symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, + "terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "dev": true, + "requires": { + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" + } + }, + "test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "requires": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "dependencies": { + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + } + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "throat": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.2.tgz", + "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "tough-cookie": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", + "dev": true, + "requires": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + } + }, + "tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dev": true, + "requires": { + "punycode": "^2.1.1" + } + }, + "tsconfig-paths": { + "version": "3.14.2", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz", + "integrity": "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==", + "dev": true, + "requires": { + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + }, + "dependencies": { + "json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true + } + } + }, + "tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", + "dev": true + }, + "tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "requires": { + "tslib": "^1.8.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } + } + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1" + } + }, + "type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true + }, + "type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true + }, + "typed-array-buffer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", + "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1", + "is-typed-array": "^1.1.10" + } + }, + "typed-array-byte-length": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz", + "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "has-proto": "^1.0.1", + "is-typed-array": "^1.1.10" + } + }, + "typed-array-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz", + "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==", + "dev": true, + "requires": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "has-proto": "^1.0.1", + "is-typed-array": "^1.1.10" + } + }, + "typed-array-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", + "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "is-typed-array": "^1.1.9" + } + }, + "typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "requires": { + "is-typedarray": "^1.0.0" + } + }, + "typescript": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", + "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", + "dev": true, + "peer": true + }, + "unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + } + }, + "universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "requires": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "v8-to-istanbul": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", + "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, + "dependencies": { + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true + } + } + }, + "w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "dev": true, + "requires": { + "browser-process-hrtime": "^1.0.0" + } + }, + "w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "dev": true, + "requires": { + "xml-name-validator": "^3.0.0" + } + }, + "wait-on": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-7.0.1.tgz", + "integrity": "sha512-9AnJE9qTjRQOlTZIldAaf/da2eW0eSRSgcqq85mXQja/DW3MriHxkpODDSUEg+Gri/rKEcXUZHe+cevvYItaog==", + "dev": true, + "requires": { + "axios": "^0.27.2", + "joi": "^17.7.0", + "lodash": "^4.17.21", + "minimist": "^1.2.7", + "rxjs": "^7.8.0" + }, + "dependencies": { + "axios": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "dev": true, + "requires": { + "follow-redirects": "^1.14.9", + "form-data": "^4.0.0" + } + }, + "form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + } + } + }, + "walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "requires": { + "makeerror": "1.0.12" + } + }, + "webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true + }, + "whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "requires": { + "iconv-lite": "0.4.24" + } + }, + "whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dev": true, + "requires": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "requires": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + } + }, + "which-typed-array": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.11.tgz", + "integrity": "sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==", + "dev": true, + "requires": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0" + } + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "dev": true, + "requires": {} + }, + "xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true + }, + "yargs": { + "version": "17.6.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", + "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", + "dev": true, + "requires": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "dependencies": { + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true + }, + "yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true + } + } +} diff --git a/sfdx/package.json b/sfdx/package.json new file mode 100644 index 0000000000..bd9a9cfe62 --- /dev/null +++ b/sfdx/package.json @@ -0,0 +1,30 @@ +{ + "name": "salesforce-app", + "private": true, + "version": "1.0.0", + "description": "Salesforce App", + "scripts": { + "test": "npm run test:unit", + "test:unit": "sfdx-lwc-jest", + "test:unit:watch": "sfdx-lwc-jest --watch", + "test:unit:debug": "sfdx-lwc-jest --debug", + "test:unit:coverage": "sfdx-lwc-jest --coverage", + "postinstall": "cd ../ && husky install ./sfdx/.husky", + "pre-commit": "./bin/pre-commit.sh" + }, + "devDependencies": { + "@lwc/eslint-plugin-lwc": "^1.1.2", + "@prettier/plugin-xml": "^2.0.1", + "@salesforce/eslint-config-lwc": "^3.2.3", + "@salesforce/eslint-plugin-aura": "^2.0.0", + "@salesforce/eslint-plugin-lightning": "^1.0.0", + "@salesforce/sfdx-lwc-jest": "^1.1.0", + "eslint": "^8.11.0", + "husky": "^8.0.3", + "eslint-plugin-import": "^2.25.4", + "eslint-plugin-jest": "^26.1.2", + "lint-staged": "^12.3.7", + "prettier": "^2.6.0", + "prettier-plugin-apex": "^1.10.0" + } +} \ No newline at end of file diff --git a/sorbet/custom/fixes.rbi b/sorbet/custom/fixes.rbi index 9a217aa90c..993ce6d4fc 100644 --- a/sorbet/custom/fixes.rbi +++ b/sorbet/custom/fixes.rbi @@ -93,13 +93,14 @@ class Date end # sorbet is having trouble dealing with the Anonymous_Delegators which are in the vcr.rbi file -class VCR - def self.configuration; end - def self.configure; end - def self.current_cassette; end - def self.eject_cassette(options={}); end - def self.insert_cassette(str, options={}); end - def self.turn_off!; end - def self.turn_on!; end - def self.turned_on?; end -end +# needed to run bundle exec srb rbi hidden-definitions +# class VCR +# def self.configuration; end +# def self.configure; end +# def self.current_cassette; end +# def self.eject_cassette(options={}); end +# def self.insert_cassette(str, options={}); end +# def self.turn_off!; end +# def self.turn_on!; end +# def self.turned_on?; end +# end diff --git a/sorbet/rbi/hidden-definitions/errors.txt b/sorbet/rbi/hidden-definitions/errors.txt index f28294304b..413333045f 100644 --- a/sorbet/rbi/hidden-definitions/errors.txt +++ b/sorbet/rbi/hidden-definitions/errors.txt @@ -12,16 +12,12 @@ # wrong constant name # wrong constant name # wrong constant name -# wrong constant name -# wrong constant name # wrong constant name # wrong constant name # wrong constant name # wrong constant name > # wrong constant name # wrong constant name -# wrong constant name -# wrong constant name # uninitialized constant ANSI::Code::BLACK # uninitialized constant ANSI::Code::BLINK # uninitialized constant ANSI::Code::BLINK_OFF @@ -234,6 +230,7 @@ # uninitialized constant ActionController::API::DEFAULT_SEND_FILE_DISPOSITION # uninitialized constant ActionController::API::DEFAULT_SEND_FILE_TYPE # uninitialized constant ActionController::API::EXCLUDE_PARAMETERS +# uninitialized constant ActionController::API::ILLEGAL_HEADER_VALUE_REGEX # uninitialized constant ActionController::API::RENDERERS # Did you mean? ActionController::Renderers # ActionController::Renderer @@ -246,6 +243,7 @@ # uninitialized constant ActionController::Base::DEFAULT_SEND_FILE_DISPOSITION # uninitialized constant ActionController::Base::DEFAULT_SEND_FILE_TYPE # uninitialized constant ActionController::Base::EXCLUDE_PARAMETERS +# uninitialized constant ActionController::Base::ILLEGAL_HEADER_VALUE_REGEX # uninitialized constant ActionController::Base::NULL_ORIGIN_MESSAGE # uninitialized constant ActionController::Base::RENDERERS # Did you mean? ActionController::Renderers @@ -276,6 +274,8 @@ # wrong constant name unpermitted_parameters # wrong constant name write_fragment # wrong constant name write_page +# wrong constant name +# wrong constant name # uninitialized constant ActionController::TestRequest::ACTION_DISPATCH_REQUEST_ID # uninitialized constant ActionController::TestRequest::BROWSER_LIKE_ACCEPTS # uninitialized constant ActionController::TestRequest::DEFAULT_PARSERS @@ -2004,6 +2004,7 @@ # uninitialized constant ActionView::TestCase::TestController::DEFAULT_SEND_FILE_DISPOSITION # uninitialized constant ActionView::TestCase::TestController::DEFAULT_SEND_FILE_TYPE # uninitialized constant ActionView::TestCase::TestController::EXCLUDE_PARAMETERS +# uninitialized constant ActionView::TestCase::TestController::ILLEGAL_HEADER_VALUE_REGEX # uninitialized constant ActionView::TestCase::TestController::MODULES # Did you mean? Module # uninitialized constant ActionView::TestCase::TestController::NULL_ORIGIN_MESSAGE @@ -2121,10 +2122,8 @@ # wrong constant name deserialize # wrong constant name serialize # wrong constant name serialize? -# undefined singleton method `instance' for `ActiveJob::Serializers::ObjectSerializer' # wrong constant name # wrong constant name deserialize -# wrong constant name instance # wrong constant name serialize # wrong constant name serialize? # wrong constant name deserialize @@ -4108,32 +4107,32 @@ # wrong constant name collection_cache_key # wrong constant name to_param # wrong constant name -# uninitialized constant #::ACTIONS +# uninitialized constant #::ACTIONS # Did you mean? ActiveRecord::InternalMetadata::ACTIONS # wrong constant name # wrong constant name # wrong constant name -# uninitialized constant #::CALLBACKS +# uninitialized constant #::CALLBACKS # Did you mean? ActiveRecord::InternalMetadata::Callbacks # ActiveRecord::Callbacks # ActiveRecord::InternalMetadata::Callback # ActiveRecord::InternalMetadata::CALLBACKS -# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CALLBACK_FILTER_TYPES # Did you mean? ActiveRecord::InternalMetadata::CALLBACK_FILTER_TYPES -# uninitialized constant #::CALL_COMPILABLE_REGEXP +# uninitialized constant #::CALL_COMPILABLE_REGEXP # Did you mean? ActiveRecord::InternalMetadata::CALL_COMPILABLE_REGEXP # wrong constant name # wrong constant name # wrong constant name -# uninitialized constant #::MAX_PASSWORD_LENGTH_ALLOWED +# uninitialized constant #::MAX_PASSWORD_LENGTH_ALLOWED # Did you mean? ActiveRecord::InternalMetadata::MAX_PASSWORD_LENGTH_ALLOWED -# uninitialized constant #::MINIMUM_TOKEN_LENGTH +# uninitialized constant #::MINIMUM_TOKEN_LENGTH # Did you mean? ActiveRecord::InternalMetadata::MINIMUM_TOKEN_LENGTH -# uninitialized constant #::NAME_COMPILABLE_REGEXP +# uninitialized constant #::NAME_COMPILABLE_REGEXP # Did you mean? ActiveRecord::InternalMetadata::NAME_COMPILABLE_REGEXP -# uninitialized constant #::RESTRICTED_CLASS_METHODS +# uninitialized constant #::RESTRICTED_CLASS_METHODS # Did you mean? ActiveRecord::InternalMetadata::RESTRICTED_CLASS_METHODS -# uninitialized constant #::UNASSIGNABLE_KEYS +# uninitialized constant #::UNASSIGNABLE_KEYS # Did you mean? ActiveRecord::InternalMetadata::UNASSIGNABLE_KEYS # uninitialized constant ActiveRecord::InternalMetadata::ActiveRecord_AssociationRelation::CLAUSE_METHODS # Did you mean? ActiveRecord::InternalMetadata::ActiveRecord_AssociationRelation::ClassMethods @@ -4156,37 +4155,37 @@ # uninitialized constant ActiveRecord::InternalMetadata::ActiveRecord_AssociationRelation::VALUE_METHODS # Did you mean? ActiveRecord::InternalMetadata::ActiveRecord_AssociationRelation::CLAUSE_METHODS # wrong constant name -# uninitialized constant #::CLAUSE_METHODS +# uninitialized constant #::CLAUSE_METHODS # Did you mean? ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::ClassMethods # ActiveRecord::InternalMetadata::ClassMethods # ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::VALUE_METHODS # ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::CLAUSE_METHODS -# uninitialized constant #::Elem -# uninitialized constant #::FROZEN_EMPTY_ARRAY +# uninitialized constant #::Elem +# uninitialized constant #::FROZEN_EMPTY_ARRAY # Did you mean? ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::FROZEN_EMPTY_HASH # ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::FROZEN_EMPTY_ARRAY -# uninitialized constant #::FROZEN_EMPTY_HASH +# uninitialized constant #::FROZEN_EMPTY_HASH # Did you mean? ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::FROZEN_EMPTY_HASH # ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::FROZEN_EMPTY_ARRAY -# uninitialized constant #::INVALID_METHODS_FOR_DELETE_ALL +# uninitialized constant #::INVALID_METHODS_FOR_DELETE_ALL # Did you mean? ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::INVALID_METHODS_FOR_DELETE_ALL -# uninitialized constant #::MULTI_VALUE_METHODS +# uninitialized constant #::MULTI_VALUE_METHODS # Did you mean? ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::MULTI_VALUE_METHODS -# uninitialized constant #::NILCLASS_STRING +# uninitialized constant #::NILCLASS_STRING # Did you mean? ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::NILCLASS_STRING -# uninitialized constant #::ONE_AS_ONE +# uninitialized constant #::ONE_AS_ONE # Did you mean? ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::ONE_AS_ONE -# uninitialized constant #::ORDER_IGNORE_MESSAGE +# uninitialized constant #::ORDER_IGNORE_MESSAGE # Did you mean? ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::ORDER_IGNORE_MESSAGE -# uninitialized constant #::SINGLE_VALUE_METHODS +# uninitialized constant #::SINGLE_VALUE_METHODS # Did you mean? ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::SINGLE_VALUE_METHODS -# uninitialized constant #::STRUCTURAL_VALUE_METHODS +# uninitialized constant #::STRUCTURAL_VALUE_METHODS # Did you mean? ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::STRUCTURAL_VALUE_METHODS -# uninitialized constant #::VALID_DIRECTIONS +# uninitialized constant #::VALID_DIRECTIONS # Did you mean? ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::VALID_DIRECTIONS -# uninitialized constant #::VALID_UNSCOPING_VALUES +# uninitialized constant #::VALID_UNSCOPING_VALUES # Did you mean? ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::VALID_UNSCOPING_VALUES -# uninitialized constant #::VALUE_METHODS +# uninitialized constant #::VALUE_METHODS # Did you mean? ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::VALUE_METHODS # ActiveRecord::InternalMetadata::ActiveRecord_Associations_CollectionProxy::CLAUSE_METHODS # wrong constant name @@ -5195,32 +5194,32 @@ # wrong constant name fk_ignore_pattern= # wrong constant name ignore_tables # wrong constant name ignore_tables= -# uninitialized constant #::ACTIONS +# uninitialized constant #::ACTIONS # Did you mean? ActiveRecord::SchemaMigration::ACTIONS # wrong constant name # wrong constant name # wrong constant name -# uninitialized constant #::CALLBACKS +# uninitialized constant #::CALLBACKS # Did you mean? ActiveRecord::SchemaMigration::Callbacks # ActiveRecord::Callbacks # ActiveRecord::SchemaMigration::Callback # ActiveRecord::SchemaMigration::CALLBACKS -# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CALLBACK_FILTER_TYPES # Did you mean? ActiveRecord::SchemaMigration::CALLBACK_FILTER_TYPES -# uninitialized constant #::CALL_COMPILABLE_REGEXP +# uninitialized constant #::CALL_COMPILABLE_REGEXP # Did you mean? ActiveRecord::SchemaMigration::CALL_COMPILABLE_REGEXP # wrong constant name # wrong constant name # wrong constant name -# uninitialized constant #::MAX_PASSWORD_LENGTH_ALLOWED +# uninitialized constant #::MAX_PASSWORD_LENGTH_ALLOWED # Did you mean? ActiveRecord::SchemaMigration::MAX_PASSWORD_LENGTH_ALLOWED -# uninitialized constant #::MINIMUM_TOKEN_LENGTH +# uninitialized constant #::MINIMUM_TOKEN_LENGTH # Did you mean? ActiveRecord::SchemaMigration::MINIMUM_TOKEN_LENGTH -# uninitialized constant #::NAME_COMPILABLE_REGEXP +# uninitialized constant #::NAME_COMPILABLE_REGEXP # Did you mean? ActiveRecord::SchemaMigration::NAME_COMPILABLE_REGEXP -# uninitialized constant #::RESTRICTED_CLASS_METHODS +# uninitialized constant #::RESTRICTED_CLASS_METHODS # Did you mean? ActiveRecord::SchemaMigration::RESTRICTED_CLASS_METHODS -# uninitialized constant #::UNASSIGNABLE_KEYS +# uninitialized constant #::UNASSIGNABLE_KEYS # Did you mean? ActiveRecord::SchemaMigration::UNASSIGNABLE_KEYS # wrong constant name version # uninitialized constant ActiveRecord::SchemaMigration::ActiveRecord_AssociationRelation::CLAUSE_METHODS @@ -5244,37 +5243,37 @@ # uninitialized constant ActiveRecord::SchemaMigration::ActiveRecord_AssociationRelation::VALUE_METHODS # Did you mean? ActiveRecord::SchemaMigration::ActiveRecord_AssociationRelation::CLAUSE_METHODS # wrong constant name -# uninitialized constant #::CLAUSE_METHODS +# uninitialized constant #::CLAUSE_METHODS # Did you mean? ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::ClassMethods # ActiveRecord::SchemaMigration::ClassMethods # ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::VALUE_METHODS # ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::CLAUSE_METHODS -# uninitialized constant #::Elem -# uninitialized constant #::FROZEN_EMPTY_ARRAY +# uninitialized constant #::Elem +# uninitialized constant #::FROZEN_EMPTY_ARRAY # Did you mean? ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::FROZEN_EMPTY_HASH # ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::FROZEN_EMPTY_ARRAY -# uninitialized constant #::FROZEN_EMPTY_HASH +# uninitialized constant #::FROZEN_EMPTY_HASH # Did you mean? ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::FROZEN_EMPTY_HASH # ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::FROZEN_EMPTY_ARRAY -# uninitialized constant #::INVALID_METHODS_FOR_DELETE_ALL +# uninitialized constant #::INVALID_METHODS_FOR_DELETE_ALL # Did you mean? ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::INVALID_METHODS_FOR_DELETE_ALL -# uninitialized constant #::MULTI_VALUE_METHODS +# uninitialized constant #::MULTI_VALUE_METHODS # Did you mean? ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::MULTI_VALUE_METHODS -# uninitialized constant #::NILCLASS_STRING +# uninitialized constant #::NILCLASS_STRING # Did you mean? ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::NILCLASS_STRING -# uninitialized constant #::ONE_AS_ONE +# uninitialized constant #::ONE_AS_ONE # Did you mean? ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::ONE_AS_ONE -# uninitialized constant #::ORDER_IGNORE_MESSAGE +# uninitialized constant #::ORDER_IGNORE_MESSAGE # Did you mean? ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::ORDER_IGNORE_MESSAGE -# uninitialized constant #::SINGLE_VALUE_METHODS +# uninitialized constant #::SINGLE_VALUE_METHODS # Did you mean? ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::SINGLE_VALUE_METHODS -# uninitialized constant #::STRUCTURAL_VALUE_METHODS +# uninitialized constant #::STRUCTURAL_VALUE_METHODS # Did you mean? ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::STRUCTURAL_VALUE_METHODS -# uninitialized constant #::VALID_DIRECTIONS +# uninitialized constant #::VALID_DIRECTIONS # Did you mean? ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::VALID_DIRECTIONS -# uninitialized constant #::VALID_UNSCOPING_VALUES +# uninitialized constant #::VALID_UNSCOPING_VALUES # Did you mean? ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::VALID_UNSCOPING_VALUES -# uninitialized constant #::VALUE_METHODS +# uninitialized constant #::VALUE_METHODS # Did you mean? ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::VALUE_METHODS # ActiveRecord::SchemaMigration::ActiveRecord_Associations_CollectionProxy::CLAUSE_METHODS # wrong constant name @@ -5970,6 +5969,9 @@ # uninitialized constant ActiveSupport::NumberHelper::NumberToDelimitedConverter::DEFAULTS # uninitialized constant ActiveSupport::NumberHelper::NumberToHumanConverter::DEFAULTS # uninitialized constant ActiveSupport::NumberHelper::NumberToHumanSizeConverter::DEFAULTS +# uninitialized constant ActiveSupport::SafeBuffer::BLANK_RE +# uninitialized constant ActiveSupport::SafeBuffer::ENCODED_BLANKS +# wrong constant name bytesplice # wrong constant name # wrong constant name secure_compare! # wrong constant name @@ -5985,25 +5987,41 @@ # uninitialized constant ActiveSupport::TestCase::TEARDOWN_METHODS # uninitialized constant ActiveSupport::TestCase::UNDEFINED # uninitialized constant ActiveSupport::TestCase::UNTRACKED +# wrong constant name _deprecated_unicode_normalize_kc +# wrong constant name encode_with # wrong constant name force_utf8_encoding_if_needed +# wrong constant name init_with # wrong constant name connect_internal +# uninitialized constant Api::Controller::CACHED_CREDENTIAL_STATUS_TTL # uninitialized constant Api::Controller::CALLBACK_FILTER_TYPES # uninitialized constant Api::Controller::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant Api::Controller::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? Api::Controller::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant Api::Controller::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant Api::Controller::CONNECTOR_SETTING_POLLING_ENABLED # uninitialized constant Api::Controller::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # Did you mean? Api::Controller::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # uninitialized constant Api::Controller::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # Did you mean? Api::Controller::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant Api::Controller::CONNECTOR_SETTING_SYNC_START_DATE # uninitialized constant Api::Controller::CPQ_AMENDED_CONTRACT +# uninitialized constant Api::Controller::CPQ_AMENDED_CONTRACT_LOOKUP # uninitialized constant Api::Controller::CPQ_CONSUMPTION_RATE # Did you mean? Api::Controller::SF_CONSUMPTION_RATE # uninitialized constant Api::Controller::CPQ_CONSUMPTION_SCHEDULE # Did you mean? Api::Controller::SF_CONSUMPTION_SCHEDULE +# uninitialized constant Api::Controller::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? Api::Controller::CPQ_QUOTE_SUBSCRIPTION_TERM +# Api::Controller::CPQ_PRODUCT_SUBSCRIPTION_TYPE # uninitialized constant Api::Controller::CPQ_PRODUCT_BILLING_TYPE # uninitialized constant Api::Controller::CPQ_PRODUCT_CHARGE_TYPE # uninitialized constant Api::Controller::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? Api::Controller::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant Api::Controller::CPQ_PRORATE_MULTIPLIER # uninitialized constant Api::Controller::CPQ_QUOTE # uninitialized constant Api::Controller::CPQ_QUOTE_BILLING_FREQUENCY # uninitialized constant Api::Controller::CPQ_QUOTE_LINE +# uninitialized constant Api::Controller::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM # uninitialized constant Api::Controller::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # uninitialized constant Api::Controller::CPQ_QUOTE_LINE_PRODUCT # uninitialized constant Api::Controller::CPQ_QUOTE_OPPORTUNITY @@ -6012,22 +6030,33 @@ # uninitialized constant Api::Controller::CPQ_QUOTE_PRIMARY # uninitialized constant Api::Controller::CPQ_QUOTE_PRIMARY_CONTACT # uninitialized constant Api::Controller::CPQ_QUOTE_QUANTITY +# uninitialized constant Api::Controller::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? Api::Controller::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# Api::Controller::CPQ_QUOTE_SUBSCRIPTION_TERM +# Api::Controller::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant Api::Controller::CPQ_QUOTE_SUBSCRIPTION_PRICING # Did you mean? Api::Controller::CPQ_QUOTE_SUBSCRIPTION_TERM +# Api::Controller::CPQ_QUOTE_SUBSCRIPTION_END_DATE # uninitialized constant Api::Controller::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# Did you mean? Api::Controller::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? Api::Controller::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Api::Controller::CPQ_QUOTE_SUBSCRIPTION_TERM # Api::Controller::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant Api::Controller::CPQ_QUOTE_SUBSCRIPTION_TERM -# Did you mean? Api::Controller::CPQ_QUOTE_SUBSCRIPTION_PRICING +# Did you mean? Api::Controller::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Api::Controller::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant Api::Controller::DAYS_IN_YEAR # uninitialized constant Api::Controller::DEFAULT_PROTECTED_INSTANCE_VARIABLES # uninitialized constant Api::Controller::DEFAULT_SEND_FILE_DISPOSITION # uninitialized constant Api::Controller::DEFAULT_SEND_FILE_TYPE # uninitialized constant Api::Controller::EXCLUDE_PARAMETERS # uninitialized constant Api::Controller::GENERIC_STRIPE_ID +# uninitialized constant Api::Controller::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant Api::Controller::ILLEGAL_HEADER_VALUE_REGEX # uninitialized constant Api::Controller::MAX_SF_RETRY_ATTEMPTS # uninitialized constant Api::Controller::MAX_STRIPE_PRICE_PRECISION # uninitialized constant Api::Controller::MODULES # Did you mean? Module +# uninitialized constant Api::Controller::MONTHS_IN_YEAR # uninitialized constant Api::Controller::ORDER_INVOICE_PAYMENT_LINK # uninitialized constant Api::Controller::ORDER_LINE_SKIP # uninitialized constant Api::Controller::ORDER_SF_STRIPE_COUPON @@ -6051,6 +6080,7 @@ # Did you mean? Api::Controller::SALESFORCE_ACCOUNT_ID_HEADER # uninitialized constant Api::Controller::SALESFORCE_PACKAGE_NAMESPACE_HEADER # Did you mean? Api::Controller::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant Api::Controller::SECONDS_IN_DAY # uninitialized constant Api::Controller::SF_ACCOUNT # uninitialized constant Api::Controller::SF_CONSUMPTION_RATE # Did you mean? Api::Controller::CPQ_CONSUMPTION_RATE @@ -6064,42 +6094,67 @@ # Did you mean? Api::Controller::SF_CONTRACT_QUOTE_ID # uninitialized constant Api::Controller::SF_CONTRACT_QUOTE_ID # Did you mean? Api::Controller::SF_CONTRACT_ORDER_ID +# uninitialized constant Api::Controller::SF_CURRENCY_ISO_CODE # uninitialized constant Api::Controller::SF_ID # uninitialized constant Api::Controller::SF_LAST_MODIFIED_DATE # uninitialized constant Api::Controller::SF_OPPORTUNITY +# uninitialized constant Api::Controller::SF_OPPORTUNITY_CLOSE_DATE # uninitialized constant Api::Controller::SF_ORDER # uninitialized constant Api::Controller::SF_ORDER_ACCOUNT +# uninitialized constant Api::Controller::SF_ORDER_ACTIVATED_DATE # uninitialized constant Api::Controller::SF_ORDER_CONTRACTED +# uninitialized constant Api::Controller::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM # uninitialized constant Api::Controller::SF_ORDER_ITEM -# Did you mean? Api::Controller::SF_ORDER_QUOTE +# Did you mean? Api::Controller::SF_ORDER_TYPE +# Api::Controller::SF_ORDER_QUOTE # uninitialized constant Api::Controller::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant Api::Controller::SF_ORDER_ITEM_TOTAL_PRICE # uninitialized constant Api::Controller::SF_ORDER_QUOTE +# Did you mean? Api::Controller::SF_ORDER_TYPE +# Api::Controller::SF_ORDER_ITEM +# uninitialized constant Api::Controller::SF_ORDER_TYPE # Did you mean? Api::Controller::SF_ORDER_ITEM +# Api::Controller::SF_ORDER_QUOTE # uninitialized constant Api::Controller::SF_PRICEBOOK # uninitialized constant Api::Controller::SF_PRICEBOOK_ENTRY # uninitialized constant Api::Controller::SF_PRODUCT # uninitialized constant Api::Controller::SF_PRODUCT_CONSUMPTION_SCHEDULE # Did you mean? Api::Controller::SF_CONSUMPTION_SCHEDULE +# uninitialized constant Api::Controller::SKIP_PAST_INITIAL_INVOICES # uninitialized constant Api::Controller::SYNC_RECORD +# uninitialized constant Api::Controller::TERMINATION_METADATA_PREFIX # wrong constant name log # uninitialized constant ApplicationController::AUTHENTICITY_TOKEN_LENGTH +# uninitialized constant ApplicationController::CACHED_CREDENTIAL_STATUS_TTL # uninitialized constant ApplicationController::CALLBACK_FILTER_TYPES # uninitialized constant ApplicationController::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant ApplicationController::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? ApplicationController::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant ApplicationController::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant ApplicationController::CONNECTOR_SETTING_POLLING_ENABLED # uninitialized constant ApplicationController::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # Did you mean? ApplicationController::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # uninitialized constant ApplicationController::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # Did you mean? ApplicationController::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant ApplicationController::CONNECTOR_SETTING_SYNC_START_DATE # uninitialized constant ApplicationController::CPQ_AMENDED_CONTRACT +# uninitialized constant ApplicationController::CPQ_AMENDED_CONTRACT_LOOKUP # uninitialized constant ApplicationController::CPQ_CONSUMPTION_RATE # Did you mean? ApplicationController::SF_CONSUMPTION_RATE # uninitialized constant ApplicationController::CPQ_CONSUMPTION_SCHEDULE # Did you mean? ApplicationController::SF_CONSUMPTION_SCHEDULE +# uninitialized constant ApplicationController::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? ApplicationController::CPQ_QUOTE_SUBSCRIPTION_TERM +# ApplicationController::CPQ_PRODUCT_SUBSCRIPTION_TYPE # uninitialized constant ApplicationController::CPQ_PRODUCT_BILLING_TYPE # uninitialized constant ApplicationController::CPQ_PRODUCT_CHARGE_TYPE # uninitialized constant ApplicationController::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? ApplicationController::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant ApplicationController::CPQ_PRORATE_MULTIPLIER # uninitialized constant ApplicationController::CPQ_QUOTE # uninitialized constant ApplicationController::CPQ_QUOTE_BILLING_FREQUENCY # uninitialized constant ApplicationController::CPQ_QUOTE_LINE +# uninitialized constant ApplicationController::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM # uninitialized constant ApplicationController::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # uninitialized constant ApplicationController::CPQ_QUOTE_LINE_PRODUCT # uninitialized constant ApplicationController::CPQ_QUOTE_OPPORTUNITY @@ -6108,22 +6163,33 @@ # uninitialized constant ApplicationController::CPQ_QUOTE_PRIMARY # uninitialized constant ApplicationController::CPQ_QUOTE_PRIMARY_CONTACT # uninitialized constant ApplicationController::CPQ_QUOTE_QUANTITY +# uninitialized constant ApplicationController::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? ApplicationController::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# ApplicationController::CPQ_QUOTE_SUBSCRIPTION_TERM +# ApplicationController::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant ApplicationController::CPQ_QUOTE_SUBSCRIPTION_PRICING # Did you mean? ApplicationController::CPQ_QUOTE_SUBSCRIPTION_TERM +# ApplicationController::CPQ_QUOTE_SUBSCRIPTION_END_DATE # uninitialized constant ApplicationController::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# Did you mean? ApplicationController::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? ApplicationController::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# ApplicationController::CPQ_QUOTE_SUBSCRIPTION_TERM # ApplicationController::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant ApplicationController::CPQ_QUOTE_SUBSCRIPTION_TERM -# Did you mean? ApplicationController::CPQ_QUOTE_SUBSCRIPTION_PRICING +# Did you mean? ApplicationController::CPQ_DEFAULT_SUBSCRIPTION_TERM +# ApplicationController::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant ApplicationController::DAYS_IN_YEAR # uninitialized constant ApplicationController::DEFAULT_PROTECTED_INSTANCE_VARIABLES # uninitialized constant ApplicationController::DEFAULT_SEND_FILE_DISPOSITION # uninitialized constant ApplicationController::DEFAULT_SEND_FILE_TYPE # uninitialized constant ApplicationController::EXCLUDE_PARAMETERS # uninitialized constant ApplicationController::GENERIC_STRIPE_ID +# uninitialized constant ApplicationController::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant ApplicationController::ILLEGAL_HEADER_VALUE_REGEX # uninitialized constant ApplicationController::MAX_SF_RETRY_ATTEMPTS # uninitialized constant ApplicationController::MAX_STRIPE_PRICE_PRECISION # uninitialized constant ApplicationController::MODULES # Did you mean? Module +# uninitialized constant ApplicationController::MONTHS_IN_YEAR # uninitialized constant ApplicationController::NULL_ORIGIN_MESSAGE # uninitialized constant ApplicationController::ORDER_INVOICE_PAYMENT_LINK # uninitialized constant ApplicationController::ORDER_LINE_SKIP @@ -6149,6 +6215,7 @@ # Did you mean? ApplicationController::SALESFORCE_ACCOUNT_ID_HEADER # uninitialized constant ApplicationController::SALESFORCE_PACKAGE_NAMESPACE_HEADER # Did you mean? ApplicationController::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant ApplicationController::SECONDS_IN_DAY # uninitialized constant ApplicationController::SF_ACCOUNT # uninitialized constant ApplicationController::SF_CONSUMPTION_RATE # Did you mean? ApplicationController::CPQ_CONSUMPTION_RATE @@ -6162,23 +6229,35 @@ # Did you mean? ApplicationController::SF_CONTRACT_QUOTE_ID # uninitialized constant ApplicationController::SF_CONTRACT_QUOTE_ID # Did you mean? ApplicationController::SF_CONTRACT_ORDER_ID +# uninitialized constant ApplicationController::SF_CURRENCY_ISO_CODE # uninitialized constant ApplicationController::SF_ID # uninitialized constant ApplicationController::SF_LAST_MODIFIED_DATE # uninitialized constant ApplicationController::SF_OPPORTUNITY +# uninitialized constant ApplicationController::SF_OPPORTUNITY_CLOSE_DATE # uninitialized constant ApplicationController::SF_ORDER # uninitialized constant ApplicationController::SF_ORDER_ACCOUNT +# uninitialized constant ApplicationController::SF_ORDER_ACTIVATED_DATE # uninitialized constant ApplicationController::SF_ORDER_CONTRACTED +# uninitialized constant ApplicationController::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM # uninitialized constant ApplicationController::SF_ORDER_ITEM -# Did you mean? ApplicationController::SF_ORDER_QUOTE +# Did you mean? ApplicationController::SF_ORDER_TYPE +# ApplicationController::SF_ORDER_QUOTE # uninitialized constant ApplicationController::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant ApplicationController::SF_ORDER_ITEM_TOTAL_PRICE # uninitialized constant ApplicationController::SF_ORDER_QUOTE +# Did you mean? ApplicationController::SF_ORDER_TYPE +# ApplicationController::SF_ORDER_ITEM +# uninitialized constant ApplicationController::SF_ORDER_TYPE # Did you mean? ApplicationController::SF_ORDER_ITEM +# ApplicationController::SF_ORDER_QUOTE # uninitialized constant ApplicationController::SF_PRICEBOOK # uninitialized constant ApplicationController::SF_PRICEBOOK_ENTRY # uninitialized constant ApplicationController::SF_PRODUCT # uninitialized constant ApplicationController::SF_PRODUCT_CONSUMPTION_SCHEDULE # Did you mean? ApplicationController::SF_CONSUMPTION_SCHEDULE +# uninitialized constant ApplicationController::SKIP_PAST_INITIAL_INVOICES # uninitialized constant ApplicationController::SYNC_RECORD +# uninitialized constant ApplicationController::TERMINATION_METADATA_PREFIX # wrong constant name log # wrong constant name # wrong constant name @@ -7163,6 +7242,7 @@ # wrong constant name stub_responses # wrong constant name # wrong constant name credentials +# wrong constant name expiration # wrong constant name set? # wrong constant name # wrong constant name initialize @@ -8054,6 +8134,7 @@ # wrong constant name # wrong constant name # wrong constant name +# wrong constant name # wrong constant name # wrong constant name # wrong constant name @@ -8153,6 +8234,20 @@ # wrong constant name # wrong constant name # wrong constant name +# wrong constant name +# wrong constant name add_handlers +# wrong constant name validate_disable_request_compression_input +# wrong constant name validate_request_min_compression_size_bytes_input +# wrong constant name +# wrong constant name +# wrong constant name last_chunk +# wrong constant name write +# wrong constant name +# wrong constant name initialize +# wrong constant name read +# wrong constant name +# wrong constant name +# wrong constant name # wrong constant name # wrong constant name # wrong constant name @@ -8236,9 +8331,13 @@ # wrong constant name # wrong constant name # wrong constant name +# wrong constant name # wrong constant name set_user_agent +# wrong constant name initialize +# wrong constant name # wrong constant name # wrong constant name +# wrong constant name feature # wrong constant name # uninitialized constant Aws::ProcessCredentials::ASYNC_EXPIRATION_LENGTH # Did you mean? Aws::ProcessCredentials::SYNC_EXPIRATION_LENGTH @@ -8302,7 +8401,6 @@ # wrong constant name # wrong constant name # wrong constant name credentials -# wrong constant name expiration # wrong constant name initialize # wrong constant name refresh! # wrong constant name @@ -8741,6 +8839,7 @@ # wrong constant name # wrong constant name # wrong constant name +# wrong constant name # wrong constant name # wrong constant name # wrong constant name @@ -8775,12 +8874,14 @@ # wrong constant name # wrong constant name # wrong constant name +# wrong constant name # wrong constant name adaptive_retry_wait_to_fill # wrong constant name assume_role_credentials_from_config # wrong constant name assume_role_web_identity_credentials_from_config # wrong constant name ca_bundle # wrong constant name config_enabled? # wrong constant name config_path +# wrong constant name configured_endpoint # wrong constant name correct_clock_skew # wrong constant name credential_process # wrong constant name credentials @@ -8790,19 +8891,23 @@ # wrong constant name csm_host # wrong constant name csm_port # wrong constant name defaults_mode +# wrong constant name disable_request_compression # wrong constant name ec2_metadata_service_endpoint # wrong constant name ec2_metadata_service_endpoint_mode # wrong constant name endpoint_discovery_enabled # wrong constant name fresh +# wrong constant name ignore_configured_endpoint_urls # wrong constant name initialize # wrong constant name loadable? # wrong constant name max_attempts # wrong constant name profile_name # wrong constant name region +# wrong constant name request_min_compression_size_bytes # wrong constant name retry_mode # wrong constant name s3_disable_multiregion_access_points # wrong constant name s3_us_east_1_regional_endpoint # wrong constant name s3_use_arn_region +# wrong constant name sdk_ua_app_id # wrong constant name sso_credentials_from_config # wrong constant name sso_token_from_config # wrong constant name sts_regional_endpoints @@ -9057,7 +9162,6 @@ # wrong constant name partitions # wrong constant name shared_config # wrong constant name use_bundled_cert! -# wrong constant name # wrong constant name initialize # wrong constant name initialize # wrong constant name to_a @@ -9071,8 +9175,8 @@ # uninitialized constant BigDecimal::PETABYTE # Did you mean? BigDecimal::TERABYTE # uninitialized constant BigDecimal::TERABYTE -# Did you mean? BigDecimal::EXABYTE -# BigDecimal::PETABYTE +# Did you mean? BigDecimal::PETABYTE +# BigDecimal::EXABYTE # wrong constant name clone # wrong constant name to_digits # wrong constant name interpret_loosely @@ -10189,12 +10293,12 @@ # Did you mean? Bundler::URI::SCHEME # uninitialized constant Bundler::URI::FTP::TBLDECWWWCOMP_ # Did you mean? Bundler::URI::FTP::TBLENCWWWCOMP_ -# Bundler::URI::TBLDECWWWCOMP_ # Bundler::URI::TBLENCWWWCOMP_ +# Bundler::URI::TBLDECWWWCOMP_ # uninitialized constant Bundler::URI::FTP::TBLENCWWWCOMP_ # Did you mean? Bundler::URI::FTP::TBLDECWWWCOMP_ -# Bundler::URI::TBLDECWWWCOMP_ # Bundler::URI::TBLENCWWWCOMP_ +# Bundler::URI::TBLDECWWWCOMP_ # uninitialized constant Bundler::URI::FTP::UNSAFE # Did you mean? Bundler::URI::UNSAFE # uninitialized constant Bundler::URI::FTP::URI_REF @@ -10253,12 +10357,12 @@ # Did you mean? Bundler::URI::SCHEME # uninitialized constant Bundler::URI::File::TBLDECWWWCOMP_ # Did you mean? Bundler::URI::File::TBLENCWWWCOMP_ -# Bundler::URI::TBLDECWWWCOMP_ # Bundler::URI::TBLENCWWWCOMP_ +# Bundler::URI::TBLDECWWWCOMP_ # uninitialized constant Bundler::URI::File::TBLENCWWWCOMP_ # Did you mean? Bundler::URI::File::TBLDECWWWCOMP_ -# Bundler::URI::TBLDECWWWCOMP_ # Bundler::URI::TBLENCWWWCOMP_ +# Bundler::URI::TBLDECWWWCOMP_ # uninitialized constant Bundler::URI::File::UNSAFE # Did you mean? Bundler::URI::UNSAFE # uninitialized constant Bundler::URI::File::URI_REF @@ -10320,12 +10424,12 @@ # Did you mean? Bundler::URI::SCHEME # uninitialized constant Bundler::URI::Generic::TBLDECWWWCOMP_ # Did you mean? Bundler::URI::Generic::TBLENCWWWCOMP_ -# Bundler::URI::TBLDECWWWCOMP_ # Bundler::URI::TBLENCWWWCOMP_ +# Bundler::URI::TBLDECWWWCOMP_ # uninitialized constant Bundler::URI::Generic::TBLENCWWWCOMP_ # Did you mean? Bundler::URI::Generic::TBLDECWWWCOMP_ -# Bundler::URI::TBLDECWWWCOMP_ # Bundler::URI::TBLENCWWWCOMP_ +# Bundler::URI::TBLDECWWWCOMP_ # uninitialized constant Bundler::URI::Generic::UNSAFE # Did you mean? Bundler::URI::UNSAFE # uninitialized constant Bundler::URI::Generic::URI_REF @@ -10437,12 +10541,12 @@ # Did you mean? Bundler::URI::SCHEME # uninitialized constant Bundler::URI::HTTP::TBLDECWWWCOMP_ # Did you mean? Bundler::URI::HTTP::TBLENCWWWCOMP_ -# Bundler::URI::TBLDECWWWCOMP_ # Bundler::URI::TBLENCWWWCOMP_ +# Bundler::URI::TBLDECWWWCOMP_ # uninitialized constant Bundler::URI::HTTP::TBLENCWWWCOMP_ # Did you mean? Bundler::URI::HTTP::TBLDECWWWCOMP_ -# Bundler::URI::TBLDECWWWCOMP_ # Bundler::URI::TBLENCWWWCOMP_ +# Bundler::URI::TBLDECWWWCOMP_ # uninitialized constant Bundler::URI::HTTP::UNSAFE # Did you mean? Bundler::URI::UNSAFE # uninitialized constant Bundler::URI::HTTP::URI_REF @@ -10499,12 +10603,12 @@ # Did you mean? Bundler::URI::SCHEME # uninitialized constant Bundler::URI::HTTPS::TBLDECWWWCOMP_ # Did you mean? Bundler::URI::HTTPS::TBLENCWWWCOMP_ -# Bundler::URI::TBLDECWWWCOMP_ # Bundler::URI::TBLENCWWWCOMP_ +# Bundler::URI::TBLDECWWWCOMP_ # uninitialized constant Bundler::URI::HTTPS::TBLENCWWWCOMP_ # Did you mean? Bundler::URI::HTTPS::TBLDECWWWCOMP_ -# Bundler::URI::TBLDECWWWCOMP_ # Bundler::URI::TBLENCWWWCOMP_ +# Bundler::URI::TBLDECWWWCOMP_ # uninitialized constant Bundler::URI::HTTPS::UNSAFE # Did you mean? Bundler::URI::UNSAFE # uninitialized constant Bundler::URI::HTTPS::URI_REF @@ -10561,12 +10665,12 @@ # Did you mean? Bundler::URI::SCHEME # uninitialized constant Bundler::URI::LDAP::TBLDECWWWCOMP_ # Did you mean? Bundler::URI::LDAP::TBLENCWWWCOMP_ -# Bundler::URI::TBLDECWWWCOMP_ # Bundler::URI::TBLENCWWWCOMP_ +# Bundler::URI::TBLDECWWWCOMP_ # uninitialized constant Bundler::URI::LDAP::TBLENCWWWCOMP_ # Did you mean? Bundler::URI::LDAP::TBLDECWWWCOMP_ -# Bundler::URI::TBLDECWWWCOMP_ # Bundler::URI::TBLENCWWWCOMP_ +# Bundler::URI::TBLDECWWWCOMP_ # uninitialized constant Bundler::URI::LDAP::UNSAFE # Did you mean? Bundler::URI::UNSAFE # uninitialized constant Bundler::URI::LDAP::URI_REF @@ -10646,12 +10750,12 @@ # Did you mean? Bundler::URI::LDAPS::SCOPE_ONE # uninitialized constant Bundler::URI::LDAPS::TBLDECWWWCOMP_ # Did you mean? Bundler::URI::LDAPS::TBLENCWWWCOMP_ -# Bundler::URI::TBLDECWWWCOMP_ # Bundler::URI::TBLENCWWWCOMP_ +# Bundler::URI::TBLDECWWWCOMP_ # uninitialized constant Bundler::URI::LDAPS::TBLENCWWWCOMP_ # Did you mean? Bundler::URI::LDAPS::TBLDECWWWCOMP_ -# Bundler::URI::TBLDECWWWCOMP_ # Bundler::URI::TBLENCWWWCOMP_ +# Bundler::URI::TBLDECWWWCOMP_ # uninitialized constant Bundler::URI::LDAPS::UNSAFE # Did you mean? Bundler::URI::UNSAFE # uninitialized constant Bundler::URI::LDAPS::URI_REF @@ -10706,12 +10810,12 @@ # Did you mean? Bundler::URI::SCHEME # uninitialized constant Bundler::URI::MailTo::TBLDECWWWCOMP_ # Did you mean? Bundler::URI::MailTo::TBLENCWWWCOMP_ -# Bundler::URI::TBLDECWWWCOMP_ # Bundler::URI::TBLENCWWWCOMP_ +# Bundler::URI::TBLDECWWWCOMP_ # uninitialized constant Bundler::URI::MailTo::TBLENCWWWCOMP_ # Did you mean? Bundler::URI::MailTo::TBLDECWWWCOMP_ -# Bundler::URI::TBLDECWWWCOMP_ # Bundler::URI::TBLENCWWWCOMP_ +# Bundler::URI::TBLDECWWWCOMP_ # uninitialized constant Bundler::URI::MailTo::UNSAFE # Did you mean? Bundler::URI::UNSAFE # uninitialized constant Bundler::URI::MailTo::URI_REF @@ -11012,22 +11116,35 @@ # wrong constant name mutex_owned_per_thread? # uninitialized constant Continuation # uninitialized constant Continuation +# uninitialized constant ControllerHelpers::CACHED_CREDENTIAL_STATUS_TTL # uninitialized constant ControllerHelpers::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant ControllerHelpers::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? ControllerHelpers::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant ControllerHelpers::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant ControllerHelpers::CONNECTOR_SETTING_POLLING_ENABLED # uninitialized constant ControllerHelpers::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # Did you mean? ControllerHelpers::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # uninitialized constant ControllerHelpers::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # Did you mean? ControllerHelpers::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant ControllerHelpers::CONNECTOR_SETTING_SYNC_START_DATE # uninitialized constant ControllerHelpers::CPQ_AMENDED_CONTRACT +# uninitialized constant ControllerHelpers::CPQ_AMENDED_CONTRACT_LOOKUP # uninitialized constant ControllerHelpers::CPQ_CONSUMPTION_RATE # Did you mean? ControllerHelpers::SF_CONSUMPTION_RATE # uninitialized constant ControllerHelpers::CPQ_CONSUMPTION_SCHEDULE # Did you mean? ControllerHelpers::SF_CONSUMPTION_SCHEDULE +# uninitialized constant ControllerHelpers::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? ControllerHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM +# ControllerHelpers::CPQ_PRODUCT_SUBSCRIPTION_TYPE # uninitialized constant ControllerHelpers::CPQ_PRODUCT_BILLING_TYPE # uninitialized constant ControllerHelpers::CPQ_PRODUCT_CHARGE_TYPE # uninitialized constant ControllerHelpers::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? ControllerHelpers::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant ControllerHelpers::CPQ_PRORATE_MULTIPLIER # uninitialized constant ControllerHelpers::CPQ_QUOTE # uninitialized constant ControllerHelpers::CPQ_QUOTE_BILLING_FREQUENCY # uninitialized constant ControllerHelpers::CPQ_QUOTE_LINE +# uninitialized constant ControllerHelpers::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM # uninitialized constant ControllerHelpers::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # uninitialized constant ControllerHelpers::CPQ_QUOTE_LINE_PRODUCT # uninitialized constant ControllerHelpers::CPQ_QUOTE_OPPORTUNITY @@ -11036,16 +11153,26 @@ # uninitialized constant ControllerHelpers::CPQ_QUOTE_PRIMARY # uninitialized constant ControllerHelpers::CPQ_QUOTE_PRIMARY_CONTACT # uninitialized constant ControllerHelpers::CPQ_QUOTE_QUANTITY +# uninitialized constant ControllerHelpers::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? ControllerHelpers::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# ControllerHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM +# ControllerHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant ControllerHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING # Did you mean? ControllerHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM +# ControllerHelpers::CPQ_QUOTE_SUBSCRIPTION_END_DATE # uninitialized constant ControllerHelpers::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# Did you mean? ControllerHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? ControllerHelpers::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# ControllerHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM # ControllerHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant ControllerHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM -# Did you mean? ControllerHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING +# Did you mean? ControllerHelpers::CPQ_DEFAULT_SUBSCRIPTION_TERM +# ControllerHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant ControllerHelpers::DAYS_IN_YEAR # uninitialized constant ControllerHelpers::GENERIC_STRIPE_ID +# uninitialized constant ControllerHelpers::GENERIC_STRIPE_REVENUE_CONTRACT_ID # uninitialized constant ControllerHelpers::MAX_SF_RETRY_ATTEMPTS # uninitialized constant ControllerHelpers::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant ControllerHelpers::MONTHS_IN_YEAR # uninitialized constant ControllerHelpers::ORDER_INVOICE_PAYMENT_LINK # uninitialized constant ControllerHelpers::ORDER_LINE_SKIP # uninitialized constant ControllerHelpers::ORDER_SF_STRIPE_COUPON @@ -11067,6 +11194,7 @@ # Did you mean? ControllerHelpers::SALESFORCE_ACCOUNT_ID_HEADER # uninitialized constant ControllerHelpers::SALESFORCE_PACKAGE_NAMESPACE_HEADER # Did you mean? ControllerHelpers::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant ControllerHelpers::SECONDS_IN_DAY # uninitialized constant ControllerHelpers::SF_ACCOUNT # uninitialized constant ControllerHelpers::SF_CONSUMPTION_RATE # Did you mean? ControllerHelpers::CPQ_CONSUMPTION_RATE @@ -11080,41 +11208,88 @@ # Did you mean? ControllerHelpers::SF_CONTRACT_QUOTE_ID # uninitialized constant ControllerHelpers::SF_CONTRACT_QUOTE_ID # Did you mean? ControllerHelpers::SF_CONTRACT_ORDER_ID +# uninitialized constant ControllerHelpers::SF_CURRENCY_ISO_CODE # uninitialized constant ControllerHelpers::SF_ID # uninitialized constant ControllerHelpers::SF_LAST_MODIFIED_DATE # uninitialized constant ControllerHelpers::SF_OPPORTUNITY +# uninitialized constant ControllerHelpers::SF_OPPORTUNITY_CLOSE_DATE # uninitialized constant ControllerHelpers::SF_ORDER # uninitialized constant ControllerHelpers::SF_ORDER_ACCOUNT +# uninitialized constant ControllerHelpers::SF_ORDER_ACTIVATED_DATE # uninitialized constant ControllerHelpers::SF_ORDER_CONTRACTED +# uninitialized constant ControllerHelpers::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM # uninitialized constant ControllerHelpers::SF_ORDER_ITEM -# Did you mean? ControllerHelpers::SF_ORDER_QUOTE +# Did you mean? ControllerHelpers::SF_ORDER_TYPE +# ControllerHelpers::SF_ORDER_QUOTE # uninitialized constant ControllerHelpers::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant ControllerHelpers::SF_ORDER_ITEM_TOTAL_PRICE # uninitialized constant ControllerHelpers::SF_ORDER_QUOTE +# Did you mean? ControllerHelpers::SF_ORDER_TYPE +# ControllerHelpers::SF_ORDER_ITEM +# uninitialized constant ControllerHelpers::SF_ORDER_TYPE # Did you mean? ControllerHelpers::SF_ORDER_ITEM +# ControllerHelpers::SF_ORDER_QUOTE # uninitialized constant ControllerHelpers::SF_PRICEBOOK # uninitialized constant ControllerHelpers::SF_PRICEBOOK_ENTRY # uninitialized constant ControllerHelpers::SF_PRODUCT # uninitialized constant ControllerHelpers::SF_PRODUCT_CONSUMPTION_SCHEDULE # Did you mean? ControllerHelpers::SF_CONSUMPTION_SCHEDULE +# uninitialized constant ControllerHelpers::SKIP_PAST_INITIAL_INVOICES # uninitialized constant ControllerHelpers::SYNC_RECORD +# uninitialized constant ControllerHelpers::TERMINATION_METADATA_PREFIX # uninitialized constant Coverage # uninitialized constant Coverage +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name convert_json_to_yaml +# wrong constant name format_dates +# wrong constant name parse +# wrong constant name parser_exceptions +# wrong constant name unescape +# wrong constant name +# wrong constant name +# wrong constant name parse +# wrong constant name snake_case +# wrong constant name to_xml_attributes +# wrong constant name +# wrong constant name +# wrong constant name parse +# wrong constant name parser +# wrong constant name parser= +# wrong constant name +# uninitialized constant Critic::CommonHelpers::CACHED_CREDENTIAL_STATUS_TTL # uninitialized constant Critic::CommonHelpers::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant Critic::CommonHelpers::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? Critic::CommonHelpers::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant Critic::CommonHelpers::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant Critic::CommonHelpers::CONNECTOR_SETTING_POLLING_ENABLED # uninitialized constant Critic::CommonHelpers::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # Did you mean? Critic::CommonHelpers::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # uninitialized constant Critic::CommonHelpers::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # Did you mean? Critic::CommonHelpers::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant Critic::CommonHelpers::CONNECTOR_SETTING_SYNC_START_DATE # uninitialized constant Critic::CommonHelpers::CPQ_AMENDED_CONTRACT +# uninitialized constant Critic::CommonHelpers::CPQ_AMENDED_CONTRACT_LOOKUP # uninitialized constant Critic::CommonHelpers::CPQ_CONSUMPTION_RATE # Did you mean? Critic::CommonHelpers::SF_CONSUMPTION_RATE # uninitialized constant Critic::CommonHelpers::CPQ_CONSUMPTION_SCHEDULE # Did you mean? Critic::CommonHelpers::SF_CONSUMPTION_SCHEDULE +# uninitialized constant Critic::CommonHelpers::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? Critic::CommonHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM +# Critic::CommonHelpers::CPQ_PRODUCT_SUBSCRIPTION_TYPE # uninitialized constant Critic::CommonHelpers::CPQ_PRODUCT_BILLING_TYPE # uninitialized constant Critic::CommonHelpers::CPQ_PRODUCT_CHARGE_TYPE # uninitialized constant Critic::CommonHelpers::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? Critic::CommonHelpers::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant Critic::CommonHelpers::CPQ_PRORATE_MULTIPLIER # uninitialized constant Critic::CommonHelpers::CPQ_QUOTE # uninitialized constant Critic::CommonHelpers::CPQ_QUOTE_BILLING_FREQUENCY # uninitialized constant Critic::CommonHelpers::CPQ_QUOTE_LINE +# uninitialized constant Critic::CommonHelpers::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM # uninitialized constant Critic::CommonHelpers::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # uninitialized constant Critic::CommonHelpers::CPQ_QUOTE_LINE_PRODUCT # uninitialized constant Critic::CommonHelpers::CPQ_QUOTE_OPPORTUNITY @@ -11123,17 +11298,27 @@ # uninitialized constant Critic::CommonHelpers::CPQ_QUOTE_PRIMARY # uninitialized constant Critic::CommonHelpers::CPQ_QUOTE_PRIMARY_CONTACT # uninitialized constant Critic::CommonHelpers::CPQ_QUOTE_QUANTITY +# uninitialized constant Critic::CommonHelpers::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? Critic::CommonHelpers::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# Critic::CommonHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM +# Critic::CommonHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant Critic::CommonHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING # Did you mean? Critic::CommonHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM +# Critic::CommonHelpers::CPQ_QUOTE_SUBSCRIPTION_END_DATE # uninitialized constant Critic::CommonHelpers::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# Did you mean? Critic::CommonHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? Critic::CommonHelpers::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Critic::CommonHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM # Critic::CommonHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant Critic::CommonHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM -# Did you mean? Critic::CommonHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING +# Did you mean? Critic::CommonHelpers::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Critic::CommonHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant Critic::CommonHelpers::DAYS_IN_YEAR # uninitialized constant Critic::CommonHelpers::E # uninitialized constant Critic::CommonHelpers::GENERIC_STRIPE_ID +# uninitialized constant Critic::CommonHelpers::GENERIC_STRIPE_REVENUE_CONTRACT_ID # uninitialized constant Critic::CommonHelpers::MAX_SF_RETRY_ATTEMPTS # uninitialized constant Critic::CommonHelpers::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant Critic::CommonHelpers::MONTHS_IN_YEAR # uninitialized constant Critic::CommonHelpers::ORDER_INVOICE_PAYMENT_LINK # uninitialized constant Critic::CommonHelpers::ORDER_LINE_SKIP # uninitialized constant Critic::CommonHelpers::ORDER_SF_STRIPE_COUPON @@ -11155,6 +11340,7 @@ # Did you mean? Critic::CommonHelpers::SALESFORCE_ACCOUNT_ID_HEADER # uninitialized constant Critic::CommonHelpers::SALESFORCE_PACKAGE_NAMESPACE_HEADER # Did you mean? Critic::CommonHelpers::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant Critic::CommonHelpers::SECONDS_IN_DAY # uninitialized constant Critic::CommonHelpers::SF_ACCOUNT # uninitialized constant Critic::CommonHelpers::SF_CONSUMPTION_RATE # Did you mean? Critic::CommonHelpers::CPQ_CONSUMPTION_RATE @@ -11168,41 +11354,66 @@ # Did you mean? Critic::CommonHelpers::SF_CONTRACT_QUOTE_ID # uninitialized constant Critic::CommonHelpers::SF_CONTRACT_QUOTE_ID # Did you mean? Critic::CommonHelpers::SF_CONTRACT_ORDER_ID +# uninitialized constant Critic::CommonHelpers::SF_CURRENCY_ISO_CODE # uninitialized constant Critic::CommonHelpers::SF_ID # uninitialized constant Critic::CommonHelpers::SF_LAST_MODIFIED_DATE # uninitialized constant Critic::CommonHelpers::SF_OPPORTUNITY +# uninitialized constant Critic::CommonHelpers::SF_OPPORTUNITY_CLOSE_DATE # uninitialized constant Critic::CommonHelpers::SF_ORDER # uninitialized constant Critic::CommonHelpers::SF_ORDER_ACCOUNT +# uninitialized constant Critic::CommonHelpers::SF_ORDER_ACTIVATED_DATE # uninitialized constant Critic::CommonHelpers::SF_ORDER_CONTRACTED +# uninitialized constant Critic::CommonHelpers::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM # uninitialized constant Critic::CommonHelpers::SF_ORDER_ITEM -# Did you mean? Critic::CommonHelpers::SF_ORDER_QUOTE +# Did you mean? Critic::CommonHelpers::SF_ORDER_TYPE +# Critic::CommonHelpers::SF_ORDER_QUOTE # uninitialized constant Critic::CommonHelpers::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant Critic::CommonHelpers::SF_ORDER_ITEM_TOTAL_PRICE # uninitialized constant Critic::CommonHelpers::SF_ORDER_QUOTE +# Did you mean? Critic::CommonHelpers::SF_ORDER_TYPE +# Critic::CommonHelpers::SF_ORDER_ITEM +# uninitialized constant Critic::CommonHelpers::SF_ORDER_TYPE # Did you mean? Critic::CommonHelpers::SF_ORDER_ITEM +# Critic::CommonHelpers::SF_ORDER_QUOTE # uninitialized constant Critic::CommonHelpers::SF_PRICEBOOK # uninitialized constant Critic::CommonHelpers::SF_PRICEBOOK_ENTRY # uninitialized constant Critic::CommonHelpers::SF_PRODUCT # uninitialized constant Critic::CommonHelpers::SF_PRODUCT_CONSUMPTION_SCHEDULE # Did you mean? Critic::CommonHelpers::SF_CONSUMPTION_SCHEDULE +# uninitialized constant Critic::CommonHelpers::SKIP_PAST_INITIAL_INVOICES # uninitialized constant Critic::CommonHelpers::SYNC_RECORD # Did you mean? Critic::SyncRecords +# uninitialized constant Critic::CommonHelpers::TERMINATION_METADATA_PREFIX # uninitialized constant Critic::CommonHelpers::UNDEFINED +# uninitialized constant Critic::SalesforceFactory::CACHED_CREDENTIAL_STATUS_TTL # uninitialized constant Critic::SalesforceFactory::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant Critic::SalesforceFactory::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? Critic::SalesforceFactory::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant Critic::SalesforceFactory::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant Critic::SalesforceFactory::CONNECTOR_SETTING_POLLING_ENABLED # uninitialized constant Critic::SalesforceFactory::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # Did you mean? Critic::SalesforceFactory::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # uninitialized constant Critic::SalesforceFactory::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # Did you mean? Critic::SalesforceFactory::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant Critic::SalesforceFactory::CONNECTOR_SETTING_SYNC_START_DATE # uninitialized constant Critic::SalesforceFactory::CPQ_AMENDED_CONTRACT +# uninitialized constant Critic::SalesforceFactory::CPQ_AMENDED_CONTRACT_LOOKUP # uninitialized constant Critic::SalesforceFactory::CPQ_CONSUMPTION_RATE # Did you mean? Critic::SalesforceFactory::SF_CONSUMPTION_RATE # uninitialized constant Critic::SalesforceFactory::CPQ_CONSUMPTION_SCHEDULE # Did you mean? Critic::SalesforceFactory::SF_CONSUMPTION_SCHEDULE +# uninitialized constant Critic::SalesforceFactory::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? Critic::SalesforceFactory::CPQ_QUOTE_SUBSCRIPTION_TERM +# Critic::SalesforceFactory::CPQ_PRODUCT_SUBSCRIPTION_TYPE # uninitialized constant Critic::SalesforceFactory::CPQ_PRODUCT_BILLING_TYPE # uninitialized constant Critic::SalesforceFactory::CPQ_PRODUCT_CHARGE_TYPE # uninitialized constant Critic::SalesforceFactory::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? Critic::SalesforceFactory::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant Critic::SalesforceFactory::CPQ_PRORATE_MULTIPLIER # uninitialized constant Critic::SalesforceFactory::CPQ_QUOTE # uninitialized constant Critic::SalesforceFactory::CPQ_QUOTE_BILLING_FREQUENCY # uninitialized constant Critic::SalesforceFactory::CPQ_QUOTE_LINE +# uninitialized constant Critic::SalesforceFactory::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM # uninitialized constant Critic::SalesforceFactory::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # uninitialized constant Critic::SalesforceFactory::CPQ_QUOTE_LINE_PRODUCT # uninitialized constant Critic::SalesforceFactory::CPQ_QUOTE_OPPORTUNITY @@ -11211,17 +11422,27 @@ # uninitialized constant Critic::SalesforceFactory::CPQ_QUOTE_PRIMARY # uninitialized constant Critic::SalesforceFactory::CPQ_QUOTE_PRIMARY_CONTACT # uninitialized constant Critic::SalesforceFactory::CPQ_QUOTE_QUANTITY +# uninitialized constant Critic::SalesforceFactory::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? Critic::SalesforceFactory::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# Critic::SalesforceFactory::CPQ_QUOTE_SUBSCRIPTION_TERM +# Critic::SalesforceFactory::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant Critic::SalesforceFactory::CPQ_QUOTE_SUBSCRIPTION_PRICING # Did you mean? Critic::SalesforceFactory::CPQ_QUOTE_SUBSCRIPTION_TERM +# Critic::SalesforceFactory::CPQ_QUOTE_SUBSCRIPTION_END_DATE # uninitialized constant Critic::SalesforceFactory::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# Did you mean? Critic::SalesforceFactory::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? Critic::SalesforceFactory::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Critic::SalesforceFactory::CPQ_QUOTE_SUBSCRIPTION_TERM # Critic::SalesforceFactory::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant Critic::SalesforceFactory::CPQ_QUOTE_SUBSCRIPTION_TERM -# Did you mean? Critic::SalesforceFactory::CPQ_QUOTE_SUBSCRIPTION_PRICING +# Did you mean? Critic::SalesforceFactory::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Critic::SalesforceFactory::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant Critic::SalesforceFactory::DAYS_IN_YEAR # uninitialized constant Critic::SalesforceFactory::E # uninitialized constant Critic::SalesforceFactory::GENERIC_STRIPE_ID +# uninitialized constant Critic::SalesforceFactory::GENERIC_STRIPE_REVENUE_CONTRACT_ID # uninitialized constant Critic::SalesforceFactory::MAX_SF_RETRY_ATTEMPTS # uninitialized constant Critic::SalesforceFactory::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant Critic::SalesforceFactory::MONTHS_IN_YEAR # uninitialized constant Critic::SalesforceFactory::ORDER_INVOICE_PAYMENT_LINK # uninitialized constant Critic::SalesforceFactory::ORDER_LINE_SKIP # uninitialized constant Critic::SalesforceFactory::ORDER_SF_STRIPE_COUPON @@ -11243,6 +11464,7 @@ # Did you mean? Critic::SalesforceFactory::SALESFORCE_ACCOUNT_ID_HEADER # uninitialized constant Critic::SalesforceFactory::SALESFORCE_PACKAGE_NAMESPACE_HEADER # Did you mean? Critic::SalesforceFactory::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant Critic::SalesforceFactory::SECONDS_IN_DAY # uninitialized constant Critic::SalesforceFactory::SF_ACCOUNT # uninitialized constant Critic::SalesforceFactory::SF_CONSUMPTION_RATE # Did you mean? Critic::SalesforceFactory::CPQ_CONSUMPTION_RATE @@ -11256,42 +11478,67 @@ # Did you mean? Critic::SalesforceFactory::SF_CONTRACT_QUOTE_ID # uninitialized constant Critic::SalesforceFactory::SF_CONTRACT_QUOTE_ID # Did you mean? Critic::SalesforceFactory::SF_CONTRACT_ORDER_ID +# uninitialized constant Critic::SalesforceFactory::SF_CURRENCY_ISO_CODE # uninitialized constant Critic::SalesforceFactory::SF_ID # uninitialized constant Critic::SalesforceFactory::SF_LAST_MODIFIED_DATE # uninitialized constant Critic::SalesforceFactory::SF_OPPORTUNITY +# uninitialized constant Critic::SalesforceFactory::SF_OPPORTUNITY_CLOSE_DATE # uninitialized constant Critic::SalesforceFactory::SF_ORDER # uninitialized constant Critic::SalesforceFactory::SF_ORDER_ACCOUNT +# uninitialized constant Critic::SalesforceFactory::SF_ORDER_ACTIVATED_DATE # uninitialized constant Critic::SalesforceFactory::SF_ORDER_CONTRACTED +# uninitialized constant Critic::SalesforceFactory::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM # uninitialized constant Critic::SalesforceFactory::SF_ORDER_ITEM -# Did you mean? Critic::SalesforceFactory::SF_ORDER_QUOTE +# Did you mean? Critic::SalesforceFactory::SF_ORDER_TYPE +# Critic::SalesforceFactory::SF_ORDER_QUOTE # uninitialized constant Critic::SalesforceFactory::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant Critic::SalesforceFactory::SF_ORDER_ITEM_TOTAL_PRICE # uninitialized constant Critic::SalesforceFactory::SF_ORDER_QUOTE +# Did you mean? Critic::SalesforceFactory::SF_ORDER_TYPE +# Critic::SalesforceFactory::SF_ORDER_ITEM +# uninitialized constant Critic::SalesforceFactory::SF_ORDER_TYPE # Did you mean? Critic::SalesforceFactory::SF_ORDER_ITEM +# Critic::SalesforceFactory::SF_ORDER_QUOTE # uninitialized constant Critic::SalesforceFactory::SF_PRICEBOOK # uninitialized constant Critic::SalesforceFactory::SF_PRICEBOOK_ENTRY # uninitialized constant Critic::SalesforceFactory::SF_PRODUCT # uninitialized constant Critic::SalesforceFactory::SF_PRODUCT_CONSUMPTION_SCHEDULE # Did you mean? Critic::SalesforceFactory::SF_CONSUMPTION_SCHEDULE +# uninitialized constant Critic::SalesforceFactory::SKIP_PAST_INITIAL_INVOICES # uninitialized constant Critic::SalesforceFactory::SYNC_RECORD # Did you mean? Critic::SyncRecords +# uninitialized constant Critic::SalesforceFactory::TERMINATION_METADATA_PREFIX # uninitialized constant Critic::SalesforceFactory::UNDEFINED # wrong constant name log +# uninitialized constant Critic::StripeFactory::CACHED_CREDENTIAL_STATUS_TTL # uninitialized constant Critic::StripeFactory::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant Critic::StripeFactory::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? Critic::StripeFactory::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant Critic::StripeFactory::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant Critic::StripeFactory::CONNECTOR_SETTING_POLLING_ENABLED # uninitialized constant Critic::StripeFactory::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # Did you mean? Critic::StripeFactory::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # uninitialized constant Critic::StripeFactory::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # Did you mean? Critic::StripeFactory::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant Critic::StripeFactory::CONNECTOR_SETTING_SYNC_START_DATE # uninitialized constant Critic::StripeFactory::CPQ_AMENDED_CONTRACT +# uninitialized constant Critic::StripeFactory::CPQ_AMENDED_CONTRACT_LOOKUP # uninitialized constant Critic::StripeFactory::CPQ_CONSUMPTION_RATE # Did you mean? Critic::StripeFactory::SF_CONSUMPTION_RATE # uninitialized constant Critic::StripeFactory::CPQ_CONSUMPTION_SCHEDULE # Did you mean? Critic::StripeFactory::SF_CONSUMPTION_SCHEDULE +# uninitialized constant Critic::StripeFactory::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? Critic::StripeFactory::CPQ_QUOTE_SUBSCRIPTION_TERM +# Critic::StripeFactory::CPQ_PRODUCT_SUBSCRIPTION_TYPE # uninitialized constant Critic::StripeFactory::CPQ_PRODUCT_BILLING_TYPE # uninitialized constant Critic::StripeFactory::CPQ_PRODUCT_CHARGE_TYPE # uninitialized constant Critic::StripeFactory::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? Critic::StripeFactory::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant Critic::StripeFactory::CPQ_PRORATE_MULTIPLIER # uninitialized constant Critic::StripeFactory::CPQ_QUOTE # uninitialized constant Critic::StripeFactory::CPQ_QUOTE_BILLING_FREQUENCY # uninitialized constant Critic::StripeFactory::CPQ_QUOTE_LINE +# uninitialized constant Critic::StripeFactory::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM # uninitialized constant Critic::StripeFactory::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # uninitialized constant Critic::StripeFactory::CPQ_QUOTE_LINE_PRODUCT # uninitialized constant Critic::StripeFactory::CPQ_QUOTE_OPPORTUNITY @@ -11300,17 +11547,27 @@ # uninitialized constant Critic::StripeFactory::CPQ_QUOTE_PRIMARY # uninitialized constant Critic::StripeFactory::CPQ_QUOTE_PRIMARY_CONTACT # uninitialized constant Critic::StripeFactory::CPQ_QUOTE_QUANTITY +# uninitialized constant Critic::StripeFactory::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? Critic::StripeFactory::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# Critic::StripeFactory::CPQ_QUOTE_SUBSCRIPTION_TERM +# Critic::StripeFactory::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant Critic::StripeFactory::CPQ_QUOTE_SUBSCRIPTION_PRICING # Did you mean? Critic::StripeFactory::CPQ_QUOTE_SUBSCRIPTION_TERM +# Critic::StripeFactory::CPQ_QUOTE_SUBSCRIPTION_END_DATE # uninitialized constant Critic::StripeFactory::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# Did you mean? Critic::StripeFactory::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? Critic::StripeFactory::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Critic::StripeFactory::CPQ_QUOTE_SUBSCRIPTION_TERM # Critic::StripeFactory::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant Critic::StripeFactory::CPQ_QUOTE_SUBSCRIPTION_TERM -# Did you mean? Critic::StripeFactory::CPQ_QUOTE_SUBSCRIPTION_PRICING +# Did you mean? Critic::StripeFactory::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Critic::StripeFactory::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant Critic::StripeFactory::DAYS_IN_YEAR # uninitialized constant Critic::StripeFactory::E # uninitialized constant Critic::StripeFactory::GENERIC_STRIPE_ID +# uninitialized constant Critic::StripeFactory::GENERIC_STRIPE_REVENUE_CONTRACT_ID # uninitialized constant Critic::StripeFactory::MAX_SF_RETRY_ATTEMPTS # uninitialized constant Critic::StripeFactory::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant Critic::StripeFactory::MONTHS_IN_YEAR # uninitialized constant Critic::StripeFactory::ORDER_INVOICE_PAYMENT_LINK # uninitialized constant Critic::StripeFactory::ORDER_LINE_SKIP # uninitialized constant Critic::StripeFactory::ORDER_SF_STRIPE_COUPON @@ -11332,6 +11589,7 @@ # Did you mean? Critic::StripeFactory::SALESFORCE_ACCOUNT_ID_HEADER # uninitialized constant Critic::StripeFactory::SALESFORCE_PACKAGE_NAMESPACE_HEADER # Did you mean? Critic::StripeFactory::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant Critic::StripeFactory::SECONDS_IN_DAY # uninitialized constant Critic::StripeFactory::SF_ACCOUNT # uninitialized constant Critic::StripeFactory::SF_CONSUMPTION_RATE # Did you mean? Critic::StripeFactory::CPQ_CONSUMPTION_RATE @@ -11345,42 +11603,67 @@ # Did you mean? Critic::StripeFactory::SF_CONTRACT_QUOTE_ID # uninitialized constant Critic::StripeFactory::SF_CONTRACT_QUOTE_ID # Did you mean? Critic::StripeFactory::SF_CONTRACT_ORDER_ID +# uninitialized constant Critic::StripeFactory::SF_CURRENCY_ISO_CODE # uninitialized constant Critic::StripeFactory::SF_ID # uninitialized constant Critic::StripeFactory::SF_LAST_MODIFIED_DATE # uninitialized constant Critic::StripeFactory::SF_OPPORTUNITY +# uninitialized constant Critic::StripeFactory::SF_OPPORTUNITY_CLOSE_DATE # uninitialized constant Critic::StripeFactory::SF_ORDER # uninitialized constant Critic::StripeFactory::SF_ORDER_ACCOUNT +# uninitialized constant Critic::StripeFactory::SF_ORDER_ACTIVATED_DATE # uninitialized constant Critic::StripeFactory::SF_ORDER_CONTRACTED +# uninitialized constant Critic::StripeFactory::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM # uninitialized constant Critic::StripeFactory::SF_ORDER_ITEM -# Did you mean? Critic::StripeFactory::SF_ORDER_QUOTE +# Did you mean? Critic::StripeFactory::SF_ORDER_TYPE +# Critic::StripeFactory::SF_ORDER_QUOTE # uninitialized constant Critic::StripeFactory::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant Critic::StripeFactory::SF_ORDER_ITEM_TOTAL_PRICE # uninitialized constant Critic::StripeFactory::SF_ORDER_QUOTE +# Did you mean? Critic::StripeFactory::SF_ORDER_TYPE +# Critic::StripeFactory::SF_ORDER_ITEM +# uninitialized constant Critic::StripeFactory::SF_ORDER_TYPE # Did you mean? Critic::StripeFactory::SF_ORDER_ITEM +# Critic::StripeFactory::SF_ORDER_QUOTE # uninitialized constant Critic::StripeFactory::SF_PRICEBOOK # uninitialized constant Critic::StripeFactory::SF_PRICEBOOK_ENTRY # uninitialized constant Critic::StripeFactory::SF_PRODUCT # uninitialized constant Critic::StripeFactory::SF_PRODUCT_CONSUMPTION_SCHEDULE # Did you mean? Critic::StripeFactory::SF_CONSUMPTION_SCHEDULE +# uninitialized constant Critic::StripeFactory::SKIP_PAST_INITIAL_INVOICES # uninitialized constant Critic::StripeFactory::SYNC_RECORD # Did you mean? Critic::SyncRecords +# uninitialized constant Critic::StripeFactory::TERMINATION_METADATA_PREFIX # uninitialized constant Critic::StripeFactory::UNDEFINED +# uninitialized constant Critic::Unit::SanitizerTest::CACHED_CREDENTIAL_STATUS_TTL # uninitialized constant Critic::Unit::SanitizerTest::CALLBACK_FILTER_TYPES # uninitialized constant Critic::Unit::SanitizerTest::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant Critic::Unit::SanitizerTest::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? Critic::Unit::SanitizerTest::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant Critic::Unit::SanitizerTest::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant Critic::Unit::SanitizerTest::CONNECTOR_SETTING_POLLING_ENABLED # uninitialized constant Critic::Unit::SanitizerTest::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # Did you mean? Critic::Unit::SanitizerTest::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # uninitialized constant Critic::Unit::SanitizerTest::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # Did you mean? Critic::Unit::SanitizerTest::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant Critic::Unit::SanitizerTest::CONNECTOR_SETTING_SYNC_START_DATE # uninitialized constant Critic::Unit::SanitizerTest::CPQ_AMENDED_CONTRACT +# uninitialized constant Critic::Unit::SanitizerTest::CPQ_AMENDED_CONTRACT_LOOKUP # uninitialized constant Critic::Unit::SanitizerTest::CPQ_CONSUMPTION_RATE # Did you mean? Critic::Unit::SanitizerTest::SF_CONSUMPTION_RATE # uninitialized constant Critic::Unit::SanitizerTest::CPQ_CONSUMPTION_SCHEDULE # Did you mean? Critic::Unit::SanitizerTest::SF_CONSUMPTION_SCHEDULE +# uninitialized constant Critic::Unit::SanitizerTest::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? Critic::Unit::SanitizerTest::CPQ_QUOTE_SUBSCRIPTION_TERM +# Critic::Unit::SanitizerTest::CPQ_PRODUCT_SUBSCRIPTION_TYPE # uninitialized constant Critic::Unit::SanitizerTest::CPQ_PRODUCT_BILLING_TYPE # uninitialized constant Critic::Unit::SanitizerTest::CPQ_PRODUCT_CHARGE_TYPE # uninitialized constant Critic::Unit::SanitizerTest::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? Critic::Unit::SanitizerTest::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant Critic::Unit::SanitizerTest::CPQ_PRORATE_MULTIPLIER # uninitialized constant Critic::Unit::SanitizerTest::CPQ_QUOTE # uninitialized constant Critic::Unit::SanitizerTest::CPQ_QUOTE_BILLING_FREQUENCY # uninitialized constant Critic::Unit::SanitizerTest::CPQ_QUOTE_LINE +# uninitialized constant Critic::Unit::SanitizerTest::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM # uninitialized constant Critic::Unit::SanitizerTest::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # uninitialized constant Critic::Unit::SanitizerTest::CPQ_QUOTE_LINE_PRODUCT # uninitialized constant Critic::Unit::SanitizerTest::CPQ_QUOTE_OPPORTUNITY @@ -11389,17 +11672,27 @@ # uninitialized constant Critic::Unit::SanitizerTest::CPQ_QUOTE_PRIMARY # uninitialized constant Critic::Unit::SanitizerTest::CPQ_QUOTE_PRIMARY_CONTACT # uninitialized constant Critic::Unit::SanitizerTest::CPQ_QUOTE_QUANTITY +# uninitialized constant Critic::Unit::SanitizerTest::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? Critic::Unit::SanitizerTest::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# Critic::Unit::SanitizerTest::CPQ_QUOTE_SUBSCRIPTION_TERM +# Critic::Unit::SanitizerTest::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant Critic::Unit::SanitizerTest::CPQ_QUOTE_SUBSCRIPTION_PRICING # Did you mean? Critic::Unit::SanitizerTest::CPQ_QUOTE_SUBSCRIPTION_TERM +# Critic::Unit::SanitizerTest::CPQ_QUOTE_SUBSCRIPTION_END_DATE # uninitialized constant Critic::Unit::SanitizerTest::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# Did you mean? Critic::Unit::SanitizerTest::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? Critic::Unit::SanitizerTest::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Critic::Unit::SanitizerTest::CPQ_QUOTE_SUBSCRIPTION_TERM # Critic::Unit::SanitizerTest::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant Critic::Unit::SanitizerTest::CPQ_QUOTE_SUBSCRIPTION_TERM -# Did you mean? Critic::Unit::SanitizerTest::CPQ_QUOTE_SUBSCRIPTION_PRICING +# Did you mean? Critic::Unit::SanitizerTest::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Critic::Unit::SanitizerTest::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant Critic::Unit::SanitizerTest::DAYS_IN_YEAR # uninitialized constant Critic::Unit::SanitizerTest::E # uninitialized constant Critic::Unit::SanitizerTest::GENERIC_STRIPE_ID +# uninitialized constant Critic::Unit::SanitizerTest::GENERIC_STRIPE_REVENUE_CONTRACT_ID # uninitialized constant Critic::Unit::SanitizerTest::MAX_SF_RETRY_ATTEMPTS # uninitialized constant Critic::Unit::SanitizerTest::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant Critic::Unit::SanitizerTest::MONTHS_IN_YEAR # uninitialized constant Critic::Unit::SanitizerTest::ORDER_INVOICE_PAYMENT_LINK # uninitialized constant Critic::Unit::SanitizerTest::ORDER_LINE_SKIP # uninitialized constant Critic::Unit::SanitizerTest::ORDER_SF_STRIPE_COUPON @@ -11422,6 +11715,7 @@ # Did you mean? Critic::Unit::SanitizerTest::SALESFORCE_ACCOUNT_ID_HEADER # uninitialized constant Critic::Unit::SanitizerTest::SALESFORCE_PACKAGE_NAMESPACE_HEADER # Did you mean? Critic::Unit::SanitizerTest::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant Critic::Unit::SanitizerTest::SECONDS_IN_DAY # uninitialized constant Critic::Unit::SanitizerTest::SF_ACCOUNT # uninitialized constant Critic::Unit::SanitizerTest::SF_CONSUMPTION_RATE # Did you mean? Critic::Unit::SanitizerTest::CPQ_CONSUMPTION_RATE @@ -11435,17 +11729,27 @@ # Did you mean? Critic::Unit::SanitizerTest::SF_CONTRACT_QUOTE_ID # uninitialized constant Critic::Unit::SanitizerTest::SF_CONTRACT_QUOTE_ID # Did you mean? Critic::Unit::SanitizerTest::SF_CONTRACT_ORDER_ID +# uninitialized constant Critic::Unit::SanitizerTest::SF_CURRENCY_ISO_CODE # uninitialized constant Critic::Unit::SanitizerTest::SF_ID # uninitialized constant Critic::Unit::SanitizerTest::SF_LAST_MODIFIED_DATE # uninitialized constant Critic::Unit::SanitizerTest::SF_OPPORTUNITY +# uninitialized constant Critic::Unit::SanitizerTest::SF_OPPORTUNITY_CLOSE_DATE # uninitialized constant Critic::Unit::SanitizerTest::SF_ORDER # uninitialized constant Critic::Unit::SanitizerTest::SF_ORDER_ACCOUNT +# uninitialized constant Critic::Unit::SanitizerTest::SF_ORDER_ACTIVATED_DATE # uninitialized constant Critic::Unit::SanitizerTest::SF_ORDER_CONTRACTED +# uninitialized constant Critic::Unit::SanitizerTest::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM # uninitialized constant Critic::Unit::SanitizerTest::SF_ORDER_ITEM -# Did you mean? Critic::Unit::SanitizerTest::SF_ORDER_QUOTE +# Did you mean? Critic::Unit::SanitizerTest::SF_ORDER_TYPE +# Critic::Unit::SanitizerTest::SF_ORDER_QUOTE # uninitialized constant Critic::Unit::SanitizerTest::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant Critic::Unit::SanitizerTest::SF_ORDER_ITEM_TOTAL_PRICE # uninitialized constant Critic::Unit::SanitizerTest::SF_ORDER_QUOTE +# Did you mean? Critic::Unit::SanitizerTest::SF_ORDER_TYPE +# Critic::Unit::SanitizerTest::SF_ORDER_ITEM +# uninitialized constant Critic::Unit::SanitizerTest::SF_ORDER_TYPE # Did you mean? Critic::Unit::SanitizerTest::SF_ORDER_ITEM +# Critic::Unit::SanitizerTest::SF_ORDER_QUOTE # uninitialized constant Critic::Unit::SanitizerTest::SF_PRICEBOOK # uninitialized constant Critic::Unit::SanitizerTest::SF_PRICEBOOK_ENTRY # uninitialized constant Critic::Unit::SanitizerTest::SF_PRODUCT @@ -11453,11 +11757,14 @@ # Did you mean? Critic::Unit::SanitizerTest::SF_CONSUMPTION_SCHEDULE # uninitialized constant Critic::Unit::SanitizerTest::SIGNALS # Did you mean? Signal +# uninitialized constant Critic::Unit::SanitizerTest::SKIP_PAST_INITIAL_INVOICES # uninitialized constant Critic::Unit::SanitizerTest::SYNC_RECORD # Did you mean? Critic::SyncRecords # uninitialized constant Critic::Unit::SanitizerTest::TEARDOWN_METHODS +# uninitialized constant Critic::Unit::SanitizerTest::TERMINATION_METADATA_PREFIX # uninitialized constant Critic::Unit::SanitizerTest::TEST_DEFAULT_CONTRACT_TERM # uninitialized constant Critic::Unit::SanitizerTest::TEST_DEFAULT_PRICE +# uninitialized constant Critic::Unit::SanitizerTest::TEST_DEFAULT_STANDALONE_PRICE # uninitialized constant Critic::Unit::SanitizerTest::UNDEFINED # uninitialized constant Critic::Unit::SanitizerTest::UNTRACKED # wrong constant name test_0001_customers @@ -11555,8 +11862,8 @@ # uninitialized constant Date::Infinity::PETABYTE # Did you mean? Date::Infinity::TERABYTE # uninitialized constant Date::Infinity::TERABYTE -# Did you mean? Date::Infinity::EXABYTE -# Date::Infinity::PETABYTE +# Did you mean? Date::Infinity::PETABYTE +# Date::Infinity::EXABYTE # wrong constant name initialize # wrong constant name class_name # wrong constant name class_names @@ -11978,13 +12285,13 @@ # Fiddle::Importer::TYPE_UINTPTR_T # Fiddle::TYPE_UINTPTR_T # uninitialized constant Fiddle::Importer::TYPE_LONG -# Did you mean? Fiddle::Importer::TYPE_INT -# Fiddle::TYPE_INT +# Did you mean? Fiddle::TYPE_INT +# Fiddle::Importer::TYPE_INT +# Fiddle::Importer::TYPE_VOID # Fiddle::TYPE_VOID # Fiddle::TYPE_LONG -# Fiddle::Importer::TYPE_VOID -# Fiddle::Importer::TYPE_FLOAT # Fiddle::TYPE_FLOAT +# Fiddle::Importer::TYPE_FLOAT # uninitialized constant Fiddle::Importer::TYPE_LONG_LONG # Did you mean? Fiddle::TYPE_LONG_LONG # uninitialized constant Fiddle::Importer::TYPE_PTRDIFF_T @@ -12008,9 +12315,9 @@ # Fiddle::TYPE_INTPTR_T # Fiddle::TYPE_UINTPTR_T # uninitialized constant Fiddle::Importer::TYPE_VOID -# Did you mean? Fiddle::TYPE_LONG +# Did you mean? Fiddle::TYPE_VOID # Fiddle::Importer::TYPE_LONG -# Fiddle::TYPE_VOID +# Fiddle::TYPE_LONG # Fiddle::TYPE_VOIDP # Fiddle::Importer::TYPE_VOIDP # uninitialized constant Fiddle::Importer::TYPE_VOIDP @@ -12069,8 +12376,12 @@ # uninitialized constant Float::PETABYTE # Did you mean? Float::TERABYTE # uninitialized constant Float::TERABYTE -# Did you mean? Float::EXABYTE -# Float::PETABYTE +# Did you mean? Float::PETABYTE +# Float::EXABYTE +# wrong constant name +# wrong constant name ruby_18? +# wrong constant name runner +# wrong constant name windows? # wrong constant name _compile_method # wrong constant name _delegator_method # wrong constant name _valid_method? @@ -12527,6 +12838,8 @@ # wrong constant name # wrong constant name activated_gem_paths # wrong constant name _routes +# wrong constant name omniauth_v2_path +# wrong constant name omniauth_v2_url # wrong constant name rails_info_path # wrong constant name rails_info_properties_path # wrong constant name rails_info_properties_url @@ -12541,6 +12854,43 @@ # wrong constant name route_for # wrong constant name url_for # wrong constant name url_options +# wrong constant name +# uninitialized constant GetText::PoParser::Racc_Main_Parsing_Routine +# uninitialized constant GetText::PoParser::Racc_Runtime_Core_Id_C +# Did you mean? GetText::PoParser::Racc_Runtime_Core_Version_C +# uninitialized constant GetText::PoParser::Racc_Runtime_Core_Version +# Did you mean? GetText::PoParser::Racc_Runtime_Core_Version_R +# GetText::PoParser::Racc_Runtime_Core_Version_C +# GetText::PoParser::Racc_Runtime_Version +# GetText::PoParser::Racc_Runtime_Core_Id_C +# uninitialized constant GetText::PoParser::Racc_Runtime_Core_Version_C +# Did you mean? GetText::PoParser::Racc_Runtime_Core_Version_R +# GetText::PoParser::Racc_Runtime_Version +# GetText::PoParser::Racc_Runtime_Core_Id_C +# uninitialized constant GetText::PoParser::Racc_Runtime_Core_Version_R +# Did you mean? GetText::PoParser::Racc_Runtime_Core_Version_C +# GetText::PoParser::Racc_Runtime_Version +# GetText::PoParser::Racc_Runtime_Core_Id_C +# uninitialized constant GetText::PoParser::Racc_Runtime_Type +# uninitialized constant GetText::PoParser::Racc_Runtime_Version +# Did you mean? GetText::PoParser::Racc_Runtime_Core_Version +# uninitialized constant GetText::PoParser::Racc_YY_Parse_Method +# wrong constant name _ +# wrong constant name _reduce_10 +# wrong constant name _reduce_12 +# wrong constant name _reduce_13 +# wrong constant name _reduce_14 +# wrong constant name _reduce_15 +# wrong constant name _reduce_5 +# wrong constant name _reduce_8 +# wrong constant name _reduce_9 +# wrong constant name _reduce_none +# wrong constant name on_comment +# wrong constant name on_message +# wrong constant name parse +# wrong constant name unescape +# wrong constant name +# wrong constant name # uninitialized constant GetoptLong # uninitialized constant GetoptLong # wrong constant name @@ -12589,6 +12939,7 @@ # wrong constant name # wrong constant name quote # wrong constant name deconstruct_keys +# wrong constant name index # wrong constant name ruby2_keywords_hash # wrong constant name # wrong constant name @@ -12606,6 +12957,34 @@ # wrong constant name left_diff # wrong constant name patch! # wrong constant name right_diff +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name call +# wrong constant name +# wrong constant name call +# wrong constant name call +# wrong constant name initialize +# wrong constant name +# wrong constant name call +# wrong constant name +# wrong constant name best_diff +# wrong constant name comparable? +# wrong constant name compare_values +# wrong constant name count_diff +# wrong constant name count_nodes +# wrong constant name custom_compare +# wrong constant name decode_property_path +# wrong constant name diff +# wrong constant name diff_array_lcs +# wrong constant name lcs +# wrong constant name node +# wrong constant name patch! +# wrong constant name prefix_append_array_index +# wrong constant name prefix_append_key +# wrong constant name similar? +# wrong constant name unpatch! # wrong constant name # wrong constant name # wrong constant name @@ -12939,6 +13318,9 @@ # wrong constant name # uninitialized constant I18n::Backend::LazyLoadable::DEFAULT_REPLACEMENT_CHAR # wrong constant name +# uninitialized constant I18n::Backend::LazyLoadable::MUTEX +# Did you mean? Mutex +# Mutex_m # wrong constant name initialize # wrong constant name initialized_locales # wrong constant name initialize @@ -12962,6 +13344,8 @@ # wrong constant name pluralizer # wrong constant name pluralizers # wrong constant name +# uninitialized constant I18n::Backend::Simple::Implementation::DEFAULT_REPLACEMENT_CHAR +# Did you mean? I18n::Backend::Simple::DEFAULT_REPLACEMENT_CHAR # wrong constant name # uninitialized constant I18n::Gettext::Helpers::N_ # wrong constant name _ @@ -13024,6 +13408,7 @@ # wrong constant name call # wrong constant name initialize # wrong constant name +# wrong constant name normalized_option # wrong constant name # wrong constant name # wrong constant name included @@ -13051,8 +13436,11 @@ # wrong constant name reserved_keys_pattern # wrong constant name # wrong constant name beep +# wrong constant name bytes +# wrong constant name chars # wrong constant name check_winsize_changed # wrong constant name clear_screen +# wrong constant name codepoints # wrong constant name console_mode # wrong constant name console_mode= # wrong constant name cooked @@ -13073,6 +13461,7 @@ # wrong constant name goto_column # wrong constant name iflush # wrong constant name ioflush +# wrong constant name lines # wrong constant name noecho # wrong constant name nonblock # wrong constant name nonblock= @@ -13116,25 +13505,38 @@ # uninitialized constant Integer::PETABYTE # Did you mean? Integer::TERABYTE # uninitialized constant Integer::TERABYTE -# Did you mean? Integer::EXABYTE -# Integer::PETABYTE +# Did you mean? Integer::PETABYTE +# Integer::EXABYTE # wrong constant name to_bn +# uninitialized constant Integrations::ErrorContext::CACHED_CREDENTIAL_STATUS_TTL # uninitialized constant Integrations::ErrorContext::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant Integrations::ErrorContext::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? Integrations::ErrorContext::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant Integrations::ErrorContext::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant Integrations::ErrorContext::CONNECTOR_SETTING_POLLING_ENABLED # uninitialized constant Integrations::ErrorContext::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # Did you mean? Integrations::ErrorContext::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # uninitialized constant Integrations::ErrorContext::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # Did you mean? Integrations::ErrorContext::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant Integrations::ErrorContext::CONNECTOR_SETTING_SYNC_START_DATE # uninitialized constant Integrations::ErrorContext::CPQ_AMENDED_CONTRACT +# uninitialized constant Integrations::ErrorContext::CPQ_AMENDED_CONTRACT_LOOKUP # uninitialized constant Integrations::ErrorContext::CPQ_CONSUMPTION_RATE # Did you mean? Integrations::ErrorContext::SF_CONSUMPTION_RATE # uninitialized constant Integrations::ErrorContext::CPQ_CONSUMPTION_SCHEDULE # Did you mean? Integrations::ErrorContext::SF_CONSUMPTION_SCHEDULE +# uninitialized constant Integrations::ErrorContext::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? Integrations::ErrorContext::CPQ_QUOTE_SUBSCRIPTION_TERM +# Integrations::ErrorContext::CPQ_PRODUCT_SUBSCRIPTION_TYPE # uninitialized constant Integrations::ErrorContext::CPQ_PRODUCT_BILLING_TYPE # uninitialized constant Integrations::ErrorContext::CPQ_PRODUCT_CHARGE_TYPE # uninitialized constant Integrations::ErrorContext::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? Integrations::ErrorContext::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant Integrations::ErrorContext::CPQ_PRORATE_MULTIPLIER # uninitialized constant Integrations::ErrorContext::CPQ_QUOTE # uninitialized constant Integrations::ErrorContext::CPQ_QUOTE_BILLING_FREQUENCY # uninitialized constant Integrations::ErrorContext::CPQ_QUOTE_LINE +# uninitialized constant Integrations::ErrorContext::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM # uninitialized constant Integrations::ErrorContext::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # uninitialized constant Integrations::ErrorContext::CPQ_QUOTE_LINE_PRODUCT # uninitialized constant Integrations::ErrorContext::CPQ_QUOTE_OPPORTUNITY @@ -13143,16 +13545,26 @@ # uninitialized constant Integrations::ErrorContext::CPQ_QUOTE_PRIMARY # uninitialized constant Integrations::ErrorContext::CPQ_QUOTE_PRIMARY_CONTACT # uninitialized constant Integrations::ErrorContext::CPQ_QUOTE_QUANTITY +# uninitialized constant Integrations::ErrorContext::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? Integrations::ErrorContext::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# Integrations::ErrorContext::CPQ_QUOTE_SUBSCRIPTION_TERM +# Integrations::ErrorContext::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant Integrations::ErrorContext::CPQ_QUOTE_SUBSCRIPTION_PRICING # Did you mean? Integrations::ErrorContext::CPQ_QUOTE_SUBSCRIPTION_TERM +# Integrations::ErrorContext::CPQ_QUOTE_SUBSCRIPTION_END_DATE # uninitialized constant Integrations::ErrorContext::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# Did you mean? Integrations::ErrorContext::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? Integrations::ErrorContext::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Integrations::ErrorContext::CPQ_QUOTE_SUBSCRIPTION_TERM # Integrations::ErrorContext::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant Integrations::ErrorContext::CPQ_QUOTE_SUBSCRIPTION_TERM -# Did you mean? Integrations::ErrorContext::CPQ_QUOTE_SUBSCRIPTION_PRICING +# Did you mean? Integrations::ErrorContext::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Integrations::ErrorContext::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant Integrations::ErrorContext::DAYS_IN_YEAR # uninitialized constant Integrations::ErrorContext::GENERIC_STRIPE_ID +# uninitialized constant Integrations::ErrorContext::GENERIC_STRIPE_REVENUE_CONTRACT_ID # uninitialized constant Integrations::ErrorContext::MAX_SF_RETRY_ATTEMPTS # uninitialized constant Integrations::ErrorContext::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant Integrations::ErrorContext::MONTHS_IN_YEAR # uninitialized constant Integrations::ErrorContext::ORDER_INVOICE_PAYMENT_LINK # uninitialized constant Integrations::ErrorContext::ORDER_LINE_SKIP # uninitialized constant Integrations::ErrorContext::ORDER_SF_STRIPE_COUPON @@ -13174,6 +13586,7 @@ # Did you mean? Integrations::ErrorContext::SALESFORCE_ACCOUNT_ID_HEADER # uninitialized constant Integrations::ErrorContext::SALESFORCE_PACKAGE_NAMESPACE_HEADER # Did you mean? Integrations::ErrorContext::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant Integrations::ErrorContext::SECONDS_IN_DAY # uninitialized constant Integrations::ErrorContext::SF_ACCOUNT # uninitialized constant Integrations::ErrorContext::SF_CONSUMPTION_RATE # Did you mean? Integrations::ErrorContext::CPQ_CONSUMPTION_RATE @@ -13187,23 +13600,35 @@ # Did you mean? Integrations::ErrorContext::SF_CONTRACT_QUOTE_ID # uninitialized constant Integrations::ErrorContext::SF_CONTRACT_QUOTE_ID # Did you mean? Integrations::ErrorContext::SF_CONTRACT_ORDER_ID +# uninitialized constant Integrations::ErrorContext::SF_CURRENCY_ISO_CODE # uninitialized constant Integrations::ErrorContext::SF_ID # uninitialized constant Integrations::ErrorContext::SF_LAST_MODIFIED_DATE # uninitialized constant Integrations::ErrorContext::SF_OPPORTUNITY +# uninitialized constant Integrations::ErrorContext::SF_OPPORTUNITY_CLOSE_DATE # uninitialized constant Integrations::ErrorContext::SF_ORDER # uninitialized constant Integrations::ErrorContext::SF_ORDER_ACCOUNT +# uninitialized constant Integrations::ErrorContext::SF_ORDER_ACTIVATED_DATE # uninitialized constant Integrations::ErrorContext::SF_ORDER_CONTRACTED +# uninitialized constant Integrations::ErrorContext::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM # uninitialized constant Integrations::ErrorContext::SF_ORDER_ITEM -# Did you mean? Integrations::ErrorContext::SF_ORDER_QUOTE +# Did you mean? Integrations::ErrorContext::SF_ORDER_TYPE +# Integrations::ErrorContext::SF_ORDER_QUOTE # uninitialized constant Integrations::ErrorContext::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant Integrations::ErrorContext::SF_ORDER_ITEM_TOTAL_PRICE # uninitialized constant Integrations::ErrorContext::SF_ORDER_QUOTE +# Did you mean? Integrations::ErrorContext::SF_ORDER_TYPE +# Integrations::ErrorContext::SF_ORDER_ITEM +# uninitialized constant Integrations::ErrorContext::SF_ORDER_TYPE # Did you mean? Integrations::ErrorContext::SF_ORDER_ITEM +# Integrations::ErrorContext::SF_ORDER_QUOTE # uninitialized constant Integrations::ErrorContext::SF_PRICEBOOK # uninitialized constant Integrations::ErrorContext::SF_PRICEBOOK_ENTRY # uninitialized constant Integrations::ErrorContext::SF_PRODUCT # uninitialized constant Integrations::ErrorContext::SF_PRODUCT_CONSUMPTION_SCHEDULE # Did you mean? Integrations::ErrorContext::SF_CONSUMPTION_SCHEDULE +# uninitialized constant Integrations::ErrorContext::SKIP_PAST_INITIAL_INVOICES # uninitialized constant Integrations::ErrorContext::SYNC_RECORD +# uninitialized constant Integrations::ErrorContext::TERMINATION_METADATA_PREFIX # wrong constant name log # wrong constant name log # wrong constant name [] @@ -13683,7 +14108,9 @@ # wrong constant name valid_alg? # wrong constant name verify # wrong constant name +# wrong constant name asn1_to_raw # wrong constant name curve_by_name +# wrong constant name raw_to_asn1 # wrong constant name # wrong constant name # wrong constant name fixed_length_secure_compare @@ -13808,6 +14235,10 @@ # wrong constant name info! # wrong constant name warn! # uninitialized constant Logger::LogDevice::SiD +# wrong constant name flatten_keys +# wrong constant name flatten_object +# wrong constant name loop_on_object +# wrong constant name # uninitialized constant Lograge::LogSubscribers::ActionCable::BLACK # uninitialized constant Lograge::LogSubscribers::ActionCable::BLUE # uninitialized constant Lograge::LogSubscribers::ActionCable::BOLD @@ -13836,11 +14267,208 @@ # wrong constant name process_action # wrong constant name redirect_to # wrong constant name unpermitted_parameters +# wrong constant name notification_listeners_for +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# uninitialized constant Loofah::HTML4::Document::ATTRIBUTE_DECL +# Did you mean? Loofah::HTML4::Document::ATTRIBUTE_NODE +# uninitialized constant Loofah::HTML4::Document::ATTRIBUTE_NODE +# Did you mean? Loofah::HTML4::Document::ATTRIBUTE_DECL +# uninitialized constant Loofah::HTML4::Document::CDATA_SECTION_NODE +# uninitialized constant Loofah::HTML4::Document::COLLECTIONS +# uninitialized constant Loofah::HTML4::Document::COMMENT_NODE +# Did you mean? Loofah::HTML4::Document::DOCUMENT_NODE +# uninitialized constant Loofah::HTML4::Document::DECONSTRUCT_KEYS +# uninitialized constant Loofah::HTML4::Document::DECONSTRUCT_METHODS +# Did you mean? Loofah::HTML4::Document::DECONSTRUCT_KEYS +# uninitialized constant Loofah::HTML4::Document::DOCB_DOCUMENT_NODE +# Did you mean? Loofah::HTML4::Document::DOCUMENT_NODE +# uninitialized constant Loofah::HTML4::Document::DOCUMENT_FRAG_NODE +# Did you mean? Loofah::HTML4::Document::DOCUMENT_TYPE_NODE +# Loofah::HTML4::Document::DOCUMENT_NODE +# uninitialized constant Loofah::HTML4::Document::DOCUMENT_NODE +# Did you mean? Loofah::HTML4::Document::COMMENT_NODE +# uninitialized constant Loofah::HTML4::Document::DOCUMENT_TYPE_NODE +# Did you mean? Loofah::HTML4::Document::DOCUMENT_FRAG_NODE +# Loofah::HTML4::Document::DOCUMENT_NODE +# uninitialized constant Loofah::HTML4::Document::DTD_NODE +# uninitialized constant Loofah::HTML4::Document::ELEMENT_DECL +# uninitialized constant Loofah::HTML4::Document::ELEMENT_NODE +# uninitialized constant Loofah::HTML4::Document::ENTITY_DECL +# uninitialized constant Loofah::HTML4::Document::ENTITY_NODE +# uninitialized constant Loofah::HTML4::Document::ENTITY_REF_NODE +# Did you mean? Loofah::HTML4::Document::ENTITY_NODE +# uninitialized constant Loofah::HTML4::Document::Elem +# uninitialized constant Loofah::HTML4::Document::HTML_DOCUMENT_NODE +# uninitialized constant Loofah::HTML4::Document::IMPLIED_XPATH_CONTEXTS +# uninitialized constant Loofah::HTML4::Document::LOOKS_LIKE_XPATH +# uninitialized constant Loofah::HTML4::Document::NAMESPACE_DECL +# uninitialized constant Loofah::HTML4::Document::NCNAME_CHAR +# uninitialized constant Loofah::HTML4::Document::NCNAME_RE +# uninitialized constant Loofah::HTML4::Document::NCNAME_START_CHAR +# uninitialized constant Loofah::HTML4::Document::NOTATION_NODE +# uninitialized constant Loofah::HTML4::Document::PI_NODE +# uninitialized constant Loofah::HTML4::Document::TEXT_NODE +# uninitialized constant Loofah::HTML4::Document::VALID_NAMESPACES +# uninitialized constant Loofah::HTML4::Document::XINCLUDE_END +# uninitialized constant Loofah::HTML4::Document::XINCLUDE_START +# wrong constant name +# uninitialized constant Loofah::HTML4::DocumentFragment::ATTRIBUTE_DECL +# Did you mean? Loofah::HTML4::DocumentFragment::ATTRIBUTE_NODE +# uninitialized constant Loofah::HTML4::DocumentFragment::ATTRIBUTE_NODE +# Did you mean? Loofah::HTML4::DocumentFragment::ATTRIBUTE_DECL +# uninitialized constant Loofah::HTML4::DocumentFragment::CDATA_SECTION_NODE +# uninitialized constant Loofah::HTML4::DocumentFragment::COLLECTIONS +# uninitialized constant Loofah::HTML4::DocumentFragment::COMMENT_NODE +# Did you mean? Loofah::HTML4::DocumentFragment::DOCUMENT_NODE +# uninitialized constant Loofah::HTML4::DocumentFragment::DECONSTRUCT_KEYS +# uninitialized constant Loofah::HTML4::DocumentFragment::DECONSTRUCT_METHODS +# Did you mean? Loofah::HTML4::DocumentFragment::DECONSTRUCT_KEYS +# uninitialized constant Loofah::HTML4::DocumentFragment::DOCB_DOCUMENT_NODE +# Did you mean? Loofah::HTML4::DocumentFragment::DOCUMENT_NODE +# uninitialized constant Loofah::HTML4::DocumentFragment::DOCUMENT_FRAG_NODE +# Did you mean? Loofah::HTML4::DocumentFragment::DOCUMENT_TYPE_NODE +# Loofah::HTML4::DocumentFragment::DOCUMENT_NODE +# uninitialized constant Loofah::HTML4::DocumentFragment::DOCUMENT_NODE +# Did you mean? Loofah::HTML4::DocumentFragment::COMMENT_NODE +# uninitialized constant Loofah::HTML4::DocumentFragment::DOCUMENT_TYPE_NODE +# Did you mean? Loofah::HTML4::DocumentFragment::DOCUMENT_FRAG_NODE +# Loofah::HTML4::DocumentFragment::DOCUMENT_NODE +# uninitialized constant Loofah::HTML4::DocumentFragment::DTD_NODE +# uninitialized constant Loofah::HTML4::DocumentFragment::ELEMENT_DECL +# uninitialized constant Loofah::HTML4::DocumentFragment::ELEMENT_NODE +# uninitialized constant Loofah::HTML4::DocumentFragment::ENTITY_DECL +# uninitialized constant Loofah::HTML4::DocumentFragment::ENTITY_NODE +# uninitialized constant Loofah::HTML4::DocumentFragment::ENTITY_REF_NODE +# Did you mean? Loofah::HTML4::DocumentFragment::ENTITY_NODE +# uninitialized constant Loofah::HTML4::DocumentFragment::Elem +# uninitialized constant Loofah::HTML4::DocumentFragment::HTML_DOCUMENT_NODE +# uninitialized constant Loofah::HTML4::DocumentFragment::IMPLIED_XPATH_CONTEXTS +# uninitialized constant Loofah::HTML4::DocumentFragment::LOOKS_LIKE_XPATH +# uninitialized constant Loofah::HTML4::DocumentFragment::NAMESPACE_DECL +# uninitialized constant Loofah::HTML4::DocumentFragment::NOTATION_NODE +# uninitialized constant Loofah::HTML4::DocumentFragment::PI_NODE +# uninitialized constant Loofah::HTML4::DocumentFragment::TEXT_NODE +# uninitialized constant Loofah::HTML4::DocumentFragment::VALID_NAMESPACES +# uninitialized constant Loofah::HTML4::DocumentFragment::XINCLUDE_END +# uninitialized constant Loofah::HTML4::DocumentFragment::XINCLUDE_START +# wrong constant name +# wrong constant name +# uninitialized constant Loofah::HTML5::Document::ATTRIBUTE_DECL +# Did you mean? Loofah::HTML5::Document::ATTRIBUTE_NODE +# uninitialized constant Loofah::HTML5::Document::ATTRIBUTE_NODE +# Did you mean? Loofah::HTML5::Document::ATTRIBUTE_DECL +# uninitialized constant Loofah::HTML5::Document::CDATA_SECTION_NODE +# uninitialized constant Loofah::HTML5::Document::COLLECTIONS +# uninitialized constant Loofah::HTML5::Document::COMMENT_NODE +# Did you mean? Loofah::HTML5::Document::DOCUMENT_NODE +# uninitialized constant Loofah::HTML5::Document::DECONSTRUCT_KEYS +# uninitialized constant Loofah::HTML5::Document::DECONSTRUCT_METHODS +# Did you mean? Loofah::HTML5::Document::DECONSTRUCT_KEYS +# uninitialized constant Loofah::HTML5::Document::DOCB_DOCUMENT_NODE +# Did you mean? Loofah::HTML5::Document::DOCUMENT_NODE +# uninitialized constant Loofah::HTML5::Document::DOCUMENT_FRAG_NODE +# Did you mean? Loofah::HTML5::Document::DOCUMENT_TYPE_NODE +# Loofah::HTML5::Document::DOCUMENT_NODE +# uninitialized constant Loofah::HTML5::Document::DOCUMENT_NODE +# Did you mean? Loofah::HTML5::Document::COMMENT_NODE +# uninitialized constant Loofah::HTML5::Document::DOCUMENT_TYPE_NODE +# Did you mean? Loofah::HTML5::Document::DOCUMENT_FRAG_NODE +# Loofah::HTML5::Document::DOCUMENT_NODE +# uninitialized constant Loofah::HTML5::Document::DTD_NODE +# uninitialized constant Loofah::HTML5::Document::ELEMENT_DECL +# uninitialized constant Loofah::HTML5::Document::ELEMENT_NODE +# uninitialized constant Loofah::HTML5::Document::ENTITY_DECL +# uninitialized constant Loofah::HTML5::Document::ENTITY_NODE +# uninitialized constant Loofah::HTML5::Document::ENTITY_REF_NODE +# Did you mean? Loofah::HTML5::Document::ENTITY_NODE +# uninitialized constant Loofah::HTML5::Document::Elem +# uninitialized constant Loofah::HTML5::Document::HTML_DOCUMENT_NODE +# uninitialized constant Loofah::HTML5::Document::IMPLIED_XPATH_CONTEXTS +# uninitialized constant Loofah::HTML5::Document::LOOKS_LIKE_XPATH +# uninitialized constant Loofah::HTML5::Document::NAMESPACE_DECL +# uninitialized constant Loofah::HTML5::Document::NCNAME_CHAR +# uninitialized constant Loofah::HTML5::Document::NCNAME_RE +# uninitialized constant Loofah::HTML5::Document::NCNAME_START_CHAR +# uninitialized constant Loofah::HTML5::Document::NOTATION_NODE +# uninitialized constant Loofah::HTML5::Document::PI_NODE +# uninitialized constant Loofah::HTML5::Document::TEXT_NODE +# uninitialized constant Loofah::HTML5::Document::VALID_NAMESPACES +# uninitialized constant Loofah::HTML5::Document::XINCLUDE_END +# uninitialized constant Loofah::HTML5::Document::XINCLUDE_START +# wrong constant name +# uninitialized constant Loofah::HTML5::DocumentFragment::ATTRIBUTE_DECL +# Did you mean? Loofah::HTML5::DocumentFragment::ATTRIBUTE_NODE +# uninitialized constant Loofah::HTML5::DocumentFragment::ATTRIBUTE_NODE +# Did you mean? Loofah::HTML5::DocumentFragment::ATTRIBUTE_DECL +# uninitialized constant Loofah::HTML5::DocumentFragment::CDATA_SECTION_NODE +# uninitialized constant Loofah::HTML5::DocumentFragment::COLLECTIONS +# uninitialized constant Loofah::HTML5::DocumentFragment::COMMENT_NODE +# Did you mean? Loofah::HTML5::DocumentFragment::DOCUMENT_NODE +# uninitialized constant Loofah::HTML5::DocumentFragment::DECONSTRUCT_KEYS +# uninitialized constant Loofah::HTML5::DocumentFragment::DECONSTRUCT_METHODS +# Did you mean? Loofah::HTML5::DocumentFragment::DECONSTRUCT_KEYS +# uninitialized constant Loofah::HTML5::DocumentFragment::DOCB_DOCUMENT_NODE +# Did you mean? Loofah::HTML5::DocumentFragment::DOCUMENT_NODE +# uninitialized constant Loofah::HTML5::DocumentFragment::DOCUMENT_FRAG_NODE +# Did you mean? Loofah::HTML5::DocumentFragment::DOCUMENT_TYPE_NODE +# Loofah::HTML5::DocumentFragment::DOCUMENT_NODE +# uninitialized constant Loofah::HTML5::DocumentFragment::DOCUMENT_NODE +# Did you mean? Loofah::HTML5::DocumentFragment::COMMENT_NODE +# uninitialized constant Loofah::HTML5::DocumentFragment::DOCUMENT_TYPE_NODE +# Did you mean? Loofah::HTML5::DocumentFragment::DOCUMENT_FRAG_NODE +# Loofah::HTML5::DocumentFragment::DOCUMENT_NODE +# uninitialized constant Loofah::HTML5::DocumentFragment::DTD_NODE +# uninitialized constant Loofah::HTML5::DocumentFragment::ELEMENT_DECL +# uninitialized constant Loofah::HTML5::DocumentFragment::ELEMENT_NODE +# uninitialized constant Loofah::HTML5::DocumentFragment::ENTITY_DECL +# uninitialized constant Loofah::HTML5::DocumentFragment::ENTITY_NODE +# uninitialized constant Loofah::HTML5::DocumentFragment::ENTITY_REF_NODE +# Did you mean? Loofah::HTML5::DocumentFragment::ENTITY_NODE +# uninitialized constant Loofah::HTML5::DocumentFragment::Elem +# uninitialized constant Loofah::HTML5::DocumentFragment::HTML_DOCUMENT_NODE +# uninitialized constant Loofah::HTML5::DocumentFragment::IMPLIED_XPATH_CONTEXTS +# uninitialized constant Loofah::HTML5::DocumentFragment::LOOKS_LIKE_XPATH +# uninitialized constant Loofah::HTML5::DocumentFragment::NAMESPACE_DECL +# uninitialized constant Loofah::HTML5::DocumentFragment::NOTATION_NODE +# uninitialized constant Loofah::HTML5::DocumentFragment::PI_NODE +# uninitialized constant Loofah::HTML5::DocumentFragment::TEXT_NODE +# uninitialized constant Loofah::HTML5::DocumentFragment::VALID_NAMESPACES +# uninitialized constant Loofah::HTML5::DocumentFragment::XINCLUDE_END +# uninitialized constant Loofah::HTML5::DocumentFragment::XINCLUDE_START +# wrong constant name # wrong constant name cdata_escape # wrong constant name cdata_needs_escaping? # wrong constant name escape_tags # wrong constant name scrub_attribute_that_allows_local_ref # wrong constant name scrub_uri_attribute +# wrong constant name +# wrong constant name serialize_root +# wrong constant name parse +# wrong constant name +# wrong constant name +# wrong constant name included +# wrong constant name +# wrong constant name serialize +# wrong constant name serialize_root +# wrong constant name to_s +# wrong constant name document_klass +# wrong constant name parse +# wrong constant name +# wrong constant name +# wrong constant name included +# wrong constant name html4_document +# wrong constant name html4_fragment +# wrong constant name html5_document +# wrong constant name html5_fragment +# wrong constant name html5_support? +# wrong constant name scrub_html4_document +# wrong constant name scrub_html4_fragment +# wrong constant name scrub_html5_document +# wrong constant name scrub_html5_fragment # wrong constant name provisional # wrong constant name provisional= # wrong constant name provisional? @@ -14062,9 +14690,7 @@ # wrong constant name lookup_retriever_method # wrong constant name param_encode_language # wrong constant name retriever_method -# undefined singleton method `instance' for `Mail::Configuration' # wrong constant name -# wrong constant name instance # wrong constant name # uninitialized constant Mail::ContentDescriptionField::FILENAME_RE # wrong constant name @@ -14789,7 +15415,7 @@ # wrong constant name start # wrong constant name start= # wrong constant name -# uninitialized constant #::Elem +# uninitialized constant #::Elem # wrong constant name encoding # wrong constant name encoding= # wrong constant name error @@ -15187,3375 +15813,5679 @@ # wrong constant name # wrong constant name # wrong constant name pool -# wrong constant name -# wrong constant name -# wrong constant name +# wrong constant name # wrong constant name dump # wrong constant name initialize # wrong constant name load -# wrong constant name checkin -# wrong constant name checkout +# wrong constant name packer +# wrong constant name unpacker # wrong constant name initialize +# wrong constant name with # wrong constant name # wrong constant name # wrong constant name -# wrong constant name +# wrong constant name register_type_internal # wrong constant name reset -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::APP_SESSIONS -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RESPONSE_PREDICATES -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::APP_SESSIONS -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RESPONSE_PREDICATES -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::APP_SESSIONS -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RESPONSE_PREDICATES -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::APP_SESSIONS -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RESPONSE_PREDICATES -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::APP_SESSIONS -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RESPONSE_PREDICATES -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::APP_SESSIONS -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RESPONSE_PREDICATES -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::APP_SESSIONS -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RESPONSE_PREDICATES -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::APP_SESSIONS +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RESPONSE_PREDICATES +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::APP_SESSIONS +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RESPONSE_PREDICATES +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::APP_SESSIONS +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RESPONSE_PREDICATES +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::APP_SESSIONS +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RESPONSE_PREDICATES +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::APP_SESSIONS +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RESPONSE_PREDICATES +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::APP_SESSIONS +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RESPONSE_PREDICATES +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::APP_SESSIONS +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RESPONSE_PREDICATES +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::APP_SESSIONS +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RESPONSE_PREDICATES +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED # wrong constant name make_user_for_client_credentials_tests # wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::APP_SESSIONS -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RESPONSE_PREDICATES -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::APP_SESSIONS -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RESPONSE_PREDICATES -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED -# wrong constant name -# uninitialized constant #::CALLBACK_FILTER_TYPES -# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE -# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# uninitialized constant #::CPQ_AMENDED_CONTRACT -# uninitialized constant #::CPQ_CONSUMPTION_RATE -# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE -# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE -# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE -# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# uninitialized constant #::CPQ_QUOTE -# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY -# uninitialized constant #::CPQ_QUOTE_LINE -# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY -# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT -# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY -# uninitialized constant #::CPQ_QUOTE_ORDERED -# uninitialized constant #::CPQ_QUOTE_PRICEBOOK -# uninitialized constant #::CPQ_QUOTE_PRIMARY -# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT -# uninitialized constant #::CPQ_QUOTE_QUANTITY -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM -# uninitialized constant #::E -# uninitialized constant #::GENERIC_STRIPE_ID -# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS -# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION -# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK -# uninitialized constant #::ORDER_LINE_SKIP -# uninitialized constant #::ORDER_SF_STRIPE_COUPON -# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK -# uninitialized constant #::PASSTHROUGH_EXCEPTIONS -# uninitialized constant #::POLL_FREQUENCY -# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON -# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION -# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR -# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER -# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER -# uninitialized constant #::SALESFORCE_KEY_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER -# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER -# uninitialized constant #::SF_ACCOUNT -# uninitialized constant #::SF_CONSUMPTION_RATE -# uninitialized constant #::SF_CONSUMPTION_SCHEDULE -# uninitialized constant #::SF_CONTACT -# uninitialized constant #::SF_CONTRACT -# uninitialized constant #::SF_CONTRACT_ORDER_ID -# uninitialized constant #::SF_CONTRACT_QUOTE_ID -# uninitialized constant #::SF_ID -# uninitialized constant #::SF_LAST_MODIFIED_DATE -# uninitialized constant #::SF_OPPORTUNITY -# uninitialized constant #::SF_ORDER -# uninitialized constant #::SF_ORDER_ACCOUNT -# uninitialized constant #::SF_ORDER_CONTRACTED -# uninitialized constant #::SF_ORDER_ITEM -# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT -# uninitialized constant #::SF_ORDER_QUOTE -# uninitialized constant #::SF_PRICEBOOK -# uninitialized constant #::SF_PRICEBOOK_ENTRY -# uninitialized constant #::SF_PRODUCT -# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE -# uninitialized constant #::SIGNALS -# uninitialized constant #::SYNC_RECORD -# uninitialized constant #::TEARDOWN_METHODS -# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM -# uninitialized constant #::TEST_DEFAULT_PRICE -# uninitialized constant #::UNDEFINED -# uninitialized constant #::UNTRACKED +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::APP_SESSIONS +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RESPONSE_PREDICATES +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::APP_SESSIONS +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RESPONSE_PREDICATES +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED +# wrong constant name +# uninitialized constant #::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant #::CALLBACK_FILTER_TYPES +# uninitialized constant #::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant #::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant #::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant #::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant #::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant #::CPQ_AMENDED_CONTRACT +# uninitialized constant #::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant #::CPQ_CONSUMPTION_RATE +# uninitialized constant #::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant #::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant #::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant #::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant #::CPQ_PRORATE_MULTIPLIER +# uninitialized constant #::CPQ_QUOTE +# uninitialized constant #::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant #::CPQ_QUOTE_LINE +# uninitialized constant #::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant #::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant #::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant #::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant #::CPQ_QUOTE_ORDERED +# uninitialized constant #::CPQ_QUOTE_PRICEBOOK +# uninitialized constant #::CPQ_QUOTE_PRIMARY +# uninitialized constant #::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant #::CPQ_QUOTE_QUANTITY +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# uninitialized constant #::CPQ_QUOTE_SUBSCRIPTION_TERM +# uninitialized constant #::DAYS_IN_YEAR +# uninitialized constant #::E +# uninitialized constant #::GENERIC_STRIPE_ID +# uninitialized constant #::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant #::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant #::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant #::MONTHS_IN_YEAR +# uninitialized constant #::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant #::ORDER_LINE_SKIP +# uninitialized constant #::ORDER_SF_STRIPE_COUPON +# uninitialized constant #::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant #::PASSTHROUGH_EXCEPTIONS +# uninitialized constant #::POLL_FREQUENCY +# uninitialized constant #::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON +# uninitialized constant #::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant #::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant #::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant #::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant #::SALESFORCE_KEY_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant #::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant #::SECONDS_IN_DAY +# uninitialized constant #::SF_ACCOUNT +# uninitialized constant #::SF_CONSUMPTION_RATE +# uninitialized constant #::SF_CONSUMPTION_SCHEDULE +# uninitialized constant #::SF_CONTACT +# uninitialized constant #::SF_CONTRACT +# uninitialized constant #::SF_CONTRACT_ORDER_ID +# uninitialized constant #::SF_CONTRACT_QUOTE_ID +# uninitialized constant #::SF_CURRENCY_ISO_CODE +# uninitialized constant #::SF_ID +# uninitialized constant #::SF_LAST_MODIFIED_DATE +# uninitialized constant #::SF_OPPORTUNITY +# uninitialized constant #::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant #::SF_ORDER +# uninitialized constant #::SF_ORDER_ACCOUNT +# uninitialized constant #::SF_ORDER_ACTIVATED_DATE +# uninitialized constant #::SF_ORDER_CONTRACTED +# uninitialized constant #::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant #::SF_ORDER_ITEM +# uninitialized constant #::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant #::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant #::SF_ORDER_QUOTE +# uninitialized constant #::SF_ORDER_TYPE +# uninitialized constant #::SF_PRICEBOOK +# uninitialized constant #::SF_PRICEBOOK_ENTRY +# uninitialized constant #::SF_PRODUCT +# uninitialized constant #::SF_PRODUCT_CONSUMPTION_SCHEDULE +# uninitialized constant #::SIGNALS +# uninitialized constant #::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant #::SYNC_RECORD +# uninitialized constant #::TEARDOWN_METHODS +# uninitialized constant #::TERMINATION_METADATA_PREFIX +# uninitialized constant #::TEST_DEFAULT_CONTRACT_TERM +# uninitialized constant #::TEST_DEFAULT_PRICE +# uninitialized constant #::TEST_DEFAULT_STANDALONE_PRICE +# uninitialized constant #::UNDEFINED +# uninitialized constant #::UNTRACKED # wrong constant name # wrong constant name # wrong constant name @@ -20259,11 +23189,11 @@ # uninitialized constant Net::FTPConnectionError # uninitialized constant Net::FTPConnectionError # uninitialized constant Net::FTPError -# Did you mean? Net::SMTPError -# Net::HTTPError +# Did you mean? Net::HTTPError +# Net::SMTPError # uninitialized constant Net::FTPError -# Did you mean? Net::SMTPError -# Net::HTTPError +# Did you mean? Net::HTTPError +# Net::SMTPError # uninitialized constant Net::FTPPermError # Did you mean? FiberError # uninitialized constant Net::FTPPermError @@ -20360,15 +23290,15 @@ # Did you mean? Net::IMAP::OP_NO_SSLv2 # uninitialized constant Net::IMAP::OP_NO_TICKET # uninitialized constant Net::IMAP::OP_NO_TLSv1 -# Did you mean? Net::IMAP::OP_NO_TLSv1_3 -# Net::IMAP::OP_NO_TLSv1_2 +# Did you mean? Net::IMAP::OP_NO_TLSv1_2 # Net::IMAP::OP_NO_TLSv1_1 +# Net::IMAP::OP_NO_TLSv1_3 # uninitialized constant Net::IMAP::OP_NO_TLSv1_1 -# Did you mean? Net::IMAP::OP_NO_TLSv1_3 -# Net::IMAP::OP_NO_TLSv1_2 +# Did you mean? Net::IMAP::OP_NO_TLSv1_2 +# Net::IMAP::OP_NO_TLSv1_3 # uninitialized constant Net::IMAP::OP_NO_TLSv1_2 -# Did you mean? Net::IMAP::OP_NO_TLSv1_3 -# Net::IMAP::OP_NO_TLSv1_1 +# Did you mean? Net::IMAP::OP_NO_TLSv1_1 +# Net::IMAP::OP_NO_TLSv1_3 # uninitialized constant Net::IMAP::OP_NO_TLSv1_3 # Did you mean? Net::IMAP::OP_NO_TLSv1_2 # Net::IMAP::OP_NO_TLSv1_1 @@ -20394,8 +23324,8 @@ # Did you mean? Net::IMAP::SSL2_VERSION # wrong constant name # uninitialized constant Net::IMAP::TLS1_1_VERSION -# Did you mean? Net::IMAP::TLS1_3_VERSION -# Net::IMAP::TLS1_2_VERSION +# Did you mean? Net::IMAP::TLS1_2_VERSION +# Net::IMAP::TLS1_3_VERSION # Net::IMAP::TLS1_VERSION # uninitialized constant Net::IMAP::TLS1_2_VERSION # Did you mean? Net::IMAP::TLS1_3_VERSION @@ -20403,14 +23333,14 @@ # Net::IMAP::TLS1_VERSION # Net::IMAP::SSL2_VERSION # uninitialized constant Net::IMAP::TLS1_3_VERSION -# Did you mean? Net::IMAP::TLS1_1_VERSION -# Net::IMAP::TLS1_2_VERSION +# Did you mean? Net::IMAP::TLS1_2_VERSION +# Net::IMAP::TLS1_1_VERSION # Net::IMAP::TLS1_VERSION # Net::IMAP::SSL3_VERSION # uninitialized constant Net::IMAP::TLS1_VERSION -# Did you mean? Net::IMAP::TLS1_3_VERSION +# Did you mean? Net::IMAP::TLS1_2_VERSION +# Net::IMAP::TLS1_3_VERSION # Net::IMAP::TLS1_1_VERSION -# Net::IMAP::TLS1_2_VERSION # wrong constant name # wrong constant name # uninitialized constant Net::IMAP::VERIFY_CLIENT_ONCE @@ -20582,6 +23512,7 @@ # uninitialized constant Newton # uninitialized constant Newton # wrong constant name to_d +# wrong constant name # uninitialized constant Nokogiri::CSS::Parser::Racc_Main_Parsing_Routine # uninitialized constant Nokogiri::CSS::Parser::Racc_Runtime_Core_Id_C # Did you mean? Nokogiri::CSS::Parser::Racc_Runtime_Core_Version_C @@ -20603,6 +23534,7 @@ # Did you mean? Nokogiri::CSS::Parser::Racc_Runtime_Core_Version # uninitialized constant Nokogiri::CSS::Parser::Racc_YY_Parse_Method # wrong constant name install_default_aliases +# wrong constant name # wrong constant name # wrong constant name # wrong constant name @@ -20828,6 +23760,7 @@ # uninitialized constant Nokogiri::XML::Element::XINCLUDE_END # uninitialized constant Nokogiri::XML::Element::XINCLUDE_START # wrong constant name +# uninitialized constant Nokogiri::XML::ElementContent::COLLECTIONS # uninitialized constant Nokogiri::XML::EntityDecl::ATTRIBUTE_DECL # Did you mean? Nokogiri::XML::AttributeDecl # Nokogiri::XML::EntityDecl::ATTRIBUTE_NODE @@ -20881,7 +23814,6 @@ # uninitialized constant RUBYGEMS_ACTIVATION_MONITOR # wrong constant name to_yaml # wrong constant name yaml_tag -# wrong constant name # wrong constant name internal_object_id # wrong constant name type # wrong constant name @@ -20890,17 +23822,12 @@ # wrong constant name allocation_method_id # wrong constant name allocation_sourcefile # wrong constant name allocation_sourceline -# wrong constant name count_imemo_objects # wrong constant name count_nodes -# wrong constant name count_objects_size # wrong constant name count_symbols -# wrong constant name count_tdata_objects # wrong constant name dump # wrong constant name dump_all # wrong constant name internal_class_of # wrong constant name internal_super_of -# wrong constant name memsize_of -# wrong constant name memsize_of_all # wrong constant name reachable_objects_from # wrong constant name reachable_objects_from_root # wrong constant name trace_object_allocations @@ -21105,8 +24032,8 @@ # uninitialized constant PG::CONNECTION_STARTED # Did you mean? PG::CONNECTION_BAD # PG::CONNECTION_MADE -# PG::CONNECTION_NEEDED # PG::CONNECTION_SETENV +# PG::CONNECTION_NEEDED # wrong constant name # wrong constant name # wrong constant name @@ -21282,6 +24209,7 @@ # wrong constant name # wrong constant name # wrong constant name +# wrong constant name # wrong constant name # wrong constant name # wrong constant name @@ -22209,20 +25137,20 @@ # PG::Connection::CONNECTION_NEEDED # PG::CONNECTION_NEEDED # uninitialized constant PG::Connection::CONNECTION_NEEDED -# Did you mean? PG::CONNECTION_BAD -# PG::Connection::CONNECTION_BAD +# Did you mean? PG::Connection::CONNECTION_BAD +# PG::CONNECTION_BAD # PG::CONNECTION_MADE # PG::Connection::CONNECTION_MADE -# PG::CONNECTION_NEEDED -# PG::Connection::CONNECTION_SETENV # PG::CONNECTION_SETENV +# PG::Connection::CONNECTION_SETENV +# PG::CONNECTION_NEEDED # PG::Connection::CONNECTION_STARTED # PG::CONNECTION_STARTED # uninitialized constant PG::Connection::CONNECTION_OK # Did you mean? PG::ConnectionBad # PG::CONNECTION_OK -# PG::CONNECTION_BAD # PG::Connection::CONNECTION_BAD +# PG::CONNECTION_BAD # PG::CONNECTION_MADE # PG::Connection::CONNECTION_MADE # uninitialized constant PG::Connection::CONNECTION_SETENV @@ -22234,9 +25162,9 @@ # PG::CONNECTION_STARTED # PG::Connection::CONNECTION_STARTED # uninitialized constant PG::Connection::CONNECTION_SSL_STARTUP -# Did you mean? PG::Connection::CONNECTION_GSS_STARTUP -# PG::CONNECTION_GSS_STARTUP +# Did you mean? PG::CONNECTION_GSS_STARTUP # PG::CONNECTION_SSL_STARTUP +# PG::Connection::CONNECTION_GSS_STARTUP # PG::CONNECTION_STARTED # PG::Connection::CONNECTION_STARTED # uninitialized constant PG::Connection::CONNECTION_STARTED @@ -22252,8 +25180,8 @@ # uninitialized constant PG::Connection::DEF_PGPORT # Did you mean? PG::DEF_PGPORT # uninitialized constant PG::Connection::INVALID_OID -# Did you mean? PG::Connection::InvalidOid -# PG::InvalidOid +# Did you mean? PG::InvalidOid +# PG::Connection::InvalidOid # PG::INVALID_OID # uninitialized constant PG::Connection::INV_READ # Did you mean? PG::INV_READ @@ -22903,6 +25831,7 @@ # wrong constant name # wrong constant name # wrong constant name +# wrong constant name # uninitialized constant PG::RecordCoder::FORMAT_ERROR_MASK # uninitialized constant PG::RecordCoder::FORMAT_ERROR_TO_PARTIAL # Did you mean? PG::RecordCoder::FORMAT_ERROR_TO_RAISE @@ -23027,21 +25956,21 @@ # PG::Result::CONNECTION_NEEDED # PG::CONNECTION_NEEDED # uninitialized constant PG::Result::CONNECTION_NEEDED -# Did you mean? PG::CONNECTION_BAD -# PG::Result::CONNECTION_BAD +# Did you mean? PG::Result::CONNECTION_BAD +# PG::CONNECTION_BAD # PG::CONNECTION_MADE # PG::Result::CONNECTION_MADE -# PG::CONNECTION_NEEDED -# PG::Result::CONNECTION_SETENV # PG::CONNECTION_SETENV +# PG::Result::CONNECTION_SETENV +# PG::CONNECTION_NEEDED # PG::Result::CONNECTION_STARTED # PG::CONNECTION_STARTED # uninitialized constant PG::Result::CONNECTION_OK # Did you mean? PG::Connection # PG::ConnectionBad # PG::CONNECTION_OK -# PG::CONNECTION_BAD # PG::Result::CONNECTION_BAD +# PG::CONNECTION_BAD # PG::CONNECTION_MADE # PG::Result::CONNECTION_MADE # uninitialized constant PG::Result::CONNECTION_SETENV @@ -23053,9 +25982,9 @@ # PG::CONNECTION_STARTED # PG::Result::CONNECTION_STARTED # uninitialized constant PG::Result::CONNECTION_SSL_STARTUP -# Did you mean? PG::Result::CONNECTION_GSS_STARTUP -# PG::CONNECTION_GSS_STARTUP +# Did you mean? PG::CONNECTION_GSS_STARTUP # PG::CONNECTION_SSL_STARTUP +# PG::Result::CONNECTION_GSS_STARTUP # PG::CONNECTION_STARTED # PG::Result::CONNECTION_STARTED # uninitialized constant PG::Result::CONNECTION_STARTED @@ -23072,8 +26001,8 @@ # Did you mean? PG::DEF_PGPORT # uninitialized constant PG::Result::Elem # uninitialized constant PG::Result::INVALID_OID -# Did you mean? PG::Result::InvalidOid -# PG::InvalidOid +# Did you mean? PG::InvalidOid +# PG::Result::InvalidOid # PG::INVALID_OID # uninitialized constant PG::Result::INV_READ # Did you mean? PG::INV_READ @@ -24539,6 +27468,11 @@ # uninitialized constant PackageSpec # uninitialized constant PackageSpec # wrong constant name +# wrong constant name filter_map +# wrong constant name physical_processor_count +# wrong constant name processor_count +# wrong constant name +# wrong constant name new # wrong constant name begin # wrong constant name colour # wrong constant name end @@ -24553,12 +27487,16 @@ # wrong constant name find_all # wrong constant name # wrong constant name +# wrong constant name new # wrong constant name describe_in_method # wrong constant name describe_in_method # wrong constant name describe_attrs # wrong constant name describe_tree # wrong constant name inspect # wrong constant name to_s +# wrong constant name new +# wrong constant name new +# wrong constant name # wrong constant name # wrong constant name on_forwarded_kwrestarg # wrong constant name on_forwarded_restarg @@ -24579,17 +27517,34 @@ # wrong constant name in_lambda # wrong constant name in_lambda= # wrong constant name check_ambiguous_slash -# wrong constant name check_invalid_escapes -# wrong constant name e_heredoc_nl # wrong constant name e_lbrace -# wrong constant name emit_character_constant +# wrong constant name emit_class_var # wrong constant name emit_colon_with_digits # wrong constant name emit_comment_from_range # wrong constant name emit_global_var -# wrong constant name emit_invalid_escapes? +# wrong constant name emit_instance_var # wrong constant name emit_rbrace_rparen_rbrack # wrong constant name emit_singleton_class +# wrong constant name numeric_literal_int +# wrong constant name on_newline +# wrong constant name version +# wrong constant name lex_en_inside_string +# wrong constant name lex_en_inside_string= +# wrong constant name advance +# wrong constant name check_ambiguous_slash +# wrong constant name check_invalid_escapes +# wrong constant name close_interp_on_current_literal +# wrong constant name cond +# wrong constant name continue_lexing +# wrong constant name dedent_level +# wrong constant name diagnostic +# wrong constant name emit +# wrong constant name emit_character_constant +# wrong constant name emit_interp_var +# wrong constant name emit_invalid_escapes? +# wrong constant name encode_escape # wrong constant name encode_escaped_char +# wrong constant name eof_codepoint? # wrong constant name extend_interp_code # wrong constant name extend_interp_digit_var # wrong constant name extend_interp_var @@ -24600,13 +27555,55 @@ # wrong constant name extend_string_escaped # wrong constant name extend_string_for_token_range # wrong constant name extend_string_slice_end -# wrong constant name numeric_literal_int +# wrong constant name herebody_s +# wrong constant name herebody_s= +# wrong constant name initialize +# wrong constant name literal +# wrong constant name next_state_for_literal +# wrong constant name on_newline +# wrong constant name pop_literal +# wrong constant name push_literal +# wrong constant name range +# wrong constant name read_character_constant # wrong constant name read_post_meta_or_ctrl_char +# wrong constant name reset # wrong constant name slash_c_char # wrong constant name slash_m_char +# wrong constant name source_buffer +# wrong constant name source_buffer= +# wrong constant name source_pts +# wrong constant name source_pts= +# wrong constant name tok # wrong constant name unescape_char # wrong constant name unicode_points -# wrong constant name version +# wrong constant name version? +# wrong constant name +# wrong constant name lex_en_character +# wrong constant name lex_en_character= +# wrong constant name lex_en_interp_backslash_delimited +# wrong constant name lex_en_interp_backslash_delimited= +# wrong constant name lex_en_interp_backslash_delimited_words +# wrong constant name lex_en_interp_backslash_delimited_words= +# wrong constant name lex_en_interp_string +# wrong constant name lex_en_interp_string= +# wrong constant name lex_en_interp_words +# wrong constant name lex_en_interp_words= +# wrong constant name lex_en_plain_backslash_delimited +# wrong constant name lex_en_plain_backslash_delimited= +# wrong constant name lex_en_plain_backslash_delimited_words +# wrong constant name lex_en_plain_backslash_delimited_words= +# wrong constant name lex_en_plain_string +# wrong constant name lex_en_plain_string= +# wrong constant name lex_en_plain_words +# wrong constant name lex_en_plain_words= +# wrong constant name lex_en_regexp_modifiers +# wrong constant name lex_en_regexp_modifiers= +# wrong constant name lex_en_unknown +# wrong constant name lex_en_unknown= +# wrong constant name lex_error +# wrong constant name lex_error= +# wrong constant name lex_start +# wrong constant name lex_start= # uninitialized constant Parser::Ruby24::Racc_Main_Parsing_Routine # uninitialized constant Parser::Ruby24::Racc_Runtime_Core_Id_C # Did you mean? Parser::Ruby24::Racc_Runtime_Core_Version_C @@ -25241,10 +28238,47 @@ # uninitialized constant Proc9 # uninitialized constant Proc9 # wrong constant name fork +# wrong constant name bar_component +# wrong constant name bar_component= +# wrong constant name percentage_component +# wrong constant name percentage_component= +# wrong constant name projector +# wrong constant name projector= +# wrong constant name rate_component +# wrong constant name rate_component= +# wrong constant name time_component +# wrong constant name time_component= +# wrong constant name title_component +# wrong constant name title_component= +# wrong constant name estimated_wall_clock +# wrong constant name projector +# wrong constant name projector= # uninitialized constant ProgressBar::Format::String::BLANK_RE # uninitialized constant ProgressBar::Format::String::ENCODED_BLANKS # uninitialized constant ProgressBar::Outputs::NonTty::DEFAULT_OUTPUT_STREAM # uninitialized constant ProgressBar::Outputs::Tty::DEFAULT_OUTPUT_STREAM +# wrong constant name +# wrong constant name from_type +# wrong constant name +# wrong constant name decrement +# wrong constant name increment +# wrong constant name initialize +# wrong constant name none? +# wrong constant name progress +# wrong constant name progress= +# wrong constant name projection +# wrong constant name projection= +# wrong constant name reset +# wrong constant name samples +# wrong constant name samples= +# wrong constant name start +# wrong constant name strength +# wrong constant name strength= +# wrong constant name total= +# wrong constant name +# wrong constant name calculate +# wrong constant name +# wrong constant name now # uninitialized constant Pry::BasicObject::RUBYGEMS_ACTIVATION_MONITOR # uninitialized constant Pry::Command::COLORS # uninitialized constant Pry::Command::Ls::COLORS @@ -25749,6 +28783,46 @@ # uninitialized constant RDoc::Markup::Special # uninitialized constant RDoc::RipperStateLex # uninitialized constant RDoc::RipperStateLex +# wrong constant name +# wrong constant name << +# wrong constant name =~ +# wrong constant name [] +# wrong constant name []= +# wrong constant name children +# wrong constant name each +# wrong constant name has_name? +# wrong constant name initialize +# wrong constant name local_name +# wrong constant name local_name= +# wrong constant name name +# wrong constant name name= +# wrong constant name namespace +# wrong constant name namespace= +# wrong constant name node_type +# wrong constant name parent +# wrong constant name parent= +# wrong constant name prefix +# wrong constant name root +# wrong constant name size +# wrong constant name text= +# wrong constant name +# wrong constant name +# uninitialized constant REXML::Namespace::NAME +# uninitialized constant REXML::Namespace::NAMECHAR +# Did you mean? REXML::Namespace::NAME_CHAR +# uninitialized constant REXML::Namespace::NAME_CHAR +# Did you mean? REXML::Namespace::NAME_STR +# REXML::Namespace::NAMECHAR +# uninitialized constant REXML::Namespace::NAME_START_CHAR +# uninitialized constant REXML::Namespace::NAME_STR +# Did you mean? REXML::Namespace::NCNAME_STR +# uninitialized constant REXML::Namespace::NCNAME_STR +# Did you mean? REXML::Namespace::NAME_STR +# uninitialized constant REXML::Namespace::NMTOKEN +# Did you mean? REXML::Namespace::NMTOKENS +# uninitialized constant REXML::Namespace::NMTOKENS +# Did you mean? REXML::XMLTokens +# uninitialized constant REXML::Namespace::REFERENCE # uninitialized constant REXML::Parsers::XPathParser::NAME # Did you mean? REXML::Parsers::XPathParser::QNAME # uninitialized constant REXML::Parsers::XPathParser::NAMECHAR @@ -25766,6 +28840,8 @@ # uninitialized constant REXML::Parsers::XPathParser::NMTOKENS # Did you mean? REXML::XMLTokens # uninitialized constant REXML::Parsers::XPathParser::REFERENCE +# wrong constant name preciate_to_string +# wrong constant name predicate_to_path # uninitialized constant REXML::QuickPath # uninitialized constant REXML::QuickPath # uninitialized constant REXML::SAX2Listener @@ -25788,11 +28864,36 @@ # uninitialized constant REXML::XPathParser::NMTOKENS # Did you mean? REXML::XMLTokens # uninitialized constant REXML::XPathParser::REFERENCE -# wrong constant name -# wrong constant name -# wrong constant name +# wrong constant name add_node +# wrong constant name attributes +# wrong constant name attributes= +# wrong constant name children +# wrong constant name children= # wrong constant name initialize -# wrong constant name +# wrong constant name inner_html +# wrong constant name name +# wrong constant name name= +# wrong constant name to_hash +# wrong constant name to_html +# wrong constant name type +# wrong constant name type= +# wrong constant name typecast_value +# wrong constant name undasherize_keys +# wrong constant name +# wrong constant name available_typecasts +# wrong constant name available_typecasts= +# wrong constant name typecasts +# wrong constant name typecasts= +# uninitialized constant REXMLUtiliyNodeString::BLANK_RE +# uninitialized constant REXMLUtiliyNodeString::ENCODED_BLANKS +# wrong constant name attributes +# wrong constant name attributes= +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name initialize +# wrong constant name # wrong constant name block # wrong constant name initialize # wrong constant name matched_by? @@ -25831,10 +28932,12 @@ # wrong constant name shutdown # wrong constant name valid_options # wrong constant name +# wrong constant name # wrong constant name # wrong constant name dump # wrong constant name initialize # wrong constant name +# wrong constant name # wrong constant name content_type # wrong constant name content_type= # wrong constant name initialize @@ -26002,6 +29105,10 @@ # wrong constant name default_host # wrong constant name new # wrong constant name append_to +# wrong constant name multipart_file_limit +# wrong constant name multipart_file_limit= +# wrong constant name multipart_total_part_limit +# wrong constant name multipart_total_part_limit= # uninitialized constant Ractor # uninitialized constant Ractor # uninitialized constant Rails::ApplicationController::AUTHENTICITY_TOKEN_LENGTH @@ -26010,6 +29117,7 @@ # uninitialized constant Rails::ApplicationController::DEFAULT_SEND_FILE_DISPOSITION # uninitialized constant Rails::ApplicationController::DEFAULT_SEND_FILE_TYPE # uninitialized constant Rails::ApplicationController::EXCLUDE_PARAMETERS +# uninitialized constant Rails::ApplicationController::ILLEGAL_HEADER_VALUE_REGEX # uninitialized constant Rails::ApplicationController::MODULES # Did you mean? Module # uninitialized constant Rails::ApplicationController::NULL_ORIGIN_MESSAGE @@ -26048,6 +29156,21 @@ # wrong constant name usage_path # wrong constant name # wrong constant name suggest +# wrong constant name +# wrong constant name default_html_version +# wrong constant name default_html_version= +# wrong constant name equal_child? +# wrong constant name extract_children +# wrong constant name assert_dom +# wrong constant name assert_dom_email +# wrong constant name assert_dom_encoded +# uninitialized constant Rails::Dom::Testing::Railtie::ABSTRACT_RAILTIES +# wrong constant name +# wrong constant name default_html_version +# wrong constant name default_html_version= +# wrong constant name html5_support? +# wrong constant name html_document +# wrong constant name html_document_fragment # wrong constant name # wrong constant name add_source # wrong constant name application @@ -26158,6 +29281,7 @@ # uninitialized constant Rails::InfoController::DEFAULT_SEND_FILE_DISPOSITION # uninitialized constant Rails::InfoController::DEFAULT_SEND_FILE_TYPE # uninitialized constant Rails::InfoController::EXCLUDE_PARAMETERS +# uninitialized constant Rails::InfoController::ILLEGAL_HEADER_VALUE_REGEX # uninitialized constant Rails::InfoController::MODULES # Did you mean? Module # uninitialized constant Rails::InfoController::NULL_ORIGIN_MESSAGE @@ -26175,6 +29299,7 @@ # uninitialized constant Rails::MailersController::DEFAULT_SEND_FILE_TYPE # uninitialized constant Rails::MailersController::EXCLUDE_PARAMETERS # wrong constant name +# uninitialized constant Rails::MailersController::ILLEGAL_HEADER_VALUE_REGEX # uninitialized constant Rails::MailersController::MODULES # Did you mean? Module # uninitialized constant Rails::MailersController::NULL_ORIGIN_MESSAGE @@ -26207,6 +29332,7 @@ # uninitialized constant Rails::WelcomeController::DEFAULT_SEND_FILE_DISPOSITION # uninitialized constant Rails::WelcomeController::DEFAULT_SEND_FILE_TYPE # uninitialized constant Rails::WelcomeController::EXCLUDE_PARAMETERS +# uninitialized constant Rails::WelcomeController::ILLEGAL_HEADER_VALUE_REGEX # uninitialized constant Rails::WelcomeController::MODULES # Did you mean? Module # uninitialized constant Rails::WelcomeController::NULL_ORIGIN_MESSAGE @@ -26247,26 +29373,44 @@ # wrong constant name to_a # wrong constant name expand # wrong constant name fire_update! -# wrong constant name ruby # wrong constant name completion_quote_character # uninitialized constant Redis::Connection::Ruby::COMMAND_DELIMITER # wrong constant name clear # wrong constant name close +# wrong constant name expiretime # wrong constant name getex +# wrong constant name pexpiretime # wrong constant name redis= # wrong constant name sadd? # wrong constant name smismember +# wrong constant name srem? # wrong constant name sadd_returns_boolean # wrong constant name sadd_returns_boolean= +# wrong constant name srem_returns_boolean +# wrong constant name srem_returns_boolean= +# uninitialized constant Refinement +# uninitialized constant Refinement +# wrong constant name custom_to_s_handling +# wrong constant name custom_to_s_handling= +# wrong constant name parent +# wrong constant name parent= +# wrong constant name pre_quantifier_decorations +# wrong constant name pre_quantifier_decorations= # wrong constant name te # wrong constant name te= # wrong constant name conditional_level # wrong constant name conditional_level= +# wrong constant name custom_to_s_handling +# wrong constant name custom_to_s_handling= # wrong constant name level # wrong constant name level= # wrong constant name nesting_level # wrong constant name options # wrong constant name options= +# wrong constant name parent +# wrong constant name parent= +# wrong constant name pre_quantifier_decorations +# wrong constant name pre_quantifier_decorations= # wrong constant name quantifier # wrong constant name set_level # wrong constant name set_level= @@ -26282,16 +29426,24 @@ # wrong constant name === # wrong constant name # wrong constant name base_length +# wrong constant name capturing? # wrong constant name coded_offset +# wrong constant name comment? +# wrong constant name decorative? +# wrong constant name ends_at # wrong constant name eql? # wrong constant name full_length # wrong constant name human_name +# wrong constant name inspect # wrong constant name is? # wrong constant name nesting_level= # wrong constant name offset # wrong constant name one_of? # wrong constant name optional? # wrong constant name parts +# wrong constant name pre_quantifier_decoration +# wrong constant name pretty_print +# wrong constant name pretty_print_instance_variables # wrong constant name quantified? # wrong constant name quantifier= # wrong constant name quantifier_affix @@ -26302,18 +29454,28 @@ # wrong constant name to_str # wrong constant name token_class # wrong constant name type? +# wrong constant name capturing? +# wrong constant name comment? # wrong constant name construct # wrong constant name construct_defaults +# wrong constant name decorative? +# wrong constant name referential? +# wrong constant name terminal? # wrong constant name token_class # wrong constant name # wrong constant name # wrong constant name included +# wrong constant name each_expression_with_index +# wrong constant name each_expression_without_index +# wrong constant name extract_quantifier_target # wrong constant name emit # wrong constant name # wrong constant name literal_run # wrong constant name literal_run= # wrong constant name initialize # wrong constant name +# wrong constant name for +# wrong constant name types # wrong constant name parse_prop_map # wrong constant name posix_classes # wrong constant name @@ -26337,12 +29499,20 @@ # wrong constant name normalize_backref # wrong constant name normalize_group # wrong constant name removed_features +# wrong constant name +# wrong constant name # uninitialized constant Regexp::Syntax::V3_2_0::All # uninitialized constant Regexp::Syntax::V3_2_0::Map # uninitialized constant Regexp::Syntax::V3_2_0::Types # wrong constant name # wrong constant name comparable # wrong constant name for +# uninitialized constant Regexp::TimeoutError +# uninitialized constant Regexp::TimeoutError +# wrong constant name +# wrong constant name set_default_key_bindings_ansi_cursor +# wrong constant name with_raw_input +# wrong constant name io_gate # wrong constant name fg_color # wrong constant name fg_color= # wrong constant name pointer_bg_color @@ -26351,8 +29521,47 @@ # wrong constant name pointer_fg_color= # wrong constant name hide_cursor # wrong constant name show_cursor +# wrong constant name with_raw_input +# wrong constant name == +# uninitialized constant Reline::Key::Elem +# wrong constant name char +# wrong constant name char= +# wrong constant name combined_char +# wrong constant name combined_char= +# wrong constant name match? +# wrong constant name with_meta +# wrong constant name with_meta= +# wrong constant name +# wrong constant name [] +# wrong constant name members +# wrong constant name +# wrong constant name +# wrong constant name io_gate +# uninitialized constant Reline::LineEditor::CompletionJourneyData::Elem +# wrong constant name list +# wrong constant name list= +# wrong constant name pointer +# wrong constant name pointer= +# wrong constant name postposing +# wrong constant name postposing= +# wrong constant name preposing +# wrong constant name preposing= +# wrong constant name +# wrong constant name [] +# wrong constant name members +# wrong constant name preferred_dialog_height +# wrong constant name screen_height +# uninitialized constant Reline::LineEditor::MenuInfo::Elem +# wrong constant name list +# wrong constant name list= +# wrong constant name target +# wrong constant name target= +# wrong constant name +# wrong constant name [] +# wrong constant name members # uninitialized constant Reline::Terminfo::StringWithTiparm # uninitialized constant Reline::Terminfo::StringWithTiparm +# wrong constant name update_iogate # wrong constant name extract_resources # wrong constant name initialize # wrong constant name initialize @@ -26377,7 +29586,7 @@ # wrong constant name free_request_id # wrong constant name random # uninitialized constant Resque::Job::VERSION -# Did you mean? Resque Client connected to ::VERSION +# Did you mean? Resque Client connected to ::VERSION # wrong constant name # wrong constant name # wrong constant name initialize @@ -26726,10 +29935,10 @@ # RuboCop::AST::NodePattern::Parser::Racc_Runtime_Core_Version_C # uninitialized constant RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Core_Version # Did you mean? RuboCop::AST::NodePattern::Parser::Racc_Runtime_Core_Version -# RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Core_Version_R +# RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Core_Version_C # RuboCop::AST::NodePattern::Parser::Racc_Runtime_Core_Version_C +# RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Core_Version_R # RuboCop::AST::NodePattern::Parser::Racc_Runtime_Core_Version_R -# RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Core_Version_C # RuboCop::AST::NodePattern::Parser::Racc_Runtime_Version # RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Version # RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Core_Id_C @@ -26741,23 +29950,23 @@ # RuboCop::AST::NodePattern::Parser::Racc_Runtime_Core_Version # RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Version # RuboCop::AST::NodePattern::Parser::Racc_Runtime_Version -# RuboCop::AST::NodePattern::Parser::Racc_Runtime_Core_Id_C # RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Core_Id_C +# RuboCop::AST::NodePattern::Parser::Racc_Runtime_Core_Id_C # uninitialized constant RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Core_Version_R -# Did you mean? RuboCop::AST::NodePattern::Parser::Racc_Runtime_Core_Version_C +# Did you mean? RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Core_Version_C +# RuboCop::AST::NodePattern::Parser::Racc_Runtime_Core_Version_C # RuboCop::AST::NodePattern::Parser::Racc_Runtime_Core_Version_R -# RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Core_Version_C # RuboCop::AST::NodePattern::Parser::Racc_Runtime_Core_Version # RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Version # RuboCop::AST::NodePattern::Parser::Racc_Runtime_Version -# RuboCop::AST::NodePattern::Parser::Racc_Runtime_Core_Id_C # RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Core_Id_C +# RuboCop::AST::NodePattern::Parser::Racc_Runtime_Core_Id_C # uninitialized constant RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Type # Did you mean? RuboCop::AST::NodePattern::Parser::Racc_Runtime_Type # uninitialized constant RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Version # Did you mean? RuboCop::AST::NodePattern::Parser::Racc_Runtime_Version -# RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Core_Version # RuboCop::AST::NodePattern::Parser::Racc_Runtime_Core_Version +# RuboCop::AST::NodePattern::Parser::WithMeta::Racc_Runtime_Core_Version # uninitialized constant RuboCop::AST::NodePattern::Parser::WithMeta::Racc_YY_Parse_Method # Did you mean? RuboCop::AST::NodePattern::Parser::Racc_YY_Parse_Method # uninitialized constant RuboCop::AST::NodePattern::Parser::WithMeta::Racc_arg @@ -26874,39 +30083,53 @@ # uninitialized constant Rufus::Scheduler::EveryJob::FIRSTS # wrong constant name resume_discard_past # wrong constant name resume_discard_past= +# wrong constant name discard_past? # wrong constant name entries # wrong constant name has_key? # wrong constant name locals # wrong constant name location # wrong constant name name # wrong constant name name= +# wrong constant name past? # wrong constant name resume_discard_past= # wrong constant name source_location # wrong constant name values # wrong constant name unschedule_all -# wrong constant name discard_past? # wrong constant name ltstamp # wrong constant name monow # uninitialized constant SDBM # uninitialized constant SDBM # uninitialized constant SDBMError # uninitialized constant SDBMError +# uninitialized constant SalesforceDebugging::CACHED_CREDENTIAL_STATUS_TTL # uninitialized constant SalesforceDebugging::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant SalesforceDebugging::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? SalesforceDebugging::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant SalesforceDebugging::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant SalesforceDebugging::CONNECTOR_SETTING_POLLING_ENABLED # uninitialized constant SalesforceDebugging::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # Did you mean? SalesforceDebugging::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # uninitialized constant SalesforceDebugging::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # Did you mean? SalesforceDebugging::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant SalesforceDebugging::CONNECTOR_SETTING_SYNC_START_DATE # uninitialized constant SalesforceDebugging::CPQ_AMENDED_CONTRACT +# uninitialized constant SalesforceDebugging::CPQ_AMENDED_CONTRACT_LOOKUP # uninitialized constant SalesforceDebugging::CPQ_CONSUMPTION_RATE # Did you mean? SalesforceDebugging::SF_CONSUMPTION_RATE # uninitialized constant SalesforceDebugging::CPQ_CONSUMPTION_SCHEDULE # Did you mean? SalesforceDebugging::SF_CONSUMPTION_SCHEDULE +# uninitialized constant SalesforceDebugging::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? SalesforceDebugging::CPQ_QUOTE_SUBSCRIPTION_TERM +# SalesforceDebugging::CPQ_PRODUCT_SUBSCRIPTION_TYPE # uninitialized constant SalesforceDebugging::CPQ_PRODUCT_BILLING_TYPE # uninitialized constant SalesforceDebugging::CPQ_PRODUCT_CHARGE_TYPE # uninitialized constant SalesforceDebugging::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? SalesforceDebugging::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant SalesforceDebugging::CPQ_PRORATE_MULTIPLIER # uninitialized constant SalesforceDebugging::CPQ_QUOTE # uninitialized constant SalesforceDebugging::CPQ_QUOTE_BILLING_FREQUENCY # uninitialized constant SalesforceDebugging::CPQ_QUOTE_LINE +# uninitialized constant SalesforceDebugging::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM # uninitialized constant SalesforceDebugging::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # uninitialized constant SalesforceDebugging::CPQ_QUOTE_LINE_PRODUCT # uninitialized constant SalesforceDebugging::CPQ_QUOTE_OPPORTUNITY @@ -26915,16 +30138,26 @@ # uninitialized constant SalesforceDebugging::CPQ_QUOTE_PRIMARY # uninitialized constant SalesforceDebugging::CPQ_QUOTE_PRIMARY_CONTACT # uninitialized constant SalesforceDebugging::CPQ_QUOTE_QUANTITY +# uninitialized constant SalesforceDebugging::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? SalesforceDebugging::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# SalesforceDebugging::CPQ_QUOTE_SUBSCRIPTION_TERM +# SalesforceDebugging::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant SalesforceDebugging::CPQ_QUOTE_SUBSCRIPTION_PRICING # Did you mean? SalesforceDebugging::CPQ_QUOTE_SUBSCRIPTION_TERM +# SalesforceDebugging::CPQ_QUOTE_SUBSCRIPTION_END_DATE # uninitialized constant SalesforceDebugging::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# Did you mean? SalesforceDebugging::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? SalesforceDebugging::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# SalesforceDebugging::CPQ_QUOTE_SUBSCRIPTION_TERM # SalesforceDebugging::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant SalesforceDebugging::CPQ_QUOTE_SUBSCRIPTION_TERM -# Did you mean? SalesforceDebugging::CPQ_QUOTE_SUBSCRIPTION_PRICING +# Did you mean? SalesforceDebugging::CPQ_DEFAULT_SUBSCRIPTION_TERM +# SalesforceDebugging::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant SalesforceDebugging::DAYS_IN_YEAR # uninitialized constant SalesforceDebugging::GENERIC_STRIPE_ID +# uninitialized constant SalesforceDebugging::GENERIC_STRIPE_REVENUE_CONTRACT_ID # uninitialized constant SalesforceDebugging::MAX_SF_RETRY_ATTEMPTS # uninitialized constant SalesforceDebugging::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant SalesforceDebugging::MONTHS_IN_YEAR # uninitialized constant SalesforceDebugging::ORDER_INVOICE_PAYMENT_LINK # uninitialized constant SalesforceDebugging::ORDER_LINE_SKIP # uninitialized constant SalesforceDebugging::ORDER_SF_STRIPE_COUPON @@ -26946,6 +30179,7 @@ # Did you mean? SalesforceDebugging::SALESFORCE_ACCOUNT_ID_HEADER # uninitialized constant SalesforceDebugging::SALESFORCE_PACKAGE_NAMESPACE_HEADER # Did you mean? SalesforceDebugging::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant SalesforceDebugging::SECONDS_IN_DAY # uninitialized constant SalesforceDebugging::SF_ACCOUNT # uninitialized constant SalesforceDebugging::SF_CONSUMPTION_RATE # Did you mean? SalesforceDebugging::CPQ_CONSUMPTION_RATE @@ -26959,23 +30193,35 @@ # Did you mean? SalesforceDebugging::SF_CONTRACT_QUOTE_ID # uninitialized constant SalesforceDebugging::SF_CONTRACT_QUOTE_ID # Did you mean? SalesforceDebugging::SF_CONTRACT_ORDER_ID +# uninitialized constant SalesforceDebugging::SF_CURRENCY_ISO_CODE # uninitialized constant SalesforceDebugging::SF_ID # uninitialized constant SalesforceDebugging::SF_LAST_MODIFIED_DATE # uninitialized constant SalesforceDebugging::SF_OPPORTUNITY +# uninitialized constant SalesforceDebugging::SF_OPPORTUNITY_CLOSE_DATE # uninitialized constant SalesforceDebugging::SF_ORDER # uninitialized constant SalesforceDebugging::SF_ORDER_ACCOUNT +# uninitialized constant SalesforceDebugging::SF_ORDER_ACTIVATED_DATE # uninitialized constant SalesforceDebugging::SF_ORDER_CONTRACTED +# uninitialized constant SalesforceDebugging::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM # uninitialized constant SalesforceDebugging::SF_ORDER_ITEM -# Did you mean? SalesforceDebugging::SF_ORDER_QUOTE +# Did you mean? SalesforceDebugging::SF_ORDER_TYPE +# SalesforceDebugging::SF_ORDER_QUOTE # uninitialized constant SalesforceDebugging::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant SalesforceDebugging::SF_ORDER_ITEM_TOTAL_PRICE # uninitialized constant SalesforceDebugging::SF_ORDER_QUOTE +# Did you mean? SalesforceDebugging::SF_ORDER_TYPE +# SalesforceDebugging::SF_ORDER_ITEM +# uninitialized constant SalesforceDebugging::SF_ORDER_TYPE # Did you mean? SalesforceDebugging::SF_ORDER_ITEM +# SalesforceDebugging::SF_ORDER_QUOTE # uninitialized constant SalesforceDebugging::SF_PRICEBOOK # uninitialized constant SalesforceDebugging::SF_PRICEBOOK_ENTRY # uninitialized constant SalesforceDebugging::SF_PRODUCT # uninitialized constant SalesforceDebugging::SF_PRODUCT_CONSUMPTION_SCHEDULE # Did you mean? SalesforceDebugging::SF_CONSUMPTION_SCHEDULE +# uninitialized constant SalesforceDebugging::SKIP_PAST_INITIAL_INVOICES # uninitialized constant SalesforceDebugging::SYNC_RECORD +# uninitialized constant SalesforceDebugging::TERMINATION_METADATA_PREFIX # uninitialized constant Scanf # uninitialized constant Scanf # wrong constant name @@ -27359,6 +30605,7 @@ # wrong constant name # wrong constant name # wrong constant name +# wrong constant name add_response_events # wrong constant name # wrong constant name unwrap_callback_body # wrong constant name @@ -27395,6 +30642,7 @@ # wrong constant name retries # wrong constant name retries= # wrong constant name +# wrong constant name checksum_validated # wrong constant name context # wrong constant name data # wrong constant name data= @@ -28305,6 +31553,140 @@ # uninitialized constant Sequel::ThreadedConnectionPool::OPTS # Did you mean? Sequel::OPTS # uninitialized constant Sequel::ThreadedConnectionPool::POOL_CLASS_MAP +# uninitialized constant SessionsController::AUTHENTICITY_TOKEN_LENGTH +# uninitialized constant SessionsController::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant SessionsController::CALLBACK_FILTER_TYPES +# uninitialized constant SessionsController::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant SessionsController::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? SessionsController::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant SessionsController::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant SessionsController::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant SessionsController::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# Did you mean? SessionsController::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant SessionsController::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# Did you mean? SessionsController::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant SessionsController::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant SessionsController::CPQ_AMENDED_CONTRACT +# uninitialized constant SessionsController::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant SessionsController::CPQ_CONSUMPTION_RATE +# Did you mean? SessionsController::SF_CONSUMPTION_RATE +# uninitialized constant SessionsController::CPQ_CONSUMPTION_SCHEDULE +# Did you mean? SessionsController::SF_CONSUMPTION_SCHEDULE +# uninitialized constant SessionsController::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? SessionsController::CPQ_QUOTE_SUBSCRIPTION_TERM +# SessionsController::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant SessionsController::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant SessionsController::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant SessionsController::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? SessionsController::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant SessionsController::CPQ_PRORATE_MULTIPLIER +# uninitialized constant SessionsController::CPQ_QUOTE +# uninitialized constant SessionsController::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant SessionsController::CPQ_QUOTE_LINE +# uninitialized constant SessionsController::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant SessionsController::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant SessionsController::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant SessionsController::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant SessionsController::CPQ_QUOTE_ORDERED +# uninitialized constant SessionsController::CPQ_QUOTE_PRICEBOOK +# uninitialized constant SessionsController::CPQ_QUOTE_PRIMARY +# uninitialized constant SessionsController::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant SessionsController::CPQ_QUOTE_QUANTITY +# uninitialized constant SessionsController::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? SessionsController::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# SessionsController::CPQ_QUOTE_SUBSCRIPTION_TERM +# SessionsController::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant SessionsController::CPQ_QUOTE_SUBSCRIPTION_PRICING +# Did you mean? SessionsController::CPQ_QUOTE_SUBSCRIPTION_TERM +# SessionsController::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant SessionsController::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# Did you mean? SessionsController::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# SessionsController::CPQ_QUOTE_SUBSCRIPTION_TERM +# SessionsController::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant SessionsController::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? SessionsController::CPQ_DEFAULT_SUBSCRIPTION_TERM +# SessionsController::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant SessionsController::DAYS_IN_YEAR +# uninitialized constant SessionsController::DEFAULT_PROTECTED_INSTANCE_VARIABLES +# uninitialized constant SessionsController::DEFAULT_SEND_FILE_DISPOSITION +# uninitialized constant SessionsController::DEFAULT_SEND_FILE_TYPE +# uninitialized constant SessionsController::EXCLUDE_PARAMETERS +# uninitialized constant SessionsController::GENERIC_STRIPE_ID +# uninitialized constant SessionsController::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant SessionsController::ILLEGAL_HEADER_VALUE_REGEX +# uninitialized constant SessionsController::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant SessionsController::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant SessionsController::MODULES +# Did you mean? Module +# uninitialized constant SessionsController::MONTHS_IN_YEAR +# uninitialized constant SessionsController::NULL_ORIGIN_MESSAGE +# uninitialized constant SessionsController::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant SessionsController::ORDER_LINE_SKIP +# uninitialized constant SessionsController::ORDER_SF_STRIPE_COUPON +# Did you mean? SessionsController::QUOTE_SF_STRIPE_COUPON +# uninitialized constant SessionsController::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant SessionsController::POLL_FREQUENCY +# uninitialized constant SessionsController::PROTECTED_IVARS +# uninitialized constant SessionsController::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# Did you mean? SessionsController::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant SessionsController::QUOTE_SF_STRIPE_COUPON +# Did you mean? SessionsController::ORDER_SF_STRIPE_COUPON +# uninitialized constant SessionsController::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# Did you mean? SessionsController::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant SessionsController::RENDERERS +# uninitialized constant SessionsController::RENDER_FORMATS_IN_PRIORITY +# uninitialized constant SessionsController::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant SessionsController::SALESFORCE_ACCOUNT_ID_HEADER +# Did you mean? SessionsController::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant SessionsController::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant SessionsController::SALESFORCE_KEY_HEADER +# uninitialized constant SessionsController::SALESFORCE_PACKAGE_ID_HEADER +# Did you mean? SessionsController::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant SessionsController::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# Did you mean? SessionsController::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant SessionsController::SECONDS_IN_DAY +# uninitialized constant SessionsController::SF_ACCOUNT +# uninitialized constant SessionsController::SF_CONSUMPTION_RATE +# Did you mean? SessionsController::CPQ_CONSUMPTION_RATE +# uninitialized constant SessionsController::SF_CONSUMPTION_SCHEDULE +# Did you mean? SessionsController::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant SessionsController::SF_CONTACT +# Did you mean? SessionsController::SF_CONTRACT +# uninitialized constant SessionsController::SF_CONTRACT +# Did you mean? SessionsController::SF_CONTACT +# uninitialized constant SessionsController::SF_CONTRACT_ORDER_ID +# Did you mean? SessionsController::SF_CONTRACT_QUOTE_ID +# uninitialized constant SessionsController::SF_CONTRACT_QUOTE_ID +# Did you mean? SessionsController::SF_CONTRACT_ORDER_ID +# uninitialized constant SessionsController::SF_CURRENCY_ISO_CODE +# uninitialized constant SessionsController::SF_ID +# uninitialized constant SessionsController::SF_LAST_MODIFIED_DATE +# uninitialized constant SessionsController::SF_OPPORTUNITY +# uninitialized constant SessionsController::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant SessionsController::SF_ORDER +# uninitialized constant SessionsController::SF_ORDER_ACCOUNT +# uninitialized constant SessionsController::SF_ORDER_ACTIVATED_DATE +# uninitialized constant SessionsController::SF_ORDER_CONTRACTED +# uninitialized constant SessionsController::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant SessionsController::SF_ORDER_ITEM +# Did you mean? SessionsController::SF_ORDER_TYPE +# SessionsController::SF_ORDER_QUOTE +# uninitialized constant SessionsController::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant SessionsController::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant SessionsController::SF_ORDER_QUOTE +# Did you mean? SessionsController::SF_ORDER_TYPE +# SessionsController::SF_ORDER_ITEM +# uninitialized constant SessionsController::SF_ORDER_TYPE +# Did you mean? SessionsController::SF_ORDER_ITEM +# SessionsController::SF_ORDER_QUOTE +# uninitialized constant SessionsController::SF_PRICEBOOK +# uninitialized constant SessionsController::SF_PRICEBOOK_ENTRY +# uninitialized constant SessionsController::SF_PRODUCT +# uninitialized constant SessionsController::SF_PRODUCT_CONSUMPTION_SCHEDULE +# Did you mean? SessionsController::SF_CONSUMPTION_SCHEDULE +# uninitialized constant SessionsController::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant SessionsController::SYNC_RECORD +# uninitialized constant SessionsController::TERMINATION_METADATA_PREFIX # wrong constant name == # wrong constant name === # wrong constant name divide @@ -28802,9 +32184,37 @@ # Did you mean? Socket::RDONLY # uninitialized constant SorbetRails::ModelPlugins::RUBYGEMS_ACTIVATION_MONITOR # uninitialized constant SorbetRails::SorbetUtils::RUBYGEMS_ACTIVATION_MONITOR +# wrong constant name csrf +# wrong constant name csrf= +# wrong constant name csrf? +# wrong constant name oauth_version +# wrong constant name oauth_version= +# wrong constant name oauth_version? +# wrong constant name salesforce_account_id +# wrong constant name salesforce_account_id= +# wrong constant name salesforce_account_id? +# wrong constant name salesforce_instance_subdomain +# wrong constant name salesforce_instance_subdomain= +# wrong constant name salesforce_instance_subdomain? +# wrong constant name salesforce_instance_type +# wrong constant name salesforce_instance_type= +# wrong constant name salesforce_instance_type? +# wrong constant name salesforce_namespace +# wrong constant name salesforce_namespace= +# wrong constant name salesforce_namespace? +# wrong constant name stripe_account_id +# wrong constant name stripe_account_id= +# wrong constant name stripe_account_id? +# wrong constant name user_id +# wrong constant name user_id= +# wrong constant name user_id? # wrong constant name parse_csv # wrong constant name shellescape # wrong constant name shellsplit +# wrong constant name bytes +# wrong constant name chars +# wrong constant name codepoints +# wrong constant name lines # wrong constant name set_encoding_by_bom # wrong constant name bol? # wrong constant name fixed_anchor? @@ -29079,29 +32489,165 @@ # uninitialized constant Stripe::UsageRecordSummary::RESERVED_FIELD_NAMES # wrong constant name convert_to_stripe_object_with_params # uninitialized constant Stripe::WebhookEndpoint::RESERVED_FIELD_NAMES -# wrong constant name initialize +# wrong constant name new # wrong constant name log +# uninitialized constant StripeForce::PollTimestamp::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant StripeForce::PollTimestamp::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant StripeForce::PollTimestamp::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? StripeForce::PollTimestamp::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant StripeForce::PollTimestamp::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant StripeForce::PollTimestamp::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant StripeForce::PollTimestamp::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# Did you mean? StripeForce::PollTimestamp::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant StripeForce::PollTimestamp::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# Did you mean? StripeForce::PollTimestamp::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant StripeForce::PollTimestamp::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant StripeForce::PollTimestamp::CPQ_AMENDED_CONTRACT +# uninitialized constant StripeForce::PollTimestamp::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant StripeForce::PollTimestamp::CPQ_CONSUMPTION_RATE +# Did you mean? StripeForce::PollTimestamp::SF_CONSUMPTION_RATE +# uninitialized constant StripeForce::PollTimestamp::CPQ_CONSUMPTION_SCHEDULE +# Did you mean? StripeForce::PollTimestamp::SF_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::PollTimestamp::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? StripeForce::PollTimestamp::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::PollTimestamp::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant StripeForce::PollTimestamp::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant StripeForce::PollTimestamp::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant StripeForce::PollTimestamp::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? StripeForce::PollTimestamp::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant StripeForce::PollTimestamp::CPQ_PRORATE_MULTIPLIER +# uninitialized constant StripeForce::PollTimestamp::CPQ_QUOTE +# uninitialized constant StripeForce::PollTimestamp::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant StripeForce::PollTimestamp::CPQ_QUOTE_LINE +# uninitialized constant StripeForce::PollTimestamp::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant StripeForce::PollTimestamp::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant StripeForce::PollTimestamp::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant StripeForce::PollTimestamp::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant StripeForce::PollTimestamp::CPQ_QUOTE_ORDERED +# uninitialized constant StripeForce::PollTimestamp::CPQ_QUOTE_PRICEBOOK +# uninitialized constant StripeForce::PollTimestamp::CPQ_QUOTE_PRIMARY +# uninitialized constant StripeForce::PollTimestamp::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant StripeForce::PollTimestamp::CPQ_QUOTE_QUANTITY +# uninitialized constant StripeForce::PollTimestamp::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? StripeForce::PollTimestamp::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# StripeForce::PollTimestamp::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::PollTimestamp::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant StripeForce::PollTimestamp::CPQ_QUOTE_SUBSCRIPTION_PRICING +# Did you mean? StripeForce::PollTimestamp::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::PollTimestamp::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant StripeForce::PollTimestamp::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# Did you mean? StripeForce::PollTimestamp::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::PollTimestamp::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::PollTimestamp::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant StripeForce::PollTimestamp::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? StripeForce::PollTimestamp::CPQ_DEFAULT_SUBSCRIPTION_TERM +# StripeForce::PollTimestamp::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant StripeForce::PollTimestamp::DAYS_IN_YEAR +# uninitialized constant StripeForce::PollTimestamp::GENERIC_STRIPE_ID +# uninitialized constant StripeForce::PollTimestamp::GENERIC_STRIPE_REVENUE_CONTRACT_ID # uninitialized constant StripeForce::PollTimestamp::HOOKS +# uninitialized constant StripeForce::PollTimestamp::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant StripeForce::PollTimestamp::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant StripeForce::PollTimestamp::MONTHS_IN_YEAR # uninitialized constant StripeForce::PollTimestamp::OPTS +# uninitialized constant StripeForce::PollTimestamp::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant StripeForce::PollTimestamp::ORDER_LINE_SKIP +# uninitialized constant StripeForce::PollTimestamp::ORDER_SF_STRIPE_COUPON +# Did you mean? StripeForce::PollTimestamp::QUOTE_SF_STRIPE_COUPON +# uninitialized constant StripeForce::PollTimestamp::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant StripeForce::PollTimestamp::POLL_FREQUENCY +# uninitialized constant StripeForce::PollTimestamp::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# Did you mean? StripeForce::PollTimestamp::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant StripeForce::PollTimestamp::QUOTE_SF_STRIPE_COUPON +# Did you mean? StripeForce::PollTimestamp::ORDER_SF_STRIPE_COUPON +# uninitialized constant StripeForce::PollTimestamp::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# Did you mean? StripeForce::PollTimestamp::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION # uninitialized constant StripeForce::PollTimestamp::RESTRICTED_SETTER_METHODS +# uninitialized constant StripeForce::PollTimestamp::SALESFORCE_ACCOUNT_ID_HEADER +# Did you mean? StripeForce::PollTimestamp::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant StripeForce::PollTimestamp::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant StripeForce::PollTimestamp::SALESFORCE_KEY_HEADER +# uninitialized constant StripeForce::PollTimestamp::SALESFORCE_PACKAGE_ID_HEADER +# Did you mean? StripeForce::PollTimestamp::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant StripeForce::PollTimestamp::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# Did you mean? StripeForce::PollTimestamp::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant StripeForce::PollTimestamp::SECONDS_IN_DAY +# uninitialized constant StripeForce::PollTimestamp::SF_ACCOUNT +# uninitialized constant StripeForce::PollTimestamp::SF_CONSUMPTION_RATE +# Did you mean? StripeForce::PollTimestamp::CPQ_CONSUMPTION_RATE +# uninitialized constant StripeForce::PollTimestamp::SF_CONSUMPTION_SCHEDULE +# Did you mean? StripeForce::PollTimestamp::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::PollTimestamp::SF_CONTACT +# Did you mean? StripeForce::PollTimestamp::SF_CONTRACT +# uninitialized constant StripeForce::PollTimestamp::SF_CONTRACT +# Did you mean? StripeForce::PollTimestamp::SF_CONTACT +# uninitialized constant StripeForce::PollTimestamp::SF_CONTRACT_ORDER_ID +# Did you mean? StripeForce::PollTimestamp::SF_CONTRACT_QUOTE_ID +# uninitialized constant StripeForce::PollTimestamp::SF_CONTRACT_QUOTE_ID +# Did you mean? StripeForce::PollTimestamp::SF_CONTRACT_ORDER_ID +# uninitialized constant StripeForce::PollTimestamp::SF_CURRENCY_ISO_CODE +# uninitialized constant StripeForce::PollTimestamp::SF_ID +# uninitialized constant StripeForce::PollTimestamp::SF_LAST_MODIFIED_DATE +# uninitialized constant StripeForce::PollTimestamp::SF_OPPORTUNITY +# uninitialized constant StripeForce::PollTimestamp::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant StripeForce::PollTimestamp::SF_ORDER +# uninitialized constant StripeForce::PollTimestamp::SF_ORDER_ACCOUNT +# uninitialized constant StripeForce::PollTimestamp::SF_ORDER_ACTIVATED_DATE +# uninitialized constant StripeForce::PollTimestamp::SF_ORDER_CONTRACTED +# uninitialized constant StripeForce::PollTimestamp::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant StripeForce::PollTimestamp::SF_ORDER_ITEM +# Did you mean? StripeForce::PollTimestamp::SF_ORDER_TYPE +# StripeForce::PollTimestamp::SF_ORDER_QUOTE +# uninitialized constant StripeForce::PollTimestamp::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant StripeForce::PollTimestamp::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant StripeForce::PollTimestamp::SF_ORDER_QUOTE +# Did you mean? StripeForce::PollTimestamp::SF_ORDER_TYPE +# StripeForce::PollTimestamp::SF_ORDER_ITEM +# uninitialized constant StripeForce::PollTimestamp::SF_ORDER_TYPE +# Did you mean? StripeForce::PollTimestamp::SF_ORDER_ITEM +# StripeForce::PollTimestamp::SF_ORDER_QUOTE +# uninitialized constant StripeForce::PollTimestamp::SF_PRICEBOOK +# uninitialized constant StripeForce::PollTimestamp::SF_PRICEBOOK_ENTRY +# uninitialized constant StripeForce::PollTimestamp::SF_PRODUCT +# uninitialized constant StripeForce::PollTimestamp::SF_PRODUCT_CONSUMPTION_SCHEDULE +# Did you mean? StripeForce::PollTimestamp::SF_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::PollTimestamp::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant StripeForce::PollTimestamp::SYNC_RECORD +# uninitialized constant StripeForce::PollTimestamp::TERMINATION_METADATA_PREFIX # wrong constant name log +# wrong constant name new # wrong constant name log # wrong constant name log # wrong constant name inherited # wrong constant name log # wrong constant name inherited +# uninitialized constant StripeForce::Translate::OrderAmendment::CACHED_CREDENTIAL_STATUS_TTL +# Did you mean? StripeForce::Translate::CACHED_CREDENTIAL_STATUS_TTL # uninitialized constant StripeForce::Translate::OrderAmendment::CONNECTOR_SETTING_CPQ_TERM_UNIT # Did you mean? StripeForce::Translate::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant StripeForce::Translate::OrderAmendment::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? StripeForce::Translate::CONNECTOR_SETTING_POLLING_ENABLED +# StripeForce::Translate::OrderAmendment::CONNECTOR_SETTING_POLLING_ENABLED +# StripeForce::Translate::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant StripeForce::Translate::OrderAmendment::CONNECTOR_SETTING_PACKAGE_VERSION +# Did you mean? StripeForce::Translate::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant StripeForce::Translate::OrderAmendment::CONNECTOR_SETTING_POLLING_ENABLED +# Did you mean? StripeForce::Translate::CONNECTOR_SETTING_POLLING_ENABLED # uninitialized constant StripeForce::Translate::OrderAmendment::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # Did you mean? StripeForce::Translate::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # StripeForce::Translate::OrderAmendment::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # StripeForce::Translate::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # uninitialized constant StripeForce::Translate::OrderAmendment::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # Did you mean? StripeForce::Translate::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# StripeForce::Translate::OrderAmendment::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # StripeForce::Translate::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# StripeForce::Translate::OrderAmendment::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant StripeForce::Translate::OrderAmendment::CONNECTOR_SETTING_SYNC_START_DATE +# Did you mean? StripeForce::Translate::CONNECTOR_SETTING_SYNC_START_DATE # uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_AMENDED_CONTRACT # Did you mean? StripeForce::Translate::CPQ_AMENDED_CONTRACT +# uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_AMENDED_CONTRACT_LOOKUP +# Did you mean? StripeForce::Translate::CPQ_AMENDED_CONTRACT_LOOKUP +# StripeForce::Translate::CPQ_AMENDED_CONTRACT # uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_CONSUMPTION_RATE # Did you mean? StripeForce::Translate::SF_CONSUMPTION_RATE # StripeForce::Translate::OrderAmendment::SF_CONSUMPTION_RATE @@ -29110,18 +32656,30 @@ # Did you mean? StripeForce::Translate::OrderAmendment::SF_CONSUMPTION_SCHEDULE # StripeForce::Translate::SF_CONSUMPTION_SCHEDULE # StripeForce::Translate::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Translate::OrderAmendment::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Translate::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# StripeForce::Translate::CPQ_DEFAULT_SUBSCRIPTION_TERM +# StripeForce::Translate::OrderAmendment::CPQ_PRODUCT_SUBSCRIPTION_TYPE # uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_PRODUCT_BILLING_TYPE # Did you mean? StripeForce::Translate::CPQ_PRODUCT_BILLING_TYPE # uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_PRODUCT_CHARGE_TYPE # Did you mean? StripeForce::Translate::CPQ_PRODUCT_CHARGE_TYPE # uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# Did you mean? StripeForce::Translate::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? StripeForce::Translate::OrderAmendment::CPQ_DEFAULT_SUBSCRIPTION_TERM +# StripeForce::Translate::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# StripeForce::Translate::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_PRORATE_MULTIPLIER +# Did you mean? StripeForce::Translate::CPQ_PRORATE_MULTIPLIER # uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_QUOTE # Did you mean? StripeForce::Translate::CPQ_QUOTE # uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_QUOTE_BILLING_FREQUENCY # Did you mean? StripeForce::Translate::CPQ_QUOTE_BILLING_FREQUENCY # uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_QUOTE_LINE # Did you mean? StripeForce::Translate::CPQ_QUOTE_LINE +# uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Translate::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM # uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # Did you mean? StripeForce::Translate::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_QUOTE_LINE_PRODUCT @@ -29138,26 +32696,46 @@ # Did you mean? StripeForce::Translate::CPQ_QUOTE_PRIMARY_CONTACT # uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_QUOTE_QUANTITY # Did you mean? StripeForce::Translate::CPQ_QUOTE_QUANTITY +# uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::Translate::OrderAmendment::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Translate::OrderAmendment::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::OrderAmendment::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_QUOTE_SUBSCRIPTION_PRICING # Did you mean? StripeForce::Translate::OrderAmendment::CPQ_QUOTE_SUBSCRIPTION_TERM # StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_TERM # StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::Translate::OrderAmendment::CPQ_QUOTE_SUBSCRIPTION_END_DATE # uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# Did you mean? StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# StripeForce::Translate::OrderAmendment::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Translate::OrderAmendment::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_START_DATE # StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_TERM -# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::OrderAmendment::CPQ_QUOTE_SUBSCRIPTION_TERM # StripeForce::Translate::OrderAmendment::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant StripeForce::Translate::OrderAmendment::CPQ_QUOTE_SUBSCRIPTION_TERM # Did you mean? StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_TERM -# StripeForce::Translate::OrderAmendment::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::CPQ_DEFAULT_SUBSCRIPTION_TERM +# StripeForce::Translate::OrderAmendment::CPQ_DEFAULT_SUBSCRIPTION_TERM # StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::OrderAmendment::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant StripeForce::Translate::OrderAmendment::DAYS_IN_YEAR +# Did you mean? StripeForce::Translate::DAYS_IN_YEAR # uninitialized constant StripeForce::Translate::OrderAmendment::GENERIC_STRIPE_ID # Did you mean? StripeForce::Translate::GENERIC_STRIPE_ID +# uninitialized constant StripeForce::Translate::OrderAmendment::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# Did you mean? StripeForce::Translate::GENERIC_STRIPE_REVENUE_CONTRACT_ID # uninitialized constant StripeForce::Translate::OrderAmendment::MAX_SF_RETRY_ATTEMPTS # Did you mean? StripeForce::Translate::MAX_SF_RETRY_ATTEMPTS # uninitialized constant StripeForce::Translate::OrderAmendment::MAX_STRIPE_PRICE_PRECISION # Did you mean? StripeForce::Translate::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant StripeForce::Translate::OrderAmendment::MONTHS_IN_YEAR +# Did you mean? StripeForce::Translate::MONTHS_IN_YEAR # uninitialized constant StripeForce::Translate::OrderAmendment::ORDER_INVOICE_PAYMENT_LINK # Did you mean? StripeForce::Translate::ORDER_INVOICE_PAYMENT_LINK # uninitialized constant StripeForce::Translate::OrderAmendment::ORDER_LINE_SKIP @@ -29185,8 +32763,8 @@ # uninitialized constant StripeForce::Translate::OrderAmendment::RUBYGEMS_ACTIVATION_MONITOR # Did you mean? StripeForce::Translate::RUBYGEMS_ACTIVATION_MONITOR # uninitialized constant StripeForce::Translate::OrderAmendment::SALESFORCE_ACCOUNT_ID_HEADER -# Did you mean? StripeForce::Translate::SALESFORCE_ACCOUNT_ID_HEADER -# StripeForce::Translate::SALESFORCE_PACKAGE_ID_HEADER +# Did you mean? StripeForce::Translate::SALESFORCE_PACKAGE_ID_HEADER +# StripeForce::Translate::SALESFORCE_ACCOUNT_ID_HEADER # StripeForce::Translate::OrderAmendment::SALESFORCE_PACKAGE_ID_HEADER # uninitialized constant StripeForce::Translate::OrderAmendment::SALESFORCE_INSTANCE_TYPE_HEADER # Did you mean? StripeForce::Translate::SALESFORCE_INSTANCE_TYPE_HEADER @@ -29200,6 +32778,8 @@ # Did you mean? StripeForce::Translate::OrderAmendment::SALESFORCE_PACKAGE_ID_HEADER # StripeForce::Translate::SALESFORCE_PACKAGE_ID_HEADER # StripeForce::Translate::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant StripeForce::Translate::OrderAmendment::SECONDS_IN_DAY +# Did you mean? StripeForce::Translate::SECONDS_IN_DAY # uninitialized constant StripeForce::Translate::OrderAmendment::SF_ACCOUNT # Did you mean? StripeForce::Translate::SF_ACCOUNT # uninitialized constant StripeForce::Translate::OrderAmendment::SF_CONSUMPTION_RATE @@ -29226,28 +32806,48 @@ # Did you mean? StripeForce::Translate::SF_CONTRACT_ORDER_ID # StripeForce::Translate::OrderAmendment::SF_CONTRACT_ORDER_ID # StripeForce::Translate::SF_CONTRACT_QUOTE_ID +# uninitialized constant StripeForce::Translate::OrderAmendment::SF_CURRENCY_ISO_CODE +# Did you mean? StripeForce::Translate::SF_CURRENCY_ISO_CODE # uninitialized constant StripeForce::Translate::OrderAmendment::SF_ID # Did you mean? StripeForce::Translate::SF_ID # uninitialized constant StripeForce::Translate::OrderAmendment::SF_LAST_MODIFIED_DATE # Did you mean? StripeForce::Translate::SF_LAST_MODIFIED_DATE # uninitialized constant StripeForce::Translate::OrderAmendment::SF_OPPORTUNITY # Did you mean? StripeForce::Translate::SF_OPPORTUNITY +# uninitialized constant StripeForce::Translate::OrderAmendment::SF_OPPORTUNITY_CLOSE_DATE +# Did you mean? StripeForce::Translate::SF_OPPORTUNITY_CLOSE_DATE # uninitialized constant StripeForce::Translate::OrderAmendment::SF_ORDER # Did you mean? StripeForce::Translate::SF_ORDER # uninitialized constant StripeForce::Translate::OrderAmendment::SF_ORDER_ACCOUNT # Did you mean? StripeForce::Translate::SF_ORDER_ACCOUNT +# uninitialized constant StripeForce::Translate::OrderAmendment::SF_ORDER_ACTIVATED_DATE +# Did you mean? StripeForce::Translate::SF_ORDER_ACTIVATED_DATE # uninitialized constant StripeForce::Translate::OrderAmendment::SF_ORDER_CONTRACTED # Did you mean? StripeForce::Translate::SF_ORDER_CONTRACTED +# uninitialized constant StripeForce::Translate::OrderAmendment::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Translate::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM # uninitialized constant StripeForce::Translate::OrderAmendment::SF_ORDER_ITEM -# Did you mean? StripeForce::Translate::SF_ORDER_ITEM +# Did you mean? StripeForce::Translate::OrderAmendment::SF_ORDER_TYPE +# StripeForce::Translate::SF_ORDER_TYPE +# StripeForce::Translate::SF_ORDER_ITEM # StripeForce::Translate::SF_ORDER_QUOTE # StripeForce::Translate::OrderAmendment::SF_ORDER_QUOTE # uninitialized constant StripeForce::Translate::OrderAmendment::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT # Did you mean? StripeForce::Translate::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant StripeForce::Translate::OrderAmendment::SF_ORDER_ITEM_TOTAL_PRICE +# Did you mean? StripeForce::Translate::SF_ORDER_ITEM_TOTAL_PRICE # uninitialized constant StripeForce::Translate::OrderAmendment::SF_ORDER_QUOTE # Did you mean? StripeForce::Translate::OrderAmendment::SF_ORDER_ITEM +# StripeForce::Translate::OrderAmendment::SF_ORDER_TYPE +# StripeForce::Translate::SF_ORDER_TYPE # StripeForce::Translate::SF_ORDER_ITEM # StripeForce::Translate::SF_ORDER_QUOTE +# uninitialized constant StripeForce::Translate::OrderAmendment::SF_ORDER_TYPE +# Did you mean? StripeForce::Translate::OrderAmendment::SF_ORDER_ITEM +# StripeForce::Translate::SF_ORDER_TYPE +# StripeForce::Translate::SF_ORDER_ITEM +# StripeForce::Translate::OrderAmendment::SF_ORDER_QUOTE +# StripeForce::Translate::SF_ORDER_QUOTE # uninitialized constant StripeForce::Translate::OrderAmendment::SF_PRICEBOOK # Did you mean? StripeForce::Translate::SF_PRICEBOOK # uninitialized constant StripeForce::Translate::OrderAmendment::SF_PRICEBOOK_ENTRY @@ -29258,20 +32858,39 @@ # Did you mean? StripeForce::Translate::SF_PRODUCT_CONSUMPTION_SCHEDULE # StripeForce::Translate::OrderAmendment::SF_CONSUMPTION_SCHEDULE # StripeForce::Translate::SF_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::Translate::OrderAmendment::SKIP_PAST_INITIAL_INVOICES +# Did you mean? StripeForce::Translate::SKIP_PAST_INITIAL_INVOICES # uninitialized constant StripeForce::Translate::OrderAmendment::SYNC_RECORD # Did you mean? StripeForce::Translate::SYNC_RECORD +# uninitialized constant StripeForce::Translate::OrderAmendment::TERMINATION_METADATA_PREFIX +# Did you mean? StripeForce::Translate::TERMINATION_METADATA_PREFIX +# uninitialized constant StripeForce::Translate::OrderHelpers::CACHED_CREDENTIAL_STATUS_TTL +# Did you mean? StripeForce::Translate::CACHED_CREDENTIAL_STATUS_TTL # uninitialized constant StripeForce::Translate::OrderHelpers::CONNECTOR_SETTING_CPQ_TERM_UNIT # Did you mean? StripeForce::Translate::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant StripeForce::Translate::OrderHelpers::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? StripeForce::Translate::CONNECTOR_SETTING_POLLING_ENABLED +# StripeForce::Translate::OrderHelpers::CONNECTOR_SETTING_POLLING_ENABLED +# StripeForce::Translate::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant StripeForce::Translate::OrderHelpers::CONNECTOR_SETTING_PACKAGE_VERSION +# Did you mean? StripeForce::Translate::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant StripeForce::Translate::OrderHelpers::CONNECTOR_SETTING_POLLING_ENABLED +# Did you mean? StripeForce::Translate::CONNECTOR_SETTING_POLLING_ENABLED # uninitialized constant StripeForce::Translate::OrderHelpers::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # Did you mean? StripeForce::Translate::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # StripeForce::Translate::OrderHelpers::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # StripeForce::Translate::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # uninitialized constant StripeForce::Translate::OrderHelpers::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # Did you mean? StripeForce::Translate::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# StripeForce::Translate::OrderHelpers::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # StripeForce::Translate::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# StripeForce::Translate::OrderHelpers::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant StripeForce::Translate::OrderHelpers::CONNECTOR_SETTING_SYNC_START_DATE +# Did you mean? StripeForce::Translate::CONNECTOR_SETTING_SYNC_START_DATE # uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_AMENDED_CONTRACT # Did you mean? StripeForce::Translate::CPQ_AMENDED_CONTRACT +# uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_AMENDED_CONTRACT_LOOKUP +# Did you mean? StripeForce::Translate::CPQ_AMENDED_CONTRACT_LOOKUP +# StripeForce::Translate::CPQ_AMENDED_CONTRACT # uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_CONSUMPTION_RATE # Did you mean? StripeForce::Translate::SF_CONSUMPTION_RATE # StripeForce::Translate::OrderHelpers::SF_CONSUMPTION_RATE @@ -29280,18 +32899,30 @@ # Did you mean? StripeForce::Translate::OrderHelpers::SF_CONSUMPTION_SCHEDULE # StripeForce::Translate::SF_CONSUMPTION_SCHEDULE # StripeForce::Translate::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Translate::OrderHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Translate::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# StripeForce::Translate::CPQ_DEFAULT_SUBSCRIPTION_TERM +# StripeForce::Translate::OrderHelpers::CPQ_PRODUCT_SUBSCRIPTION_TYPE # uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_PRODUCT_BILLING_TYPE # Did you mean? StripeForce::Translate::CPQ_PRODUCT_BILLING_TYPE # uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_PRODUCT_CHARGE_TYPE # Did you mean? StripeForce::Translate::CPQ_PRODUCT_CHARGE_TYPE # uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# Did you mean? StripeForce::Translate::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? StripeForce::Translate::OrderHelpers::CPQ_DEFAULT_SUBSCRIPTION_TERM +# StripeForce::Translate::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# StripeForce::Translate::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_PRORATE_MULTIPLIER +# Did you mean? StripeForce::Translate::CPQ_PRORATE_MULTIPLIER # uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_QUOTE # Did you mean? StripeForce::Translate::CPQ_QUOTE # uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_QUOTE_BILLING_FREQUENCY # Did you mean? StripeForce::Translate::CPQ_QUOTE_BILLING_FREQUENCY # uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_QUOTE_LINE # Did you mean? StripeForce::Translate::CPQ_QUOTE_LINE +# uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Translate::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM # uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # Did you mean? StripeForce::Translate::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_QUOTE_LINE_PRODUCT @@ -29308,26 +32939,46 @@ # Did you mean? StripeForce::Translate::CPQ_QUOTE_PRIMARY_CONTACT # uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_QUOTE_QUANTITY # Did you mean? StripeForce::Translate::CPQ_QUOTE_QUANTITY +# uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::Translate::OrderHelpers::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Translate::OrderHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::OrderHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING # Did you mean? StripeForce::Translate::OrderHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM # StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_TERM # StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::Translate::OrderHelpers::CPQ_QUOTE_SUBSCRIPTION_END_DATE # uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# Did you mean? StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# StripeForce::Translate::OrderHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Translate::OrderHelpers::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_START_DATE # StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_TERM -# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::OrderHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM # StripeForce::Translate::OrderHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant StripeForce::Translate::OrderHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM # Did you mean? StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_TERM -# StripeForce::Translate::OrderHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::CPQ_DEFAULT_SUBSCRIPTION_TERM +# StripeForce::Translate::OrderHelpers::CPQ_DEFAULT_SUBSCRIPTION_TERM # StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::OrderHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant StripeForce::Translate::OrderHelpers::DAYS_IN_YEAR +# Did you mean? StripeForce::Translate::DAYS_IN_YEAR # uninitialized constant StripeForce::Translate::OrderHelpers::GENERIC_STRIPE_ID # Did you mean? StripeForce::Translate::GENERIC_STRIPE_ID +# uninitialized constant StripeForce::Translate::OrderHelpers::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# Did you mean? StripeForce::Translate::GENERIC_STRIPE_REVENUE_CONTRACT_ID # uninitialized constant StripeForce::Translate::OrderHelpers::MAX_SF_RETRY_ATTEMPTS # Did you mean? StripeForce::Translate::MAX_SF_RETRY_ATTEMPTS # uninitialized constant StripeForce::Translate::OrderHelpers::MAX_STRIPE_PRICE_PRECISION # Did you mean? StripeForce::Translate::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant StripeForce::Translate::OrderHelpers::MONTHS_IN_YEAR +# Did you mean? StripeForce::Translate::MONTHS_IN_YEAR # uninitialized constant StripeForce::Translate::OrderHelpers::ORDER_INVOICE_PAYMENT_LINK # Did you mean? StripeForce::Translate::ORDER_INVOICE_PAYMENT_LINK # uninitialized constant StripeForce::Translate::OrderHelpers::ORDER_LINE_SKIP @@ -29355,8 +33006,8 @@ # uninitialized constant StripeForce::Translate::OrderHelpers::RUBYGEMS_ACTIVATION_MONITOR # Did you mean? StripeForce::Translate::RUBYGEMS_ACTIVATION_MONITOR # uninitialized constant StripeForce::Translate::OrderHelpers::SALESFORCE_ACCOUNT_ID_HEADER -# Did you mean? StripeForce::Translate::SALESFORCE_ACCOUNT_ID_HEADER -# StripeForce::Translate::SALESFORCE_PACKAGE_ID_HEADER +# Did you mean? StripeForce::Translate::SALESFORCE_PACKAGE_ID_HEADER +# StripeForce::Translate::SALESFORCE_ACCOUNT_ID_HEADER # StripeForce::Translate::OrderHelpers::SALESFORCE_PACKAGE_ID_HEADER # uninitialized constant StripeForce::Translate::OrderHelpers::SALESFORCE_INSTANCE_TYPE_HEADER # Did you mean? StripeForce::Translate::SALESFORCE_INSTANCE_TYPE_HEADER @@ -29370,6 +33021,8 @@ # Did you mean? StripeForce::Translate::OrderHelpers::SALESFORCE_PACKAGE_ID_HEADER # StripeForce::Translate::SALESFORCE_PACKAGE_ID_HEADER # StripeForce::Translate::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant StripeForce::Translate::OrderHelpers::SECONDS_IN_DAY +# Did you mean? StripeForce::Translate::SECONDS_IN_DAY # uninitialized constant StripeForce::Translate::OrderHelpers::SF_ACCOUNT # Did you mean? StripeForce::Translate::SF_ACCOUNT # uninitialized constant StripeForce::Translate::OrderHelpers::SF_CONSUMPTION_RATE @@ -29396,28 +33049,48 @@ # Did you mean? StripeForce::Translate::SF_CONTRACT_ORDER_ID # StripeForce::Translate::OrderHelpers::SF_CONTRACT_ORDER_ID # StripeForce::Translate::SF_CONTRACT_QUOTE_ID +# uninitialized constant StripeForce::Translate::OrderHelpers::SF_CURRENCY_ISO_CODE +# Did you mean? StripeForce::Translate::SF_CURRENCY_ISO_CODE # uninitialized constant StripeForce::Translate::OrderHelpers::SF_ID # Did you mean? StripeForce::Translate::SF_ID # uninitialized constant StripeForce::Translate::OrderHelpers::SF_LAST_MODIFIED_DATE # Did you mean? StripeForce::Translate::SF_LAST_MODIFIED_DATE # uninitialized constant StripeForce::Translate::OrderHelpers::SF_OPPORTUNITY # Did you mean? StripeForce::Translate::SF_OPPORTUNITY +# uninitialized constant StripeForce::Translate::OrderHelpers::SF_OPPORTUNITY_CLOSE_DATE +# Did you mean? StripeForce::Translate::SF_OPPORTUNITY_CLOSE_DATE # uninitialized constant StripeForce::Translate::OrderHelpers::SF_ORDER # Did you mean? StripeForce::Translate::SF_ORDER # uninitialized constant StripeForce::Translate::OrderHelpers::SF_ORDER_ACCOUNT # Did you mean? StripeForce::Translate::SF_ORDER_ACCOUNT +# uninitialized constant StripeForce::Translate::OrderHelpers::SF_ORDER_ACTIVATED_DATE +# Did you mean? StripeForce::Translate::SF_ORDER_ACTIVATED_DATE # uninitialized constant StripeForce::Translate::OrderHelpers::SF_ORDER_CONTRACTED # Did you mean? StripeForce::Translate::SF_ORDER_CONTRACTED +# uninitialized constant StripeForce::Translate::OrderHelpers::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Translate::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM # uninitialized constant StripeForce::Translate::OrderHelpers::SF_ORDER_ITEM -# Did you mean? StripeForce::Translate::SF_ORDER_ITEM +# Did you mean? StripeForce::Translate::OrderHelpers::SF_ORDER_TYPE +# StripeForce::Translate::SF_ORDER_TYPE +# StripeForce::Translate::SF_ORDER_ITEM # StripeForce::Translate::SF_ORDER_QUOTE # StripeForce::Translate::OrderHelpers::SF_ORDER_QUOTE # uninitialized constant StripeForce::Translate::OrderHelpers::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT # Did you mean? StripeForce::Translate::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant StripeForce::Translate::OrderHelpers::SF_ORDER_ITEM_TOTAL_PRICE +# Did you mean? StripeForce::Translate::SF_ORDER_ITEM_TOTAL_PRICE # uninitialized constant StripeForce::Translate::OrderHelpers::SF_ORDER_QUOTE # Did you mean? StripeForce::Translate::OrderHelpers::SF_ORDER_ITEM +# StripeForce::Translate::OrderHelpers::SF_ORDER_TYPE +# StripeForce::Translate::SF_ORDER_TYPE # StripeForce::Translate::SF_ORDER_ITEM # StripeForce::Translate::SF_ORDER_QUOTE +# uninitialized constant StripeForce::Translate::OrderHelpers::SF_ORDER_TYPE +# Did you mean? StripeForce::Translate::OrderHelpers::SF_ORDER_ITEM +# StripeForce::Translate::SF_ORDER_TYPE +# StripeForce::Translate::SF_ORDER_ITEM +# StripeForce::Translate::OrderHelpers::SF_ORDER_QUOTE +# StripeForce::Translate::SF_ORDER_QUOTE # uninitialized constant StripeForce::Translate::OrderHelpers::SF_PRICEBOOK # Did you mean? StripeForce::Translate::SF_PRICEBOOK # uninitialized constant StripeForce::Translate::OrderHelpers::SF_PRICEBOOK_ENTRY @@ -29428,20 +33101,39 @@ # Did you mean? StripeForce::Translate::SF_PRODUCT_CONSUMPTION_SCHEDULE # StripeForce::Translate::OrderHelpers::SF_CONSUMPTION_SCHEDULE # StripeForce::Translate::SF_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::Translate::OrderHelpers::SKIP_PAST_INITIAL_INVOICES +# Did you mean? StripeForce::Translate::SKIP_PAST_INITIAL_INVOICES # uninitialized constant StripeForce::Translate::OrderHelpers::SYNC_RECORD # Did you mean? StripeForce::Translate::SYNC_RECORD +# uninitialized constant StripeForce::Translate::OrderHelpers::TERMINATION_METADATA_PREFIX +# Did you mean? StripeForce::Translate::TERMINATION_METADATA_PREFIX +# uninitialized constant StripeForce::Translate::PriceHelpers::CACHED_CREDENTIAL_STATUS_TTL +# Did you mean? StripeForce::Translate::CACHED_CREDENTIAL_STATUS_TTL # uninitialized constant StripeForce::Translate::PriceHelpers::CONNECTOR_SETTING_CPQ_TERM_UNIT # Did you mean? StripeForce::Translate::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant StripeForce::Translate::PriceHelpers::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? StripeForce::Translate::CONNECTOR_SETTING_POLLING_ENABLED +# StripeForce::Translate::PriceHelpers::CONNECTOR_SETTING_POLLING_ENABLED +# StripeForce::Translate::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# uninitialized constant StripeForce::Translate::PriceHelpers::CONNECTOR_SETTING_PACKAGE_VERSION +# Did you mean? StripeForce::Translate::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant StripeForce::Translate::PriceHelpers::CONNECTOR_SETTING_POLLING_ENABLED +# Did you mean? StripeForce::Translate::CONNECTOR_SETTING_POLLING_ENABLED # uninitialized constant StripeForce::Translate::PriceHelpers::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # Did you mean? StripeForce::Translate::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # StripeForce::Translate::PriceHelpers::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # StripeForce::Translate::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # uninitialized constant StripeForce::Translate::PriceHelpers::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # Did you mean? StripeForce::Translate::CONNECTOR_SETTING_SALESFORCE_NAMESPACE -# StripeForce::Translate::PriceHelpers::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # StripeForce::Translate::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# StripeForce::Translate::PriceHelpers::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant StripeForce::Translate::PriceHelpers::CONNECTOR_SETTING_SYNC_START_DATE +# Did you mean? StripeForce::Translate::CONNECTOR_SETTING_SYNC_START_DATE # uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_AMENDED_CONTRACT # Did you mean? StripeForce::Translate::CPQ_AMENDED_CONTRACT +# uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_AMENDED_CONTRACT_LOOKUP +# Did you mean? StripeForce::Translate::CPQ_AMENDED_CONTRACT_LOOKUP +# StripeForce::Translate::CPQ_AMENDED_CONTRACT # uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_CONSUMPTION_RATE # Did you mean? StripeForce::Translate::SF_CONSUMPTION_RATE # StripeForce::Translate::PriceHelpers::SF_CONSUMPTION_RATE @@ -29450,18 +33142,30 @@ # Did you mean? StripeForce::Translate::PriceHelpers::SF_CONSUMPTION_SCHEDULE # StripeForce::Translate::SF_CONSUMPTION_SCHEDULE # StripeForce::Translate::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Translate::PriceHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Translate::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# StripeForce::Translate::CPQ_DEFAULT_SUBSCRIPTION_TERM +# StripeForce::Translate::PriceHelpers::CPQ_PRODUCT_SUBSCRIPTION_TYPE # uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_PRODUCT_BILLING_TYPE # Did you mean? StripeForce::Translate::CPQ_PRODUCT_BILLING_TYPE # uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_PRODUCT_CHARGE_TYPE # Did you mean? StripeForce::Translate::CPQ_PRODUCT_CHARGE_TYPE # uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_PRODUCT_SUBSCRIPTION_TYPE -# Did you mean? StripeForce::Translate::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? StripeForce::Translate::PriceHelpers::CPQ_DEFAULT_SUBSCRIPTION_TERM +# StripeForce::Translate::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# StripeForce::Translate::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_PRORATE_MULTIPLIER +# Did you mean? StripeForce::Translate::CPQ_PRORATE_MULTIPLIER # uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_QUOTE # Did you mean? StripeForce::Translate::CPQ_QUOTE # uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_QUOTE_BILLING_FREQUENCY # Did you mean? StripeForce::Translate::CPQ_QUOTE_BILLING_FREQUENCY # uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_QUOTE_LINE # Did you mean? StripeForce::Translate::CPQ_QUOTE_LINE +# uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Translate::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM # uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # Did you mean? StripeForce::Translate::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_QUOTE_LINE_PRODUCT @@ -29478,26 +33182,46 @@ # Did you mean? StripeForce::Translate::CPQ_QUOTE_PRIMARY_CONTACT # uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_QUOTE_QUANTITY # Did you mean? StripeForce::Translate::CPQ_QUOTE_QUANTITY +# uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::Translate::PriceHelpers::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Translate::PriceHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::PriceHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING # Did you mean? StripeForce::Translate::PriceHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM # StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_TERM # StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::Translate::PriceHelpers::CPQ_QUOTE_SUBSCRIPTION_END_DATE # uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# Did you mean? StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# StripeForce::Translate::PriceHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Translate::PriceHelpers::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_START_DATE # StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_TERM -# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::PriceHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM # StripeForce::Translate::PriceHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant StripeForce::Translate::PriceHelpers::CPQ_QUOTE_SUBSCRIPTION_TERM # Did you mean? StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_TERM -# StripeForce::Translate::PriceHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::CPQ_DEFAULT_SUBSCRIPTION_TERM +# StripeForce::Translate::PriceHelpers::CPQ_DEFAULT_SUBSCRIPTION_TERM # StripeForce::Translate::CPQ_QUOTE_SUBSCRIPTION_PRICING +# StripeForce::Translate::PriceHelpers::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant StripeForce::Translate::PriceHelpers::DAYS_IN_YEAR +# Did you mean? StripeForce::Translate::DAYS_IN_YEAR # uninitialized constant StripeForce::Translate::PriceHelpers::GENERIC_STRIPE_ID # Did you mean? StripeForce::Translate::GENERIC_STRIPE_ID +# uninitialized constant StripeForce::Translate::PriceHelpers::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# Did you mean? StripeForce::Translate::GENERIC_STRIPE_REVENUE_CONTRACT_ID # uninitialized constant StripeForce::Translate::PriceHelpers::MAX_SF_RETRY_ATTEMPTS # Did you mean? StripeForce::Translate::MAX_SF_RETRY_ATTEMPTS # uninitialized constant StripeForce::Translate::PriceHelpers::MAX_STRIPE_PRICE_PRECISION # Did you mean? StripeForce::Translate::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant StripeForce::Translate::PriceHelpers::MONTHS_IN_YEAR +# Did you mean? StripeForce::Translate::MONTHS_IN_YEAR # uninitialized constant StripeForce::Translate::PriceHelpers::ORDER_INVOICE_PAYMENT_LINK # Did you mean? StripeForce::Translate::ORDER_INVOICE_PAYMENT_LINK # uninitialized constant StripeForce::Translate::PriceHelpers::ORDER_LINE_SKIP @@ -29525,8 +33249,8 @@ # uninitialized constant StripeForce::Translate::PriceHelpers::RUBYGEMS_ACTIVATION_MONITOR # Did you mean? StripeForce::Translate::RUBYGEMS_ACTIVATION_MONITOR # uninitialized constant StripeForce::Translate::PriceHelpers::SALESFORCE_ACCOUNT_ID_HEADER -# Did you mean? StripeForce::Translate::SALESFORCE_ACCOUNT_ID_HEADER -# StripeForce::Translate::SALESFORCE_PACKAGE_ID_HEADER +# Did you mean? StripeForce::Translate::SALESFORCE_PACKAGE_ID_HEADER +# StripeForce::Translate::SALESFORCE_ACCOUNT_ID_HEADER # StripeForce::Translate::PriceHelpers::SALESFORCE_PACKAGE_ID_HEADER # uninitialized constant StripeForce::Translate::PriceHelpers::SALESFORCE_INSTANCE_TYPE_HEADER # Did you mean? StripeForce::Translate::SALESFORCE_INSTANCE_TYPE_HEADER @@ -29540,6 +33264,8 @@ # Did you mean? StripeForce::Translate::PriceHelpers::SALESFORCE_PACKAGE_ID_HEADER # StripeForce::Translate::SALESFORCE_PACKAGE_ID_HEADER # StripeForce::Translate::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# uninitialized constant StripeForce::Translate::PriceHelpers::SECONDS_IN_DAY +# Did you mean? StripeForce::Translate::SECONDS_IN_DAY # uninitialized constant StripeForce::Translate::PriceHelpers::SF_ACCOUNT # Did you mean? StripeForce::Translate::SF_ACCOUNT # uninitialized constant StripeForce::Translate::PriceHelpers::SF_CONSUMPTION_RATE @@ -29566,28 +33292,48 @@ # Did you mean? StripeForce::Translate::SF_CONTRACT_ORDER_ID # StripeForce::Translate::PriceHelpers::SF_CONTRACT_ORDER_ID # StripeForce::Translate::SF_CONTRACT_QUOTE_ID +# uninitialized constant StripeForce::Translate::PriceHelpers::SF_CURRENCY_ISO_CODE +# Did you mean? StripeForce::Translate::SF_CURRENCY_ISO_CODE # uninitialized constant StripeForce::Translate::PriceHelpers::SF_ID # Did you mean? StripeForce::Translate::SF_ID # uninitialized constant StripeForce::Translate::PriceHelpers::SF_LAST_MODIFIED_DATE # Did you mean? StripeForce::Translate::SF_LAST_MODIFIED_DATE # uninitialized constant StripeForce::Translate::PriceHelpers::SF_OPPORTUNITY # Did you mean? StripeForce::Translate::SF_OPPORTUNITY +# uninitialized constant StripeForce::Translate::PriceHelpers::SF_OPPORTUNITY_CLOSE_DATE +# Did you mean? StripeForce::Translate::SF_OPPORTUNITY_CLOSE_DATE # uninitialized constant StripeForce::Translate::PriceHelpers::SF_ORDER # Did you mean? StripeForce::Translate::SF_ORDER # uninitialized constant StripeForce::Translate::PriceHelpers::SF_ORDER_ACCOUNT # Did you mean? StripeForce::Translate::SF_ORDER_ACCOUNT +# uninitialized constant StripeForce::Translate::PriceHelpers::SF_ORDER_ACTIVATED_DATE +# Did you mean? StripeForce::Translate::SF_ORDER_ACTIVATED_DATE # uninitialized constant StripeForce::Translate::PriceHelpers::SF_ORDER_CONTRACTED # Did you mean? StripeForce::Translate::SF_ORDER_CONTRACTED +# uninitialized constant StripeForce::Translate::PriceHelpers::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Translate::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM # uninitialized constant StripeForce::Translate::PriceHelpers::SF_ORDER_ITEM -# Did you mean? StripeForce::Translate::SF_ORDER_ITEM +# Did you mean? StripeForce::Translate::PriceHelpers::SF_ORDER_TYPE +# StripeForce::Translate::SF_ORDER_TYPE +# StripeForce::Translate::SF_ORDER_ITEM # StripeForce::Translate::SF_ORDER_QUOTE # StripeForce::Translate::PriceHelpers::SF_ORDER_QUOTE # uninitialized constant StripeForce::Translate::PriceHelpers::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT # Did you mean? StripeForce::Translate::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant StripeForce::Translate::PriceHelpers::SF_ORDER_ITEM_TOTAL_PRICE +# Did you mean? StripeForce::Translate::SF_ORDER_ITEM_TOTAL_PRICE # uninitialized constant StripeForce::Translate::PriceHelpers::SF_ORDER_QUOTE # Did you mean? StripeForce::Translate::PriceHelpers::SF_ORDER_ITEM +# StripeForce::Translate::PriceHelpers::SF_ORDER_TYPE +# StripeForce::Translate::SF_ORDER_TYPE # StripeForce::Translate::SF_ORDER_ITEM # StripeForce::Translate::SF_ORDER_QUOTE +# uninitialized constant StripeForce::Translate::PriceHelpers::SF_ORDER_TYPE +# Did you mean? StripeForce::Translate::PriceHelpers::SF_ORDER_ITEM +# StripeForce::Translate::SF_ORDER_TYPE +# StripeForce::Translate::SF_ORDER_ITEM +# StripeForce::Translate::PriceHelpers::SF_ORDER_QUOTE +# StripeForce::Translate::SF_ORDER_QUOTE # uninitialized constant StripeForce::Translate::PriceHelpers::SF_PRICEBOOK # Did you mean? StripeForce::Translate::SF_PRICEBOOK # uninitialized constant StripeForce::Translate::PriceHelpers::SF_PRICEBOOK_ENTRY @@ -29598,25 +33344,42 @@ # Did you mean? StripeForce::Translate::SF_PRODUCT_CONSUMPTION_SCHEDULE # StripeForce::Translate::PriceHelpers::SF_CONSUMPTION_SCHEDULE # StripeForce::Translate::SF_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::Translate::PriceHelpers::SKIP_PAST_INITIAL_INVOICES +# Did you mean? StripeForce::Translate::SKIP_PAST_INITIAL_INVOICES # uninitialized constant StripeForce::Translate::PriceHelpers::SYNC_RECORD # Did you mean? StripeForce::Translate::SYNC_RECORD +# uninitialized constant StripeForce::Translate::PriceHelpers::TERMINATION_METADATA_PREFIX +# Did you mean? StripeForce::Translate::TERMINATION_METADATA_PREFIX # wrong constant name log +# uninitialized constant StripeForce::User::CACHED_CREDENTIAL_STATUS_TTL # uninitialized constant StripeForce::User::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant StripeForce::User::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? StripeForce::User::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant StripeForce::User::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant StripeForce::User::CONNECTOR_SETTING_POLLING_ENABLED # uninitialized constant StripeForce::User::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # Did you mean? StripeForce::User::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # uninitialized constant StripeForce::User::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # Did you mean? StripeForce::User::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant StripeForce::User::CONNECTOR_SETTING_SYNC_START_DATE # uninitialized constant StripeForce::User::CPQ_AMENDED_CONTRACT +# uninitialized constant StripeForce::User::CPQ_AMENDED_CONTRACT_LOOKUP # uninitialized constant StripeForce::User::CPQ_CONSUMPTION_RATE # Did you mean? StripeForce::User::SF_CONSUMPTION_RATE # uninitialized constant StripeForce::User::CPQ_CONSUMPTION_SCHEDULE # Did you mean? StripeForce::User::SF_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::User::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? StripeForce::User::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::User::CPQ_PRODUCT_SUBSCRIPTION_TYPE # uninitialized constant StripeForce::User::CPQ_PRODUCT_BILLING_TYPE # uninitialized constant StripeForce::User::CPQ_PRODUCT_CHARGE_TYPE # uninitialized constant StripeForce::User::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? StripeForce::User::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant StripeForce::User::CPQ_PRORATE_MULTIPLIER # uninitialized constant StripeForce::User::CPQ_QUOTE # uninitialized constant StripeForce::User::CPQ_QUOTE_BILLING_FREQUENCY # uninitialized constant StripeForce::User::CPQ_QUOTE_LINE +# uninitialized constant StripeForce::User::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM # uninitialized constant StripeForce::User::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # uninitialized constant StripeForce::User::CPQ_QUOTE_LINE_PRODUCT # uninitialized constant StripeForce::User::CPQ_QUOTE_OPPORTUNITY @@ -29625,17 +33388,27 @@ # uninitialized constant StripeForce::User::CPQ_QUOTE_PRIMARY # uninitialized constant StripeForce::User::CPQ_QUOTE_PRIMARY_CONTACT # uninitialized constant StripeForce::User::CPQ_QUOTE_QUANTITY +# uninitialized constant StripeForce::User::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? StripeForce::User::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# StripeForce::User::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::User::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant StripeForce::User::CPQ_QUOTE_SUBSCRIPTION_PRICING # Did you mean? StripeForce::User::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::User::CPQ_QUOTE_SUBSCRIPTION_END_DATE # uninitialized constant StripeForce::User::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# Did you mean? StripeForce::User::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? StripeForce::User::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::User::CPQ_QUOTE_SUBSCRIPTION_TERM # StripeForce::User::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant StripeForce::User::CPQ_QUOTE_SUBSCRIPTION_TERM -# Did you mean? StripeForce::User::CPQ_QUOTE_SUBSCRIPTION_PRICING +# Did you mean? StripeForce::User::CPQ_DEFAULT_SUBSCRIPTION_TERM +# StripeForce::User::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant StripeForce::User::DAYS_IN_YEAR # uninitialized constant StripeForce::User::GENERIC_STRIPE_ID +# uninitialized constant StripeForce::User::GENERIC_STRIPE_REVENUE_CONTRACT_ID # uninitialized constant StripeForce::User::HOOKS # uninitialized constant StripeForce::User::MAX_SF_RETRY_ATTEMPTS # uninitialized constant StripeForce::User::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant StripeForce::User::MONTHS_IN_YEAR # uninitialized constant StripeForce::User::OPTS # uninitialized constant StripeForce::User::ORDER_INVOICE_PAYMENT_LINK # uninitialized constant StripeForce::User::ORDER_LINE_SKIP @@ -29658,6 +33431,7 @@ # Did you mean? StripeForce::User::SALESFORCE_ACCOUNT_ID_HEADER # uninitialized constant StripeForce::User::SALESFORCE_PACKAGE_NAMESPACE_HEADER # Did you mean? StripeForce::User::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant StripeForce::User::SECONDS_IN_DAY # uninitialized constant StripeForce::User::SF_ACCOUNT # uninitialized constant StripeForce::User::SF_CONSUMPTION_RATE # Did you mean? StripeForce::User::CPQ_CONSUMPTION_RATE @@ -29671,44 +33445,191 @@ # Did you mean? StripeForce::User::SF_CONTRACT_QUOTE_ID # uninitialized constant StripeForce::User::SF_CONTRACT_QUOTE_ID # Did you mean? StripeForce::User::SF_CONTRACT_ORDER_ID +# uninitialized constant StripeForce::User::SF_CURRENCY_ISO_CODE # uninitialized constant StripeForce::User::SF_ID # uninitialized constant StripeForce::User::SF_LAST_MODIFIED_DATE # uninitialized constant StripeForce::User::SF_OPPORTUNITY +# uninitialized constant StripeForce::User::SF_OPPORTUNITY_CLOSE_DATE # uninitialized constant StripeForce::User::SF_ORDER # uninitialized constant StripeForce::User::SF_ORDER_ACCOUNT +# uninitialized constant StripeForce::User::SF_ORDER_ACTIVATED_DATE # uninitialized constant StripeForce::User::SF_ORDER_CONTRACTED +# uninitialized constant StripeForce::User::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM # uninitialized constant StripeForce::User::SF_ORDER_ITEM -# Did you mean? StripeForce::User::SF_ORDER_QUOTE +# Did you mean? StripeForce::User::SF_ORDER_TYPE +# StripeForce::User::SF_ORDER_QUOTE # uninitialized constant StripeForce::User::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant StripeForce::User::SF_ORDER_ITEM_TOTAL_PRICE # uninitialized constant StripeForce::User::SF_ORDER_QUOTE +# Did you mean? StripeForce::User::SF_ORDER_TYPE +# StripeForce::User::SF_ORDER_ITEM +# uninitialized constant StripeForce::User::SF_ORDER_TYPE # Did you mean? StripeForce::User::SF_ORDER_ITEM +# StripeForce::User::SF_ORDER_QUOTE # uninitialized constant StripeForce::User::SF_PRICEBOOK # uninitialized constant StripeForce::User::SF_PRICEBOOK_ENTRY # uninitialized constant StripeForce::User::SF_PRODUCT # uninitialized constant StripeForce::User::SF_PRODUCT_CONSUMPTION_SCHEDULE # Did you mean? StripeForce::User::SF_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::User::SKIP_PAST_INITIAL_INVOICES # uninitialized constant StripeForce::User::SYNC_RECORD +# uninitialized constant StripeForce::User::TERMINATION_METADATA_PREFIX # wrong constant name salesforce_refresh_token # wrong constant name salesforce_refresh_token= # wrong constant name salesforce_token # wrong constant name salesforce_token= # wrong constant name log +# uninitialized constant StripeForce::Utilities::DemoUtil::CACHED_CREDENTIAL_STATUS_TTL +# uninitialized constant StripeForce::Utilities::DemoUtil::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant StripeForce::Utilities::DemoUtil::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? StripeForce::Utilities::DemoUtil::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant StripeForce::Utilities::DemoUtil::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant StripeForce::Utilities::DemoUtil::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant StripeForce::Utilities::DemoUtil::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# Did you mean? StripeForce::Utilities::DemoUtil::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# uninitialized constant StripeForce::Utilities::DemoUtil::CONNECTOR_SETTING_SALESFORCE_NAMESPACE +# Did you mean? StripeForce::Utilities::DemoUtil::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant StripeForce::Utilities::DemoUtil::CONNECTOR_SETTING_SYNC_START_DATE +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_AMENDED_CONTRACT +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_AMENDED_CONTRACT_LOOKUP +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_CONSUMPTION_RATE +# Did you mean? StripeForce::Utilities::DemoUtil::SF_CONSUMPTION_RATE +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_CONSUMPTION_SCHEDULE +# Did you mean? StripeForce::Utilities::DemoUtil::SF_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Utilities::DemoUtil::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Utilities::DemoUtil::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_PRODUCT_BILLING_TYPE +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_PRODUCT_CHARGE_TYPE +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? StripeForce::Utilities::DemoUtil::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_PRORATE_MULTIPLIER +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_QUOTE +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_QUOTE_BILLING_FREQUENCY +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_QUOTE_LINE +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_QUOTE_LINE_PRODUCT +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_QUOTE_OPPORTUNITY +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_QUOTE_ORDERED +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_QUOTE_PRICEBOOK +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_QUOTE_PRIMARY +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_QUOTE_PRIMARY_CONTACT +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_QUOTE_QUANTITY +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? StripeForce::Utilities::DemoUtil::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# StripeForce::Utilities::DemoUtil::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Utilities::DemoUtil::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_QUOTE_SUBSCRIPTION_PRICING +# Did you mean? StripeForce::Utilities::DemoUtil::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Utilities::DemoUtil::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# Did you mean? StripeForce::Utilities::DemoUtil::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::Utilities::DemoUtil::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Utilities::DemoUtil::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant StripeForce::Utilities::DemoUtil::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Utilities::DemoUtil::CPQ_DEFAULT_SUBSCRIPTION_TERM +# StripeForce::Utilities::DemoUtil::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant StripeForce::Utilities::DemoUtil::DAYS_IN_YEAR +# uninitialized constant StripeForce::Utilities::DemoUtil::GENERIC_STRIPE_ID +# uninitialized constant StripeForce::Utilities::DemoUtil::GENERIC_STRIPE_REVENUE_CONTRACT_ID +# uninitialized constant StripeForce::Utilities::DemoUtil::MAX_SF_RETRY_ATTEMPTS +# uninitialized constant StripeForce::Utilities::DemoUtil::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant StripeForce::Utilities::DemoUtil::MONTHS_IN_YEAR +# uninitialized constant StripeForce::Utilities::DemoUtil::ORDER_INVOICE_PAYMENT_LINK +# uninitialized constant StripeForce::Utilities::DemoUtil::ORDER_LINE_SKIP +# uninitialized constant StripeForce::Utilities::DemoUtil::ORDER_SF_STRIPE_COUPON +# Did you mean? StripeForce::Utilities::DemoUtil::QUOTE_SF_STRIPE_COUPON +# uninitialized constant StripeForce::Utilities::DemoUtil::ORDER_SUBSCRIPTION_PAYMENT_LINK +# uninitialized constant StripeForce::Utilities::DemoUtil::POLL_FREQUENCY +# uninitialized constant StripeForce::Utilities::DemoUtil::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# Did you mean? StripeForce::Utilities::DemoUtil::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant StripeForce::Utilities::DemoUtil::QUOTE_SF_STRIPE_COUPON +# Did you mean? StripeForce::Utilities::DemoUtil::ORDER_SF_STRIPE_COUPON +# uninitialized constant StripeForce::Utilities::DemoUtil::QUOTE_SF_STRIPE_COUPON_ASSOCIATION +# Did you mean? StripeForce::Utilities::DemoUtil::QUOTE_LINE_SF_STRIPE_COUPON_ASSOCIATION +# uninitialized constant StripeForce::Utilities::DemoUtil::RUBYGEMS_ACTIVATION_MONITOR +# uninitialized constant StripeForce::Utilities::DemoUtil::SALESFORCE_ACCOUNT_ID_HEADER +# Did you mean? StripeForce::Utilities::DemoUtil::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant StripeForce::Utilities::DemoUtil::SALESFORCE_INSTANCE_TYPE_HEADER +# uninitialized constant StripeForce::Utilities::DemoUtil::SALESFORCE_KEY_HEADER +# uninitialized constant StripeForce::Utilities::DemoUtil::SALESFORCE_PACKAGE_ID_HEADER +# Did you mean? StripeForce::Utilities::DemoUtil::SALESFORCE_ACCOUNT_ID_HEADER +# uninitialized constant StripeForce::Utilities::DemoUtil::SALESFORCE_PACKAGE_NAMESPACE_HEADER +# Did you mean? StripeForce::Utilities::DemoUtil::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant StripeForce::Utilities::DemoUtil::SECONDS_IN_DAY +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_ACCOUNT +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_CONSUMPTION_RATE +# Did you mean? StripeForce::Utilities::DemoUtil::CPQ_CONSUMPTION_RATE +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_CONSUMPTION_SCHEDULE +# Did you mean? StripeForce::Utilities::DemoUtil::CPQ_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_CONTACT +# Did you mean? StripeForce::Utilities::DemoUtil::SF_CONTRACT +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_CONTRACT +# Did you mean? StripeForce::Utilities::DemoUtil::SF_CONTACT +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_CONTRACT_ORDER_ID +# Did you mean? StripeForce::Utilities::DemoUtil::SF_CONTRACT_QUOTE_ID +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_CONTRACT_QUOTE_ID +# Did you mean? StripeForce::Utilities::DemoUtil::SF_CONTRACT_ORDER_ID +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_CURRENCY_ISO_CODE +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_ID +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_LAST_MODIFIED_DATE +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_OPPORTUNITY +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_OPPORTUNITY_CLOSE_DATE +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_ORDER +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_ORDER_ACCOUNT +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_ORDER_ACTIVATED_DATE +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_ORDER_CONTRACTED +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_ORDER_ITEM +# Did you mean? StripeForce::Utilities::DemoUtil::SF_ORDER_TYPE +# StripeForce::Utilities::DemoUtil::SF_ORDER_QUOTE +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_ORDER_ITEM_TOTAL_PRICE +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_ORDER_QUOTE +# Did you mean? StripeForce::Utilities::DemoUtil::SF_ORDER_TYPE +# StripeForce::Utilities::DemoUtil::SF_ORDER_ITEM +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_ORDER_TYPE +# Did you mean? StripeForce::Utilities::DemoUtil::SF_ORDER_ITEM +# StripeForce::Utilities::DemoUtil::SF_ORDER_QUOTE +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_PRICEBOOK +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_PRICEBOOK_ENTRY +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_PRODUCT +# uninitialized constant StripeForce::Utilities::DemoUtil::SF_PRODUCT_CONSUMPTION_SCHEDULE +# Did you mean? StripeForce::Utilities::DemoUtil::SF_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::Utilities::DemoUtil::SKIP_PAST_INITIAL_INVOICES +# uninitialized constant StripeForce::Utilities::DemoUtil::SYNC_RECORD +# uninitialized constant StripeForce::Utilities::DemoUtil::TERMINATION_METADATA_PREFIX +# wrong constant name log +# uninitialized constant StripeForce::Utilities::SalesforceUtil::CACHED_CREDENTIAL_STATUS_TTL # uninitialized constant StripeForce::Utilities::SalesforceUtil::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant StripeForce::Utilities::SalesforceUtil::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? StripeForce::Utilities::SalesforceUtil::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant StripeForce::Utilities::SalesforceUtil::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant StripeForce::Utilities::SalesforceUtil::CONNECTOR_SETTING_POLLING_ENABLED # uninitialized constant StripeForce::Utilities::SalesforceUtil::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # Did you mean? StripeForce::Utilities::SalesforceUtil::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # uninitialized constant StripeForce::Utilities::SalesforceUtil::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # Did you mean? StripeForce::Utilities::SalesforceUtil::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant StripeForce::Utilities::SalesforceUtil::CONNECTOR_SETTING_SYNC_START_DATE # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_AMENDED_CONTRACT +# uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_AMENDED_CONTRACT_LOOKUP # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_CONSUMPTION_RATE # Did you mean? StripeForce::Utilities::SalesforceUtil::SF_CONSUMPTION_RATE # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_CONSUMPTION_SCHEDULE # Did you mean? StripeForce::Utilities::SalesforceUtil::SF_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Utilities::SalesforceUtil::CPQ_PRODUCT_SUBSCRIPTION_TYPE # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_PRODUCT_BILLING_TYPE # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_PRODUCT_CHARGE_TYPE # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? StripeForce::Utilities::SalesforceUtil::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_PRORATE_MULTIPLIER # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_BILLING_FREQUENCY # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_LINE +# uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_LINE_PRODUCT # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_OPPORTUNITY @@ -29717,16 +33638,26 @@ # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_PRIMARY # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_PRIMARY_CONTACT # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_QUANTITY +# uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_SUBSCRIPTION_PRICING # Did you mean? StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_SUBSCRIPTION_END_DATE # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# Did you mean? StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_SUBSCRIPTION_TERM # StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_SUBSCRIPTION_TERM -# Did you mean? StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_SUBSCRIPTION_PRICING +# Did you mean? StripeForce::Utilities::SalesforceUtil::CPQ_DEFAULT_SUBSCRIPTION_TERM +# StripeForce::Utilities::SalesforceUtil::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant StripeForce::Utilities::SalesforceUtil::DAYS_IN_YEAR # uninitialized constant StripeForce::Utilities::SalesforceUtil::GENERIC_STRIPE_ID +# uninitialized constant StripeForce::Utilities::SalesforceUtil::GENERIC_STRIPE_REVENUE_CONTRACT_ID # uninitialized constant StripeForce::Utilities::SalesforceUtil::MAX_SF_RETRY_ATTEMPTS # uninitialized constant StripeForce::Utilities::SalesforceUtil::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant StripeForce::Utilities::SalesforceUtil::MONTHS_IN_YEAR # uninitialized constant StripeForce::Utilities::SalesforceUtil::ORDER_INVOICE_PAYMENT_LINK # uninitialized constant StripeForce::Utilities::SalesforceUtil::ORDER_LINE_SKIP # uninitialized constant StripeForce::Utilities::SalesforceUtil::ORDER_SF_STRIPE_COUPON @@ -29748,6 +33679,7 @@ # Did you mean? StripeForce::Utilities::SalesforceUtil::SALESFORCE_ACCOUNT_ID_HEADER # uninitialized constant StripeForce::Utilities::SalesforceUtil::SALESFORCE_PACKAGE_NAMESPACE_HEADER # Did you mean? StripeForce::Utilities::SalesforceUtil::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant StripeForce::Utilities::SalesforceUtil::SECONDS_IN_DAY # uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_ACCOUNT # uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_CONSUMPTION_RATE # Did you mean? StripeForce::Utilities::SalesforceUtil::CPQ_CONSUMPTION_RATE @@ -29761,40 +33693,65 @@ # Did you mean? StripeForce::Utilities::SalesforceUtil::SF_CONTRACT_QUOTE_ID # uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_CONTRACT_QUOTE_ID # Did you mean? StripeForce::Utilities::SalesforceUtil::SF_CONTRACT_ORDER_ID +# uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_CURRENCY_ISO_CODE # uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_ID # uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_LAST_MODIFIED_DATE # uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_OPPORTUNITY +# uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_OPPORTUNITY_CLOSE_DATE # uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_ORDER # uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_ORDER_ACCOUNT +# uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_ORDER_ACTIVATED_DATE # uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_ORDER_CONTRACTED +# uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM # uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_ORDER_ITEM -# Did you mean? StripeForce::Utilities::SalesforceUtil::SF_ORDER_QUOTE +# Did you mean? StripeForce::Utilities::SalesforceUtil::SF_ORDER_TYPE +# StripeForce::Utilities::SalesforceUtil::SF_ORDER_QUOTE # uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_ORDER_ITEM_TOTAL_PRICE # uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_ORDER_QUOTE +# Did you mean? StripeForce::Utilities::SalesforceUtil::SF_ORDER_TYPE +# StripeForce::Utilities::SalesforceUtil::SF_ORDER_ITEM +# uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_ORDER_TYPE # Did you mean? StripeForce::Utilities::SalesforceUtil::SF_ORDER_ITEM +# StripeForce::Utilities::SalesforceUtil::SF_ORDER_QUOTE # uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_PRICEBOOK # uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_PRICEBOOK_ENTRY # uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_PRODUCT # uninitialized constant StripeForce::Utilities::SalesforceUtil::SF_PRODUCT_CONSUMPTION_SCHEDULE # Did you mean? StripeForce::Utilities::SalesforceUtil::SF_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::Utilities::SalesforceUtil::SKIP_PAST_INITIAL_INVOICES # uninitialized constant StripeForce::Utilities::SalesforceUtil::SYNC_RECORD +# uninitialized constant StripeForce::Utilities::SalesforceUtil::TERMINATION_METADATA_PREFIX # wrong constant name log +# uninitialized constant StripeForce::Utilities::StripeUtil::CACHED_CREDENTIAL_STATUS_TTL # uninitialized constant StripeForce::Utilities::StripeUtil::CONNECTOR_SETTING_CPQ_TERM_UNIT +# uninitialized constant StripeForce::Utilities::StripeUtil::CONNECTOR_SETTING_MULTICURRENCY_ENABLED +# Did you mean? StripeForce::Utilities::StripeUtil::CONNECTOR_SETTING_POLLING_ENABLED +# uninitialized constant StripeForce::Utilities::StripeUtil::CONNECTOR_SETTING_PACKAGE_VERSION +# uninitialized constant StripeForce::Utilities::StripeUtil::CONNECTOR_SETTING_POLLING_ENABLED # uninitialized constant StripeForce::Utilities::StripeUtil::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE # Did you mean? StripeForce::Utilities::StripeUtil::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # uninitialized constant StripeForce::Utilities::StripeUtil::CONNECTOR_SETTING_SALESFORCE_NAMESPACE # Did you mean? StripeForce::Utilities::StripeUtil::CONNECTOR_SETTING_SALESFORCE_INSTANCE_TYPE +# uninitialized constant StripeForce::Utilities::StripeUtil::CONNECTOR_SETTING_SYNC_START_DATE # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_AMENDED_CONTRACT +# uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_AMENDED_CONTRACT_LOOKUP # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_CONSUMPTION_RATE # Did you mean? StripeForce::Utilities::StripeUtil::SF_CONSUMPTION_RATE # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_CONSUMPTION_SCHEDULE # Did you mean? StripeForce::Utilities::StripeUtil::SF_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_DEFAULT_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Utilities::StripeUtil::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Utilities::StripeUtil::CPQ_PRODUCT_SUBSCRIPTION_TYPE # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_PRODUCT_BILLING_TYPE # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_PRODUCT_CHARGE_TYPE # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_PRODUCT_SUBSCRIPTION_TYPE +# Did you mean? StripeForce::Utilities::StripeUtil::CPQ_DEFAULT_SUBSCRIPTION_TERM +# uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_PRORATE_MULTIPLIER # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_QUOTE # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_QUOTE_BILLING_FREQUENCY # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_QUOTE_LINE +# uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_QUOTE_LINE_DEFAULT_SUBSCRIPTION_TERM # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_QUOTE_LINE_PRICEBOOK_ENTRY # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_QUOTE_LINE_PRODUCT # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_QUOTE_OPPORTUNITY @@ -29803,16 +33760,26 @@ # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_QUOTE_PRIMARY # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_QUOTE_PRIMARY_CONTACT # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_QUOTE_QUANTITY +# uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# Did you mean? StripeForce::Utilities::StripeUtil::CPQ_QUOTE_SUBSCRIPTION_START_DATE +# StripeForce::Utilities::StripeUtil::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Utilities::StripeUtil::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_QUOTE_SUBSCRIPTION_PRICING # Did you mean? StripeForce::Utilities::StripeUtil::CPQ_QUOTE_SUBSCRIPTION_TERM +# StripeForce::Utilities::StripeUtil::CPQ_QUOTE_SUBSCRIPTION_END_DATE # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_QUOTE_SUBSCRIPTION_START_DATE -# Did you mean? StripeForce::Utilities::StripeUtil::CPQ_QUOTE_SUBSCRIPTION_TERM +# Did you mean? StripeForce::Utilities::StripeUtil::CPQ_QUOTE_SUBSCRIPTION_END_DATE +# StripeForce::Utilities::StripeUtil::CPQ_QUOTE_SUBSCRIPTION_TERM # StripeForce::Utilities::StripeUtil::CPQ_QUOTE_SUBSCRIPTION_PRICING # uninitialized constant StripeForce::Utilities::StripeUtil::CPQ_QUOTE_SUBSCRIPTION_TERM -# Did you mean? StripeForce::Utilities::StripeUtil::CPQ_QUOTE_SUBSCRIPTION_PRICING +# Did you mean? StripeForce::Utilities::StripeUtil::CPQ_DEFAULT_SUBSCRIPTION_TERM +# StripeForce::Utilities::StripeUtil::CPQ_QUOTE_SUBSCRIPTION_PRICING +# uninitialized constant StripeForce::Utilities::StripeUtil::DAYS_IN_YEAR # uninitialized constant StripeForce::Utilities::StripeUtil::GENERIC_STRIPE_ID +# uninitialized constant StripeForce::Utilities::StripeUtil::GENERIC_STRIPE_REVENUE_CONTRACT_ID # uninitialized constant StripeForce::Utilities::StripeUtil::MAX_SF_RETRY_ATTEMPTS # uninitialized constant StripeForce::Utilities::StripeUtil::MAX_STRIPE_PRICE_PRECISION +# uninitialized constant StripeForce::Utilities::StripeUtil::MONTHS_IN_YEAR # uninitialized constant StripeForce::Utilities::StripeUtil::ORDER_INVOICE_PAYMENT_LINK # uninitialized constant StripeForce::Utilities::StripeUtil::ORDER_LINE_SKIP # uninitialized constant StripeForce::Utilities::StripeUtil::ORDER_SF_STRIPE_COUPON @@ -29834,6 +33801,7 @@ # Did you mean? StripeForce::Utilities::StripeUtil::SALESFORCE_ACCOUNT_ID_HEADER # uninitialized constant StripeForce::Utilities::StripeUtil::SALESFORCE_PACKAGE_NAMESPACE_HEADER # Did you mean? StripeForce::Utilities::StripeUtil::SALESFORCE_PACKAGE_ID_HEADER +# uninitialized constant StripeForce::Utilities::StripeUtil::SECONDS_IN_DAY # uninitialized constant StripeForce::Utilities::StripeUtil::SF_ACCOUNT # uninitialized constant StripeForce::Utilities::StripeUtil::SF_CONSUMPTION_RATE # Did you mean? StripeForce::Utilities::StripeUtil::CPQ_CONSUMPTION_RATE @@ -29847,23 +33815,35 @@ # Did you mean? StripeForce::Utilities::StripeUtil::SF_CONTRACT_QUOTE_ID # uninitialized constant StripeForce::Utilities::StripeUtil::SF_CONTRACT_QUOTE_ID # Did you mean? StripeForce::Utilities::StripeUtil::SF_CONTRACT_ORDER_ID +# uninitialized constant StripeForce::Utilities::StripeUtil::SF_CURRENCY_ISO_CODE # uninitialized constant StripeForce::Utilities::StripeUtil::SF_ID # uninitialized constant StripeForce::Utilities::StripeUtil::SF_LAST_MODIFIED_DATE # uninitialized constant StripeForce::Utilities::StripeUtil::SF_OPPORTUNITY +# uninitialized constant StripeForce::Utilities::StripeUtil::SF_OPPORTUNITY_CLOSE_DATE # uninitialized constant StripeForce::Utilities::StripeUtil::SF_ORDER # uninitialized constant StripeForce::Utilities::StripeUtil::SF_ORDER_ACCOUNT +# uninitialized constant StripeForce::Utilities::StripeUtil::SF_ORDER_ACTIVATED_DATE # uninitialized constant StripeForce::Utilities::StripeUtil::SF_ORDER_CONTRACTED +# uninitialized constant StripeForce::Utilities::StripeUtil::SF_ORDER_DEFAULT_EVERGREEN_SUBSCRIPTION_TERM # uninitialized constant StripeForce::Utilities::StripeUtil::SF_ORDER_ITEM -# Did you mean? StripeForce::Utilities::StripeUtil::SF_ORDER_QUOTE +# Did you mean? StripeForce::Utilities::StripeUtil::SF_ORDER_TYPE +# StripeForce::Utilities::StripeUtil::SF_ORDER_QUOTE # uninitialized constant StripeForce::Utilities::StripeUtil::SF_ORDER_ITEM_REVISED_ORDER_PRODUCT +# uninitialized constant StripeForce::Utilities::StripeUtil::SF_ORDER_ITEM_TOTAL_PRICE # uninitialized constant StripeForce::Utilities::StripeUtil::SF_ORDER_QUOTE +# Did you mean? StripeForce::Utilities::StripeUtil::SF_ORDER_TYPE +# StripeForce::Utilities::StripeUtil::SF_ORDER_ITEM +# uninitialized constant StripeForce::Utilities::StripeUtil::SF_ORDER_TYPE # Did you mean? StripeForce::Utilities::StripeUtil::SF_ORDER_ITEM +# StripeForce::Utilities::StripeUtil::SF_ORDER_QUOTE # uninitialized constant StripeForce::Utilities::StripeUtil::SF_PRICEBOOK # uninitialized constant StripeForce::Utilities::StripeUtil::SF_PRICEBOOK_ENTRY # uninitialized constant StripeForce::Utilities::StripeUtil::SF_PRODUCT # uninitialized constant StripeForce::Utilities::StripeUtil::SF_PRODUCT_CONSUMPTION_SCHEDULE # Did you mean? StripeForce::Utilities::StripeUtil::SF_CONSUMPTION_SCHEDULE +# uninitialized constant StripeForce::Utilities::StripeUtil::SKIP_PAST_INITIAL_INVOICES # uninitialized constant StripeForce::Utilities::StripeUtil::SYNC_RECORD +# uninitialized constant StripeForce::Utilities::StripeUtil::TERMINATION_METADATA_PREFIX # wrong constant name # wrong constant name deconstruct # wrong constant name deconstruct_keys @@ -29872,7 +33852,12 @@ # wrong constant name # wrong constant name [] # wrong constant name members -# wrong constant name +# uninitialized constant Struct::CompletionJourneyData +# uninitialized constant Struct::CompletionJourneyData +# uninitialized constant Struct::Key +# uninitialized constant Struct::Key +# uninitialized constant Struct::MenuInfo +# uninitialized constant Struct::MenuInfo # wrong constant name from_msgpack_ext # uninitialized constant Sync # uninitialized constant Sync @@ -29880,6 +33865,9 @@ # uninitialized constant Sync_m # uninitialized constant Syslog # uninitialized constant Syslog +# wrong constant name +# wrong constant name T.anything +# wrong constant name T.anything # wrong constant name T.noreturn # wrong constant name T.noreturn # wrong constant name T.untyped @@ -29891,6 +33879,7 @@ # wrong constant name initialize # wrong constant name # wrong constant name +# wrong constant name # wrong constant name # uninitialized constant Thor::SHELL_DELEGATED_METHODS # wrong constant name @@ -29963,6 +33952,10 @@ # wrong constant name # wrong constant name # wrong constant name included +# wrong constant name corrections +# wrong constant name to_s +# wrong constant name +# wrong constant name aliases_for_usage # uninitialized constant Thor::Options::NUMERIC # Did you mean? Numeric # uninitialized constant Thor::RakeCompat::DEFAULT @@ -29977,56 +33970,85 @@ # wrong constant name # wrong constant name included # wrong constant name rake_classes +# wrong constant name exclusive # uninitialized constant ThreadsWait # uninitialized constant ThreadsWait +# wrong constant name # wrong constant name # wrong constant name # wrong constant name # wrong constant name # wrong constant name +# wrong constant name # wrong constant name # wrong constant name -# wrong constant name +# wrong constant name # wrong constant name +# wrong constant name [] +# wrong constant name new +# wrong constant name template_for +# wrong constant name templates_for +# wrong constant name # uninitialized constant Tilt::BuilderTemplate::CLASS_METHOD +# uninitialized constant Tilt::BuilderTemplate::USE_BIND_CALL # wrong constant name precompiled_postamble # wrong constant name precompiled_template # wrong constant name # uninitialized constant Tilt::CSVTemplate::CLASS_METHOD +# uninitialized constant Tilt::CSVTemplate::USE_BIND_CALL # wrong constant name precompiled # wrong constant name precompiled_template # wrong constant name -# wrong constant name engine # uninitialized constant Tilt::ERBTemplate::CLASS_METHOD +# uninitialized constant Tilt::ERBTemplate::USE_BIND_CALL +# wrong constant name _default_output_variable # uninitialized constant Tilt::ErubiTemplate::CLASS_METHOD +# uninitialized constant Tilt::ErubiTemplate::USE_BIND_CALL # wrong constant name precompiled_template # wrong constant name # uninitialized constant Tilt::EtanniTemplate::CLASS_METHOD +# uninitialized constant Tilt::EtanniTemplate::USE_BIND_CALL # wrong constant name precompiled # wrong constant name precompiled_template # wrong constant name +# wrong constant name finalized +# wrong constant name register_pipeline +# wrong constant name unregister # uninitialized constant Tilt::NokogiriTemplate::CLASS_METHOD +# uninitialized constant Tilt::NokogiriTemplate::USE_BIND_CALL # wrong constant name evaluate # wrong constant name precompiled_postamble # wrong constant name precompiled_preamble # wrong constant name precompiled_template # wrong constant name +# uninitialized constant Tilt::Pipeline::CLASS_METHOD +# uninitialized constant Tilt::Pipeline::USE_BIND_CALL +# wrong constant name # uninitialized constant Tilt::PlainTemplate::CLASS_METHOD +# uninitialized constant Tilt::PlainTemplate::USE_BIND_CALL # wrong constant name # uninitialized constant Tilt::RDocTemplate::CLASS_METHOD -# wrong constant name allows_script? -# wrong constant name markup +# uninitialized constant Tilt::RDocTemplate::USE_BIND_CALL # wrong constant name -# uninitialized constant Tilt::SigilTemplate::CLASS_METHOD +# uninitialized constant Tilt::StaticTemplate::CLASS_METHOD +# uninitialized constant Tilt::StaticTemplate::USE_BIND_CALL # wrong constant name allows_script? +# wrong constant name render # wrong constant name +# wrong constant name subclass # uninitialized constant Tilt::StringTemplate::CLASS_METHOD +# uninitialized constant Tilt::StringTemplate::USE_BIND_CALL # wrong constant name precompiled # wrong constant name precompiled_template # wrong constant name +# wrong constant name compiled_path +# wrong constant name compiled_path= +# wrong constant name skip_compiled_encoding_detection? +# wrong constant name finalize! +# wrong constant name register_pipeline # uninitialized constant Time::DAYS_INTO_WEEK # uninitialized constant Time::WEEKEND_DAYS -# wrong constant name ensure_timeout_thread_created +# wrong constant name succ # wrong constant name eval_script # wrong constant name instruction_sequence # wrong constant name parameters @@ -30037,10 +34059,14 @@ # Did you mean? TracePoint # wrong constant name # wrong constant name normalize -# undefined singleton method `instance' for `UNF::Normalizer' # wrong constant name -# wrong constant name instance # wrong constant name normalize +# wrong constant name +# wrong constant name decode +# wrong constant name encode +# wrong constant name escape +# wrong constant name unescape +# wrong constant name # wrong constant name new2 # uninitialized constant URI::File::ABS_PATH # Did you mean? URI::ABS_PATH @@ -30195,6 +34221,395 @@ # uninitialized constant URI::WS # wrong constant name get_encoding # wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name cassette_persisters +# wrong constant name cassette_serializers +# wrong constant name cassettes +# wrong constant name config +# wrong constant name configuration +# wrong constant name configure +# wrong constant name cucumber_tags +# wrong constant name current_cassette +# wrong constant name eject_cassette +# wrong constant name fibers_available? +# wrong constant name http_interactions +# wrong constant name insert_cassette +# wrong constant name library_hooks +# wrong constant name link_context +# wrong constant name real_http_connections_allowed? +# wrong constant name record_http_interaction +# wrong constant name request_ignorer +# wrong constant name request_matchers +# wrong constant name turn_off! +# wrong constant name turn_on! +# wrong constant name turned_off +# wrong constant name turned_on +# wrong constant name turned_on? +# wrong constant name unlink_context +# wrong constant name use_cassette +# wrong constant name use_cassettes +# wrong constant name version +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name clean_outdated_http_interactions +# wrong constant name drop_unused_requests +# wrong constant name eject +# wrong constant name erb +# wrong constant name file +# wrong constant name http_interactions +# wrong constant name initialize +# wrong constant name linked? +# wrong constant name match_requests_on +# wrong constant name name +# wrong constant name new_recorded_interactions +# wrong constant name originally_recorded_at +# wrong constant name re_record_interval +# wrong constant name record_http_interaction +# wrong constant name record_mode +# wrong constant name record_on_error +# wrong constant name recording? +# wrong constant name run_failed! +# wrong constant name run_failed? +# wrong constant name serializable_hash +# wrong constant name should_write_recorded_interactions_to_disk? +# wrong constant name tags +# wrong constant name initialize +# wrong constant name render +# wrong constant name +# wrong constant name handle_encoding_errors +# wrong constant name +# wrong constant name +# wrong constant name allow_playback_repeats +# wrong constant name assert_no_unused_interactions! +# wrong constant name has_interaction_matching? +# wrong constant name has_used_interaction_matching? +# wrong constant name initialize +# wrong constant name interactions +# wrong constant name parent_list +# wrong constant name remaining_unused_interaction_count +# wrong constant name request_matchers +# wrong constant name response_for +# wrong constant name has_interaction_matching? +# wrong constant name has_used_interaction_matching? +# wrong constant name remaining_unused_interaction_count +# wrong constant name response_for +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name [] +# wrong constant name []= +# wrong constant name [] +# wrong constant name []= +# wrong constant name absolute_path_to_file +# wrong constant name storage_location +# wrong constant name storage_location= +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name [] +# wrong constant name []= +# wrong constant name deserialize +# wrong constant name file_extension +# wrong constant name serialize +# wrong constant name +# wrong constant name deserialize +# wrong constant name file_extension +# wrong constant name serialize +# wrong constant name +# wrong constant name deserialize +# wrong constant name file_extension +# wrong constant name serialize +# wrong constant name +# wrong constant name deserialize +# wrong constant name file_extension +# wrong constant name serialize +# wrong constant name +# wrong constant name deserialize +# wrong constant name file_extension +# wrong constant name serialize +# wrong constant name +# wrong constant name +# wrong constant name handle_syntax_errors +# wrong constant name +# wrong constant name +# wrong constant name const_missing +# wrong constant name +# wrong constant name after_http_request +# wrong constant name allow_http_connections_when_no_cassette= +# wrong constant name allow_http_connections_when_no_cassette? +# wrong constant name around_http_request +# wrong constant name before_playback +# wrong constant name before_record +# wrong constant name cassette_library_dir +# wrong constant name cassette_library_dir= +# wrong constant name cassette_persisters +# wrong constant name cassette_serializers +# wrong constant name configure_rspec_metadata! +# wrong constant name debug_logger +# wrong constant name debug_logger= +# wrong constant name default_cassette_options +# wrong constant name default_cassette_options= +# wrong constant name define_cassette_placeholder +# wrong constant name filter_sensitive_data +# wrong constant name hook_into +# wrong constant name ignore_host +# wrong constant name ignore_hosts +# wrong constant name ignore_localhost= +# wrong constant name ignore_request +# wrong constant name logger +# wrong constant name preserve_exact_body_bytes_for? +# wrong constant name query_parser +# wrong constant name query_parser= +# wrong constant name register_request_matcher +# wrong constant name stub_with +# wrong constant name unignore_host +# wrong constant name unignore_hosts +# wrong constant name uri_parser +# wrong constant name uri_parser= +# wrong constant name after_http_request +# wrong constant name after_library_hooks_loaded +# wrong constant name before_http_request +# wrong constant name before_playback +# wrong constant name before_record +# wrong constant name preserve_exact_body_bytes +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name initialize +# wrong constant name tag +# wrong constant name tags +# wrong constant name cassette_name +# wrong constant name examples_table +# wrong constant name examples_table_row +# wrong constant name feature +# wrong constant name initialize +# wrong constant name scenario +# wrong constant name scenario_outline +# wrong constant name +# wrong constant name +# wrong constant name add_tag +# wrong constant name tags +# wrong constant name +# wrong constant name +# wrong constant name initialize +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name initialize +# wrong constant name request +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name hook_aware +# wrong constant name initialize +# wrong constant name to_hash +# wrong constant name filter! +# wrong constant name ignore! +# wrong constant name ignored? +# wrong constant name initialize +# wrong constant name +# wrong constant name +# wrong constant name from_hash +# wrong constant name +# wrong constant name +# wrong constant name clear_hooks +# wrong constant name has_hooks_for? +# wrong constant name hooks +# wrong constant name invoke_hook +# wrong constant name define_hook +# wrong constant name +# uninitialized constant VCR::Hooks::FilteredHook::Elem +# wrong constant name conditionally_invoke +# wrong constant name filters +# wrong constant name filters= +# wrong constant name hook +# wrong constant name hook= +# wrong constant name +# wrong constant name [] +# wrong constant name members +# wrong constant name +# wrong constant name included +# wrong constant name available? +# wrong constant name +# wrong constant name disabled? +# wrong constant name exclusive_hook +# wrong constant name exclusive_hook= +# wrong constant name exclusively_enabled +# wrong constant name +# wrong constant name +# wrong constant name eject +# wrong constant name linked? +# uninitialized constant VCR::LinkedCassette::CassetteList::Elem +# wrong constant name each +# wrong constant name initialize +# wrong constant name last +# wrong constant name size +# wrong constant name wrap +# wrong constant name +# wrong constant name +# wrong constant name list +# wrong constant name +# wrong constant name +# wrong constant name initialize +# wrong constant name log +# wrong constant name request_summary +# wrong constant name response_summary +# wrong constant name log +# wrong constant name request_summary +# wrong constant name response_summary +# wrong constant name +# wrong constant name +# wrong constant name log +# wrong constant name request_summary +# wrong constant name response_summary +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name call +# wrong constant name close +# wrong constant name initialize +# wrong constant name app +# wrong constant name env +# wrong constant name initialize +# wrong constant name +# wrong constant name +# wrong constant name call +# wrong constant name initialize +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name initialize +# wrong constant name body_from +# wrong constant name force_encode_string +# wrong constant name try_encode_string +# wrong constant name +# wrong constant name +# wrong constant name included +# wrong constant name initialize +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name configure! +# wrong constant name vcr_cassette_name_for +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name method +# wrong constant name parsed_uri +# wrong constant name to_hash +# wrong constant name proceed +# wrong constant name to_proc +# wrong constant name +# wrong constant name externally_stubbed? +# wrong constant name ignored? +# wrong constant name initialize +# wrong constant name real? +# wrong constant name recordable? +# wrong constant name stubbed? +# wrong constant name stubbed_by_vcr? +# wrong constant name type +# wrong constant name unhandled? +# wrong constant name +# wrong constant name +# wrong constant name from_hash +# wrong constant name handle +# wrong constant name +# wrong constant name +# wrong constant name ignore? +# wrong constant name ignore_hosts +# wrong constant name ignore_localhost= +# wrong constant name localhost_ignored? +# wrong constant name unignore_hosts +# wrong constant name ignore_request +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name +# wrong constant name [] +# wrong constant name register +# wrong constant name uri_without_param +# wrong constant name uri_without_params +# wrong constant name matches? +# wrong constant name +# wrong constant name call +# wrong constant name partial_uri_from +# wrong constant name to_proc +# wrong constant name +# wrong constant name +# wrong constant name compressed? +# wrong constant name content_encoding +# wrong constant name decompress +# wrong constant name recompress +# wrong constant name to_hash +# wrong constant name update_content_length_header +# wrong constant name vcr_decompressed? +# wrong constant name +# wrong constant name decompress +# wrong constant name from_hash +# wrong constant name to_hash +# wrong constant name +# wrong constant name from_hash +# wrong constant name call_block +# wrong constant name +# wrong constant name +# wrong constant name const_missing # wrong constant name initialize # wrong constant name # wrong constant name @@ -30234,12 +34649,14 @@ # uninitialized constant WebSocket::Driver::Client::OPCODE_CODES # uninitialized constant WebSocket::Driver::Client::OPENING_OPCODES # uninitialized constant WebSocket::Driver::Client::PACK_FORMATS +# uninitialized constant WebSocket::Driver::Client::PORTS +# Did you mean? WebSocket::Driver::PORTS # uninitialized constant WebSocket::Driver::Client::RSV1 -# Did you mean? WebSocket::Driver::Client::RSV3 -# WebSocket::Driver::Client::RSV2 +# Did you mean? WebSocket::Driver::Client::RSV2 +# WebSocket::Driver::Client::RSV3 # uninitialized constant WebSocket::Driver::Client::RSV2 -# Did you mean? WebSocket::Driver::Client::RSV3 -# WebSocket::Driver::Client::RSV1 +# Did you mean? WebSocket::Driver::Client::RSV1 +# WebSocket::Driver::Client::RSV3 # uninitialized constant WebSocket::Driver::Client::RSV3 # Did you mean? WebSocket::Driver::Client::RSV2 # WebSocket::Driver::Client::RSV1 @@ -30253,6 +34670,8 @@ # wrong constant name generate_key # uninitialized constant WebSocket::Driver::Draft75::MAX_LENGTH # Did you mean? WebSocket::Driver::MAX_LENGTH +# uninitialized constant WebSocket::Driver::Draft75::PORTS +# Did you mean? WebSocket::Driver::PORTS # uninitialized constant WebSocket::Driver::Draft75::STATES # Did you mean? WebSocket::Driver::STATES # wrong constant name frame @@ -30261,6 +34680,8 @@ # wrong constant name # uninitialized constant WebSocket::Driver::Draft76::MAX_LENGTH # Did you mean? WebSocket::Driver::MAX_LENGTH +# uninitialized constant WebSocket::Driver::Draft76::PORTS +# Did you mean? WebSocket::Driver::PORTS # uninitialized constant WebSocket::Driver::Draft76::STATES # Did you mean? WebSocket::Driver::STATES # wrong constant name @@ -30274,6 +34695,8 @@ # uninitialized constant WebSocket::Driver::Hybi::MAX_LENGTH # Did you mean? WebSocket::Driver::MAX_LENGTH # wrong constant name +# uninitialized constant WebSocket::Driver::Hybi::PORTS +# Did you mean? WebSocket::Driver::PORTS # uninitialized constant WebSocket::Driver::Hybi::STATES # Did you mean? WebSocket::Driver::STATES # wrong constant name frame @@ -30325,6 +34748,8 @@ # wrong constant name # uninitialized constant WebSocket::Driver::Server::MAX_LENGTH # Did you mean? WebSocket::Driver::MAX_LENGTH +# uninitialized constant WebSocket::Driver::Server::PORTS +# Did you mean? WebSocket::Driver::PORTS # uninitialized constant WebSocket::Driver::Server::STATES # Did you mean? WebSocket::Driver::STATES # wrong constant name add_extension @@ -30345,6 +34770,7 @@ # wrong constant name put # wrong constant name read # wrong constant name +# wrong constant name host_header # wrong constant name # wrong constant name # wrong constant name @@ -30580,16 +35006,21 @@ # wrong constant name # wrong constant name # wrong constant name __register +# wrong constant name __registered? # wrong constant name __unregister_loader # wrong constant name initialize # wrong constant name -# wrong constant name _new +# wrong constant name __new # wrong constant name internal # wrong constant name # wrong constant name -# wrong constant name namespace_dirs -# wrong constant name shadowed_file? -# wrong constant name shadowed_files +# wrong constant name __autoloaded_dirs +# wrong constant name __autoloads +# wrong constant name __namespace_dirs +# wrong constant name __shadowed_file? +# wrong constant name __shadowed_files +# wrong constant name __to_unload +# wrong constant name cpath_expected_at # wrong constant name __ignores? # wrong constant name __roots # wrong constant name eager_load @@ -30598,6 +35029,7 @@ # wrong constant name load_file # wrong constant name # wrong constant name eager_load_namespace +# wrong constant name for_gem_extension # wrong constant name gem_loaders_by_root_file # wrong constant name initialize # wrong constant name initialize @@ -31162,9 +35594,7 @@ # wrong constant name << # wrong constant name compressed_size # wrong constant name size -# undefined singleton method `instance' for `Zip::NullCompressor' # wrong constant name -# wrong constant name instance # wrong constant name # wrong constant name eof # wrong constant name read diff --git a/sorbet/rbi/hidden-definitions/hidden.rbi b/sorbet/rbi/hidden-definitions/hidden.rbi index 02f74698ce..88a0e8f287 100644 --- a/sorbet/rbi/hidden-definitions/hidden.rbi +++ b/sorbet/rbi/hidden-definitions/hidden.rbi @@ -253,6 +253,16 @@ module ActionController::ParamsWrapper EXCLUDE_PARAMETERS = ::T.let(nil, ::T.untyped) end +module ActionController::Redirecting + ILLEGAL_HEADER_VALUE_REGEX = ::T.let(nil, ::T.untyped) +end + +class ActionController::Redirecting::UnsafeRedirectError +end + +class ActionController::Redirecting::UnsafeRedirectError +end + class ActionController::Renderer DEFAULTS = ::T.let(nil, ::T.untyped) RACK_KEY_TRANSLATION = ::T.let(nil, ::T.untyped) @@ -1441,7 +1451,6 @@ class ActionMailer::TestCase include ::ActionMailer::TestHelper include ::ActiveJob::TestHelper include ::Rails::Dom::Testing::Assertions::SelectorAssertions - include ::Rails::Dom::Testing::Assertions::SelectorAssertions::CountDescribable include ::Rails::Dom::Testing::Assertions::DomAssertions def _mailer_class(); end @@ -1455,7 +1464,6 @@ module ActionMailer::TestCase::Behavior include ::ActiveJob::TestHelper include ::ActiveSupport::Testing::Assertions include ::Rails::Dom::Testing::Assertions::SelectorAssertions - include ::Rails::Dom::Testing::Assertions::SelectorAssertions::CountDescribable include ::Rails::Dom::Testing::Assertions::DomAssertions end @@ -3386,10 +3394,6 @@ class ActionView::TemplateRenderer end class ActionView::TestCase - include ::Rails::Dom::Testing::Assertions - include ::Rails::Dom::Testing::Assertions::DomAssertions - include ::Rails::Dom::Testing::Assertions::SelectorAssertions - include ::Rails::Dom::Testing::Assertions::SelectorAssertions::CountDescribable include ::ActionDispatch::Assertions include ::ActionDispatch::Assertions::ResponseAssertions include ::ActionDispatch::Assertions::RoutingAssertions @@ -3422,6 +3426,9 @@ class ActionView::TestCase include ::ActionView::TestCase::Behavior include ::ActionDispatch::TestProcess include ::ActionDispatch::TestProcess::FixtureFile + include ::Rails::Dom::Testing::Assertions + include ::Rails::Dom::Testing::Assertions::DomAssertions + include ::Rails::Dom::Testing::Assertions::SelectorAssertions include ::ActionController::TemplateAssertions include ::ActionView::Context include ::ActionView::RecordIdentifier @@ -3443,6 +3450,9 @@ end module ActionView::TestCase::Behavior include ::ActionDispatch::TestProcess include ::ActionDispatch::TestProcess::FixtureFile + include ::Rails::Dom::Testing::Assertions + include ::Rails::Dom::Testing::Assertions::DomAssertions + include ::Rails::Dom::Testing::Assertions::SelectorAssertions include ::ActionController::TemplateAssertions include ::ActionView::Context include ::ActionView::RecordIdentifier @@ -12102,6 +12112,10 @@ module ActiveSupport::RangeWithFormat RANGE_FORMATS = ::T.let(nil, ::T.untyped) end +class ActiveSupport::SafeBuffer + def bytesplice(*args, value); end +end + class ActiveSupport::SecureCompareRotator include ::ActiveSupport::SecurityUtils include ::ActiveSupport::Messages::Rotator @@ -12175,15 +12189,6 @@ module Addressable::IDNA ACE_MAX_LENGTH = ::T.let(nil, ::T.untyped) ACE_PREFIX = ::T.let(nil, ::T.untyped) COMPOSITION_TABLE = ::T.let(nil, ::T.untyped) - HANGUL_LBASE = ::T.let(nil, ::T.untyped) - HANGUL_LCOUNT = ::T.let(nil, ::T.untyped) - HANGUL_NCOUNT = ::T.let(nil, ::T.untyped) - HANGUL_SBASE = ::T.let(nil, ::T.untyped) - HANGUL_SCOUNT = ::T.let(nil, ::T.untyped) - HANGUL_TBASE = ::T.let(nil, ::T.untyped) - HANGUL_TCOUNT = ::T.let(nil, ::T.untyped) - HANGUL_VBASE = ::T.let(nil, ::T.untyped) - HANGUL_VCOUNT = ::T.let(nil, ::T.untyped) PUNYCODE_BASE = ::T.let(nil, ::T.untyped) PUNYCODE_DAMP = ::T.let(nil, ::T.untyped) PUNYCODE_DELIMITER = ::T.let(nil, ::T.untyped) @@ -12208,6 +12213,10 @@ module Addressable::IDNA UTF8_REGEX_MULTIBYTE = ::T.let(nil, ::T.untyped) end +module Addressable::IDNA + def self._deprecated_unicode_normalize_kc(value); end +end + class Addressable::Template EXPRESSION = ::T.let(nil, ::T.untyped) JOINERS = ::T.let(nil, ::T.untyped) @@ -12220,7 +12229,11 @@ class Addressable::Template end class Addressable::URI + def encode_with(coder); end + def force_utf8_encoding_if_needed(str); end + + def init_with(coder); end EMPTY_STR = ::T.let(nil, ::T.untyped) NORMPATH = ::T.let(nil, ::T.untyped) PARENT = ::T.let(nil, ::T.untyped) @@ -14425,6 +14438,8 @@ end module Aws::CredentialProvider def credentials(); end + def expiration(); end + def set?(); end end @@ -17087,7 +17102,7 @@ end class Aws::Plugins::ChecksumAlgorithm::AwsChunkedTrailerDigestIO def initialize(io, algorithm, location_name); end - def read(length, buf); end + def read(length, buf=T.unsafe(nil)); end def rewind(); end @@ -17361,6 +17376,45 @@ end class Aws::Plugins::RegionalEndpoint end +class Aws::Plugins::RequestCompression + def add_handlers(handlers, _config); end + + def validate_disable_request_compression_input(cfg); end + + def validate_request_min_compression_size_bytes_input(cfg); end + CHUNK_SIZE = ::T.let(nil, ::T.untyped) + DEFAULT_MIN_COMPRESSION_SIZE = ::T.let(nil, ::T.untyped) + MIN_COMPRESSION_SIZE_LIMIT = ::T.let(nil, ::T.untyped) + SUPPORTED_ENCODINGS = ::T.let(nil, ::T.untyped) +end + +class Aws::Plugins::RequestCompression::CompressionHandler +end + +class Aws::Plugins::RequestCompression::CompressionHandler::ChunkBuffer + def last_chunk(); end + + def write(data); end +end + +class Aws::Plugins::RequestCompression::CompressionHandler::ChunkBuffer +end + +class Aws::Plugins::RequestCompression::CompressionHandler::GzipIO + def initialize(body); end + + def read(length, buff=T.unsafe(nil)); end +end + +class Aws::Plugins::RequestCompression::CompressionHandler::GzipIO +end + +class Aws::Plugins::RequestCompression::CompressionHandler +end + +class Aws::Plugins::RequestCompression +end + class Aws::Plugins::ResponsePaging end @@ -17599,10 +17653,18 @@ class Aws::Plugins::UserAgent::Handler def set_user_agent(context); end end +class Aws::Plugins::UserAgent::Handler::UserAgent + def initialize(context); end +end + +class Aws::Plugins::UserAgent::Handler::UserAgent +end + class Aws::Plugins::UserAgent::Handler end class Aws::Plugins::UserAgent + def self.feature(feature, &block); end end module Aws::Plugins @@ -17737,8 +17799,6 @@ end module Aws::RefreshingCredentials def credentials(); end - def expiration(); end - def initialize(options=T.unsafe(nil)); end def refresh!(); end @@ -18740,6 +18800,8 @@ module Aws::STS::ClientApi NameQualifier = ::T.let(nil, ::T.untyped) PackedPolicyTooLargeException = ::T.let(nil, ::T.untyped) PolicyDescriptorType = ::T.let(nil, ::T.untyped) + ProvidedContext = ::T.let(nil, ::T.untyped) + ProvidedContextsListType = ::T.let(nil, ::T.untyped) RegionDisabledException = ::T.let(nil, ::T.untyped) SAMLAssertionType = ::T.let(nil, ::T.untyped) Subject = ::T.let(nil, ::T.untyped) @@ -19172,6 +19234,14 @@ end class Aws::STS::Types::PolicyDescriptorType end +class Aws::STS::Types::ProvidedContext + include ::Aws::Structure + SENSITIVE = ::T.let(nil, ::T.untyped) +end + +class Aws::STS::Types::ProvidedContext +end + class Aws::STS::Types::RegionDisabledException include ::Aws::Structure SENSITIVE = ::T.let(nil, ::T.untyped) @@ -19207,6 +19277,8 @@ class Aws::SharedConfig def config_path(); end + def configured_endpoint(opts=T.unsafe(nil)); end + def correct_clock_skew(opts=T.unsafe(nil)); end def credential_process(opts=T.unsafe(nil)); end @@ -19225,6 +19297,8 @@ class Aws::SharedConfig def defaults_mode(opts=T.unsafe(nil)); end + def disable_request_compression(opts=T.unsafe(nil)); end + def ec2_metadata_service_endpoint(opts=T.unsafe(nil)); end def ec2_metadata_service_endpoint_mode(opts=T.unsafe(nil)); end @@ -19233,6 +19307,8 @@ class Aws::SharedConfig def fresh(options=T.unsafe(nil)); end + def ignore_configured_endpoint_urls(opts=T.unsafe(nil)); end + def initialize(options=T.unsafe(nil)); end def loadable?(path); end @@ -19243,6 +19319,8 @@ class Aws::SharedConfig def region(opts=T.unsafe(nil)); end + def request_min_compression_size_bytes(opts=T.unsafe(nil)); end + def retry_mode(opts=T.unsafe(nil)); end def s3_disable_multiregion_access_points(opts=T.unsafe(nil)); end @@ -19251,6 +19329,8 @@ class Aws::SharedConfig def s3_use_arn_region(opts=T.unsafe(nil)); end + def sdk_ua_app_id(opts=T.unsafe(nil)); end + def sso_credentials_from_config(opts=T.unsafe(nil)); end def sso_token_from_config(opts=T.unsafe(nil)); end @@ -23521,6 +23601,62 @@ module ControllerHelpers extend ::T::Private::Methods::SingletonMethodHooks end +module Crack +end + +class Crack::JSON + DATE_REGEX = ::T.let(nil, ::T.untyped) +end + +class Crack::JSON + def self.convert_json_to_yaml(json); end + + def self.format_dates(output, date_starts, date_ends); end + + def self.parse(json); end + + def self.parser_exceptions(); end + + def self.unescape(str); end +end + +class Crack::ParseError +end + +class Crack::ParseError +end + +class Crack::REXMLParser +end + +class Crack::REXMLParser + def self.parse(xml); end +end + +module Crack::Util + def snake_case(str); end + + def to_xml_attributes(hash); end +end + +module Crack::Util + extend ::Crack::Util +end + +class Crack::XML +end + +class Crack::XML + def self.parse(xml); end + + def self.parser(); end + + def self.parser=(parser); end +end + +module Crack +end + class Crass::Parser BLOCK_END_TOKENS = ::T.let(nil, ::T.untyped) end @@ -25054,6 +25190,18 @@ class Float include ::ActiveSupport::NumericWithFormat end +module Foreman + VERSION = ::T.let(nil, ::T.untyped) +end + +module Foreman + def self.ruby_18?(); end + + def self.runner(); end + + def self.windows?(); end +end + module Forwardable VERSION = ::T.let(nil, ::T.untyped) end @@ -26101,6 +26249,10 @@ end module GeneratedUrlHelpers def _routes(); end + def omniauth_v2_path(*args); end + + def omniauth_v2_url(*args); end + def rails_info_path(*args); end def rails_info_properties_path(*args); end @@ -26133,6 +26285,48 @@ module GeneratedUrlHelpers def self.url_options(); end end +module GetText +end + +class GetText::PoParser + def _(x); end + + def _reduce_10(val, _values, result); end + + def _reduce_12(val, _values, result); end + + def _reduce_13(val, _values, result); end + + def _reduce_14(val, _values, result); end + + def _reduce_15(val, _values, result); end + + def _reduce_5(val, _values, result); end + + def _reduce_8(val, _values, result); end + + def _reduce_9(val, _values, result); end + + def _reduce_none(val, _values, result); end + + def on_comment(comment); end + + def on_message(msgid, msgstr); end + + def parse(str, data, ignore_fuzzy=T.unsafe(nil)); end + + def unescape(orig); end + Racc_arg = ::T.let(nil, ::T.untyped) + Racc_debug_parser = ::T.let(nil, ::T.untyped) + Racc_token_to_s_table = ::T.let(nil, ::T.untyped) +end + +class GetText::PoParser +end + +module GetText +end + class GlobalID def as_json(*arg); end @@ -26204,10 +26398,6 @@ end class GlobalID::Verifier end -class HTMLSelector - NO_STRIP = ::T.let(nil, ::T.untyped) -end - module HTTP::Accept QUOTED_STRING = ::T.let(nil, ::T.untyped) TOKEN = ::T.let(nil, ::T.untyped) @@ -26280,6 +26470,8 @@ end class Hash include ::JSON::Ext::Generator::GeneratorMethods::Hash def deconstruct_keys(arg); end + + def index(arg); end end class Hash @@ -26325,6 +26517,68 @@ module HashDiff def self.right_diff(*args); end end +module Hashdiff + VERSION = ::T.let(nil, ::T.untyped) +end + +class Hashdiff::CompareHashes +end + +class Hashdiff::CompareHashes + def self.call(obj1, obj2, opts=T.unsafe(nil)); end +end + +class Hashdiff::LcsCompareArrays +end + +class Hashdiff::LcsCompareArrays + def self.call(obj1, obj2, opts=T.unsafe(nil)); end +end + +class Hashdiff::LinearCompareArray + def call(); end + + def initialize(old_array, new_array, options); end +end + +class Hashdiff::LinearCompareArray + def self.call(old_array, new_array, options=T.unsafe(nil)); end +end + +module Hashdiff + def self.best_diff(obj1, obj2, options=T.unsafe(nil), &block); end + + def self.comparable?(obj1, obj2, strict=T.unsafe(nil)); end + + def self.compare_values(obj1, obj2, options=T.unsafe(nil)); end + + def self.count_diff(diffs); end + + def self.count_nodes(obj); end + + def self.custom_compare(method, key, obj1, obj2); end + + def self.decode_property_path(path, delimiter=T.unsafe(nil)); end + + def self.diff(obj1, obj2, options=T.unsafe(nil), &block); end + + def self.diff_array_lcs(arraya, arrayb, options=T.unsafe(nil)); end + + def self.lcs(arraya, arrayb, options=T.unsafe(nil)); end + + def self.node(hash, parts); end + + def self.patch!(obj, changes, options=T.unsafe(nil)); end + + def self.prefix_append_array_index(prefix, array_index, opts); end + + def self.prefix_append_key(prefix, key, opts); end + + def self.similar?(obja, objb, options=T.unsafe(nil)); end + + def self.unpatch!(obj, changes, options=T.unsafe(nil)); end +end + module Hashie VERSION = ::T.let(nil, ::T.untyped) end @@ -27148,6 +27402,10 @@ end module I18n::Backend::Pluralization end +module I18n::Backend::Simple::Implementation + MUTEX = ::T.let(nil, ::T.untyped) +end + module I18n::Backend::Transliterator DEFAULT_REPLACEMENT_CHAR = ::T.let(nil, ::T.untyped) end @@ -27206,6 +27464,8 @@ end class I18n::InvalidFilenames end +I18n::JSON = ActiveSupport::JSON + module I18n::Locale end @@ -27301,6 +27561,7 @@ class I18n::Middleware end module I18n::MissingTranslation::Base + def normalized_option(key); end PERMITTED_KEYS = ::T.let(nil, ::T.untyped) end @@ -27374,10 +27635,16 @@ end class IO def beep(); end + def bytes(); end + + def chars(); end + def check_winsize_changed(); end def clear_screen(); end + def codepoints(); end + def console_mode(); end def console_mode=(console_mode); end @@ -27418,6 +27685,8 @@ class IO def ioflush(); end + def lines(*arg); end + def noecho(); end def nonblock(*arg); end @@ -27492,6 +27761,7 @@ class Integer include ::JSON::Ext::Generator::GeneratorMethods::Integer include ::ActiveSupport::NumericWithFormat def to_bn(); end + GMP_VERSION = ::T.let(nil, ::T.untyped) end module Integrations::ErrorContext @@ -28366,7 +28636,11 @@ module JWT::Algos::Ecdsa end module JWT::Algos::Ecdsa + def self.asn1_to_raw(signature, public_key); end + def self.curve_by_name(name); end + + def self.raw_to_asn1(signature, private_key); end end module JWT::Algos::Eddsa @@ -28807,6 +29081,17 @@ module Lograge VERSION = ::T.let(nil, ::T.untyped) end +class Lograge::Formatters::KeyValueDeep + def flatten_keys(data, prefix=T.unsafe(nil)); end + + def flatten_object(data, prefix); end + + def loop_on_object(data, &block); end +end + +class Lograge::Formatters::KeyValueDeep +end + class Lograge::Formatters::L2met L2MET_FIELDS = ::T.let(nil, ::T.untyped) UNWANTED_FIELDS = ::T.let(nil, ::T.untyped) @@ -28836,6 +29121,10 @@ class Lograge::SilentLogger RUBYGEMS_ACTIVATION_MONITOR = ::T.let(nil, ::T.untyped) end +module Lograge + def self.notification_listeners_for(name); end +end + module Loofah VERSION = ::T.let(nil, ::T.untyped) end @@ -28850,6 +29139,52 @@ module Loofah::Elements STRICT_BLOCK_LEVEL_HTML5 = ::T.let(nil, ::T.untyped) end +module Loofah::HTML4 +end + +class Loofah::HTML4::Document + include ::Loofah::ScrubBehavior::Node + include ::Loofah::DocumentDecorator + include ::Loofah::TextBehavior + include ::Loofah::HtmlDocumentBehavior +end + +class Loofah::HTML4::Document + extend ::Loofah::HtmlDocumentBehavior::ClassMethods +end + +class Loofah::HTML4::DocumentFragment + include ::Loofah::TextBehavior + include ::Loofah::HtmlFragmentBehavior +end + +class Loofah::HTML4::DocumentFragment + extend ::Loofah::HtmlFragmentBehavior::ClassMethods +end + +module Loofah::HTML4 +end + +class Loofah::HTML5::Document + include ::Loofah::ScrubBehavior::Node + include ::Loofah::DocumentDecorator + include ::Loofah::TextBehavior + include ::Loofah::HtmlDocumentBehavior +end + +class Loofah::HTML5::Document + extend ::Loofah::HtmlDocumentBehavior::ClassMethods +end + +class Loofah::HTML5::DocumentFragment + include ::Loofah::TextBehavior + include ::Loofah::HtmlFragmentBehavior +end + +class Loofah::HTML5::DocumentFragment + extend ::Loofah::HtmlFragmentBehavior::ClassMethods +end + module Loofah::HTML5::SafeList ACCEPTABLE_ATTRIBUTES = ::T.let(nil, ::T.untyped) ACCEPTABLE_CSS_COLORS = ::T.let(nil, ::T.untyped) @@ -28907,6 +29242,42 @@ end Loofah::HTML5::WhiteList = Loofah::HTML5::SafeList +module Loofah::HtmlDocumentBehavior + def serialize_root(); end +end + +module Loofah::HtmlDocumentBehavior::ClassMethods + def parse(*args, &block); end +end + +module Loofah::HtmlDocumentBehavior::ClassMethods +end + +module Loofah::HtmlDocumentBehavior + def self.included(base); end +end + +module Loofah::HtmlFragmentBehavior + def serialize(); end + + def serialize_root(); end + + def to_s(); end +end + +module Loofah::HtmlFragmentBehavior::ClassMethods + def document_klass(); end + + def parse(tags, encoding=T.unsafe(nil)); end +end + +module Loofah::HtmlFragmentBehavior::ClassMethods +end + +module Loofah::HtmlFragmentBehavior + def self.included(base); end +end + module Loofah::LibxmlWorkarounds BROKEN_ESCAPING_ATTRIBUTES = ::T.let(nil, ::T.untyped) BROKEN_ESCAPING_ATTRIBUTES_QUALIFYING_TAG = ::T.let(nil, ::T.untyped) @@ -28921,6 +29292,26 @@ module Loofah::Scrubbers MAP = ::T.let(nil, ::T.untyped) end +module Loofah + def self.html4_document(*args, &block); end + + def self.html4_fragment(*args, &block); end + + def self.html5_document(*args, &block); end + + def self.html5_fragment(*args, &block); end + + def self.html5_support?(); end + + def self.scrub_html4_document(string_or_io, method); end + + def self.scrub_html4_fragment(string_or_io, method); end + + def self.scrub_html5_document(string_or_io, method); end + + def self.scrub_html5_fragment(string_or_io, method); end +end + class MIME::Type def provisional(); end @@ -31720,35 +32111,33 @@ class MessagePack::Factory::Pool def initialize(factory, size, options=T.unsafe(nil)); end def load(data); end -end - -class MessagePack::Factory::Pool::AbstractPool - def checkin(member); end - def checkout(); end + def packer(&block); end - def initialize(size, &block); end + def unpacker(&block); end end -class MessagePack::Factory::Pool::AbstractPool -end +class MessagePack::Factory::Pool::MemberPool + def initialize(size, &block); end -class MessagePack::Factory::Pool::PackerPool + def with(); end end -class MessagePack::Factory::Pool::PackerPool +class MessagePack::Factory::Pool::MemberPool end -class MessagePack::Factory::Pool::UnpackerPool +class MessagePack::Factory::Pool end -class MessagePack::Factory::Pool::UnpackerPool +class MessagePack::HeldBuffer end -class MessagePack::Factory::Pool +class MessagePack::HeldBuffer end class MessagePack::Packer + def register_type_internal(arg, arg1, arg2); end + def reset(); end end @@ -31792,9 +32181,7 @@ module MiniMime VERSION = ::T.let(nil, ::T.untyped) end -class MiniMime::Db - LOCK = ::T.let(nil, ::T.untyped) -end +MiniMime::Db::PReadFile = File class MiniMime::Db::RandomAccessDb MAX_CACHED = ::T.let(nil, ::T.untyped) @@ -31833,10 +32220,16 @@ end class Minitest::Rails::SpecTests::Test__allows_the_secondary_object_to_be_set_more_than_once__test_unit_test_salesforce_context_rb__33 end -class Minitest::Rails::SpecTests::Test__amendments__test_integration_amendments_test_backend_prorated_amendments_rb__79 +class Minitest::Rails::SpecTests::Test__backdated_amendment_order__test_integration_amendments_test_backdated_orders_rb__18 end -class Minitest::Rails::SpecTests::Test__amendments__test_integration_amendments_test_backend_prorated_amendments_rb__79 +class Minitest::Rails::SpecTests::Test__backdated_amendment_order__test_integration_amendments_test_backdated_orders_rb__18 +end + +class Minitest::Rails::SpecTests::Test__backend_prorated_amendments__test_integration_amendments_test_backend_prorated_amendments_rb__117 +end + +class Minitest::Rails::SpecTests::Test__backend_prorated_amendments__test_integration_amendments_test_backend_prorated_amendments_rb__117 end class Minitest::Rails::SpecTests::Test__backoff__test_unit_test_salesforce_util_rb__7 @@ -31845,52 +32238,64 @@ end class Minitest::Rails::SpecTests::Test__backoff__test_unit_test_salesforce_util_rb__7 end -class Minitest::Rails::SpecTests::Test__configuration__test_controllers_test_configurations_controller_rb__125 +class Minitest::Rails::SpecTests::Test__calculate_days_to_prorate__test_unit_test_salesforce_util_rb__85 +end + +class Minitest::Rails::SpecTests::Test__calculate_days_to_prorate__test_unit_test_salesforce_util_rb__85 end -class Minitest::Rails::SpecTests::Test__configuration__test_controllers_test_configurations_controller_rb__125 +class Minitest::Rails::SpecTests::Test__configuration__test_controllers_test_configurations_controller_rb__182 end -class Minitest::Rails::SpecTests::Test__configuration_configuration__test_controllers_test_configurations_controller_rb__235 +class Minitest::Rails::SpecTests::Test__configuration__test_controllers_test_configurations_controller_rb__182 end -class Minitest::Rails::SpecTests::Test__configuration_configuration__test_controllers_test_configurations_controller_rb__235 +class Minitest::Rails::SpecTests::Test__configuration_configuration__test_controllers_test_configurations_controller_rb__335 end -class Minitest::Rails::SpecTests::Test__configuration_errors__test_controllers_test_configurations_controller_rb__142 +class Minitest::Rails::SpecTests::Test__configuration_configuration__test_controllers_test_configurations_controller_rb__335 end -class Minitest::Rails::SpecTests::Test__configuration_errors__test_controllers_test_configurations_controller_rb__142 +class Minitest::Rails::SpecTests::Test__configuration_errors__test_controllers_test_configurations_controller_rb__199 end -class Minitest::Rails::SpecTests::Test__configuration_show__test_controllers_test_configurations_controller_rb__177 +class Minitest::Rails::SpecTests::Test__configuration_errors__test_controllers_test_configurations_controller_rb__199 end -class Minitest::Rails::SpecTests::Test__configuration_show__test_controllers_test_configurations_controller_rb__177 +class Minitest::Rails::SpecTests::Test__configuration_show__test_controllers_test_configurations_controller_rb__234 end -class Minitest::Rails::SpecTests::Test__contract_co_terminated__test_integration_amendments_test_amendments_rb__543 +class Minitest::Rails::SpecTests::Test__configuration_show__test_controllers_test_configurations_controller_rb__234 end -class Minitest::Rails::SpecTests::Test__contract_co_terminated__test_integration_amendments_test_amendments_rb__543 +class Minitest::Rails::SpecTests::Test__connection_statuses__test_controllers_test_configurations_controller_rb__7 end -class Minitest::Rails::SpecTests::Test__coupon_reuse__test_integration_translate_test_coupon_rb__323 +class Minitest::Rails::SpecTests::Test__connection_statuses__test_controllers_test_configurations_controller_rb__7 end -class Minitest::Rails::SpecTests::Test__coupon_reuse__test_integration_translate_test_coupon_rb__323 +class Minitest::Rails::SpecTests::Test__contract_co_terminated__test_integration_amendments_test_amendments_rb__546 end -class Minitest::Rails::SpecTests::Test__coupons__test_integration_amendments_test_amendments_rb__657 +class Minitest::Rails::SpecTests::Test__contract_co_terminated__test_integration_amendments_test_amendments_rb__546 end -class Minitest::Rails::SpecTests::Test__coupons__test_integration_amendments_test_amendments_rb__657 +class Minitest::Rails::SpecTests::Test__coupon_reuse__test_integration_translate_test_coupon_rb__326 end -class Minitest::Rails::SpecTests::Test__cpq_details__test_integration_translate_test_price_rb__115 +class Minitest::Rails::SpecTests::Test__coupon_reuse__test_integration_translate_test_coupon_rb__326 end -class Minitest::Rails::SpecTests::Test__cpq_details__test_integration_translate_test_price_rb__115 +class Minitest::Rails::SpecTests::Test__coupons__test_integration_amendments_test_amendments_rb__825 +end + +class Minitest::Rails::SpecTests::Test__coupons__test_integration_amendments_test_amendments_rb__825 +end + +class Minitest::Rails::SpecTests::Test__cpq_details__test_integration_translate_test_price_rb__124 +end + +class Minitest::Rails::SpecTests::Test__cpq_details__test_integration_translate_test_price_rb__124 end class Minitest::Rails::SpecTests::Test__credentials_refresh__test_unit_test_user_rb__11 @@ -31899,10 +32304,16 @@ end class Minitest::Rails::SpecTests::Test__credentials_refresh__test_unit_test_user_rb__11 end -class Minitest::Rails::SpecTests::Test__days_until_due__test_integration_translate_test_subscription_schedule_mapping_rb__19 +class Minitest::Rails::SpecTests::Test__custom_order_filters__test_integration_amendments_test_amendments_rb__1116 +end + +class Minitest::Rails::SpecTests::Test__custom_order_filters__test_integration_amendments_test_amendments_rb__1116 +end + +class Minitest::Rails::SpecTests::Test__days_until_due__test_integration_translate_test_subscription_schedule_mapping_rb__22 end -class Minitest::Rails::SpecTests::Test__days_until_due__test_integration_translate_test_subscription_schedule_mapping_rb__19 +class Minitest::Rails::SpecTests::Test__days_until_due__test_integration_translate_test_subscription_schedule_mapping_rb__22 end class Minitest::Rails::SpecTests::Test__delete_past_phases__test_unit_test_order_amendments_rb__11 @@ -31917,16 +32328,28 @@ end class Minitest::Rails::SpecTests::Test__determine_current_time__test_unit_test_order_amendments_rb__38 end -class Minitest::Rails::SpecTests::Test__errors__test_integration_translate_test_billing_frequency_rb__11 +class Minitest::Rails::SpecTests::Test__errors__test_integration_translate_test_billing_frequency_rb__14 +end + +class Minitest::Rails::SpecTests::Test__errors__test_integration_translate_test_billing_frequency_rb__14 +end + +class Minitest::Rails::SpecTests::Test__failure_cases__test_integration_amendments_test_evergreen_amendments_rb__194 +end + +class Minitest::Rails::SpecTests::Test__failure_cases__test_integration_amendments_test_evergreen_amendments_rb__194 +end + +class Minitest::Rails::SpecTests::Test__failure_cases__test_integration_test_evergreen_order_rb__234 end -class Minitest::Rails::SpecTests::Test__errors__test_integration_translate_test_billing_frequency_rb__11 +class Minitest::Rails::SpecTests::Test__failure_cases__test_integration_test_evergreen_order_rb__234 end -class Minitest::Rails::SpecTests::Test__generate_idempotency_key_with_credentials__test_unit_test_stripe_util_rb__11 +class Minitest::Rails::SpecTests::Test__failure_cases__test_integration_test_multicurrency_rb__376 end -class Minitest::Rails::SpecTests::Test__generate_idempotency_key_with_credentials__test_unit_test_stripe_util_rb__11 +class Minitest::Rails::SpecTests::Test__failure_cases__test_integration_test_multicurrency_rb__376 end class Minitest::Rails::SpecTests::Test__handling_a_valid_webhook__test_controllers_test_stripe_webhook_controller_rb__50 @@ -31941,22 +32364,22 @@ end class Minitest::Rails::SpecTests::Test__host_selection__test_unit_test_user_rb__31 end -class Minitest::Rails::SpecTests::Test__initial_login_redirect__test_controllers_test_session_controller_rb__170 +class Minitest::Rails::SpecTests::Test__initial_login_redirect__test_controllers_test_session_controller_rb__57 end -class Minitest::Rails::SpecTests::Test__initial_login_redirect__test_controllers_test_session_controller_rb__170 +class Minitest::Rails::SpecTests::Test__initial_login_redirect__test_controllers_test_session_controller_rb__57 end -class Minitest::Rails::SpecTests::Test__log_level_configuration__test_unit_test_error_context_rb__42 +class Minitest::Rails::SpecTests::Test__invoice_rendering_template__test_integration_amendments_test_amendments_rb__1054 end -class Minitest::Rails::SpecTests::Test__log_level_configuration__test_unit_test_error_context_rb__42 +class Minitest::Rails::SpecTests::Test__invoice_rendering_template__test_integration_amendments_test_amendments_rb__1054 end -class Minitest::Rails::SpecTests::Test__metadata__test_integration_amendments_test_amendments_rb__882 +class Minitest::Rails::SpecTests::Test__log_level_configuration__test_unit_test_error_context_rb__42 end -class Minitest::Rails::SpecTests::Test__metadata__test_integration_amendments_test_amendments_rb__882 +class Minitest::Rails::SpecTests::Test__log_level_configuration__test_unit_test_error_context_rb__42 end class Minitest::Rails::SpecTests::Test__namespace_custom_field_prefix__test_unit_test_translator_rb__73 @@ -31965,40 +32388,46 @@ end class Minitest::Rails::SpecTests::Test__namespace_custom_field_prefix__test_unit_test_translator_rb__73 end -class Minitest::Rails::SpecTests::Test__order_line__test_integration_translate_test_price_reuse_rb__190 +class Minitest::Rails::SpecTests::Test__non_anniversary_amendments__test_integration_amendments_test_proration_amendments_rb__1282 end -class Minitest::Rails::SpecTests::Test__order_line__test_integration_translate_test_price_reuse_rb__190 +class Minitest::Rails::SpecTests::Test__non_anniversary_amendments__test_integration_amendments_test_proration_amendments_rb__1282 end -class Minitest::Rails::SpecTests::Test__order_translation_with_coupons__test_integration_translate_test_coupon_rb__81 +class Minitest::Rails::SpecTests::Test__non_anniversary_amendments_with_day_porations__test_integration_amendments_test_proration_amendments_rb__1531 end -class Minitest::Rails::SpecTests::Test__order_translation_with_coupons__test_integration_translate_test_coupon_rb__81 +class Minitest::Rails::SpecTests::Test__non_anniversary_amendments_with_day_porations__test_integration_amendments_test_proration_amendments_rb__1531 end -class Minitest::Rails::SpecTests::Test__post_install__test_controllers_test_configurations_controller_rb__68 +class Minitest::Rails::SpecTests::Test__order_line__test_integration_translate_test_price_reuse_rb__196 end -class Minitest::Rails::SpecTests::Test__post_install__test_controllers_test_configurations_controller_rb__68 +class Minitest::Rails::SpecTests::Test__order_line__test_integration_translate_test_price_reuse_rb__196 end -class Minitest::Rails::SpecTests::Test__price_billing_amounts_equal__test_unit_test_price_helpers_rb__153 +class Minitest::Rails::SpecTests::Test__order_translation_with_coupons__test_integration_translate_test_coupon_rb__84 end -class Minitest::Rails::SpecTests::Test__price_billing_amounts_equal__test_unit_test_price_helpers_rb__153 +class Minitest::Rails::SpecTests::Test__order_translation_with_coupons__test_integration_translate_test_coupon_rb__84 end -class Minitest::Rails::SpecTests::Test__price_reuse__test_integration_translate_test_product_rb__11 +class Minitest::Rails::SpecTests::Test__post_install__test_controllers_test_configurations_controller_rb__125 end -class Minitest::Rails::SpecTests::Test__price_reuse__test_integration_translate_test_product_rb__11 +class Minitest::Rails::SpecTests::Test__post_install__test_controllers_test_configurations_controller_rb__125 end -class Minitest::Rails::SpecTests::Test__pricebook__test_integration_translate_test_price_reuse_rb__11 +class Minitest::Rails::SpecTests::Test__price_billing_amounts_equal__test_unit_test_price_helpers_rb__153 end -class Minitest::Rails::SpecTests::Test__pricebook__test_integration_translate_test_price_reuse_rb__11 +class Minitest::Rails::SpecTests::Test__price_billing_amounts_equal__test_unit_test_price_helpers_rb__153 +end + +class Minitest::Rails::SpecTests::Test__pricebook__test_integration_translate_test_price_reuse_rb__15 +end + +class Minitest::Rails::SpecTests::Test__pricebook__test_integration_translate_test_price_reuse_rb__15 end class Minitest::Rails::SpecTests::Test__prices__test_unit_test_sanitizer_rb__27 @@ -32013,22 +32442,28 @@ end class Minitest::Rails::SpecTests::Test__pricing_tiers_equal__test_unit_test_price_helpers_rb__7 end +class Minitest::Rails::SpecTests::Test__product_reuse__test_integration_translate_test_product_rb__14 +end + +class Minitest::Rails::SpecTests::Test__product_reuse__test_integration_translate_test_product_rb__14 +end + class Minitest::Rails::SpecTests::Test__required_and_optional_mapping__test_unit_test_translator_rb__12 end class Minitest::Rails::SpecTests::Test__required_and_optional_mapping__test_unit_test_translator_rb__12 end -class Minitest::Rails::SpecTests::Test__salesforce_record_locking__test_unit_test_locker_rb__144 +class Minitest::Rails::SpecTests::Test__salesforce_record_locking__test_unit_test_locker_rb__148 end -class Minitest::Rails::SpecTests::Test__salesforce_record_locking__test_unit_test_locker_rb__144 +class Minitest::Rails::SpecTests::Test__salesforce_record_locking__test_unit_test_locker_rb__148 end -class Minitest::Rails::SpecTests::Test__salesforce_trigger_logic__test_integration_translate_test_coupon_rb__12 +class Minitest::Rails::SpecTests::Test__salesforce_trigger_logic__test_integration_translate_test_coupon_rb__15 end -class Minitest::Rails::SpecTests::Test__salesforce_trigger_logic__test_integration_translate_test_coupon_rb__12 +class Minitest::Rails::SpecTests::Test__salesforce_trigger_logic__test_integration_translate_test_coupon_rb__15 end class Minitest::Rails::SpecTests::Test__salesforce_type_from_id__test_unit_test_salesforce_util_rb__47 @@ -32037,35 +32472,59 @@ end class Minitest::Rails::SpecTests::Test__salesforce_type_from_id__test_unit_test_salesforce_util_rb__47 end -class Minitest::Rails::SpecTests::Test__skip_conditions__test_integration_test_proration_auto_bill_rb__44 +class Minitest::Rails::SpecTests::Test__skip_conditions__test_integration_test_proration_auto_bill_rb__62 +end + +class Minitest::Rails::SpecTests::Test__skip_conditions__test_integration_test_proration_auto_bill_rb__62 +end + +class Minitest::Rails::SpecTests::Test__skip_initial_invoice_of_backdated_initial_order__test_integration_amendments_test_backdated_orders_rb__629 +end + +class Minitest::Rails::SpecTests::Test__skip_initial_invoice_of_backdated_initial_order__test_integration_amendments_test_backdated_orders_rb__629 +end + +class Minitest::Rails::SpecTests::Test__stacked_amendments__test_integration_amendments_test_amendments_rb__1273 +end + +class Minitest::Rails::SpecTests::Test__stacked_amendments__test_integration_amendments_test_amendments_rb__1273 end -class Minitest::Rails::SpecTests::Test__skip_conditions__test_integration_test_proration_auto_bill_rb__44 +class Minitest::Rails::SpecTests::Test__stacked_amendments__test_integration_amendments_test_same_day_amendments_rb__417 end -class Minitest::Rails::SpecTests::Test__stripe_credentials__test_unit_test_user_rb__45 +class Minitest::Rails::SpecTests::Test__stacked_amendments__test_integration_amendments_test_same_day_amendments_rb__417 +end + +class Minitest::Rails::SpecTests::Test__stripe_credentials__test_unit_test_user_rb__81 def make_user_for_client_credentials_tests(overrides=T.unsafe(nil)); end end -class Minitest::Rails::SpecTests::Test__stripe_credentials__test_unit_test_user_rb__45 +class Minitest::Rails::SpecTests::Test__stripe_credentials__test_unit_test_user_rb__81 +end + +class Minitest::Rails::SpecTests::Test__stripe_resource_locking__test_unit_test_locker_rb__74 end -class Minitest::Rails::SpecTests::Test__stripe_resource_locking__test_unit_test_locker_rb__70 +class Minitest::Rails::SpecTests::Test__stripe_resource_locking__test_unit_test_locker_rb__74 end -class Minitest::Rails::SpecTests::Test__stripe_resource_locking__test_unit_test_locker_rb__70 +class Minitest::Rails::SpecTests::Test__subscription_without_a_billing_cycle__test_integration_amendments_test_amendments_rb__344 end -class Minitest::Rails::SpecTests::Test__subscription_without_a_billing_cycle__test_integration_amendments_test_amendments_rb__341 +class Minitest::Rails::SpecTests::Test__subscription_without_a_billing_cycle__test_integration_amendments_test_amendments_rb__344 end -class Minitest::Rails::SpecTests::Test__subscription_without_a_billing_cycle__test_integration_amendments_test_amendments_rb__341 +class Minitest::Rails::SpecTests::Test__success_cases__test_integration_test_multicurrency_rb__23 end -class Minitest::Rails::SpecTests::Test__supports_negative_order_items__test_integration_amendments_test_proration_amendments_rb__425 +class Minitest::Rails::SpecTests::Test__success_cases__test_integration_test_multicurrency_rb__23 end -class Minitest::Rails::SpecTests::Test__supports_negative_order_items__test_integration_amendments_test_proration_amendments_rb__425 +class Minitest::Rails::SpecTests::Test__supports_negative_order_items__test_integration_amendments_test_proration_amendments_rb__505 +end + +class Minitest::Rails::SpecTests::Test__supports_negative_order_items__test_integration_amendments_test_proration_amendments_rb__505 end class Minitest::Rails::SpecTests::Test__time__test_unit_test_metrics_rb__92 @@ -32080,28 +32539,34 @@ end class Minitest::Rails::SpecTests::Test__transform_payment_terms_to_days_until_due__test_unit_test_order_helpers_rb__7 end -class Minitest::Rails::SpecTests::Test__translate__test_controllers_test_configurations_controller_rb__18 +class Minitest::Rails::SpecTests::Test__translate__test_controllers_test_configurations_controller_rb__75 +end + +class Minitest::Rails::SpecTests::Test__translate__test_controllers_test_configurations_controller_rb__75 end -class Minitest::Rails::SpecTests::Test__translate__test_controllers_test_configurations_controller_rb__18 +class Minitest::Rails::SpecTests::Test__translate_all__test_controllers_test_configurations_controller_rb__64 end -class Minitest::Rails::SpecTests::Test__translate_all__test_controllers_test_configurations_controller_rb__7 +class Minitest::Rails::SpecTests::Test__translate_all__test_controllers_test_configurations_controller_rb__64 end -class Minitest::Rails::SpecTests::Test__translate_all__test_controllers_test_configurations_controller_rb__7 +class Minitest::Rails::SpecTests::Test__type__test_integration_translate_test_subscription_schedule_mapping_rb__15 end -class Minitest::Rails::SpecTests::Test__type__test_integration_translate_test_subscription_schedule_mapping_rb__12 +class Minitest::Rails::SpecTests::Test__type__test_integration_translate_test_subscription_schedule_mapping_rb__15 end -class Minitest::Rails::SpecTests::Test__type__test_integration_translate_test_subscription_schedule_mapping_rb__12 +class Minitest::Rails::SpecTests::Test__update_sf_stripe_id__test_unit_test_translator_rb__131 end -class Minitest::Rails::SpecTests::Test__update_sf_stripe_id__test_unit_test_translator_rb__123 +class Minitest::Rails::SpecTests::Test__update_sf_stripe_id__test_unit_test_translator_rb__131 end -class Minitest::Rails::SpecTests::Test__update_sf_stripe_id__test_unit_test_translator_rb__123 +class Minitest::Rails::SpecTests::Test__update_subscription_schedule_fields_on_amendments__test_integration_amendments_test_amendments_rb__1183 +end + +class Minitest::Rails::SpecTests::Test__update_subscription_schedule_fields_on_amendments__test_integration_amendments_test_amendments_rb__1183 end class Minitest::Rails::SpecTests::Test__using_custom_order_line_price_field__test_unit_test_price_helpers_rb__274 @@ -33281,6 +33746,8 @@ end class Net::HTTPAlreadyReported end +Net::HTTPClientError::EXCEPTION_TYPE = Net::HTTPServerException + Net::HTTPClientErrorCode = Net::HTTPClientError class Net::HTTPEarlyHints @@ -33350,6 +33817,8 @@ end class Net::HTTPRangeNotSatisfiable end +Net::HTTPRedirection::EXCEPTION_TYPE = Net::HTTPRetriableError + Net::HTTPRedirectionCode = Net::HTTPRedirection Net::HTTPRequestURITooLarge = Net::HTTPURITooLong @@ -33358,17 +33827,15 @@ Net::HTTPResponceReceiver = Net::HTTPResponse Net::HTTPRetriableCode = Net::HTTPRedirection +Net::HTTPServerError::EXCEPTION_TYPE = Net::HTTPFatalError + Net::HTTPServerErrorCode = Net::HTTPServerError Net::HTTPSession = Net::HTTP -class Net::HTTPSuccess -end - -Net::HTTPSuccessCode::EXCEPTION_TYPE = Net::HTTPError +Net::HTTPSuccess::EXCEPTION_TYPE = Net::HTTPError -class Net::HTTPSuccess -end +Net::HTTPSuccessCode = Net::HTTPSuccess class Net::HTTPURITooLong HAS_BODY = ::T.let(nil, ::T.untyped) @@ -33618,7 +34085,7 @@ class Net::IMAP::UnknownResponseError end class Net::IMAP::XOauth2Authenticator - def initialize(user, oauth2_token); end + def initialize(user, oauth2_token, **_); end def process(_data); end end @@ -33968,7 +34435,19 @@ module Nokogiri::Gumbo DEFAULT_MAX_TREE_DEPTH = ::T.let(nil, ::T.untyped) end -Nokogiri::HTML = Nokogiri::HTML4 +module Nokogiri::HTML4 +end + +class Nokogiri::HTML4::ElementDescription +end + +Nokogiri::HTML::ElementDescription::Desc = Struct::HTMLElementDescription + +class Nokogiri::HTML4::ElementDescription +end + +module Nokogiri::HTML4 +end module Nokogiri::HTML4 NamedCharacters = ::T.let(nil, ::T.untyped) @@ -34085,8 +34564,6 @@ class Nokogiri::HTML4::ElementDescription WIDTH_ATTR = ::T.let(nil, ::T.untyped) end -Nokogiri::HTML4::ElementDescription::Desc = Struct::HTMLElementDescription - class Nokogiri::HTML4::EncodingReader def encoding_found(); end @@ -34167,6 +34644,7 @@ class Nokogiri::XML::Element end class Nokogiri::XML::ElementContent + include ::Nokogiri::XML::PP::Node ELEMENT = ::T.let(nil, ::T.untyped) MULT = ::T.let(nil, ::T.untyped) ONCE = ::T.let(nil, ::T.untyped) @@ -34317,7 +34795,10 @@ class Object ARGV = ::T.let(nil, ::T.untyped) CROSS_COMPILING = ::T.let(nil, ::T.untyped) DB = ::T.let(nil, ::T.untyped) + DEFAULT_STATE_ENCRYPTION_KEY = ::T.let(nil, ::T.untyped) + DEFAULT_STATE_SIGNING_KEY = ::T.let(nil, ::T.untyped) ENV = ::T.let(nil, ::T.untyped) + JWT_HEADER = ::T.let(nil, ::T.untyped) RUBY_COPYRIGHT = ::T.let(nil, ::T.untyped) RUBY_DESCRIPTION = ::T.let(nil, ::T.untyped) RUBY_ENGINE = ::T.let(nil, ::T.untyped) @@ -34357,16 +34838,10 @@ module ObjectSpace def self.allocation_sourceline(arg); end - def self.count_imemo_objects(arg); end - def self.count_nodes(*arg); end - def self.count_objects_size(arg); end - def self.count_symbols(*arg); end - def self.count_tdata_objects(arg); end - def self.dump(*arg); end def self.dump_all(*arg); end @@ -34375,10 +34850,6 @@ module ObjectSpace def self.internal_super_of(arg); end - def self.memsize_of(arg); end - - def self.memsize_of_all(arg); end - def self.reachable_objects_from(arg); end def self.reachable_objects_from_root(); end @@ -36670,6 +37141,12 @@ end class PG::LockNotAvailable end +class PG::LostCopyState +end + +class PG::LostCopyState +end + class PG::MoreThanOneSqlJsonItem end @@ -37779,6 +38256,22 @@ class Parallel::UserInterruptHandler INTERRUPT_SIGNAL = ::T.let(nil, ::T.untyped) end +module Parallel + def self.filter_map(*args, &block); end + + def self.physical_processor_count(); end + + def self.processor_count(); end +end + +module Parlour + VERSION = ::T.let(nil, ::T.untyped) +end + +class Parlour::Conversion::Converter + def self.new(*args, &blk); end +end + class Parlour::Debugging::Tree def begin(*args, &blk); end @@ -37795,6 +38288,7 @@ class Parlour::Debugging::Tree def line_prefix(); end def text_prefix(); end + INDENT_SPACES = ::T.let(nil, ::T.untyped) end module Parlour::Mixin @@ -37822,6 +38316,10 @@ end module Parlour::Mixin end +class Parlour::Plugin + def self.new(*args, &blk); end +end + class Parlour::RbiGenerator::ClassNamespace Child = type_member end @@ -37843,14 +38341,21 @@ class Parlour::RbiGenerator::Namespace extend ::T::Generic end +Parlour::RbiGenerator::Options = Parlour::Options + class Parlour::RbiGenerator::Parameter def describe_in_method(*args, &blk); end + PREFIXES = ::T.let(nil, ::T.untyped) end class Parlour::RbiGenerator::StructClassNamespace Child = type_member end +class Parlour::RbiGenerator::StructProp + EXTRA_PROPERTIES = ::T.let(nil, ::T.untyped) +end + class Parlour::RbsGenerator::ClassNamespace Child = type_member end @@ -37876,6 +38381,11 @@ class Parlour::RbsGenerator::Namespace extend ::T::Generic end +class Parlour::RbsGenerator::Parameter + PREFIXES = ::T.let(nil, ::T.untyped) + RBS_KEYWORDS = ::T.let(nil, ::T.untyped) +end + class Parlour::TypedObject def describe_attrs(*args, &blk); end @@ -37886,6 +38396,18 @@ class Parlour::TypedObject def to_s(*args, &blk); end end +class Parlour::TypedObject + def self.new(*args, &blk); end +end + +module Parlour::Types + TypeLike = ::T.let(nil, ::T.untyped) +end + +class Parlour::Types::Type + def self.new(*args, &blk); end +end + ParseError = Racc::ParseError module Parser @@ -37945,28 +38467,81 @@ end class Parser::Lexer def check_ambiguous_slash(tm); end - def check_invalid_escapes(p); end - - def e_heredoc_nl(p); end - def e_lbrace(); end - def emit_character_constant(); end + def emit_class_var(ts=T.unsafe(nil), te=T.unsafe(nil)); end def emit_colon_with_digits(p, tm, diag_msg); end def emit_comment_from_range(p, pe); end - def emit_global_var(); end + def emit_global_var(ts=T.unsafe(nil), te=T.unsafe(nil)); end - def emit_invalid_escapes?(); end + def emit_instance_var(ts=T.unsafe(nil), te=T.unsafe(nil)); end def emit_rbrace_rparen_rbrack(); end def emit_singleton_class(); end + def numeric_literal_int(); end + + def on_newline(p); end + + def version(); end + ESCAPE_WHITESPACE = ::T.let(nil, ::T.untyped) + KEYWORDS = ::T.let(nil, ::T.untyped) + KEYWORDS_BEGIN = ::T.let(nil, ::T.untyped) + LEX_STATES = ::T.let(nil, ::T.untyped) + PUNCTUATION = ::T.let(nil, ::T.untyped) + PUNCTUATION_BEGIN = ::T.let(nil, ::T.untyped) +end + +class Parser::Lexer::Dedenter + TAB_WIDTH = ::T.let(nil, ::T.untyped) +end + +class Parser::Lexer::Literal + DELIMITERS = ::T.let(nil, ::T.untyped) + TYPES = ::T.let(nil, ::T.untyped) +end + +class Parser::Lexer + def self.lex_en_inside_string(); end + + def self.lex_en_inside_string=(lex_en_inside_string); end +end + +class Parser::LexerStrings + def advance(p); end + + def check_ambiguous_slash(tm); end + + def check_invalid_escapes(p); end + + def close_interp_on_current_literal(p); end + + def cond(); end + + def continue_lexing(current_literal); end + + def dedent_level(); end + + def diagnostic(type, reason, arguments=T.unsafe(nil), location=T.unsafe(nil), highlights=T.unsafe(nil)); end + + def emit(type, value=T.unsafe(nil), s=T.unsafe(nil), e=T.unsafe(nil)); end + + def emit_character_constant(); end + + def emit_interp_var(interp_var_kind); end + + def emit_invalid_escapes?(); end + + def encode_escape(ord); end + def encode_escaped_char(p); end + def eof_codepoint?(point); end + def extend_interp_code(current_literal); end def extend_interp_digit_var(); end @@ -37987,36 +38562,107 @@ class Parser::Lexer def extend_string_slice_end(lookahead); end - def numeric_literal_int(); end + def herebody_s(); end + + def herebody_s=(herebody_s); end + + def initialize(lexer, version); end + + def literal(); end + + def next_state_for_literal(literal); end + + def on_newline(p); end + + def pop_literal(); end + + def push_literal(*args); end + + def range(s=T.unsafe(nil), e=T.unsafe(nil)); end + + def read_character_constant(p); end def read_post_meta_or_ctrl_char(p); end + def reset(); end + def slash_c_char(); end def slash_m_char(); end + def source_buffer(); end + + def source_buffer=(source_buffer); end + + def source_pts(); end + + def source_pts=(source_pts); end + + def tok(s=T.unsafe(nil), e=T.unsafe(nil)); end + def unescape_char(p); end def unicode_points(p); end - def version(); end + def version?(*versions); end ESCAPES = ::T.let(nil, ::T.untyped) ESCAPE_WHITESPACE = ::T.let(nil, ::T.untyped) - KEYWORDS = ::T.let(nil, ::T.untyped) - KEYWORDS_BEGIN = ::T.let(nil, ::T.untyped) LEX_STATES = ::T.let(nil, ::T.untyped) - PUNCTUATION = ::T.let(nil, ::T.untyped) - PUNCTUATION_BEGIN = ::T.let(nil, ::T.untyped) REGEXP_META_CHARACTERS = ::T.let(nil, ::T.untyped) end -class Parser::Lexer::Dedenter - TAB_WIDTH = ::T.let(nil, ::T.untyped) -end +class Parser::LexerStrings + def self.lex_en_character(); end -class Parser::Lexer::Literal - DELIMITERS = ::T.let(nil, ::T.untyped) - TYPES = ::T.let(nil, ::T.untyped) + def self.lex_en_character=(lex_en_character); end + + def self.lex_en_interp_backslash_delimited(); end + + def self.lex_en_interp_backslash_delimited=(lex_en_interp_backslash_delimited); end + + def self.lex_en_interp_backslash_delimited_words(); end + + def self.lex_en_interp_backslash_delimited_words=(lex_en_interp_backslash_delimited_words); end + + def self.lex_en_interp_string(); end + + def self.lex_en_interp_string=(lex_en_interp_string); end + + def self.lex_en_interp_words(); end + + def self.lex_en_interp_words=(lex_en_interp_words); end + + def self.lex_en_plain_backslash_delimited(); end + + def self.lex_en_plain_backslash_delimited=(lex_en_plain_backslash_delimited); end + + def self.lex_en_plain_backslash_delimited_words(); end + + def self.lex_en_plain_backslash_delimited_words=(lex_en_plain_backslash_delimited_words); end + + def self.lex_en_plain_string(); end + + def self.lex_en_plain_string=(lex_en_plain_string); end + + def self.lex_en_plain_words(); end + + def self.lex_en_plain_words=(lex_en_plain_words); end + + def self.lex_en_regexp_modifiers(); end + + def self.lex_en_regexp_modifiers=(lex_en_regexp_modifiers); end + + def self.lex_en_unknown(); end + + def self.lex_en_unknown=(lex_en_unknown); end + + def self.lex_error(); end + + def self.lex_error=(lex_error); end + + def self.lex_start(); end + + def self.lex_start=(lex_start); end end class Parser::MaxNumparamStack @@ -39215,6 +39861,34 @@ module Process def self.fork(); end end +class ProgressBar::Base + def bar_component(); end + + def bar_component=(bar_component); end + + def percentage_component(); end + + def percentage_component=(percentage_component); end + + def projector(); end + + def projector=(projector); end + + def rate_component(); end + + def rate_component=(rate_component); end + + def time_component(); end + + def time_component=(time_component); end + + def title_component(); end + + def title_component=(title_component); end + RUNNING_AVERAGE_RATE_DEPRECATION_WARNING = ::T.let(nil, ::T.untyped) + SMOOTHING_DEPRECATION_WARNING = ::T.let(nil, ::T.untyped) +end + class ProgressBar::Components::Bar DEFAULT_PROGRESS_MARK = ::T.let(nil, ::T.untyped) DEFAULT_REMAINDER_MARK = ::T.let(nil, ::T.untyped) @@ -39222,6 +39896,11 @@ class ProgressBar::Components::Bar end class ProgressBar::Components::Time + def estimated_wall_clock(); end + + def projector(); end + + def projector=(projector); end ELAPSED_LABEL = ::T.let(nil, ::T.untyped) ESTIMATED_LABEL = ::T.let(nil, ::T.untyped) NO_TIME_ELAPSED_TEXT = ::T.let(nil, ::T.untyped) @@ -39231,6 +39910,7 @@ class ProgressBar::Components::Time OOB_TIME_FORMATS = ::T.let(nil, ::T.untyped) OOB_UNKNOWN_TIME_TEXT = ::T.let(nil, ::T.untyped) TIME_FORMAT = ::T.let(nil, ::T.untyped) + WALL_CLOCK_FORMAT = ::T.let(nil, ::T.untyped) end class ProgressBar::Components::Title @@ -39261,14 +39941,75 @@ end class ProgressBar::Progress DEFAULT_BEGINNING_POSITION = ::T.let(nil, ::T.untyped) - DEFAULT_SMOOTHING = ::T.let(nil, ::T.untyped) DEFAULT_TOTAL = ::T.let(nil, ::T.untyped) end +class ProgressBar::Projector + NAME_TO_PROJECTOR_MAP = ::T.let(nil, ::T.untyped) +end + +ProgressBar::Projector::DEFAULT_PROJECTOR = ProgressBar::Projectors::SmoothedAverage + +class ProgressBar::Projector + def self.from_type(name); end +end + +module ProgressBar::Projectors +end + +class ProgressBar::Projectors::SmoothedAverage + def decrement(); end + + def increment(); end + + def initialize(options=T.unsafe(nil)); end + + def none?(); end + + def progress(); end + + def progress=(new_progress); end + + def projection(); end + + def projection=(projection); end + + def reset(); end + + def samples(); end + + def samples=(samples); end + + def start(options=T.unsafe(nil)); end + + def strength(); end + + def strength=(strength); end + + def total=(_new_total); end + DEFAULT_BEGINNING_POSITION = ::T.let(nil, ::T.untyped) + DEFAULT_STRENGTH = ::T.let(nil, ::T.untyped) +end + +class ProgressBar::Projectors::SmoothedAverage + def self.calculate(current_projection, new_value, rate); end +end + +module ProgressBar::Projectors +end + +module ProgressBar::Refinements::Enumerator + ARITY_ERROR_MESSAGE = ::T.let(nil, ::T.untyped) +end + class ProgressBar::Time TIME_MOCKING_LIBRARY_METHODS = ::T.let(nil, ::T.untyped) end +class ProgressBar::Timer + def now(); end +end + class Pry BINDING_METHOD_IMPL = ::T.let(nil, ::T.untyped) Commands = ::T.let(nil, ::T.untyped) @@ -39472,6 +40213,7 @@ class Puma::Client ALLOWED_TRANSFER_ENCODING = ::T.let(nil, ::T.untyped) CHUNK_SIZE_INVALID = ::T.let(nil, ::T.untyped) CHUNK_VALID_ENDING = ::T.let(nil, ::T.untyped) + CHUNK_VALID_ENDING_SIZE = ::T.let(nil, ::T.untyped) CONTENT_LENGTH_VALUE_INVALID = ::T.let(nil, ::T.untyped) EmptyBody = ::T.let(nil, ::T.untyped) TE_ERR_MSG = ::T.let(nil, ::T.untyped) @@ -39679,6 +40421,65 @@ module Puma def self.osx?(); end end +module REXML::Light +end + +class REXML::Light::Node + def <<(element); end + + def =~(path); end + + def [](reference, ns=T.unsafe(nil)); end + + def []=(reference, ns, value=T.unsafe(nil)); end + + def children(); end + + def each(&blk); end + + def has_name?(name, namespace=T.unsafe(nil)); end + + def initialize(node=T.unsafe(nil)); end + + def local_name(); end + + def local_name=(name_str); end + + def name(); end + + def name=(name_str, ns=T.unsafe(nil)); end + + def namespace(prefix=T.unsafe(nil)); end + + def namespace=(namespace); end + + def node_type(); end + + def parent(); end + + def parent=(node); end + + def prefix(namespace=T.unsafe(nil)); end + + def root(); end + + def size(); end + + def text=(foo); end + NAMESPLIT = ::T.let(nil, ::T.untyped) + PARENTS = ::T.let(nil, ::T.untyped) +end + +class REXML::Light::Node +end + +module REXML::Light +end + +module REXML::Namespace + NAME_WITHOUT_NAMESPACE = ::T.let(nil, ::T.untyped) +end + class REXML::Parsers::BaseParser EXTERNAL_ID_PUBLIC = ::T.let(nil, ::T.untyped) EXTERNAL_ID_SYSTEM = ::T.let(nil, ::T.untyped) @@ -39688,6 +40489,9 @@ class REXML::Parsers::BaseParser end class REXML::Parsers::XPathParser + def preciate_to_string(parsed, &block); end + + def predicate_to_path(parsed, &block); end LOCAL_NAME_WILDCARD = ::T.let(nil, ::T.untyped) PREFIX_WILDCARD = ::T.let(nil, ::T.untyped) end @@ -39696,6 +40500,57 @@ class REXML::XPathParser DEBUG = ::T.let(nil, ::T.untyped) end +class REXMLUtilityNode + def add_node(node); end + + def attributes(); end + + def attributes=(attributes); end + + def children(); end + + def children=(children); end + + def initialize(name, normalized_attributes=T.unsafe(nil)); end + + def inner_html(); end + + def name(); end + + def name=(name); end + + def to_hash(); end + + def to_html(); end + + def type(); end + + def type=(type); end + + def typecast_value(value); end + + def undasherize_keys(params); end +end + +class REXMLUtilityNode + def self.available_typecasts(); end + + def self.available_typecasts=(obj); end + + def self.typecasts(); end + + def self.typecasts=(obj); end +end + +class REXMLUtiliyNodeString + def attributes(); end + + def attributes=(attributes); end +end + +class REXMLUtiliyNodeString +end + module Raabro VERSION = ::T.let(nil, ::T.untyped) end @@ -40037,6 +40892,12 @@ end class Rack::Multipart::Generator end +class Rack::Multipart::MultipartTotalPartLimitError +end + +class Rack::Multipart::MultipartTotalPartLimitError +end + class Rack::Multipart::Parser BOUNDARY_REGEX = ::T.let(nil, ::T.untyped) BUFSIZE = ::T.let(nil, ::T.untyped) @@ -40386,6 +41247,16 @@ Rack::Utils::KeySpaceConstrainedParams = Rack::QueryParser::Params Rack::Utils::ParameterTypeError = Rack::QueryParser::ParameterTypeError +module Rack::Utils + def self.multipart_file_limit(); end + + def self.multipart_file_limit=(multipart_file_limit); end + + def self.multipart_total_part_limit(); end + + def self.multipart_total_part_limit=(multipart_total_part_limit); end +end + class Rails::ApplicationController include ::GeneratedUrlHelpers end @@ -40458,6 +41329,44 @@ module Rails::Command::Spellchecker def self.suggest(word, from:); end end +module Rails::Dom::Testing + def default_html_version(); end + + def default_html_version=(val); end +end + +module Rails::Dom::Testing::Assertions::DomAssertions + def equal_child?(child, other_child, strict); end + + def extract_children(node, strict); end +end + +module Rails::Dom::Testing::Assertions::SelectorAssertions + def assert_dom(*args, &block); end + + def assert_dom_email(html_version: T.unsafe(nil), &block); end + + def assert_dom_encoded(element=T.unsafe(nil), html_version: T.unsafe(nil), &block); end +end + +class Rails::Dom::Testing::Railtie +end + +class Rails::Dom::Testing::Railtie +end + +module Rails::Dom::Testing + def self.default_html_version(); end + + def self.default_html_version=(val); end + + def self.html5_support?(); end + + def self.html_document(html_version: T.unsafe(nil)); end + + def self.html_document_fragment(html_version: T.unsafe(nil)); end +end + module Rails::Generators::Actions def add_source(source, options=T.unsafe(nil), &block); end @@ -40813,8 +41722,6 @@ module RbConfig def self.expand(val, config=T.unsafe(nil)); end def self.fire_update!(key, val, mkconf=T.unsafe(nil), conf=T.unsafe(nil)); end - - def self.ruby(); end end module Readline @@ -40903,13 +41810,19 @@ class Redis::Namespace def close(*args, &block); end + def expiretime(*args, &block); end + def getex(*args, &block); end + def pexpiretime(*args, &block); end + def redis=(redis); end def sadd?(*args, &block); end def smismember(*args, &block); end + + def srem?(*args, &block); end ADMINISTRATIVE_COMMANDS = ::T.let(nil, ::T.untyped) COMMANDS = ::T.let(nil, ::T.untyped) DEPRECATED_COMMANDS = ::T.let(nil, ::T.untyped) @@ -40923,6 +41836,10 @@ class Redis::Namespace def self.sadd_returns_boolean(); end def self.sadd_returns_boolean=(sadd_returns_boolean); end + + def self.srem_returns_boolean(); end + + def self.srem_returns_boolean=(srem_returns_boolean); end end class Regexp @@ -40941,8 +41858,22 @@ Regexp::Expression::Anchor::EOS = Regexp::Expression::Anchor::EndOfString Regexp::Expression::Anchor::EOSobEOL = Regexp::Expression::Anchor::EndOfStringOrBeforeEndOfLine +Regexp::Expression::Backref = Regexp::Expression::Backreference + class Regexp::Expression::Base include ::Regexp::Expression::Shared + def custom_to_s_handling(); end + + def custom_to_s_handling=(custom_to_s_handling); end + + def parent(); end + + def parent=(parent); end + + def pre_quantifier_decorations(); end + + def pre_quantifier_decorations=(pre_quantifier_decorations); end + def te(); end def te=(te); end @@ -40952,16 +41883,28 @@ class Regexp::Expression::Base extend ::Regexp::Expression::Shared::ClassMethods end -Regexp::Expression::CharacterSet::Intersection::OPERAND = Regexp::Expression::CharacterSet::IntersectedSequence +Regexp::Expression::Escape = Regexp::Expression::EscapeSequence Regexp::Expression::MatchLength = Regexp::MatchLength +Regexp::Expression::Nonposixclass = Regexp::Expression::PosixClass + +Regexp::Expression::Nonproperty = Regexp::Expression::UnicodeProperty + +Regexp::Expression::Posixclass = Regexp::Expression::PosixClass + +Regexp::Expression::Property = Regexp::Expression::UnicodeProperty + class Regexp::Expression::Quantifier include ::Regexp::Expression::Shared def conditional_level(); end def conditional_level=(conditional_level); end + def custom_to_s_handling(); end + + def custom_to_s_handling=(custom_to_s_handling); end + def level(); end def level=(level); end @@ -40972,6 +41915,14 @@ class Regexp::Expression::Quantifier def options=(options); end + def parent(); end + + def parent=(parent); end + + def pre_quantifier_decorations(); end + + def pre_quantifier_decorations=(pre_quantifier_decorations); end + def quantifier(); end def set_level(); end @@ -41000,6 +41951,14 @@ class Regexp::Expression::Quantifier extend ::Regexp::Expression::Shared::ClassMethods end +class Regexp::Expression::CharacterSet +end + +Regexp::Expression::Set::IntersectedSequence = Regexp::Expression::CharacterSet::IntersectedSequence + +class Regexp::Expression::CharacterSet +end + module Regexp::Expression::Shared def ==(other); end @@ -41007,14 +41966,24 @@ module Regexp::Expression::Shared def base_length(); end + def capturing?(); end + def coded_offset(); end + def comment?(); end + + def decorative?(); end + + def ends_at(include_quantifier=T.unsafe(nil)); end + def eql?(other); end def full_length(); end def human_name(); end + def inspect(); end + def is?(test_token, test_type=T.unsafe(nil)); end def nesting_level=(lvl); end @@ -41027,11 +41996,17 @@ module Regexp::Expression::Shared def parts(); end + def pre_quantifier_decoration(expression_format=T.unsafe(nil)); end + + def pretty_print(q); end + + def pretty_print_instance_variables(); end + def quantified?(); end def quantifier=(qtf); end - def quantifier_affix(expression_format); end + def quantifier_affix(expression_format=T.unsafe(nil)); end def referential?(); end @@ -41049,10 +42024,20 @@ module Regexp::Expression::Shared end module Regexp::Expression::Shared::ClassMethods + def capturing?(); end + + def comment?(); end + def construct(params=T.unsafe(nil)); end def construct_defaults(); end + def decorative?(); end + + def referential?(); end + + def terminal?(); end + def token_class(); end end @@ -41063,6 +42048,14 @@ module Regexp::Expression::Shared def self.included(mod); end end +class Regexp::Expression::Subexpression + def each_expression_with_index(&block); end + + def each_expression_without_index(&block); end + + def extract_quantifier_target(quantifier_description); end +end + class Regexp::Lexer def emit(token); end CLOSING_TOKENS = ::T.let(nil, ::T.untyped) @@ -41076,6 +42069,8 @@ class Regexp::Parser VERSION = ::T.let(nil, ::T.untyped) end +Regexp::Parser::UP = Regexp::Expression::UnicodeProperty + Regexp::Parser::UPTokens = Regexp::Syntax::Token::UnicodeProperty class Regexp::Scanner @@ -41085,12 +42080,18 @@ class Regexp::Scanner end class Regexp::Scanner::UnknownPosixClassError - def initialize(text); end + def initialize(text, _); end end class Regexp::Scanner::UnknownPosixClassError end +class Regexp::Scanner::ValidationError + def self.for(type, problem, reason=T.unsafe(nil)); end + + def self.types(); end +end + class Regexp::Scanner def self.parse_prop_map(name); end @@ -41151,6 +42152,14 @@ module Regexp::Syntax::Token Types = ::T.let(nil, ::T.untyped) end +module Regexp::Syntax::Token::Alternation + All = ::T.let(nil, ::T.untyped) + Type = ::T.let(nil, ::T.untyped) +end + +module Regexp::Syntax::Token::Alternation +end + module Regexp::Syntax::Token::Anchor All = ::T.let(nil, ::T.untyped) Basic = ::T.let(nil, ::T.untyped) @@ -41167,6 +42176,8 @@ module Regexp::Syntax::Token::Assertion Type = ::T.let(nil, ::T.untyped) end +Regexp::Syntax::Token::Backref = Regexp::Syntax::Token::Backreference + module Regexp::Syntax::Token::Backreference All = ::T.let(nil, ::T.untyped) Name = ::T.let(nil, ::T.untyped) @@ -41215,6 +42226,8 @@ module Regexp::Syntax::Token::Escape Unicode = ::T.let(nil, ::T.untyped) end +Regexp::Syntax::Token::EscapeSequence = Regexp::Syntax::Token::Escape + module Regexp::Syntax::Token::FreeSpace All = ::T.let(nil, ::T.untyped) Type = ::T.let(nil, ::T.untyped) @@ -41246,6 +42259,7 @@ end module Regexp::Syntax::Token::Meta All = ::T.let(nil, ::T.untyped) + Alternation = ::T.let(nil, ::T.untyped) Basic = ::T.let(nil, ::T.untyped) Extended = ::T.let(nil, ::T.untyped) Type = ::T.let(nil, ::T.untyped) @@ -41259,6 +42273,8 @@ module Regexp::Syntax::Token::PosixClass Type = ::T.let(nil, ::T.untyped) end +Regexp::Syntax::Token::Property = Regexp::Syntax::Token::UnicodeProperty + module Regexp::Syntax::Token::Quantifier All = ::T.let(nil, ::T.untyped) Greedy = ::T.let(nil, ::T.untyped) @@ -41272,6 +42288,8 @@ module Regexp::Syntax::Token::Quantifier V1_8_6 = ::T.let(nil, ::T.untyped) end +Regexp::Syntax::Token::Set = Regexp::Syntax::Token::CharacterSet + module Regexp::Syntax::Token::SubexpressionCall All = ::T.let(nil, ::T.untyped) Name = ::T.let(nil, ::T.untyped) @@ -41301,6 +42319,7 @@ module Regexp::Syntax::Token::UnicodeProperty Derived_V2_5_0 = ::T.let(nil, ::T.untyped) Emoji = ::T.let(nil, ::T.untyped) Emoji_V2_5_0 = ::T.let(nil, ::T.untyped) + Emoji_V2_6_0 = ::T.let(nil, ::T.untyped) NonType = ::T.let(nil, ::T.untyped) POSIX = ::T.let(nil, ::T.untyped) Script = ::T.let(nil, ::T.untyped) @@ -41374,11 +42393,18 @@ module Reline end class Reline::ANSI + ANSI_CURSOR_KEY_BINDINGS = ::T.let(nil, ::T.untyped) CAPNAME_KEY_BINDINGS = ::T.let(nil, ::T.untyped) END_BRACKETED_PASTE = ::T.let(nil, ::T.untyped) START_BRACKETED_PASTE = ::T.let(nil, ::T.untyped) end +class Reline::ANSI + def self.set_default_key_bindings_ansi_cursor(config); end + + def self.with_raw_input(); end +end + class Reline::Config KEYSEQ_PATTERN = ::T.let(nil, ::T.untyped) VARIABLE_NAMES = ::T.let(nil, ::T.untyped) @@ -41386,6 +42412,7 @@ class Reline::Config end class Reline::Core + def io_gate(); end ATTR_READER_NAMES = ::T.let(nil, ::T.untyped) end @@ -41411,11 +42438,35 @@ class Reline::GeneralIO def self.hide_cursor(); end def self.show_cursor(); end + + def self.with_raw_input(); end end Reline::IOGate = Reline::ANSI -Reline::Key = Struct::Key +class Reline::Key + def ==(other); end + + def char(); end + + def char=(_); end + + def combined_char(); end + + def combined_char=(_); end + + def match?(other); end + + def with_meta(); end + + def with_meta=(_); end +end + +class Reline::Key + def self.[](*arg); end + + def self.members(); end +end class Reline::KeyActor::Base MAPPING = ::T.let(nil, ::T.untyped) @@ -41433,6 +42484,12 @@ class Reline::KeyActor::ViInsert MAPPING = ::T.let(nil, ::T.untyped) end +class Reline::KeyStroke + CSI_INTERMEDIATE_BYTES_RANGE = ::T.let(nil, ::T.untyped) + CSI_PARAMETER_BYTES_RANGE = ::T.let(nil, ::T.untyped) + ESC_BYTE = ::T.let(nil, ::T.untyped) +end + module Reline::KillRing::State CONTINUED = ::T.let(nil, ::T.untyped) FRESH = ::T.let(nil, ::T.untyped) @@ -41441,12 +42498,36 @@ module Reline::KillRing::State end class Reline::LineEditor + def io_gate(); end DIALOG_DEFAULT_HEIGHT = ::T.let(nil, ::T.untyped) + MINIMUM_SCROLLBAR_HEIGHT = ::T.let(nil, ::T.untyped) PROMPT_LIST_CACHE_TIMEOUT = ::T.let(nil, ::T.untyped) VI_MOTIONS = ::T.let(nil, ::T.untyped) end -Reline::LineEditor::CompletionJourneyData = Struct::CompletionJourneyData +class Reline::LineEditor::CompletionJourneyData + def list(); end + + def list=(_); end + + def pointer(); end + + def pointer=(_); end + + def postposing(); end + + def postposing=(_); end + + def preposing(); end + + def preposing=(_); end +end + +class Reline::LineEditor::CompletionJourneyData + def self.[](*arg); end + + def self.members(); end +end module Reline::LineEditor::CompletionState COMPLETION = ::T.let(nil, ::T.untyped) @@ -41457,7 +42538,27 @@ module Reline::LineEditor::CompletionState PERFECT_MATCH = ::T.let(nil, ::T.untyped) end -Reline::LineEditor::MenuInfo = Struct::MenuInfo +class Reline::LineEditor::DialogProcScope + def preferred_dialog_height(); end + + def screen_height(); end +end + +class Reline::LineEditor::MenuInfo + def list(); end + + def list=(_); end + + def target(); end + + def target=(_); end +end + +class Reline::LineEditor::MenuInfo + def self.[](*arg); end + + def self.members(); end +end module Reline::Terminfo extend ::Fiddle @@ -41466,18 +42567,13 @@ end class Reline::Unicode CSI_REGEXP = ::T.let(nil, ::T.untyped) - CSI_REGEXP_INDEX = ::T.let(nil, ::T.untyped) EscapedChars = ::T.let(nil, ::T.untyped) EscapedPairs = ::T.let(nil, ::T.untyped) - GRAPHEME_CLUSTER_INDEX = ::T.let(nil, ::T.untyped) HalfwidthDakutenHandakuten = ::T.let(nil, ::T.untyped) MBCharWidthRE = ::T.let(nil, ::T.untyped) NON_PRINTING_END = ::T.let(nil, ::T.untyped) - NON_PRINTING_END_INDEX = ::T.let(nil, ::T.untyped) NON_PRINTING_START = ::T.let(nil, ::T.untyped) - NON_PRINTING_START_INDEX = ::T.let(nil, ::T.untyped) OSC_REGEXP = ::T.let(nil, ::T.untyped) - OSC_REGEXP_INDEX = ::T.let(nil, ::T.untyped) WIDTH_SCANNER = ::T.let(nil, ::T.untyped) end @@ -41490,6 +42586,10 @@ class Reline::Unicode::EastAsianWidth TYPE_W = ::T.let(nil, ::T.untyped) end +module Reline + def self.update_iogate(); end +end + module RequestStore VERSION = ::T.let(nil, ::T.untyped) end @@ -42849,6 +43949,8 @@ class Rufus::Scheduler::EveryJob end class Rufus::Scheduler::Job + def discard_past?(); end + def entries(); end def has_key?(key); end @@ -42861,6 +43963,8 @@ class Rufus::Scheduler::Job def name=(name); end + def past?(); end + def resume_discard_past=(v); end def source_location(); end @@ -42875,7 +43979,6 @@ class Rufus::Scheduler::JobArray end class Rufus::Scheduler::RepeatJob - def discard_past?(); end FIRSTS = ::T.let(nil, ::T.untyped) end @@ -43598,6 +44701,7 @@ class Seahorse::Client::Plugins::RequestCallback end class Seahorse::Client::Plugins::RequestCallback::OptionHandler + def add_response_events(on_chunk_received, context); end end class Seahorse::Client::Plugins::RequestCallback::OptionHandler @@ -43692,6 +44796,8 @@ class Seahorse::Client::RequestContext end class Seahorse::Client::Response + def checksum_validated(); end + def context(); end def data(); end @@ -45670,6 +46776,15 @@ end Sequel::Timezones = Sequel::SequelMethods +class SessionsController + include ::StateEncryptionAlgo::InstanceMethods +end + +class SessionsController + extend ::T::Private::Methods::MethodHooks + extend ::T::Private::Methods::SingletonMethodHooks +end + class Set def ==(other); end @@ -46761,6 +47876,71 @@ module SorbetRails extend ::T::Private::Methods::SingletonMethodHooks end +module StateEncryptionAlgo::InstanceMethods + extend ::T::Private::Methods::MethodHooks + extend ::T::Private::Methods::SingletonMethodHooks +end + +class StateEncryptionAlgo::StripeOAuthState + def csrf(); end + + def csrf=(value); end + + def csrf?(); end + + def oauth_version(); end + + def oauth_version=(value); end + + def oauth_version?(); end + + def salesforce_account_id(); end + + def salesforce_account_id=(value); end + + def salesforce_account_id?(); end + + def salesforce_instance_subdomain(); end + + def salesforce_instance_subdomain=(value); end + + def salesforce_instance_subdomain?(); end + + def salesforce_instance_type(); end + + def salesforce_instance_type=(value); end + + def salesforce_instance_type?(); end + + def salesforce_namespace(); end + + def salesforce_namespace=(value); end + + def salesforce_namespace?(); end + + def stripe_account_id(); end + + def stripe_account_id=(value); end + + def stripe_account_id?(); end + + def user_id(); end + + def user_id=(value); end + + def user_id?(); end +end + +class StateEncryptionAlgo::StripeOAuthState + extend ::T::Private::Methods::MethodHooks + extend ::T::Private::Methods::SingletonMethodHooks +end + +module StateEncryptionAlgo + extend ::T::Private::Methods::MethodHooks + extend ::T::Private::Methods::SingletonMethodHooks +end + class String include ::JSON::Ext::Generator::GeneratorMethods::String def parse_csv(**options); end @@ -46773,6 +47953,14 @@ class String end class StringIO + def bytes(); end + + def chars(); end + + def codepoints(); end + + def lines(*arg); end + def set_encoding_by_bom(); end VERSION = ::T.let(nil, ::T.untyped) end @@ -47578,15 +48766,12 @@ class Stripe::WebhookEndpoint OBJECT_NAME = ::T.let(nil, ::T.untyped) end -class StripeForce::BaseJob - def initialize(*args, &blk); end -end - class StripeForce::BaseJob extend ::T::Private::Abstract::Hooks extend ::T::InterfaceWrapper::Helpers extend ::T::Private::Methods::MethodHooks extend ::T::Private::Methods::SingletonMethodHooks + def self.new(*args, &blk); end end class StripeForce::Mapper @@ -47609,6 +48794,8 @@ class StripeForce::PollerBase extend ::T::Private::Methods::MethodHooks extend ::T::Private::Methods::SingletonMethodHooks def self.log(); end + + def self.new(*args, &blk); end end module StripeForce::ProrationAutoBill @@ -47675,7 +48862,7 @@ class StripeForce::Translate end class StripeForce::User - include ::KMSEncryption::InstanceMethods + include ::KMSEncryption::DevInstanceMethods include ::Sequel::Plugins::Timestamps::InstanceMethods include ::Sequel::Plugins::AfterInitialize::InstanceMethods include ::Sequel::Plugins::DefaultsSetter::InstanceMethods @@ -47701,6 +48888,19 @@ class StripeForce::User def self.log(); end end +module StripeForce::Utilities::DemoUtil + include ::ActiveSupport::ForkTracker::CoreExtPrivate + include ::ActiveSupport::ForkTracker::CoreExt +end + +module StripeForce::Utilities::DemoUtil + extend ::T::Private::Abstract::Hooks + extend ::T::InterfaceWrapper::Helpers + extend ::T::Private::Methods::MethodHooks + extend ::T::Private::Methods::SingletonMethodHooks + def self.log(); end +end + module StripeForce::Utilities::SalesforceUtil include ::ActiveSupport::ForkTracker::CoreExtPrivate include ::ActiveSupport::ForkTracker::CoreExt @@ -47946,13 +49146,21 @@ class Thor::Command FILE_REGEXP = ::T.let(nil, ::T.untyped) end -Thor::Correctable = DidYouMean::Correctable +module Thor::Correctable + def corrections(); end + + def to_s(); end +end + +module Thor::Correctable +end Thor::DynamicTask = Thor::DynamicCommand Thor::HiddenTask = Thor::HiddenCommand class Thor::Option + def aliases_for_usage(); end VALID_TYPES = ::T.let(nil, ::T.untyped) end @@ -47985,13 +49193,17 @@ end Thor::Task = Thor::Command class Thor::UndefinedCommandError - include ::DidYouMean::Correctable + include ::Thor::Correctable end Thor::UndefinedTaskError = Thor::UndefinedCommandError class Thor::UnknownArgumentError - include ::DidYouMean::Correctable + include ::Thor::Correctable +end + +class Thread + def self.exclusive(&block); end end module Tilt @@ -47999,6 +49211,19 @@ module Tilt VERSION = ::T.let(nil, ::T.untyped) end +class Tilt::BaseMapping + def [](file); end + + def new(file, line=T.unsafe(nil), options=T.unsafe(nil), &block); end + + def template_for(file); end + + def templates_for(file); end +end + +class Tilt::BaseMapping +end + class Tilt::BuilderTemplate def precompiled_postamble(locals); end @@ -48015,13 +49240,16 @@ class Tilt::CSVTemplate end class Tilt::CSVTemplate - def self.engine(); end end class Tilt::ERBTemplate SUPPORTS_KVARGS = ::T.let(nil, ::T.untyped) end +class Tilt::ERBTemplate + def self._default_output_variable(); end +end + class Tilt::ErubiTemplate def precompiled_template(locals); end end @@ -48039,7 +49267,11 @@ class Tilt::EtanniTemplate end class Tilt::Mapping - AUTOLOAD_IS_BROKEN = ::T.let(nil, ::T.untyped) + def finalized(); end + + def register_pipeline(ext, options=T.unsafe(nil)); end + + def unregister(*extensions); end LOCK = ::T.let(nil, ::T.untyped) end @@ -48057,6 +49289,12 @@ end class Tilt::NokogiriTemplate end +class Tilt::Pipeline +end + +class Tilt::Pipeline +end + class Tilt::PlainTemplate end @@ -48064,19 +49302,19 @@ class Tilt::PlainTemplate end class Tilt::RDocTemplate - def allows_script?(); end - - def markup(); end end class Tilt::RDocTemplate end -class Tilt::SigilTemplate +class Tilt::StaticTemplate def allows_script?(); end + + def render(scope=T.unsafe(nil), locals=T.unsafe(nil)); end end -class Tilt::SigilTemplate +class Tilt::StaticTemplate + def self.subclass(mime_type: T.unsafe(nil), &block); end end class Tilt::StringTemplate @@ -48091,20 +49329,33 @@ end Tilt::TOPOBJECT = Tilt::CompiledTemplates class Tilt::Template + def compiled_path(); end + + def compiled_path=(path); end + + def skip_compiled_encoding_detection?(); end CLASS_METHOD = ::T.let(nil, ::T.untyped) + USE_BIND_CALL = ::T.let(nil, ::T.untyped) +end + +module Tilt + def self.finalize!(); end + + def self.register_pipeline(ext, options=T.unsafe(nil)); end end class Time + def succ(); end COMMON_YEAR_DAYS_IN_MONTH = ::T.let(nil, ::T.untyped) DATE_FORMATS = ::T.let(nil, ::T.untyped) end -module Timeout +class Timecop VERSION = ::T.let(nil, ::T.untyped) end module Timeout - def self.ensure_timeout_thread_created(); end + VERSION = ::T.let(nil, ::T.untyped) end class TracePoint @@ -48149,6 +49400,19 @@ module URI include ::URI::RFC2396_REGEXP end +module URI::Escape + def decode(*arg); end + + def encode(*arg); end + + def escape(*arg); end + + def unescape(*arg); end +end + +module URI::Escape +end + class URI::FTP def self.new2(user, password, host, port, path, typecode=T.unsafe(nil), arg_check=T.unsafe(nil)); end end @@ -48252,6 +49516,924 @@ end module UnicodeNormalize end +module VCR + include ::VCR::VariableArgsBlockCaller + include ::VCR::Errors + def cassette_persisters(); end + + def cassette_serializers(); end + + def cassettes(context=T.unsafe(nil)); end + + def config(); end + + def configuration(); end + + def configure(); end + + def cucumber_tags(&block); end + + def current_cassette(); end + + def eject_cassette(options=T.unsafe(nil)); end + + def fibers_available?(); end + + def http_interactions(); end + + def insert_cassette(name, options=T.unsafe(nil)); end + + def library_hooks(); end + + def link_context(from_thread, to_key); end + + def real_http_connections_allowed?(); end + + def record_http_interaction(interaction); end + + def request_ignorer(); end + + def request_matchers(); end + + def turn_off!(options=T.unsafe(nil)); end + + def turn_on!(); end + + def turned_off(options=T.unsafe(nil)); end + + def turned_on(options=T.unsafe(nil)); end + + def turned_on?(); end + + def unlink_context(key); end + + def use_cassette(name, options=T.unsafe(nil), &block); end + + def use_cassettes(cassettes, &block); end + + def version(); end + CassetteMutex = ::T.let(nil, ::T.untyped) + MainThread = ::T.let(nil, ::T.untyped) +end + +class VCR::Cassette + include ::VCR::Logger::Mixin + def clean_outdated_http_interactions(); end + + def drop_unused_requests(); end + + def eject(options=T.unsafe(nil)); end + + def erb(); end + + def file(); end + + def http_interactions(); end + + def initialize(name, options=T.unsafe(nil)); end + + def linked?(); end + + def match_requests_on(); end + + def name(); end + + def new_recorded_interactions(); end + + def originally_recorded_at(); end + + def re_record_interval(); end + + def record_http_interaction(interaction); end + + def record_mode(); end + + def record_on_error(); end + + def recording?(); end + + def run_failed!(); end + + def run_failed?(); end + + def serializable_hash(); end + + def should_write_recorded_interactions_to_disk?(); end + + def tags(); end + VALID_RECORD_MODES = ::T.let(nil, ::T.untyped) +end + +class VCR::Cassette::ERBRenderer + def initialize(raw_template, erb, cassette_name=T.unsafe(nil)); end + + def render(); end +end + +class VCR::Cassette::ERBRenderer +end + +module VCR::Cassette::EncodingErrorHandling + def handle_encoding_errors(); end +end + +module VCR::Cassette::EncodingErrorHandling +end + +class VCR::Cassette::HTTPInteractionList + include ::VCR::Logger::Mixin + def allow_playback_repeats(); end + + def assert_no_unused_interactions!(); end + + def has_interaction_matching?(request); end + + def has_used_interaction_matching?(request); end + + def initialize(interactions, request_matchers, allow_playback_repeats=T.unsafe(nil), parent_list=T.unsafe(nil), log_prefix=T.unsafe(nil)); end + + def interactions(); end + + def parent_list(); end + + def remaining_unused_interaction_count(); end + + def request_matchers(); end + + def response_for(request); end +end + +module VCR::Cassette::HTTPInteractionList::NullList + def has_interaction_matching?(*a); end + + def has_used_interaction_matching?(*a); end + + def remaining_unused_interaction_count(*a); end + + def response_for(*a); end +end + +module VCR::Cassette::HTTPInteractionList::NullList + extend ::VCR::Cassette::HTTPInteractionList::NullList +end + +class VCR::Cassette::HTTPInteractionList +end + +class VCR::Cassette::Persisters + def [](name); end + + def []=(name, value); end +end + +module VCR::Cassette::Persisters::FileSystem + def [](file_name); end + + def []=(file_name, content); end + + def absolute_path_to_file(file_name); end + + def storage_location(); end + + def storage_location=(dir); end +end + +module VCR::Cassette::Persisters::FileSystem + extend ::VCR::Cassette::Persisters::FileSystem +end + +class VCR::Cassette::Persisters +end + +class VCR::Cassette::Serializers + def [](name); end + + def []=(name, value); end +end + +module VCR::Cassette::Serializers::Compressed + def deserialize(string); end + + def file_extension(); end + + def serialize(hash); end +end + +module VCR::Cassette::Serializers::Compressed + extend ::VCR::Cassette::Serializers::Compressed +end + +module VCR::Cassette::Serializers::JSON + def deserialize(string); end + + def file_extension(); end + + def serialize(hash); end + ENCODING_ERRORS = ::T.let(nil, ::T.untyped) + SYNTAX_ERRORS = ::T.let(nil, ::T.untyped) +end + +module VCR::Cassette::Serializers::JSON + extend ::VCR::Cassette::Serializers::JSON + extend ::VCR::Cassette::EncodingErrorHandling + extend ::VCR::Cassette::SyntaxErrorHandling +end + +module VCR::Cassette::Serializers::Psych + def deserialize(string); end + + def file_extension(); end + + def serialize(hash); end + ENCODING_ERRORS = ::T.let(nil, ::T.untyped) + SYNTAX_ERRORS = ::T.let(nil, ::T.untyped) +end + +module VCR::Cassette::Serializers::Psych + extend ::VCR::Cassette::Serializers::Psych + extend ::VCR::Cassette::EncodingErrorHandling + extend ::VCR::Cassette::SyntaxErrorHandling +end + +module VCR::Cassette::Serializers::Syck + def deserialize(string); end + + def file_extension(); end + + def serialize(hash); end + ENCODING_ERRORS = ::T.let(nil, ::T.untyped) + SYNTAX_ERRORS = ::T.let(nil, ::T.untyped) +end + +module VCR::Cassette::Serializers::Syck + extend ::VCR::Cassette::Serializers::Syck + extend ::VCR::Cassette::EncodingErrorHandling + extend ::VCR::Cassette::SyntaxErrorHandling +end + +module VCR::Cassette::Serializers::YAML + def deserialize(string); end + + def file_extension(); end + + def serialize(hash); end + ENCODING_ERRORS = ::T.let(nil, ::T.untyped) + SYNTAX_ERRORS = ::T.let(nil, ::T.untyped) +end + +module VCR::Cassette::Serializers::YAML + extend ::VCR::Cassette::Serializers::YAML + extend ::VCR::Cassette::EncodingErrorHandling + extend ::VCR::Cassette::SyntaxErrorHandling +end + +class VCR::Cassette::Serializers +end + +module VCR::Cassette::SyntaxErrorHandling + def handle_syntax_errors(); end +end + +module VCR::Cassette::SyntaxErrorHandling +end + +class VCR::Cassette + def self.const_missing(const); end +end + +class VCR::Configuration + include ::VCR::Hooks + include ::VCR::VariableArgsBlockCaller + include ::VCR::Configuration::DefinedHooks + include ::VCR::Logger::Mixin + def after_http_request(*filters); end + + def allow_http_connections_when_no_cassette=(allow_http_connections_when_no_cassette); end + + def allow_http_connections_when_no_cassette?(); end + + def around_http_request(*filters, &block); end + + def before_playback(tag=T.unsafe(nil), &block); end + + def before_record(tag=T.unsafe(nil), &block); end + + def cassette_library_dir(); end + + def cassette_library_dir=(dir); end + + def cassette_persisters(); end + + def cassette_serializers(); end + + def configure_rspec_metadata!(); end + + def debug_logger(); end + + def debug_logger=(value); end + + def default_cassette_options(); end + + def default_cassette_options=(overrides); end + + def define_cassette_placeholder(placeholder, tag=T.unsafe(nil), &block); end + + def filter_sensitive_data(placeholder, tag=T.unsafe(nil), &block); end + + def hook_into(*hooks); end + + def ignore_host(*hosts); end + + def ignore_hosts(*hosts); end + + def ignore_localhost=(value); end + + def ignore_request(&block); end + + def logger(); end + + def preserve_exact_body_bytes_for?(http_message); end + + def query_parser(); end + + def query_parser=(query_parser); end + + def register_request_matcher(name, &block); end + + def stub_with(*adapters); end + + def unignore_host(*hosts); end + + def unignore_hosts(*hosts); end + + def uri_parser(); end + + def uri_parser=(uri_parser); end +end + +module VCR::Configuration::DefinedHooks + def after_http_request(*filters, &hook); end + + def after_library_hooks_loaded(*filters, &hook); end + + def before_http_request(*filters, &hook); end + + def before_playback(*filters, &hook); end + + def before_record(*filters, &hook); end + + def preserve_exact_body_bytes(*filters, &hook); end +end + +module VCR::Configuration::DefinedHooks +end + +class VCR::Configuration + extend ::VCR::Hooks::ClassMethods +end + +class VCR::CucumberTags + def initialize(main_object); end + + def tag(*tag_names); end + + def tags(*tag_names); end +end + +class VCR::CucumberTags::ScenarioNameBuilder + def cassette_name(); end + + def examples_table(*arg); end + + def examples_table_row(row); end + + def feature(feature); end + + def initialize(test_case); end + + def scenario(*arg); end + + def scenario_outline(feature); end +end + +class VCR::CucumberTags::ScenarioNameBuilder +end + +class VCR::CucumberTags + def self.add_tag(tag); end + + def self.tags(); end +end + +module VCR::Deprecations +end + +module VCR::Deprecations::Middleware +end + +module VCR::Deprecations::Middleware::Faraday + def initialize(*args); end +end + +module VCR::Deprecations::Middleware::Faraday +end + +module VCR::Deprecations::Middleware +end + +module VCR::Deprecations +end + +module VCR::Errors +end + +class VCR::Errors::AroundHTTPRequestHookError +end + +class VCR::Errors::AroundHTTPRequestHookError +end + +class VCR::Errors::CassetteInUseError +end + +class VCR::Errors::CassetteInUseError +end + +class VCR::Errors::EjectLinkedCassetteError +end + +class VCR::Errors::EjectLinkedCassetteError +end + +class VCR::Errors::Error +end + +class VCR::Errors::Error +end + +class VCR::Errors::InvalidCassetteFormatError +end + +class VCR::Errors::InvalidCassetteFormatError +end + +class VCR::Errors::LibraryVersionTooLowError +end + +class VCR::Errors::LibraryVersionTooLowError +end + +class VCR::Errors::MissingERBVariableError +end + +class VCR::Errors::MissingERBVariableError +end + +class VCR::Errors::NotSupportedError +end + +class VCR::Errors::NotSupportedError +end + +class VCR::Errors::TurnedOffError +end + +class VCR::Errors::TurnedOffError +end + +class VCR::Errors::UnhandledHTTPRequestError + def initialize(request); end + + def request(); end + ALL_SUGGESTIONS = ::T.let(nil, ::T.untyped) +end + +class VCR::Errors::UnhandledHTTPRequestError +end + +class VCR::Errors::UnknownContentEncodingError +end + +class VCR::Errors::UnknownContentEncodingError +end + +class VCR::Errors::UnregisteredMatcherError +end + +class VCR::Errors::UnregisteredMatcherError +end + +class VCR::Errors::UnusedHTTPInteractionError +end + +class VCR::Errors::UnusedHTTPInteractionError +end + +module VCR::Errors +end + +class VCR::HTTPInteraction + def hook_aware(); end + + def initialize(*args); end + + def to_hash(); end +end + +class VCR::HTTPInteraction::HookAware + def filter!(text, replacement_text); end + + def ignore!(); end + + def ignored?(); end + + def initialize(http_interaction); end + RUBYGEMS_ACTIVATION_MONITOR = ::T.let(nil, ::T.untyped) +end + +class VCR::HTTPInteraction::HookAware +end + +class VCR::HTTPInteraction + def self.from_hash(hash); end +end + +module VCR::Hooks + include ::VCR::VariableArgsBlockCaller + def clear_hooks(); end + + def has_hooks_for?(hook_type); end + + def hooks(); end + + def invoke_hook(hook_type, *args); end +end + +module VCR::Hooks::ClassMethods + def define_hook(hook_type, prepend=T.unsafe(nil)); end +end + +module VCR::Hooks::ClassMethods +end + +class VCR::Hooks::FilteredHook + include ::VCR::VariableArgsBlockCaller + def conditionally_invoke(*args); end + + def filters(); end + + def filters=(_); end + + def hook(); end + + def hook=(_); end +end + +class VCR::Hooks::FilteredHook + def self.[](*arg); end + + def self.members(); end +end + +module VCR::Hooks + def self.included(klass); end +end + +module VCR::InternetConnection + def available?(); end + EXAMPLE_HOST = ::T.let(nil, ::T.untyped) +end + +module VCR::InternetConnection + extend ::VCR::InternetConnection +end + +class VCR::LibraryHooks + def disabled?(hook); end + + def exclusive_hook(); end + + def exclusive_hook=(exclusive_hook); end + + def exclusively_enabled(hook); end +end + +class VCR::LibraryHooks +end + +class VCR::LinkedCassette + def eject(*args); end + + def linked?(); end + RUBYGEMS_ACTIVATION_MONITOR = ::T.let(nil, ::T.untyped) +end + +class VCR::LinkedCassette::CassetteList + include ::Enumerable + def each(&blk); end + + def initialize(cassettes, linked_cassettes); end + + def last(); end + + def size(); end + + def wrap(cassette); end +end + +class VCR::LinkedCassette::CassetteList +end + +class VCR::LinkedCassette + def self.list(cassettes, linked_cassettes); end +end + +class VCR::Logger + def initialize(stream); end + + def log(message, log_prefix, indentation_level=T.unsafe(nil)); end + + def request_summary(request, request_matchers); end + + def response_summary(response); end +end + +module VCR::Logger::Mixin + def log(message, indentation_level=T.unsafe(nil)); end + + def request_summary(*args); end + + def response_summary(*args); end +end + +module VCR::Logger::Mixin +end + +module VCR::Logger::Null +end + +module VCR::Logger::Null + def self.log(*arg); end + + def self.request_summary(*arg); end + + def self.response_summary(*arg); end +end + +class VCR::Logger +end + +module VCR::Middleware +end + +class VCR::Middleware::Faraday + include ::VCR::Deprecations::Middleware::Faraday + def call(env); end + + def close(); end + + def initialize(app); end +end + +class VCR::Middleware::Faraday::RequestHandler + def app(); end + + def env(); end + + def initialize(app, env); end +end + +class VCR::Middleware::Faraday::RequestHandler +end + +class VCR::Middleware::Faraday +end + +class VCR::Middleware::Rack + include ::VCR::VariableArgsBlockCaller + def call(env); end + + def initialize(app, &block); end +end + +class VCR::Middleware::Rack +end + +module VCR::Middleware +end + +module VCR::Normalizers +end + +module VCR::Normalizers::Body + def initialize(*args); end +end + +module VCR::Normalizers::Body::ClassMethods + def body_from(hash_or_string); end + + def force_encode_string(string, encoding); end + + def try_encode_string(string, encoding); end +end + +module VCR::Normalizers::Body::ClassMethods +end + +module VCR::Normalizers::Body + def self.included(klass); end +end + +module VCR::Normalizers::Header + def initialize(*args); end +end + +module VCR::Normalizers::Header +end + +module VCR::Normalizers +end + +module VCR::RSpec +end + +module VCR::RSpec::Metadata + def configure!(); end + + def vcr_cassette_name_for(metadata); end +end + +module VCR::RSpec::Metadata + extend ::VCR::RSpec::Metadata +end + +module VCR::RSpec +end + +class VCR::Request + include ::VCR::Normalizers::Header + include ::VCR::Normalizers::Body + def method(*args); end + + def parsed_uri(); end + + def to_hash(); end +end + +class VCR::Request::FiberAware + def proceed(); end + + def to_proc(); end + RUBYGEMS_ACTIVATION_MONITOR = ::T.let(nil, ::T.untyped) +end + +class VCR::Request::FiberAware +end + +class VCR::Request::Typed + def externally_stubbed?(); end + + def ignored?(); end + + def initialize(request, type); end + + def real?(); end + + def recordable?(); end + + def stubbed?(); end + + def stubbed_by_vcr?(); end + + def type(); end + + def unhandled?(); end + RUBYGEMS_ACTIVATION_MONITOR = ::T.let(nil, ::T.untyped) +end + +class VCR::Request::Typed +end + +class VCR::Request + extend ::VCR::Normalizers::Body::ClassMethods + def self.from_hash(hash); end +end + +class VCR::RequestHandler + include ::VCR::Logger::Mixin + def handle(); end +end + +class VCR::RequestHandler +end + +class VCR::RequestIgnorer + include ::VCR::Hooks + include ::VCR::VariableArgsBlockCaller + include ::VCR::RequestIgnorer::DefinedHooks + def ignore?(request); end + + def ignore_hosts(*hosts); end + + def ignore_localhost=(value); end + + def localhost_ignored?(); end + + def unignore_hosts(*hosts); end + LOCALHOST_ALIASES = ::T.let(nil, ::T.untyped) +end + +module VCR::RequestIgnorer::DefinedHooks + def ignore_request(*filters, &hook); end +end + +module VCR::RequestIgnorer::DefinedHooks +end + +class VCR::RequestIgnorer + extend ::VCR::Hooks::ClassMethods +end + +class VCR::RequestMatcherRegistry + def [](matcher); end + + def register(name, &block); end + + def uri_without_param(*ignores); end + + def uri_without_params(*ignores); end + DEFAULT_MATCHERS = ::T.let(nil, ::T.untyped) +end + +class VCR::RequestMatcherRegistry::Matcher + def matches?(request_1, request_2); end +end + +class VCR::RequestMatcherRegistry::Matcher +end + +class VCR::RequestMatcherRegistry::URIWithoutParamsMatcher + def call(request_1, request_2); end + + def partial_uri_from(request); end + + def to_proc(); end +end + +class VCR::RequestMatcherRegistry::URIWithoutParamsMatcher +end + +class VCR::RequestMatcherRegistry +end + +class VCR::Response + include ::VCR::Normalizers::Header + include ::VCR::Normalizers::Body + def compressed?(); end + + def content_encoding(); end + + def decompress(); end + + def recompress(); end + + def to_hash(); end + + def update_content_length_header(); end + + def vcr_decompressed?(); end + HAVE_ZLIB = ::T.let(nil, ::T.untyped) +end + +class VCR::Response + extend ::VCR::Normalizers::Body::ClassMethods + def self.decompress(body, type); end + + def self.from_hash(hash); end +end + +class VCR::ResponseStatus + def to_hash(); end +end + +class VCR::ResponseStatus + def self.from_hash(hash); end +end + +module VCR::VariableArgsBlockCaller + def call_block(block, *args); end +end + +module VCR::VariableArgsBlockCaller +end + +module VCR + extend ::VCR + extend ::VCR::VariableArgsBlockCaller + extend ::VCR::Errors + def self.const_missing(const); end +end + module Warning extend ::Warning end @@ -48261,6 +50443,27 @@ class WeakRef RUBYGEMS_ACTIVATION_MONITOR = ::T.let(nil, ::T.untyped) end +module WebMock + VERSION = ::T.let(nil, ::T.untyped) +end + +class WebMock::BodyPattern + BODY_FORMATS = ::T.let(nil, ::T.untyped) +end + +WebMock::HttpLibAdapters::NetHttpAdapter::OriginalNetBufferedIO = Net::BufferedIO + +WebMock::HttpLibAdapters::NetHttpAdapter::OriginalNetHTTP = Net::HTTP + +class WebMock::Util::URI + ADDRESSABLE_URIS = ::T.let(nil, ::T.untyped) + NORMALIZED_URIS = ::T.let(nil, ::T.untyped) +end + +module WebMock::Util::URI::CharacterClasses + USERINFO = ::T.let(nil, ::T.untyped) +end + module WebSocket DEFAULT_VERSION = ::T.let(nil, ::T.untyped) ROOT = ::T.let(nil, ::T.untyped) @@ -48268,6 +50471,7 @@ end class WebSocket::Driver MAX_LENGTH = ::T.let(nil, ::T.untyped) + PORTS = ::T.let(nil, ::T.untyped) STATES = ::T.let(nil, ::T.untyped) end @@ -48439,7 +50643,6 @@ class WebSocket::Driver::Proxy def start(); end def status(); end - PORTS = ::T.let(nil, ::T.untyped) end class WebSocket::Driver::Proxy @@ -48489,6 +50692,10 @@ end class WebSocket::Driver::StreamReader end +class WebSocket::Driver + def self.host_header(uri); end +end + class WebSocket::Error end @@ -49092,15 +51299,17 @@ module Zeitwerk::ExplicitNamespace extend ::Zeitwerk::RealModName def self.__register(cpath, loader); end + def self.__registered?(cpath); end + def self.__unregister_loader(loader); end end class Zeitwerk::GemLoader - def initialize(root_file, warn_on_extra_files:); end + def initialize(root_file, namespace:, warn_on_extra_files:); end end class Zeitwerk::GemLoader - def self._new(root_file, warn_on_extra_files:); end + def self.__new(root_file, namespace:, warn_on_extra_files:); end end module Zeitwerk::Internal @@ -49112,11 +51321,19 @@ end class Zeitwerk::Loader include ::Zeitwerk::Loader::EagerLoad - def namespace_dirs(); end + def __autoloaded_dirs(); end + + def __autoloads(); end + + def __namespace_dirs(); end + + def __shadowed_file?(file); end - def shadowed_file?(file); end + def __shadowed_files(); end - def shadowed_files(); end + def __to_unload(); end + + def cpath_expected_at(path); end end module Zeitwerk::Loader::Config @@ -49144,7 +51361,11 @@ module Zeitwerk::Loader::EagerLoad end class Zeitwerk::Loader + extend ::Zeitwerk::Internal + extend ::Zeitwerk::RealModName def self.eager_load_namespace(mod); end + + def self.for_gem_extension(namespace); end end module Zeitwerk::Registry diff --git a/test/controllers/test_session_controller.rb b/test/controllers/test_session_controller.rb index 06f5454090..1fc3681912 100644 --- a/test/controllers/test_session_controller.rb +++ b/test/controllers/test_session_controller.rb @@ -4,6 +4,8 @@ require_relative './helper' class SessionsControllerTest < ApplicationIntegrationTest + REFERER_INSTANCE_URL = "https://momentum-customization-3160-dev-ed.my.salesforce.com/" + before do OmniAuth.config.test_mode = true end @@ -20,16 +22,11 @@ def mock_omniauth_salesforce(sf_instance_account_id) "uid" => ENV.fetch('STRIPE_ACCOUNT_ID'), }) - OmniAuth.config.mock_auth[:stripetestmodev2] = OmniAuth::AuthHash.new({ - "uid" => ENV.fetch('STRIPE_ACCOUNT_ID'), - }) - - OmniAuth.config.mock_auth[:stripelivemodev2] = OmniAuth::AuthHash.new({ + OmniAuth.config.mock_auth[:stripelivemode] = OmniAuth::AuthHash.new({ "uid" => ENV.fetch('STRIPE_ACCOUNT_ID'), }) OmniAuth.config.mock_auth[:salesforce] = get_salesforce_auth_hash(sf_instance_account_id) - OmniAuth.config.mock_auth[:salesforcev2] = get_salesforce_auth_hash(sf_instance_account_id) Rails.application.env_config['omniauth.auth'] = OmniAuth.config.mock_auth[:salesforce] end @@ -56,19 +53,23 @@ def refute_post_redirect(path) describe 'initial login redirect' do it 'submits a POST request and persists namespace if a GET method is used to initiate oauth' do - get omniauth_path(:salesforce, salesforceNamespace: "c") + get omniauth_path(:salesforce, salesforceNamespace: "c"), headers: {'HTTP_REFERER' => REFERER_INSTANCE_URL} assert_response :success assert_post_redirect(omniauth_path(:salesforce)) - assert_equal("c", session[:salesforce_namespace]) + + state = StateEncryptionAlgo::StripeOAuthState.from_encrypted_state(session[:state]) + assert_equal("c", T.must(state).salesforce_namespace) end it 'submits a POST request with a default namespace if one is not defined' do - get omniauth_path(:salesforce) + get omniauth_path(:salesforce), headers: {'HTTP_REFERER' => REFERER_INSTANCE_URL} assert_response :success assert_post_redirect(omniauth_path(:salesforce)) - assert_equal("stripeConnector", session[:salesforce_namespace]) + + state = StateEncryptionAlgo::StripeOAuthState.from_encrypted_state(session[:state]) + assert_equal("stripeConnector", T.must(state).salesforce_namespace) end it 'fails if an invalid namespace is provided' do @@ -82,10 +83,12 @@ def refute_post_redirect(path) it 'creates a new user when it is authorized with salesforce' do user = create_post_install_user + state = StateEncryptionAlgo::StripeOAuthState.create + StateEncryptionAlgo.apply_defaults(state, {oauth_version: 'v1', user_id: user.id}) mock_omniauth_salesforce(sf_instance_account_id) - get auth_salesforce_callback_path + get auth_salesforce_callback_path, params: {state: state} assert_response :success assert_post_redirect(omniauth_path(:stripetestmode)) @@ -105,10 +108,12 @@ def refute_post_redirect(path) it 'creates a new user when it is authorized with the salesforce v2 endpoint' do user = create_post_install_user + state = StateEncryptionAlgo::StripeOAuthState.create + StateEncryptionAlgo.apply_defaults(state, {oauth_version: 'v2', user_id: user.id}) mock_omniauth_salesforce(sf_instance_account_id) - get auth_v2_salesforce_callback_path + get auth_salesforce_callback_path, params: {state: state} assert_response :success refute_post_redirect(omniauth_path(:stripetestmode)) @@ -128,12 +133,14 @@ def refute_post_redirect(path) it 'caches user as authenticated with salesforce post auth' do user = create_post_install_user + state = StateEncryptionAlgo::StripeOAuthState.create + StateEncryptionAlgo.apply_defaults(state, {oauth_version: 'v1', user_id: user.id}) mock_omniauth_salesforce(sf_instance_account_id) assert_nil(user.get_cached_connection_status(StripeForce::Constants::Platforms::SALESFORCE)) - get auth_salesforce_callback_path + get auth_salesforce_callback_path, params: {state: state} assert(user.get_cached_connection_status(StripeForce::Constants::Platforms::SALESFORCE)) @@ -155,19 +162,20 @@ def refute_post_redirect(path) it 'caches user as authenticated with salesforce v2 post auth' do user = create_post_install_user + state = StateEncryptionAlgo::StripeOAuthState.create + StateEncryptionAlgo.apply_defaults(state, {oauth_version: 'v2', user_id: user.id}) mock_omniauth_salesforce(sf_instance_account_id) assert_nil(user.get_cached_connection_status(StripeForce::Constants::Platforms::SALESFORCE)) - get auth_v2_salesforce_callback_path - - assert(user.get_cached_connection_status(StripeForce::Constants::Platforms::SALESFORCE)) + get auth_salesforce_callback_path, params: {state: state} assert_response :success refute_post_redirect(omniauth_path(:stripetestmode)) user = T.must(StripeForce::User[user.id]) + assert(user.get_cached_connection_status(StripeForce::Constants::Platforms::SALESFORCE)) assert_equal(1, StripeForce::User.count) @@ -182,65 +190,73 @@ def refute_post_redirect(path) it 'caches user as authenticated with stripe post auth' do user = create_post_install_user + state = StateEncryptionAlgo::StripeOAuthState.create + StateEncryptionAlgo.apply_defaults(state, {oauth_version: 'v1', user_id: user.id}) mock_omniauth_salesforce(sf_instance_account_id) assert_nil(user.get_cached_connection_status(StripeForce::Constants::Platforms::STRIPE)) - get auth_salesforce_callback_path + get auth_salesforce_callback_path, params: {state: state} assert_response :success - get auth_stripetestmode_callback_path + get auth_stripetestmode_callback_path, params: {state: state} assert_response :success - + user = T.must(StripeForce::User[user.id]) assert(user.get_cached_connection_status(StripeForce::Constants::Platforms::STRIPE)) - end it 'caches user as authenticated with stripe v2 testmode post auth' do user = create_post_install_user + state = StateEncryptionAlgo::StripeOAuthState.create + StateEncryptionAlgo.apply_defaults(state, {oauth_version: 'v2', user_id: user.id}) mock_omniauth_salesforce(sf_instance_account_id) assert_nil(user.get_cached_connection_status(StripeForce::Constants::Platforms::STRIPE)) - get auth_v2_salesforce_callback_path + get auth_salesforce_callback_path, params: {state: state} assert_response :success - get auth_v2_stripetestmode_callback_path + get auth_stripetestmode_callback_path, params: {state: state} assert_response :success + user = T.must(StripeForce::User[user.id]) assert(user.get_cached_stripe_v2_connection_status(false)) end it 'caches user as authenticated with stripe v2 livemode post auth' do user = create_post_install_user - + state = StateEncryptionAlgo::StripeOAuthState.create + StateEncryptionAlgo.apply_defaults(state, {oauth_version: 'v2', user_id: user.id}) mock_omniauth_salesforce(sf_instance_account_id) assert_nil(user.get_cached_connection_status(StripeForce::Constants::Platforms::STRIPE)) - get auth_v2_salesforce_callback_path + get auth_salesforce_callback_path, params: {state: state} assert_response :success - get auth_v2_stripelivemode_callback_path + get auth_stripelivemode_callback_path, params: {state: state} assert_response :success + user = T.must(StripeForce::User[user.id]) assert(user.get_cached_stripe_v2_connection_status(true)) end it 'updates the stripe account id after the stripe account is authenticated' do # in order to set the session, which cannot be set via the test suite - get omniauth_path(:salesforce, salesforceNamespace: "c") + get omniauth_path(:salesforce, salesforceNamespace: "c"), headers: {'HTTP_REFERER' => REFERER_INSTANCE_URL} user = create_post_install_user + state = StateEncryptionAlgo::StripeOAuthState.create + StateEncryptionAlgo.apply_defaults(state, {oauth_version: 'v1', user_id: user.id, salesforce_namespace: "c"}) mock_omniauth_salesforce(sf_instance_account_id) - get auth_salesforce_callback_path + get auth_salesforce_callback_path, params: {state: state} assert_response :success - get auth_stripetestmode_callback_path + get auth_stripetestmode_callback_path, params: {state: state} assert_response :success assert_equal(1, StripeForce::User.count) @@ -253,45 +269,49 @@ def refute_post_redirect(path) end it 'updates stripe account id with stripe v2 testmode post auth' do - get omniauth_path(:salesforcev2, salesforceNamespace: "c") + get omniauth_v2_path(:salesforce, salesforceNamespace: "c"), headers: {'HTTP_REFERER' => REFERER_INSTANCE_URL} user = create_post_install_user + state = StateEncryptionAlgo::StripeOAuthState.create + StateEncryptionAlgo.apply_defaults(state, {oauth_version: 'v2', user_id: user.id, salesforce_namespace: "c"}) mock_omniauth_salesforce(sf_instance_account_id) assert_nil(user.get_cached_connection_status(StripeForce::Constants::Platforms::STRIPE)) - get auth_v2_salesforce_callback_path + get auth_salesforce_callback_path, params: {state: state} assert_response :success - get auth_v2_stripetestmode_callback_path + get auth_stripetestmode_callback_path, params: {state: state} assert_response :success assert_equal(1, StripeForce::User.count) user = T.must(StripeForce::User[user.id]) - assert_equal(OmniAuth.config.mock_auth[:stripetestmodev2]["uid"], user.stripe_account_id) + assert_equal(OmniAuth.config.mock_auth[:stripetestmode]["uid"], user.stripe_account_id) end it 'updates stripe account id with stripe v2 livemode post auth' do - get omniauth_path(:salesforcev2, salesforceNamespace: "c") + get omniauth_v2_path(:salesforce, salesforceNamespace: "c"), headers: {'HTTP_REFERER' => REFERER_INSTANCE_URL} user = create_post_install_user + state = StateEncryptionAlgo::StripeOAuthState.create + StateEncryptionAlgo.apply_defaults(state, {oauth_version: 'v2', user_id: user.id, salesforce_namespace: "c"}) mock_omniauth_salesforce(sf_instance_account_id) assert_nil(user.get_cached_connection_status(StripeForce::Constants::Platforms::STRIPE)) - get auth_v2_salesforce_callback_path + get auth_salesforce_callback_path, params: {state: state} assert_response :success - get auth_v2_stripetestmode_callback_path + get auth_stripelivemode_callback_path, params: {state: state} assert_response :success assert_equal(1, StripeForce::User.count) user = T.must(StripeForce::User[user.id]) - assert_equal(OmniAuth.config.mock_auth[:stripelivemodev2]["uid"], user.stripe_account_id) + assert_equal(OmniAuth.config.mock_auth[:stripelivemode]["uid"], user.stripe_account_id) end # it 'updates an existing user with stripe oauth information if the account is already authorized with salesforce' do