UNPKG

@k8ts/metadata

Version:

K8ts tools for working with k8ts metadata.

22 lines 827 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.orderMetaKeyedObject = orderMetaKeyedObject; const doddle_1 = require("doddle"); const error_1 = require("../error"); function comparisonKey(key) { const bySlash = key.split("/"); if (bySlash.length === 1) { return key; } if (bySlash.length > 2) { throw new error_1.K8tsMetadataError(`Invalid composed key ${key}, too many '/' characters.`); } const [dns, name] = bySlash; const dnsParts = dns.split(".").reverse(); return [...dnsParts, name].join("\uffff"); } function orderMetaKeyedObject(input) { const entries = (0, doddle_1.seq)(Object.entries(input)).orderBy(([key]) => comparisonKey(key)); return Object.fromEntries(entries); } //# sourceMappingURL=order-meta-keyed-object.js.map