@vibes.diy/api-types 2.0.0-dev-cli-e → 2.0.0-dev-cli-f

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.
@@ -0,0 +1,222 @@
1
+ import { type } from "arktype";
2
+ import { dashAuthType, ClerkClaim, ForeignInfo, GrantListBase, Role } from "./common.js";
3
+ export const ReqRequestAccess = type({
4
+ type: "'vibes.diy.req-request-access'",
5
+ auth: dashAuthType,
6
+ appSlug: "string",
7
+ userSlug: "string",
8
+ });
9
+ export function isReqRequestAccess(obj) {
10
+ return !(ReqRequestAccess(obj) instanceof type.errors);
11
+ }
12
+ export const ResRequestAccessBase = type({
13
+ type: "'vibes.diy.res-request-access'",
14
+ appSlug: "string",
15
+ userSlug: "string",
16
+ foreignUserId: "string",
17
+ foreignInfo: ForeignInfo,
18
+ updated: "string",
19
+ created: "string",
20
+ });
21
+ export const ResRequestAccessPending = type({ state: "'pending'" }).and(ResRequestAccessBase);
22
+ export function isResRequestAccessPending(obj) {
23
+ return !(ResRequestAccessPending(obj) instanceof type.errors);
24
+ }
25
+ export const ResRequestAccessApproved = type({ state: "'approved'", role: Role }).and(ResRequestAccessBase);
26
+ export function isResRequestAccessApproved(obj) {
27
+ return !(ResRequestAccessApproved(obj) instanceof type.errors);
28
+ }
29
+ export const ResRequestAccessRevoked = type({ state: "'revoked'", role: Role }).and(ResRequestAccessBase);
30
+ export function isResRequestAccessRevoked(obj) {
31
+ return !(ResRequestAccessRevoked(obj) instanceof type.errors);
32
+ }
33
+ export const ResRequestAccess = ResRequestAccessPending.or(ResRequestAccessApproved).or(ResRequestAccessRevoked);
34
+ export function isResRequestAccess(obj) {
35
+ return !(ResRequestAccess(obj) instanceof type.errors);
36
+ }
37
+ export const ReqApproveRequest = type({
38
+ type: "'vibes.diy.req-approve-request'",
39
+ auth: dashAuthType,
40
+ appSlug: "string",
41
+ userSlug: "string",
42
+ foreignUserId: "string",
43
+ role: Role,
44
+ });
45
+ export function isReqApproveRequest(obj) {
46
+ return !(ReqApproveRequest(obj) instanceof type.errors);
47
+ }
48
+ export const ResApproveRequest = type({
49
+ type: "'vibes.diy.res-approve-request'",
50
+ appSlug: "string",
51
+ userSlug: "string",
52
+ foreignUserId: "string",
53
+ role: Role,
54
+ state: "'approved'",
55
+ updated: "string",
56
+ });
57
+ export function isResApproveRequest(obj) {
58
+ return !(ResApproveRequest(obj) instanceof type.errors);
59
+ }
60
+ export const ReqRequestSetRole = type({
61
+ type: "'vibes.diy.req-request-set-role'",
62
+ auth: dashAuthType,
63
+ appSlug: "string",
64
+ userSlug: "string",
65
+ foreignUserId: "string",
66
+ role: Role,
67
+ });
68
+ export function isReqRequestSetRole(obj) {
69
+ return !(ReqRequestSetRole(obj) instanceof type.errors);
70
+ }
71
+ export const ResRequestSetRole = type({
72
+ type: "'vibes.diy.res-request-set-role'",
73
+ appSlug: "string",
74
+ userSlug: "string",
75
+ foreignUserId: "string",
76
+ role: Role,
77
+ });
78
+ export function isResRequestSetRole(obj) {
79
+ return !(ResRequestSetRole(obj) instanceof type.errors);
80
+ }
81
+ export const ReqRevokeRequest = type({
82
+ type: "'vibes.diy.req-revoke-request'",
83
+ auth: dashAuthType,
84
+ appSlug: "string",
85
+ userSlug: "string",
86
+ foreignUserId: "string",
87
+ "delete?": "boolean",
88
+ });
89
+ export function isReqRevokeRequest(obj) {
90
+ return !(ReqRevokeRequest(obj) instanceof type.errors);
91
+ }
92
+ export const ResRevokeRequest = type({
93
+ type: "'vibes.diy.res-revoke-request'",
94
+ appSlug: "string",
95
+ userSlug: "string",
96
+ foreignUserId: "string",
97
+ deleted: "boolean",
98
+ });
99
+ export function isResRevokeRequest(obj) {
100
+ return !(ResRevokeRequest(obj) instanceof type.errors);
101
+ }
102
+ export const ReqHasAccessRequest = type({
103
+ type: "'vibes.diy.req-has-access-request'",
104
+ auth: dashAuthType,
105
+ appSlug: "string",
106
+ userSlug: "string",
107
+ });
108
+ export function isReqHasAccessRequest(obj) {
109
+ return !(ReqHasAccessRequest(obj) instanceof type.errors);
110
+ }
111
+ export const ResHasAccessRequestBase = type({
112
+ type: "'vibes.diy.res-has-access-request'",
113
+ appSlug: "string",
114
+ userSlug: "string",
115
+ });
116
+ export const ResHasAccessRequestNotFound = type({
117
+ state: "'not-found'",
118
+ }).and(ResHasAccessRequestBase);
119
+ export function isResHasAccessRequestNotFound(obj) {
120
+ return !(ResHasAccessRequestNotFound(obj) instanceof type.errors);
121
+ }
122
+ export const ResHasAccessRequestPending = ResHasAccessRequestBase.and(type({ state: "'pending'", role: Role.or("undefined | null") }));
123
+ export function isResHasAccessRequestPending(obj) {
124
+ return !(ResHasAccessRequestPending(obj) instanceof type.errors);
125
+ }
126
+ export const ResHasAccessRequestApproved = type({
127
+ state: "'approved'",
128
+ role: Role,
129
+ }).and(ResHasAccessRequestBase);
130
+ export function isResHasAccessRequestApproved(obj) {
131
+ return !(ResHasAccessRequestApproved(obj) instanceof type.errors);
132
+ }
133
+ export const ResHasAccessRequestRevoked = type({
134
+ state: "'revoked'",
135
+ }).and(ResHasAccessRequestBase);
136
+ export function isResHasAccessRequestRevoked(obj) {
137
+ return !(ResHasAccessRequestRevoked(obj) instanceof type.errors);
138
+ }
139
+ export const ResHasAccessRequest = ResHasAccessRequestNotFound.or(ResHasAccessRequestPending)
140
+ .or(ResHasAccessRequestApproved)
141
+ .or(ResHasAccessRequestRevoked);
142
+ export function isResHasAccessRequest(obj) {
143
+ return !(ResHasAccessRequest(obj) instanceof type.errors);
144
+ }
145
+ export const ResFlowOwnerError = type({
146
+ type: "'vibes.diy.error'",
147
+ message: "string",
148
+ code: "'owner-error'",
149
+ "stack?": "string[]",
150
+ });
151
+ export function isResFlowOwnerError(obj) {
152
+ return !(ResFlowOwnerError(obj) instanceof type.errors);
153
+ }
154
+ export const ResRequestAccessError = type({
155
+ type: "'vibes.diy.error'",
156
+ message: "string",
157
+ code: "'request-access-app-not-found' | 'request-access-not-enabled'",
158
+ "stack?": "string[]",
159
+ });
160
+ export function isResRequestAccessError(obj) {
161
+ return !(ResRequestAccessError(obj) instanceof type.errors);
162
+ }
163
+ export const ResApproveRequestError = type({
164
+ type: "'vibes.diy.error'",
165
+ message: "string",
166
+ code: "'approve-request-not-found'",
167
+ "stack?": "string[]",
168
+ });
169
+ export const ResRequestSetRoleError = type({
170
+ type: "'vibes.diy.error'",
171
+ message: "string",
172
+ code: "'request-set-role-not-found'",
173
+ "stack?": "string[]",
174
+ });
175
+ export const ResRequestAccessFlow = ResRequestAccess.or(ResRequestAccessError).or(ResFlowOwnerError);
176
+ export function isResRequestAccessFlow(obj) {
177
+ return !(ResRequestAccessFlow(obj) instanceof type.errors);
178
+ }
179
+ export const ResHasAccessRequestFlow = ResHasAccessRequest.or(ResFlowOwnerError);
180
+ export function isResHasAccessRequestFlow(obj) {
181
+ return !(ResHasAccessRequestFlow(obj) instanceof type.errors);
182
+ }
183
+ export const ReqListRequestGrants = type({
184
+ type: "'vibes.diy.req-list-request-grants'",
185
+ }).and(GrantListBase);
186
+ export function isReqListRequestGrants(obj) {
187
+ return !(ReqListRequestGrants(obj) instanceof type.errors);
188
+ }
189
+ export const ResListRequestGrants = type({
190
+ type: "'vibes.diy.res-list-request-grants'",
191
+ appSlug: "string",
192
+ userSlug: "string",
193
+ items: type({
194
+ foreignUserId: "string",
195
+ state: "'pending' | 'approved' | 'revoked'",
196
+ role: Role.or("undefined | null"),
197
+ foreignInfo: type({
198
+ "claims?": ClerkClaim.partial(),
199
+ }),
200
+ tick: "string",
201
+ updated: "string",
202
+ created: "string",
203
+ }).array(),
204
+ "nextCursor?": "string",
205
+ });
206
+ export function isResListRequestGrants(obj) {
207
+ const x = ResListRequestGrants(obj);
208
+ if (x instanceof type.errors) {
209
+ console.error("ResListRequestGrants validation error:", x.summary);
210
+ }
211
+ return !(x instanceof type.errors);
212
+ }
213
+ export const evtRequestGrant = type({
214
+ op: "'upsert' | 'delete'",
215
+ type: "'vibes.diy.evt-request-grant'",
216
+ userId: "string",
217
+ grant: ResRequestAccess,
218
+ });
219
+ export function isEvtRequestGrant(obj) {
220
+ return !(evtRequestGrant(obj) instanceof type.errors);
221
+ }
222
+ //# sourceMappingURL=request-access.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-access.js","sourceRoot":"","sources":["../jsr/request-access.ts"],"names":[],"mappings":"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"}