webhookdb 1.2.2 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/admin-dist/assets/index-6aebf805.js +264 -0
- data/admin-dist/favicon.ico +0 -0
- data/admin-dist/index.html +130 -0
- data/admin-dist/manifest.json +15 -0
- data/data/messages/replicators/url-recorder.liquid +20 -0
- data/data/messages/templates/errors/signalwire_send_sms.email.liquid +31 -0
- data/data/messages/web/install-customer-login.liquid +6 -5
- data/data/messages/web/install-error.liquid +1 -1
- data/data/messages/web/install-forbidden.liquid +25 -0
- data/data/messages/web/install-org-chooser.liquid +40 -0
- data/data/messages/web/install-success.liquid +2 -1
- data/data/messages/web/install.liquid +2 -1
- data/data/messages/web/partials/head.liquid +2 -0
- data/data/messages/web/styles.liquid +24 -0
- data/db/migrations/041_views.rb +20 -0
- data/db/migrations/042_sint_lock.rb +10 -0
- data/db/migrations/043_text_search.rb +28 -0
- data/db/migrations/044_oauth_session_token_cache.rb +21 -0
- data/integration/auth_spec.rb +2 -2
- data/lib/sequel/plugins/text_searchable.rb +165 -0
- data/lib/sequel/text_searchable.rb +42 -0
- data/lib/webhookdb/admin_api/auth.rb +24 -3
- data/lib/webhookdb/admin_api/data_provider.rb +196 -0
- data/lib/webhookdb/admin_api/entities.rb +143 -28
- data/lib/webhookdb/admin_api.rb +0 -2
- data/lib/webhookdb/api/auth.rb +5 -6
- data/lib/webhookdb/api/db.rb +31 -6
- data/lib/webhookdb/api/entities.rb +7 -1
- data/lib/webhookdb/api/helpers.rb +6 -25
- data/lib/webhookdb/api/install.rb +204 -79
- data/lib/webhookdb/api/organizations.rb +14 -12
- data/lib/webhookdb/api/saved_queries.rb +9 -3
- data/lib/webhookdb/api/saved_views.rb +99 -0
- data/lib/webhookdb/api/service_integrations.rb +15 -9
- data/lib/webhookdb/api/subscriptions.rb +3 -1
- data/lib/webhookdb/api/sync_targets.rb +9 -7
- data/lib/webhookdb/api/system.rb +1 -0
- data/lib/webhookdb/api/webhook_subscriptions.rb +3 -1
- data/lib/webhookdb/apps.rb +30 -7
- data/lib/webhookdb/async/audit_logger.rb +2 -0
- data/lib/webhookdb/async.rb +5 -0
- data/lib/webhookdb/backfill_job/service_integration_lock.rb +22 -0
- data/lib/webhookdb/backfill_job.rb +9 -0
- data/lib/webhookdb/customer.rb +5 -0
- data/lib/webhookdb/database_document.rb +1 -1
- data/lib/webhookdb/db_adapter/default_sql.rb +1 -1
- data/lib/webhookdb/db_adapter.rb +20 -4
- data/lib/webhookdb/fixtures/message_bodies.rb +34 -0
- data/lib/webhookdb/fixtures/organizations.rb +5 -0
- data/lib/webhookdb/fixtures/roles.rb +14 -0
- data/lib/webhookdb/fixtures/saved_views.rb +25 -0
- data/lib/webhookdb/fixtures/webhook_subscription_deliveries.rb +18 -0
- data/lib/webhookdb/http.rb +8 -2
- data/lib/webhookdb/icalendar.rb +3 -0
- data/lib/webhookdb/idempotency.rb +69 -22
- data/lib/webhookdb/increase.rb +69 -21
- data/lib/webhookdb/intercom.rb +10 -3
- data/lib/webhookdb/jobs/backfill.rb +3 -1
- data/lib/webhookdb/jobs/emailer.rb +0 -1
- data/lib/webhookdb/jobs/icalendar_delete_stale_cancelled_events.rb +19 -0
- data/lib/webhookdb/jobs/icalendar_enqueue_syncs.rb +1 -1
- data/lib/webhookdb/jobs/icalendar_sync.rb +1 -1
- data/lib/webhookdb/jobs/increase_event_handler.rb +20 -0
- data/lib/webhookdb/jobs/scheduled_backfills.rb +2 -1
- data/lib/webhookdb/jobs/sync_target_run_sync.rb +3 -1
- data/lib/webhookdb/message/body.rb +6 -4
- data/lib/webhookdb/message/delivery.rb +2 -0
- data/lib/webhookdb/messages/error_icalendar_fetch.rb +1 -2
- data/lib/webhookdb/messages/error_signalwire_send_sms.rb +48 -0
- data/lib/webhookdb/oauth/fake_provider.rb +44 -0
- data/lib/webhookdb/oauth/front_provider.rb +1 -2
- data/lib/webhookdb/oauth/increase_provider.rb +80 -0
- data/lib/webhookdb/oauth/intercom_provider.rb +3 -11
- data/lib/webhookdb/oauth/session.rb +20 -0
- data/lib/webhookdb/oauth.rb +7 -21
- data/lib/webhookdb/organization/alerting.rb +2 -0
- data/lib/webhookdb/organization/database_migration.rb +3 -0
- data/lib/webhookdb/organization.rb +37 -6
- data/lib/webhookdb/organization_membership.rb +14 -7
- data/lib/webhookdb/postgres.rb +2 -0
- data/lib/webhookdb/replicator/base.rb +1 -0
- data/lib/webhookdb/replicator/docgen.rb +9 -1
- data/lib/webhookdb/replicator/fake.rb +2 -3
- data/lib/webhookdb/replicator/front_signalwire_message_channel_app_v1.rb +49 -14
- data/lib/webhookdb/replicator/icalendar_calendar_v1.rb +97 -17
- data/lib/webhookdb/replicator/icalendar_event_v1.rb +104 -2
- data/lib/webhookdb/replicator/increase_account_number_v1.rb +6 -43
- data/lib/webhookdb/replicator/increase_account_transfer_v1.rb +7 -24
- data/lib/webhookdb/replicator/increase_account_v1.rb +7 -31
- data/lib/webhookdb/replicator/increase_ach_transfer_v1.rb +5 -43
- data/lib/webhookdb/replicator/increase_app_v1.rb +78 -0
- data/lib/webhookdb/replicator/increase_check_transfer_v1.rb +23 -29
- data/lib/webhookdb/replicator/increase_event_v1.rb +41 -0
- data/lib/webhookdb/replicator/increase_limit_v1.rb +9 -34
- data/lib/webhookdb/replicator/increase_transaction_v1.rb +5 -30
- data/lib/webhookdb/replicator/increase_v1_mixin.rb +58 -78
- data/lib/webhookdb/replicator/increase_wire_transfer_v1.rb +5 -24
- data/lib/webhookdb/replicator/intercom_contact_v1.rb +51 -4
- data/lib/webhookdb/replicator/intercom_conversation_v1.rb +42 -6
- data/lib/webhookdb/replicator/intercom_marketplace_root_v1.rb +2 -13
- data/lib/webhookdb/replicator/intercom_v1_mixin.rb +20 -16
- data/lib/webhookdb/replicator/oauth_refresh_access_token_mixin.rb +1 -1
- data/lib/webhookdb/replicator/sponsy_v1_mixin.rb +1 -1
- data/lib/webhookdb/replicator/transistor_episode_v1.rb +17 -0
- data/lib/webhookdb/replicator/url_recorder_v1.rb +137 -0
- data/lib/webhookdb/replicator/webhook_request.rb +4 -0
- data/lib/webhookdb/replicator.rb +8 -0
- data/lib/webhookdb/role.rb +5 -2
- data/lib/webhookdb/saved_query.rb +23 -0
- data/lib/webhookdb/saved_view.rb +73 -0
- data/lib/webhookdb/sentry.rb +2 -0
- data/lib/webhookdb/service/entities.rb +0 -4
- data/lib/webhookdb/service/helpers.rb +5 -0
- data/lib/webhookdb/service/middleware.rb +9 -0
- data/lib/webhookdb/service/types.rb +10 -8
- data/lib/webhookdb/service/validators.rb +1 -2
- data/lib/webhookdb/service/view_api.rb +1 -1
- data/lib/webhookdb/service_integration.rb +17 -15
- data/lib/webhookdb/spec_helpers/shared_examples_for_replicators.rb +8 -8
- data/lib/webhookdb/spec_helpers/whdb.rb +3 -2
- data/lib/webhookdb/subscription.rb +2 -0
- data/lib/webhookdb/sync_target.rb +10 -2
- data/lib/webhookdb/tasks/message.rb +3 -1
- data/lib/webhookdb/version.rb +1 -1
- data/lib/webhookdb/webhook_subscription/delivery.rb +2 -0
- data/lib/webhookdb/webhook_subscription.rb +2 -0
- metadata +57 -9
- data/lib/webhookdb/admin_api/customers.rb +0 -63
- data/lib/webhookdb/admin_api/message_deliveries.rb +0 -61
- data/lib/webhookdb/admin_api/roles.rb +0 -15
|
@@ -8,6 +8,7 @@ require "webhookdb/webhook_subscription"
|
|
|
8
8
|
# See WebhookSubscription for more details.
|
|
9
9
|
class Webhookdb::WebhookSubscription::Delivery < Webhookdb::Postgres::Model(:webhook_subscription_deliveries)
|
|
10
10
|
plugin :timestamps
|
|
11
|
+
plugin :text_searchable, terms: [:webhook_subscription]
|
|
11
12
|
|
|
12
13
|
many_to_one :webhook_subscription, class: "Webhookdb::WebhookSubscription"
|
|
13
14
|
|
|
@@ -72,6 +73,7 @@ end
|
|
|
72
73
|
# attempt_http_response_statuses | smallint[] | NOT NULL DEFAULT ARRAY[]::smallint[]
|
|
73
74
|
# payload | jsonb | NOT NULL
|
|
74
75
|
# webhook_subscription_id | integer | NOT NULL
|
|
76
|
+
# text_search | tsvector |
|
|
75
77
|
# Indexes:
|
|
76
78
|
# webhook_subscription_deliveries_pkey | PRIMARY KEY btree (id)
|
|
77
79
|
# webhook_subscription_deliveries_webhook_subscription_id_index | btree (webhook_subscription_id)
|
|
@@ -23,6 +23,7 @@ require "webhookdb/jobs/webhook_subscription_delivery_attempt"
|
|
|
23
23
|
#
|
|
24
24
|
class Webhookdb::WebhookSubscription < Webhookdb::Postgres::Model(:webhook_subscriptions)
|
|
25
25
|
plugin :timestamps
|
|
26
|
+
plugin :text_searchable, terms: [:organization, :service_integration, :deliver_to_url, :created_by]
|
|
26
27
|
plugin :column_encryption do |enc|
|
|
27
28
|
enc.column :webhook_secret
|
|
28
29
|
end
|
|
@@ -212,6 +213,7 @@ end
|
|
|
212
213
|
# updated_at | timestamp with time zone |
|
|
213
214
|
# created_by_id | integer |
|
|
214
215
|
# deactivated_at | timestamp with time zone |
|
|
216
|
+
# text_search | tsvector |
|
|
215
217
|
# Indexes:
|
|
216
218
|
# webhook_subscriptions_pkey | PRIMARY KEY btree (id)
|
|
217
219
|
# webhook_subscriptions_opaque_id_key | UNIQUE btree (opaque_id)
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: webhookdb
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.3.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- WebhookDB
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2024-
|
|
11
|
+
date: 2024-04-26 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activesupport
|
|
@@ -472,6 +472,20 @@ dependencies:
|
|
|
472
472
|
- - "~>"
|
|
473
473
|
- !ruby/object:Gem::Version
|
|
474
474
|
version: '3.2'
|
|
475
|
+
- !ruby/object:Gem::Dependency
|
|
476
|
+
name: rack-spa
|
|
477
|
+
requirement: !ruby/object:Gem::Requirement
|
|
478
|
+
requirements:
|
|
479
|
+
- - "~>"
|
|
480
|
+
- !ruby/object:Gem::Version
|
|
481
|
+
version: '0.11'
|
|
482
|
+
type: :runtime
|
|
483
|
+
prerelease: false
|
|
484
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
485
|
+
requirements:
|
|
486
|
+
- - "~>"
|
|
487
|
+
- !ruby/object:Gem::Version
|
|
488
|
+
version: '0.11'
|
|
475
489
|
- !ruby/object:Gem::Dependency
|
|
476
490
|
name: rack-ssl-enforcer
|
|
477
491
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -548,28 +562,28 @@ dependencies:
|
|
|
548
562
|
requirements:
|
|
549
563
|
- - "~>"
|
|
550
564
|
- !ruby/object:Gem::Version
|
|
551
|
-
version: '5.
|
|
565
|
+
version: '5.17'
|
|
552
566
|
type: :runtime
|
|
553
567
|
prerelease: false
|
|
554
568
|
version_requirements: !ruby/object:Gem::Requirement
|
|
555
569
|
requirements:
|
|
556
570
|
- - "~>"
|
|
557
571
|
- !ruby/object:Gem::Version
|
|
558
|
-
version: '5.
|
|
572
|
+
version: '5.17'
|
|
559
573
|
- !ruby/object:Gem::Dependency
|
|
560
574
|
name: sentry-sidekiq
|
|
561
575
|
requirement: !ruby/object:Gem::Requirement
|
|
562
576
|
requirements:
|
|
563
577
|
- - "~>"
|
|
564
578
|
- !ruby/object:Gem::Version
|
|
565
|
-
version: '5.
|
|
579
|
+
version: '5.17'
|
|
566
580
|
type: :runtime
|
|
567
581
|
prerelease: false
|
|
568
582
|
version_requirements: !ruby/object:Gem::Requirement
|
|
569
583
|
requirements:
|
|
570
584
|
- - "~>"
|
|
571
585
|
- !ruby/object:Gem::Version
|
|
572
|
-
version: '5.
|
|
586
|
+
version: '5.17'
|
|
573
587
|
- !ruby/object:Gem::Dependency
|
|
574
588
|
name: sequel
|
|
575
589
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -689,6 +703,9 @@ dependencies:
|
|
|
689
703
|
- - "~>"
|
|
690
704
|
- !ruby/object:Gem::Version
|
|
691
705
|
version: '1.6'
|
|
706
|
+
- - ">="
|
|
707
|
+
- !ruby/object:Gem::Version
|
|
708
|
+
version: 1.6.2
|
|
692
709
|
type: :runtime
|
|
693
710
|
prerelease: false
|
|
694
711
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -696,6 +713,9 @@ dependencies:
|
|
|
696
713
|
- - "~>"
|
|
697
714
|
- !ruby/object:Gem::Version
|
|
698
715
|
version: '1.6'
|
|
716
|
+
- - ">="
|
|
717
|
+
- !ruby/object:Gem::Version
|
|
718
|
+
version: 1.6.2
|
|
699
719
|
- !ruby/object:Gem::Dependency
|
|
700
720
|
name: sidekiq-cron
|
|
701
721
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -782,6 +802,10 @@ executables: []
|
|
|
782
802
|
extensions: []
|
|
783
803
|
extra_rdoc_files: []
|
|
784
804
|
files:
|
|
805
|
+
- admin-dist/assets/index-6aebf805.js
|
|
806
|
+
- admin-dist/favicon.ico
|
|
807
|
+
- admin-dist/index.html
|
|
808
|
+
- admin-dist/manifest.json
|
|
785
809
|
- data/messages/layouts/blank.email.liquid
|
|
786
810
|
- data/messages/layouts/minimal.email.liquid
|
|
787
811
|
- data/messages/layouts/standard.email.liquid
|
|
@@ -791,8 +815,10 @@ files:
|
|
|
791
815
|
- data/messages/partials/greeting.liquid
|
|
792
816
|
- data/messages/partials/logo_header.liquid
|
|
793
817
|
- data/messages/partials/signoff.liquid
|
|
818
|
+
- data/messages/replicators/url-recorder.liquid
|
|
794
819
|
- data/messages/styles/v1.liquid
|
|
795
820
|
- data/messages/templates/errors/icalendar_fetch.email.liquid
|
|
821
|
+
- data/messages/templates/errors/signalwire_send_sms.email.liquid
|
|
796
822
|
- data/messages/templates/invite.email.liquid
|
|
797
823
|
- data/messages/templates/new_customer.email.liquid
|
|
798
824
|
- data/messages/templates/org_database_migration_finished.email.liquid
|
|
@@ -808,10 +834,13 @@ files:
|
|
|
808
834
|
- data/messages/templates/verification.sms.liquid
|
|
809
835
|
- data/messages/web/install-customer-login.liquid
|
|
810
836
|
- data/messages/web/install-error.liquid
|
|
837
|
+
- data/messages/web/install-forbidden.liquid
|
|
838
|
+
- data/messages/web/install-org-chooser.liquid
|
|
811
839
|
- data/messages/web/install-success.liquid
|
|
812
840
|
- data/messages/web/install.liquid
|
|
813
841
|
- data/messages/web/partials/footer.liquid
|
|
814
842
|
- data/messages/web/partials/form_error.liquid
|
|
843
|
+
- data/messages/web/partials/head.liquid
|
|
815
844
|
- data/messages/web/partials/header.liquid
|
|
816
845
|
- data/messages/web/styles.liquid
|
|
817
846
|
- data/windows_tz.txt
|
|
@@ -855,6 +884,10 @@ files:
|
|
|
855
884
|
- db/migrations/038_webhookdb_api_key.rb
|
|
856
885
|
- db/migrations/039_saved_query.rb
|
|
857
886
|
- db/migrations/040_saved_query_fix_unique.rb
|
|
887
|
+
- db/migrations/041_views.rb
|
|
888
|
+
- db/migrations/042_sint_lock.rb
|
|
889
|
+
- db/migrations/043_text_search.rb
|
|
890
|
+
- db/migrations/044_oauth_session_token_cache.rb
|
|
858
891
|
- integration/async_spec.rb
|
|
859
892
|
- integration/auth_spec.rb
|
|
860
893
|
- integration/database_spec.rb
|
|
@@ -864,15 +897,15 @@ files:
|
|
|
864
897
|
- lib/amigo/durable_job.rb
|
|
865
898
|
- lib/pry/clipboard.rb
|
|
866
899
|
- lib/sequel/advisory_lock.rb
|
|
900
|
+
- lib/sequel/plugins/text_searchable.rb
|
|
901
|
+
- lib/sequel/text_searchable.rb
|
|
867
902
|
- lib/webhookdb.rb
|
|
868
903
|
- lib/webhookdb/admin.rb
|
|
869
904
|
- lib/webhookdb/admin_api.rb
|
|
870
905
|
- lib/webhookdb/admin_api/auth.rb
|
|
871
|
-
- lib/webhookdb/admin_api/
|
|
906
|
+
- lib/webhookdb/admin_api/data_provider.rb
|
|
872
907
|
- lib/webhookdb/admin_api/database_documents.rb
|
|
873
908
|
- lib/webhookdb/admin_api/entities.rb
|
|
874
|
-
- lib/webhookdb/admin_api/message_deliveries.rb
|
|
875
|
-
- lib/webhookdb/admin_api/roles.rb
|
|
876
909
|
- lib/webhookdb/aggregate_result.rb
|
|
877
910
|
- lib/webhookdb/api.rb
|
|
878
911
|
- lib/webhookdb/api/auth.rb
|
|
@@ -886,6 +919,7 @@ files:
|
|
|
886
919
|
- lib/webhookdb/api/organizations.rb
|
|
887
920
|
- lib/webhookdb/api/replay.rb
|
|
888
921
|
- lib/webhookdb/api/saved_queries.rb
|
|
922
|
+
- lib/webhookdb/api/saved_views.rb
|
|
889
923
|
- lib/webhookdb/api/service_integrations.rb
|
|
890
924
|
- lib/webhookdb/api/services.rb
|
|
891
925
|
- lib/webhookdb/api/stripe.rb
|
|
@@ -902,6 +936,7 @@ files:
|
|
|
902
936
|
- lib/webhookdb/async/scheduled_job.rb
|
|
903
937
|
- lib/webhookdb/aws.rb
|
|
904
938
|
- lib/webhookdb/backfill_job.rb
|
|
939
|
+
- lib/webhookdb/backfill_job/service_integration_lock.rb
|
|
905
940
|
- lib/webhookdb/backfiller.rb
|
|
906
941
|
- lib/webhookdb/cloudflare.rb
|
|
907
942
|
- lib/webhookdb/connection_cache.rb
|
|
@@ -928,16 +963,20 @@ files:
|
|
|
928
963
|
- lib/webhookdb/fixtures/database_documents.rb
|
|
929
964
|
- lib/webhookdb/fixtures/faker.rb
|
|
930
965
|
- lib/webhookdb/fixtures/logged_webhooks.rb
|
|
966
|
+
- lib/webhookdb/fixtures/message_bodies.rb
|
|
931
967
|
- lib/webhookdb/fixtures/message_deliveries.rb
|
|
932
968
|
- lib/webhookdb/fixtures/oauth_sessions.rb
|
|
933
969
|
- lib/webhookdb/fixtures/organization_database_migrations.rb
|
|
934
970
|
- lib/webhookdb/fixtures/organization_memberships.rb
|
|
935
971
|
- lib/webhookdb/fixtures/organizations.rb
|
|
936
972
|
- lib/webhookdb/fixtures/reset_codes.rb
|
|
973
|
+
- lib/webhookdb/fixtures/roles.rb
|
|
937
974
|
- lib/webhookdb/fixtures/saved_queries.rb
|
|
975
|
+
- lib/webhookdb/fixtures/saved_views.rb
|
|
938
976
|
- lib/webhookdb/fixtures/service_integrations.rb
|
|
939
977
|
- lib/webhookdb/fixtures/subscriptions.rb
|
|
940
978
|
- lib/webhookdb/fixtures/sync_targets.rb
|
|
979
|
+
- lib/webhookdb/fixtures/webhook_subscription_deliveries.rb
|
|
941
980
|
- lib/webhookdb/fixtures/webhook_subscriptions.rb
|
|
942
981
|
- lib/webhookdb/formatting.rb
|
|
943
982
|
- lib/webhookdb/front.rb
|
|
@@ -961,8 +1000,10 @@ files:
|
|
|
961
1000
|
- lib/webhookdb/jobs/developer_alert_handle.rb
|
|
962
1001
|
- lib/webhookdb/jobs/durable_job_recheck_poller.rb
|
|
963
1002
|
- lib/webhookdb/jobs/emailer.rb
|
|
1003
|
+
- lib/webhookdb/jobs/icalendar_delete_stale_cancelled_events.rb
|
|
964
1004
|
- lib/webhookdb/jobs/icalendar_enqueue_syncs.rb
|
|
965
1005
|
- lib/webhookdb/jobs/icalendar_sync.rb
|
|
1006
|
+
- lib/webhookdb/jobs/increase_event_handler.rb
|
|
966
1007
|
- lib/webhookdb/jobs/logged_webhook_replay.rb
|
|
967
1008
|
- lib/webhookdb/jobs/logged_webhook_resilient_replay.rb
|
|
968
1009
|
- lib/webhookdb/jobs/message_dispatched.rb
|
|
@@ -999,6 +1040,7 @@ files:
|
|
|
999
1040
|
- lib/webhookdb/message/template.rb
|
|
1000
1041
|
- lib/webhookdb/message/transport.rb
|
|
1001
1042
|
- lib/webhookdb/messages/error_icalendar_fetch.rb
|
|
1043
|
+
- lib/webhookdb/messages/error_signalwire_send_sms.rb
|
|
1002
1044
|
- lib/webhookdb/messages/invite.rb
|
|
1003
1045
|
- lib/webhookdb/messages/new_customer.rb
|
|
1004
1046
|
- lib/webhookdb/messages/org_database_migration_finished.rb
|
|
@@ -1009,7 +1051,9 @@ files:
|
|
|
1009
1051
|
- lib/webhookdb/microsoft_calendar.rb
|
|
1010
1052
|
- lib/webhookdb/nextpax.rb
|
|
1011
1053
|
- lib/webhookdb/oauth.rb
|
|
1054
|
+
- lib/webhookdb/oauth/fake_provider.rb
|
|
1012
1055
|
- lib/webhookdb/oauth/front_provider.rb
|
|
1056
|
+
- lib/webhookdb/oauth/increase_provider.rb
|
|
1013
1057
|
- lib/webhookdb/oauth/intercom_provider.rb
|
|
1014
1058
|
- lib/webhookdb/oauth/session.rb
|
|
1015
1059
|
- lib/webhookdb/organization.rb
|
|
@@ -1062,7 +1106,9 @@ files:
|
|
|
1062
1106
|
- lib/webhookdb/replicator/increase_account_transfer_v1.rb
|
|
1063
1107
|
- lib/webhookdb/replicator/increase_account_v1.rb
|
|
1064
1108
|
- lib/webhookdb/replicator/increase_ach_transfer_v1.rb
|
|
1109
|
+
- lib/webhookdb/replicator/increase_app_v1.rb
|
|
1065
1110
|
- lib/webhookdb/replicator/increase_check_transfer_v1.rb
|
|
1111
|
+
- lib/webhookdb/replicator/increase_event_v1.rb
|
|
1066
1112
|
- lib/webhookdb/replicator/increase_limit_v1.rb
|
|
1067
1113
|
- lib/webhookdb/replicator/increase_transaction_v1.rb
|
|
1068
1114
|
- lib/webhookdb/replicator/increase_v1_mixin.rb
|
|
@@ -1105,10 +1151,12 @@ files:
|
|
|
1105
1151
|
- lib/webhookdb/replicator/transistor_show_v1.rb
|
|
1106
1152
|
- lib/webhookdb/replicator/transistor_v1_mixin.rb
|
|
1107
1153
|
- lib/webhookdb/replicator/twilio_sms_v1.rb
|
|
1154
|
+
- lib/webhookdb/replicator/url_recorder_v1.rb
|
|
1108
1155
|
- lib/webhookdb/replicator/webhook_request.rb
|
|
1109
1156
|
- lib/webhookdb/replicator/webhookdb_customer_v1.rb
|
|
1110
1157
|
- lib/webhookdb/role.rb
|
|
1111
1158
|
- lib/webhookdb/saved_query.rb
|
|
1159
|
+
- lib/webhookdb/saved_view.rb
|
|
1112
1160
|
- lib/webhookdb/sentry.rb
|
|
1113
1161
|
- lib/webhookdb/service.rb
|
|
1114
1162
|
- lib/webhookdb/service/auth.rb
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require "grape"
|
|
4
|
-
|
|
5
|
-
require "webhookdb/admin_api"
|
|
6
|
-
|
|
7
|
-
class Webhookdb::AdminAPI::Customers < Webhookdb::AdminAPI::V1
|
|
8
|
-
resource :customers do
|
|
9
|
-
desc "Return all customers, newest first"
|
|
10
|
-
params do
|
|
11
|
-
use :pagination
|
|
12
|
-
use :ordering, model: Webhookdb::Customer
|
|
13
|
-
use :searchable
|
|
14
|
-
end
|
|
15
|
-
get do
|
|
16
|
-
ds = Webhookdb::Customer.dataset
|
|
17
|
-
if (email_like = search_param_to_sql(params, :email))
|
|
18
|
-
name_like = search_param_to_sql(params, :name)
|
|
19
|
-
ds = ds.where(email_like | name_like)
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
ds = order(ds, params)
|
|
23
|
-
ds = paginate(ds, params)
|
|
24
|
-
present_collection ds, with: Webhookdb::AdminAPI::CustomerEntity
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
route_param :id, type: Integer do
|
|
28
|
-
desc "Return the customer"
|
|
29
|
-
get do
|
|
30
|
-
(customer = Webhookdb::Customer[params[:id]]) or not_found!
|
|
31
|
-
present customer, with: Webhookdb::AdminAPI::DetailedCustomerEntity
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
desc "Update the customer"
|
|
35
|
-
params do
|
|
36
|
-
optional :name, type: String
|
|
37
|
-
optional :note, type: String
|
|
38
|
-
optional :email, type: String
|
|
39
|
-
optional :roles, type: [String]
|
|
40
|
-
end
|
|
41
|
-
post do
|
|
42
|
-
fields = params
|
|
43
|
-
(customer = Webhookdb::Customer[fields[:id]]) or not_found!
|
|
44
|
-
customer.db.transaction do
|
|
45
|
-
if (roles = fields.delete(:roles))
|
|
46
|
-
customer.remove_all_roles
|
|
47
|
-
roles.uniq.each { |r| customer.add_role(Webhookdb::Role[name: r]) }
|
|
48
|
-
end
|
|
49
|
-
if fields.key?(:email_verified)
|
|
50
|
-
customer.email_verified_at = fields.delete(:email_verified) ? Time.now : nil
|
|
51
|
-
end
|
|
52
|
-
if fields.key?(:phone_verified)
|
|
53
|
-
customer.phone_verified_at = fields.delete(:phone_verified) ? Time.now : nil
|
|
54
|
-
end
|
|
55
|
-
set_declared(customer, params)
|
|
56
|
-
customer.save_changes
|
|
57
|
-
end
|
|
58
|
-
status 200
|
|
59
|
-
present customer, with: Webhookdb::AdminAPI::DetailedCustomerEntity
|
|
60
|
-
end
|
|
61
|
-
end
|
|
62
|
-
end
|
|
63
|
-
end
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require "grape"
|
|
4
|
-
|
|
5
|
-
require "webhookdb/admin_api"
|
|
6
|
-
|
|
7
|
-
class Webhookdb::AdminAPI::MessageDeliveries < Webhookdb::AdminAPI::V1
|
|
8
|
-
helpers do
|
|
9
|
-
def lookup_delivery(params)
|
|
10
|
-
(batch = Webhookdb::Message::Delivery[params[:id]]) or not_found!
|
|
11
|
-
return batch
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
resource :message_deliveries do
|
|
16
|
-
desc "Return all message deliveries, newest first"
|
|
17
|
-
params do
|
|
18
|
-
use :pagination
|
|
19
|
-
use :ordering, model: Webhookdb::Message::Delivery
|
|
20
|
-
use :searchable
|
|
21
|
-
end
|
|
22
|
-
get do
|
|
23
|
-
ds = Webhookdb::Message::Delivery.dataset
|
|
24
|
-
if (to_like = search_param_to_sql(params, :to))
|
|
25
|
-
criteria = to_like | search_param_to_sql(params, :template)
|
|
26
|
-
ds = ds.where(criteria)
|
|
27
|
-
end
|
|
28
|
-
ds = order(ds, params)
|
|
29
|
-
ds = paginate(ds, params)
|
|
30
|
-
present_collection ds, with: Webhookdb::AdminAPI::MessageDeliveryEntity
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
desc "Return the delivery with the last ID"
|
|
34
|
-
get :last do
|
|
35
|
-
delivery = Webhookdb::Message::Delivery.last
|
|
36
|
-
present delivery, with: Webhookdb::AdminAPI::MessageDeliveryWithBodiesEntity
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
route_param :id, type: Integer do
|
|
40
|
-
desc "Return the delivery"
|
|
41
|
-
get do
|
|
42
|
-
delivery = lookup_delivery(params)
|
|
43
|
-
present delivery, with: Webhookdb::AdminAPI::MessageDeliveryWithBodiesEntity
|
|
44
|
-
end
|
|
45
|
-
end
|
|
46
|
-
end
|
|
47
|
-
|
|
48
|
-
resource :customers do
|
|
49
|
-
route_param :id, type: Integer do
|
|
50
|
-
resource :message_deliveries do
|
|
51
|
-
desc "Return all message deliveries for customer the given customers, as recipients or to their emails"
|
|
52
|
-
get do
|
|
53
|
-
# rubocop:disable Layout/LineLength
|
|
54
|
-
ds = Webhookdb::Message::Delivery.to_customers(Webhookdb::Customer.where(id: params[:id])).order(Sequel.desc(:id))
|
|
55
|
-
# rubocop:enable Layout/LineLength
|
|
56
|
-
present_collection ds, with: Webhookdb::AdminAPI::MessageDeliveryEntity
|
|
57
|
-
end
|
|
58
|
-
end
|
|
59
|
-
end
|
|
60
|
-
end
|
|
61
|
-
end
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require "grape"
|
|
4
|
-
|
|
5
|
-
require "webhookdb/admin_api"
|
|
6
|
-
|
|
7
|
-
class Webhookdb::AdminAPI::Roles < Webhookdb::AdminAPI::V1
|
|
8
|
-
resource :roles do
|
|
9
|
-
desc "Return all roles, ordered by name"
|
|
10
|
-
get do
|
|
11
|
-
ds = Webhookdb::Role.dataset.order(:name)
|
|
12
|
-
present_collection ds, with: Webhookdb::AdminAPI::RoleEntity
|
|
13
|
-
end
|
|
14
|
-
end
|
|
15
|
-
end
|