@lwc/ssr-runtime 9.2.1 → 9.3.4
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.
- package/dist/index.cjs +116 -10
- package/dist/index.d.ts +1 -0
- package/dist/index.js +116 -11
- package/dist/lightning-element.d.ts +2 -0
- package/dist/render.d.ts +2 -3
- package/dist/set-static-internals.d.ts +23 -0
- package/dist/wire.d.ts +1 -1
- package/package.json +5 -5
package/dist/index.cjs
CHANGED
|
@@ -680,7 +680,7 @@ function normalizeTabIndex(value) {
|
|
|
680
680
|
const shouldNormalize = value > 0 && typeof value !== 'boolean';
|
|
681
681
|
return shouldNormalize ? 0 : value;
|
|
682
682
|
}
|
|
683
|
-
/** version: 9.
|
|
683
|
+
/** version: 9.3.4 */
|
|
684
684
|
|
|
685
685
|
/**
|
|
686
686
|
* Copyright (c) 2026 Salesforce, Inc.
|
|
@@ -704,7 +704,7 @@ function normalizeTabIndex(value) {
|
|
|
704
704
|
* @param value
|
|
705
705
|
* @param msg
|
|
706
706
|
*/
|
|
707
|
-
/** version: 9.
|
|
707
|
+
/** version: 9.3.4 */
|
|
708
708
|
|
|
709
709
|
/*
|
|
710
710
|
* Copyright (c) 2023, salesforce.com, inc.
|
|
@@ -728,7 +728,7 @@ class SignalBaseClass {
|
|
|
728
728
|
}
|
|
729
729
|
}
|
|
730
730
|
}
|
|
731
|
-
/** version: 9.
|
|
731
|
+
/** version: 9.3.4 */
|
|
732
732
|
|
|
733
733
|
/**
|
|
734
734
|
* Copyright (c) 2026 Salesforce, Inc.
|
|
@@ -752,13 +752,11 @@ const features = {
|
|
|
752
752
|
ENABLE_LEGACY_SCOPE_TOKENS: null,
|
|
753
753
|
ENABLE_FORCE_SHADOW_MIGRATE_MODE: null,
|
|
754
754
|
ENABLE_EXPERIMENTAL_SIGNALS: null,
|
|
755
|
-
ENABLE_LEGACY_SIGNAL_CONTEXT_VALIDATION: null,
|
|
756
755
|
DISABLE_SYNTHETIC_SHADOW: null,
|
|
757
756
|
DISABLE_HOST_ATTACH_SHADOW_GUARD: null,
|
|
758
757
|
DISABLE_SCOPE_TOKEN_VALIDATION: null,
|
|
759
758
|
DISABLE_STRICT_VALIDATION: null,
|
|
760
759
|
DISABLE_DETACHED_REHYDRATION: null,
|
|
761
|
-
ENABLE_LEGACY_CONTEXT_CONNECTION: null,
|
|
762
760
|
};
|
|
763
761
|
if (!globalThis.lwcRuntimeFlags) {
|
|
764
762
|
Object.defineProperty(globalThis, 'lwcRuntimeFlags', { value: create(null) });
|
|
@@ -819,7 +817,7 @@ function setFeatureFlagForTest(name, value) {
|
|
|
819
817
|
setFeatureFlag(name, value);
|
|
820
818
|
}
|
|
821
819
|
}
|
|
822
|
-
/** version: 9.
|
|
820
|
+
/** version: 9.3.4 */
|
|
823
821
|
|
|
824
822
|
/*
|
|
825
823
|
* Copyright (c) 2024, Salesforce, Inc.
|
|
@@ -1945,16 +1943,16 @@ async function serverSideRenderComponent(tagName, Component, props = {}, styleDe
|
|
|
1945
1943
|
}
|
|
1946
1944
|
if (mode === 'asyncYield') {
|
|
1947
1945
|
let markup = '';
|
|
1948
|
-
for await (const segment of generateMarkup(tagName, props, null, null, null,
|
|
1946
|
+
for await (const segment of generateMarkup(tagName, props, null, null, null, renderContext, null, null, null)) {
|
|
1949
1947
|
markup += segment;
|
|
1950
1948
|
}
|
|
1951
1949
|
return markup;
|
|
1952
1950
|
}
|
|
1953
1951
|
else if (mode === 'async') {
|
|
1954
|
-
return await generateMarkup(tagName, props, null, null, null,
|
|
1952
|
+
return await generateMarkup(tagName, props, null, null, null, renderContext, null, null, null);
|
|
1955
1953
|
}
|
|
1956
1954
|
else if (mode === 'sync') {
|
|
1957
|
-
return generateMarkup(tagName, props, null, null, null,
|
|
1955
|
+
return generateMarkup(tagName, props, null, null, null, renderContext, null, null, null);
|
|
1958
1956
|
}
|
|
1959
1957
|
else {
|
|
1960
1958
|
throw new Error(`Invalid mode: ${mode}`);
|
|
@@ -2136,6 +2134,113 @@ function* toIteratorDirective(iterable) {
|
|
|
2136
2134
|
}
|
|
2137
2135
|
}
|
|
2138
2136
|
|
|
2137
|
+
/*
|
|
2138
|
+
* Copyright (c) 2026, Salesforce, Inc.
|
|
2139
|
+
* All rights reserved.
|
|
2140
|
+
* SPDX-License-Identifier: MIT
|
|
2141
|
+
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
2142
|
+
*/
|
|
2143
|
+
function connectWires(cmp, adapter, makeDataCallback, // generated
|
|
2144
|
+
getLiveConfig // generated
|
|
2145
|
+
) {
|
|
2146
|
+
// Callable adapters are expressed as a function having an 'adapter' property, which
|
|
2147
|
+
// is the actual wire constructor.
|
|
2148
|
+
const AdapterCtor = 'adapter' in adapter ? adapter.adapter : adapter;
|
|
2149
|
+
const wireInstance = new AdapterCtor(makeDataCallback(cmp));
|
|
2150
|
+
wireInstance.connect?.();
|
|
2151
|
+
if (wireInstance.update) {
|
|
2152
|
+
// This may look a bit weird, in that the 'update' function is called twice: once with
|
|
2153
|
+
// an 'undefined' value and possibly again with a context-provided value. While weird,
|
|
2154
|
+
// this preserves the behavior of the browser-side wire implementation as well as the
|
|
2155
|
+
// original SSR implementation.
|
|
2156
|
+
wireInstance.update(getLiveConfig(cmp), undefined);
|
|
2157
|
+
connectContext$1(AdapterCtor, cmp, (newContextValue) => {
|
|
2158
|
+
wireInstance.update(getLiveConfig(cmp), newContextValue);
|
|
2159
|
+
});
|
|
2160
|
+
}
|
|
2161
|
+
}
|
|
2162
|
+
function createComponent(Component, publicProps, wireAdapters, tagName, props, attrs, contextfulParent, defaultTmpl) {
|
|
2163
|
+
const instance = new Component({
|
|
2164
|
+
tagName: tagName.toUpperCase(),
|
|
2165
|
+
});
|
|
2166
|
+
establishContextfulRelationship(contextfulParent, instance);
|
|
2167
|
+
instance[SYMBOL__SET_INTERNALS](props, attrs, publicProps);
|
|
2168
|
+
if (wireAdapters?.length) {
|
|
2169
|
+
for (const { adapter, dataCallback: makeDataCallback, config: getLiveConfig, } of wireAdapters) {
|
|
2170
|
+
connectWires(instance, adapter, makeDataCallback, getLiveConfig);
|
|
2171
|
+
}
|
|
2172
|
+
}
|
|
2173
|
+
instance.isConnected = true;
|
|
2174
|
+
if (instance.connectedCallback) {
|
|
2175
|
+
mutationTracker.enable(instance);
|
|
2176
|
+
instance.connectedCallback();
|
|
2177
|
+
mutationTracker.disable(instance);
|
|
2178
|
+
}
|
|
2179
|
+
// If a render() function is defined on the class or any of its superclasses, then that takes priority.
|
|
2180
|
+
// Next, if the class or any of its superclasses has an implicitly-associated template, then that takes
|
|
2181
|
+
// second priority (e.g. a foo.html file alongside a foo.js file). Finally, there is a fallback empty template.
|
|
2182
|
+
const renderTemplate = instance.render?.() ?? Component[SYMBOL__DEFAULT_TEMPLATE] ?? defaultTmpl;
|
|
2183
|
+
const hostHasScopedStylesheets = renderTemplate.hasScopedStylesheets || hasScopedStaticStylesheets(Component);
|
|
2184
|
+
const hostScopeToken = hostHasScopedStylesheets
|
|
2185
|
+
? renderTemplate.stylesheetScopeToken + '-host'
|
|
2186
|
+
: undefined;
|
|
2187
|
+
return { instance, hostScopeToken, renderTemplate };
|
|
2188
|
+
}
|
|
2189
|
+
function makeGenerateMarkupAsyncYield(Component, defaultTagName, publicProps, wireAdapters) {
|
|
2190
|
+
return async function* generateMarkup(tagName, props, attrs, scopeToken, contextfulParent, renderContext, shadowSlottedContent, lightSlottedContent, scopedSlottedContent) {
|
|
2191
|
+
props ??= Object.create(null);
|
|
2192
|
+
attrs ??= Object.create(null);
|
|
2193
|
+
tagName ??= defaultTagName;
|
|
2194
|
+
const { instance, hostScopeToken, renderTemplate } = createComponent(Component, publicProps, wireAdapters, tagName, props, attrs, contextfulParent, fallbackTmpl);
|
|
2195
|
+
yield `<${tagName}`;
|
|
2196
|
+
yield* renderAttrs(instance, attrs, hostScopeToken, scopeToken);
|
|
2197
|
+
yield '>';
|
|
2198
|
+
yield* renderTemplate(shadowSlottedContent, lightSlottedContent, scopedSlottedContent, Component, instance, renderContext);
|
|
2199
|
+
yield `</${tagName}>`;
|
|
2200
|
+
};
|
|
2201
|
+
}
|
|
2202
|
+
function makeGenerateMarkupSync(Component, defaultTagName, publicProps, wireAdapters) {
|
|
2203
|
+
return function generateMarkup(tagName, props, attrs, scopeToken, contextfulParent, renderContext, shadowSlottedContent, lightSlottedContent, scopedSlottedContent) {
|
|
2204
|
+
props ??= Object.create(null);
|
|
2205
|
+
attrs ??= Object.create(null);
|
|
2206
|
+
tagName ??= defaultTagName;
|
|
2207
|
+
const { instance, hostScopeToken, renderTemplate } = createComponent(Component, publicProps, wireAdapters, tagName, props, attrs, contextfulParent, fallbackTmplNoYield);
|
|
2208
|
+
let markup = `<${tagName}`;
|
|
2209
|
+
markup += renderAttrsNoYield(instance, attrs, hostScopeToken, scopeToken);
|
|
2210
|
+
markup += '>';
|
|
2211
|
+
markup += renderTemplate(shadowSlottedContent, lightSlottedContent, scopedSlottedContent, Component, instance, renderContext);
|
|
2212
|
+
markup += `</${tagName}>`;
|
|
2213
|
+
return markup;
|
|
2214
|
+
};
|
|
2215
|
+
}
|
|
2216
|
+
function setStaticInternals(Component, defaultTagName, cmpPublicProps, wireAdapters, compilationMode, defaultTemplate) {
|
|
2217
|
+
const SuperClass = Object.getPrototypeOf(Component);
|
|
2218
|
+
const superPublicProps = SuperClass.__lwcPublicProperties__ ?? [];
|
|
2219
|
+
const publicProps = new Set([...cmpPublicProps, ...superPublicProps]);
|
|
2220
|
+
Object.defineProperty(Component, '__lwcPublicProperties__', {
|
|
2221
|
+
configurable: false,
|
|
2222
|
+
enumerable: false,
|
|
2223
|
+
writable: false,
|
|
2224
|
+
value: publicProps,
|
|
2225
|
+
});
|
|
2226
|
+
Object.defineProperty(Component, SYMBOL__GENERATE_MARKUP, {
|
|
2227
|
+
configurable: false,
|
|
2228
|
+
enumerable: false,
|
|
2229
|
+
writable: false,
|
|
2230
|
+
value: compilationMode === 'asyncYield'
|
|
2231
|
+
? makeGenerateMarkupAsyncYield(Component, defaultTagName, publicProps, wireAdapters)
|
|
2232
|
+
: makeGenerateMarkupSync(Component, defaultTagName, publicProps, wireAdapters),
|
|
2233
|
+
});
|
|
2234
|
+
if (defaultTemplate) {
|
|
2235
|
+
Object.defineProperty(Component, SYMBOL__DEFAULT_TEMPLATE, {
|
|
2236
|
+
configurable: false,
|
|
2237
|
+
enumerable: false,
|
|
2238
|
+
writable: false,
|
|
2239
|
+
value: defaultTemplate,
|
|
2240
|
+
});
|
|
2241
|
+
}
|
|
2242
|
+
}
|
|
2243
|
+
|
|
2139
2244
|
exports.ClassList = ClassList;
|
|
2140
2245
|
exports.LightningElement = LightningElement;
|
|
2141
2246
|
exports.SYMBOL__DEFAULT_TEMPLATE = SYMBOL__DEFAULT_TEMPLATE;
|
|
@@ -2181,6 +2286,7 @@ exports.setContextKeys = setContextKeys;
|
|
|
2181
2286
|
exports.setFeatureFlag = setFeatureFlag;
|
|
2182
2287
|
exports.setFeatureFlagForTest = setFeatureFlagForTest;
|
|
2183
2288
|
exports.setHooks = setHooks;
|
|
2289
|
+
exports.setStaticInternals = setStaticInternals;
|
|
2184
2290
|
exports.setTrustedContextSet = setTrustedContextSet;
|
|
2185
2291
|
exports.setTrustedSignalSet = setTrustedSignalSet;
|
|
2186
2292
|
exports.swapComponent = swapComponent;
|
|
@@ -2191,5 +2297,5 @@ exports.track = track;
|
|
|
2191
2297
|
exports.unwrap = unwrap$1;
|
|
2192
2298
|
exports.validateStyleTextContents = validateStyleTextContents;
|
|
2193
2299
|
exports.wire = wire;
|
|
2194
|
-
/** version: 9.
|
|
2300
|
+
/** version: 9.3.4 */
|
|
2195
2301
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.d.ts
CHANGED
|
@@ -12,4 +12,5 @@ export { toIteratorDirective } from './to-iterator-directive';
|
|
|
12
12
|
export { validateStyleTextContents } from './validate-style-text-contents';
|
|
13
13
|
export { createContextProvider, establishContextfulRelationship, connectContext } from './wire';
|
|
14
14
|
export { readonly } from './get-read-only-proxy';
|
|
15
|
+
export { setStaticInternals } from './set-static-internals';
|
|
15
16
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.js
CHANGED
|
@@ -676,7 +676,7 @@ function normalizeTabIndex(value) {
|
|
|
676
676
|
const shouldNormalize = value > 0 && typeof value !== 'boolean';
|
|
677
677
|
return shouldNormalize ? 0 : value;
|
|
678
678
|
}
|
|
679
|
-
/** version: 9.
|
|
679
|
+
/** version: 9.3.4 */
|
|
680
680
|
|
|
681
681
|
/**
|
|
682
682
|
* Copyright (c) 2026 Salesforce, Inc.
|
|
@@ -700,7 +700,7 @@ function normalizeTabIndex(value) {
|
|
|
700
700
|
* @param value
|
|
701
701
|
* @param msg
|
|
702
702
|
*/
|
|
703
|
-
/** version: 9.
|
|
703
|
+
/** version: 9.3.4 */
|
|
704
704
|
|
|
705
705
|
/*
|
|
706
706
|
* Copyright (c) 2023, salesforce.com, inc.
|
|
@@ -724,7 +724,7 @@ class SignalBaseClass {
|
|
|
724
724
|
}
|
|
725
725
|
}
|
|
726
726
|
}
|
|
727
|
-
/** version: 9.
|
|
727
|
+
/** version: 9.3.4 */
|
|
728
728
|
|
|
729
729
|
/**
|
|
730
730
|
* Copyright (c) 2026 Salesforce, Inc.
|
|
@@ -748,13 +748,11 @@ const features = {
|
|
|
748
748
|
ENABLE_LEGACY_SCOPE_TOKENS: null,
|
|
749
749
|
ENABLE_FORCE_SHADOW_MIGRATE_MODE: null,
|
|
750
750
|
ENABLE_EXPERIMENTAL_SIGNALS: null,
|
|
751
|
-
ENABLE_LEGACY_SIGNAL_CONTEXT_VALIDATION: null,
|
|
752
751
|
DISABLE_SYNTHETIC_SHADOW: null,
|
|
753
752
|
DISABLE_HOST_ATTACH_SHADOW_GUARD: null,
|
|
754
753
|
DISABLE_SCOPE_TOKEN_VALIDATION: null,
|
|
755
754
|
DISABLE_STRICT_VALIDATION: null,
|
|
756
755
|
DISABLE_DETACHED_REHYDRATION: null,
|
|
757
|
-
ENABLE_LEGACY_CONTEXT_CONNECTION: null,
|
|
758
756
|
};
|
|
759
757
|
if (!globalThis.lwcRuntimeFlags) {
|
|
760
758
|
Object.defineProperty(globalThis, 'lwcRuntimeFlags', { value: create(null) });
|
|
@@ -815,7 +813,7 @@ function setFeatureFlagForTest(name, value) {
|
|
|
815
813
|
setFeatureFlag(name, value);
|
|
816
814
|
}
|
|
817
815
|
}
|
|
818
|
-
/** version: 9.
|
|
816
|
+
/** version: 9.3.4 */
|
|
819
817
|
|
|
820
818
|
/*
|
|
821
819
|
* Copyright (c) 2024, Salesforce, Inc.
|
|
@@ -1941,16 +1939,16 @@ async function serverSideRenderComponent(tagName, Component, props = {}, styleDe
|
|
|
1941
1939
|
}
|
|
1942
1940
|
if (mode === 'asyncYield') {
|
|
1943
1941
|
let markup = '';
|
|
1944
|
-
for await (const segment of generateMarkup(tagName, props, null, null, null,
|
|
1942
|
+
for await (const segment of generateMarkup(tagName, props, null, null, null, renderContext, null, null, null)) {
|
|
1945
1943
|
markup += segment;
|
|
1946
1944
|
}
|
|
1947
1945
|
return markup;
|
|
1948
1946
|
}
|
|
1949
1947
|
else if (mode === 'async') {
|
|
1950
|
-
return await generateMarkup(tagName, props, null, null, null,
|
|
1948
|
+
return await generateMarkup(tagName, props, null, null, null, renderContext, null, null, null);
|
|
1951
1949
|
}
|
|
1952
1950
|
else if (mode === 'sync') {
|
|
1953
|
-
return generateMarkup(tagName, props, null, null, null,
|
|
1951
|
+
return generateMarkup(tagName, props, null, null, null, renderContext, null, null, null);
|
|
1954
1952
|
}
|
|
1955
1953
|
else {
|
|
1956
1954
|
throw new Error(`Invalid mode: ${mode}`);
|
|
@@ -2132,6 +2130,113 @@ function* toIteratorDirective(iterable) {
|
|
|
2132
2130
|
}
|
|
2133
2131
|
}
|
|
2134
2132
|
|
|
2135
|
-
|
|
2136
|
-
|
|
2133
|
+
/*
|
|
2134
|
+
* Copyright (c) 2026, Salesforce, Inc.
|
|
2135
|
+
* All rights reserved.
|
|
2136
|
+
* SPDX-License-Identifier: MIT
|
|
2137
|
+
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
2138
|
+
*/
|
|
2139
|
+
function connectWires(cmp, adapter, makeDataCallback, // generated
|
|
2140
|
+
getLiveConfig // generated
|
|
2141
|
+
) {
|
|
2142
|
+
// Callable adapters are expressed as a function having an 'adapter' property, which
|
|
2143
|
+
// is the actual wire constructor.
|
|
2144
|
+
const AdapterCtor = 'adapter' in adapter ? adapter.adapter : adapter;
|
|
2145
|
+
const wireInstance = new AdapterCtor(makeDataCallback(cmp));
|
|
2146
|
+
wireInstance.connect?.();
|
|
2147
|
+
if (wireInstance.update) {
|
|
2148
|
+
// This may look a bit weird, in that the 'update' function is called twice: once with
|
|
2149
|
+
// an 'undefined' value and possibly again with a context-provided value. While weird,
|
|
2150
|
+
// this preserves the behavior of the browser-side wire implementation as well as the
|
|
2151
|
+
// original SSR implementation.
|
|
2152
|
+
wireInstance.update(getLiveConfig(cmp), undefined);
|
|
2153
|
+
connectContext$1(AdapterCtor, cmp, (newContextValue) => {
|
|
2154
|
+
wireInstance.update(getLiveConfig(cmp), newContextValue);
|
|
2155
|
+
});
|
|
2156
|
+
}
|
|
2157
|
+
}
|
|
2158
|
+
function createComponent(Component, publicProps, wireAdapters, tagName, props, attrs, contextfulParent, defaultTmpl) {
|
|
2159
|
+
const instance = new Component({
|
|
2160
|
+
tagName: tagName.toUpperCase(),
|
|
2161
|
+
});
|
|
2162
|
+
establishContextfulRelationship(contextfulParent, instance);
|
|
2163
|
+
instance[SYMBOL__SET_INTERNALS](props, attrs, publicProps);
|
|
2164
|
+
if (wireAdapters?.length) {
|
|
2165
|
+
for (const { adapter, dataCallback: makeDataCallback, config: getLiveConfig, } of wireAdapters) {
|
|
2166
|
+
connectWires(instance, adapter, makeDataCallback, getLiveConfig);
|
|
2167
|
+
}
|
|
2168
|
+
}
|
|
2169
|
+
instance.isConnected = true;
|
|
2170
|
+
if (instance.connectedCallback) {
|
|
2171
|
+
mutationTracker.enable(instance);
|
|
2172
|
+
instance.connectedCallback();
|
|
2173
|
+
mutationTracker.disable(instance);
|
|
2174
|
+
}
|
|
2175
|
+
// If a render() function is defined on the class or any of its superclasses, then that takes priority.
|
|
2176
|
+
// Next, if the class or any of its superclasses has an implicitly-associated template, then that takes
|
|
2177
|
+
// second priority (e.g. a foo.html file alongside a foo.js file). Finally, there is a fallback empty template.
|
|
2178
|
+
const renderTemplate = instance.render?.() ?? Component[SYMBOL__DEFAULT_TEMPLATE] ?? defaultTmpl;
|
|
2179
|
+
const hostHasScopedStylesheets = renderTemplate.hasScopedStylesheets || hasScopedStaticStylesheets(Component);
|
|
2180
|
+
const hostScopeToken = hostHasScopedStylesheets
|
|
2181
|
+
? renderTemplate.stylesheetScopeToken + '-host'
|
|
2182
|
+
: undefined;
|
|
2183
|
+
return { instance, hostScopeToken, renderTemplate };
|
|
2184
|
+
}
|
|
2185
|
+
function makeGenerateMarkupAsyncYield(Component, defaultTagName, publicProps, wireAdapters) {
|
|
2186
|
+
return async function* generateMarkup(tagName, props, attrs, scopeToken, contextfulParent, renderContext, shadowSlottedContent, lightSlottedContent, scopedSlottedContent) {
|
|
2187
|
+
props ??= Object.create(null);
|
|
2188
|
+
attrs ??= Object.create(null);
|
|
2189
|
+
tagName ??= defaultTagName;
|
|
2190
|
+
const { instance, hostScopeToken, renderTemplate } = createComponent(Component, publicProps, wireAdapters, tagName, props, attrs, contextfulParent, fallbackTmpl);
|
|
2191
|
+
yield `<${tagName}`;
|
|
2192
|
+
yield* renderAttrs(instance, attrs, hostScopeToken, scopeToken);
|
|
2193
|
+
yield '>';
|
|
2194
|
+
yield* renderTemplate(shadowSlottedContent, lightSlottedContent, scopedSlottedContent, Component, instance, renderContext);
|
|
2195
|
+
yield `</${tagName}>`;
|
|
2196
|
+
};
|
|
2197
|
+
}
|
|
2198
|
+
function makeGenerateMarkupSync(Component, defaultTagName, publicProps, wireAdapters) {
|
|
2199
|
+
return function generateMarkup(tagName, props, attrs, scopeToken, contextfulParent, renderContext, shadowSlottedContent, lightSlottedContent, scopedSlottedContent) {
|
|
2200
|
+
props ??= Object.create(null);
|
|
2201
|
+
attrs ??= Object.create(null);
|
|
2202
|
+
tagName ??= defaultTagName;
|
|
2203
|
+
const { instance, hostScopeToken, renderTemplate } = createComponent(Component, publicProps, wireAdapters, tagName, props, attrs, contextfulParent, fallbackTmplNoYield);
|
|
2204
|
+
let markup = `<${tagName}`;
|
|
2205
|
+
markup += renderAttrsNoYield(instance, attrs, hostScopeToken, scopeToken);
|
|
2206
|
+
markup += '>';
|
|
2207
|
+
markup += renderTemplate(shadowSlottedContent, lightSlottedContent, scopedSlottedContent, Component, instance, renderContext);
|
|
2208
|
+
markup += `</${tagName}>`;
|
|
2209
|
+
return markup;
|
|
2210
|
+
};
|
|
2211
|
+
}
|
|
2212
|
+
function setStaticInternals(Component, defaultTagName, cmpPublicProps, wireAdapters, compilationMode, defaultTemplate) {
|
|
2213
|
+
const SuperClass = Object.getPrototypeOf(Component);
|
|
2214
|
+
const superPublicProps = SuperClass.__lwcPublicProperties__ ?? [];
|
|
2215
|
+
const publicProps = new Set([...cmpPublicProps, ...superPublicProps]);
|
|
2216
|
+
Object.defineProperty(Component, '__lwcPublicProperties__', {
|
|
2217
|
+
configurable: false,
|
|
2218
|
+
enumerable: false,
|
|
2219
|
+
writable: false,
|
|
2220
|
+
value: publicProps,
|
|
2221
|
+
});
|
|
2222
|
+
Object.defineProperty(Component, SYMBOL__GENERATE_MARKUP, {
|
|
2223
|
+
configurable: false,
|
|
2224
|
+
enumerable: false,
|
|
2225
|
+
writable: false,
|
|
2226
|
+
value: compilationMode === 'asyncYield'
|
|
2227
|
+
? makeGenerateMarkupAsyncYield(Component, defaultTagName, publicProps, wireAdapters)
|
|
2228
|
+
: makeGenerateMarkupSync(Component, defaultTagName, publicProps, wireAdapters),
|
|
2229
|
+
});
|
|
2230
|
+
if (defaultTemplate) {
|
|
2231
|
+
Object.defineProperty(Component, SYMBOL__DEFAULT_TEMPLATE, {
|
|
2232
|
+
configurable: false,
|
|
2233
|
+
enumerable: false,
|
|
2234
|
+
writable: false,
|
|
2235
|
+
value: defaultTemplate,
|
|
2236
|
+
});
|
|
2237
|
+
}
|
|
2238
|
+
}
|
|
2239
|
+
|
|
2240
|
+
export { ClassList, LightningElement, SYMBOL__DEFAULT_TEMPLATE, SYMBOL__GENERATE_MARKUP, SYMBOL__SET_INTERNALS, SignalBaseClass, addTrustedContext as __dangerous_do_not_use_addTrustedContext, addSlottedContent, api, connectContext$1 as connectContext, createContextProvider, createElement, establishContextfulRelationship, fallbackTmpl, fallbackTmplNoYield, freezeTemplate, getComponentDef, hasScopedStaticStylesheets, hot, htmlEscape, isComponentConstructor, isTrustedSignal, mutationTracker, normalizeClass, normalizeTabIndex, normalizeTextContent, parseFragment, parseSVGFragment, readonly, registerComponent, registerDecorators, registerTemplate, renderAttrs, renderAttrsNoYield, serverSideRenderComponent as renderComponent, renderStylesheets, renderTextContent, renderer, sanitizeAttribute, sanitizeHtmlContent, serverSideRenderComponent, setContextKeys, setFeatureFlag, setFeatureFlagForTest, setHooks, setStaticInternals, setTrustedContextSet, setTrustedSignalSet, swapComponent, swapStyle, swapTemplate, toIteratorDirective, track, unwrap$1 as unwrap, validateStyleTextContents, wire };
|
|
2241
|
+
/** version: 9.3.4 */
|
|
2137
2242
|
//# sourceMappingURL=index.js.map
|
|
@@ -22,6 +22,8 @@ export declare class LightningElement implements PropsAvailableAtConstruction {
|
|
|
22
22
|
static delegatesFocus?: boolean;
|
|
23
23
|
static formAssociated?: boolean;
|
|
24
24
|
static shadowSupportMode?: 'any' | 'reset' | 'native';
|
|
25
|
+
connectedCallback?: () => void;
|
|
26
|
+
render?: () => unknown;
|
|
25
27
|
accessKey: string;
|
|
26
28
|
dir: string;
|
|
27
29
|
draggable: boolean;
|
package/dist/render.d.ts
CHANGED
|
@@ -8,7 +8,6 @@ type BaseGenerateMarkupParams = readonly [
|
|
|
8
8
|
tagName: string,
|
|
9
9
|
props: Properties | null,
|
|
10
10
|
attrs: Attributes | null,
|
|
11
|
-
parent: LightningElement | null,
|
|
12
11
|
scopeToken: string | null,
|
|
13
12
|
contextfulParent: LightningElement | null,
|
|
14
13
|
renderContext: RenderContext
|
|
@@ -42,8 +41,8 @@ export type GenerateMarkupAsync = (...args: GenerateMarkupEmitterParams) => Prom
|
|
|
42
41
|
/** Signature for `sync` compilation mode. */
|
|
43
42
|
export type GenerateMarkupSync = (...args: GenerateMarkupEmitterParams) => string;
|
|
44
43
|
type GenerateMarkupVariants = GenerateMarkupAsyncYield | GenerateMarkupAsync | GenerateMarkupSync;
|
|
45
|
-
export declare function renderAttrs(instance: LightningElement, attrs: Attributes, hostScopeToken: string | undefined, scopeToken: string |
|
|
46
|
-
export declare function renderAttrsNoYield(instance: LightningElement, attrs: Attributes, hostScopeToken: string | undefined, scopeToken: string |
|
|
44
|
+
export declare function renderAttrs(instance: LightningElement, attrs: Attributes, hostScopeToken: string | undefined, scopeToken: string | null): Generator<string, void, unknown>;
|
|
45
|
+
export declare function renderAttrsNoYield(instance: LightningElement, attrs: Attributes, hostScopeToken: string | undefined, scopeToken: string | null): string;
|
|
47
46
|
export declare function fallbackTmpl(shadowSlottedContent: SlottedContentGenerator | null, _lightSlottedContent: SlottedContentGeneratorMap | null, _scopedSlottedContent: SlottedContentGeneratorMap | null, Cmp: LightningElementConstructor, instance: LightningElement, _renderContext: RenderContext): AsyncGenerator<string>;
|
|
48
47
|
export declare function fallbackTmplNoYield(shadowSlottedContent: SlottedContentEmitter | null, _lightSlottedContent: SlottedContentEmitterMap | null, _scopedSlottedContent: SlottedContentEmitterMap | null, Cmp: LightningElementConstructor, instance: LightningElement, _renderContext: RenderContext): string;
|
|
49
48
|
export declare function addSlottedContent(name: string, fn: unknown, contentMap: Record<string, unknown[]>): void;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { SYMBOL__DEFAULT_TEMPLATE, type LightningElementConstructor } from './lightning-element';
|
|
2
|
+
import type { CompilationMode } from '@lwc/shared';
|
|
3
|
+
import type { LightningElement } from './lightning-element';
|
|
4
|
+
import type { WireAdapterConstructor } from '@lwc/engine-core';
|
|
5
|
+
interface Template {
|
|
6
|
+
(...args: never[]): unknown;
|
|
7
|
+
hasScopedStylesheets?: boolean;
|
|
8
|
+
stylesheetScopeToken?: string;
|
|
9
|
+
}
|
|
10
|
+
interface ComponentStaticInternals {
|
|
11
|
+
__lwcPublicProperties__?: Set<string>;
|
|
12
|
+
[SYMBOL__DEFAULT_TEMPLATE]: Template;
|
|
13
|
+
}
|
|
14
|
+
interface WireAdapterInfo<Config extends object = object, Value = unknown> {
|
|
15
|
+
adapter: WireAdapterConstructor<Config, Value> | {
|
|
16
|
+
adapter: WireAdapterConstructor<Config, Value>;
|
|
17
|
+
};
|
|
18
|
+
dataCallback: (cmp: LightningElement) => (newValue: Value) => void;
|
|
19
|
+
config: (cmp: LightningElement) => Config;
|
|
20
|
+
}
|
|
21
|
+
export declare function setStaticInternals(Component: LightningElementConstructor & ComponentStaticInternals, defaultTagName: string, cmpPublicProps: string[], wireAdapters: WireAdapterInfo[], compilationMode: CompilationMode, defaultTemplate?: Template): void;
|
|
22
|
+
export {};
|
|
23
|
+
//# sourceMappingURL=set-static-internals.d.ts.map
|
package/dist/wire.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { LightningElement } from './lightning-element';
|
|
2
2
|
import type { WireAdapterConstructor, WireContextProviderOptions } from '@lwc/engine-core';
|
|
3
3
|
type SsrContextProvider = (le: LightningElement, options?: WireContextProviderOptions) => void;
|
|
4
|
-
export declare function establishContextfulRelationship(parentLe: LightningElement, childLe: LightningElement): void;
|
|
4
|
+
export declare function establishContextfulRelationship(parentLe: LightningElement | null, childLe: LightningElement): void;
|
|
5
5
|
export declare function getContextfulStack(le: LightningElement): LightningElement[];
|
|
6
6
|
export declare function connectContext(adapter: WireAdapterConstructor, contextConsumer: LightningElement, onNewValue: (newValue: any) => void): void;
|
|
7
7
|
export declare function createContextProvider(adapter: WireAdapterConstructor): SsrContextProvider;
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten."
|
|
5
5
|
],
|
|
6
6
|
"name": "@lwc/ssr-runtime",
|
|
7
|
-
"version": "9.
|
|
7
|
+
"version": "9.3.4",
|
|
8
8
|
"description": "Runtime complement to @lwc/ssr-compiler",
|
|
9
9
|
"keywords": [
|
|
10
10
|
"lwc",
|
|
@@ -53,10 +53,10 @@
|
|
|
53
53
|
}
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
56
|
-
"@lwc/shared": "9.
|
|
57
|
-
"@lwc/engine-core": "9.
|
|
58
|
-
"@lwc/features": "9.
|
|
59
|
-
"@lwc/signals": "9.
|
|
56
|
+
"@lwc/shared": "9.3.4",
|
|
57
|
+
"@lwc/engine-core": "9.3.4",
|
|
58
|
+
"@lwc/features": "9.3.4",
|
|
59
|
+
"@lwc/signals": "9.3.4",
|
|
60
60
|
"observable-membrane": "2.0.0"
|
|
61
61
|
}
|
|
62
62
|
}
|