storybook-addon-vis 0.10.0 → 0.10.2

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.
@@ -0,0 +1,2 @@
1
+ 'use strict';var e={};module.exports=e;//# sourceMappingURL=preset.cjs.map
2
+ //# sourceMappingURL=preset.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/preset.ts"],"names":["preset_default"],"mappings":"aAAA,IAAOA,EAAQ","file":"preset.cjs","sourcesContent":["export default {}\n"]}
@@ -1,6 +1,6 @@
1
1
  import { toMatchImageSnapshot, state, page } from './chunk-B2M7JPBQ.js';
2
2
  export { cdp, commands, page, server, toMatchImageSnapshot } from './chunk-B2M7JPBQ.js';
3
- import { expect } from 'vitest';
3
+ import { expect, beforeAll, afterEach } from 'vitest';
4
4
 
5
5
  // src/should_take_snapshot.ts
6
6
  function shouldTakeSnapshot() {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/should_take_snapshot.ts","../src/vis.ts"],"names":[],"mappings":";;;;;AASO,SAAS,kBAAqB,GAAA;AACpC,EAAA,OAAO,MAAM,kBAAmB,EAAA;AACjC;;;ACHA,MAAO,CAAA,MAAA,CAAO,EAAE,oBAAA,EAAsB,CAAA;AAE/B,SAAS,gBAAgB,OAAsB,EAAA;AACrD,EAAA,MAAM,CAAI,GAAA;AAAA,IACT,OAAS,EAAA;AAAA,MACR,KAAQ,GAAA;AACP,QAAA,SAAA,CAAU,EAAE,SAAS,CAAA;AACrB,QAAU,SAAA,CAAA,CAAA,CAAE,UAAU,kBAAkB,CAAA;AAAA,OACzC;AAAA,MACA,MAAM,MAAoD,EAAA;AACzD,QAAA,SAAA,CAAU,EAAE,SAAS,CAAA;AACrB,QAAA,SAAA,CAAU,CAAE,CAAA,SAAA,CAAU,aAAc,CAAA,MAAM,CAAC,CAAA;AAAA;AAC5C,KACD;AAAA,IACA,MAAM,UAAU,KAAqD,EAAA;AACpE,MAAO,OAAA,KAAA,CAAM,UAAW,CAAA,KAAA,EAAO,OAAO,CAAA;AAAA,KACvC;AAAA,IACA,SAAW,EAAA;AAAA,MACV,MAAM,kBAAqB,GAAA;AAC1B,QAAI,IAAA,CAAC,oBAAsB,EAAA;AAC3B,QAAM,MAAA,CAAA,GAAI,MAAM,IAAA,CAAK,aAAc,EAAA;AACnC,QAAO,MAAA,CAAA,CAAC,EAAE,oBAAqB,EAAA;AAAA,OAChC;AAAA,MACA,cAAc,MAAoD,EAAA;AACjE,QAAA,OAAO,eAAe,kBAAqB,GAAA;AAC1C,UAAI,IAAA,CAAC,oBAAsB,EAAA;AAC3B,UAAA,KAAA,MAAW,WAAW,MAAQ,EAAA;AAC7B,YAAM,MAAA,MAAA,CAAO,OAAO,CAAE,EAAA;AACtB,YAAM,MAAA,CAAA,GAAI,MAAM,IAAA,CAAK,aAAc,CAAA;AAAA,cAClC,qBAAqB,CAAC,EAAA,KAAO,CAAG,EAAA,EAAE,IAAI,OAAO,CAAA;AAAA,aAC7C,CAAA;AACD,YAAM,MAAA,MAAA,CAAO,CAAC,CAAA,CAAE,oBAAqB,EAAA;AAAA;AACtC,SACD;AAAA;AACD;AACD,GACD;AACA,EAAO,OAAA,CAAA;AACR","file":"vitest-setup.js","sourcesContent":["import { state } from './state'\n\n/**\n * Determine should snapshot be taken.\n *\n * not story: false\n * no `snapshot` tag: false\n * disabled by `!snapshot` tag: false\n */\nexport function shouldTakeSnapshot() {\n\treturn state.shouldTakeSnapshot()\n}\n","import { expect } from 'vitest'\nimport { page } from './@vitest/browser/context.js'\nimport './augment.js'\nimport { toMatchImageSnapshot } from './expect.to_match_image_snapshot.js'\nimport { shouldTakeSnapshot } from './should_take_snapshot.js'\nimport { state } from './state.js'\nimport type { VisOptions } from './types.js'\n\nexpect.extend({ toMatchImageSnapshot })\n\nexport function createVisConfig(options?: VisOptions) {\n\tconst h = {\n\t\tpresets: {\n\t\t\tbasic() {\n\t\t\t\tbeforeAll(h.beforeAll)\n\t\t\t\tafterEach(h.afterEach.matchImageSnapshot)\n\t\t\t},\n\t\t\ttheme(themes: Record<string, () => void | Promise<void>>) {\n\t\t\t\tbeforeAll(h.beforeAll)\n\t\t\t\tafterEach(h.afterEach.matchPerTheme(themes))\n\t\t\t},\n\t\t},\n\t\tasync beforeAll(suite: { file: { filepath: string }; name: string }) {\n\t\t\treturn state.setupSuite(suite, options)\n\t\t},\n\t\tafterEach: {\n\t\t\tasync matchImageSnapshot() {\n\t\t\t\tif (!shouldTakeSnapshot()) return\n\t\t\t\tconst r = await page.imageSnapshot()\n\t\t\t\texpect(r).toMatchImageSnapshot()\n\t\t\t},\n\t\t\tmatchPerTheme(themes: Record<string, () => Promise<void> | void>) {\n\t\t\t\treturn async function matchImageSnapshot() {\n\t\t\t\t\tif (!shouldTakeSnapshot()) return\n\t\t\t\t\tfor (const themeId in themes) {\n\t\t\t\t\t\tawait themes[themeId]()\n\t\t\t\t\t\tconst r = await page.imageSnapshot({\n\t\t\t\t\t\t\tcustomizeSnapshotId: (id) => `${id}-${themeId}`,\n\t\t\t\t\t\t})\n\t\t\t\t\t\tawait expect(r).toMatchImageSnapshot()\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t}\n\treturn h\n}\n"]}
1
+ {"version":3,"sources":["../src/should_take_snapshot.ts","../src/vis.ts"],"names":[],"mappings":";;;;;AASO,SAAS,kBAAqB,GAAA;AACpC,EAAA,OAAO,MAAM,kBAAmB,EAAA;AACjC;;;ACHA,MAAO,CAAA,MAAA,CAAO,EAAE,oBAAA,EAAsB,CAAA;AAE/B,SAAS,gBAAgB,OAAsB,EAAA;AACrD,EAAA,MAAM,CAAI,GAAA;AAAA,IACT,OAAS,EAAA;AAAA,MACR,KAAQ,GAAA;AACP,QAAA,SAAA,CAAU,EAAE,SAAS,CAAA;AACrB,QAAU,SAAA,CAAA,CAAA,CAAE,UAAU,kBAAkB,CAAA;AAAA,OACzC;AAAA,MACA,MAAM,MAAoD,EAAA;AACzD,QAAA,SAAA,CAAU,EAAE,SAAS,CAAA;AACrB,QAAA,SAAA,CAAU,CAAE,CAAA,SAAA,CAAU,aAAc,CAAA,MAAM,CAAC,CAAA;AAAA;AAC5C,KACD;AAAA,IACA,MAAM,UAAU,KAAqD,EAAA;AACpE,MAAO,OAAA,KAAA,CAAM,UAAW,CAAA,KAAA,EAAO,OAAO,CAAA;AAAA,KACvC;AAAA,IACA,SAAW,EAAA;AAAA,MACV,MAAM,kBAAqB,GAAA;AAC1B,QAAI,IAAA,CAAC,oBAAsB,EAAA;AAC3B,QAAM,MAAA,CAAA,GAAI,MAAM,IAAA,CAAK,aAAc,EAAA;AACnC,QAAO,MAAA,CAAA,CAAC,EAAE,oBAAqB,EAAA;AAAA,OAChC;AAAA,MACA,cAAc,MAAoD,EAAA;AACjE,QAAA,OAAO,eAAe,kBAAqB,GAAA;AAC1C,UAAI,IAAA,CAAC,oBAAsB,EAAA;AAC3B,UAAA,KAAA,MAAW,WAAW,MAAQ,EAAA;AAC7B,YAAM,MAAA,MAAA,CAAO,OAAO,CAAE,EAAA;AACtB,YAAM,MAAA,CAAA,GAAI,MAAM,IAAA,CAAK,aAAc,CAAA;AAAA,cAClC,qBAAqB,CAAC,EAAA,KAAO,CAAG,EAAA,EAAE,IAAI,OAAO,CAAA;AAAA,aAC7C,CAAA;AACD,YAAM,MAAA,MAAA,CAAO,CAAC,CAAA,CAAE,oBAAqB,EAAA;AAAA;AACtC,SACD;AAAA;AACD;AACD,GACD;AACA,EAAO,OAAA,CAAA;AACR","file":"vitest-setup.js","sourcesContent":["import { state } from './state'\n\n/**\n * Determine should snapshot be taken.\n *\n * not story: false\n * no `snapshot` tag: false\n * disabled by `!snapshot` tag: false\n */\nexport function shouldTakeSnapshot() {\n\treturn state.shouldTakeSnapshot()\n}\n","import { afterEach, beforeAll, expect } from 'vitest'\nimport { page } from './@vitest/browser/context.js'\nimport './augment.js'\nimport { toMatchImageSnapshot } from './expect.to_match_image_snapshot.js'\nimport { shouldTakeSnapshot } from './should_take_snapshot.js'\nimport { state } from './state.js'\nimport type { VisOptions } from './types.js'\n\nexpect.extend({ toMatchImageSnapshot })\n\nexport function createVisConfig(options?: VisOptions) {\n\tconst h = {\n\t\tpresets: {\n\t\t\tbasic() {\n\t\t\t\tbeforeAll(h.beforeAll)\n\t\t\t\tafterEach(h.afterEach.matchImageSnapshot)\n\t\t\t},\n\t\t\ttheme(themes: Record<string, () => void | Promise<void>>) {\n\t\t\t\tbeforeAll(h.beforeAll)\n\t\t\t\tafterEach(h.afterEach.matchPerTheme(themes))\n\t\t\t},\n\t\t},\n\t\tasync beforeAll(suite: { file: { filepath: string }; name: string }) {\n\t\t\treturn state.setupSuite(suite, options)\n\t\t},\n\t\tafterEach: {\n\t\t\tasync matchImageSnapshot() {\n\t\t\t\tif (!shouldTakeSnapshot()) return\n\t\t\t\tconst r = await page.imageSnapshot()\n\t\t\t\texpect(r).toMatchImageSnapshot()\n\t\t\t},\n\t\t\tmatchPerTheme(themes: Record<string, () => Promise<void> | void>) {\n\t\t\t\treturn async function matchImageSnapshot() {\n\t\t\t\t\tif (!shouldTakeSnapshot()) return\n\t\t\t\t\tfor (const themeId in themes) {\n\t\t\t\t\t\tawait themes[themeId]()\n\t\t\t\t\t\tconst r = await page.imageSnapshot({\n\t\t\t\t\t\t\tcustomizeSnapshotId: (id) => `${id}-${themeId}`,\n\t\t\t\t\t\t})\n\t\t\t\t\t\tawait expect(r).toMatchImageSnapshot()\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t}\n\treturn h\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "storybook-addon-vis",
3
- "version": "0.10.0",
3
+ "version": "0.10.2",
4
4
  "description": "Storybook Vitest Image Snapshot addon",
5
5
  "keywords": [
6
6
  "image-snapshot",
@@ -26,6 +26,7 @@
26
26
  "import": "./dist/index.js",
27
27
  "require": "./dist/index.cjs"
28
28
  },
29
+ "./preset": "./dist/preset.cjs",
29
30
  "./vitest-setup": "./dist/vitest-setup.js",
30
31
  "./vitest-plugin": {
31
32
  "types": "./vitest-plugin.d.ts",
@@ -88,6 +89,9 @@
88
89
  "src/index.ts",
89
90
  "src/vitest-setup.ts",
90
91
  "src/preview.ts"
92
+ ],
93
+ "nodeEntries": [
94
+ "./src/preset.ts"
91
95
  ]
92
96
  },
93
97
  "storybook": {
@@ -1,3 +1,5 @@
1
+ import { expect, it } from 'vitest'
2
+
1
3
  it('should be available in global expect', () => {
2
4
  expect(typeof expect('something').toMatchImageSnapshot).toBe('function')
3
5
  })
@@ -1,7 +1,7 @@
1
1
  import { composeStories } from '@storybook/react'
2
2
  import { screen } from '@testing-library/react'
3
3
  import { assertType } from 'type-plus'
4
- import { expect, it } from 'vitest'
4
+ import { expect, it, test } from 'vitest'
5
5
  import { page } from './@vitest/browser/context.js'
6
6
  import { toSnapshotId } from './@vitest/browser/image_snapshot.logic.js'
7
7
  import * as ToMatchStories from './expect.to_match_image_snapshot.stories.js'
package/src/vis.spec.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { expect, it } from 'vitest'
1
2
  import { state } from './state.js'
2
3
  import { createVisConfig } from './vis.js'
3
4
 
@@ -25,14 +26,16 @@ it('can define the timeout value for taking the snapshot', async () => {
25
26
  it('can define default failureThreshold', async () => {
26
27
  await createVisConfig({
27
28
  failureThreshold: 50,
29
+ failureThresholdType: 'percent',
28
30
  }).beforeAll({ name: 'some.test.ts', file: { filepath: 'dummy/some.test.ts' } })
29
31
 
30
32
  expect(state.mergeMatchImageSnapshotOptions()).toMatchObject({
31
33
  failureThreshold: 50,
34
+ failureThresholdType: 'percent',
32
35
  })
33
36
  })
34
37
 
35
- it('can define default failureThresholdType', async () => {
38
+ it('can define default customizeSnapshotId', async () => {
36
39
  await createVisConfig({
37
40
  snapshotPath: '_sp_',
38
41
  customizeSnapshotId: (id) => id.slice(0, id.indexOf('-')),
package/src/vis.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { expect } from 'vitest'
1
+ import { afterEach, beforeAll, expect } from 'vitest'
2
2
  import { page } from './@vitest/browser/context.js'
3
3
  import './augment.js'
4
4
  import { toMatchImageSnapshot } from './expect.to_match_image_snapshot.js'