@darajs/core 1.24.3 → 1.25.1

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 (57) hide show
  1. package/dist/actions/reset-variables.d.ts.map +1 -1
  2. package/dist/actions/reset-variables.js +4 -1
  3. package/dist/actions/reset-variables.js.map +1 -1
  4. package/dist/components/for/templating.d.ts +5 -0
  5. package/dist/components/for/templating.d.ts.map +1 -1
  6. package/dist/components/for/templating.js +53 -0
  7. package/dist/components/for/templating.js.map +1 -1
  8. package/dist/{dara_core-1.24.3-py3-none-any.whl → dara_core-1.25.1-py3-none-any.whl} +0 -0
  9. package/dist/router/fetching.d.ts.map +1 -1
  10. package/dist/router/fetching.js +63 -31
  11. package/dist/router/fetching.js.map +1 -1
  12. package/dist/shared/interactivity/derived-variable.d.ts +8 -1
  13. package/dist/shared/interactivity/derived-variable.d.ts.map +1 -1
  14. package/dist/shared/interactivity/derived-variable.js +2 -2
  15. package/dist/shared/interactivity/derived-variable.js.map +1 -1
  16. package/dist/shared/interactivity/internal.d.ts +1 -0
  17. package/dist/shared/interactivity/internal.d.ts.map +1 -1
  18. package/dist/shared/interactivity/internal.js +1 -0
  19. package/dist/shared/interactivity/internal.js.map +1 -1
  20. package/dist/shared/interactivity/nested.d.ts +13 -4
  21. package/dist/shared/interactivity/nested.d.ts.map +1 -1
  22. package/dist/shared/interactivity/nested.js +15 -5
  23. package/dist/shared/interactivity/nested.js.map +1 -1
  24. package/dist/shared/interactivity/plain-variable.d.ts.map +1 -1
  25. package/dist/shared/interactivity/plain-variable.js +4 -2
  26. package/dist/shared/interactivity/plain-variable.js.map +1 -1
  27. package/dist/shared/interactivity/resolve-variable.d.ts +7 -0
  28. package/dist/shared/interactivity/resolve-variable.d.ts.map +1 -1
  29. package/dist/shared/interactivity/resolve-variable.js +26 -4
  30. package/dist/shared/interactivity/resolve-variable.js.map +1 -1
  31. package/dist/shared/interactivity/store.d.ts +6 -0
  32. package/dist/shared/interactivity/store.d.ts.map +1 -1
  33. package/dist/shared/interactivity/store.js +16 -0
  34. package/dist/shared/interactivity/store.js.map +1 -1
  35. package/dist/shared/interactivity/stream-variable.d.ts +137 -0
  36. package/dist/shared/interactivity/stream-variable.d.ts.map +1 -0
  37. package/dist/shared/interactivity/stream-variable.js +522 -0
  38. package/dist/shared/interactivity/stream-variable.js.map +1 -0
  39. package/dist/shared/interactivity/use-variable.d.ts.map +1 -1
  40. package/dist/shared/interactivity/use-variable.js +12 -2
  41. package/dist/shared/interactivity/use-variable.js.map +1 -1
  42. package/dist/shared/utils/hashing.d.ts.map +1 -1
  43. package/dist/shared/utils/hashing.js +17 -1
  44. package/dist/shared/utils/hashing.js.map +1 -1
  45. package/dist/shared/utils/normalization.d.ts +1 -0
  46. package/dist/shared/utils/normalization.d.ts.map +1 -1
  47. package/dist/shared/utils/normalization.js +21 -1
  48. package/dist/shared/utils/normalization.js.map +1 -1
  49. package/dist/types/core.d.ts +19 -8
  50. package/dist/types/core.d.ts.map +1 -1
  51. package/dist/types/core.js.map +1 -1
  52. package/dist/types/utils.d.ts +7 -1
  53. package/dist/types/utils.d.ts.map +1 -1
  54. package/dist/types/utils.js +8 -0
  55. package/dist/types/utils.js.map +1 -1
  56. package/dist/umd/dara.core.umd.cjs +1060 -311
  57. package/package.json +10 -9
@@ -1 +1 @@
1
- {"version":3,"file":"nested.js","sourceRoot":"","sources":["../../../js/shared/interactivity/nested.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,cAAc,CAAC;AACjC,OAAO,SAAS,MAAM,kBAAkB,CAAC;AAEzC;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAgC,GAAM,EAAE,MAAgB;IACjF,sBAAsB;IACtB,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,GAAG,CAAC;IACf,CAAC;IAED,gBAAgB;IAChB,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAC5D,OAAO,GAAG,CAAC;IACf,CAAC;IAED,IAAI,SAAS,GAAG,GAAG,CAAC;IAEpB,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QACvB,6FAA6F;QAC7F,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACxC,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAgC,GAAM,EAAE,MAAgB,EAAE,QAAiB;IAChG,sBAAsB;IACtB,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,gBAAgB;IAChB,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAC5D,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,4CAA4C;IAC5C,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;IAE1B,wFAAwF;IACxF,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC;IACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACjC,MAAc,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IAC9B,CAAC;IAEA,MAAc,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAE1G,OAAO,MAAM,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"nested.js","sourceRoot":"","sources":["../../../js/shared/interactivity/nested.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,cAAc,CAAC;AACjC,OAAO,SAAS,MAAM,kBAAkB,CAAC;AAIzC;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAgC,GAAM,EAAE,MAAmB;IACpF,sBAAsB;IACtB,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,GAAG,CAAC;IACf,CAAC;IAED,gBAAgB;IAChB,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAC5D,OAAO,GAAG,CAAC;IACf,CAAC;IAED,IAAI,SAAS,GAAG,GAAG,CAAC;IAEpB,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QACvB,0DAA0D;QAC1D,MAAM,SAAS,GAAG,GAAa,CAAC;QAEhC,6FAA6F;QAC7F,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9C,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,SAAS,CAAgC,GAAM,EAAE,MAAmB,EAAE,QAAiB;IACnG,sBAAsB;IACtB,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,gBAAgB;IAChB,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAC5D,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,4CAA4C;IAC5C,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;IAE1B,0DAA0D;IAC1D,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAW,CAAC;IAChC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACjC,MAAc,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IAC9B,CAAC;IAEA,MAAc,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAE1G,OAAO,MAAM,CAAC;AAClB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"plain-variable.d.ts","sourceRoot":"","sources":["../../../js/shared/interactivity/plain-variable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAmB,KAAK,WAAW,EAAE,KAAK,QAAQ,EAA8B,MAAM,QAAQ,CAAC;AAEtG,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,KAAK,aAAa,EAA6B,MAAM,YAAY,CAAC;AAE3E,OAAO,EACH,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EAGtB,MAAM,SAAS,CAAC;AASjB;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,EACxC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,EAC3B,QAAQ,EAAE,wBAAwB,EAClC,WAAW,EAAE,iBAAiB,EAC9B,MAAM,EAAE,aAAa,GACtB,WAAW,CAAC,CAAC,CAAC,CAuJhB;AAED,wBAAgB,0BAA0B,CAAC,CAAC,EACxC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,EAC3B,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GACvB,eAAe,GAAG,CAAC,CAoBrB"}
1
+ {"version":3,"file":"plain-variable.d.ts","sourceRoot":"","sources":["../../../js/shared/interactivity/plain-variable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAmB,KAAK,WAAW,EAAE,KAAK,QAAQ,EAA8B,MAAM,QAAQ,CAAC;AAEtG,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,KAAK,aAAa,EAA6B,MAAM,YAAY,CAAC;AAE3E,OAAO,EACH,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EAGtB,MAAM,SAAS,CAAC;AASjB;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,EACxC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,EAC3B,QAAQ,EAAE,wBAAwB,EAClC,WAAW,EAAE,iBAAiB,EAC9B,MAAM,EAAE,aAAa,GACtB,WAAW,CAAC,CAAC,CAAC,CAkJhB;AAED,wBAAgB,0BAA0B,CAAC,CAAC,EACxC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,EAC3B,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GACvB,eAAe,GAAG,CAAC,CAoBrB"}
@@ -109,11 +109,13 @@ export function getOrRegisterPlainVariable(variable, wsClient, taskContext, extr
109
109
  selectorFamilyRegistry.set(key, selectorFamily({
110
110
  get: (currentExtras) => ({ get }) => {
111
111
  const variableValue = get(family(currentExtras));
112
- return resolveNested(variableValue, variable.nested.map((n) => String(n)));
112
+ // After templating, all nested keys are guaranteed to be strings
113
+ return resolveNested(variableValue, variable.nested);
113
114
  },
114
115
  key,
115
116
  set: (currentExtras) => ({ set }, newValue) => {
116
- set(family(currentExtras), (v) => setNested(v, variable.nested.map((n) => String(n)), newValue));
117
+ // After templating, all nested keys are guaranteed to be strings
118
+ set(family(currentExtras), (v) => setNested(v, variable.nested, newValue));
117
119
  },
118
120
  }));
119
121
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plain-variable.js","sourceRoot":"","sources":["../../../js/shared/interactivity/plain-variable.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plain-variable.js","sourceRoot":"","sources":["../../../js/shared/interactivity/plain-variable.tsx"],"names":[],"mappings":"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"}
@@ -3,6 +3,13 @@ import { type RecoilState, type Snapshot } from 'recoil';
3
3
  import { type WebSocketClientInterface } from '../../api';
4
4
  import { type RequestExtras } from '../../api/http';
5
5
  import { type AnyVariable, type GlobalTaskContext, type ResolvedDerivedVariable, type ResolvedServerVariable, type ResolvedSwitchVariable } from '../../types';
6
+ /**
7
+ * Error thrown when a variable cannot be resolved during preloading.
8
+ * This signals to the preloader to skip this variable and resolve it at runtime.
9
+ */
10
+ export declare class PreloadSkipError extends Error {
11
+ constructor(message: string);
12
+ }
6
13
  export declare function resolveVariable<VariableType>(variable: AnyVariable<VariableType>, client: WebSocketClientInterface, taskContext: GlobalTaskContext, extras: RequestExtras, resolver?: (state: RecoilState<VariableType>) => Promise<RecoilState<VariableType> | ResolvedDerivedVariable | VariableType>): Promise<RecoilState<VariableType> | ResolvedDerivedVariable | ResolvedServerVariable | ResolvedSwitchVariable | VariableType>;
7
14
  /**
8
15
  * Static variant of variable resolution.
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-variable.d.ts","sourceRoot":"","sources":["../../../js/shared/interactivity/resolve-variable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAEzD,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EACH,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAS9B,MAAM,SAAS,CAAC;AAMjB,wBAAsB,eAAe,CAAC,YAAY,EAC9C,QAAQ,EAAE,WAAW,CAAC,YAAY,CAAC,EACnC,MAAM,EAAE,wBAAwB,EAChC,WAAW,EAAE,iBAAiB,EAC9B,MAAM,EAAE,aAAa,EACrB,QAAQ,GAAE,CACN,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC,KAC/B,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,GAAG,uBAAuB,GAAG,YAAY,CAAqC,GACrH,OAAO,CACN,WAAW,CAAC,YAAY,CAAC,GAAG,uBAAuB,GAAG,sBAAsB,GAAG,sBAAsB,GAAG,YAAY,CACvH,CAmEA;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,CAgEjH;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG,CAuBhF;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAQ9G;AAED;;;;;;GAMG;AAEH,wBAAgB,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,GAAG,uBAAuB,CAAC,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG,EAAE,CAE/G"}
1
+ {"version":3,"file":"resolve-variable.d.ts","sourceRoot":"","sources":["../../../js/shared/interactivity/resolve-variable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAEzD,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EACH,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAU9B,MAAM,SAAS,CAAC;AAOjB;;;GAGG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;gBAC3B,OAAO,EAAE,MAAM;CAI9B;AAED,wBAAsB,eAAe,CAAC,YAAY,EAC9C,QAAQ,EAAE,WAAW,CAAC,YAAY,CAAC,EACnC,MAAM,EAAE,wBAAwB,EAChC,WAAW,EAAE,iBAAiB,EAC9B,MAAM,EAAE,aAAa,EACrB,QAAQ,GAAE,CACN,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC,KAC/B,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,GAAG,uBAAuB,GAAG,YAAY,CAAqC,GACrH,OAAO,CACN,WAAW,CAAC,YAAY,CAAC,GAAG,uBAAuB,GAAG,sBAAsB,GAAG,sBAAsB,GAAG,YAAY,CACvH,CA2EA;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,CA2EjH;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG,CAuBhF;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAQ9G;AAED;;;;;;GAMG;AAEH,wBAAgB,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,GAAG,uBAAuB,CAAC,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG,EAAE,CAE/G"}
@@ -21,10 +21,21 @@ var __rest = (this && this.__rest) || function (s, e) {
21
21
  import {} from 'recoil';
22
22
  import {} from '../../api';
23
23
  import {} from '../../api/http';
24
- import { isCondition, isDerivedVariable, isResolvedDerivedVariable, isResolvedSwitchVariable, isServerVariable, isStateVariable, isSwitchVariable, isVariable, } from '../../types';
24
+ import { isCondition, isDerivedVariable, isResolvedDerivedVariable, isResolvedSwitchVariable, isServerVariable, isStateVariable, isStreamVariable, isSwitchVariable, isVariable, } from '../../types';
25
25
  // eslint-disable-next-line import/no-cycle
26
26
  import { getOrRegisterDerivedVariable, getOrRegisterPlainVariable, resolvePlainVariableStatic } from './internal';
27
27
  import { getOrRegisterServerVariable, resolveServerVariable, resolveServerVariableStatic } from './server-variable';
28
+ import { getOrRegisterStreamVariable } from './stream-variable';
29
+ /**
30
+ * Error thrown when a variable cannot be resolved during preloading.
31
+ * This signals to the preloader to skip this variable and resolve it at runtime.
32
+ */
33
+ export class PreloadSkipError extends Error {
34
+ constructor(message) {
35
+ super(message);
36
+ this.name = 'PreloadSkipError';
37
+ }
38
+ }
28
39
  export function resolveVariable(variable_1, client_1, taskContext_1, extras_1) {
29
40
  return __awaiter(this, arguments, void 0, function* (variable, client, taskContext, extras, resolver = (state) => Promise.resolve(state)) {
30
41
  if (isDerivedVariable(variable)) {
@@ -38,6 +49,7 @@ export function resolveVariable(variable_1, client_1, taskContext_1, extras_1) {
38
49
  type: 'derived',
39
50
  uid: variable.uid,
40
51
  values,
52
+ // After templating, nested should be all strings
41
53
  nested: variable.nested,
42
54
  };
43
55
  }
@@ -74,6 +86,10 @@ export function resolveVariable(variable_1, client_1, taskContext_1, extras_1) {
74
86
  // They should be handled by useVariable hook directly
75
87
  throw new Error('StateVariable should not be resolved - it should be handled by useVariable hook');
76
88
  }
89
+ if (isStreamVariable(variable)) {
90
+ // StreamVariable returns a Recoil selector that can be used as a dependency
91
+ return resolver(getOrRegisterStreamVariable(variable, client, taskContext, extras));
92
+ }
77
93
  return resolver(getOrRegisterPlainVariable(variable, client, taskContext, extras));
78
94
  });
79
95
  }
@@ -93,6 +109,7 @@ export function resolveVariableStatic(variable, snapshot, params) {
93
109
  type: 'derived',
94
110
  uid: variable.uid,
95
111
  values,
112
+ // After templating, nested should be all strings
96
113
  nested: variable.nested,
97
114
  };
98
115
  }
@@ -120,9 +137,14 @@ export function resolveVariableStatic(variable, snapshot, params) {
120
137
  };
121
138
  }
122
139
  if (isStateVariable(variable)) {
123
- // StateVariables should not be resolved as they are internal client-side variables
124
- // They should be handled by useVariable hook directly
125
- throw new Error('StateVariable should not be resolved - it should be handled by useVariable hook');
140
+ // StateVariables cannot be preloaded - they track parent DerivedVariable state at runtime
141
+ throw new PreloadSkipError('StateVariable cannot be used in on_load actions or preloaded. ' +
142
+ 'StateVariables track DerivedVariable loading/error state and are only available at runtime.');
143
+ }
144
+ if (isStreamVariable(variable)) {
145
+ // StreamVariables cannot be preloaded - they receive data via SSE at runtime
146
+ throw new PreloadSkipError('StreamVariable cannot be used in on_load actions or preloaded. ' +
147
+ 'StreamVariables receive data via server-sent events and are only available at runtime.');
126
148
  }
127
149
  // plain variable
128
150
  let result = resolvePlainVariableStatic(variable, snapshot, params);
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-variable.js","sourceRoot":"","sources":["../../../js/shared/interactivity/resolve-variable.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolve-variable.js","sourceRoot":"","sources":["../../../js/shared/interactivity/resolve-variable.tsx"],"names":[],"mappings":"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"}
@@ -37,6 +37,12 @@ export declare const selectorFamilyRegistry: Map<string, SelectorFamily>;
37
37
  * Stores all instances of a given selector family, as a map of seriailzed extras to selector.
38
38
  */
39
39
  export declare const selectorFamilyMembersRegistry: Map<SelectorFamily, Map<string | null, RecoilValue<any>>>;
40
+ /**
41
+ * StreamVariable atom instances registry.
42
+ * Key is serialized StreamAtomParams, value is the atom instance.
43
+ * Used to track active stream connections and check if a stream variable is registered.
44
+ */
45
+ export declare const streamAtomRegistry: Map<string, RecoilState<any>>;
40
46
  /**
41
47
  * Key -> dependencies data for a selector
42
48
  */
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../js/shared/interactivity/store.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,QAAQ,CAAC;AAE5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAEvD,OAAO,EAAE,KAAK,WAAW,EAAiC,MAAM,SAAS,CAAC;AAE1E;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,EAAE,yBAAyB,KAAK,WAAW,CAAC,GAAG,CAAC,CAAC;AAEhF;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,EAAE,yBAAyB,KAAK,WAAW,CAAC,GAAG,CAAC,CAAC;AAE5E;;GAEG;AACH,eAAO,MAAM,YAAY,+BAAsC,CAAC;AAChE;;GAEG;AACH,eAAO,MAAM,kBAAkB,yBAAgC,CAAC;AAChE;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,uDAA8D,CAAC;AACrG;;GAEG;AACH,eAAO,MAAM,gBAAgB,+BAAsC,CAAC;AACpE;;GAEG;AACH,eAAO,MAAM,sBAAsB,6BAAoC,CAAC;AACxE;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,2DAAkE,CAAC;AAC7G;;GAEG;AACH,eAAO,MAAM,YAAY;UAGX,GAAG,EAAE;YACH,GAAG;EAEhB,CAAC;AAEJ,MAAM,MAAM,iBAAiB,GAAG;IAC5B,4DAA4D;IAC5D,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,eAAe,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,SAAS,GAAG,SAAS,CAAC;AAO1G;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,eAAe,GAAG,MAAM,CAUzF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAY3C;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,OAAO,CA6BjE"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../js/shared/interactivity/store.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,QAAQ,CAAC;AAE5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAEvD,OAAO,EAAE,KAAK,WAAW,EAAiC,MAAM,SAAS,CAAC;AAE1E;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,EAAE,yBAAyB,KAAK,WAAW,CAAC,GAAG,CAAC,CAAC;AAEhF;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,EAAE,yBAAyB,KAAK,WAAW,CAAC,GAAG,CAAC,CAAC;AAE5E;;GAEG;AACH,eAAO,MAAM,YAAY,+BAAsC,CAAC;AAChE;;GAEG;AACH,eAAO,MAAM,kBAAkB,yBAAgC,CAAC;AAChE;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,uDAA8D,CAAC;AACrG;;GAEG;AACH,eAAO,MAAM,gBAAgB,+BAAsC,CAAC;AACpE;;GAEG;AACH,eAAO,MAAM,sBAAsB,6BAAoC,CAAC;AACxE;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,2DAAkE,CAAC;AAC7G;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,+BAAsC,CAAC;AACtE;;GAEG;AACH,eAAO,MAAM,YAAY;UAGX,GAAG,EAAE;YACH,GAAG;EAEhB,CAAC;AAEJ,MAAM,MAAM,iBAAiB,GAAG;IAC5B,4DAA4D;IAC5D,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,eAAe,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,SAAS,GAAG,SAAS,CAAC;AAO1G;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,eAAe,GAAG,MAAM,CAUzF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAa3C;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,OAAO,CAuCjE"}
@@ -30,6 +30,12 @@ export const selectorFamilyRegistry = new Map();
30
30
  * Stores all instances of a given selector family, as a map of seriailzed extras to selector.
31
31
  */
32
32
  export const selectorFamilyMembersRegistry = new Map();
33
+ /**
34
+ * StreamVariable atom instances registry.
35
+ * Key is serialized StreamAtomParams, value is the atom instance.
36
+ * Used to track active stream connections and check if a stream variable is registered.
37
+ */
38
+ export const streamAtomRegistry = new Map();
33
39
  /**
34
40
  * Key -> dependencies data for a selector
35
41
  */
@@ -65,6 +71,7 @@ export function clearRegistries_TEST() {
65
71
  depsRegistry,
66
72
  selectorFamilyRegistry,
67
73
  selectorFamilyMembersRegistry,
74
+ streamAtomRegistry,
68
75
  ]) {
69
76
  registry.clear();
70
77
  }
@@ -96,6 +103,15 @@ export function isRegistered(variable) {
96
103
  const key = getRegistryKey(variable, 'selector-nested');
97
104
  return selectorFamilyRegistry.has(key);
98
105
  }
106
+ case 'StreamVariable': {
107
+ // Check if any atoms exist for this stream variable uid
108
+ for (const atomKey of streamAtomRegistry.keys()) {
109
+ if (atomKey.includes(`"uid":"${variable.uid}"`)) {
110
+ return true;
111
+ }
112
+ }
113
+ return false;
114
+ }
99
115
  default:
100
116
  return false;
101
117
  }
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../js/shared/interactivity/store.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAsC,MAAM,QAAQ,CAAC;AAE5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAoB,iBAAiB,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAY1E;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,GAAG,EAA4B,CAAC;AAChE;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAsB,CAAC;AAChE;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAAoD,CAAC;AACrG;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAA4B,CAAC;AACpE;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAA0B,CAAC;AACxE;;;;GAIG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,IAAI,GAAG,EAAwD,CAAC;AAC7G;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,GAAG,EAMhC,CAAC;AAUJ;;GAEG;AACH,MAAM,gBAAgB,GAAG,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAAC;AAEjE;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAI,QAAwB,EAAE,IAAqB;;IAC7E,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,IAAI,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,MAAM,GAAG,MAAA,QAAQ,CAAC,iBAAiB,mCAAI,EAAE,CAAC;IAC9C,CAAC;IAED,MAAM,IAAI,GAAG,EAAE,SAAS,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;IAE7D,OAAO,GAAG,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;AACtE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB;IAChC,KAAK,MAAM,QAAQ,IAAI;QACnB,YAAY;QACZ,kBAAkB;QAClB,yBAAyB;QACzB,gBAAgB;QAChB,YAAY;QACZ,sBAAsB;QACtB,6BAA6B;KAChC,EAAE,CAAC;QACA,QAAQ,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAI,QAAwB;IACpD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,0EAA0E;IAC1E,QAAQ,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC1B,KAAK,gBAAgB,CAAC;QACtB,KAAK,UAAU,CAAC,CAAC,CAAC;YACd,IAAI,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjC,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,MAAM,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAEpD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACV,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,OAAO,yBAAyB,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,IAAI,GAAG,CAAC,CAAC;QAC3D,CAAC;QAED,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACrB,MAAM,GAAG,GAAG,cAAc,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;YACxD,OAAO,sBAAsB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3C,CAAC;QAED;YACI,OAAO,KAAK,CAAC;IACrB,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../js/shared/interactivity/store.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,137 @@
1
+ import { type RecoilState, type RecoilValue } from 'recoil';
2
+ import { type WebSocketClientInterface } from '../../api';
3
+ import { type RequestExtras } from '../../api/http';
4
+ import { type GlobalTaskContext, type StreamVariable } from '../../types';
5
+ /**
6
+ * Stream event types as sent from the server
7
+ */
8
+ export type StreamEventType = 'add' | 'remove' | 'clear' | 'replace' | 'json_snapshot' | 'json_patch' | 'reconnect' | 'error';
9
+ /**
10
+ * Stream event as received from SSE
11
+ */
12
+ export interface StreamEvent {
13
+ type: StreamEventType;
14
+ data: unknown;
15
+ }
16
+ /**
17
+ * State of a stream connection.
18
+ * 'loading' is the initial state before first data arrives.
19
+ */
20
+ export type StreamStatus = 'loading' | 'connected' | 'reconnecting' | 'error' | 'closed';
21
+ /**
22
+ * Internal state for a stream variable atom
23
+ */
24
+ export interface StreamState {
25
+ /**
26
+ * The accumulated data from stream events.
27
+ * For keyed mode (key_accessor set): Record<key, item>
28
+ * For custom mode: any shape set by snapshot/patch
29
+ */
30
+ data: unknown;
31
+ /** Current connection status */
32
+ status: StreamStatus;
33
+ /** Error message if status is 'error' */
34
+ error?: string;
35
+ }
36
+ /**
37
+ * Extract a key from an item using the key_accessor path.
38
+ *
39
+ * @param item Item to extract key from
40
+ * @param keyAccessor Dot-separated path to the key property (e.g., 'id' or 'data.id')
41
+ * @returns The key value, or undefined if not found
42
+ */
43
+ export declare function extractKey(item: unknown, keyAccessor: string): string | number | undefined;
44
+ /**
45
+ * Apply a stream event to the current state.
46
+ *
47
+ * @param currentState Current accumulated state
48
+ * @param event Stream event to apply
49
+ * @param keyAccessor Key accessor path for keyed mode (null for custom mode)
50
+ * @returns New state after applying the event
51
+ */
52
+ export declare function applyStreamEvent(currentState: StreamState, event: StreamEvent, keyAccessor: string | null): StreamState;
53
+ /**
54
+ * Get the exposed value from stream state.
55
+ * For keyed mode, converts the internal Record to an array (values in insertion order).
56
+ *
57
+ * @param state Stream state
58
+ * @param keyAccessor Key accessor (null for custom mode)
59
+ * @returns The value to expose to components
60
+ */
61
+ export declare function getStreamValue(state: StreamState, keyAccessor: string | null): unknown;
62
+ /**
63
+ * Calculate exponential backoff delay.
64
+ */
65
+ export declare function getBackoffDelay(retryCount: number): number;
66
+ /**
67
+ * Parameters for stream atom, serialized as JSON string for atom key.
68
+ * Contains everything needed to start the SSE connection.
69
+ */
70
+ export interface StreamAtomParams {
71
+ /** StreamVariable uid */
72
+ uid: string;
73
+ /** Resolved dependency values to send to server */
74
+ resolvedValues: unknown[];
75
+ /** Original variables array (for normalization) */
76
+ variables: unknown[];
77
+ /** Key accessor for keyed mode */
78
+ keyAccessor: string | null;
79
+ /** Request extras (headers, etc.) */
80
+ extras: RequestExtras;
81
+ }
82
+ export declare function serializeAtomParams(params: StreamAtomParams): string;
83
+ export declare function deserializeAtomParams(key: string): StreamAtomParams;
84
+ /**
85
+ * Callback interface for stream connection events.
86
+ */
87
+ interface StreamConnectionCallbacks {
88
+ /** Called when first data arrives - resolves the initial Promise */
89
+ onFirstData: (state: StreamState) => void;
90
+ /** Called for subsequent data updates */
91
+ onUpdate: (state: StreamState) => void;
92
+ /** Called on error after max retries */
93
+ onError: (error: string) => void;
94
+ }
95
+ /**
96
+ * Start an SSE connection for a stream variable.
97
+ *
98
+ * @param params Stream atom params (contains uid, resolved values, etc.)
99
+ * @param callbacks Callbacks for stream events
100
+ * @returns Cleanup function to abort the connection
101
+ */
102
+ declare function startStreamConnection(params: StreamAtomParams, callbacks: StreamConnectionCallbacks): () => void;
103
+ /**
104
+ * Get or create a stream variable atom for the given params.
105
+ * The atom has effects that manage the SSE connection lifecycle.
106
+ * Registers the atom in streamAtomRegistry for tracking.
107
+ *
108
+ * @param atomKey Serialized StreamAtomParams
109
+ * @returns Recoil atom for stream state
110
+ */
111
+ export declare function getOrCreateStreamVariableAtom(atomKey: string): RecoilState<StreamState>;
112
+ /**
113
+ * Get or register selector for a StreamVariable.
114
+ * Handles nested resolution if 'nested' is set.
115
+ *
116
+ * Layer 3 of 3.
117
+ *
118
+ * @param variable StreamVariable definition
119
+ * @param client WebSocket client (for resolving dependencies)
120
+ * @param taskContext Global task context
121
+ * @param extras Request extras
122
+ * @returns Recoil selector that resolves to the stream value
123
+ */
124
+ export declare function getOrRegisterStreamVariable(variable: StreamVariable, client: WebSocketClientInterface, taskContext: GlobalTaskContext, extras: RequestExtras): RecoilValue<unknown>;
125
+ /**
126
+ * Internal exports for testing
127
+ */
128
+ export declare const _internal: {
129
+ streamAtomFamily: (param: string) => RecoilState<StreamState>;
130
+ activeConnections: Map<string, AbortController>;
131
+ getBackoffDelay: typeof getBackoffDelay;
132
+ serializeAtomParams: typeof serializeAtomParams;
133
+ deserializeAtomParams: typeof deserializeAtomParams;
134
+ startStreamConnection: typeof startStreamConnection;
135
+ };
136
+ export {};
137
+ //# sourceMappingURL=stream-variable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stream-variable.d.ts","sourceRoot":"","sources":["../../../js/shared/interactivity/stream-variable.tsx"],"names":[],"mappings":"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"}