@pyreon/elements 0.11.4 → 0.11.6

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 (53) hide show
  1. package/README.md +38 -35
  2. package/lib/index.d.ts +15 -15
  3. package/package.json +24 -24
  4. package/src/Element/component.tsx +14 -14
  5. package/src/Element/constants.ts +25 -25
  6. package/src/Element/index.ts +2 -2
  7. package/src/Element/types.ts +3 -3
  8. package/src/Element/utils.ts +1 -1
  9. package/src/List/component.tsx +7 -7
  10. package/src/List/index.ts +2 -2
  11. package/src/Overlay/component.tsx +22 -22
  12. package/src/Overlay/context.tsx +2 -2
  13. package/src/Overlay/index.ts +3 -3
  14. package/src/Overlay/useOverlay.tsx +97 -97
  15. package/src/Portal/component.tsx +6 -6
  16. package/src/Portal/index.ts +2 -2
  17. package/src/Text/component.tsx +6 -6
  18. package/src/Text/index.ts +2 -2
  19. package/src/Text/styled.ts +4 -4
  20. package/src/Util/component.tsx +5 -5
  21. package/src/Util/index.ts +2 -2
  22. package/src/__tests__/Content.test.tsx +46 -46
  23. package/src/__tests__/Element.test.ts +251 -251
  24. package/src/__tests__/Iterator.test.ts +142 -142
  25. package/src/__tests__/List.test.ts +61 -61
  26. package/src/__tests__/Overlay.test.ts +125 -125
  27. package/src/__tests__/Portal.test.ts +33 -33
  28. package/src/__tests__/Text.test.ts +128 -128
  29. package/src/__tests__/Util.test.ts +31 -31
  30. package/src/__tests__/Wrapper.test.tsx +60 -60
  31. package/src/__tests__/equalBeforeAfter.test.ts +41 -41
  32. package/src/__tests__/helpers.test.ts +29 -29
  33. package/src/__tests__/overlayContext.test.tsx +14 -14
  34. package/src/__tests__/responsiveProps.test.ts +116 -116
  35. package/src/__tests__/useOverlay.test.ts +283 -283
  36. package/src/__tests__/utils.test.ts +43 -43
  37. package/src/constants.ts +1 -1
  38. package/src/helpers/Content/component.tsx +5 -5
  39. package/src/helpers/Content/index.ts +1 -1
  40. package/src/helpers/Content/styled.ts +16 -16
  41. package/src/helpers/Content/types.ts +7 -7
  42. package/src/helpers/Iterator/component.tsx +28 -28
  43. package/src/helpers/Iterator/index.ts +2 -2
  44. package/src/helpers/Iterator/types.ts +3 -3
  45. package/src/helpers/Wrapper/component.tsx +6 -6
  46. package/src/helpers/Wrapper/index.ts +1 -1
  47. package/src/helpers/Wrapper/styled.ts +8 -8
  48. package/src/helpers/Wrapper/types.ts +3 -3
  49. package/src/helpers/Wrapper/utils.ts +1 -1
  50. package/src/helpers/index.ts +2 -2
  51. package/src/index.ts +16 -16
  52. package/src/types.ts +7 -7
  53. package/src/utils.ts +1 -1
@@ -1,5 +1,5 @@
1
- import type { VNode } from "@pyreon/core"
2
- import { beforeEach, describe, expect, it, vi } from "vitest"
1
+ import type { VNode } from '@pyreon/core'
2
+ import { beforeEach, describe, expect, it, vi } from 'vitest'
3
3
 
4
4
  // ---------------------------------------------------------------------------
5
5
  // Mocks
@@ -8,7 +8,7 @@ const mocks = vi.hoisted(() => ({
8
8
  render: vi.fn((children: unknown) => children),
9
9
  }))
10
10
 
11
- vi.mock("@pyreon/ui-core", async (importOriginal) => {
11
+ vi.mock('@pyreon/ui-core', async (importOriginal) => {
12
12
  const actual = (await importOriginal()) as Record<string, unknown>
13
13
  return {
14
14
  ...actual,
@@ -16,100 +16,100 @@ vi.mock("@pyreon/ui-core", async (importOriginal) => {
16
16
  }
17
17
  })
18
18
 
19
- vi.mock("~/utils", () => ({
19
+ vi.mock('~/utils', () => ({
20
20
  IS_DEVELOPMENT: true,
21
21
  }))
22
22
 
23
- import Content from "../helpers/Content/component"
24
- import Styled from "../helpers/Content/styled"
23
+ import Content from '../helpers/Content/component'
24
+ import Styled from '../helpers/Content/styled'
25
25
 
26
26
  const asVNode = (v: unknown) => v as VNode
27
27
 
28
- describe("Content component", () => {
28
+ describe('Content component', () => {
29
29
  beforeEach(() => {
30
30
  vi.clearAllMocks()
31
31
  })
32
32
 
33
- it("returns a VNode whose type is the Styled component", () => {
34
- const result = asVNode(Content({ contentType: "content" }))
33
+ it('returns a VNode whose type is the Styled component', () => {
34
+ const result = asVNode(Content({ contentType: 'content' }))
35
35
  expect(result.type).toBe(Styled)
36
36
  })
37
37
 
38
38
  it("passes tag as the 'as' prop to Styled", () => {
39
- const result = asVNode(Content({ tag: "span" }))
40
- expect(result.props.as).toBe("span")
39
+ const result = asVNode(Content({ tag: 'span' }))
40
+ expect(result.props.as).toBe('span')
41
41
  })
42
42
 
43
- it("passes contentType as $contentType prop", () => {
44
- const result = asVNode(Content({ contentType: "before" }))
45
- expect(result.props.$contentType).toBe("before")
43
+ it('passes contentType as $contentType prop', () => {
44
+ const result = asVNode(Content({ contentType: 'before' }))
45
+ expect(result.props.$contentType).toBe('before')
46
46
  })
47
47
 
48
- it("passes styling props bundled as $element prop", () => {
48
+ it('passes styling props bundled as $element prop', () => {
49
49
  const result = asVNode(
50
50
  Content({
51
- contentType: "content",
52
- parentDirection: "inline",
53
- direction: "rows",
54
- alignX: "center",
55
- alignY: "top",
51
+ contentType: 'content',
52
+ parentDirection: 'inline',
53
+ direction: 'rows',
54
+ alignX: 'center',
55
+ alignY: 'top',
56
56
  equalCols: true,
57
57
  gap: 8,
58
- extendCss: "color: red;",
58
+ extendCss: 'color: red;',
59
59
  }),
60
60
  )
61
61
 
62
62
  expect(result.props.$element).toEqual({
63
- contentType: "content",
64
- parentDirection: "inline",
65
- direction: "rows",
66
- alignX: "center",
67
- alignY: "top",
63
+ contentType: 'content',
64
+ parentDirection: 'inline',
65
+ direction: 'rows',
66
+ alignX: 'center',
67
+ alignY: 'top',
68
68
  equalCols: true,
69
69
  gap: 8,
70
- extraStyles: "color: red;",
70
+ extraStyles: 'color: red;',
71
71
  })
72
72
  })
73
73
 
74
- it("adds data-pyr-element attribute in development mode", () => {
75
- const result = asVNode(Content({ contentType: "after" }))
76
- expect(result.props["data-pyr-element"]).toBe("after")
74
+ it('adds data-pyr-element attribute in development mode', () => {
75
+ const result = asVNode(Content({ contentType: 'after' }))
76
+ expect(result.props['data-pyr-element']).toBe('after')
77
77
  })
78
78
 
79
- it("passes children through render()", () => {
80
- const children = "Some text"
79
+ it('passes children through render()', () => {
80
+ const children = 'Some text'
81
81
  Content({ children })
82
82
  expect(mocks.render).toHaveBeenCalledWith(children)
83
83
  })
84
84
 
85
- it("spreads remaining props to Styled", () => {
86
- const result = asVNode(Content({ id: "test-id", className: "custom" } as any))
87
- expect(result.props.id).toBe("test-id")
88
- expect(result.props.className).toBe("custom")
85
+ it('spreads remaining props to Styled', () => {
86
+ const result = asVNode(Content({ id: 'test-id', className: 'custom' } as any))
87
+ expect(result.props.id).toBe('test-id')
88
+ expect(result.props.className).toBe('custom')
89
89
  })
90
90
 
91
- it("maps extendCss to extraStyles in $element", () => {
92
- const result = asVNode(Content({ extendCss: "font-size: 14px;" }))
93
- expect((result.props.$element as any).extraStyles).toBe("font-size: 14px;")
91
+ it('maps extendCss to extraStyles in $element', () => {
92
+ const result = asVNode(Content({ extendCss: 'font-size: 14px;' }))
93
+ expect((result.props.$element as any).extraStyles).toBe('font-size: 14px;')
94
94
  })
95
95
  })
96
96
 
97
- describe("Content component (production mode)", () => {
98
- it("does not add data-pyr-element when IS_DEVELOPMENT is false", async () => {
97
+ describe('Content component (production mode)', () => {
98
+ it('does not add data-pyr-element when IS_DEVELOPMENT is false', async () => {
99
99
  // Reset module registry so the new mock takes effect
100
100
  vi.resetModules()
101
- vi.doMock("../utils", () => ({
101
+ vi.doMock('../utils', () => ({
102
102
  IS_DEVELOPMENT: false,
103
103
  }))
104
104
  // Re-mock @pyreon/ui-core after resetModules
105
- vi.doMock("@pyreon/ui-core", async (importOriginal) => {
105
+ vi.doMock('@pyreon/ui-core', async (importOriginal) => {
106
106
  const actual = (await importOriginal()) as Record<string, unknown>
107
107
  return { ...actual, render: (children: unknown) => children }
108
108
  })
109
109
 
110
- const { default: ContentProd } = await import("../helpers/Content/component")
111
- const result = asVNode(ContentProd({ contentType: "before" }))
110
+ const { default: ContentProd } = await import('../helpers/Content/component')
111
+ const result = asVNode(ContentProd({ contentType: 'before' }))
112
112
 
113
- expect(result.props["data-pyr-element"]).toBeUndefined()
113
+ expect(result.props['data-pyr-element']).toBeUndefined()
114
114
  })
115
115
  })