mirror of
https://github.com/fluencelabs/fluence-js.git
synced 2025-03-15 15:30:49 +00:00
Refactor types
This commit is contained in:
parent
6755f57b06
commit
f7940618a1
@ -14,7 +14,7 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { JSONValue, ServiceDef } from "@fluencelabs/interfaces";
|
import { ServiceDef } from "@fluencelabs/interfaces";
|
||||||
|
|
||||||
import { recursiveRenameLaquaProps } from "../utils.js";
|
import { recursiveRenameLaquaProps } from "../utils.js";
|
||||||
|
|
||||||
@ -63,6 +63,6 @@ function generateRegisterServiceOverload(
|
|||||||
}
|
}
|
||||||
|
|
||||||
function serviceToJson(service: ServiceDef): string {
|
function serviceToJson(service: ServiceDef): string {
|
||||||
const record: Record<never, JSONValue> = service;
|
const record: Record<never, unknown> = service;
|
||||||
return JSON.stringify(recursiveRenameLaquaProps(record), null, 4);
|
return JSON.stringify(recursiveRenameLaquaProps(record), null, 4);
|
||||||
}
|
}
|
||||||
|
@ -20,7 +20,6 @@ import { join } from "path";
|
|||||||
import {
|
import {
|
||||||
ArrowType,
|
ArrowType,
|
||||||
ArrowWithoutCallbacks,
|
ArrowWithoutCallbacks,
|
||||||
JSONValue,
|
|
||||||
LabeledProductType,
|
LabeledProductType,
|
||||||
NilType,
|
NilType,
|
||||||
SimpleTypes,
|
SimpleTypes,
|
||||||
@ -67,7 +66,7 @@ export function getFuncArgs(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export function recursiveRenameLaquaProps(obj: JSONValue): unknown {
|
export function recursiveRenameLaquaProps(obj: unknown): unknown {
|
||||||
if (typeof obj !== "object" || obj === null) {
|
if (typeof obj !== "object" || obj === null) {
|
||||||
return obj;
|
return obj;
|
||||||
}
|
}
|
||||||
@ -78,7 +77,9 @@ export function recursiveRenameLaquaProps(obj: JSONValue): unknown {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
return Object.getOwnPropertyNames(obj).reduce((acc, prop) => {
|
const objType: {} = obj;
|
||||||
|
|
||||||
|
return Object.getOwnPropertyNames(objType).reduce((acc, prop) => {
|
||||||
let accessProp = prop;
|
let accessProp = prop;
|
||||||
|
|
||||||
if (prop.includes("Laqua_js")) {
|
if (prop.includes("Laqua_js")) {
|
||||||
@ -89,12 +90,14 @@ export function recursiveRenameLaquaProps(obj: JSONValue): unknown {
|
|||||||
throw new Error(`Bad property name: ${prop}.`);
|
throw new Error(`Bad property name: ${prop}.`);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (refinedProperty in obj) {
|
if (refinedProperty in objType) {
|
||||||
accessProp = refinedProperty;
|
accessProp = refinedProperty;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const laquaProp = obj[accessProp];
|
const accessObj: Record<string, unknown> = objType;
|
||||||
|
|
||||||
|
const laquaProp = accessObj[accessProp];
|
||||||
|
|
||||||
if (laquaProp === undefined) {
|
if (laquaProp === undefined) {
|
||||||
return acc;
|
return acc;
|
||||||
|
@ -1,30 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright 2023 Fluence Labs Limited
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Peer ID's id as a base58 string (multihash/CIDv0).
|
|
||||||
*/
|
|
||||||
export type PeerIdB58 = string;
|
|
||||||
|
|
||||||
export type JSONValue =
|
|
||||||
| string
|
|
||||||
| number
|
|
||||||
| boolean
|
|
||||||
| null
|
|
||||||
| { [x: string]: JSONValue }
|
|
||||||
| Array<JSONValue>;
|
|
||||||
export type JSONObject = { [x: string]: JSONValue };
|
|
||||||
export type JSONArray = Array<JSONValue>;
|
|
@ -15,5 +15,4 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
export * from "./compilerSupport/aquaTypeDefinitions.js";
|
export * from "./compilerSupport/aquaTypeDefinitions.js";
|
||||||
export * from "./commonTypes.js";
|
|
||||||
export * from "./future.js";
|
export * from "./future.js";
|
||||||
|
Loading…
x
Reference in New Issue
Block a user