Files
aula-manager/chunk-DtbgphQc.js
T
2026-07-05 17:54:50 +07:00

2 lines
8.0 KiB
JavaScript

import{d as _,a as y,a9 as h,aa as i,T as o,a6 as u,u as l,Q as k,ab as f,a7 as d,a8 as m}from"./app-CPb3bToC.js";const g=_("model_kb_by_v3_keys",{state:()=>({keys:[],macros:[],layers:[],current_layer:0,product_name:""}),actions:{reset(){const t=y();if(!t.current_device)return null;let e=h(),r=[];for(let s=0;s<e.length;s++){let a=[],c=i(e[s].value);for(let n=0;n<c.length;n++)c[n].layer=e[s].value,c[n].type=o.BASIC,c[n].color={r:0,g:0,b:0,a:0},a.push(c[n]);r=r.concat(a)}this.keys=JSON.parse(JSON.stringify(r)),this.macros=[],this.layers=e,this.current_layer=0,this.product_name=t.current_device.product_name},load_profile(t){this.keys=JSON.parse(JSON.stringify(t.keys)),this.macros=JSON.parse(JSON.stringify(t.macros)),this.layers=JSON.parse(JSON.stringify(t.layers)),this.current_layer=t.current_layer,this.product_name=t.product_name},default(){const t=y();if(!t.current_device)return null;let e=h(),r=[];for(let s=0;s<e.length;s++){let a=[],c=i(e[s].value);for(let n=0;n<c.length;n++)c[n].layer=e[s].value,c[n].type=o.BASIC,c[n].color={r:0,g:0,b:0,a:0},a.push(c[n]);r=r.concat(a)}return{keys:JSON.parse(JSON.stringify(r)),macros:[],layers:e,current_layer:0,product_name:t.current_device.product_name}},get_current_layer_keys_by_pos(t){for(let e=0;e<this.keys.length;e++)if(Number(this.keys[e].layer)===Number(this.current_layer)&&Number(this.keys[e].pos)===Number(t))return JSON.parse(JSON.stringify(this.keys[e]));return null},update_layer_keys(t,e){this.keys=this.keys.filter(r=>r.layer!==t),e.forEach((r,s,a)=>{r.layer=t}),this.keys=[...e,...this.keys]},get_layer_keys(t){let e=[];for(let r=0;r<this.keys.length;r++)Number(this.keys[r].layer)===Number(t)&&e.push(this.keys[r]);return e},set_key(t,e,r){for(let s=0;s<this.keys.length;s++)Number(this.keys[s].pos)===Number(e)&&Number(this.keys[s].layer)===Number(t)&&(this.keys[s].type=r.type,this.keys[s].name=r.name,r.type===o.MACRO?this.keys[s].value=JSON.parse(JSON.stringify(r.data.data)):this.keys[s].value=r.data);this._sync_macros()},_sync_data_to_device(){y().set_device_data(this)},_sync_macros(){let t=[];for(let e=0;e<this.keys.length;e++)this.keys[e].type===o.MACRO&&t.push(JSON.parse(JSON.stringify(this.keys[e].value)));t=u(t,"name"),this.macros=JSON.parse(JSON.stringify(t))},from_macros(){let t=[];for(let e=0;e<this.keys.length;e++)this.keys[e].type==="macro"&&t.push(JSON.parse(JSON.stringify(this.keys[e].value)));this.macros=JSON.parse(JSON.stringify(t))},reset_layer(t){let e=i(t);for(let r=0;r<this.keys.length;r++)if(this.keys[r].layer===t){for(let s=0;s<e.length;s++)if(Number(this.keys[r].pos)===Number(e[s].pos)){e[s].layer=this.current_layer,e[s].type=o.BASIC,e[s].color=this.keys[r].color,this.keys[r]=JSON.parse(JSON.stringify(e[s]));break}}this._sync_macros()},reset_key(t,e){let r=i(t);for(let s=0;s<this.keys.length;s++)for(let a=0;a<r.length;a++)if(Number(this.keys[s].pos)===Number(e)&&Number(r[a].pos)===Number(e)&&Number(this.keys[s].layer)===Number(t)){r[a].layer=t,r[a].type=o.BASIC,r[a].color=this.keys[s].color,this.keys[s]=JSON.parse(JSON.stringify(r[a]));break}this._sync_macros()},setup(){this.layers.length===0&&(this.layers=h());const t=y();if(this.keys.length===0||this.product_name!==t.current_device.product_name){let e=[];for(let r=0;r<this.layers.length;r++){let s=[],a=i(this.layers[r].value);for(let c=0;c<a.length;c++)a[c].layer=this.layers[r].value,a[c].type=o.BASIC,a[c].color={r:0,g:0,b:0,a:0},s.push(a[c]);e=e.concat(s)}this.keys=JSON.parse(JSON.stringify(e)),this.product_name=t.current_device.product_name}},set_custom_light(t,e){for(let r=0;r<this.keys.length;r++)if(Number(this.keys[r].layer)===0&&Number(this.keys[r].pos)===Number(t))return this.keys[r].color={r:e.r,g:e.g,b:e.b,a:e.a},!0},async fetch_advanced_keys(t=0,e=null){try{return await(await l().controller).get_advanced_keys(this,t,e)}catch{return!1}},async update_advanced_keys_socd(t=0){try{let e=[],r=this.get_layer_keys(t);for(let s=0;s<r.length;s++)if(r[s].advanced_key!==void 0&&r[s].advanced_key!==null&&r[s].advanced_key.type===k.SOCD){let a=r[s].advanced_key.keys;a.sort((c,n)=>Number(c.value)-Number(n.value)),r[s].advanced_key.keys=JSON.parse(JSON.stringify(a)),e.push({id:r[s].pos,data:JSON.parse(JSON.stringify(r[s].advanced_key))})}if(e.length===0)return!0;for(let s=0;s<e.length;s++){let a="type:";a+=String(e[s].data.socd_type.toString(16)).padStart(2,"0"),a+="data:";for(let c=0;c<e[s].data.keys.length;c++)a+=String(e[s].data.keys[c].value.toString(16)).padStart(2,"0");e[s].hash_data=a}e=f(e,"hash_data");for(let s=0;s<e.length;s++)for(let a=0;a<e[s].data.keys.length;a++)for(let c=0;c<r.length;c++)Number(r[c].pos)===Number(e[s].data.keys[a].value)&&(r[c].advanced_key=e[s].data);return this.update_layer_keys(t,r),!0}catch{return!1}},async fetch_key_type(t){try{return await(await l().controller).fetch_key_type(this,t)}catch{return!1}},async sync_key_type(t){try{return await(await l().controller).sync_key_type(this,t)}catch{return!1}},async remove_advanced_keys(t=-1){try{let s=await(await l().controller).remove_advanced_keys(this,t);return s&&this.keys.forEach((a,c,n)=>{Number(a.pos)===Number(t)&&delete n[c].advanced_key}),s}catch{return!1}},async reset_layer_keys(t=0){try{return await(await l().controller).reset_layer_keys(this,t)}catch{return!1}},async fetch_keys(t=0,e=[]){try{return await(await l().controller).fetch_keys(this,e,t)}catch{return!1}},async sync_distance(t=[0],e){try{return await(await l().controller).sync_distance(this,t,e)}catch{return!1}},async sync_rt(t=[0],e){try{return await(await l().controller).sync_rt(this,t,e)}catch{return!1}},async start_calibrate(){try{return await(await l().controller).start_calibrate(this)}catch{return!1}},async sync_calibrate_distance_start(){try{return await(await l().controller).sync_calibrate_distance_start(this)}catch{return!1}},async sync_calibrate_distance_sync(t){try{return await(await l().controller).sync_calibrate_distance_sync(this,t)}catch{return!1}},async sync_calibrate_distance_exit(){try{return await(await l().controller).sync_calibrate_distance_exit(this)}catch{return!1}},async fetch_calibrate_ad_range(t){try{return await(await l().controller).fetch_calibrate_ad_range(this,t)}catch{return!1}},async sync_calibrate_ad(t){try{return await(await l().controller).sync_calibrate_ad(t)}catch{return!1}},async stop_calibrate(){try{return await(await l().controller).stop_calibrate(this)}catch{return!1}},async fetch_distance(t=[0],e){try{return await(await l().controller).fetch_distance(this,t,e)}catch{return!1}},async fetch_rt(t=[0],e){try{return await(await l().controller).fetch_rt(this,t,e)}catch{return!1}},get_pos_by_layer(t){let e=[];return this.keys.forEach((r,s,a)=>{r.layer===t&&e.push(r.pos)}),e},get_keys_distance(){let t=[];return this.keys.forEach((e,r,s)=>{e.layer===0&&(JSON.parse(JSON.stringify(e)),t.push(e))}),t},async sync_keys(t=0,e=[]){try{let s=await l().controller;return this._sync_macros(),await s.sync_keys(this,e,t)}catch{return!1}},async sync_advanced_keys(t=0,e=null,r=null){try{return await(await l().controller).sync_advanced_keys(this,t,e,r)}catch{return!1}},async sync_custom_light(t){try{return await(await l().controller).sync_custom_light(this,t)}catch{return!1}},async fetch_safe_area(t=[0],e=[]){try{return await(await l().controller).fetch_safe_area(this,t,e)}catch{return 0}},async sync_safe_area(t=[0],e=[]){try{return await(await l().controller).sync_safe_area(this,t,e)}catch{return!1}},async fetch(){try{const r=await(await l().controller).get_keys(this.current_layer);for(let s=0;s<this.keys.length;s++)if(Number(this.keys[s].layer)===Number(this.current_layer)){const a=Number(this.keys[s].pos-8);if(this.keys[s].name="",this.keys[s].value="0x00000000",this.keys[s].type=o.BASIC,r[a+0]!==3){let c=0;c+=r[a+0]*Math.pow(256,3),c+=r[a+1]*Math.pow(256,2),c+=r[a+2]*Math.pow(256,1),c+=r[a+3]*Math.pow(256,0),this.keys[s].value="0x"+d(c,8);const n=m(this.keys[s].value);try{this.keys[s].name=n.name,this.keys[s].type=n.type,c===0&&(this.keys[s].name="")}catch{c===0&&(this.keys[s].name="");continue}}}return this._sync_data_to_device(),!0}catch{return!1}},async fetch_custom_light(t=[]){try{return await(await l().controller).fetch_custom_light(this,t)}catch{return!1}}},persist:!0});export{g as m};