sdj-esm
Version:
Self Described JSON - ESM
80 lines • 2.73 kB
JavaScript
// Static Consts (pseudo ENUMs)
export const ESDJ_CLASS = {
DATA: "SdjData",
ENTITY: "SdjEntity",
DESCRIPTION: "SdjDescription",
ITEM: "SdjItem",
JSON: "SdJson",
HOST: "SdjHost"
};
// Note this list must correspond and match with the IntSdjTypes + SdjValidTypes found in validators.ts / lexicons.ts
// Defer to NOT changing these lists, if something is needed / missing -> ADD via custom lexicon validators
export const ESDJ_TYPE = {
KEY: "sdkey",
ID: "sdid",
NUM: "numb",
INT: "intg",
FLT: "flpt",
BOOL: "bool",
STR: "strd",
STRL: "strl",
STRS: "strs",
UTC: "date",
ARY_BOOL: "arybool",
ARY_NUM: "arynum",
ARY_STR_SH: "arystrs",
ART_STR_DF: "arystrd",
OBJ_STR: "objstr",
OBJ_BOOL: "objbool",
OBJ_NUM: "objnum",
INDEX: "sdindex"
};
export const ESDJ_LOG = {
PROD: "prod", // 0:0:0
DEV: "dev", // 5:5:0
LIB: "lib", // 5:3:20
RUN: "run", // 0:0:20
TEST: "test" // ?:?:?
};
export const ESDJ_LIMIT = {
NONE: "none",
REQ: "req", // Required Item or Entity
REQ_HIDE: "req_user_hide", // Required Item or Entity(multiple of Entity cannot be hidden), hide option
SYS_REQ: "sdj_sys", // Used only by sdKey, sdId // TODO: Check/confirm
KEY_IDX: "sdj_index", // Entity subChildren have maintained index, and named key
ONE_NONE: "one_none", // Entity, only one or none
REQ_ONE: "at_least_one", // Entity, require at least one
};
export const ESDJ_LIMIT_REQ = [
ESDJ_LIMIT.REQ,
ESDJ_LIMIT.SYS_REQ,
ESDJ_LIMIT.REQ_HIDE
];
// Fixed Static Const Values
export const DEF_DESC = "def_desc", DEF_JSON = "sdj_file.json", DEF_MAX_STR_LEN = 64, STR_LEN_LNG = 300, STR_LEN_SHRT = 32, DESC_UNLOCK = "_$ULID", DESC_ALT = "_ALT", SDJ_SCHEMA = ["http://willrudolph.com/schema/sdj-schema.json",
"../node_modules/sdj-esm/schema/sdj-schema.json",
"./node_modules/sdj-esm/schema/sdj-schema.json",
"../src/schema/sdj-schema.json",
"./src/schema/sdj-schema.json"], GRAPH_ID = "sdGraphZero", SD_IDX = "sdIndex", RESTRICT_WORDS = ["$id", "sdItems", SD_IDX, GRAPH_ID], DATAJI_WORDS = ["sdId", "sdKey", "sdChildren", "sdInfo"], SYS_RESERVED = [...RESTRICT_WORDS, ...DATAJI_WORDS], GRAPH_ZERO = {
sdId: 0,
sdKey: GRAPH_ID,
extendIds: [],
parentIds: [-1],
childIds: [],
sdItems: [],
limiter: ESDJ_LIMIT.SYS_REQ
}, BASE_ITEMS_JI = [
{
sdId: 0,
sdKey: "sdId",
limiter: ESDJ_LIMIT.SYS_REQ,
type: "sdid"
},
{
sdId: 1,
sdKey: "sdKey",
limiter: ESDJ_LIMIT.SYS_REQ,
type: "sdkey"
}
], MIN_NAME_CHAR = 3, MIN_INFO_DATE = 1693709655818, MAX_OBJ_ARY_LEN = 200;
//# sourceMappingURL=statics.js.map