typings fix
This commit is contained in:
parent
8ade5f5703
commit
dee5328d71
@ -1,7 +1,7 @@
|
||||
/** @import * as TYPES from "./types.ts" */
|
||||
|
||||
/** @type {TYPES.GraphBuilder} */
|
||||
function Builder({user, role, part, desk, pass}, folderName)
|
||||
export function Room({user, role, part, desk, pass})
|
||||
{
|
||||
|
||||
// mutate users
|
||||
@ -116,7 +116,7 @@ function Builder({user, role, part, desk, pass}, folderName)
|
||||
const [userID, userObject] = userData[i];
|
||||
try
|
||||
{
|
||||
const resp = await fetch(`./room/${folderName}/${passID}/${userID}.json`);
|
||||
const resp = await fetch(`./room/${context.Path}/${passID}/${userID}.json`);
|
||||
/** @type {TYPES.UserPassFile} */
|
||||
const json = await resp.json();
|
||||
|
||||
@ -168,26 +168,28 @@ function Builder({user, role, part, desk, pass}, folderName)
|
||||
PassList[passID] = passObj;
|
||||
}
|
||||
|
||||
return {
|
||||
const context = {
|
||||
Path:"",
|
||||
Desk:DeskList,
|
||||
Part:PartList,
|
||||
User:UserList,
|
||||
Role:RoleList,
|
||||
Pass:PassList
|
||||
};
|
||||
}
|
||||
|
||||
return context;
|
||||
}
|
||||
|
||||
/** @type {TYPES.MassDscription} */
|
||||
export default function Graph(params)
|
||||
{
|
||||
/** @type {TYPES.MassBuilder} */
|
||||
export default function MassBuild(params)
|
||||
{
|
||||
return ()=>{
|
||||
Object.entries(params).forEach( ([roomFolderName, roomData])=>
|
||||
{
|
||||
params[roomFolderName] = Builder(roomData, roomFolderName);
|
||||
roomData.Path = roomFolderName;
|
||||
});
|
||||
return params;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/** @type {TYPES.Scanner} */
|
||||
|
||||
@ -21,24 +21,23 @@ export type GraphBuilder=
|
||||
part:Parts,
|
||||
desk:Desks,
|
||||
pass:Record<string, [name:string]>,
|
||||
},
|
||||
folderName:string
|
||||
}
|
||||
)
|
||||
=>GraphParts
|
||||
|
||||
|
||||
export type GraphParts = {
|
||||
Desk:Record<string, Desk>,
|
||||
Part:Record<string, Part>,
|
||||
User:Record<string, User>,
|
||||
Role:Record<string, Role>,
|
||||
Pass:Record<string, Pass>
|
||||
Path:string
|
||||
}
|
||||
|
||||
export type MassDscription=
|
||||
(
|
||||
params:Record<string, Parameters<GraphBuilder>[0]>
|
||||
)
|
||||
=>()=>Record<string, GraphParts>
|
||||
export type MassBuilder=<Params extends Record<string, GraphParts>>(rooms:Params)=>()=>{
|
||||
[K in keyof Params]: GraphParts
|
||||
}
|
||||
|
||||
export type UserPassFile = Record<string, Array<[time:number, data:string, user?:User]>>
|
||||
|
||||
|
||||
@ -1,27 +1,25 @@
|
||||
import Graph from "../../graph/graph.js";
|
||||
//@ts-check
|
||||
import Rooms, {Room} from "../../graph/graph.js";
|
||||
import User from "./user.js";
|
||||
|
||||
export default Graph(
|
||||
{
|
||||
room_01:{
|
||||
user:User,
|
||||
role:
|
||||
{
|
||||
dev:["Development", "u1"]
|
||||
},
|
||||
part:
|
||||
{
|
||||
p1:"hey",
|
||||
p2:"sup"
|
||||
},
|
||||
desk:
|
||||
{
|
||||
d1:["Desk 01", ["dev"], "one", {p1:3}, "p2"]
|
||||
},
|
||||
pass:{
|
||||
pass_01:["pass 01"],
|
||||
pass_02:["pass 02"]
|
||||
}
|
||||
export default Rooms({
|
||||
room_01:Room({
|
||||
user:User,
|
||||
role:{
|
||||
dev:["Development", "u1"]
|
||||
},
|
||||
part:{
|
||||
p1:"hey",
|
||||
p2:"sup"
|
||||
},
|
||||
desk:{
|
||||
d1:["Desk 01", ["dev"], "one", {p1:3}, "p1"]
|
||||
},
|
||||
pass:{
|
||||
pass_01:["pass 01"],
|
||||
pass_02:["pass 02"]
|
||||
}
|
||||
}
|
||||
);
|
||||
})
|
||||
})
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user