Skip to content

Commit 44d886b

Browse files
authored
fix: Cast paginated list items to their element type (#113)
1 parent bba54e7 commit 44d886b

131 files changed

Lines changed: 1019 additions & 3714 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.oagen-manifest.json

Lines changed: 54 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@
4040
"lib/workos/agent_registration_kind.ex",
4141
"lib/workos/agent_registration_organization_switched.ex",
4242
"lib/workos/agent_registration_organization_switched_data.ex",
43+
"lib/workos/agent_registration_refreshed.ex",
44+
"lib/workos/agent_registration_refreshed_data.ex",
4345
"lib/workos/agent_registration_revoked.ex",
4446
"lib/workos/agent_registration_revoked_data.ex",
4547
"lib/workos/agent_registration_status.ex",
@@ -157,14 +159,8 @@
157159
"lib/workos/authorization_check.ex",
158160
"lib/workos/authorization_code_session_authenticate_request.ex",
159161
"lib/workos/authorization_permission.ex",
160-
"lib/workos/authorization_permission_list.ex",
161-
"lib/workos/authorization_permission_list_list_metadata.ex",
162162
"lib/workos/authorization_resource.ex",
163-
"lib/workos/authorization_resource_list.ex",
164-
"lib/workos/authorization_resource_list_list_metadata.ex",
165-
"lib/workos/authorized_connect_application_list.ex",
166163
"lib/workos/authorized_connect_application_list_data.ex",
167-
"lib/workos/authorized_connect_application_list_list_metadata.ex",
168164
"lib/workos/challenge_authentication_factor.ex",
169165
"lib/workos/check_authorization.ex",
170166
"lib/workos/claim_view_response.ex",
@@ -177,8 +173,6 @@
177173
"lib/workos/confirm_email_change.ex",
178174
"lib/workos/connect.ex",
179175
"lib/workos/connect_application.ex",
180-
"lib/workos/connect_application_list.ex",
181-
"lib/workos/connect_application_list_list_metadata.ex",
182176
"lib/workos/connect_application_m2m.ex",
183177
"lib/workos/connect_application_oauth.ex",
184178
"lib/workos/connect_application_oauth_redirect_uris.ex",
@@ -206,8 +200,6 @@
206200
"lib/workos/connection_deleted_data_connection_type.ex",
207201
"lib/workos/connection_deleted_data_state.ex",
208202
"lib/workos/connection_domain.ex",
209-
"lib/workos/connection_list.ex",
210-
"lib/workos/connection_list_list_metadata.ex",
211203
"lib/workos/connection_saml_certificate_renewal_required.ex",
212204
"lib/workos/connection_saml_certificate_renewal_required_data.ex",
213205
"lib/workos/connection_saml_certificate_renewal_required_data_certificate.ex",
@@ -275,8 +267,6 @@
275267
"lib/workos/data_integration_custom_provider.ex",
276268
"lib/workos/data_integration_custom_provider_authenticate_via.ex",
277269
"lib/workos/data_integration_installation.ex",
278-
"lib/workos/data_integration_list.ex",
279-
"lib/workos/data_integration_list_list_metadata.ex",
280270
"lib/workos/data_integration_state.ex",
281271
"lib/workos/data_integrations_get_data_integration_authorize_url_request.ex",
282272
"lib/workos/data_integrations_get_user_token_request.ex",
@@ -297,19 +287,13 @@
297287
"lib/workos/device_code_session_authenticate_request.ex",
298288
"lib/workos/directory.ex",
299289
"lib/workos/directory_group.ex",
300-
"lib/workos/directory_group_list.ex",
301-
"lib/workos/directory_group_list_list_metadata.ex",
302-
"lib/workos/directory_list.ex",
303-
"lib/workos/directory_list_list_metadata.ex",
304290
"lib/workos/directory_metadata.ex",
305291
"lib/workos/directory_metadata_user.ex",
306292
"lib/workos/directory_state.ex",
307293
"lib/workos/directory_sync.ex",
308294
"lib/workos/directory_type.ex",
309295
"lib/workos/directory_user.ex",
310296
"lib/workos/directory_user_email.ex",
311-
"lib/workos/directory_user_list.ex",
312-
"lib/workos/directory_user_list_list_metadata.ex",
313297
"lib/workos/directory_user_state.ex",
314298
"lib/workos/directory_user_with_groups.ex",
315299
"lib/workos/directory_user_with_groups_email.ex",
@@ -354,8 +338,6 @@
354338
"lib/workos/event_context_actor.ex",
355339
"lib/workos/event_context_actor_source.ex",
356340
"lib/workos/event_context_google_analytics_session.ex",
357-
"lib/workos/event_list.ex",
358-
"lib/workos/event_list_list_metadata.ex",
359341
"lib/workos/event_schema.ex",
360342
"lib/workos/events.ex",
361343
"lib/workos/expire_api_key.ex",
@@ -376,8 +358,6 @@
376358
"lib/workos/flag_deleted_context_actor_source.ex",
377359
"lib/workos/flag_deleted_data.ex",
378360
"lib/workos/flag_deleted_data_owner.ex",
379-
"lib/workos/flag_list.ex",
380-
"lib/workos/flag_list_list_metadata.ex",
381361
"lib/workos/flag_owner.ex",
382362
"lib/workos/flag_rule_updated.ex",
383363
"lib/workos/flag_rule_updated_context.ex",
@@ -409,8 +389,6 @@
409389
"lib/workos/group.ex",
410390
"lib/workos/group_created.ex",
411391
"lib/workos/group_deleted.ex",
412-
"lib/workos/group_list.ex",
413-
"lib/workos/group_list_list_metadata.ex",
414392
"lib/workos/group_member_added.ex",
415393
"lib/workos/group_member_added_data.ex",
416394
"lib/workos/group_member_removed.ex",
@@ -446,21 +424,16 @@
446424
"lib/workos/mfa_totp_session_authenticate_request.ex",
447425
"lib/workos/multi_factor_auth.ex",
448426
"lib/workos/new_connect_application_secret.ex",
449-
"lib/workos/object_list_response.ex",
450427
"lib/workos/object_metadata.ex",
451428
"lib/workos/object_summary.ex",
452429
"lib/workos/object_version.ex",
453430
"lib/workos/object_without_value.ex",
454431
"lib/workos/organization.ex",
455432
"lib/workos/organization_api_key.ex",
456-
"lib/workos/organization_api_key_list.ex",
457-
"lib/workos/organization_api_key_list_list_metadata.ex",
458433
"lib/workos/organization_api_key_owner.ex",
459434
"lib/workos/organization_api_key_with_value.ex",
460435
"lib/workos/organization_api_key_with_value_owner.ex",
461-
"lib/workos/organization_authorized_connect_application_list.ex",
462436
"lib/workos/organization_authorized_connect_application_list_data.ex",
463-
"lib/workos/organization_authorized_connect_application_list_list_metadata.ex",
464437
"lib/workos/organization_created.ex",
465438
"lib/workos/organization_created_data.ex",
466439
"lib/workos/organization_created_data_domain.ex",
@@ -500,8 +473,6 @@
500473
"lib/workos/organization_domain_verified_data_verification_strategy.ex",
501474
"lib/workos/organization_domains.ex",
502475
"lib/workos/organization_input.ex",
503-
"lib/workos/organization_list.ex",
504-
"lib/workos/organization_list_list_metadata.ex",
505476
"lib/workos/organization_membership.ex",
506477
"lib/workos/organization_membership_created.ex",
507478
"lib/workos/organization_membership_created_data.ex",
@@ -639,16 +610,12 @@
639610
"lib/workos/user.ex",
640611
"lib/workos/user_api_key.ex",
641612
"lib/workos/user_api_key_created_data_owner.ex",
642-
"lib/workos/user_api_key_list.ex",
643-
"lib/workos/user_api_key_list_list_metadata.ex",
644613
"lib/workos/user_api_key_owner.ex",
645614
"lib/workos/user_api_key_revoked_data_owner.ex",
646615
"lib/workos/user_api_key_updated_data_owner.ex",
647616
"lib/workos/user_api_key_with_value.ex",
648617
"lib/workos/user_api_key_with_value_owner.ex",
649618
"lib/workos/user_authentication_factor_enroll_response.ex",
650-
"lib/workos/user_authentication_factor_list.ex",
651-
"lib/workos/user_authentication_factor_list_list_metadata.ex",
652619
"lib/workos/user_consent_option.ex",
653620
"lib/workos/user_consent_option_choice.ex",
654621
"lib/workos/user_create_response.ex",
@@ -657,28 +624,18 @@
657624
"lib/workos/user_identities_get_item.ex",
658625
"lib/workos/user_identities_get_item_provider.ex",
659626
"lib/workos/user_invite.ex",
660-
"lib/workos/user_invite_list.ex",
661-
"lib/workos/user_invite_list_list_metadata.ex",
662627
"lib/workos/user_invite_state.ex",
663-
"lib/workos/user_list.ex",
664-
"lib/workos/user_list_list_metadata.ex",
665628
"lib/workos/user_management.ex",
666629
"lib/workos/user_management_authentication_provider.ex",
667630
"lib/workos/user_management_authentication_screen_hint.ex",
668631
"lib/workos/user_management_login_request.ex",
669632
"lib/workos/user_management_organization_membership_statuses.ex",
670633
"lib/workos/user_object.ex",
671634
"lib/workos/user_organization_membership.ex",
672-
"lib/workos/user_organization_membership_base_list.ex",
673635
"lib/workos/user_organization_membership_base_list_data.ex",
674636
"lib/workos/user_organization_membership_base_list_data_status.ex",
675-
"lib/workos/user_organization_membership_base_list_list_metadata.ex",
676-
"lib/workos/user_organization_membership_list.ex",
677-
"lib/workos/user_organization_membership_list_list_metadata.ex",
678637
"lib/workos/user_organization_membership_status.ex",
679638
"lib/workos/user_role_assignment.ex",
680-
"lib/workos/user_role_assignment_list.ex",
681-
"lib/workos/user_role_assignment_list_list_metadata.ex",
682639
"lib/workos/user_role_assignment_resource.ex",
683640
"lib/workos/user_role_assignment_source.ex",
684641
"lib/workos/user_role_assignment_source_type.ex",
@@ -735,8 +692,6 @@
735692
"lib/workos/waitlist_user_denied.ex",
736693
"lib/workos/waitlist_user_state.ex",
737694
"lib/workos/webhook_endpoint.ex",
738-
"lib/workos/webhook_endpoint_list.ex",
739-
"lib/workos/webhook_endpoint_list_list_metadata.ex",
740695
"lib/workos/webhook_endpoint_status.ex",
741696
"lib/workos/webhooks.ex",
742697
"lib/workos/widget_session_token.ex",
@@ -1204,10 +1159,16 @@
12041159
"sdkMethod": "list_applications",
12051160
"service": "connect"
12061161
},
1207-
"POST /connect/applications": {
1208-
"sdkMethod": "create_application",
1209-
"service": "connect"
1210-
},
1162+
"POST /connect/applications": [
1163+
{
1164+
"sdkMethod": "create_oauth_application",
1165+
"service": "connect"
1166+
},
1167+
{
1168+
"sdkMethod": "create_m2m_application",
1169+
"service": "connect"
1170+
}
1171+
],
12111172
"GET /connect/applications/{id}": {
12121173
"sdkMethod": "get_application",
12131174
"service": "connect"
@@ -1480,10 +1441,48 @@
14801441
"sdkMethod": "get_jwks",
14811442
"service": "user_management"
14821443
},
1483-
"POST /user_management/authenticate": {
1484-
"sdkMethod": "create_authenticate",
1485-
"service": "user_management"
1486-
},
1444+
"POST /user_management/authenticate": [
1445+
{
1446+
"sdkMethod": "authenticate_with_password",
1447+
"service": "user_management"
1448+
},
1449+
{
1450+
"sdkMethod": "authenticate_with_code",
1451+
"service": "user_management"
1452+
},
1453+
{
1454+
"sdkMethod": "authenticate_with_refresh_token",
1455+
"service": "user_management"
1456+
},
1457+
{
1458+
"sdkMethod": "authenticate_with_magic_auth",
1459+
"service": "user_management"
1460+
},
1461+
{
1462+
"sdkMethod": "authenticate_with_email_verification",
1463+
"service": "user_management"
1464+
},
1465+
{
1466+
"sdkMethod": "authenticate_with_totp",
1467+
"service": "user_management"
1468+
},
1469+
{
1470+
"sdkMethod": "authenticate_with_organization_selection",
1471+
"service": "user_management"
1472+
},
1473+
{
1474+
"sdkMethod": "authenticate_with_device_code",
1475+
"service": "user_management"
1476+
},
1477+
{
1478+
"sdkMethod": "authenticate_with_radar_email_challenge",
1479+
"service": "user_management"
1480+
},
1481+
{
1482+
"sdkMethod": "authenticate_with_radar_sms_challenge",
1483+
"service": "user_management"
1484+
}
1485+
],
14871486
"POST /user_management/authorize/device": {
14881487
"sdkMethod": "create_device",
14891488
"service": "user_management"
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
# This file is auto-generated by oagen. Do not edit.
2+
3+
defmodule WorkOS.AgentRegistrationRefreshed do
4+
@moduledoc """
5+
AgentRegistrationRefreshed model.
6+
"""
7+
8+
defstruct [
9+
:object,
10+
:id,
11+
:event,
12+
:data,
13+
:created_at,
14+
:context
15+
]
16+
17+
@type t :: %__MODULE__{
18+
object: String.t(),
19+
id: String.t(),
20+
event: String.t(),
21+
data: WorkOS.AgentRegistrationRefreshedData.t(),
22+
created_at: String.t(),
23+
context: WorkOS.EventContext.t() | nil
24+
}
25+
26+
@doc false
27+
@spec from_map(map()) :: t()
28+
def from_map(map) when is_map(map) do
29+
%__MODULE__{
30+
object: map["object"],
31+
id: map["id"],
32+
event: map["event"],
33+
data: WorkOS.Cast.nested(map["data"], &WorkOS.AgentRegistrationRefreshedData.from_map/1),
34+
created_at: map["created_at"],
35+
context: WorkOS.Cast.nested(map["context"], &WorkOS.EventContext.from_map/1)
36+
}
37+
end
38+
39+
@doc false
40+
@spec to_map(t()) :: map()
41+
def to_map(%__MODULE__{} = struct) do
42+
WorkOS.Cast.drop_nils(%{
43+
"object" => struct.object,
44+
"id" => struct.id,
45+
"event" => struct.event,
46+
"data" =>
47+
WorkOS.Cast.dump_struct(struct.data, &WorkOS.AgentRegistrationRefreshedData.to_map/1),
48+
"created_at" => struct.created_at,
49+
"context" => WorkOS.Cast.dump_struct(struct.context, &WorkOS.EventContext.to_map/1)
50+
})
51+
end
52+
end
Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,31 @@
11
# This file is auto-generated by oagen. Do not edit.
22

3-
defmodule WorkOS.EventListListMetadata do
3+
defmodule WorkOS.AgentRegistrationRefreshedData do
44
@moduledoc """
5-
Pagination cursor for navigating to the next page of results.
5+
The event payload.
66
"""
77

88
defstruct [
9-
:after_
9+
:agent_registration_id
1010
]
1111

1212
@type t :: %__MODULE__{
13-
after_: String.t() | nil
13+
agent_registration_id: String.t()
1414
}
1515

1616
@doc false
1717
@spec from_map(map()) :: t()
1818
def from_map(map) when is_map(map) do
1919
%__MODULE__{
20-
after_: map["after"]
20+
agent_registration_id: map["agent_registration_id"]
2121
}
2222
end
2323

2424
@doc false
2525
@spec to_map(t()) :: map()
2626
def to_map(%__MODULE__{} = struct) do
2727
WorkOS.Cast.drop_nils(%{
28-
"after" => struct.after_
28+
"agent_registration_id" => struct.agent_registration_id
2929
})
3030
end
3131
end

lib/workos/api_keys.ex

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ defmodule WorkOS.ApiKeys do
1717
* `opts` — per-request options (see `WorkOS.Client.request/5`)
1818
"""
1919
@spec list_organization_api_keys(WorkOS.Client.t(), String.t(), map(), keyword()) ::
20-
{:ok, WorkOS.Page.t(WorkOS.OrganizationApiKeyList.t())} | {:error, WorkOS.Error.error()}
20+
{:ok, WorkOS.Page.t(WorkOS.OrganizationApiKey.t())} | {:error, WorkOS.Error.error()}
2121
def list_organization_api_keys(client, organization_id, params \\ %{}, opts \\ []) do
2222
with {:ok, body} <-
2323
WorkOS.Client.request(
@@ -36,8 +36,7 @@ defmodule WorkOS.ApiKeys do
3636
)
3737
end
3838

39-
{:ok,
40-
WorkOS.Page.from_map(body, "data", &WorkOS.OrganizationApiKeyList.from_map/1, fetch_next)}
39+
{:ok, WorkOS.Page.from_map(body, "data", &WorkOS.OrganizationApiKey.from_map/1, fetch_next)}
4140
end
4241
end
4342

0 commit comments

Comments
 (0)