@devvit/ui-renderer 0.10.18-next-2024-04-02-ec08400a7.0 → 0.10.18-next-2024-04-02-5c4689479.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.
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import '@reddit/faceplate-ui/templateRenderingStrategy/clientStrategy.js';
|
|
2
2
|
import type { BlockAction, Effect, LinkedBundle, Metadata, RealtimeEvent, RenderPostResponse, Struct, UIEvent } from '@devvit/protos';
|
|
3
|
+
import { Dimensions } from '@devvit/protos';
|
|
3
4
|
import type { WorkerErrorType } from '@devvit/runtime-lite/client/BrowserLiteClient.js';
|
|
4
5
|
import type { ActorRef } from '@devvit/runtimes/common/runtime/ActorRef.js';
|
|
5
6
|
import type { FaceplateEvent } from '@reddit/faceplate/event-types.js';
|
|
@@ -70,6 +71,7 @@ export declare class DevvitCustomPost extends LitElement {
|
|
|
70
71
|
useExperimentalBlocks: boolean;
|
|
71
72
|
useSandbox: boolean;
|
|
72
73
|
renderResponse?: RenderPostResponse | undefined;
|
|
74
|
+
dimensions?: Dimensions;
|
|
73
75
|
private _blocksRenderer;
|
|
74
76
|
private _isSuspended;
|
|
75
77
|
private _rootBlock?;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"devvit-custom-post.d.ts","sourceRoot":"","sources":["../../library/src/client/devvit-custom-post.ts"],"names":[],"mappings":"AAAA,OAAO,kEAAkE,CAAC;AAE1E,OAAO,KAAK,EACV,WAAW,EAEX,MAAM,EACN,YAAY,EACZ,QAAQ,EACR,aAAa,EAEb,kBAAkB,EAClB,MAAM,EACN,OAAO,EACR,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"devvit-custom-post.d.ts","sourceRoot":"","sources":["../../library/src/client/devvit-custom-post.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,7 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
|
|
|
20
20
|
};
|
|
21
21
|
var _DevvitCustomPost_instances, _DevvitCustomPost_lastRequest, _DevvitCustomPost_looper, _DevvitCustomPost_rootHeight, _DevvitCustomPost_resizeObserver, _DevvitCustomPost_bubble, _DevvitCustomPost_newRenderContext, _DevvitCustomPost_onError, _DevvitCustomPost_onPluginCall, _DevvitCustomPost_onRenderPost, _DevvitCustomPost_onUserActionEffect, _DevvitCustomPost_onUserActionEvent;
|
|
22
22
|
import '@reddit/faceplate-ui/templateRenderingStrategy/clientStrategy.js';
|
|
23
|
-
import { Block, BlockConfig_Root, BlockRenderEventType, BlockStackDirection, RealtimeDefinition, } from '@devvit/protos';
|
|
23
|
+
import { Block, BlockConfig_Root, BlockRenderEventType, BlockStackDirection, RealtimeDefinition, Dimensions, } from '@devvit/protos';
|
|
24
24
|
import { isCircuitBreaker } from '@devvit/runtime-lite/types/CircuitBreaker.js';
|
|
25
25
|
import { throttle } from '@devvit/shared-types/throttle.js';
|
|
26
26
|
import { asT3ID } from '@devvit/shared-types/tid.js';
|
|
@@ -126,13 +126,7 @@ let DevvitCustomPost = class DevvitCustomPost extends LitElement {
|
|
|
126
126
|
const entry = entries[0];
|
|
127
127
|
const { contentRect: { width, height }, } = entry;
|
|
128
128
|
const scale = window.devicePixelRatio;
|
|
129
|
-
|
|
130
|
-
// update to date dimensions.
|
|
131
|
-
__classPrivateFieldGet(this, _DevvitCustomPost_looper, "f").dimensions = { width, height, scale };
|
|
132
|
-
// Ensure the initial update is handled inside of willUpdate
|
|
133
|
-
if (__classPrivateFieldGet(this, _DevvitCustomPost_looper, "f").rendered) {
|
|
134
|
-
__classPrivateFieldGet(this, _DevvitCustomPost_looper, "f").queueRenderPost(BlockRenderEventType.RENDER_USER_ACTION, undefined, {});
|
|
135
|
-
}
|
|
129
|
+
this.dimensions = { width, height, scale };
|
|
136
130
|
}, 600)), "f");
|
|
137
131
|
__classPrivateFieldGet(this, _DevvitCustomPost_resizeObserver, "f").observe(this, { box: 'content-box' });
|
|
138
132
|
}
|
|
@@ -168,6 +162,9 @@ let DevvitCustomPost = class DevvitCustomPost extends LitElement {
|
|
|
168
162
|
async willUpdate(props) {
|
|
169
163
|
__classPrivateFieldGet(this, _DevvitCustomPost_looper, "f").meta = this.metadata;
|
|
170
164
|
__classPrivateFieldGet(this, _DevvitCustomPost_looper, "f").postConfig = this.postConfig;
|
|
165
|
+
if (this.dimensions) {
|
|
166
|
+
__classPrivateFieldGet(this, _DevvitCustomPost_looper, "f").dimensions = this.dimensions;
|
|
167
|
+
}
|
|
171
168
|
if (props.has('postId')) {
|
|
172
169
|
__classPrivateFieldGet(this, _DevvitCustomPost_looper, "f").postID = this.postId ? asT3ID(this.postId) : undefined;
|
|
173
170
|
}
|
|
@@ -189,9 +186,15 @@ let DevvitCustomPost = class DevvitCustomPost extends LitElement {
|
|
|
189
186
|
__classPrivateFieldGet(this, _DevvitCustomPost_looper, "f").resetAppState();
|
|
190
187
|
}
|
|
191
188
|
}
|
|
189
|
+
// We always want to trigger at least one render if:
|
|
190
|
+
// 1. The app dimensions change
|
|
191
|
+
// 2. The bundle changes. Loading a bundle is lengthy and dimensions may have changed during a load
|
|
192
192
|
if (!__classPrivateFieldGet(this, _DevvitCustomPost_looper, "f").rendered) {
|
|
193
193
|
__classPrivateFieldGet(this, _DevvitCustomPost_looper, "f").queueRenderPost(BlockRenderEventType.RENDER_INITIAL, undefined, {});
|
|
194
194
|
}
|
|
195
|
+
else if (this.dimensions && (props.has('dimensions') || props.has('bundle'))) {
|
|
196
|
+
__classPrivateFieldGet(this, _DevvitCustomPost_looper, "f").queueRenderPost(BlockRenderEventType.RENDER_USER_ACTION, undefined, {});
|
|
197
|
+
}
|
|
195
198
|
}
|
|
196
199
|
};
|
|
197
200
|
_DevvitCustomPost_lastRequest = new WeakMap();
|
|
@@ -248,6 +251,10 @@ __decorate([
|
|
|
248
251
|
state(),
|
|
249
252
|
__metadata("design:type", Object)
|
|
250
253
|
], DevvitCustomPost.prototype, "renderResponse", void 0);
|
|
254
|
+
__decorate([
|
|
255
|
+
state(),
|
|
256
|
+
__metadata("design:type", Object)
|
|
257
|
+
], DevvitCustomPost.prototype, "dimensions", void 0);
|
|
251
258
|
__decorate([
|
|
252
259
|
query('devvit-blocks-renderer'),
|
|
253
260
|
__metadata("design:type", DevvitBlocksRenderer)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@devvit/ui-renderer",
|
|
3
|
-
"version": "0.10.18-next-2024-04-02-
|
|
3
|
+
"version": "0.10.18-next-2024-04-02-5c4689479.0",
|
|
4
4
|
"license": "BSD-3-Clause",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -55,10 +55,10 @@
|
|
|
55
55
|
},
|
|
56
56
|
"types": "./index.d.ts",
|
|
57
57
|
"dependencies": {
|
|
58
|
-
"@devvit/protos": "0.10.18-next-2024-04-02-
|
|
59
|
-
"@devvit/runtime-lite": "0.10.18-next-2024-04-02-
|
|
60
|
-
"@devvit/runtimes": "0.10.18-next-2024-04-02-
|
|
61
|
-
"@devvit/shared-types": "0.10.18-next-2024-04-02-
|
|
58
|
+
"@devvit/protos": "0.10.18-next-2024-04-02-5c4689479.0",
|
|
59
|
+
"@devvit/runtime-lite": "0.10.18-next-2024-04-02-5c4689479.0",
|
|
60
|
+
"@devvit/runtimes": "0.10.18-next-2024-04-02-5c4689479.0",
|
|
61
|
+
"@devvit/shared-types": "0.10.18-next-2024-04-02-5c4689479.0",
|
|
62
62
|
"@dotlottie/player-component": "2.7.2",
|
|
63
63
|
"p-queue": "7.3.4",
|
|
64
64
|
"rxjs": "7.8.1"
|
|
@@ -85,7 +85,7 @@
|
|
|
85
85
|
"devDependencies": {
|
|
86
86
|
"@devvit/eslint-config": "0.10.17",
|
|
87
87
|
"@devvit/repo-tools": "0.10.17",
|
|
88
|
-
"@devvit/tsconfig": "0.10.18-next-2024-04-02-
|
|
88
|
+
"@devvit/tsconfig": "0.10.18-next-2024-04-02-5c4689479.0",
|
|
89
89
|
"@lit-labs/ssr": "^2.2.3",
|
|
90
90
|
"@lit/localize": "0.11.4",
|
|
91
91
|
"@open-wc/testing-helpers": "2.3.0",
|
|
@@ -118,5 +118,5 @@
|
|
|
118
118
|
"directory": "dist"
|
|
119
119
|
},
|
|
120
120
|
"source": "./src/index.ts",
|
|
121
|
-
"gitHead": "
|
|
121
|
+
"gitHead": "9d0f6ba07909695aef3b67361ae682727abfaae7"
|
|
122
122
|
}
|