diff --git a/packages/stage-ui/package.json b/packages/stage-ui/package.json index 12277036a..d04451584 100644 --- a/packages/stage-ui/package.json +++ b/packages/stage-ui/package.json @@ -54,6 +54,7 @@ "@pixiv/three-vrm-animation": "^3.4.1", "@pixiv/three-vrm-core": "^3.4.1", "@proj-airi/ccc": "workspace:^", + "@proj-airi/chromatic": "^0.0.7", "@proj-airi/drizzle-duckdb-wasm": "catalog:", "@proj-airi/font-cjkfonts-allseto": "workspace:^", "@proj-airi/font-xiaolai": "workspace:^", diff --git a/packages/stage-ui/src/components/Gadgets/TimeSeriesChart.story.vue b/packages/stage-ui/src/components/Gadgets/TimeSeriesChart.story.vue new file mode 100644 index 000000000..41e5683a1 --- /dev/null +++ b/packages/stage-ui/src/components/Gadgets/TimeSeriesChart.story.vue @@ -0,0 +1,459 @@ + + + diff --git a/packages/stage-ui/src/components/Gadgets/TimeSeriesChart.vue b/packages/stage-ui/src/components/Gadgets/TimeSeriesChart.vue new file mode 100644 index 000000000..a0aab716d --- /dev/null +++ b/packages/stage-ui/src/components/Gadgets/TimeSeriesChart.vue @@ -0,0 +1,345 @@ + + + + + diff --git a/packages/stage-ui/src/components/Gadgets/index.ts b/packages/stage-ui/src/components/Gadgets/index.ts index 386d56ef3..66f97a1f9 100644 --- a/packages/stage-ui/src/components/Gadgets/index.ts +++ b/packages/stage-ui/src/components/Gadgets/index.ts @@ -3,3 +3,4 @@ export { default as AudioSpectrumVisualizer } from './AudioSpectrumVisualizer.vu export { default as LevelMeter } from './LevelMeter.vue' export { default as TestDummyMarker } from './TestDummyMarker.vue' export { default as ThresholdMeter } from './ThresholdMeter.vue' +export { default as TimeSeriesChart } from './TimeSeriesChart.vue' diff --git a/packages/stage-ui/src/constants/index.ts b/packages/stage-ui/src/constants/index.ts index cedbadabd..035643f4b 100644 --- a/packages/stage-ui/src/constants/index.ts +++ b/packages/stage-ui/src/constants/index.ts @@ -1,4 +1,6 @@ export const llmInferenceEndToken = '<|llm_inference_end|>' export * from './emotions' +export * from './inject' export * from './prompts/system-v2' +export * from './theme' diff --git a/packages/stage-ui/src/constants/inject.ts b/packages/stage-ui/src/constants/inject.ts new file mode 100644 index 000000000..a35abbf96 --- /dev/null +++ b/packages/stage-ui/src/constants/inject.ts @@ -0,0 +1,3 @@ +import type { InjectionKey } from 'vue' + +export const chromaticHue: InjectionKey = Symbol('@proj-airi/chromatic-hue') diff --git a/packages/stage-ui/src/constants/theme.ts b/packages/stage-ui/src/constants/theme.ts new file mode 100644 index 000000000..815f724e5 --- /dev/null +++ b/packages/stage-ui/src/constants/theme.ts @@ -0,0 +1 @@ +export const chromaticHueDefault = 220.44 diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ee8834ce8..d23e2511b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -990,6 +990,9 @@ importers: '@proj-airi/ccc': specifier: workspace:^ version: link:../ccc + '@proj-airi/chromatic': + specifier: ^0.0.7 + version: 0.0.7 '@proj-airi/drizzle-duckdb-wasm': specifier: 'catalog:' version: 0.4.28(drizzle-orm@0.44.2(@opentelemetry/api@1.9.0)(@types/pg@8.15.4)(gel@2.0.0)(pg@8.16.3)(postgres@3.4.7))(web-worker@1.5.0) @@ -4234,6 +4237,9 @@ packages: '@polka/url@1.0.0-next.24': resolution: {integrity: sha512-2LuNTFBIO0m7kKIQvvPHN6UE63VjpmL9rnEEaOOaiSPbZK+zUOYIzBAWcED+3XYzhYsd/0mD57VdxAEqqV52CQ==} + '@proj-airi/chromatic@0.0.7': + resolution: {integrity: sha512-4uxJhnbdJ6vRWeivuVy4z20cTwHbH+armAHqZNJozaspCtwCyN1AMkvJmj6+4BuuQO1iwQ6KvSHrNcNUGkOtZg==} + '@proj-airi/drizzle-duckdb-wasm@0.4.28': resolution: {integrity: sha512-1Y+7YdFbVgY9vUUAzm+a5QfSLnJkyhqxTENqZQbFmfCRn3rQO4KPLvu/l6HBg7GtLtlIYVIIOG37QiRexuofGw==} peerDependencies: @@ -5769,6 +5775,9 @@ packages: '@xsai/shared@0.3.0-beta.5': resolution: {integrity: sha512-0vDW0fkEcFhfd3uG2OEMkoqq/ghh62KJUokMUwaAPKLNcVNAVcFRoslH9lKjdHJziSZ/b59f5rpUEjU3DHooZQ==} + '@xsai/shared@0.3.0-beta.6': + resolution: {integrity: sha512-EeqkD4+ijKKbxr9Jy9kRnJOcPBErWL8TK2wOdxwhVQuh7VbrYQwaheGjOz9g5OWwM6A0vCje/+TyHz+tURhhqw==} + '@xsai/stream-text@0.3.0-beta.5': resolution: {integrity: sha512-o0SxwzCA2F1zKcONZJX7qrk+PnKhzldV0jRqQ+NdBzaFLmg/clfqeENlbuwmfIrV5ck0BfPEMTo4gNBfxhsGSQ==} @@ -14880,6 +14889,10 @@ snapshots: '@polka/url@1.0.0-next.24': {} + '@proj-airi/chromatic@0.0.7': + dependencies: + culori: 4.0.2 + '@proj-airi/drizzle-duckdb-wasm@0.4.28(drizzle-orm@0.44.2(@opentelemetry/api@1.9.0)(@types/pg@8.15.4)(gel@2.0.0)(pg@8.16.3)(postgres@3.4.7))(web-worker@1.5.0)': dependencies: '@date-fns/tz': 1.2.0 @@ -16826,7 +16839,7 @@ snapshots: '@xsai-ext/shared-providers@0.2.2': dependencies: - '@xsai/shared': 0.3.0-beta.5 + '@xsai/shared': 0.3.0-beta.6 '@xsai-ext/shared-providers@0.3.0-beta.5': dependencies: @@ -16880,6 +16893,8 @@ snapshots: '@xsai/shared@0.3.0-beta.5': {} + '@xsai/shared@0.3.0-beta.6': {} + '@xsai/stream-text@0.3.0-beta.5': dependencies: '@xsai/shared-chat': 0.3.0-beta.5