Init: RoggioApp Architecture, Prisma Schema, API MVP
This commit is contained in:
+35
@@ -0,0 +1,35 @@
|
||||
import * as Inspectable from "../../Inspectable.js";
|
||||
/** @internal */
|
||||
export const getKeysForIndexSignature = (input, parameter) => {
|
||||
switch (parameter._tag) {
|
||||
case "StringKeyword":
|
||||
case "TemplateLiteral":
|
||||
return Object.keys(input);
|
||||
case "SymbolKeyword":
|
||||
return Object.getOwnPropertySymbols(input);
|
||||
case "Refinement":
|
||||
return getKeysForIndexSignature(input, parameter.from);
|
||||
}
|
||||
};
|
||||
/** @internal */
|
||||
export const memoizeThunk = f => {
|
||||
let done = false;
|
||||
let a;
|
||||
return () => {
|
||||
if (done) {
|
||||
return a;
|
||||
}
|
||||
a = f();
|
||||
done = true;
|
||||
return a;
|
||||
};
|
||||
};
|
||||
/** @internal */
|
||||
export const isNonEmpty = x => Array.isArray(x);
|
||||
/** @internal */
|
||||
export const isSingle = x => !Array.isArray(x);
|
||||
/** @internal */
|
||||
export const formatPathKey = key => `[${Inspectable.formatPropertyKey(key)}]`;
|
||||
/** @internal */
|
||||
export const formatPath = path => isNonEmpty(path) ? path.map(formatPathKey).join("") : formatPathKey(path);
|
||||
//# sourceMappingURL=util.js.map
|
||||
Reference in New Issue
Block a user