tungsten 0.1.46 → 0.1.49

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 (143) hide show
  1. package/dist/Components.d.ts +6 -2
  2. package/dist/Components.d.ts.map +1 -1
  3. package/dist/Components.js +40 -14
  4. package/dist/CssNames.js +1 -1
  5. package/dist/DomPointer.js +1 -1
  6. package/dist/DomRegion.d.ts +1 -0
  7. package/dist/DomRegion.d.ts.map +1 -1
  8. package/dist/DomRegion.js +14 -2
  9. package/dist/Framework.js +1 -1
  10. package/dist/FunctionComponentStandIn.d.ts +1 -0
  11. package/dist/FunctionComponentStandIn.d.ts.map +1 -1
  12. package/dist/FunctionComponentStandIn.js +1 -1
  13. package/dist/Instance/Instance.js +1 -1
  14. package/dist/NoDeproxy.js +1 -1
  15. package/dist/Script.js +1 -1
  16. package/dist/Servers/DevServer.d.ts +1 -0
  17. package/dist/Servers/DevServer.d.ts.map +1 -1
  18. package/dist/Servers/DevServer.js +1 -1
  19. package/dist/Servers/ProdServer.d.ts +1 -0
  20. package/dist/Servers/ProdServer.d.ts.map +1 -1
  21. package/dist/Servers/ProdServer.js +1 -1
  22. package/dist/Servers/StaticSiteServer.d.ts +1 -0
  23. package/dist/Servers/StaticSiteServer.d.ts.map +1 -1
  24. package/dist/Servers/StaticSiteServer.js +1 -1
  25. package/dist/Store/InternalStoreSchema.js +1 -1
  26. package/dist/Store/makeStore.d.ts.map +1 -1
  27. package/dist/Store/makeStore.js +3 -3
  28. package/dist/TungstenError.js +1 -1
  29. package/dist/TypeExtraction.js +1 -1
  30. package/dist/_client/cjsHelpers.js +1 -1
  31. package/dist/_client/routes.d.ts.map +1 -1
  32. package/dist/_testing/should.d.ts +1 -0
  33. package/dist/_testing/should.d.ts.map +1 -1
  34. package/dist/auth/checkPassword.d.ts +1 -0
  35. package/dist/auth/checkPassword.d.ts.map +1 -1
  36. package/dist/auth/hashPassword.d.ts +1 -0
  37. package/dist/auth/hashPassword.d.ts.map +1 -1
  38. package/dist/babelPlugins/BabelTransformBindDirect.d.ts +0 -1
  39. package/dist/babelPlugins/BabelTransformBindDirect.d.ts.map +1 -1
  40. package/dist/babelPlugins/BabelTransformBindVar.d.ts +0 -1
  41. package/dist/babelPlugins/BabelTransformBindVar.d.ts.map +1 -1
  42. package/dist/babelPlugins/BabelTransformCjsToEsm.d.ts +0 -1
  43. package/dist/babelPlugins/BabelTransformCjsToEsm.d.ts.map +1 -1
  44. package/dist/babelPlugins/BabelTransformCjsToFunction.d.ts +0 -1
  45. package/dist/babelPlugins/BabelTransformCjsToFunction.d.ts.map +1 -1
  46. package/dist/babelPlugins/BabelTransformCjsToFunction2.d.ts.map +1 -1
  47. package/dist/babelPlugins/BabelTransformComponentState.d.ts +0 -1
  48. package/dist/babelPlugins/BabelTransformComponentState.d.ts.map +1 -1
  49. package/dist/babelPlugins/BabelTransformComponentState.js +2 -2
  50. package/dist/babelPlugins/BabelTransformComponentStyles.d.ts.map +1 -1
  51. package/dist/babelPlugins/BabelTransformCssImport.d.ts.map +1 -1
  52. package/dist/babelPlugins/BabelTransformDependencyImportsCjs.d.ts.map +1 -1
  53. package/dist/babelPlugins/BabelTransformDependencyImportsEsm.d.ts.map +1 -1
  54. package/dist/babelPlugins/BabelTransformDependencyImportsOld.d.ts.map +1 -1
  55. package/dist/babelPlugins/BabelTransformDeproxyState.d.ts +0 -1
  56. package/dist/babelPlugins/BabelTransformDeproxyState.d.ts.map +1 -1
  57. package/dist/babelPlugins/BabelTransformJsxExtensionsToJs.d.ts.map +1 -1
  58. package/dist/babelPlugins/BabelTransformPackageImports.d.ts.map +1 -1
  59. package/dist/babelPlugins/BabelTransformReactive.d.ts +0 -1
  60. package/dist/babelPlugins/BabelTransformReactive.d.ts.map +1 -1
  61. package/dist/babelPlugins/BabelTransformReactiveSvelteStyle.d.ts +0 -1
  62. package/dist/babelPlugins/BabelTransformReactiveSvelteStyle.d.ts.map +1 -1
  63. package/dist/babelPlugins/BabelTransformRemoveBlocks.d.ts.map +1 -1
  64. package/dist/babelPlugins/BabelTransformRemoveServerBlocks.d.ts.map +1 -1
  65. package/dist/babelPlugins/BabelTransformSxyFrameworkImports.d.ts.map +1 -1
  66. package/dist/babelPlugins/BabelTransformUniqueComponents.d.ts +0 -1
  67. package/dist/babelPlugins/BabelTransformUniqueComponents.d.ts.map +1 -1
  68. package/dist/browserStorage.d.ts.map +1 -1
  69. package/dist/browserStorage.js +3 -3
  70. package/dist/calculateImportedStaticFileLocations.js +1 -1
  71. package/dist/clone.d.ts +6 -0
  72. package/dist/clone.d.ts.map +1 -0
  73. package/dist/clone.js +19 -0
  74. package/dist/clone.sxyt.d.ts +2 -0
  75. package/dist/clone.sxyt.d.ts.map +1 -0
  76. package/dist/clone.sxyt.js +24 -0
  77. package/dist/componentProxyHandlers.d.ts +5 -0
  78. package/dist/componentProxyHandlers.d.ts.map +1 -1
  79. package/dist/componentProxyHandlers.js +61 -19
  80. package/dist/components/Await.js +1 -1
  81. package/dist/components/GoToComponent.js +1 -1
  82. package/dist/components/Lazy.js +1 -1
  83. package/dist/components/Link.js +1 -1
  84. package/dist/components/Stylesheet.js +1 -1
  85. package/dist/components/bindable/BindableCheckbox.js +1 -1
  86. package/dist/components/bindable/BindableInput.js +1 -1
  87. package/dist/components/bindable/BindableInputNonString.js +1 -1
  88. package/dist/components/bindable/BindableInputString.js +1 -1
  89. package/dist/components/bindable/BindableInputTyped.js +1 -1
  90. package/dist/components/bindable/BindableInputTypedLegacy.js +1 -1
  91. package/dist/components/bindable/BindableRadio.d.ts +14 -0
  92. package/dist/components/bindable/BindableRadio.d.ts.map +1 -0
  93. package/dist/components/bindable/BindableRadio.js +20 -0
  94. package/dist/components/bindable/BindableSelect.js +1 -1
  95. package/dist/components/bindable/BindableTextarea.js +1 -1
  96. package/dist/env/Env.d.ts +2 -0
  97. package/dist/env/Env.d.ts.map +1 -0
  98. package/dist/env/{interfaces.d.ts → Interfaces.d.ts} +1 -1
  99. package/dist/env/Interfaces.d.ts.map +1 -0
  100. package/dist/getEnvSchemas.d.ts.map +1 -1
  101. package/dist/getEnvSchemas.js +1 -1
  102. package/dist/hasDomain.d.ts.map +1 -1
  103. package/dist/hooks/useCallback.js +1 -1
  104. package/dist/hooks/useMemo.js +1 -1
  105. package/dist/hydrate/hydrate.js +61 -14
  106. package/dist/indexInner.d.ts +2 -0
  107. package/dist/indexInner.d.ts.map +1 -1
  108. package/dist/indexInner.js +2 -0
  109. package/dist/makeServerRpc.d.ts.map +1 -1
  110. package/dist/objectMap.d.ts.map +1 -1
  111. package/dist/render/getFunctionBodyAsString.js +1 -1
  112. package/dist/render/instantiateClassComponent.d.ts +1 -2
  113. package/dist/render/instantiateClassComponent.d.ts.map +1 -1
  114. package/dist/render/processRenderingNodeHtml.d.ts.map +1 -1
  115. package/dist/render/processRenderingNodeHtml.js +5 -0
  116. package/dist/requests/fetch/delete.d.ts +2 -1
  117. package/dist/requests/fetch/delete.d.ts.map +1 -1
  118. package/dist/requests/fetch/get.d.ts +2 -1
  119. package/dist/requests/fetch/get.d.ts.map +1 -1
  120. package/dist/requests/fetch/patch.d.ts +2 -1
  121. package/dist/requests/fetch/patch.d.ts.map +1 -1
  122. package/dist/requests/fetch/post.d.ts +2 -1
  123. package/dist/requests/fetch/post.d.ts.map +1 -1
  124. package/dist/requests/fetch/put.d.ts +2 -1
  125. package/dist/requests/fetch/put.d.ts.map +1 -1
  126. package/dist/routing/Default404.js +1 -1
  127. package/dist/routing/Group.js +1 -1
  128. package/dist/routing/MatchedRoute.js +1 -1
  129. package/dist/routing/RoutingRedirect.js +1 -1
  130. package/dist/spawnShellCommand.d.ts +1 -0
  131. package/dist/spawnShellCommand.d.ts.map +1 -1
  132. package/dist/staticGen/staticGen.d.ts.map +1 -1
  133. package/dist/staticGen/staticGen.js +1 -1
  134. package/dist/update/integrateUpdateVdom.d.ts.map +1 -1
  135. package/dist/update/integrateUpdateVdom.js +26 -1
  136. package/package.json +13 -13
  137. package/types/index.d.ts +49 -49
  138. package/types/jsx/html.d.ts +1514 -1514
  139. package/dist/env/env.d.ts +0 -2
  140. package/dist/env/env.d.ts.map +0 -1
  141. package/dist/env/interfaces.d.ts.map +0 -1
  142. /package/dist/env/{env.js → Env.js} +0 -0
  143. /package/dist/env/{interfaces.js → Interfaces.js} +0 -0
@@ -13,6 +13,7 @@ export const getStateProxyHandler = element => ({
13
13
  // So act on that obj as an object that accept all string | symbol keys
14
14
  },
15
15
  set: (obj, key, value) => {
16
+ //console.log('set in proxied state', key, obj)
16
17
  //set: (obj: State, key: string, value: unknown) => {
17
18
  //const isObject = (typeof value === 'object' && value !== null)
18
19
  if (Array.isArray(value)) {
@@ -44,15 +45,19 @@ export const getStateProxyHandler = element => ({
44
45
  }
45
46
  //const varKey = key
46
47
  //this.__reactiveUpdate(varKey)
47
- if (element.__initialized) element.__queueUpdate();
48
+ if (element.__initialized) element.__stateUpdated();
48
49
  return true;
49
50
  },
50
51
  deleteProperty: (obj, key) => {
51
52
  if (key in obj) {
52
53
  delete obj[key]; // we know key is in obj
53
- if (element.__initialized) element.__queueUpdate();
54
+ if (element.__initialized) element.__stateUpdated();
54
55
  }
55
56
  return true;
57
+ },
58
+ has(obj, key) {
59
+ if (key === $original || key === $ownerName) return true;
60
+ return key in obj;
56
61
  }
57
62
  });
58
63
  // intercept get sna dsets within state objects to proxy child objects and trigger component updates
@@ -63,7 +68,7 @@ export const getStateObjectProxyHandler = element => ({
63
68
  // So act on that obj as an object that accept all string | symbol keys
64
69
  },
65
70
  set: (obj, key, value) => {
66
- //console.log('proxied object set')
71
+ //console.log('set in proxied object', key, obj)
67
72
  if (Array.isArray(value)) {
68
73
  // arrays
69
74
  obj[key]
@@ -93,15 +98,19 @@ export const getStateObjectProxyHandler = element => ({
93
98
  }
94
99
  //const varKey = key
95
100
  //this.__reactiveUpdate(varKey)
96
- if (element.__initialized) element.__queueUpdate();
101
+ if (element.__initialized) element.__stateUpdated();
97
102
  return true;
98
103
  },
99
104
  deleteProperty: (obj, key) => {
100
105
  if (key in obj) {
101
106
  delete obj[key]; // we know key is in obj
102
- if (element.__initialized) element.__queueUpdate();
107
+ if (element.__initialized) element.__stateUpdated();
103
108
  }
104
109
  return true;
110
+ },
111
+ has(obj, key) {
112
+ if (key === $original || key === $ownerName) return true;
113
+ return key in obj;
105
114
  }
106
115
  });
107
116
  // intercept calls to array prototype funcs that mutate the array, to trigger an update
@@ -122,7 +131,7 @@ export const getStateArrayProxyHandler = element => ({
122
131
  // reactivity
123
132
  //const varKey = key
124
133
  //this.__reactiveUpdate(varKey)
125
- if (element.__initialized) element.__queueUpdate();
134
+ if (element.__initialized) element.__stateUpdated();
126
135
  };
127
136
  }
128
137
  }
@@ -130,7 +139,7 @@ export const getStateArrayProxyHandler = element => ({
130
139
  return arr[key];
131
140
  },
132
141
  set: (arr, key, value) => {
133
- //console.log('proxied array set')
142
+ //console.log('set in proxied array', arr, key)
134
143
  //if (typeof key === 'string') {
135
144
  if (Array.isArray(value)) {
136
145
  // arrays
@@ -155,8 +164,12 @@ export const getStateArrayProxyHandler = element => ({
155
164
  //const varKey = key
156
165
  //warn('__stateArrayProxyHandler set __reactiveUpdate key may overlap between strings and numbers')
157
166
  //this.__reactiveUpdate(String(varKey))
158
- if (element.__initialized) element.__queueUpdate();
167
+ if (element.__initialized) element.__stateUpdated();
159
168
  return true;
169
+ },
170
+ has(arr, key) {
171
+ if (key === $original || key === $ownerName) return true;
172
+ return key in arr;
160
173
  }
161
174
  });
162
175
  // intercept calls to array prototype funcs that mutate the array, to trigger an update
@@ -169,6 +182,7 @@ export const getStateMapProxyHandler = element => ({
169
182
  if (typeof key === 'string') {
170
183
  if (key === '__original') return map; // return the internal object if requested
171
184
  if (KeyIsMapMutatingFunction(key)) {
185
+ //console.log('map mutating func called', key, map)
172
186
  if (key === 'set') {
173
187
  // SETTING - should we handle nested objects?
174
188
  return (...args) => {
@@ -179,7 +193,7 @@ export const getStateMapProxyHandler = element => ({
179
193
  // reactivity
180
194
  //const varKey = key
181
195
  //this.__reactiveUpdate(varKey)
182
- if (element.__initialized) element.__queueUpdate();
196
+ if (element.__initialized) element.__stateUpdated();
183
197
  };
184
198
  } else {
185
199
  return (...args) => {
@@ -190,7 +204,7 @@ export const getStateMapProxyHandler = element => ({
190
204
  // reactivity
191
205
  //const varKey = key
192
206
  //this.__reactiveUpdate(varKey)
193
- if (element.__initialized) element.__queueUpdate();
207
+ if (element.__initialized) element.__stateUpdated();
194
208
  };
195
209
  }
196
210
  }
@@ -202,6 +216,10 @@ export const getStateMapProxyHandler = element => ({
202
216
  // if (typeof map[key] === 'function') return map[key].bind(map)
203
217
  // // @ts-ignore // TS doesn't like us accessing array by string key
204
218
  // return map[key]
219
+ },
220
+ has(map, key) {
221
+ if (key === $original || key === $ownerName) return true;
222
+ return key in map;
205
223
  }
206
224
  });
207
225
  // intercept calls to array prototype funcs that mutate the array, to trigger an update
@@ -214,6 +232,7 @@ export const getStateSetProxyHandler = element => ({
214
232
  if (typeof key === 'string') {
215
233
  if (key === '__original') return set; // return the internal object if requested
216
234
  if (KeyIsSetMutatingFunction(key)) {
235
+ //console.log('set mutating func called', key, set)
217
236
  if (key === 'add') {
218
237
  // ADDING - should we handle nested objects?
219
238
  return (...args) => {
@@ -223,9 +242,10 @@ export const getStateSetProxyHandler = element => ({
223
242
  // reactivity
224
243
  //const varKey = key
225
244
  //this.__reactiveUpdate(varKey)
226
- if (element.__initialized) element.__queueUpdate();
245
+ if (element.__initialized) element.__stateUpdated();
227
246
  };
228
247
  } else {
248
+ //console.log('set in proxied object', key, set)
229
249
  return (...args) => {
230
250
  set[key](
231
251
  // @ts-ignore -- don't wanna deal with args compatibility
@@ -233,7 +253,7 @@ export const getStateSetProxyHandler = element => ({
233
253
  // reactivity
234
254
  //const varKey = key
235
255
  //this.__reactiveUpdate(varKey)
236
- if (element.__initialized) element.__queueUpdate();
256
+ if (element.__initialized) element.__stateUpdated();
237
257
  };
238
258
  }
239
259
  }
@@ -242,6 +262,10 @@ export const getStateSetProxyHandler = element => ({
242
262
  const v = set[key];
243
263
  if (typeof v === 'function') return v.bind(set);
244
264
  return v;
265
+ },
266
+ has(set, key) {
267
+ if (key === $original || key === $ownerName) return true;
268
+ return key in set;
245
269
  }
246
270
  });
247
271
  // export function proxyStateContent<O extends object>(element: StatefulComponentAny, object: O) {
@@ -274,12 +298,13 @@ export const getStateSetProxyHandler = element => ({
274
298
  // }
275
299
  // }
276
300
  export function proxyObjectContent(element, object) {
301
+ //console.log('proxying object content', object, 'for', element.constructor.name)
277
302
  for (const key in object) {
303
+ //console.log('proxy key', key)
278
304
  const value = object[key];
279
305
  if (typeof value === 'object' && value !== null) {
280
306
  // objects, including array
281
307
  if (Array.isArray(value)) {
282
- proxyArrayContent(element, value);
283
308
  object[key]
284
309
  //= new Proxy(value, getStateObjectProxyHandler(element))
285
310
  = proxyArray(value, element);
@@ -288,7 +313,8 @@ export function proxyObjectContent(element, object) {
288
313
  && objectTypesToProxy.includes(value.constructor.name) // ensure that it is an object literal or otherwise an approve object type
289
314
  ) {
290
315
  // plain objects
291
- proxyObjectContent(element, value);
316
+ //proxyObjectContent(element, value)
317
+ // check that this thing hasn't already been proxied somewhere?
292
318
  object[key]
293
319
  //= new Proxy(value, getStateObjectProxyHandler(element))
294
320
  = proxyObject(value, element);
@@ -309,12 +335,14 @@ export function proxyObjectContent(element, object) {
309
335
  }
310
336
  }
311
337
  export function proxyArrayContent(element, array) {
338
+ //console.log('proxying array content', array, 'for', element.constructor.name)
312
339
  for (const key in array) {
340
+ //console.log('proxying arr key', key)
313
341
  const value = array[key];
314
342
  if (typeof value === 'object' && value !== null) {
315
343
  // objects, including array
316
344
  if (Array.isArray(value)) {
317
- proxyArrayContent(element, value);
345
+ //proxyArrayContent(element, value)
318
346
  array[key]
319
347
  //= new Proxy(value, getStateObjectProxyHandler(element))
320
348
  = proxyArray(value, element);
@@ -323,7 +351,7 @@ export function proxyArrayContent(element, array) {
323
351
  && objectTypesToProxy.includes(value.constructor.name) // ensure that it is an object literal or otherwise an approve object type
324
352
  ) {
325
353
  // plain objects
326
- proxyObjectContent(element, value);
354
+ //proxyObjectContent(element, value)
327
355
  array[key]
328
356
  //= new Proxy(value, getStateObjectProxyHandler(element))
329
357
  = proxyObject(value, element);
@@ -344,26 +372,40 @@ export function proxyArrayContent(element, array) {
344
372
  }
345
373
  }
346
374
  function proxyObject(obj, element) {
375
+ //console.log('proxyObject', obj, element.constructor.name)
376
+ //console.log('__org', '__original' in obj, obj.__original)
377
+ //console.log('org', $original in obj, 'on', $ownerName in obj)
378
+ //console.log('orgv', obj[$original], 'onv', obj[$ownerName])
379
+ //console.log(Object.getOwnPropertySymbols(obj))
347
380
  if ($original in obj && $ownerName in obj) {
348
381
  throwError('proxyObject', `object in ${element.constructor.name} state is already in the state of a ${obj[$ownerName]}`);
349
382
  }
383
+ proxyObjectContent(element, obj);
350
384
  return new Proxy(obj, getStateObjectProxyHandler(element)); // if an plan object was set, proxy it too. If an object has a class other than Object, we'll leave it alone
351
385
  }
352
386
  function proxyArray(arr, element) {
387
+ //console.log('proxyArray')
388
+ //console.log('__org', '__original' in arr, arr.__original)
389
+ //console.log('org', $original in arr, 'on', $ownerName in arr)
390
+ //console.log('orgv', arr[$original], 'onv', arr[$ownerName])
391
+ //console.log(Object.getOwnPropertySymbols(arr))
353
392
  if ($original in arr && $ownerName in arr) {
354
- throwError('proxyObject', `array in ${element.constructor.name} state is already in the state of a ${arr[$ownerName]}`);
393
+ throwError('proxyArray', `array in ${element.constructor.name} state is already in the state of a ${arr[$ownerName]}`);
355
394
  }
395
+ proxyArrayContent(element, arr);
356
396
  return new Proxy(arr, getStateArrayProxyHandler(element));
357
397
  }
358
398
  function proxySet(set, element) {
399
+ //console.log('proxySet')
359
400
  if ($original in set && $ownerName in set) {
360
- throwError('proxyObject', `Set in ${element.constructor.name} state is already in the state of a ${set[$ownerName]}`);
401
+ throwError('proxySet', `Set in ${element.constructor.name} state is already in the state of a ${set[$ownerName]}`);
361
402
  }
362
403
  return new Proxy(set, getStateSetProxyHandler(element));
363
404
  }
364
405
  function proxyMap(map, element) {
406
+ //console.log('proxyMap')
365
407
  if ($original in map && $ownerName in map) {
366
- throwError('proxyObject', `Map in ${element.constructor.name} state is already in the state of a ${map[$ownerName]}`);
408
+ throwError('proxyMap', `Map in ${element.constructor.name} state is already in the state of a ${map[$ownerName]}`);
367
409
  }
368
410
  return new Proxy(map, getStateMapProxyHandler(element));
369
411
  }
@@ -1,4 +1,4 @@
1
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  //import type { JsxContent } from './JsxContent.js'
@@ -1,4 +1,4 @@
1
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  import { TungstenSimpleComponent } from "../Components.js";
@@ -1,4 +1,4 @@
1
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  import { TungstenStatefulComponent } from "../Components.js";
@@ -1,4 +1,4 @@
1
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  import { TungstenSimpleComponent } from "../Components.js";
@@ -1,4 +1,4 @@
1
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  import { TungstenSimpleComponent } from "../Components.js";
@@ -1,4 +1,4 @@
1
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  import { TungstenSimpleComponent } from "../../Components.js";
@@ -1,4 +1,4 @@
1
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  import { TungstenSimpleComponent } from "../../Components.js";
@@ -1,4 +1,4 @@
1
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  import { TungstenSimpleComponent } from "../../Components.js";
@@ -1,4 +1,4 @@
1
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  import { TungstenSimpleComponent } from "../../Components.js";
@@ -1,4 +1,4 @@
1
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  import { TungstenSimpleComponent } from "../../Components.js";
@@ -1,4 +1,4 @@
1
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  import { TungstenSimpleComponent } from "../../Components.js";
@@ -0,0 +1,14 @@
1
+ import type { TypedBindVariable } from './BindVariable.js';
2
+ import type { InputHTMLAttributes } from '../../../types/jsx/html.js';
3
+ import { TungstenSimpleComponent } from '../../Components.jsx';
4
+ import { DetailedHTMLProps } from '../../../types/jsx/jsx.js';
5
+ type BasicProps = {};
6
+ export type BindableRadioProps<O extends object, K extends keyof O> = Omit<DetailedHTMLProps<InputHTMLAttributes<HTMLInputElement, O>, HTMLInputElement>, 'value'> & BasicProps & {
7
+ value: O[K];
8
+ bindRadio?: TypedBindVariable<O, K>;
9
+ };
10
+ export declare class BindableRadio<O extends object, K extends keyof O> extends TungstenSimpleComponent<BindableRadioProps<O, K>> {
11
+ content: () => import("../../ContentNode.js").ContentNode;
12
+ }
13
+ export {};
14
+ //# sourceMappingURL=BindableRadio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BindableRadio.d.ts","sourceRoot":"","sources":["../../../src/components/bindable/BindableRadio.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,KAAK,EAAqB,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAExF,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAE9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAE7D,KAAK,UAAU,GAAG,EAOjB,CAAA;AAED,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,IAC5D,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC,GAC5F,UAAU,GACV;IACE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IACX,SAAS,CAAC,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;CACtC,CAAA;AAML,qBAAa,aAAa,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,CAC1D,SAAQ,uBAAuB,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACzD,OAAO,mDAEN;CACJ"}
@@ -0,0 +1,20 @@
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
+ import { TungstenSimpleComponent } from "../../Components.js";
5
+ // boolean extends O[K]
6
+ // ? { filter?: FilterCheckedFunc<InputKeyboardEvent, O[K]> | undefined }
7
+ // : { filter: FilterCheckedFunc<InputKeyboardEvent, O[K]> }
8
+ // )
9
+ import { jsx as _jsx } from "tungsten/jsxRuntime.js";
10
+ export class BindableRadio extends TungstenSimpleComponent {
11
+ constructor(...args) {
12
+ super(...args);
13
+ _defineProperty(this, "content", () => {
14
+ return _jsx("input", {
15
+ type: "radio",
16
+ ...this.props
17
+ });
18
+ });
19
+ }
20
+ }
@@ -1,4 +1,4 @@
1
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  import { TungstenSimpleComponent } from "../../Components.js";
@@ -1,4 +1,4 @@
1
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  import { TungstenSimpleComponent } from "../../Components.js";
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Env.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Env.d.ts","sourceRoot":"","sources":["../../src/env/Env.ts"],"names":[],"mappings":""}
@@ -6,4 +6,4 @@ declare global {
6
6
  }
7
7
  }
8
8
  export {};
9
- //# sourceMappingURL=interfaces.d.ts.map
9
+ //# sourceMappingURL=Interfaces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Interfaces.d.ts","sourceRoot":"","sources":["../../src/env/Interfaces.ts"],"names":[],"mappings":"AACA,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,kBAAkB;QACxB,oBAAoB,EAAE,MAAM,CAAA;KAC/B;IACD,MAAM,WAAW,iBAAiB;KAAG;CACxC"}
@@ -1 +1 @@
1
- {"version":3,"file":"getEnvSchemas.d.ts","sourceRoot":"","sources":["../src/getEnvSchemas.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAEnE,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,CAAA;AAG7B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAE5C,MAAM,MAAM,UAAU,GAAG;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC,WAAW,GAAG,kBAAkB,CAAC,CAAC;IAC7D,eAAe,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;CAC1C,CAAA;AAGD,wBAAsB,aAAa,CAAC,MAAM,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACjH,wBAAsB,aAAa,CAAC,MAAM,EAAE,uBAAuB,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAsDpH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,uBAE3E"}
1
+ {"version":3,"file":"getEnvSchemas.d.ts","sourceRoot":"","sources":["../src/getEnvSchemas.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAEnE,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,CAAA;AAG7B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAE5C,MAAM,MAAM,UAAU,GAAG;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC,WAAW,GAAG,kBAAkB,CAAC,CAAC;IAC7D,eAAe,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;CAC1C,CAAA;AAGD,wBAAsB,aAAa,CAAC,MAAM,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACjH,wBAAsB,aAAa,CAAC,MAAM,EAAE,uBAAuB,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AA4DpH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,uBAAuB,EAAE,IAAI,EAAE,IAAI,uBAE3E"}
@@ -36,7 +36,7 @@ export async function getEnvSchemas(config, load = null, dev = false) {
36
36
  }
37
37
  return envSchemas;
38
38
  } catch (e) {
39
- throwError('getEnvSchemas()', `Error loading env schemas file\n${e}`);
39
+ throwError('getEnvSchemas()', `Error loading env schemas file` + `\n${e}` + `\nExpected to find a file with Zod schemas at ${envSchemasLocation}` + `\nThis location is set with the envSchemasLocations setting in tungsten.config.js`);
40
40
  }
41
41
  }
42
42
  export function getEnvSchemasDev(config, load) {
@@ -1 +1 @@
1
- {"version":3,"file":"hasDomain.d.ts","sourceRoot":"","sources":["../src/hasDomain.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS,GAAI,IAAI,EAAE,MAAM,SAAS,MAAM,QAC3C,IAAI,QACJ,MAAM,KACb,IAAI,IAAI,IAAI,GAAG,WAAW,CAAC,MAAM,CAAqC,CAAA;AAuBzE,MAAM,MAAM,QAAQ,CAAC,IAAI,IAAI,OAAO,SAAS,IAAI,GAC3C,MAAM,GACN,IAAI,SAAS,MAAM,GACf,QAAQ,GACR,IAAI,SAAS,MAAM,GACf,QAAQ,GACR,IAAI,SAAS,MAAM,GACf,QAAQ,GACR,IAAI,SAAS,OAAO,GAChB,SAAS,GACT,IAAI,SAAS,SAAS,GAClB,WAAW,GACX,IAAI,SAAS,IAAI,GACb,MAAM,GACN,IAAI,SAAS,MAAM,GACf,QAAQ,GACR,IAAI,SAAS,MAAM,GACf,QAAQ,GACR,KAAK,CAAA;AAE3C,KAAK,aAAa,GAAG;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,SAAS,CAAA;IACpB,IAAI,EAAE,IAAI,CAAA;CACb,CAAA;AAKD,eAAO,MAAM,QAAQ,GAAI,IAAI,QAAQ,IAAI,KAUhC,QAAQ,CAAC,IAAI,CACrB,CAAA;AAGD,KAAK,QAAQ,CAAC,CAAC,IAAI;KAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAC,GAAG,OAAO,CAAA;AAEnD,MAAM,MAAM,WAAW,CAAC,IAAI,SAAS,MAAM,IAAI,MAAM,SAAS,IAAI,GAC5D,OAAO,GACP,aAAa,CAAC,IAAI,CAAC,CAAA;AAEzB,MAAM,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,aAAa,CAAC,CAAA"}
1
+ {"version":3,"file":"hasDomain.d.ts","sourceRoot":"","sources":["../src/hasDomain.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS,kDAEZ,MAAM,uCACyD,CAAA;AAuBzE,MAAM,MAAM,QAAQ,CAAC,IAAI,IAAI,OAAO,SAAS,IAAI,GAC3C,MAAM,GACN,IAAI,SAAS,MAAM,GACf,QAAQ,GACR,IAAI,SAAS,MAAM,GACf,QAAQ,GACR,IAAI,SAAS,MAAM,GACf,QAAQ,GACR,IAAI,SAAS,OAAO,GAChB,SAAS,GACT,IAAI,SAAS,SAAS,GAClB,WAAW,GACX,IAAI,SAAS,IAAI,GACb,MAAM,GACN,IAAI,SAAS,MAAM,GACf,QAAQ,GACR,IAAI,SAAS,MAAM,GACf,QAAQ,GACR,KAAK,CAAA;AAE3C,KAAK,aAAa,GAAG;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,SAAS,CAAA;IACpB,IAAI,EAAE,IAAI,CAAA;CACb,CAAA;AAKD,eAAO,MAAM,QAAQ,sCAWpB,CAAA;AAGD,KAAK,QAAQ,CAAC,CAAC,IAAI;KAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAC,GAAG,OAAO,CAAA;AAEnD,MAAM,MAAM,WAAW,CAAC,IAAI,SAAS,MAAM,IAAI,MAAM,SAAS,IAAI,GAC5D,OAAO,GACP,aAAa,CAAC,IAAI,CAAC,CAAA;AAEzB,MAAM,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,aAAa,CAAC,CAAA"}
@@ -3,7 +3,7 @@ import { shallowCompare } from "./shallowCompare.js";
3
3
  export function useCallback(func, dependencies) {
4
4
  const c = getCurrentComponent();
5
5
  const index = c.useCallbackIndex++;
6
- const exists = index in c.callbacks;
6
+ const exists = (index in c.callbacks);
7
7
  if (exists) {
8
8
  for (const callback of c.callbacks[index]) {
9
9
  if (shallowCompare(callback.dependencies, dependencies)) {
@@ -3,7 +3,7 @@ import { shallowCompare } from "./shallowCompare.js";
3
3
  export function useMemo(action, dependencies) {
4
4
  const c = getCurrentComponent();
5
5
  const index = c.useMemoIndex++;
6
- const exists = index in c.memos;
6
+ const exists = (index in c.memos);
7
7
  if (exists) {
8
8
  for (const memo of c.memos[index]) {
9
9
  if (shallowCompare(memo.dependencies, dependencies)) {
@@ -461,25 +461,48 @@ function hydrateAttributes(node, domNode) {
461
461
  } else if (key === 'bindChecked' && ContentNodeElementIsHtml(node)) {
462
462
  // not checking that el is bindable, don't think its necessary
463
463
  debug('binding checked');
464
- const [bindObject, bindKey] = node[$props][key];
465
- domNode.checked = bindObject[bindKey]; // nullish coalesce to avoid putting undef/null into elements
464
+ const [bindObject, bindKey] = node[$props][key]; // eslint-disable-line no-type-assertion/no-type-assertion
465
+ domNode.checked = bindObject[bindKey];
466
466
  const eventName = 'input';
467
- let handler;
468
- if ('filterChecked' in node[$props]) {
469
- const filterFunc = node[$props].filterChecked;
470
- handler = async event => {
471
- bindObject[bindKey] = await filterFunc(event.target.checked, event);
472
- };
473
- } else {
474
- handler = event => {
475
- bindObject[bindKey] = event.target.checked;
476
- };
477
- }
467
+ //let handler
468
+ // if ('filterChecked' in node[$props]) {
469
+ // const filterFunc = node[$props].filterChecked as FilterCheckedFunc<any, any>
470
+ // handler = async (event: Event) => {
471
+ // bindObject[bindKey] = await filterFunc((event.target as HTMLCheckedBindableElement).checked, event)
472
+ // }
473
+ // } else {
474
+ const handler = event => {
475
+ bindObject[bindKey] = event.target.checked; // eslint-disable-line no-type-assertion/no-type-assertion
476
+ };
477
+ //}
478
478
  domNode.addEventListener(eventName, handler);
479
479
  domNode[htmlEventHandlerKey(eventName)] = handler;
480
480
  domNode['oninput'] = handler;
481
481
  //domNode.addEventListener(eventName, handler)
482
482
  domNode[htmlEventHandlerKey(eventName)] = handler;
483
+ } else if (key === 'bindRadio' && ContentNodeElementIsHtml(node)) {
484
+ // not checking that el is bindable, don't think its necessary
485
+ debug('binding radio');
486
+ const [bindObject, bindKey] = node[$props][key]; // eslint-disable-line no-type-assertion/no-type-assertion
487
+ domNode.checked = node[$props].value === bindObject[bindKey];
488
+ const eventName = 'change';
489
+ //let handler
490
+ // if ('filter' in node[$props]) {
491
+ // const filterFunc = node[$props].filter as FilterCheckedFunc<any, any> // eslint-disable-line no-type-assertion/no-type-assertion
492
+ // handler = async (event: HTMLElementEventMap['change']) => {
493
+ // console.log('radio changed handler')
494
+ // bindObject[bindKey] = await filterFunc((event.target as HTMLCheckedBindableElement).checked, event) // eslint-disable-line no-type-assertion/no-type-assertion
495
+ // }
496
+ // } else {
497
+ const handler = event => {
498
+ console.log('bound radio changed 1');
499
+ bindObject[bindKey] = event.target.value; // eslint-disable-line no-type-assertion/no-type-assertion
500
+ };
501
+ //}
502
+ // eslint-disable-next-line no-type-assertion/no-type-assertion
503
+ domNode.addEventListener(eventName, handler);
504
+ domNode['onchange'] = handler;
505
+ domNode[htmlEventHandlerKey(eventName)] = handler;
483
506
  }
484
507
  }
485
508
  debug('--');
@@ -574,7 +597,7 @@ function processAttributes(node) {
574
597
  if (eventName in props) {
575
598
  props[eventName] = async event => {
576
599
  await handler(event);
577
- props[eventName];
600
+ props[eventName](event);
578
601
  };
579
602
  } else {
580
603
  props[eventName] = handler;
@@ -586,6 +609,30 @@ function processAttributes(node) {
586
609
  // domNode[htmlEventHandlerKey(eventName)] = handler
587
610
  delete props.bindChecked;
588
611
  delete props.filterChecked;
612
+ } else if (key === 'bindRadio' && ContentNodeElementIsHtml(node)) {
613
+ // not checking that el is bindable, don't think its necessary
614
+ debug('binding radio');
615
+ const eventName = 'onChange';
616
+ const [bindObject, bindKey] = props[key];
617
+ props.checked = bindObject[bindKey] === node[$props].value;
618
+ const handler = event => {
619
+ console.log('bound radio changed 2');
620
+ bindObject[bindKey] = event.target.value;
621
+ };
622
+ if (eventName in props) {
623
+ props[eventName] = async event => {
624
+ await handler(event);
625
+ props[eventName](event);
626
+ };
627
+ } else {
628
+ props[eventName] = handler;
629
+ }
630
+ // domNode.addEventListener(eventName, handler)
631
+ // domNode[htmlEventHandlerKey(eventName)] = handler
632
+ // domNode['oninput'] = handler
633
+ // //domNode.addEventListener(eventName, handler)
634
+ // domNode[htmlEventHandlerKey(eventName)] = handler
635
+ delete props.bindRadio;
589
636
  }
590
637
  }
591
638
  debug('--');
@@ -4,10 +4,12 @@ TungstenBaseSimpleStoreComponent, TungstenBaseSimpleStoreComponent as BaseSimple
4
4
  export * from './alive.js';
5
5
  export * from './appOutput.js';
6
6
  export * from './AssignedStyle.js';
7
+ export * from './clone.js';
7
8
  export * from './components/Await.js';
8
9
  export * from './components/bindable/BindableCheckbox.jsx';
9
10
  export * from './components/bindable/BindableInput.jsx';
10
11
  export * from './components/bindable/BindableInputTyped.jsx';
12
+ export * from './components/bindable/BindableRadio.jsx';
11
13
  export * from './components/bindable/BindableSelect.jsx';
12
14
  export * from './components/bindable/BindableTextarea.jsx';
13
15
  export * from './browserStorage.js';
@@ -1 +1 @@
1
- {"version":3,"file":"indexInner.d.ts","sourceRoot":"","sources":["../src/indexInner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"indexInner.d.ts","sourceRoot":"","sources":["../src/indexInner.ts"],"names":[],"mappings":"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"}