foldkit 0.90.0 → 0.91.0

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 (103) hide show
  1. package/README.md +21 -10
  2. package/dist/canvas/index.d.ts +5 -0
  3. package/dist/canvas/index.d.ts.map +1 -0
  4. package/dist/canvas/index.js +2 -0
  5. package/dist/canvas/paint.d.ts +14 -0
  6. package/dist/canvas/paint.d.ts.map +1 -0
  7. package/dist/canvas/paint.js +144 -0
  8. package/dist/canvas/public.d.ts +3 -0
  9. package/dist/canvas/public.d.ts.map +1 -0
  10. package/dist/canvas/public.js +1 -0
  11. package/dist/canvas/shape.d.ts +188 -0
  12. package/dist/canvas/shape.d.ts.map +1 -0
  13. package/dist/canvas/shape.js +103 -0
  14. package/dist/canvas/view.d.ts +38 -0
  15. package/dist/canvas/view.d.ts.map +1 -0
  16. package/dist/canvas/view.js +97 -0
  17. package/dist/devTools/overlay.d.ts.map +1 -1
  18. package/dist/devTools/overlay.js +148 -148
  19. package/dist/devTools/store.d.ts +1 -1
  20. package/dist/devTools/store.d.ts.map +1 -1
  21. package/dist/devTools/store.js +1 -2
  22. package/dist/html/index.d.ts +3 -3
  23. package/dist/html/index.d.ts.map +1 -1
  24. package/dist/index.d.ts +1 -0
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +1 -0
  27. package/dist/runtime/crashUI.js +30 -30
  28. package/dist/runtime/runtime.d.ts.map +1 -1
  29. package/dist/runtime/runtime.js +15 -10
  30. package/dist/subscription/animationFrame.d.ts +53 -0
  31. package/dist/subscription/animationFrame.d.ts.map +1 -0
  32. package/dist/subscription/animationFrame.js +47 -0
  33. package/dist/subscription/public.d.ts +2 -0
  34. package/dist/subscription/public.d.ts.map +1 -1
  35. package/dist/subscription/public.js +1 -0
  36. package/dist/test/apps/bubbling.js +4 -4
  37. package/dist/test/apps/disabledButton.js +10 -10
  38. package/dist/test/apps/fileUpload.d.ts.map +1 -1
  39. package/dist/test/apps/fileUpload.js +13 -13
  40. package/dist/test/apps/interactions.d.ts.map +1 -1
  41. package/dist/test/apps/interactions.js +15 -15
  42. package/dist/test/apps/keypress.js +8 -8
  43. package/dist/test/apps/login.d.ts.map +1 -1
  44. package/dist/test/apps/login.js +32 -24
  45. package/dist/test/apps/logoutButton.d.ts.map +1 -1
  46. package/dist/test/apps/logoutButton.js +2 -2
  47. package/dist/test/apps/mountPanel.js +10 -10
  48. package/dist/test/apps/multiRole.js +3 -3
  49. package/dist/test/apps/pointer.d.ts.map +1 -1
  50. package/dist/test/apps/pointer.js +11 -11
  51. package/dist/test/apps/resumeUpload.d.ts.map +1 -1
  52. package/dist/test/apps/resumeUpload.js +8 -8
  53. package/dist/ui/animation/index.js +24 -24
  54. package/dist/ui/button/index.d.ts.map +1 -1
  55. package/dist/ui/button/index.js +6 -6
  56. package/dist/ui/calendar/index.d.ts.map +1 -1
  57. package/dist/ui/calendar/index.js +101 -99
  58. package/dist/ui/checkbox/index.d.ts.map +1 -1
  59. package/dist/ui/checkbox/index.js +15 -15
  60. package/dist/ui/combobox/shared.d.ts.map +1 -1
  61. package/dist/ui/combobox/shared.js +102 -90
  62. package/dist/ui/datePicker/index.js +4 -4
  63. package/dist/ui/dialog/index.d.ts.map +1 -1
  64. package/dist/ui/dialog/index.js +27 -27
  65. package/dist/ui/disclosure/index.d.ts.map +1 -1
  66. package/dist/ui/disclosure/index.js +24 -22
  67. package/dist/ui/dragAndDrop/index.d.ts +1 -1
  68. package/dist/ui/dragAndDrop/index.d.ts.map +1 -1
  69. package/dist/ui/dragAndDrop/index.js +15 -15
  70. package/dist/ui/fieldset/index.js +6 -6
  71. package/dist/ui/fileDrop/index.d.ts +2 -2
  72. package/dist/ui/fileDrop/index.d.ts.map +1 -1
  73. package/dist/ui/fileDrop/index.js +16 -16
  74. package/dist/ui/input/index.d.ts.map +1 -1
  75. package/dist/ui/input/index.js +15 -13
  76. package/dist/ui/listbox/multi.d.ts +1 -1
  77. package/dist/ui/listbox/shared.d.ts +1 -1
  78. package/dist/ui/listbox/shared.d.ts.map +1 -1
  79. package/dist/ui/listbox/shared.js +85 -79
  80. package/dist/ui/listbox/single.d.ts +1 -1
  81. package/dist/ui/menu/index.d.ts.map +1 -1
  82. package/dist/ui/menu/index.js +69 -67
  83. package/dist/ui/popover/index.d.ts.map +1 -1
  84. package/dist/ui/popover/index.js +41 -39
  85. package/dist/ui/radioGroup/index.d.ts.map +1 -1
  86. package/dist/ui/radioGroup/index.js +20 -20
  87. package/dist/ui/select/index.d.ts.map +1 -1
  88. package/dist/ui/select/index.js +13 -11
  89. package/dist/ui/slider/index.d.ts.map +1 -1
  90. package/dist/ui/slider/index.js +26 -26
  91. package/dist/ui/switch/index.d.ts.map +1 -1
  92. package/dist/ui/switch/index.js +14 -14
  93. package/dist/ui/tabs/index.d.ts.map +1 -1
  94. package/dist/ui/tabs/index.js +40 -36
  95. package/dist/ui/textarea/index.d.ts.map +1 -1
  96. package/dist/ui/textarea/index.js +15 -13
  97. package/dist/ui/toast/index.d.ts.map +1 -1
  98. package/dist/ui/toast/index.js +27 -27
  99. package/dist/ui/tooltip/index.d.ts.map +1 -1
  100. package/dist/ui/tooltip/index.js +23 -23
  101. package/dist/ui/virtualList/index.d.ts.map +1 -1
  102. package/dist/ui/virtualList/index.js +18 -15
  103. package/package.json +5 -1
@@ -357,22 +357,22 @@ const DEFAULT_OVERSCAN = 5;
357
357
  * size and each row's position within it, rather than the much smaller
358
358
  * count of currently mounted rows. */
359
359
  export const view = (config) => {
360
- const { AriaPosinset, AriaSetsize, Class, DataAttribute, Id, Role, Style, keyed, } = html();
360
+ const h = html();
361
361
  const { model, items, itemToKey, itemToView, itemToRowHeightPx, overscan = DEFAULT_OVERSCAN, rowElement = 'li', className, attributes = [], } = config;
362
362
  const containerAttributes = [
363
- Id(model.id),
364
- Role('list'),
365
- DataAttribute('virtual-list-id', model.id),
366
- Style({
363
+ h.Id(model.id),
364
+ h.Role('list'),
365
+ h.DataAttribute('virtual-list-id', model.id),
366
+ h.Style({
367
367
  overflow: 'auto',
368
368
  'list-style': 'none',
369
369
  margin: '0',
370
370
  padding: '0',
371
371
  }),
372
- ...(className !== undefined ? [Class(className)] : []),
372
+ ...(className !== undefined ? [h.Class(className)] : []),
373
373
  ...attributes,
374
374
  ];
375
- const renderContainer = (children) => keyed('ul')(model.id, containerAttributes, children);
375
+ const renderContainer = (children) => h.keyed('ul')(model.id, containerAttributes, children);
376
376
  const maybeWindow = itemToRowHeightPx !== undefined
377
377
  ? visibleWindowVariable(model, items, itemToRowHeightPx, overscan)
378
378
  : visibleWindow(model, items.length, overscan);
@@ -383,16 +383,19 @@ export const view = (config) => {
383
383
  onNone: () => renderContainer([]),
384
384
  onSome: ({ startIndex, endIndex, topSpacerHeight, bottomSpacerHeight }) => {
385
385
  const visibleItems = items.slice(startIndex, endIndex);
386
- const topSpacer = keyed('li')(`${model.id}-top-spacer`, [Role('presentation'), Style({ height: `${topSpacerHeight}px` })], []);
387
- const bottomSpacer = keyed('li')(`${model.id}-bottom-spacer`, [Role('presentation'), Style({ height: `${bottomSpacerHeight}px` })], []);
386
+ const topSpacer = h.keyed('li')(`${model.id}-top-spacer`, [h.Role('presentation'), h.Style({ height: `${topSpacerHeight}px` })], []);
387
+ const bottomSpacer = h.keyed('li')(`${model.id}-bottom-spacer`, [
388
+ h.Role('presentation'),
389
+ h.Style({ height: `${bottomSpacerHeight}px` }),
390
+ ], []);
388
391
  const renderedRows = Array.map(visibleItems, (item, sliceIndex) => {
389
392
  const dataIndex = startIndex + sliceIndex;
390
- return keyed(rowElement)(itemToKey(item, dataIndex), [
391
- Role('listitem'),
392
- DataAttribute('virtual-list-item-index', String(dataIndex)),
393
- AriaSetsize(items.length),
394
- AriaPosinset(dataIndex + 1),
395
- Style({
393
+ return h.keyed(rowElement)(itemToKey(item, dataIndex), [
394
+ h.Role('listitem'),
395
+ h.DataAttribute('virtual-list-item-index', String(dataIndex)),
396
+ h.AriaSetsize(items.length),
397
+ h.AriaPosinset(dataIndex + 1),
398
+ h.Style({
396
399
  height: `${rowHeightFor(item, dataIndex)}px`,
397
400
  display: 'grid',
398
401
  }),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "foldkit",
3
- "version": "0.90.0",
3
+ "version": "0.91.0",
4
4
  "description": "A TypeScript frontend framework, built on Effect and architected like Elm",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -15,6 +15,10 @@
15
15
  "types": "./dist/calendar/public.d.ts",
16
16
  "import": "./dist/calendar/public.js"
17
17
  },
18
+ "./canvas": {
19
+ "types": "./dist/canvas/public.d.ts",
20
+ "import": "./dist/canvas/public.js"
21
+ },
18
22
  "./command": {
19
23
  "types": "./dist/command/public.d.ts",
20
24
  "import": "./dist/command/public.js"