@devvit/protos 0.12.0-next-2025-03-31-81fa43e0f.0 → 0.12.0-next-2025-04-10-2ee75c532.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 (39) hide show
  1. package/index.d.ts +2 -0
  2. package/index.d.ts.map +1 -1
  3. package/index.js +1 -0
  4. package/meta.min.json +35 -5
  5. package/package.json +5 -5
  6. package/protos.min.js +1 -1
  7. package/protos.min.js.map +4 -4
  8. package/schema/devvit/actor/webbit/webbit.proto +34 -0
  9. package/schema/devvit/dev_portal/nutrition/nutrition.proto +2 -0
  10. package/schema/devvit/plugin/useractions/useractions.proto +18 -0
  11. package/schema/devvit/ui/effects/web_view/v1alpha/post_message.proto +19 -1
  12. package/schema/snootobuf.devenv.lock +1390 -91
  13. package/schema/snootobuf.lock +1394 -91
  14. package/schema/snootobuf.redditapi.lock +1386 -91
  15. package/schema/snootobuf.ts.lock +1392 -91
  16. package/types/devvit/actor/webbit/webbit.d.ts +131 -0
  17. package/types/devvit/actor/webbit/webbit.d.ts.map +1 -0
  18. package/types/devvit/actor/webbit/webbit.js +485 -0
  19. package/types/devvit/actor/webbit/webbit.twirp-client.d.ts +19 -0
  20. package/types/devvit/actor/webbit/webbit.twirp-client.d.ts.map +1 -0
  21. package/types/devvit/actor/webbit/webbit.twirp-client.js +23 -0
  22. package/types/devvit/actor/webbit/webbit.twirp.d.ts +12 -0
  23. package/types/devvit/actor/webbit/webbit.twirp.d.ts.map +1 -0
  24. package/types/devvit/actor/webbit/webbit.twirp.js +88 -0
  25. package/types/devvit/dev_portal/nutrition/nutrition.d.ts +2 -0
  26. package/types/devvit/dev_portal/nutrition/nutrition.d.ts.map +1 -1
  27. package/types/devvit/dev_portal/nutrition/nutrition.js +7 -0
  28. package/types/devvit/plugin/useractions/useractions.d.ts +576 -0
  29. package/types/devvit/plugin/useractions/useractions.d.ts.map +1 -0
  30. package/types/devvit/plugin/useractions/useractions.js +66 -0
  31. package/types/devvit/plugin/useractions/useractions.twirp-client.d.ts +25 -0
  32. package/types/devvit/plugin/useractions/useractions.twirp-client.d.ts.map +1 -0
  33. package/types/devvit/plugin/useractions/useractions.twirp-client.js +47 -0
  34. package/types/devvit/plugin/useractions/useractions.twirp.d.ts +16 -0
  35. package/types/devvit/plugin/useractions/useractions.twirp.d.ts.map +1 -0
  36. package/types/devvit/plugin/useractions/useractions.twirp.js +222 -0
  37. package/types/devvit/ui/effects/web_view/v1alpha/post_message.d.ts +29 -0
  38. package/types/devvit/ui/effects/web_view/v1alpha/post_message.d.ts.map +1 -1
  39. package/types/devvit/ui/effects/web_view/v1alpha/post_message.js +108 -0
@@ -0,0 +1,88 @@
1
+ import { TwirpServer, TwirpError, TwirpErrorCode, TwirpContentType, chainInterceptors, } from 'twirp-ts';
2
+ import { WebbitHttpRequest, WebbitHttpResponse } from './webbit.js';
3
+ export var WebbitServerMethod;
4
+ (function (WebbitServerMethod) {
5
+ WebbitServerMethod["Request"] = "Request";
6
+ })(WebbitServerMethod || (WebbitServerMethod = {}));
7
+ export const WebbitServerMethodList = [WebbitServerMethod.Request];
8
+ export function createWebbitServerServer(service) {
9
+ return new TwirpServer({
10
+ service,
11
+ packageName: 'devvit.actor.webbit',
12
+ serviceName: 'WebbitServer',
13
+ methodList: WebbitServerMethodList,
14
+ matchRoute: matchWebbitServerRoute,
15
+ });
16
+ }
17
+ function matchWebbitServerRoute(method, events) {
18
+ switch (method) {
19
+ case 'Request':
20
+ return async (ctx, service, data, interceptors) => {
21
+ ctx = { ...ctx, methodName: 'Request' };
22
+ await events.onMatch(ctx);
23
+ return handleWebbitServerRequestRequest(ctx, service, data, interceptors);
24
+ };
25
+ default:
26
+ events.onNotFound();
27
+ const msg = `no handler found`;
28
+ throw new TwirpError(TwirpErrorCode.BadRoute, msg);
29
+ }
30
+ }
31
+ function handleWebbitServerRequestRequest(ctx, service, data, interceptors) {
32
+ switch (ctx.contentType) {
33
+ case TwirpContentType.JSON:
34
+ return handleWebbitServerRequestJSON(ctx, service, data, interceptors);
35
+ case TwirpContentType.Protobuf:
36
+ return handleWebbitServerRequestProtobuf(ctx, service, data, interceptors);
37
+ default:
38
+ const msg = 'unexpected Content-Type';
39
+ throw new TwirpError(TwirpErrorCode.BadRoute, msg);
40
+ }
41
+ }
42
+ async function handleWebbitServerRequestJSON(ctx, service, data, interceptors) {
43
+ let request;
44
+ let response;
45
+ try {
46
+ const body = JSON.parse(data.toString() || '{}');
47
+ request = WebbitHttpRequest.fromJSON(body);
48
+ }
49
+ catch (e) {
50
+ if (e instanceof Error) {
51
+ const msg = 'the json request could not be decoded';
52
+ throw new TwirpError(TwirpErrorCode.Malformed, msg).withCause(e, true);
53
+ }
54
+ }
55
+ if (interceptors && interceptors.length > 0) {
56
+ const interceptor = chainInterceptors(...interceptors);
57
+ response = await interceptor(ctx, request, (ctx, inputReq) => {
58
+ return service.Request(ctx, inputReq);
59
+ });
60
+ }
61
+ else {
62
+ response = await service.Request(ctx, request);
63
+ }
64
+ return JSON.stringify(WebbitHttpResponse.toJSON(response));
65
+ }
66
+ async function handleWebbitServerRequestProtobuf(ctx, service, data, interceptors) {
67
+ let request;
68
+ let response;
69
+ try {
70
+ request = WebbitHttpRequest.decode(data);
71
+ }
72
+ catch (e) {
73
+ if (e instanceof Error) {
74
+ const msg = 'the protobuf request could not be decoded';
75
+ throw new TwirpError(TwirpErrorCode.Malformed, msg).withCause(e, true);
76
+ }
77
+ }
78
+ if (interceptors && interceptors.length > 0) {
79
+ const interceptor = chainInterceptors(...interceptors);
80
+ response = await interceptor(ctx, request, (ctx, inputReq) => {
81
+ return service.Request(ctx, inputReq);
82
+ });
83
+ }
84
+ else {
85
+ response = await service.Request(ctx, request);
86
+ }
87
+ return Buffer.from(WebbitHttpResponse.encode(response).finish());
88
+ }
@@ -58,6 +58,8 @@ export declare enum NutritionCategory {
58
58
  * Note: CUSTOM_POST is a subset of UI: if CUSTOM_POST is set then UI is set also.
59
59
  */
60
60
  CUSTOM_POST = 13,
61
+ /** USER_ACTIONS - App may call Reddit APIs on behalf of the User. */
62
+ USER_ACTIONS = 14,
61
63
  UNRECOGNIZED = -1
62
64
  }
63
65
  export declare function nutritionCategoryFromJSON(object: any): NutritionCategory;
@@ -1 +1 @@
1
- {"version":3,"file":"nutrition.d.ts","sourceRoot":"","sources":["../../../../../src/types/devvit/dev_portal/nutrition/nutrition.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,GAAG,MAAM,uBAAuB,CAAC;AAGxC;;;;;;;;;;;;GAYG;AACH,oBAAY,iBAAiB;IAC3B,6DAA6D;IAC7D,aAAa,IAAI;IACjB,iEAAiE;IACjE,YAAY,IAAI;IAChB,8DAA8D;IAC9D,MAAM,IAAI;IACV,kEAAkE;IAClE,IAAI,IAAI;IACR,yEAAyE;IACzE,IAAI,IAAI;IACR;;;OAGG;IACH,MAAM,IAAI;IACV,kFAAkF;IAClF,UAAU,IAAI;IACd;;;OAGG;IACH,eAAe,IAAI;IACnB,+DAA+D;IAC/D,SAAS,IAAI;IACb;;;OAGG;IACH,EAAE,IAAI;IACN,4FAA4F;IAC5F,SAAS,KAAK;IACd,uFAAuF;IACvF,OAAO,KAAK;IACZ,yDAAyD;IACzD,QAAQ,KAAK;IACb;;;OAGG;IACH,WAAW,KAAK;IAChB,YAAY,KAAK;CAClB;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,GAAG,GAAG,iBAAiB,CAiDxE;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAkCzE;AAED,MAAM,WAAW,gCAAgC;IAC/C,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9B;AAED,MAAM,WAAW,2BAA2B;IAC1C,UAAU,EAAE,iBAAiB,EAAE,CAAC;CACjC;AAMD,eAAO,MAAM,gCAAgC;;oBAG3B,gCAAgC,WAAU,IAAI,MAAM,GAAyB,IAAI,MAAM;kBAUzF,IAAI,MAAM,GAAG,UAAU,WAAW,MAAM,GAAG,gCAAgC;qBA8BxE,GAAG,GAAG,gCAAgC;oBAOvC,gCAAgC,GAAG,OAAO;kBAW5C,YAAY,gCAAgC,CAAC,GAAG,gCAAgC;wBAG1E,YAAY,gCAAgC,CAAC,GAAG,gCAAgC;CAMrG,CAAC;AAQF,eAAO,MAAM,2BAA2B;;oBAGtB,2BAA2B,WAAU,IAAI,MAAM,GAAyB,IAAI,MAAM;kBASpF,IAAI,MAAM,GAAG,UAAU,WAAW,MAAM,GAAG,2BAA2B;qBAiCnE,GAAG,GAAG,2BAA2B;oBAQlC,2BAA2B,GAAG,OAAO;kBAQvC,YAAY,2BAA2B,CAAC,GAAG,2BAA2B;wBAGhE,YAAY,2BAA2B,CAAC,GAAG,2BAA2B;CAK3F,CAAC;AAIF,KAAK,OAAO,GAAG,IAAI,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;AAEpF,KAAK,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,CAAC,GACvC,CAAC,SAAS,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GACtE,CAAC,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAChE,CAAC,SAAS,EAAE,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GACrD,OAAO,CAAC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"nutrition.d.ts","sourceRoot":"","sources":["../../../../../src/types/devvit/dev_portal/nutrition/nutrition.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,GAAG,MAAM,uBAAuB,CAAC;AAGxC;;;;;;;;;;;;GAYG;AACH,oBAAY,iBAAiB;IAC3B,6DAA6D;IAC7D,aAAa,IAAI;IACjB,iEAAiE;IACjE,YAAY,IAAI;IAChB,8DAA8D;IAC9D,MAAM,IAAI;IACV,kEAAkE;IAClE,IAAI,IAAI;IACR,yEAAyE;IACzE,IAAI,IAAI;IACR;;;OAGG;IACH,MAAM,IAAI;IACV,kFAAkF;IAClF,UAAU,IAAI;IACd;;;OAGG;IACH,eAAe,IAAI;IACnB,+DAA+D;IAC/D,SAAS,IAAI;IACb;;;OAGG;IACH,EAAE,IAAI;IACN,4FAA4F;IAC5F,SAAS,KAAK;IACd,uFAAuF;IACvF,OAAO,KAAK;IACZ,yDAAyD;IACzD,QAAQ,KAAK;IACb;;;OAGG;IACH,WAAW,KAAK;IAChB,qEAAqE;IACrE,YAAY,KAAK;IACjB,YAAY,KAAK;CAClB;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,GAAG,GAAG,iBAAiB,CAoDxE;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAoCzE;AAED,MAAM,WAAW,gCAAgC;IAC/C,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9B;AAED,MAAM,WAAW,2BAA2B;IAC1C,UAAU,EAAE,iBAAiB,EAAE,CAAC;CACjC;AAMD,eAAO,MAAM,gCAAgC;;oBAG3B,gCAAgC,WAAU,IAAI,MAAM,GAAyB,IAAI,MAAM;kBAUzF,IAAI,MAAM,GAAG,UAAU,WAAW,MAAM,GAAG,gCAAgC;qBA8BxE,GAAG,GAAG,gCAAgC;oBAOvC,gCAAgC,GAAG,OAAO;kBAW5C,YAAY,gCAAgC,CAAC,GAAG,gCAAgC;wBAG1E,YAAY,gCAAgC,CAAC,GAAG,gCAAgC;CAMrG,CAAC;AAQF,eAAO,MAAM,2BAA2B;;oBAGtB,2BAA2B,WAAU,IAAI,MAAM,GAAyB,IAAI,MAAM;kBASpF,IAAI,MAAM,GAAG,UAAU,WAAW,MAAM,GAAG,2BAA2B;qBAiCnE,GAAG,GAAG,2BAA2B;oBAQlC,2BAA2B,GAAG,OAAO;kBAQvC,YAAY,2BAA2B,CAAC,GAAG,2BAA2B;wBAGhE,YAAY,2BAA2B,CAAC,GAAG,2BAA2B;CAK3F,CAAC;AAIF,KAAK,OAAO,GAAG,IAAI,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;AAEpF,KAAK,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,CAAC,GACvC,CAAC,SAAS,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GACtE,CAAC,SAAS,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAChE,CAAC,SAAS,EAAE,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GACrD,OAAO,CAAC,CAAC,CAAC,CAAC"}
@@ -61,6 +61,8 @@ export var NutritionCategory;
61
61
  * Note: CUSTOM_POST is a subset of UI: if CUSTOM_POST is set then UI is set also.
62
62
  */
63
63
  NutritionCategory[NutritionCategory["CUSTOM_POST"] = 13] = "CUSTOM_POST";
64
+ /** USER_ACTIONS - App may call Reddit APIs on behalf of the User. */
65
+ NutritionCategory[NutritionCategory["USER_ACTIONS"] = 14] = "USER_ACTIONS";
64
66
  NutritionCategory[NutritionCategory["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
65
67
  })(NutritionCategory || (NutritionCategory = {}));
66
68
  export function nutritionCategoryFromJSON(object) {
@@ -107,6 +109,9 @@ export function nutritionCategoryFromJSON(object) {
107
109
  case 13:
108
110
  case "CUSTOM_POST":
109
111
  return NutritionCategory.CUSTOM_POST;
112
+ case 14:
113
+ case "USER_ACTIONS":
114
+ return NutritionCategory.USER_ACTIONS;
110
115
  case -1:
111
116
  case "UNRECOGNIZED":
112
117
  default:
@@ -143,6 +148,8 @@ export function nutritionCategoryToJSON(object) {
143
148
  return 12;
144
149
  case NutritionCategory.CUSTOM_POST:
145
150
  return 13;
151
+ case NutritionCategory.USER_ACTIONS:
152
+ return 14;
146
153
  case NutritionCategory.UNRECOGNIZED:
147
154
  default:
148
155
  return -1;