@darajs/core 1.29.6 → 1.29.7

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 (38) hide show
  1. package/dist/api/http.d.ts.map +1 -1
  2. package/dist/api/http.js +14 -0
  3. package/dist/api/http.js.map +1 -1
  4. package/dist/{dara_core-1.29.6-py3-none-any.whl → dara_core-1.29.7-py3-none-any.whl} +0 -0
  5. package/dist/router/fetching.d.ts.map +1 -1
  6. package/dist/router/fetching.js +57 -32
  7. package/dist/router/fetching.js.map +1 -1
  8. package/dist/shared/context/variable-context.d.ts +5 -0
  9. package/dist/shared/context/variable-context.d.ts.map +1 -1
  10. package/dist/shared/context/variable-context.js.map +1 -1
  11. package/dist/shared/dynamic-component/dynamic-component.d.ts.map +1 -1
  12. package/dist/shared/dynamic-component/dynamic-component.js +10 -5
  13. package/dist/shared/dynamic-component/dynamic-component.js.map +1 -1
  14. package/dist/shared/interactivity/derived-variable.d.ts +14 -8
  15. package/dist/shared/interactivity/derived-variable.d.ts.map +1 -1
  16. package/dist/shared/interactivity/derived-variable.js +175 -126
  17. package/dist/shared/interactivity/derived-variable.js.map +1 -1
  18. package/dist/shared/interactivity/polling.d.ts +116 -0
  19. package/dist/shared/interactivity/polling.d.ts.map +1 -0
  20. package/dist/shared/interactivity/polling.js +723 -0
  21. package/dist/shared/interactivity/polling.js.map +1 -0
  22. package/dist/shared/interactivity/store.d.ts +6 -0
  23. package/dist/shared/interactivity/store.d.ts.map +1 -1
  24. package/dist/shared/interactivity/store.js +21 -1
  25. package/dist/shared/interactivity/store.js.map +1 -1
  26. package/dist/shared/interactivity/stream-variable.d.ts +1 -1
  27. package/dist/shared/interactivity/stream-variable.d.ts.map +1 -1
  28. package/dist/shared/interactivity/stream-variable.js +106 -41
  29. package/dist/shared/interactivity/stream-variable.js.map +1 -1
  30. package/dist/shared/interactivity/use-server-component.d.ts +9 -0
  31. package/dist/shared/interactivity/use-server-component.d.ts.map +1 -1
  32. package/dist/shared/interactivity/use-server-component.js +130 -77
  33. package/dist/shared/interactivity/use-server-component.js.map +1 -1
  34. package/dist/shared/interactivity/use-variable.d.ts.map +1 -1
  35. package/dist/shared/interactivity/use-variable.js +2 -2
  36. package/dist/shared/interactivity/use-variable.js.map +1 -1
  37. package/dist/umd/dara.core.umd.cjs +1064 -387
  38. package/package.json +9 -9
@@ -22,8 +22,6 @@ import set from 'lodash/set';
22
22
  import { nanoid } from 'nanoid';
23
23
  import { useCallback, useMemo } from 'react';
24
24
  import { isRecoilValue, selectorFamily, useRecoilValue, useSetRecoilState, } from 'recoil';
25
- import { BehaviorSubject, Observable, from } from 'rxjs';
26
- import { debounceTime, filter, share, switchMap, take } from 'rxjs/operators';
27
25
  import { HTTP_METHOD, validateResponse } from '@darajs/ui-utils';
28
26
  import { fetchTaskResult, request } from '../../api';
29
27
  import { RequestExtrasSerializable } from '../../api/http';
@@ -31,12 +29,12 @@ import { TaskError } from '../../api/websocket';
31
29
  import { handleAuthErrors } from '../../auth/auth';
32
30
  import { getUniqueIdentifier } from '../../shared/utils/hashing';
33
31
  import { normalizeRequest } from '../../shared/utils/normalization';
34
- import useInterval from '../../shared/utils/use-interval';
35
32
  import { isCondition, isResolvedDerivedVariable, isResolvedServerVariable, isResolvedSwitchVariable, isVariable, } from '../../types';
36
33
  import { deferred, isDeferred } from '../utils/deferred';
37
34
  // eslint-disable-next-line import/no-cycle
38
35
  import { cleanArgs, getOrRegisterTrigger, resolveNested, resolveVariable, resolveVariableStatic } from './internal';
39
- import { depsRegistry, getRegistryKey, selectorFamilyMembersRegistry, selectorFamilyRegistry, } from './store';
36
+ import { createPollForceKey, isAbortError, isPollForceKey, markRetryAfter, runPoll, usePollKey, usePolling, waitOrAbort, } from './polling';
37
+ import { depsRegistry, getOrRegisterPollingTrigger, getRegistryKey, selectorFamilyMembersRegistry, selectorFamilyRegistry, } from './store';
40
38
  import { buildTriggerList, registerChildTriggers, resolveTriggerStatic } from './triggers';
41
39
  export function isTaskResponse(dvResponse) {
42
40
  return 'task_id' in dvResponse;
@@ -52,7 +50,7 @@ export function isTaskResponse(dvResponse) {
52
50
  * - `wsClient`, websocket client
53
51
  */
54
52
  export function fetchDerivedVariable(_a) {
55
- return __awaiter(this, arguments, void 0, function* ({ cache, extras, force_key, variableUid, values, wsClient, }) {
53
+ return __awaiter(this, arguments, void 0, function* ({ cache, extras, force_key, signal, variableUid, values, wsClient, }) {
56
54
  const cacheControl = cache === null
57
55
  ? {
58
56
  'cache-control': 'none',
@@ -63,39 +61,55 @@ export function fetchDerivedVariable(_a) {
63
61
  body: JSON.stringify({ values, ws_channel, force_key: force_key !== null && force_key !== void 0 ? force_key : null }),
64
62
  headers: Object.assign({}, cacheControl),
65
63
  method: HTTP_METHOD.POST,
66
- }, extras);
64
+ }, extras, { signal });
67
65
  yield handleAuthErrors(res, { authenticationFailureRedirect: 'login' });
68
- yield validateResponse(res, `Failed to fetch the derived variable with uid: ${variableUid}`);
66
+ try {
67
+ yield validateResponse(res, `Failed to fetch the derived variable with uid: ${variableUid}`);
68
+ }
69
+ catch (error) {
70
+ throw markRetryAfter(error, res);
71
+ }
69
72
  return res.json();
70
73
  });
71
74
  }
75
+ const pendingFetches = new Map();
72
76
  /**
73
- * Add a debounced version of the fetch so as to not overload the backend on startup. This needs to be cached per uid
74
- * so that we only debounce calls to the same DerivedVariable. Debouncing is done with rxjs as everything here is
75
- * promise based and async
77
+ * Wait 10 ms so matching selector reads share one fetch. A running fetch stays separate.
76
78
  */
77
- const debouncedFetchSubjects = {};
78
- const debouncedFetchCache = {};
79
- function debouncedFetchDerivedVariable(_a) {
80
- return __awaiter(this, arguments, void 0, function* ({ variableUid, selectorKey, values, wsClient, extras, cache, force_key, }) {
81
- // If this is the first time this is called then set up a subject and return stream for this selector
82
- if (!debouncedFetchSubjects[selectorKey]) {
83
- debouncedFetchSubjects[selectorKey] = new BehaviorSubject(null);
84
- debouncedFetchCache[selectorKey] = debouncedFetchSubjects[selectorKey].pipe(filter((args) => !!args), debounceTime(10), switchMap((args) => from(fetchDerivedVariable(args))), share());
79
+ function startPendingFetch(selectorKey, pending) {
80
+ if (pendingFetches.get(selectorKey) !== pending) {
81
+ return;
82
+ }
83
+ pendingFetches.delete(selectorKey);
84
+ void fetchDerivedVariable(pending.args).then((response) => {
85
+ for (const waiter of pending.waiters) {
86
+ waiter.resolve(response);
85
87
  }
86
- // Push the next set of args to the subject
87
- debouncedFetchSubjects[selectorKey].next({
88
- cache,
89
- extras,
90
- force_key,
91
- selectorKey,
92
- values,
93
- variableUid,
94
- wsClient,
95
- });
96
- // Return the debounced response from the backend
88
+ }, (error) => {
89
+ for (const waiter of pending.waiters) {
90
+ waiter.reject(error);
91
+ }
92
+ });
93
+ }
94
+ function debouncedFetchDerivedVariable(args) {
95
+ return __awaiter(this, void 0, void 0, function* () {
97
96
  return new Promise((resolve, reject) => {
98
- debouncedFetchCache[selectorKey].pipe(take(1)).subscribe(resolve, reject);
97
+ const pending = pendingFetches.get(args.selectorKey);
98
+ if (pending) {
99
+ if (pending.timer !== undefined) {
100
+ clearTimeout(pending.timer);
101
+ }
102
+ pending.args = args;
103
+ pending.waiters.push({ reject, resolve });
104
+ pending.timer = setTimeout(() => startPendingFetch(args.selectorKey, pending), 10);
105
+ return;
106
+ }
107
+ const next = {
108
+ args,
109
+ waiters: [{ reject, resolve }],
110
+ };
111
+ next.timer = setTimeout(() => startPendingFetch(args.selectorKey, next), 10);
112
+ pendingFetches.set(args.selectorKey, next);
99
113
  });
100
114
  });
101
115
  }
@@ -178,9 +192,11 @@ export function useTriggerIndex(variable) {
178
192
  * @param resolvedVariables resolved values of dependant variables - turned into primitives and Resolved forms
179
193
  * @param get getter function to resolve atoms to values
180
194
  * @param triggerList list of trigger info objects
181
- * @param triggers list of triggers to register as dependencies; first one is expected to be the self-trigger
195
+ * @param selfTriggers triggers owned by this request identity
196
+ * @param childTriggers triggers owned by nested variables
182
197
  */
183
- export function resolveDerivedValue({ key, variables, deps, resolvedVariables, resolutionStrategy, triggerList, triggers, }) {
198
+ export function resolveDerivedValue({ key, variables, deps, resolvedVariables, resolutionStrategy, triggerList, selfTriggers, childTriggers, }) {
199
+ const triggers = [...selfTriggers, ...childTriggers];
184
200
  /**
185
201
  * Array of values:
186
202
  * - primitive values are resolved to themselves
@@ -257,22 +273,23 @@ export function resolveDerivedValue({ key, variables, deps, resolvedVariables, r
257
273
  // Otherwise continue and fetch new value, but first check what caused the change
258
274
  // Assumption: Triggers are always stored after the values, with the triggers of the current variable being first
259
275
  const previousTriggerCounters = previousEntry.args.slice(previousEntry.args.length - triggers.length);
276
+ const dependenciesChanged = !isEqual(previousEntry.args.slice(0, -triggers.length), relevantValues.slice(0, -triggers.length));
260
277
  // Find which trigger changed and handle force_key appropriately
261
278
  let selfTriggerForceKey = null;
262
- for (const [idx, triggerValue] of triggers.entries()) {
279
+ for (const [idx, triggerValue] of dependenciesChanged ? [] : triggers.entries()) {
263
280
  /**
264
281
  * If any of the nested trigger value has changed (this execution was caused by a trigger)
265
282
  * handle the force_key appropriately
266
283
  */
267
284
  if (triggerValue.inc !== previousTriggerCounters[idx]) {
268
- if (idx === 0) {
285
+ if (idx < selfTriggers.length) {
269
286
  // This is a self-trigger (polling, manual trigger) - use global force
270
287
  selfTriggerForceKey = triggerValue.force_key;
271
288
  }
272
289
  else if (triggerValue.force_key) {
273
290
  // This is a nested variable trigger - embed force_key in the specific variable
274
- // shift index back by 1 because we prepended a self trigger
275
- const valueIndex = idx - 1;
291
+ // shift index back by the number of prepended self triggers
292
+ const valueIndex = idx - selfTriggers.length;
276
293
  const triggerInfo = triggerList[valueIndex];
277
294
  // If the trigger path is empty, it means we need to force the DV itself
278
295
  // This can happen when e.g. a dependant DataVariable is triggered
@@ -335,11 +352,12 @@ export function getOrRegisterDerivedVariableResult(variable, wsClient, taskConte
335
352
  const selfTrigger = get(getOrRegisterTrigger(variable));
336
353
  // for deps use a different key for each selector instance rather than one per family
337
354
  const selectorKey = key + extrasSerializable.toJSON();
355
+ const requestKey = getRegistryKey(variable, 'derived-selector') + extrasSerializable.toJSON();
356
+ const pollingTrigger = get(getOrRegisterPollingTrigger(requestKey));
338
357
  // Build trigger map once for efficient lookups
339
358
  const triggerList = buildTriggerList(variable.variables);
340
359
  // Register nested triggers as dependencies so triggering one of the nested derived variables will trigger a recalculation here
341
- const triggers = registerChildTriggers(triggerList, get);
342
- triggers.unshift(selfTrigger);
360
+ const childTriggers = registerChildTriggers(triggerList, get);
343
361
  const derivedResult = resolveDerivedValue({
344
362
  key: selectorKey,
345
363
  variables: variable.variables,
@@ -347,7 +365,8 @@ export function getOrRegisterDerivedVariableResult(variable, wsClient, taskConte
347
365
  resolvedVariables,
348
366
  resolutionStrategy: { name: 'get', get },
349
367
  triggerList,
350
- triggers,
368
+ selfTriggers: [selfTrigger, pollingTrigger],
369
+ childTriggers,
351
370
  });
352
371
  return derivedResult;
353
372
  }),
@@ -386,6 +405,7 @@ export function getOrRegisterDerivedVariableValue(variable, wsClient, taskContex
386
405
  eviction: 'most-recent',
387
406
  },
388
407
  get: (extrasSerializable) => (_a) => __awaiter(this, [_a], void 0, function* ({ get }) {
408
+ var _b;
389
409
  const selectorKey = key + extrasSerializable.toJSON();
390
410
  const throwError = (error) => {
391
411
  // On DV task error put selectorId and extras into the error so the boundary can reset the selector cache
@@ -393,14 +413,6 @@ export function getOrRegisterDerivedVariableValue(variable, wsClient, taskContex
393
413
  error.selectorExtras = extrasSerializable.toJSON();
394
414
  throw error;
395
415
  };
396
- const handleError = (func) => {
397
- try {
398
- return func();
399
- }
400
- catch (e) {
401
- throwError(e);
402
- }
403
- };
404
416
  // get the result selector instance for this extras value
405
417
  const dvResultSelector = getOrRegisterDerivedVariableResult(variable, wsClient, taskContext, extrasSerializable.extras);
406
418
  let derivedResult = get(dvResultSelector);
@@ -408,12 +420,19 @@ export function getOrRegisterDerivedVariableValue(variable, wsClient, taskContex
408
420
  return derivedResult.entry.result;
409
421
  }
410
422
  const { extras } = extrasSerializable;
411
- let variableResponse = null;
412
- // whether to check for an initial task
413
- let shouldFetchTask = false;
414
- // Skip fetching if we have a cached result, await it instead
415
- if (derivedResult.type === 'cached') {
416
- try {
423
+ const currentResult = derivedResult.type === 'current' ? derivedResult : undefined;
424
+ const pollRequest = isPollForceKey(currentResult === null || currentResult === void 0 ? void 0 : currentResult.selfTriggerForceKey);
425
+ const inputKey = currentResult
426
+ ? JSON.stringify({
427
+ forceKey: currentResult.selfTriggerForceKey,
428
+ values: currentResult.values,
429
+ })
430
+ : undefined;
431
+ const fetchValue = (signal) => __awaiter(this, void 0, void 0, function* () {
432
+ let variableResponse = null;
433
+ let shouldFetchTask = false;
434
+ // Skip fetching if we have a cached result, await it instead
435
+ if (derivedResult.type === 'cached') {
417
436
  const response = yield derivedResult.response.getValue();
418
437
  shouldFetchTask = true;
419
438
  if (!response.ok) {
@@ -422,75 +441,101 @@ export function getOrRegisterDerivedVariableValue(variable, wsClient, taskContex
422
441
  variableResponse = response.value;
423
442
  derivedResult = derivedResult.currentResult;
424
443
  }
425
- catch (e) {
426
- throwError(e);
444
+ else {
445
+ signal.addEventListener('abort', () => taskContext.cleanupRunningTasks(variable.uid), {
446
+ once: true,
447
+ });
448
+ variableResponse = yield debouncedFetchDerivedVariable({
449
+ cache: variable.cache,
450
+ extras,
451
+ force_key: currentResult.selfTriggerForceKey,
452
+ selectorKey,
453
+ signal: signal,
454
+ values: normalizeRequest(cleanArgs(currentResult.values), variable.variables),
455
+ variableUid: variable.uid,
456
+ wsClient,
457
+ });
427
458
  }
428
- }
429
- else {
430
- variableResponse = yield handleError(() => debouncedFetchDerivedVariable({
431
- cache: variable.cache,
432
- extras,
433
- force_key: derivedResult.selfTriggerForceKey,
434
- selectorKey,
435
- values: normalizeRequest(cleanArgs(derivedResult.values), variable.variables),
436
- variableUid: variable.uid,
437
- wsClient,
438
- }));
439
- }
440
- let variableValue = NOT_SET;
441
- // If there is a task running related to the current variable then something has changed, so cancel them
442
- taskContext.cleanupRunningTasks(variable.uid);
443
- // If the variable is computed as a task then wait for it to finish and fetch the result
444
- if (isTaskResponse(variableResponse)) {
445
- const taskId = variableResponse.task_id;
446
- // pre-fetch task result since it could already be available without us receiving the notif
447
- if (shouldFetchTask) {
448
- try {
449
- const taskResult = yield fetchTaskResult(taskId, extras);
459
+ signal === null || signal === void 0 ? void 0 : signal.throwIfAborted();
460
+ let variableValue = NOT_SET;
461
+ // If there is a task running related to the current variable then something has changed, so cancel them
462
+ taskContext.cleanupRunningTasks(variable.uid);
463
+ // If the variable is computed as a task then wait for it to finish and fetch the result
464
+ if (isTaskResponse(variableResponse)) {
465
+ const taskId = variableResponse.task_id;
466
+ // pre-fetch task result since it could already be available without us receiving the notif
467
+ if (shouldFetchTask) {
468
+ const taskResult = yield fetchTaskResult(taskId, Object.assign(Object.assign({}, extras), { signal }));
450
469
  if (taskResult.status === 'ok') {
451
470
  variableValue = taskResult.result;
452
471
  }
453
472
  }
454
- catch (e) {
455
- throwError(e);
456
- }
457
- }
458
- // continue waiting for the task if it's not available yet
459
- if (variableValue === NOT_SET) {
460
- // register task being started
461
- taskContext.startTask(taskId, variable.uid, getRegistryKey(variable, 'trigger'));
462
- try {
463
- yield wsClient.waitForTask(taskId);
464
- }
465
- catch (e) {
466
- if (e instanceof TaskError) {
467
- throwError(e);
473
+ // continue waiting for the task if it's not available yet
474
+ if (variableValue === NOT_SET) {
475
+ // register task being started
476
+ taskContext.startTask(taskId, variable.uid, getRegistryKey(variable, 'trigger'));
477
+ try {
478
+ yield waitOrAbort(wsClient.waitForTask(taskId), signal);
468
479
  }
469
- // should be a TaskCancelledError
470
- // It should be safe to return `null` here as the selector will re-run and throw suspense again
471
- return null;
472
- }
473
- finally {
474
- taskContext.endTask(taskId);
475
- }
476
- variableValue = yield handleError(() => __awaiter(this, void 0, void 0, function* () {
477
- const result = yield fetchTaskResult(taskId, extras);
480
+ catch (e) {
481
+ if (e instanceof TaskError || isAbortError(e)) {
482
+ throw e;
483
+ }
484
+ // should be a TaskCancelledError
485
+ // It should be safe to return `null` here as the selector will re-run and throw suspense again
486
+ return null;
487
+ }
488
+ finally {
489
+ taskContext.endTask(taskId);
490
+ }
491
+ const result = yield fetchTaskResult(taskId, Object.assign(Object.assign({}, extras), { signal }));
478
492
  if (result.status === 'not_found') {
479
493
  throw new Error('Task result not found');
480
494
  }
481
- return result.result;
482
- }));
495
+ variableValue = result.result;
496
+ }
497
+ }
498
+ else {
499
+ variableValue = variableResponse.value;
500
+ }
501
+ return variableValue;
502
+ });
503
+ if (!currentResult) {
504
+ try {
505
+ const variableValue = yield fetchValue();
506
+ depsRegistry.set(derivedResult.depsKey, {
507
+ args: derivedResult.relevantValues,
508
+ result: variableValue,
509
+ });
510
+ return variableValue;
511
+ }
512
+ catch (error) {
513
+ return throwError(error);
483
514
  }
484
515
  }
485
- else {
486
- variableValue = variableResponse.value;
516
+ const runResult = currentResult;
517
+ try {
518
+ return yield runPoll({
519
+ cause: pollRequest ? 'poll' : 'dependency',
520
+ inputKey,
521
+ key: selectorKey,
522
+ read: () => {
523
+ const saved = depsRegistry.get(runResult.depsKey);
524
+ return saved ? { found: true, value: saved.result } : { found: false };
525
+ },
526
+ signal: (_b = extras.signal) !== null && _b !== void 0 ? _b : undefined,
527
+ work: fetchValue,
528
+ write: (variableValue) => {
529
+ depsRegistry.set(runResult.depsKey, {
530
+ args: runResult.relevantValues,
531
+ result: variableValue,
532
+ });
533
+ },
534
+ });
535
+ }
536
+ catch (error) {
537
+ return throwError(error);
487
538
  }
488
- // Store the final result and arguments used
489
- depsRegistry.set(derivedResult.depsKey, {
490
- args: derivedResult.relevantValues,
491
- result: variableValue,
492
- });
493
- return variableValue;
494
539
  }),
495
540
  key: nanoid(),
496
541
  }));
@@ -561,7 +606,7 @@ export function getOrRegisterDerivedVariable(variable, wsClient, taskContext, cu
561
606
  * Otherwise, returns an object with values so be sent to the backend
562
607
  * and handles to resolve the cached promise to the result.
563
608
  */
564
- export function preloadDerivedValue({ key, variables, deps, triggerList, triggers, snapshot, params, }) {
609
+ export function preloadDerivedValue({ key, variables, deps, triggerList, selfTriggers, childTriggers, snapshot, params, }) {
565
610
  const derivedResult = resolveDerivedValue({
566
611
  key,
567
612
  variables,
@@ -569,7 +614,8 @@ export function preloadDerivedValue({ key, variables, deps, triggerList, trigger
569
614
  resolvedVariables: variables,
570
615
  resolutionStrategy: { name: 'static', snapshot, params },
571
616
  triggerList,
572
- triggers,
617
+ selfTriggers,
618
+ childTriggers,
573
619
  });
574
620
  // otherwise we already have a valid entry, nothing to do here
575
621
  if (derivedResult.type === 'previous') {
@@ -584,14 +630,20 @@ export function preloadDerivedValue({ key, variables, deps, triggerList, trigger
584
630
  export function preloadDerivedVariable(variable, snapshot, params) {
585
631
  // assume no extras in top-level variables
586
632
  const key = getRegistryKey(variable, 'result-selector') + new RequestExtrasSerializable({}).toJSON();
633
+ const requestKey = getRegistryKey(variable, 'derived-selector') + new RequestExtrasSerializable({}).toJSON();
587
634
  // prepare trigger list as usual but use static resolution
588
- const triggerList = [...buildTriggerList(variable.variables), { path: [], variable }];
589
- const triggers = triggerList.map((ti) => resolveTriggerStatic(getOrRegisterTrigger(ti.variable), snapshot));
635
+ const triggerList = buildTriggerList(variable.variables);
636
+ const selfTriggers = [
637
+ resolveTriggerStatic(getOrRegisterTrigger(variable), snapshot),
638
+ resolveTriggerStatic(getOrRegisterPollingTrigger(requestKey), snapshot),
639
+ ];
640
+ const childTriggers = triggerList.map((ti) => resolveTriggerStatic(getOrRegisterTrigger(ti.variable), snapshot));
590
641
  return preloadDerivedValue({
591
642
  key,
592
643
  variables: variable.variables,
593
644
  deps: variable.deps,
594
- triggers,
645
+ selfTriggers,
646
+ childTriggers,
595
647
  triggerList,
596
648
  snapshot,
597
649
  params,
@@ -605,23 +657,20 @@ export function preloadDerivedVariable(variable, snapshot, params) {
605
657
  * @param taskContext global task context
606
658
  * @param search search query
607
659
  * @param extras request extras to be merged into the options
660
+ * @param pollScope render-local scope for requests started before commit
608
661
  */
609
- export function useDerivedVariable(variable, WsClient, taskContext, extras, pollingInterval) {
662
+ export function useDerivedVariable(variable, WsClient, taskContext, extras, pollingInterval, pollScope) {
610
663
  const dvSelector = getOrRegisterDerivedVariable(variable, WsClient, taskContext, extras);
611
- /**
612
- * Workaround for forcing a re-calculation for derived variables by creating a triggerIndex atom and making it a dependency of
613
- * the recoil selector. This way the selector can be re-run and derived variable can be re-fetched from the
614
- * backend by just updating this atom.
615
- */
616
- const triggerIndex = useMemo(() => getOrRegisterTrigger(variable), []);
664
+ const pollingKey = getRegistryKey(variable, 'derived-selector') + new RequestExtrasSerializable(extras).toJSON();
665
+ usePollKey(pollScope, pollingKey);
666
+ const triggerIndex = useMemo(() => getOrRegisterPollingTrigger(pollingKey), [pollingKey]);
617
667
  // Creating a setter function for triggerIndex
618
668
  const triggerUpdates = useSetRecoilState(triggerIndex);
619
- const trigger = useCallback((force = true) => triggerUpdates((val) => ({
620
- force_key: force ? nanoid() : null,
669
+ const trigger = useCallback(() => triggerUpdates((val) => ({
670
+ force_key: createPollForceKey(),
621
671
  inc: val.inc + 1,
622
672
  })), [triggerUpdates]);
623
- // Using useInterval to poll, forcing recalculation everytime
624
- useInterval(trigger, pollingInterval);
673
+ usePolling(pollingKey, pollingInterval, trigger);
625
674
  return dvSelector;
626
675
  }
627
676
  //# sourceMappingURL=derived-variable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"derived-variable.js","sourceRoot":"","sources":["../../../js/shared/interactivity/derived-variable.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"derived-variable.js","sourceRoot":"","sources":["../../../js/shared/interactivity/derived-variable.tsx"],"names":[],"mappings":"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"}