@dxos/react-ui-stack 0.8.3 → 0.8.4-main.1f223c7

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 (108) hide show
  1. package/dist/lib/browser/chunk-3V2YUQK5.mjs +1375 -0
  2. package/dist/lib/browser/chunk-3V2YUQK5.mjs.map +7 -0
  3. package/dist/lib/browser/index.mjs +44 -1160
  4. package/dist/lib/browser/index.mjs.map +4 -4
  5. package/dist/lib/browser/meta.json +1 -1
  6. package/dist/lib/{node/testing/index.cjs → browser/playwright/index.mjs} +26 -33
  7. package/dist/lib/{node/testing/index.cjs.map → browser/playwright/index.mjs.map} +3 -3
  8. package/dist/lib/browser/testing/index.mjs +25 -51
  9. package/dist/lib/browser/testing/index.mjs.map +4 -4
  10. package/dist/lib/node-esm/chunk-HE3BRF7A.mjs +1377 -0
  11. package/dist/lib/node-esm/chunk-HE3BRF7A.mjs.map +7 -0
  12. package/dist/lib/node-esm/index.mjs +44 -1161
  13. package/dist/lib/node-esm/index.mjs.map +4 -4
  14. package/dist/lib/node-esm/meta.json +1 -1
  15. package/dist/lib/node-esm/playwright/index.mjs +76 -0
  16. package/dist/lib/node-esm/playwright/index.mjs.map +7 -0
  17. package/dist/lib/node-esm/testing/index.mjs +24 -51
  18. package/dist/lib/node-esm/testing/index.mjs.map +4 -4
  19. package/dist/types/src/components/Image/Image.d.ts +11 -0
  20. package/dist/types/src/components/Image/Image.d.ts.map +1 -0
  21. package/dist/types/src/components/Image/Image.stories.d.ts +31 -0
  22. package/dist/types/src/components/Image/Image.stories.d.ts.map +1 -0
  23. package/dist/types/src/components/Image/index.d.ts +2 -0
  24. package/dist/types/src/components/Image/index.d.ts.map +1 -0
  25. package/dist/types/src/components/Stack/Stack.d.ts +9 -2
  26. package/dist/types/src/components/Stack/Stack.d.ts.map +1 -1
  27. package/dist/types/src/components/Stack/Stack.stories.d.ts +12 -2
  28. package/dist/types/src/components/Stack/Stack.stories.d.ts.map +1 -1
  29. package/dist/types/src/components/StackContext.d.ts +2 -1
  30. package/dist/types/src/components/StackContext.d.ts.map +1 -1
  31. package/dist/types/src/components/StackItem/StackItem.d.ts +4 -4
  32. package/dist/types/src/components/StackItem/StackItem.d.ts.map +1 -1
  33. package/dist/types/src/components/StackItem/StackItem.stories.d.ts +13 -4
  34. package/dist/types/src/components/StackItem/StackItem.stories.d.ts.map +1 -1
  35. package/dist/types/src/components/StackItem/StackItemContent.d.ts +2 -2
  36. package/dist/types/src/components/StackItem/StackItemContent.d.ts.map +1 -1
  37. package/dist/types/src/components/StackItem/StackItemHeading.d.ts +1 -1
  38. package/dist/types/src/components/StackItem/StackItemHeading.d.ts.map +1 -1
  39. package/dist/types/src/components/StackItem/StackItemResizeHandle.d.ts.map +1 -1
  40. package/dist/types/src/components/StackItem/StackItemSigil.d.ts.map +1 -1
  41. package/dist/types/src/components/index.d.ts +2 -1
  42. package/dist/types/src/components/index.d.ts.map +1 -1
  43. package/dist/types/src/exemplars/Card/Card.d.ts +7 -11
  44. package/dist/types/src/exemplars/Card/Card.d.ts.map +1 -1
  45. package/dist/types/src/exemplars/Card/Card.stories.d.ts +44 -0
  46. package/dist/types/src/exemplars/Card/Card.stories.d.ts.map +1 -0
  47. package/dist/types/src/exemplars/Card/fragments.d.ts +3 -3
  48. package/dist/types/src/exemplars/Card/fragments.d.ts.map +1 -1
  49. package/dist/types/src/exemplars/CardStack/CardStack.d.ts +7 -1
  50. package/dist/types/src/exemplars/CardStack/CardStack.d.ts.map +1 -1
  51. package/dist/types/src/exemplars/CardStack/CardStack.stories.d.ts +13 -0
  52. package/dist/types/src/exemplars/CardStack/CardStack.stories.d.ts.map +1 -0
  53. package/dist/types/src/hooks/useStackDropForElements.d.ts +1 -1
  54. package/dist/types/src/hooks/useStackDropForElements.d.ts.map +1 -1
  55. package/dist/types/src/index.d.ts +1 -1
  56. package/dist/types/src/index.d.ts.map +1 -1
  57. package/dist/types/src/playwright/index.d.ts +2 -0
  58. package/dist/types/src/playwright/index.d.ts.map +1 -0
  59. package/dist/types/src/playwright/playwright.config.d.ts +3 -0
  60. package/dist/types/src/playwright/playwright.config.d.ts.map +1 -0
  61. package/dist/types/src/playwright/stack-manager.d.ts.map +1 -0
  62. package/dist/types/src/testing/CardContainer.d.ts +6 -0
  63. package/dist/types/src/testing/CardContainer.d.ts.map +1 -0
  64. package/dist/types/src/testing/index.d.ts +1 -1
  65. package/dist/types/src/translations.d.ts +13 -14
  66. package/dist/types/src/translations.d.ts.map +1 -1
  67. package/dist/types/tsconfig.tsbuildinfo +1 -1
  68. package/package.json +30 -26
  69. package/src/components/Image/Image.stories.tsx +58 -0
  70. package/src/components/Image/Image.tsx +137 -0
  71. package/src/components/Image/index.ts +5 -0
  72. package/src/components/Stack/Stack.stories.tsx +7 -6
  73. package/src/components/Stack/Stack.tsx +160 -18
  74. package/src/components/StackContext.tsx +2 -1
  75. package/src/components/StackItem/StackItem.stories.tsx +15 -11
  76. package/src/components/StackItem/StackItem.tsx +15 -14
  77. package/src/components/StackItem/StackItemContent.tsx +4 -3
  78. package/src/components/StackItem/StackItemHeading.tsx +3 -3
  79. package/src/components/StackItem/StackItemResizeHandle.tsx +2 -1
  80. package/src/components/StackItem/StackItemSigil.tsx +2 -1
  81. package/src/components/index.ts +2 -1
  82. package/src/exemplars/Card/Card.stories.tsx +88 -0
  83. package/src/exemplars/Card/Card.tsx +42 -38
  84. package/src/exemplars/Card/CardDragPreview.tsx +2 -2
  85. package/src/exemplars/Card/fragments.ts +3 -4
  86. package/src/exemplars/CardStack/CardStack.stories.tsx +172 -0
  87. package/src/exemplars/CardStack/CardStack.tsx +19 -2
  88. package/src/hooks/useStackDropForElements.ts +5 -2
  89. package/src/index.ts +3 -4
  90. package/src/playwright/index.ts +5 -0
  91. package/src/playwright/playwright.config.ts +17 -0
  92. package/src/playwright/smoke.spec.ts +7 -5
  93. package/src/testing/CardContainer.tsx +37 -0
  94. package/src/testing/index.ts +1 -1
  95. package/src/translations.ts +5 -3
  96. package/dist/lib/node/index.cjs +0 -1220
  97. package/dist/lib/node/index.cjs.map +0 -7
  98. package/dist/lib/node/meta.json +0 -1
  99. package/dist/types/src/exemplars/Card/Card.stories-todo.d.ts +0 -1
  100. package/dist/types/src/exemplars/Card/Card.stories-todo.d.ts.map +0 -1
  101. package/dist/types/src/exemplars/CardStack/CardStack.stories-todo.d.ts +0 -1
  102. package/dist/types/src/exemplars/CardStack/CardStack.stories-todo.d.ts.map +0 -1
  103. package/dist/types/src/testing/stack-manager.d.ts.map +0 -1
  104. package/src/exemplars/Card/Card.stories-todo.tsx +0 -135
  105. package/src/exemplars/CardStack/CardStack.stories-todo.tsx +0 -80
  106. package/src/playwright/playwright.config.cts +0 -18
  107. /package/dist/types/src/{testing → playwright}/stack-manager.d.ts +0 -0
  108. /package/src/{testing → playwright}/stack-manager.ts +0 -0
@@ -8,7 +8,7 @@ import { autoScrollForElements } from '@atlaskit/pragmatic-drag-and-drop-auto-sc
8
8
  import { attachClosestEdge, extractClosestEdge } from '@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge';
9
9
  import { useLayoutEffect, useState } from 'react';
10
10
 
11
- import { type StackItemRearrangeHandler, type StackItemData, type Orientation } from '../components';
11
+ import { type Orientation, type StackItemData, type StackItemRearrangeHandler } from '../components';
12
12
 
13
13
  /**
14
14
  * Hook to handle drag and drop functionality for Stack components.
@@ -66,7 +66,10 @@ export const useStackDropForElements = ({
66
66
  }
67
67
  },
68
68
  }),
69
- autoScrollForElements({ element: scrollElement as Element, getAllowedAxis: () => orientation }),
69
+ autoScrollForElements({
70
+ element: scrollElement as Element,
71
+ getAllowedAxis: () => orientation,
72
+ }),
70
73
  );
71
74
  }, [element, scrollElement, selfDroppable, orientation, id, onRearrange]);
72
75
 
package/src/index.ts CHANGED
@@ -2,9 +2,8 @@
2
2
  // Copyright 2022 DXOS.org
3
3
  //
4
4
 
5
- export * from './components';
6
-
7
5
  // TODO(thure): Consider exporting exemplars from separate endpoints.
8
- export * from './exemplars';
9
6
 
10
- export { default as translations } from './translations';
7
+ export * from './components';
8
+ export * from './exemplars';
9
+ export * from './translations';
@@ -0,0 +1,5 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ export * from './stack-manager';
@@ -0,0 +1,17 @@
1
+ //
2
+ // Copyright 2023 DXOS.org
3
+ //
4
+
5
+ import { defineConfig } from '@playwright/test';
6
+
7
+ import { e2ePreset } from '@dxos/test-utils/playwright';
8
+
9
+ export default defineConfig({
10
+ ...e2ePreset(import.meta.dirname),
11
+ // TODO(wittjosiah): Avoid hard-coding ports.
12
+ webServer: {
13
+ command: 'moon run storybook:serve-e2e -- --port=9003',
14
+ port: 9003,
15
+ reuseExistingServer: false,
16
+ },
17
+ });
@@ -6,12 +6,14 @@ import { expect, test } from '@playwright/test';
6
6
 
7
7
  import { setupPage, storybookUrl } from '@dxos/test-utils/playwright';
8
8
 
9
- import { StackManager } from '../testing';
9
+ import { StackManager } from './stack-manager';
10
+
11
+ const PORT = 9003;
10
12
 
11
13
  // TODO(wittjosiah): Update for new stack.
12
14
  test.describe.skip('Stack', () => {
13
15
  test('remove', async ({ browser }) => {
14
- const { page } = await setupPage(browser, { url: storybookUrl('ui-react-ui-stack-stack--transfer') });
16
+ const { page } = await setupPage(browser, { url: storybookUrl('ui-react-ui-stack-stack--transfer', PORT) });
15
17
  await page.getByTestId('stack-transfer').waitFor({ state: 'visible' });
16
18
 
17
19
  const stack = new StackManager(page.getByTestId('stack-1'));
@@ -24,7 +26,7 @@ test.describe.skip('Stack', () => {
24
26
  });
25
27
 
26
28
  test('rearrange', async ({ browser }) => {
27
- const { page } = await setupPage(browser, { url: storybookUrl('ui-react-ui-stack-stack--transfer') });
29
+ const { page } = await setupPage(browser, { url: storybookUrl('ui-react-ui-stack-stack--transfer', PORT) });
28
30
  await page.getByTestId('stack-transfer').waitFor({ state: 'visible' });
29
31
 
30
32
  const stack = new StackManager(page.getByTestId('stack-1'));
@@ -41,7 +43,7 @@ test.describe.skip('Stack', () => {
41
43
  test.skip();
42
44
  }
43
45
 
44
- const { page } = await setupPage(browser, { url: storybookUrl('ui-react-ui-stack-stack--transfer') });
46
+ const { page } = await setupPage(browser, { url: storybookUrl('ui-react-ui-stack-stack--transfer', PORT) });
45
47
  await page.getByTestId('stack-transfer').waitFor({ state: 'visible' });
46
48
 
47
49
  const stack1 = new StackManager(page.getByTestId('stack-1'));
@@ -61,7 +63,7 @@ test.describe.skip('Stack', () => {
61
63
  });
62
64
 
63
65
  test('copy', async ({ browser }) => {
64
- const { page } = await setupPage(browser, { url: storybookUrl('ui-react-ui-stack-stack--copy') });
66
+ const { page } = await setupPage(browser, { url: storybookUrl('ui-react-ui-stack-stack--copy', PORT) });
65
67
  await page.getByTestId('stack-copy').waitFor({ state: 'visible' });
66
68
 
67
69
  const stack1 = new StackManager(page.getByTestId('stack-1'));
@@ -0,0 +1,37 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import React, { type PropsWithChildren } from 'react';
6
+
7
+ import { ExtrinsicCardContainer, IntrinsicCardContainer, PopoverCardContainer } from '@dxos/storybook-utils';
8
+
9
+ import { Card } from '../exemplars';
10
+
11
+ export const CardContainer = ({
12
+ children,
13
+ icon = 'ph--placeholder--regular',
14
+ role,
15
+ }: PropsWithChildren<{ icon?: string; role?: string }>) => {
16
+ switch (role) {
17
+ case 'card--popover':
18
+ return <PopoverCardContainer icon={icon}>{children}</PopoverCardContainer>;
19
+
20
+ case 'card--extrinsic':
21
+ return (
22
+ <ExtrinsicCardContainer>
23
+ <Card.StaticRoot>{children}</Card.StaticRoot>
24
+ </ExtrinsicCardContainer>
25
+ );
26
+
27
+ case 'card--intrinsic':
28
+ return (
29
+ <IntrinsicCardContainer>
30
+ <Card.StaticRoot>{children}</Card.StaticRoot>
31
+ </IntrinsicCardContainer>
32
+ );
33
+
34
+ default:
35
+ return <Card.StaticRoot>{children}</Card.StaticRoot>;
36
+ }
37
+ };
@@ -2,4 +2,4 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- export * from './stack-manager';
5
+ export * from './CardContainer';
@@ -2,9 +2,11 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- export const translationKey = 'stack';
5
+ import { type Resource } from '@dxos/react-ui';
6
6
 
7
- export default [
7
+ export const translationKey = 'react-ui-stack';
8
+
9
+ export const translations = [
8
10
  {
9
11
  'en-US': {
10
12
  [translationKey]: {
@@ -19,4 +21,4 @@ export default [
19
21
  },
20
22
  },
21
23
  },
22
- ];
24
+ ] as const satisfies Resource[];