workos 0.10.0 → 1.0.0

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.
Files changed (112) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +1 -1
  3. data/.ruby-version +1 -1
  4. data/.semaphore/semaphore.yml +8 -2
  5. data/Gemfile.lock +49 -36
  6. data/LICENSE +1 -1
  7. data/README.md +13 -230
  8. data/lib/workos/client.rb +21 -4
  9. data/lib/workos/connection.rb +12 -1
  10. data/lib/workos/directory.rb +53 -0
  11. data/lib/workos/directory_group.rb +44 -0
  12. data/lib/workos/directory_sync.rb +63 -7
  13. data/lib/workos/directory_user.rb +63 -0
  14. data/lib/workos/organizations.rb +150 -0
  15. data/lib/workos/passwordless.rb +4 -0
  16. data/lib/workos/portal.rb +1 -81
  17. data/lib/workos/profile.rb +1 -2
  18. data/lib/workos/profile_and_token.rb +28 -0
  19. data/lib/workos/sso.rb +39 -104
  20. data/lib/workos/types/connection_struct.rb +3 -0
  21. data/lib/workos/types/directory_group_struct.rb +13 -0
  22. data/lib/workos/types/directory_struct.rb +16 -0
  23. data/lib/workos/types/directory_user_struct.rb +19 -0
  24. data/lib/workos/types/intent_enum.rb +1 -0
  25. data/lib/workos/types.rb +3 -0
  26. data/lib/workos/version.rb +1 -1
  27. data/lib/workos.rb +5 -0
  28. data/sorbet/rbi/gems/addressable.rbi +199 -0
  29. data/sorbet/rbi/gems/ast.rbi +49 -0
  30. data/sorbet/rbi/gems/codecov.rbi +37 -0
  31. data/sorbet/rbi/gems/crack.rbi +62 -0
  32. data/sorbet/rbi/gems/docile.rbi +36 -0
  33. data/sorbet/rbi/gems/hashdiff.rbi +66 -0
  34. data/sorbet/rbi/gems/parallel.rbi +83 -0
  35. data/sorbet/rbi/gems/parser.rbi +1429 -0
  36. data/sorbet/rbi/gems/public_suffix.rbi +104 -0
  37. data/sorbet/rbi/gems/rainbow.rbi +118 -0
  38. data/sorbet/rbi/gems/rake.rbi +644 -0
  39. data/sorbet/rbi/gems/regexp_parser.rbi +926 -0
  40. data/sorbet/rbi/gems/rexml.rbi +628 -0
  41. data/sorbet/rbi/gems/rspec-core.rbi +1898 -0
  42. data/sorbet/rbi/gems/rspec-expectations.rbi +1127 -0
  43. data/sorbet/rbi/gems/rspec-mocks.rbi +1099 -0
  44. data/sorbet/rbi/gems/rspec-support.rbi +280 -0
  45. data/sorbet/rbi/gems/rspec.rbi +15 -0
  46. data/sorbet/rbi/gems/rubocop-ast.rbi +1355 -0
  47. data/sorbet/rbi/gems/rubocop.rbi +7253 -0
  48. data/sorbet/rbi/gems/ruby-progressbar.rbi +304 -0
  49. data/sorbet/rbi/gems/simplecov-html.rbi +35 -0
  50. data/sorbet/rbi/gems/simplecov.rbi +406 -0
  51. data/sorbet/rbi/gems/unicode-display_width.rbi +17 -0
  52. data/sorbet/rbi/gems/vcr.rbi +572 -0
  53. data/sorbet/rbi/gems/webmock.rbi +556 -0
  54. data/sorbet/rbi/gems/yard.rbi +1165 -0
  55. data/sorbet/rbi/sorbet-typed/lib/rake/all/rake.rbi +645 -0
  56. data/sorbet/rbi/sorbet-typed/lib/rspec-core/all/rspec-core.rbi +1891 -0
  57. data/sorbet/rbi/sorbet-typed/lib/rubocop/~>0.85/rubocop.rbi +2072 -0
  58. data/sorbet/rbi/sorbet-typed/lib/yard/all/yard.rbi +1214 -0
  59. data/sorbet/rbi/todo.rbi +1 -3
  60. data/spec/lib/workos/audit_trail_spec.rb +0 -8
  61. data/spec/lib/workos/directory_sync_spec.rb +347 -40
  62. data/spec/lib/workos/organizations_spec.rb +164 -0
  63. data/spec/lib/workos/passwordless_spec.rb +0 -8
  64. data/spec/lib/workos/portal_spec.rb +17 -123
  65. data/spec/lib/workos/sso_spec.rb +144 -176
  66. data/spec/spec_helper.rb +2 -1
  67. data/spec/support/fixtures/vcr_cassettes/directory_sync/delete_directory.yml +72 -0
  68. data/spec/support/fixtures/vcr_cassettes/{sso/list_connections.yml → directory_sync/list_directories/with_after.yml} +7 -7
  69. data/spec/support/fixtures/vcr_cassettes/{sso/list_connections_with_limit_param.yml → directory_sync/list_directories/with_before.yml} +8 -8
  70. data/spec/support/fixtures/vcr_cassettes/{sso/list_connections_with_connection_type_param.yml → directory_sync/list_directories/with_domain.yml} +11 -10
  71. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_directories/with_limit.yml +74 -0
  72. data/spec/support/fixtures/vcr_cassettes/directory_sync/{list_directories.yml → list_directories/with_no_options.yml} +1 -1
  73. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_directories/with_search.yml +73 -0
  74. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_groups/with_after.yml +76 -0
  75. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_groups/with_before.yml +74 -0
  76. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_groups/with_directory.yml +78 -0
  77. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_groups/with_limit.yml +74 -0
  78. data/spec/support/fixtures/vcr_cassettes/directory_sync/{list_groups.yml → list_groups/with_no_options.yml} +16 -6
  79. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_groups/with_user.yml +72 -0
  80. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users/with_after.yml +86 -0
  81. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users/with_before.yml +75 -0
  82. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users/with_directory.yml +93 -0
  83. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users/with_group.yml +76 -0
  84. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users/with_limit.yml +75 -0
  85. data/spec/support/fixtures/vcr_cassettes/directory_sync/{list_users.yml → list_users/with_no_options.yml} +16 -6
  86. data/spec/support/fixtures/vcr_cassettes/organization/get.yml +73 -0
  87. data/spec/support/fixtures/vcr_cassettes/organization/get_invalid.yml +72 -0
  88. data/spec/support/fixtures/vcr_cassettes/organization/update.yml +73 -0
  89. data/spec/support/fixtures/vcr_cassettes/organization/update_invalid.yml +73 -0
  90. data/spec/support/fixtures/vcr_cassettes/portal/generate_link_dsync.yml +72 -0
  91. data/spec/support/fixtures/vcr_cassettes/portal/{generate_link.yml → generate_link_sso.yml} +1 -1
  92. data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_after.yml +73 -0
  93. data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_before.yml +73 -0
  94. data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_connection_type.yml +73 -0
  95. data/spec/support/fixtures/vcr_cassettes/sso/{list_connections_with_domain_param.yml → list_connections/with_domain.yml} +6 -6
  96. data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_limit.yml +74 -0
  97. data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_no_options.yml +73 -0
  98. data/spec/support/fixtures/vcr_cassettes/sso/{list_connections_with_before_param.yml → list_connections/with_organization_id.yml} +7 -8
  99. data/workos.gemspec +2 -0
  100. metadata +113 -44
  101. data/sorbet/rbi/hidden-definitions/errors.txt +0 -24896
  102. data/sorbet/rbi/hidden-definitions/hidden.rbi +0 -38411
  103. data/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +0 -8684
  104. data/sorbet/rbi/sorbet-typed/lib/ruby/all/gem.rbi +0 -4222
  105. data/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +0 -111
  106. data/sorbet/rbi/sorbet-typed/lib/ruby/all/resolv.rbi +0 -543
  107. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_directories_with_domain_param.yml +0 -63
  108. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_groups_with_directory_param.yml +0 -62
  109. data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users_with_directory_param.yml +0 -62
  110. data/spec/support/fixtures/vcr_cassettes/sso/create_connection_with_invalid_source.yml +0 -58
  111. data/spec/support/fixtures/vcr_cassettes/sso/create_connection_with_valid_source.yml +0 -63
  112. data/spec/support/fixtures/vcr_cassettes/sso/list_connections_with_after_param.yml +0 -72
@@ -0,0 +1,36 @@
1
+ # This file is autogenerated. Do not edit it by hand. Regenerate it with:
2
+ # srb rbi gems
3
+
4
+ # typed: strict
5
+ #
6
+ # If you would like to make changes to this file, great! Please create the gem's shim here:
7
+ #
8
+ # https://github.com/sorbet/sorbet-typed/new/master?filename=lib/docile/all/docile.rbi
9
+ #
10
+ # docile-1.3.5
11
+
12
+ module Docile
13
+ def dsl_eval(dsl, *args, &block); end
14
+ def dsl_eval_immutable(dsl, *args, &block); end
15
+ def dsl_eval_with_block_return(dsl, *args, &block); end
16
+ def self.dsl_eval(dsl, *args, &block); end
17
+ def self.dsl_eval_immutable(dsl, *args, &block); end
18
+ def self.dsl_eval_with_block_return(dsl, *args, &block); end
19
+ extend Docile::Execution
20
+ end
21
+ module Docile::Execution
22
+ def exec_in_proxy_context(dsl, proxy_type, *args, &block); end
23
+ def self.exec_in_proxy_context(dsl, proxy_type, *args, &block); end
24
+ end
25
+ class Docile::FallbackContextProxy
26
+ def initialize(receiver, fallback); end
27
+ def instance_variables; end
28
+ def method_missing(method, *args, &block); end
29
+ end
30
+ class Docile::ChainingFallbackContextProxy < Docile::FallbackContextProxy
31
+ def method_missing(method, *args, &block); end
32
+ end
33
+ module Docile::BacktraceFilter
34
+ def backtrace; end
35
+ def backtrace_locations; end
36
+ end
@@ -0,0 +1,66 @@
1
+ # This file is autogenerated. Do not edit it by hand. Regenerate it with:
2
+ # srb rbi gems
3
+
4
+ # typed: strict
5
+ #
6
+ # If you would like to make changes to this file, great! Please create the gem's shim here:
7
+ #
8
+ # https://github.com/sorbet/sorbet-typed/new/master?filename=lib/hashdiff/all/hashdiff.rbi
9
+ #
10
+ # hashdiff-1.0.1
11
+
12
+ module Hashdiff
13
+ def self.any_hash_or_array?(obja, objb); end
14
+ def self.best_diff(obj1, obj2, options = nil, &block); end
15
+ def self.comparable?(obj1, obj2, strict = nil); end
16
+ def self.compare_values(obj1, obj2, options = nil); end
17
+ def self.count_diff(diffs); end
18
+ def self.count_nodes(obj); end
19
+ def self.custom_compare(method, key, obj1, obj2); end
20
+ def self.decode_property_path(path, delimiter = nil); end
21
+ def self.diff(obj1, obj2, options = nil, &block); end
22
+ def self.diff_array_lcs(arraya, arrayb, options = nil); end
23
+ def self.lcs(arraya, arrayb, options = nil); end
24
+ def self.node(hash, parts); end
25
+ def self.patch!(obj, changes, options = nil); end
26
+ def self.prefix_append_array_index(prefix, array_index, opts); end
27
+ def self.prefix_append_key(prefix, key, opts); end
28
+ def self.similar?(obja, objb, options = nil); end
29
+ def self.unpatch!(obj, changes, options = nil); end
30
+ end
31
+ class Hashdiff::CompareHashes
32
+ def self.call(obj1, obj2, opts = nil); end
33
+ end
34
+ class Hashdiff::LcsCompareArrays
35
+ def self.call(obj1, obj2, opts = nil); end
36
+ end
37
+ class Hashdiff::LinearCompareArray
38
+ def additions; end
39
+ def append_addition(item, index); end
40
+ def append_addititions_before_match(match_index); end
41
+ def append_deletion(item, index); end
42
+ def append_deletions_before_match(match_index); end
43
+ def append_differences(difference); end
44
+ def call; end
45
+ def changes; end
46
+ def compare_at_index; end
47
+ def deletions; end
48
+ def differences; end
49
+ def expected_additions; end
50
+ def expected_additions=(arg0); end
51
+ def extra_items_in_new_array?; end
52
+ def extra_items_in_old_array?; end
53
+ def index_of_match_after_additions; end
54
+ def index_of_match_after_deletions; end
55
+ def initialize(old_array, new_array, options); end
56
+ def item_difference(old_item, new_item, item_index); end
57
+ def iterated_through_both_arrays?; end
58
+ def new_array; end
59
+ def new_index; end
60
+ def new_index=(arg0); end
61
+ def old_array; end
62
+ def old_index; end
63
+ def old_index=(arg0); end
64
+ def options; end
65
+ def self.call(old_array, new_array, options = nil); end
66
+ end
@@ -0,0 +1,83 @@
1
+ # This file is autogenerated. Do not edit it by hand. Regenerate it with:
2
+ # srb rbi gems
3
+
4
+ # typed: strict
5
+ #
6
+ # If you would like to make changes to this file, great! Please create the gem's shim here:
7
+ #
8
+ # https://github.com/sorbet/sorbet-typed/new/master?filename=lib/parallel/all/parallel.rbi
9
+ #
10
+ # parallel-1.20.1
11
+
12
+ module Parallel
13
+ def self.add_progress_bar!(job_factory, options); end
14
+ def self.all?(*args, &block); end
15
+ def self.any?(*args, &block); end
16
+ def self.call_with_index(item, index, options, &block); end
17
+ def self.create_workers(job_factory, options, &block); end
18
+ def self.each(array, options = nil, &block); end
19
+ def self.each_with_index(array, options = nil, &block); end
20
+ def self.extract_count_from_options(options); end
21
+ def self.flat_map(*args, &block); end
22
+ def self.in_processes(options = nil, &block); end
23
+ def self.in_threads(options = nil); end
24
+ def self.map(source, options = nil, &block); end
25
+ def self.map_with_index(array, options = nil, &block); end
26
+ def self.process_incoming_jobs(read, write, job_factory, options, &block); end
27
+ def self.replace_worker(job_factory, workers, i, options, blk); end
28
+ def self.with_instrumentation(item, index, options); end
29
+ def self.work_direct(job_factory, options, &block); end
30
+ def self.work_in_processes(job_factory, options, &blk); end
31
+ def self.work_in_threads(job_factory, options, &block); end
32
+ def self.worker(job_factory, options, &block); end
33
+ def self.worker_number; end
34
+ def self.worker_number=(worker_num); end
35
+ extend Parallel::ProcessorCount
36
+ end
37
+ module Parallel::ProcessorCount
38
+ def physical_processor_count; end
39
+ def processor_count; end
40
+ end
41
+ class Parallel::DeadWorker < StandardError
42
+ end
43
+ class Parallel::Break < StandardError
44
+ def initialize(value = nil); end
45
+ def value; end
46
+ end
47
+ class Parallel::Kill < Parallel::Break
48
+ end
49
+ class Parallel::UndumpableException < StandardError
50
+ def backtrace; end
51
+ def initialize(original); end
52
+ end
53
+ class Parallel::ExceptionWrapper
54
+ def exception; end
55
+ def initialize(exception); end
56
+ end
57
+ class Parallel::Worker
58
+ def close_pipes; end
59
+ def initialize(read, write, pid); end
60
+ def pid; end
61
+ def read; end
62
+ def stop; end
63
+ def thread; end
64
+ def thread=(arg0); end
65
+ def wait; end
66
+ def work(data); end
67
+ def write; end
68
+ end
69
+ class Parallel::JobFactory
70
+ def initialize(source, mutex); end
71
+ def next; end
72
+ def pack(item, index); end
73
+ def producer?; end
74
+ def queue_wrapper(array); end
75
+ def size; end
76
+ def unpack(data); end
77
+ end
78
+ class Parallel::UserInterruptHandler
79
+ def self.kill(thing); end
80
+ def self.kill_on_ctrl_c(pids, options); end
81
+ def self.restore_interrupt(old, signal); end
82
+ def self.trap_interrupt(signal); end
83
+ end