@devvit/public-api 0.10.21-next-2024-05-17-3085e1307.0 → 0.10.21-next-2024-05-17-f326cdddc.0
Sign up to get free protection for your applications and to get access to all the features.
- package/devvit/internals/blocks/handler/BlocksHandler.d.ts.map +1 -1
- package/devvit/internals/blocks/handler/BlocksHandler.js +32 -4
- package/devvit/internals/blocks/handler/RenderContext.d.ts +2 -2
- package/devvit/internals/blocks/handler/RenderContext.d.ts.map +1 -1
- package/devvit/internals/blocks/handler/RenderContext.js +14 -3
- package/devvit/internals/blocks/handler/useAsync.d.ts.map +1 -1
- package/devvit/internals/blocks/handler/useAsync.js +4 -0
- package/index.d.ts +4 -0
- package/index.d.ts.map +1 -1
- package/index.js +4 -0
- package/meta.json +53 -9
- package/meta.min.json +58 -9
- package/package.json +5 -5
- package/public-api.d.ts +176 -154
- package/public-api.iife.js +178 -22
- package/public-api.min.js +5 -5
- package/public-api.min.js.map +4 -4
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"BlocksHandler.d.ts","sourceRoot":"","sources":["../../../../../src/devvit/internals/blocks/handler/BlocksHandler.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAK7F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAe,IAAI,EAAE,UAAU,EAAE,WAAW,EAAS,MAAM,YAAY,CAAC;
|
1
|
+
{"version":3,"file":"BlocksHandler.d.ts","sourceRoot":"","sources":["../../../../../src/devvit/internals/blocks/handler/BlocksHandler.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAK7F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAe,IAAI,EAAE,UAAU,EAAE,WAAW,EAAS,MAAM,YAAY,CAAC;AAIpF;;;;;;GAMG;AACH,eAAO,IAAI,oBAAoB,EAAE,aAAa,GAAG,IAAW,CAAC;AAE7D,wBAAgB,gBAAgB,IAAI,aAAa,CAKhD;AAED,wBAAgB,WAAW,IAAI,OAAO,CAErC;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,IAAI,EACzC,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,CAAC,GAChC,CAAC,CAgCH;AAED,eAAO,IAAI,oBAAoB,EAAE,aAAa,GAAG,IAAW,CAAC;AAE7D;;;;GAIG;AACH,qBAAa,aAAa;;IAIxB,oBAAoB,EAAE,aAAa,GAAG,IAAI,CAAQ;gBAEtC,IAAI,EAAE,GAAG,CAAC,iBAAiB;IAMjC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;CA+S3E"}
|
@@ -14,6 +14,7 @@ import { BlocksTransformer } from '../BlocksTransformer.js';
|
|
14
14
|
import { ContextBuilder } from './ContextBuilder.js';
|
15
15
|
import { RenderContext } from './RenderContext.js';
|
16
16
|
import { RenderInterruptError } from './types.js';
|
17
|
+
import isEqual from 'lodash.isequal';
|
17
18
|
/**
|
18
19
|
* This can be a global/singleton because render is synchronous.
|
19
20
|
*
|
@@ -88,6 +89,7 @@ export class BlocksHandler {
|
|
88
89
|
_BlocksHandler_contextBuilder.set(this, new ContextBuilder());
|
89
90
|
_BlocksHandler_blocksTransformer.set(this, new BlocksTransformer());
|
90
91
|
this._latestRenderContext = null;
|
92
|
+
console.log('BlocksHandler v1');
|
91
93
|
__classPrivateFieldSet(this, _BlocksHandler_root, root, "f");
|
92
94
|
_latestBlocksHandler = this;
|
93
95
|
}
|
@@ -140,6 +142,7 @@ export class BlocksHandler {
|
|
140
142
|
}
|
141
143
|
}
|
142
144
|
catch (e) {
|
145
|
+
console.debug('caught in handler', e);
|
143
146
|
/**
|
144
147
|
* If we have a progress, we can recover from an error by rolling back to the last progress, and then letting the
|
145
148
|
* remaining events be reprocessed.
|
@@ -148,35 +151,39 @@ export class BlocksHandler {
|
|
148
151
|
context._state = progress._state;
|
149
152
|
context._changed = changed;
|
150
153
|
context._effects = progress._effects;
|
151
|
-
remaining.
|
152
|
-
// e.retry = true;
|
154
|
+
const requeueable = remaining.map((e) => {
|
153
155
|
const requeueEvent = { ...e };
|
154
156
|
requeueEvent.retry = true;
|
155
|
-
|
157
|
+
return requeueEvent;
|
156
158
|
});
|
159
|
+
context.addToRequeueEvents(...requeueable);
|
157
160
|
break;
|
158
161
|
}
|
159
162
|
else {
|
160
163
|
throw e;
|
161
164
|
}
|
162
165
|
}
|
166
|
+
console.debug('remaining events', context._requeueEvents);
|
163
167
|
const remainingRequeueEvents = [];
|
164
168
|
for (const event of context._requeueEvents) {
|
165
169
|
if (!isMainQueue && !event.async) {
|
170
|
+
console.debug('NOT reprocessing event in BlocksHandler, sync mismatch A', event);
|
166
171
|
// We're async, this is a main queue event. We need to send it back to the platform to let
|
167
172
|
// the platform synchronize it.
|
168
173
|
remainingRequeueEvents.push(event);
|
169
174
|
continue;
|
170
175
|
}
|
171
176
|
if (isMainQueue && event.async && !isBlockingSSR) {
|
177
|
+
console.debug('NOT reprocessing event in BlocksHandler, sync mismatch B', event);
|
172
178
|
// We're main queue, and this is an async event. We're not in SSR mode, so let's prioritize
|
173
179
|
// returning control quickly to the platform so we don't block event loops.
|
174
180
|
remainingRequeueEvents.push(event);
|
175
181
|
continue;
|
176
182
|
}
|
183
|
+
console.debug('reprocessing event in BlocksHandler', event);
|
177
184
|
eventsToProcess.push(event);
|
178
185
|
}
|
179
|
-
context._requeueEvents = remainingRequeueEvents;
|
186
|
+
context._requeueEvents = remainingRequeueEvents; //
|
180
187
|
/**
|
181
188
|
* If we're going back through this again, we need to capture the progress, and the remaining events.
|
182
189
|
*/
|
@@ -190,8 +197,26 @@ export class BlocksHandler {
|
|
190
197
|
}
|
191
198
|
} // End of while loop
|
192
199
|
if (isMainQueue) {
|
200
|
+
const stateCopy = _structuredClone(context._state);
|
201
|
+
const eventsCopy = [...context._requeueEvents];
|
202
|
+
const effectsCopy = { ...context._effects };
|
193
203
|
// Rendering only happens on the main queue.
|
194
204
|
const tags = __classPrivateFieldGet(this, _BlocksHandler_instances, "m", _BlocksHandler_renderRoot).call(this, __classPrivateFieldGet(this, _BlocksHandler_root, "f"), context._rootProps ?? {}, context);
|
205
|
+
/**
|
206
|
+
* It's technically ok for renderRoot to mutate, but that's only in the context of loadHooks. This render should
|
207
|
+
* be idempotent, so we're going to enforce that it doesn't mutate state.
|
208
|
+
*
|
209
|
+
* TODO: hide this behind a flag, because it's possibly expensive.
|
210
|
+
*/
|
211
|
+
if (!isEqual(context._state, stateCopy)) {
|
212
|
+
console.error('State was mutated during rendering', context._state, stateCopy);
|
213
|
+
}
|
214
|
+
if (!isEqual(context._requeueEvents, eventsCopy)) {
|
215
|
+
console.error('Events were mutated during rendering', context._requeueEvents, eventsCopy);
|
216
|
+
}
|
217
|
+
if (!isEqual(context._effects, effectsCopy)) {
|
218
|
+
console.error('Effects were mutated during rendering', context._effects, effectsCopy);
|
219
|
+
}
|
195
220
|
if (tags) {
|
196
221
|
blocks = await __classPrivateFieldGet(this, _BlocksHandler_blocksTransformer, "f").createBlocksElementOrThrow(tags);
|
197
222
|
blocks = await __classPrivateFieldGet(this, _BlocksHandler_blocksTransformer, "f").ensureRootBlock(blocks);
|
@@ -240,7 +265,10 @@ async function _BlocksHandler_handleAsyncQueues(context, ...batch) {
|
|
240
265
|
__classPrivateFieldGet(this, _BlocksHandler_instances, "m", _BlocksHandler_loadHooks).call(this, context, event);
|
241
266
|
await __classPrivateFieldGet(this, _BlocksHandler_instances, "m", _BlocksHandler_attemptHook).call(this, context, event);
|
242
267
|
}
|
268
|
+
// TODO: Decide whether this is excessive. It doesn't hurt anything besides performance.
|
269
|
+
__classPrivateFieldGet(this, _BlocksHandler_instances, "m", _BlocksHandler_loadHooks).call(this, context);
|
243
270
|
}, _BlocksHandler_renderRoot = function _BlocksHandler_renderRoot(component, props, context) {
|
271
|
+
console.debug('renderRoot');
|
244
272
|
context._generated = {};
|
245
273
|
_activeRenderContext = context;
|
246
274
|
this._latestRenderContext = context;
|
@@ -61,9 +61,9 @@ export declare class RenderContext implements EffectEmitter {
|
|
61
61
|
handleUndeliveredEvent(ev: UIEvent): Promise<Effect[] | void>;
|
62
62
|
emitEffect(dedupeKey: string, effect: Effect): void;
|
63
63
|
/**
|
64
|
-
* Adds event that will re-enter the dispatcher queue
|
64
|
+
* Adds event that will re-enter the dispatcher queue.
|
65
65
|
*/
|
66
|
-
addToRequeueEvents(
|
66
|
+
addToRequeueEvents(...events: UIEvent[]): void;
|
67
67
|
get effects(): Effect[];
|
68
68
|
nextHookId(options: HookSegment): string;
|
69
69
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"RenderContext.d.ts","sourceRoot":"","sources":["../../../../../src/devvit/internals/blocks/handler/RenderContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAExF;;;;;;;;;GASG;AACH,qBAAa,aAAc,YAAW,aAAa;;IA2B9B,OAAO,EAAE,SAAS;IAzBrC,SAAS,EAAE,CAAC,WAAW,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,CAAM;IACnD,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAM;IACrC,WAAW,EAAE,MAAM,CAAM;IACzB,QAAQ,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAM;IACzC,QAAQ,EAAE;QAAE,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAM;IAC1C,qDAAqD;IACrD,cAAc,EAAE,OAAO,EAAE,CAAM;IAE/B,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAM;IACxC,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAM;IAC5C,MAAM,CAAC,0BAA0B,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;KAAE,CAAM;IACxE,oBAAoB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;KAAE,CAAM;IAC3D,cAAc,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IAEhC,IAAI,aAAa,IAAI,MAAM,CAAC,OAAO,CAKlC;IAED,IAAI,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAExC;gBAEkB,OAAO,EAAE,SAAS;IAKrC,0CAA0C;IAC1C,IAAI,aAAa,IAAI,WAAW,CAI/B;IAED,iCAAiC;IACjC,IAAI,MAAM,IAAI,WAAW,CAExB;IAED,4DAA4D;IAC5D,IAAI,MAAM,CAAC,KAAK,EAAE,WAAW,EAG5B;IAED,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAIhC,GAAG,IAAI,IAAI;IAIX,0BAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAInE,gCAAgC,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAIzE,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAI3B,MAAM,CAAC,gCAAgC,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAI1E,sBAAsB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAUnE,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAInD;;OAEG;IACH,kBAAkB,CAAC,
|
1
|
+
{"version":3,"file":"RenderContext.d.ts","sourceRoot":"","sources":["../../../../../src/devvit/internals/blocks/handler/RenderContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAExF;;;;;;;;;GASG;AACH,qBAAa,aAAc,YAAW,aAAa;;IA2B9B,OAAO,EAAE,SAAS;IAzBrC,SAAS,EAAE,CAAC,WAAW,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,CAAM;IACnD,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAM;IACrC,WAAW,EAAE,MAAM,CAAM;IACzB,QAAQ,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAM;IACzC,QAAQ,EAAE;QAAE,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAM;IAC1C,qDAAqD;IACrD,cAAc,EAAE,OAAO,EAAE,CAAM;IAE/B,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAM;IACxC,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAM;IAC5C,MAAM,CAAC,0BAA0B,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;KAAE,CAAM;IACxE,oBAAoB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;KAAE,CAAM;IAC3D,cAAc,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IAEhC,IAAI,aAAa,IAAI,MAAM,CAAC,OAAO,CAKlC;IAED,IAAI,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAExC;gBAEkB,OAAO,EAAE,SAAS;IAKrC,0CAA0C;IAC1C,IAAI,aAAa,IAAI,WAAW,CAI/B;IAED,iCAAiC;IACjC,IAAI,MAAM,IAAI,WAAW,CAExB;IAED,4DAA4D;IAC5D,IAAI,MAAM,CAAC,KAAK,EAAE,WAAW,EAG5B;IAED,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAIhC,GAAG,IAAI,IAAI;IAIX,0BAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAInE,gCAAgC,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAIzE,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAI3B,MAAM,CAAC,gCAAgC,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAI1E,sBAAsB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAUnE,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAInD;;OAEG;IACH,kBAAkB,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI;IAmB9C,IAAI,OAAO,IAAI,MAAM,EAAE,CAEtB;IAED,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM;CA0CzC"}
|
@@ -94,10 +94,21 @@ export class RenderContext {
|
|
94
94
|
this._effects[dedupeKey] = effect;
|
95
95
|
}
|
96
96
|
/**
|
97
|
-
* Adds event that will re-enter the dispatcher queue
|
97
|
+
* Adds event that will re-enter the dispatcher queue.
|
98
98
|
*/
|
99
|
-
addToRequeueEvents(
|
100
|
-
|
99
|
+
addToRequeueEvents(...events) {
|
100
|
+
console.debug('requeueing events', events);
|
101
|
+
const grouped = events.reduce((acc, event) => {
|
102
|
+
if (event.retry) {
|
103
|
+
acc.retry.push(event);
|
104
|
+
}
|
105
|
+
else {
|
106
|
+
acc.normal.push(event);
|
107
|
+
}
|
108
|
+
return acc;
|
109
|
+
}, { retry: [], normal: [] });
|
110
|
+
// We need to maintain the order of the events, so we need to add the retry events first
|
111
|
+
this._requeueEvents = [...grouped.retry, ...this._requeueEvents, ...grouped.normal];
|
101
112
|
}
|
102
113
|
get effects() {
|
103
114
|
return Object.values(this._effects);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useAsync.d.ts","sourceRoot":"","sources":["../../../../../src/devvit/internals/blocks/handler/useAsync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,KAAK,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;
|
1
|
+
{"version":3,"file":"useAsync.d.ts","sourceRoot":"","sources":["../../../../../src/devvit/internals/blocks/handler/useAsync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,KAAK,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAiF3F;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,CAAC,SAAS,SAAS,EAC1C,WAAW,EAAE,wBAAwB,CAAC,CAAC,CAAC,GACvC,cAAc,CAAC,CAAC,CAAC,CAMnB"}
|
@@ -16,6 +16,7 @@ class AsyncHook {
|
|
16
16
|
_AsyncHook_hookId.set(this, void 0);
|
17
17
|
_AsyncHook_initializer.set(this, void 0);
|
18
18
|
_AsyncHook_changed.set(this, void 0);
|
19
|
+
console.debug('useAsync v1');
|
19
20
|
this.state = { data: null, loading: false, error: null };
|
20
21
|
__classPrivateFieldSet(this, _AsyncHook_hookId, params.hookId, "f");
|
21
22
|
__classPrivateFieldSet(this, _AsyncHook_initializer, initializer, "f");
|
@@ -25,6 +26,7 @@ class AsyncHook {
|
|
25
26
|
* After we look at our state, we need to decide if we need to dispatch a request to load the data.
|
26
27
|
*/
|
27
28
|
onLoad(context) {
|
29
|
+
console.debug('async onLoad ', __classPrivateFieldGet(this, _AsyncHook_hookId, "f"), this.state);
|
28
30
|
if (this.state.data === null && this.state.error === null && this.state.loading === false) {
|
29
31
|
this.state.loading = true;
|
30
32
|
__classPrivateFieldGet(this, _AsyncHook_changed, "f").call(this);
|
@@ -33,6 +35,7 @@ class AsyncHook {
|
|
33
35
|
async: true,
|
34
36
|
asyncRequest: { requestId: __classPrivateFieldGet(this, _AsyncHook_hookId, "f") },
|
35
37
|
};
|
38
|
+
console.debug('onLoad requeue');
|
36
39
|
context.addToRequeueEvents(requeueEvent);
|
37
40
|
}
|
38
41
|
}
|
@@ -62,6 +65,7 @@ class AsyncHook {
|
|
62
65
|
asyncResponse: asyncResponse,
|
63
66
|
hook: __classPrivateFieldGet(this, _AsyncHook_hookId, "f"),
|
64
67
|
};
|
68
|
+
console.debug('onReq requeue');
|
65
69
|
context.addToRequeueEvents(requeueEvent);
|
66
70
|
}
|
67
71
|
else if (event.asyncResponse) {
|
package/index.d.ts
CHANGED
@@ -6,4 +6,8 @@ export { RichTextBuilder } from '@devvit/shared-types/richtext/RichTextBuilder.j
|
|
6
6
|
export * from './types/index.js';
|
7
7
|
export * from '@devvit/shared-types/json.js';
|
8
8
|
export * from './apis/ui/helpers/svg.js';
|
9
|
+
export { useAsync } from './devvit/internals/blocks/handler/useAsync.js';
|
10
|
+
export { useState, useAsyncState } from './devvit/internals/blocks/handler/useState.js';
|
11
|
+
export { useForm } from './devvit/internals/blocks/handler/useForm.js';
|
12
|
+
export { useInterval } from './devvit/internals/blocks/handler/useInterval.js';
|
9
13
|
//# sourceMappingURL=index.d.ts.map
|
package/index.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,CAAC;AAE5B,cAAc,+BAA+B,CAAC;AAC9C,YAAY,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACxE,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,kDAAkD,CAAC;AACnF,cAAc,kBAAkB,CAAC;AACjC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC"}
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,CAAC;AAE5B,cAAc,+BAA+B,CAAC;AAC9C,YAAY,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACxE,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,kDAAkD,CAAC;AACnF,cAAc,kBAAkB,CAAC;AACjC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,+CAA+C,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAC;AACxF,OAAO,EAAE,OAAO,EAAE,MAAM,8CAA8C,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,kDAAkD,CAAC"}
|
package/index.js
CHANGED
@@ -5,3 +5,7 @@ export { RichTextBuilder } from '@devvit/shared-types/richtext/RichTextBuilder.j
|
|
5
5
|
export * from './types/index.js';
|
6
6
|
export * from '@devvit/shared-types/json.js';
|
7
7
|
export * from './apis/ui/helpers/svg.js';
|
8
|
+
export { useAsync } from './devvit/internals/blocks/handler/useAsync.js';
|
9
|
+
export { useState, useAsyncState } from './devvit/internals/blocks/handler/useState.js';
|
10
|
+
export { useForm } from './devvit/internals/blocks/handler/useForm.js';
|
11
|
+
export { useInterval } from './devvit/internals/blocks/handler/useInterval.js';
|
package/meta.json
CHANGED
@@ -12580,7 +12580,7 @@
|
|
12580
12580
|
"format": "esm"
|
12581
12581
|
},
|
12582
12582
|
"src/devvit/internals/blocks/handler/RenderContext.ts": {
|
12583
|
-
"bytes":
|
12583
|
+
"bytes": 5300,
|
12584
12584
|
"imports": [
|
12585
12585
|
{
|
12586
12586
|
"path": "<runtime>",
|
@@ -12750,7 +12750,7 @@
|
|
12750
12750
|
"format": "esm"
|
12751
12751
|
},
|
12752
12752
|
"src/devvit/internals/blocks/handler/BlocksHandler.ts": {
|
12753
|
-
"bytes":
|
12753
|
+
"bytes": 14690,
|
12754
12754
|
"imports": [
|
12755
12755
|
{
|
12756
12756
|
"path": "@devvit/protos",
|
@@ -12777,6 +12777,11 @@
|
|
12777
12777
|
"kind": "import-statement",
|
12778
12778
|
"original": "./types.js"
|
12779
12779
|
},
|
12780
|
+
{
|
12781
|
+
"path": "../../node_modules/lodash.isequal/index.js",
|
12782
|
+
"kind": "import-statement",
|
12783
|
+
"original": "lodash.isequal"
|
12784
|
+
},
|
12780
12785
|
{
|
12781
12786
|
"path": "<runtime>",
|
12782
12787
|
"kind": "import-statement",
|
@@ -13573,8 +13578,24 @@
|
|
13573
13578
|
],
|
13574
13579
|
"format": "esm"
|
13575
13580
|
},
|
13581
|
+
"src/devvit/internals/blocks/handler/useAsync.ts": {
|
13582
|
+
"bytes": 3293,
|
13583
|
+
"imports": [
|
13584
|
+
{
|
13585
|
+
"path": "src/devvit/internals/blocks/handler/BlocksHandler.ts",
|
13586
|
+
"kind": "import-statement",
|
13587
|
+
"original": "./BlocksHandler.js"
|
13588
|
+
},
|
13589
|
+
{
|
13590
|
+
"path": "<runtime>",
|
13591
|
+
"kind": "import-statement",
|
13592
|
+
"external": true
|
13593
|
+
}
|
13594
|
+
],
|
13595
|
+
"format": "esm"
|
13596
|
+
},
|
13576
13597
|
"src/index.ts": {
|
13577
|
-
"bytes":
|
13598
|
+
"bytes": 707,
|
13578
13599
|
"imports": [
|
13579
13600
|
{
|
13580
13601
|
"path": "../../node_modules/core-js/web/url.js",
|
@@ -13610,6 +13631,26 @@
|
|
13610
13631
|
"path": "src/apis/ui/helpers/svg.ts",
|
13611
13632
|
"kind": "import-statement",
|
13612
13633
|
"original": "./apis/ui/helpers/svg.js"
|
13634
|
+
},
|
13635
|
+
{
|
13636
|
+
"path": "src/devvit/internals/blocks/handler/useAsync.ts",
|
13637
|
+
"kind": "import-statement",
|
13638
|
+
"original": "./devvit/internals/blocks/handler/useAsync.js"
|
13639
|
+
},
|
13640
|
+
{
|
13641
|
+
"path": "src/devvit/internals/blocks/handler/useState.ts",
|
13642
|
+
"kind": "import-statement",
|
13643
|
+
"original": "./devvit/internals/blocks/handler/useState.js"
|
13644
|
+
},
|
13645
|
+
{
|
13646
|
+
"path": "src/devvit/internals/blocks/handler/useForm.ts",
|
13647
|
+
"kind": "import-statement",
|
13648
|
+
"original": "./devvit/internals/blocks/handler/useForm.js"
|
13649
|
+
},
|
13650
|
+
{
|
13651
|
+
"path": "src/devvit/internals/blocks/handler/useInterval.ts",
|
13652
|
+
"kind": "import-statement",
|
13653
|
+
"original": "./devvit/internals/blocks/handler/useInterval.js"
|
13613
13654
|
}
|
13614
13655
|
],
|
13615
13656
|
"format": "esm"
|
@@ -14039,7 +14080,7 @@
|
|
14039
14080
|
"bytesInOutput": 3912
|
14040
14081
|
},
|
14041
14082
|
"src/index.ts": {
|
14042
|
-
"bytesInOutput":
|
14083
|
+
"bytesInOutput": 1826
|
14043
14084
|
},
|
14044
14085
|
"../shared-types/dist/NonNull.js": {
|
14045
14086
|
"bytesInOutput": 118
|
@@ -14648,13 +14689,13 @@
|
|
14648
14689
|
"bytesInOutput": 56
|
14649
14690
|
},
|
14650
14691
|
"src/devvit/internals/blocks/handler/useState.ts": {
|
14651
|
-
"bytesInOutput":
|
14692
|
+
"bytesInOutput": 2196
|
14652
14693
|
},
|
14653
14694
|
"src/devvit/internals/blocks/handler/RenderContext.ts": {
|
14654
|
-
"bytesInOutput":
|
14695
|
+
"bytesInOutput": 4052
|
14655
14696
|
},
|
14656
14697
|
"src/devvit/internals/blocks/handler/useInterval.ts": {
|
14657
|
-
"bytesInOutput":
|
14698
|
+
"bytesInOutput": 2331
|
14658
14699
|
},
|
14659
14700
|
"src/devvit/internals/blocks/handler/useForm.ts": {
|
14660
14701
|
"bytesInOutput": 915
|
@@ -14666,7 +14707,7 @@
|
|
14666
14707
|
"bytesInOutput": 1372
|
14667
14708
|
},
|
14668
14709
|
"src/devvit/internals/blocks/handler/BlocksHandler.ts": {
|
14669
|
-
"bytesInOutput":
|
14710
|
+
"bytesInOutput": 12262
|
14670
14711
|
},
|
14671
14712
|
"src/devvit/internals/ui-request-handler.ts": {
|
14672
14713
|
"bytesInOutput": 618
|
@@ -14748,9 +14789,12 @@
|
|
14748
14789
|
},
|
14749
14790
|
"src/apis/ui/helpers/svg.ts": {
|
14750
14791
|
"bytesInOutput": 370
|
14792
|
+
},
|
14793
|
+
"src/devvit/internals/blocks/handler/useAsync.ts": {
|
14794
|
+
"bytesInOutput": 2583
|
14751
14795
|
}
|
14752
14796
|
},
|
14753
|
-
"bytes":
|
14797
|
+
"bytes": 14830913
|
14754
14798
|
}
|
14755
14799
|
}
|
14756
14800
|
}
|
package/meta.min.json
CHANGED
@@ -3496,7 +3496,7 @@
|
|
3496
3496
|
"format": "esm"
|
3497
3497
|
},
|
3498
3498
|
"src/devvit/internals/blocks/handler/RenderContext.ts": {
|
3499
|
-
"bytes":
|
3499
|
+
"bytes": 5300,
|
3500
3500
|
"imports": [
|
3501
3501
|
{
|
3502
3502
|
"path": "<runtime>",
|
@@ -3666,7 +3666,7 @@
|
|
3666
3666
|
"format": "esm"
|
3667
3667
|
},
|
3668
3668
|
"src/devvit/internals/blocks/handler/BlocksHandler.ts": {
|
3669
|
-
"bytes":
|
3669
|
+
"bytes": 14690,
|
3670
3670
|
"imports": [
|
3671
3671
|
{
|
3672
3672
|
"path": "@devvit/protos",
|
@@ -3693,6 +3693,11 @@
|
|
3693
3693
|
"kind": "import-statement",
|
3694
3694
|
"original": "./types.js"
|
3695
3695
|
},
|
3696
|
+
{
|
3697
|
+
"path": "../../node_modules/lodash.isequal/index.js",
|
3698
|
+
"kind": "import-statement",
|
3699
|
+
"original": "lodash.isequal"
|
3700
|
+
},
|
3696
3701
|
{
|
3697
3702
|
"path": "<runtime>",
|
3698
3703
|
"kind": "import-statement",
|
@@ -4489,8 +4494,24 @@
|
|
4489
4494
|
],
|
4490
4495
|
"format": "esm"
|
4491
4496
|
},
|
4497
|
+
"src/devvit/internals/blocks/handler/useAsync.ts": {
|
4498
|
+
"bytes": 3293,
|
4499
|
+
"imports": [
|
4500
|
+
{
|
4501
|
+
"path": "src/devvit/internals/blocks/handler/BlocksHandler.ts",
|
4502
|
+
"kind": "import-statement",
|
4503
|
+
"original": "./BlocksHandler.js"
|
4504
|
+
},
|
4505
|
+
{
|
4506
|
+
"path": "<runtime>",
|
4507
|
+
"kind": "import-statement",
|
4508
|
+
"external": true
|
4509
|
+
}
|
4510
|
+
],
|
4511
|
+
"format": "esm"
|
4512
|
+
},
|
4492
4513
|
"src/index.ts": {
|
4493
|
-
"bytes":
|
4514
|
+
"bytes": 707,
|
4494
4515
|
"imports": [
|
4495
4516
|
{
|
4496
4517
|
"path": "../../node_modules/core-js/web/url.js",
|
@@ -4526,6 +4547,26 @@
|
|
4526
4547
|
"path": "src/apis/ui/helpers/svg.ts",
|
4527
4548
|
"kind": "import-statement",
|
4528
4549
|
"original": "./apis/ui/helpers/svg.js"
|
4550
|
+
},
|
4551
|
+
{
|
4552
|
+
"path": "src/devvit/internals/blocks/handler/useAsync.ts",
|
4553
|
+
"kind": "import-statement",
|
4554
|
+
"original": "./devvit/internals/blocks/handler/useAsync.js"
|
4555
|
+
},
|
4556
|
+
{
|
4557
|
+
"path": "src/devvit/internals/blocks/handler/useState.ts",
|
4558
|
+
"kind": "import-statement",
|
4559
|
+
"original": "./devvit/internals/blocks/handler/useState.js"
|
4560
|
+
},
|
4561
|
+
{
|
4562
|
+
"path": "src/devvit/internals/blocks/handler/useForm.ts",
|
4563
|
+
"kind": "import-statement",
|
4564
|
+
"original": "./devvit/internals/blocks/handler/useForm.js"
|
4565
|
+
},
|
4566
|
+
{
|
4567
|
+
"path": "src/devvit/internals/blocks/handler/useInterval.ts",
|
4568
|
+
"kind": "import-statement",
|
4569
|
+
"original": "./devvit/internals/blocks/handler/useInterval.js"
|
4529
4570
|
}
|
4530
4571
|
],
|
4531
4572
|
"format": "esm"
|
@@ -4536,7 +4577,7 @@
|
|
4536
4577
|
"imports": [],
|
4537
4578
|
"exports": [],
|
4538
4579
|
"inputs": {},
|
4539
|
-
"bytes":
|
4580
|
+
"bytes": 1117182
|
4540
4581
|
},
|
4541
4582
|
"dist/public-api.min.js": {
|
4542
4583
|
"imports": [
|
@@ -4685,7 +4726,12 @@
|
|
4685
4726
|
"getModerationLog",
|
4686
4727
|
"getVaultByAddress",
|
4687
4728
|
"getVaultByUserId",
|
4688
|
-
"svg"
|
4729
|
+
"svg",
|
4730
|
+
"useAsync",
|
4731
|
+
"useAsyncState",
|
4732
|
+
"useForm",
|
4733
|
+
"useInterval",
|
4734
|
+
"useState"
|
4689
4735
|
],
|
4690
4736
|
"entryPoint": "src/index.ts",
|
4691
4737
|
"inputs": {
|
@@ -5206,13 +5252,13 @@
|
|
5206
5252
|
"bytesInOutput": 29
|
5207
5253
|
},
|
5208
5254
|
"src/devvit/internals/blocks/handler/useState.ts": {
|
5209
|
-
"bytesInOutput":
|
5255
|
+
"bytesInOutput": 1077
|
5210
5256
|
},
|
5211
5257
|
"src/devvit/internals/blocks/handler/useInterval.ts": {
|
5212
5258
|
"bytesInOutput": 1174
|
5213
5259
|
},
|
5214
5260
|
"src/devvit/internals/blocks/handler/RenderContext.ts": {
|
5215
|
-
"bytesInOutput":
|
5261
|
+
"bytesInOutput": 1993
|
5216
5262
|
},
|
5217
5263
|
"src/devvit/internals/blocks/handler/UIClient.ts": {
|
5218
5264
|
"bytesInOutput": 974
|
@@ -5224,7 +5270,7 @@
|
|
5224
5270
|
"bytesInOutput": 496
|
5225
5271
|
},
|
5226
5272
|
"src/devvit/internals/blocks/handler/BlocksHandler.ts": {
|
5227
|
-
"bytesInOutput":
|
5273
|
+
"bytesInOutput": 5233
|
5228
5274
|
},
|
5229
5275
|
"src/apis/reddit/helpers/makeGettersEnumerable.ts": {
|
5230
5276
|
"bytesInOutput": 166
|
@@ -5300,9 +5346,12 @@
|
|
5300
5346
|
},
|
5301
5347
|
"src/apis/ui/helpers/svg.ts": {
|
5302
5348
|
"bytesInOutput": 178
|
5349
|
+
},
|
5350
|
+
"src/devvit/internals/blocks/handler/useAsync.ts": {
|
5351
|
+
"bytesInOutput": 1190
|
5303
5352
|
}
|
5304
5353
|
},
|
5305
|
-
"bytes":
|
5354
|
+
"bytes": 236916
|
5306
5355
|
}
|
5307
5356
|
}
|
5308
5357
|
}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@devvit/public-api",
|
3
|
-
"version": "0.10.21-next-2024-05-17-
|
3
|
+
"version": "0.10.21-next-2024-05-17-f326cdddc.0",
|
4
4
|
"license": "BSD-3-Clause",
|
5
5
|
"repository": {
|
6
6
|
"type": "git",
|
@@ -30,8 +30,8 @@
|
|
30
30
|
},
|
31
31
|
"types": "./index.d.ts",
|
32
32
|
"dependencies": {
|
33
|
-
"@devvit/protos": "0.10.21-next-2024-05-17-
|
34
|
-
"@devvit/shared-types": "0.10.21-next-2024-05-17-
|
33
|
+
"@devvit/protos": "0.10.21-next-2024-05-17-f326cdddc.0",
|
34
|
+
"@devvit/shared-types": "0.10.21-next-2024-05-17-f326cdddc.0",
|
35
35
|
"base64-js": "1.5.1",
|
36
36
|
"clone-deep": "4.0.1",
|
37
37
|
"core-js": "3.27.2",
|
@@ -41,7 +41,7 @@
|
|
41
41
|
"@ampproject/filesize": "4.3.0",
|
42
42
|
"@devvit/eslint-config": "0.10.20",
|
43
43
|
"@devvit/repo-tools": "0.10.20",
|
44
|
-
"@devvit/tsconfig": "0.10.21-next-2024-05-17-
|
44
|
+
"@devvit/tsconfig": "0.10.21-next-2024-05-17-f326cdddc.0",
|
45
45
|
"@microsoft/api-extractor": "7.41.0",
|
46
46
|
"@reddit/faceplate-ui": "11.1.0",
|
47
47
|
"@types/clone-deep": "4.0.1",
|
@@ -64,5 +64,5 @@
|
|
64
64
|
}
|
65
65
|
},
|
66
66
|
"source": "./src/index.ts",
|
67
|
-
"gitHead": "
|
67
|
+
"gitHead": "729ce044ff780938d1ec021564150a652801648e"
|
68
68
|
}
|