@motion-proto/live-tokens 0.85.0 → 0.87.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 (43) hide show
  1. package/CHANGELOG.md +55 -0
  2. package/README.md +1 -1
  3. package/package.json +1 -1
  4. package/src/editor/component-editor/SlidePagerEditor.svelte +118 -0
  5. package/src/editor/component-editor/VideoFrameEditor.svelte +73 -0
  6. package/src/editor/component-editor/VideoLightboxEditor.svelte +108 -0
  7. package/src/editor/component-editor/registry.ts +40 -1
  8. package/src/editor/core/sketch/sketchLayer.ts +7 -0
  9. package/src/editor/overlay/LiveEditorOverlay.svelte +45 -52
  10. package/src/editor/pages/ComponentEditorPage.svelte +1 -1
  11. package/src/editor/ui/ThemePanel.svelte +9 -53
  12. package/src/live-tokens/data/themes/autumn.json +97 -0
  13. package/src/live-tokens/data/themes/halloween.json +97 -0
  14. package/src/live-tokens/data/themes/midnight-study.json +97 -0
  15. package/src/live-tokens/data/themes/ocean.json +97 -0
  16. package/src/live-tokens/data/themes/royal-velvet.json +97 -0
  17. package/src/live-tokens/data/themes/sketchy.json +97 -0
  18. package/src/live-tokens/data/themes/spring-meadow.json +97 -0
  19. package/src/live-tokens/data/themes/sunset.json +97 -0
  20. package/src/system/assets/slide-04.webp +0 -0
  21. package/src/system/assets/slide-05.webp +0 -0
  22. package/src/system/assets/slide-06.webp +0 -0
  23. package/src/system/assets/watch-navigation-poster.webp +0 -0
  24. package/src/system/assets/watch-navigation.mp4 +0 -0
  25. package/src/system/components/ImageLightbox.svelte +20 -21
  26. package/src/system/components/SlidePager.svelte +516 -0
  27. package/src/system/components/VideoFrame.svelte +284 -0
  28. package/src/system/components/VideoLightbox.svelte +454 -0
  29. package/src/testing-js/{chunk-RDHCBQ6I.js → chunk-FTLASW2R.js} +366 -2
  30. package/src/testing-js/chunk-FTLASW2R.js.map +1 -0
  31. package/src/testing-js/{chunk-XV5CYADO.js → chunk-NXRFTTVL.js} +10 -6
  32. package/src/testing-js/chunk-NXRFTTVL.js.map +1 -0
  33. package/src/testing-js/component-behavior.contract.js +1 -1
  34. package/src/testing-js/component-editor.contract.js +1 -1
  35. package/src/testing-js/component-render.contract.js +1 -1
  36. package/src/testing-js/index.d.ts +2 -2
  37. package/src/testing-js/index.js +2 -2
  38. package/src/testing-js/page-compliance.contract.js +1 -1
  39. package/src/testing-js/{vitest-BMLIbDs2.d.ts → vitest-5vWtqwWe.d.ts} +2 -2
  40. package/src/testing-js/vitest.d.ts +1 -1
  41. package/src/testing-js/vitest.js +2 -2
  42. package/src/testing-js/chunk-RDHCBQ6I.js.map +0 -1
  43. package/src/testing-js/chunk-XV5CYADO.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../testing/vitest.ts"],"sourcesContent":["import path from 'node:path';\nimport { fileURLToPath } from 'node:url';\nimport { mergeConfig, type UserConfig } from 'vite';\nimport type { TestUserConfig } from 'vitest/config';\nimport { CONTRACTS_MODULE_ENV } from './contracts';\n\n// The barrel (`./index`) re-exports this from `./playwright`, which imports\n// `@playwright/test` at module top. A Vitest-only consumer authoring\n// `live-tokens.testing.ts` needs `defineTestingConfig` without that import\n// ever resolving, so it is reachable from here too.\nexport { defineTestingConfig, resolveTestingConfig } from './config';\nexport type { LiveTokensTestingConfig, ResolvedTestingConfig } from './config';\n\nexport interface VitestConfigOptions {\n /** Files the run collects, relative to the project root. Default: the\n * registry and behavior contracts in this module's own directory. */\n include?: string[];\n exclude?: string[];\n setupFiles?: string[];\n /** Default `happy-dom`, which the registry contract needs to mount a store. */\n environment?: TestUserConfig['environment'];\n /** Module the registry contract imports to register the project's\n * components. Reaches the run as an environment variable because the\n * contract file resolves the path itself. */\n registrySetup?: string;\n /** Module `selectedContracts()` imports a project's own `ComponentContract[]`\n * from, same env-var seam as `registrySetup` and mirroring\n * `createPlaywrightConfig`'s own use of it: the behavior contract's\n * `describe.each` runs at module top, before a test can resolve anything\n * for it. */\n contractsModule?: string;\n}\n\nconst CONTRACT_INCLUDE = ['registry.contract.{ts,js}', 'component-behavior.contract.{ts,js}'];\n\n// A root-wide glob also collects the stale package copy inside any nested\n// project's node_modules, which then fails against this project's registry.\nconst CONTRACT_DIR = path.dirname(fileURLToPath(import.meta.url));\n\n/**\n * The project's Vite config plus what the registry contract needs on top.\n *\n * The package ships Svelte and TypeScript source and imports a FontAwesome\n * stylesheet. Left external, Node meets that `.css` and stops with\n * `Unknown file extension \".css\"` before a single test runs, so both are\n * inlined for Vite to transform.\n */\nexport function createVitestConfig(\n viteConfig: UserConfig,\n options: VitestConfigOptions = {},\n): UserConfig {\n return mergeConfig(viteConfig, {\n // `svelte`'s package exports resolve to `index-server.js` without it, whose\n // `mount` throws `lifecycle_function_unavailable`, and whose\n // `createEventDispatcher` is a silent no-op. A project's own vite config\n // states the condition for its build, not for a test run under happy-dom.\n resolve: { conditions: ['browser'] },\n test: {\n ...(options.include ? { include: options.include } : { dir: CONTRACT_DIR, include: CONTRACT_INCLUDE }),\n // Vitest's own default drops everything under `node_modules`, which is\n // where an installed package's contract file lives.\n exclude: options.exclude ?? [],\n ...(options.setupFiles ? { setupFiles: options.setupFiles } : {}),\n environment: options.environment ?? 'happy-dom',\n environmentOptions: {\n happyDOM: {\n settings: {\n // fontLoader injects <link rel=stylesheet> for the theme's font\n // sources, which happy-dom would fetch from Google and Typekit for\n // real. That puts the public internet on the release gate's\n // critical path; treat the load as satisfied instead.\n disableCSSFileLoading: true,\n handleDisabledFileLoadingAsSuccess: true,\n },\n },\n },\n server: { deps: { inline: [/@motion-proto\\/live-tokens/, /@fortawesome/] } },\n // Vitest's default preview truncates a failed array-equality assertion\n // to `[ Array(1) ]`, which drops `checkRegistryEntry`'s actual violation\n // text. `check-component --tests` reads that text out of the JSON\n // reporter's `failureMessages` to attribute a finding, so nothing here\n // can afford to be summarized away.\n chaiConfig: { truncateThreshold: 0 },\n ...(options.registrySetup || options.contractsModule\n ? {\n env: {\n ...(options.registrySetup ? { LIVE_TOKENS_REGISTRY_SETUP: options.registrySetup } : {}),\n ...(options.contractsModule ? { [CONTRACTS_MODULE_ENV]: options.contractsModule } : {}),\n },\n }\n : {}),\n },\n } satisfies UserConfig);\n}\n"],"mappings":";;;;;AAAA,OAAO,UAAU;AACjB,SAAS,qBAAqB;AAC9B,SAAS,mBAAoC;AA+B7C,IAAM,mBAAmB,CAAC,6BAA6B,qCAAqC;AAI5F,IAAM,eAAe,KAAK,QAAQ,cAAc,YAAY,GAAG,CAAC;AAUzD,SAAS,mBACd,YACA,UAA+B,CAAC,GACpB;AACZ,SAAO,YAAY,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA,IAK7B,SAAS,EAAE,YAAY,CAAC,SAAS,EAAE;AAAA,IACnC,MAAM;AAAA,MACJ,GAAI,QAAQ,UAAU,EAAE,SAAS,QAAQ,QAAQ,IAAI,EAAE,KAAK,cAAc,SAAS,iBAAiB;AAAA;AAAA;AAAA,MAGpG,SAAS,QAAQ,WAAW,CAAC;AAAA,MAC7B,GAAI,QAAQ,aAAa,EAAE,YAAY,QAAQ,WAAW,IAAI,CAAC;AAAA,MAC/D,aAAa,QAAQ,eAAe;AAAA,MACpC,oBAAoB;AAAA,QAClB,UAAU;AAAA,UACR,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA,YAKR,uBAAuB;AAAA,YACvB,oCAAoC;AAAA,UACtC;AAAA,QACF;AAAA,MACF;AAAA,MACA,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,8BAA8B,cAAc,EAAE,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAM3E,YAAY,EAAE,mBAAmB,EAAE;AAAA,MACnC,GAAI,QAAQ,iBAAiB,QAAQ,kBACjC;AAAA,QACE,KAAK;AAAA,UACH,GAAI,QAAQ,gBAAgB,EAAE,4BAA4B,QAAQ,cAAc,IAAI,CAAC;AAAA,UACrF,GAAI,QAAQ,kBAAkB,EAAE,CAAC,oBAAoB,GAAG,QAAQ,gBAAgB,IAAI,CAAC;AAAA,QACvF;AAAA,MACF,IACA,CAAC;AAAA,IACP;AAAA,EACF,CAAsB;AACxB;","names":[]}
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-3UKGXCDL.js";
6
6
  import {
7
7
  selectedContracts
8
- } from "./chunk-RDHCBQ6I.js";
8
+ } from "./chunk-FTLASW2R.js";
9
9
 
10
10
  // src/testing/component-behavior.contract.ts
11
11
  import { existsSync } from "fs";
@@ -10,7 +10,7 @@ import "./chunk-NB3NZRBM.js";
10
10
  import {
11
11
  allContracts,
12
12
  selectedContracts
13
- } from "./chunk-RDHCBQ6I.js";
13
+ } from "./chunk-FTLASW2R.js";
14
14
 
15
15
  // src/testing/component-editor.contract.ts
16
16
  import { test } from "@playwright/test";
@@ -8,7 +8,7 @@ import "./chunk-3UKGXCDL.js";
8
8
  import "./chunk-NB3NZRBM.js";
9
9
  import {
10
10
  selectedContracts
11
- } from "./chunk-RDHCBQ6I.js";
11
+ } from "./chunk-FTLASW2R.js";
12
12
 
13
13
  // src/testing/component-render.contract.ts
14
14
  import fs from "fs";
@@ -1,6 +1,6 @@
1
1
  import { PlaywrightTestProject, PlaywrightTestConfig } from '@playwright/test';
2
- import { L as LiveTokensTestingConfig } from './vitest-BMLIbDs2.js';
3
- export { C as COMPONENTS_PATH_ENV, a as COMPONENT_ENV, D as DEFAULT_PAGE_VIEWPORTS, P as PAGES_ENV, b as PAGE_VIEWPORTS_ENV, c as PageViewport, R as ResolvedTestingConfig, T as TESTING_CONFIG_FILE, V as VitestConfigOptions, d as createVitestConfig, e as defineTestingConfig, f as devServerCommand, r as resolveTestingConfig } from './vitest-BMLIbDs2.js';
2
+ import { L as LiveTokensTestingConfig } from './vitest-5vWtqwWe.js';
3
+ export { C as COMPONENTS_PATH_ENV, a as COMPONENT_ENV, D as DEFAULT_PAGE_VIEWPORTS, P as PAGES_ENV, b as PAGE_VIEWPORTS_ENV, c as PageViewport, R as ResolvedTestingConfig, T as TESTING_CONFIG_FILE, V as VitestConfigOptions, d as createVitestConfig, e as defineTestingConfig, f as devServerCommand, r as resolveTestingConfig } from './vitest-5vWtqwWe.js';
4
4
  import 'vite';
5
5
  import 'vitest/config';
6
6
 
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-3UKGXCDL.js";
7
7
  import {
8
8
  createVitestConfig
9
- } from "./chunk-XV5CYADO.js";
9
+ } from "./chunk-NXRFTTVL.js";
10
10
  import {
11
11
  COMPONENTS_PATH_ENV,
12
12
  COMPONENT_ENV,
@@ -23,7 +23,7 @@ import {
23
23
  allContracts,
24
24
  selectedContracts,
25
25
  shippedContracts
26
- } from "./chunk-RDHCBQ6I.js";
26
+ } from "./chunk-FTLASW2R.js";
27
27
 
28
28
  // src/testing/playwright.ts
29
29
  import path2 from "path";
@@ -8,7 +8,7 @@ import {
8
8
  } from "./chunk-NB3NZRBM.js";
9
9
  import {
10
10
  allContracts
11
- } from "./chunk-RDHCBQ6I.js";
11
+ } from "./chunk-FTLASW2R.js";
12
12
 
13
13
  // src/testing/page-compliance.contract.ts
14
14
  import { test } from "@playwright/test";
@@ -68,8 +68,8 @@ declare function resolveTestingConfig(config?: LiveTokensTestingConfig, root?: s
68
68
  declare function devServerCommand(command: string, host: string, port: number): string;
69
69
 
70
70
  interface VitestConfigOptions {
71
- /** Files the run collects. Default: the shipped registry and behavior
72
- * contracts, matched both in this package and in an installed copy. */
71
+ /** Files the run collects, relative to the project root. Default: the
72
+ * registry and behavior contracts in this module's own directory. */
73
73
  include?: string[];
74
74
  exclude?: string[];
75
75
  setupFiles?: string[];
@@ -1,3 +1,3 @@
1
1
  import 'vite';
2
2
  import 'vitest/config';
3
- export { L as LiveTokensTestingConfig, R as ResolvedTestingConfig, V as VitestConfigOptions, d as createVitestConfig, e as defineTestingConfig, r as resolveTestingConfig } from './vitest-BMLIbDs2.js';
3
+ export { L as LiveTokensTestingConfig, R as ResolvedTestingConfig, V as VitestConfigOptions, d as createVitestConfig, e as defineTestingConfig, r as resolveTestingConfig } from './vitest-5vWtqwWe.js';
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  createVitestConfig
3
- } from "./chunk-XV5CYADO.js";
3
+ } from "./chunk-NXRFTTVL.js";
4
4
  import {
5
5
  defineTestingConfig,
6
6
  resolveTestingConfig
7
7
  } from "./chunk-NB3NZRBM.js";
8
- import "./chunk-RDHCBQ6I.js";
8
+ import "./chunk-FTLASW2R.js";
9
9
  export {
10
10
  createVitestConfig,
11
11
  defineTestingConfig,