Skip to content

Commit 770ddb2

Browse files
committed
chore(core): remove unused qrl refSymbol
1 parent 27020fa commit 770ddb2

File tree

7 files changed

+31
-64
lines changed

7 files changed

+31
-64
lines changed

packages/qwik/src/core/shared/qrl/qrl-class.ts

+3-8
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ export const isSyncQrl = (value: any): value is SyncQRLInternal => {
4141
export type QRLInternalMethods<TYPE> = {
4242
readonly $chunk$: string | null;
4343
readonly $symbol$: string;
44-
readonly $refSymbol$: string | null;
4544
readonly $hash$: string;
4645

4746
$capture$: string[] | null;
@@ -68,15 +67,13 @@ export type QRLInternalMethods<TYPE> = {
6867

6968
export type QRLInternal<TYPE = unknown> = QRL<TYPE> & QRLInternalMethods<TYPE>;
7069

71-
// TODO remove refSymbol, it's not used
7270
export const createQRL = <TYPE>(
7371
chunk: string | null,
7472
symbol: string,
7573
symbolRef: null | ValueOrPromise<TYPE>,
7674
symbolFn: null | (() => Promise<Record<string, TYPE>>),
7775
capture: null | Readonly<number[]>,
78-
captureRef: Readonly<unknown[]> | null,
79-
refSymbol: string | null
76+
captureRef: Readonly<unknown[]> | null
8077
): QRLInternal<TYPE> => {
8178
if (qDev && qSerialize) {
8279
if (captureRef) {
@@ -202,19 +199,17 @@ export const createQRL = <TYPE>(
202199
}
203200
};
204201

205-
const resolvedSymbol = refSymbol ?? symbol;
206-
const hash = getSymbolHash(resolvedSymbol);
202+
const hash = getSymbolHash(symbol);
207203

208204
Object.assign(qrl, {
209-
getSymbol: () => resolvedSymbol,
205+
getSymbol: () => symbol,
210206
getHash: () => hash,
211207
getCaptured: () => captureRef,
212208
resolve,
213209
$resolveLazy$: resolveLazy,
214210
$setContainer$: setContainer,
215211
$chunk$: chunk,
216212
$symbol$: symbol,
217-
$refSymbol$: refSymbol,
218213
$hash$: hash,
219214
getFn: bindFnToContext,
220215

packages/qwik/src/core/shared/qrl/qrl.public.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -253,7 +253,7 @@ export const $ = <T>(expression: T): QRL<T> => {
253253
);
254254
}
255255

256-
return createQRL<T>(null, 's' + runtimeSymbolId++, expression, null, null, null, null);
256+
return createQRL<T>(null, 's' + runtimeSymbolId++, expression, null, null, null);
257257
};
258258
/** @private Use To avoid optimizer replacement */
259259
export const dollar = $;
@@ -302,7 +302,7 @@ export const sync$ = <T extends Function>(fn: T): SyncQRL<T> => {
302302
fn = new Function('return ' + fn.toString())() as any;
303303
}
304304

305-
return createQRL<T>('', SYNC_QRL, fn, null, null, null, null) as any;
305+
return createQRL<T>('', SYNC_QRL, fn, null, null, null) as any;
306306
};
307307

308308
/**
@@ -323,5 +323,5 @@ export const _qrlSync = function <TYPE extends Function>(
323323
serializedFn = fn.toString();
324324
}
325325
(fn as any).serialized = serializedFn;
326-
return createQRL<TYPE>('', SYNC_QRL, fn, null, null, null, null) as any;
326+
return createQRL<TYPE>('', SYNC_QRL, fn, null, null, null) as any;
327327
};

packages/qwik/src/core/shared/qrl/qrl.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ export const qrl = <T = any>(
8585
}
8686

8787
// Unwrap subscribers
88-
return createQRL<T>(chunk, symbol, null, symbolFn, null, lexicalScopeCapture, null);
88+
return createQRL<T>(chunk, symbol, null, symbolFn, null, lexicalScopeCapture);
8989
};
9090

9191
/** @internal */
@@ -95,15 +95,15 @@ export const inlinedQrl = <T>(
9595
lexicalScopeCapture: any[] = EMPTY_ARRAY
9696
): QRL<T> => {
9797
// Unwrap subscribers
98-
return createQRL<T>(null, symbolName, symbol, null, null, lexicalScopeCapture, null);
98+
return createQRL<T>(null, symbolName, symbol, null, null, lexicalScopeCapture);
9999
};
100100

101101
/** @internal */
102102
export const _noopQrl = <T>(
103103
symbolName: string,
104104
lexicalScopeCapture: any[] = EMPTY_ARRAY
105105
): QRL<T> => {
106-
return createQRL<T>(null, symbolName, null, null, null, lexicalScopeCapture, null);
106+
return createQRL<T>(null, symbolName, null, null, null, lexicalScopeCapture);
107107
};
108108

109109
/** @internal */

packages/qwik/src/core/shared/qrl/qrl.unit.ts

+15-31
Original file line numberDiff line numberDiff line change
@@ -108,35 +108,29 @@ describe('serialization', () => {
108108
new WeakMap<any, any>()
109109
);
110110
assert.equal(
111-
qrlToString(serializationContext, createQRL('./chunk', '', null, null, null, null, null)),
111+
qrlToString(serializationContext, createQRL('./chunk', '', null, null, null, null)),
112112
'chunk#'
113113
);
114114
assert.equal(
115-
qrlToString(serializationContext, createQRL('./c', 's1', null, null, null, null, null)),
115+
qrlToString(serializationContext, createQRL('./c', 's1', null, null, null, null)),
116116
'c#s1'
117117
);
118118
assert.equal(
119-
qrlToString(serializationContext, createQRL('./c', 's1', null, null, [], null, null)),
119+
qrlToString(serializationContext, createQRL('./c', 's1', null, null, [], null)),
120120
'c#s1'
121121
);
122122
assert.equal(
123-
qrlToString(
124-
serializationContext,
125-
createQRL('./c', 's1', null, null, [1, '2'] as any, null, null)
126-
),
123+
qrlToString(serializationContext, createQRL('./c', 's1', null, null, [1, '2'] as any, null)),
127124
'c#s1[1 2]'
128125
);
129126
assert.equal(
130-
qrlToString(
131-
serializationContext,
132-
createQRL('c', 's1', null, null, [1 as any, '2'], null, null)
133-
),
127+
qrlToString(serializationContext, createQRL('c', 's1', null, null, [1 as any, '2'], null)),
134128
'c#s1[1 2]'
135129
);
136130
assert.equal(
137131
qrlToString(
138132
serializationContext,
139-
createQRL('src/routes/[...index]/a+b/c?foo', 's1', null, null, [1 as any, '2'], null, null)
133+
createQRL('src/routes/[...index]/a+b/c?foo', 's1', null, null, [1 as any, '2'], null)
140134
),
141135
'src/routes/[...index]/a+b/c?foo#s1[1 2]'
142136
);
@@ -174,19 +168,19 @@ describe('serialization', () => {
174168

175169
describe('createQRL', () => {
176170
test('should create QRL', () => {
177-
const q = createQRL('chunk', 'symbol', 'resolved', null, null, null, null);
171+
const q = createQRL('chunk', 'symbol', 'resolved', null, null, null);
178172
matchProps(q, {
179173
$chunk$: 'chunk',
180174
$symbol$: 'symbol',
181175
resolved: 'resolved',
182176
});
183177
});
184178
test('should have .resolved: given scalar', async () => {
185-
const q = createQRL('chunk', 'symbol', 'resolved', null, null, null, null);
179+
const q = createQRL('chunk', 'symbol', 'resolved', null, null, null);
186180
assert.equal(q.resolved, 'resolved');
187181
});
188182
test('should have .resolved: given promise for scalar', async () => {
189-
const q = createQRL('chunk', 'symbol', Promise.resolve('resolved'), null, null, null, null);
183+
const q = createQRL('chunk', 'symbol', Promise.resolve('resolved'), null, null, null);
190184
assert.equal(q.resolved, undefined);
191185
assert.equal(await q.resolve(), 'resolved');
192186
assert.equal(q.resolved, 'resolved');
@@ -198,7 +192,6 @@ describe('createQRL', () => {
198192
null,
199193
() => Promise.resolve({ symbol: 'resolved' }),
200194
null,
201-
null,
202195
null
203196
);
204197
assert.equal(q.resolved, undefined);
@@ -208,39 +201,31 @@ describe('createQRL', () => {
208201

209202
const fn = () => 'hi';
210203
test('should have .resolved: given function without captures', async () => {
211-
const q = createQRL('chunk', 'symbol', fn, null, null, null, null);
204+
const q = createQRL('chunk', 'symbol', fn, null, null, null);
212205
assert.equal(q.resolved, fn);
213206
});
214207
test('should have .resolved: given promise for function without captures', async () => {
215-
const q = createQRL('chunk', 'symbol', Promise.resolve(fn), null, null, null, null);
208+
const q = createQRL('chunk', 'symbol', Promise.resolve(fn), null, null, null);
216209
assert.equal(q.resolved, undefined);
217210
assert.equal(await q.resolve(), fn);
218211
assert.equal(q.resolved, fn);
219212
});
220213
test('should have .resolved: promise for function without captures', async () => {
221-
const q = createQRL(
222-
'chunk',
223-
'symbol',
224-
null,
225-
() => Promise.resolve({ symbol: fn }),
226-
null,
227-
null,
228-
null
229-
);
214+
const q = createQRL('chunk', 'symbol', null, () => Promise.resolve({ symbol: fn }), null, null);
230215
assert.equal(q.resolved, undefined);
231216
assert.equal(await q.resolve(), fn);
232217
assert.equal(q.resolved, fn);
233218
});
234219

235220
const capFn = () => useLexicalScope();
236221
test('should have .resolved: given function with captures', async () => {
237-
const q = createQRL('chunk', 'symbol', capFn, null, null, ['hi'], null);
222+
const q = createQRL('chunk', 'symbol', capFn, null, null, ['hi']);
238223
assert.isDefined(q.resolved);
239224
assert.notEqual(q.resolved, capFn);
240225
assert.deepEqual(q.resolved!(), ['hi']);
241226
});
242227
test('should have .resolved: given promise for function with captures', async () => {
243-
const q = createQRL('chunk', 'symbol', Promise.resolve(capFn), null, null, ['hi'], null);
228+
const q = createQRL('chunk', 'symbol', Promise.resolve(capFn), null, null, ['hi']);
244229
assert.equal(q.resolved, undefined);
245230
assert.deepEqual(await q(), ['hi']);
246231
assert.notEqual(q.resolved, capFn);
@@ -253,8 +238,7 @@ describe('createQRL', () => {
253238
null,
254239
() => Promise.resolve({ symbol: capFn }),
255240
null,
256-
['hi'],
257-
null
241+
['hi']
258242
);
259243
assert.equal(q.resolved, undefined);
260244
assert.deepEqual(await q(), ['hi']);

packages/qwik/src/core/shared/shared-serialization.ts

+3-6
Original file line numberDiff line numberDiff line change
@@ -568,7 +568,7 @@ export function parseQRL(qrl: string): QRLInternal<any> {
568568
assertDefined(backChannel, 'Missing QRL_RUNTIME_CHUNK');
569569
qrlRef = backChannel.get(symbol);
570570
}
571-
return createQRL(chunk, symbol, qrlRef, null, captureIds, null, null);
571+
return createQRL(chunk, symbol, qrlRef, null, captureIds, null);
572572
}
573573

574574
export function inflateQRL(container: DeserializeContainer, qrl: QRLInternal<any>) {
@@ -1313,15 +1313,12 @@ export function qrlToString(
13131313
let symbol = value.$symbol$;
13141314
let chunk = value.$chunk$;
13151315

1316-
const refSymbol = value.$refSymbol$ ?? symbol;
13171316
const platform = getPlatform();
13181317
if (platform) {
1319-
const result = platform.chunkForSymbol(refSymbol, chunk, value.dev?.file);
1318+
const result = platform.chunkForSymbol(symbol, chunk, value.dev?.file);
13201319
if (result) {
13211320
chunk = result[1];
1322-
if (!value.$refSymbol$) {
1323-
symbol = result[0];
1324-
}
1321+
symbol = result[0];
13251322
}
13261323
}
13271324

packages/qwik/src/core/shared/shared-serialization.unit.ts

+1-4
Original file line numberDiff line numberDiff line change
@@ -732,10 +732,7 @@ describe('shared-serialization', () => {
732732
`);
733733
});
734734
it('should dedupe function sub-data', async () => {
735-
const objs = await serialize(
736-
[shared1],
737-
createQRL(null, 'foo', 123, null, null, [shared1], null)
738-
);
735+
const objs = await serialize([shared1], createQRL(null, 'foo', 123, null, null, [shared1]));
739736
expect(dumpState(objs)).toMatchInlineSnapshot(`
740737
"
741738
0 Array [

packages/qwik/src/core/use/use-task.ts

+3-9
Original file line numberDiff line numberDiff line change
@@ -275,15 +275,9 @@ export const useRunTask = (
275275
};
276276

277277
const getTaskHandlerQrl = (task: Task): QRL<(ev: Event) => void> => {
278-
const taskHandler = createQRL<(ev: Event) => void>(
279-
null,
280-
'_task',
281-
scheduleTask,
282-
null,
283-
null,
284-
[task],
285-
null
286-
);
278+
const taskHandler = createQRL<(ev: Event) => void>(null, '_task', scheduleTask, null, null, [
279+
task,
280+
]);
287281
return taskHandler;
288282
};
289283

0 commit comments

Comments
 (0)