@easyv/biz-components 1.0.3 → 1.0.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.
- package/dist/_virtual/index.es2.js +2 -2
- package/dist/_virtual/index.es3.js +2 -2
- package/dist/_virtual/index.es4.js +2 -2
- package/dist/_virtual/index.es5.js +2 -2
- package/dist/components/easyv-monaco-editor/easyv-monaco-editor.es.js +4 -3
- package/dist/components/easyv-monaco-editor/easyv-monaco-editor.es.js.map +1 -1
- package/dist/components/easyv-monaco-editor/types.d.ts +2 -0
- package/dist/node_modules/.pnpm/classnames@2.3.2/node_modules/classnames/index.es.js +1 -1
- package/dist/node_modules/.pnpm/co-web-worker@1.0.1/node_modules/co-web-worker/index.es.js +1 -1
- package/dist/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/index.es.js +1 -1
- package/dist/node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/index.es.js +1 -1
- package/dist/stats.html +1 -1
- package/dist/style.pkg.css +1 -1
- package/dist/tailwindcss.pkg.css +1 -1
- package/dist/utils/vosk-browser-manager/vosk-browser-manager.d.ts +2 -0
- package/dist/utils/vosk-browser-manager/vosk-browser-manager.es.js +2 -1
- package/dist/utils/vosk-browser-manager/vosk-browser-manager.es.js.map +1 -1
- package/package.json +1 -1
- package/dist/components/easyv-monaco-editor/index.less.es.js +0 -2
- package/dist/components/easyv-monaco-editor/index.less.es.js.map +0 -1
package/dist/style.pkg.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.voice-animation .wave-bar{animation:wave 1.6s ease-in-out infinite;background:#fff}@keyframes wave{0%,to{transform:scaleY(1)}50%{transform:scaleY(.2)}}
|
|
1
|
+
.voice-animation .wave-bar{animation:wave 1.6s ease-in-out infinite;background:#fff}@keyframes wave{0%,to{transform:scaleY(1)}50%{transform:scaleY(.2)}}.biz-components-dom .easyv-monaco-editor .mtk11{color:#9cdcfe}
|
package/dist/tailwindcss.pkg.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }body .biz-flex{display:flex}body .biz-contents{display:contents}body .biz-h-3\.5{height:.875rem}body .biz-h-6{height:1.5rem}body .biz-h-full{height:100%}body .biz-min-h-10{min-height:2.5rem}body .biz-
|
|
1
|
+
*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }body .biz-flex{display:flex}body .biz-contents{display:contents}body .biz-h-3\.5{height:.875rem}body .biz-h-6{height:1.5rem}body .biz-h-full{height:100%}body .biz-min-h-10{min-height:2.5rem}body .biz-w-3\.5{width:.875rem}body .biz-w-6{width:1.5rem}body .biz-w-\[0\.4rem\]{width:.4rem}body .biz-cursor-pointer{cursor:pointer}body .biz-select-text{-webkit-user-select:text;-moz-user-select:text;user-select:text}body .biz-flex-col{flex-direction:column}body .biz-items-center{align-items:center}body .biz-justify-center{justify-content:center}body .biz-justify-between{justify-content:space-between}body .biz-gap-1{gap:.25rem}body .biz-gap-3{gap:.75rem}body .biz-whitespace-pre-wrap{white-space:pre-wrap}body .biz-rounded-full{border-radius:9999px}body .biz-rounded-lg{border-radius:.5rem}body .biz-rounded-md{border-radius:.375rem}body .biz-bg-\[\#FFFFFF14\]{background-color:#ffffff14}body .biz-px-4{padding-left:1rem;padding-right:1rem}body .biz-py-3{padding-bottom:.75rem;padding-top:.75rem}body .biz-text-text-2{--tw-text-opacity:1;color:rgb(180 183 193/var(--tw-text-opacity,1))}
|
|
@@ -9,6 +9,8 @@ interface VoskBrowserManagerConfig extends AudiManagerConfig {
|
|
|
9
9
|
onInitialized?: () => void;
|
|
10
10
|
onResult?: (text: string) => void;
|
|
11
11
|
onPartialResult?: (text: string) => void;
|
|
12
|
+
/** 热词识别,准确度不高 */
|
|
13
|
+
hotWords?: string[];
|
|
12
14
|
}
|
|
13
15
|
export declare class VoskBrowserManager {
|
|
14
16
|
config: VoskBrowserManagerConfig;
|
|
@@ -43,7 +43,8 @@ class VoskBrowserManager {
|
|
|
43
43
|
console.time("load model:");
|
|
44
44
|
this.model = await vosk.createModel(this.config.modelUrl);
|
|
45
45
|
console.timeEnd("load model:");
|
|
46
|
-
const
|
|
46
|
+
const hotWords = this.config.hotWords ? JSON.stringify(this.config.hotWords) : void 0;
|
|
47
|
+
const recognizer = new this.model.KaldiRecognizer(this.sampleRate, hotWords);
|
|
47
48
|
recognizer.on("result", (message) => {
|
|
48
49
|
var _a2, _b2;
|
|
49
50
|
const resultText = message.result.text;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vosk-browser-manager.es.js","sources":["../../../src/utils/vosk-browser-manager/vosk-browser-manager.ts"],"sourcesContent":["import { omit } from 'lodash-es';\nimport type * as Vosk from 'vosk-browser';\nimport { AudiManagerConfig, AudioManager, defaultSampleRate } from './audio-manager/audio-manager';\nimport { SampleRate } from './audio-manager/types';\n\ninterface VoskBrowserManagerConfig extends AudiManagerConfig {\n vosk: typeof Vosk;\n modelUrl: string;\n /** 加载模型等初始化配置完成后,自动开始监听 */\n autoStart?: boolean;\n onInitialized?: () => void;\n onResult?: (text: string) => void;\n onPartialResult?: (text: string) => void;\n}\n\nconst pickAudioManagerConfig = (config: VoskBrowserManagerConfig) => {\n return omit(config, [\n 'vosk',\n 'modelUrl',\n 'autoStart',\n 'onResult',\n 'onPartialResult',\n 'onInitialized',\n ]);\n};\n\nexport class VoskBrowserManager {\n config: VoskBrowserManagerConfig;\n /** 采样率(每秒采样数)的浮点数,常用值:16000, 32000, 44100, 48000 */\n sampleRate: SampleRate = defaultSampleRate;\n audioManager?: AudioManager;\n model?: Vosk.Model;\n autoStart = true;\n startResolve?: (value?: unknown) => void;\n status?: 'initializing' | 'initialized';\n\n constructor(config: VoskBrowserManagerConfig) {\n this.config = config;\n this.sampleRate = config.sampleRate || defaultSampleRate;\n this.autoStart = config.autoStart || true;\n this.init(config.vosk);\n }\n\n setConfig(config: Partial<Pick<VoskBrowserManagerConfig, 'onResult' | 'onPartialResult'>>) {\n this.config = {\n ...this.config,\n ...config,\n };\n }\n\n async init(vosk: typeof Vosk) {\n if (this.model) {\n this.model.terminate();\n }\n this.status = 'initializing';\n console.time('load model:');\n this.model = await vosk.createModel(this.config.modelUrl);\n console.timeEnd('load model:');\n\n const recognizer = new this.model.KaldiRecognizer(this.sampleRate);\n recognizer.on('result', (message) => {\n const resultText = (message as any).result.text;\n this.config.onResult?.(resultText);\n });\n recognizer.on('partialresult', (message) => {\n const partialText = (message as any).result.partial;\n this.config.onPartialResult?.(partialText);\n });\n\n if (this.audioManager) {\n this.audioManager.destroy();\n }\n this.audioManager = new AudioManager({\n ...pickAudioManagerConfig(this.config),\n sampleRate: this.sampleRate,\n onFrameRecorded: (data) => {\n recognizer.acceptWaveformFloat(data, this.sampleRate);\n this.config.onFrameRecorded?.(data);\n },\n });\n await this.audioManager.init();\n\n this.config.onInitialized?.();\n this.startResolve?.();\n this.status = 'initialized';\n if (this.autoStart) {\n this.start();\n }\n }\n\n async start() {\n if (this.status === 'initialized') {\n await this.audioManager?.start();\n } else {\n await new Promise((resolve) => {\n this.startResolve = resolve;\n });\n await this.audioManager?.start();\n }\n }\n\n stop() {\n this.audioManager?.stop();\n }\n\n destroy() {\n this.audioManager?.destroy();\n this.model?.terminate();\n }\n}\n"],"names":["_b","_a"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"vosk-browser-manager.es.js","sources":["../../../src/utils/vosk-browser-manager/vosk-browser-manager.ts"],"sourcesContent":["import { omit } from 'lodash-es';\nimport type * as Vosk from 'vosk-browser';\nimport { AudiManagerConfig, AudioManager, defaultSampleRate } from './audio-manager/audio-manager';\nimport { SampleRate } from './audio-manager/types';\n\ninterface VoskBrowserManagerConfig extends AudiManagerConfig {\n vosk: typeof Vosk;\n modelUrl: string;\n /** 加载模型等初始化配置完成后,自动开始监听 */\n autoStart?: boolean;\n onInitialized?: () => void;\n onResult?: (text: string) => void;\n onPartialResult?: (text: string) => void;\n /** 热词识别,准确度不高 */\n hotWords?: string[];\n}\n\nconst pickAudioManagerConfig = (config: VoskBrowserManagerConfig) => {\n return omit(config, [\n 'vosk',\n 'modelUrl',\n 'autoStart',\n 'onResult',\n 'onPartialResult',\n 'onInitialized',\n ]);\n};\n\nexport class VoskBrowserManager {\n config: VoskBrowserManagerConfig;\n /** 采样率(每秒采样数)的浮点数,常用值:16000, 32000, 44100, 48000 */\n sampleRate: SampleRate = defaultSampleRate;\n audioManager?: AudioManager;\n model?: Vosk.Model;\n autoStart = true;\n startResolve?: (value?: unknown) => void;\n status?: 'initializing' | 'initialized';\n\n constructor(config: VoskBrowserManagerConfig) {\n this.config = config;\n this.sampleRate = config.sampleRate || defaultSampleRate;\n this.autoStart = config.autoStart || true;\n this.init(config.vosk);\n }\n\n setConfig(config: Partial<Pick<VoskBrowserManagerConfig, 'onResult' | 'onPartialResult'>>) {\n this.config = {\n ...this.config,\n ...config,\n };\n }\n\n async init(vosk: typeof Vosk) {\n if (this.model) {\n this.model.terminate();\n }\n this.status = 'initializing';\n console.time('load model:');\n this.model = await vosk.createModel(this.config.modelUrl);\n console.timeEnd('load model:');\n\n const hotWords = this.config.hotWords ? JSON.stringify(this.config.hotWords) : undefined;\n const recognizer = new this.model.KaldiRecognizer(this.sampleRate, hotWords);\n recognizer.on('result', (message) => {\n const resultText = (message as any).result.text;\n this.config.onResult?.(resultText);\n });\n recognizer.on('partialresult', (message) => {\n const partialText = (message as any).result.partial;\n this.config.onPartialResult?.(partialText);\n });\n\n if (this.audioManager) {\n this.audioManager.destroy();\n }\n this.audioManager = new AudioManager({\n ...pickAudioManagerConfig(this.config),\n sampleRate: this.sampleRate,\n onFrameRecorded: (data) => {\n recognizer.acceptWaveformFloat(data, this.sampleRate);\n this.config.onFrameRecorded?.(data);\n },\n });\n await this.audioManager.init();\n\n this.config.onInitialized?.();\n this.startResolve?.();\n this.status = 'initialized';\n if (this.autoStart) {\n this.start();\n }\n }\n\n async start() {\n if (this.status === 'initialized') {\n await this.audioManager?.start();\n } else {\n await new Promise((resolve) => {\n this.startResolve = resolve;\n });\n await this.audioManager?.start();\n }\n }\n\n stop() {\n this.audioManager?.stop();\n }\n\n destroy() {\n this.audioManager?.destroy();\n this.model?.terminate();\n }\n}\n"],"names":["_b","_a"],"mappings":";;;;;AAiBA,MAAM,yBAAyB,CAAC,WAAqC;AACnE,SAAO,KAAK,QAAQ;AAAA,IAClB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,CACD;AACH;AAEO,MAAM,mBAAmB;AAAA,EAU9B,YAAY,QAAkC;AAT9C;AAEA;AAAA,sCAAyB;AACzB;AACA;AACA,qCAAY;AACZ;AACA;AAGE,SAAK,SAAS;AACT,SAAA,aAAa,OAAO,cAAc;AAClC,SAAA,YAAY,OAAO,aAAa;AAChC,SAAA,KAAK,OAAO,IAAI;AAAA,EAAA;AAAA,EAGvB,UAAU,QAAiF;AACzF,SAAK,SAAS;AAAA,MACZ,GAAG,KAAK;AAAA,MACR,GAAG;AAAA,IACL;AAAA,EAAA;AAAA,EAGF,MAAM,KAAK,MAAmB;;AAC5B,QAAI,KAAK,OAAO;AACd,WAAK,MAAM,UAAU;AAAA,IAAA;AAEvB,SAAK,SAAS;AACd,YAAQ,KAAK,aAAa;AAC1B,SAAK,QAAQ,MAAM,KAAK,YAAY,KAAK,OAAO,QAAQ;AACxD,YAAQ,QAAQ,aAAa;AAEvB,UAAA,WAAW,KAAK,OAAO,WAAW,KAAK,UAAU,KAAK,OAAO,QAAQ,IAAI;AAC/E,UAAM,aAAa,IAAI,KAAK,MAAM,gBAAgB,KAAK,YAAY,QAAQ;AAChE,eAAA,GAAG,UAAU,CAAC,YAAY;;AAC7B,YAAA,aAAc,QAAgB,OAAO;AACtC,OAAAA,OAAAC,MAAA,KAAA,QAAO,aAAP,gBAAAD,IAAA,KAAAC,KAAkB;AAAA,IAAU,CAClC;AACU,eAAA,GAAG,iBAAiB,CAAC,YAAY;;AACpC,YAAA,cAAe,QAAgB,OAAO;AACvC,OAAAD,OAAAC,MAAA,KAAA,QAAO,oBAAP,gBAAAD,IAAA,KAAAC,KAAyB;AAAA,IAAW,CAC1C;AAED,QAAI,KAAK,cAAc;AACrB,WAAK,aAAa,QAAQ;AAAA,IAAA;AAEvB,SAAA,eAAe,IAAI,aAAa;AAAA,MACnC,GAAG,uBAAuB,KAAK,MAAM;AAAA,MACrC,YAAY,KAAK;AAAA,MACjB,iBAAiB,CAAC,SAAS;;AACd,mBAAA,oBAAoB,MAAM,KAAK,UAAU;AAC/C,SAAAD,OAAAC,MAAA,KAAA,QAAO,oBAAP,gBAAAD,IAAA,KAAAC,KAAyB;AAAA,MAAI;AAAA,IACpC,CACD;AACK,UAAA,KAAK,aAAa,KAAK;AAE7B,qBAAK,QAAO,kBAAZ;AACA,eAAK,iBAAL;AACA,SAAK,SAAS;AACd,QAAI,KAAK,WAAW;AAClB,WAAK,MAAM;AAAA,IAAA;AAAA,EACb;AAAA,EAGF,MAAM,QAAQ;;AACR,QAAA,KAAK,WAAW,eAAe;AAC3B,cAAA,UAAK,iBAAL,mBAAmB;AAAA,IAAM,OAC1B;AACC,YAAA,IAAI,QAAQ,CAAC,YAAY;AAC7B,aAAK,eAAe;AAAA,MAAA,CACrB;AACK,cAAA,UAAK,iBAAL,mBAAmB;AAAA,IAAM;AAAA,EACjC;AAAA,EAGF,OAAO;;AACL,eAAK,iBAAL,mBAAmB;AAAA,EAAK;AAAA,EAG1B,UAAU;;AACR,eAAK,iBAAL,mBAAmB;AACnB,eAAK,UAAL,mBAAY;AAAA,EAAU;AAE1B;"}
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.less.es.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|