fix: simplify UUID argument names, use hint for more info

This commit is contained in:
Bart van Andel 2025-04-05 22:51:59 +02:00
parent 2cf3642493
commit 575eade84d
2 changed files with 8 additions and 10 deletions

View file

@ -26,15 +26,15 @@ class GenerateUUID extends Operation {
this.outputType = "string";
this.args = [
{
name: "UUID Version",
name: "Version",
hint: "UUID version",
type: "option",
value: [
"v1", "v3", "v4", "v5", "v6", "v7",
]
value: ["v1", "v3", "v4", "v5", "v6", "v7"],
defaultIndex: 2,
},
{
name: "UUID namespace (valid for v3 and v5)",
name: "Namespace",
hint: "UUID namespace (UUID; valid for v3 and v5)",
type: "string",
value: "1b671a64-40d5-491e-99b0-da01ff1f3341"
}
@ -51,9 +51,7 @@ class GenerateUUID extends Operation {
const hasDesiredVersion = typeof uuid[version] === "function";
if (!hasDesiredVersion) throw new OperationError("Invalid UUID version");
const versionThatRequiresNamespace = ["v3", "v5"];
const requiresNamespace = versionThatRequiresNamespace.includes(version);
const requiresNamespace = ["v3", "v5"].includes(version);
if (!requiresNamespace) return uuid[version]();
const hasValidNamespace = typeof namespace === "string" && uuid.validate(namespace);

View file

@ -581,13 +581,13 @@ Password: 282760`;
}),
...[1, 3, 4, 5, 6, 7].map(version => it(`Generate UUID v${version}`, () => {
const result = chef.generateUUID("", { "UUID version": `v${version}` }).toString();
const result = chef.generateUUID("", { "version": `v${version}` }).toString();
assert.ok(result);
assert.strictEqual(result.length, 36);
})),
...[1, 3, 4, 5, 6, 7].map(version => it(`Analyze UUID v${version}`, () => {
const uuid = chef.generateUUID("", { "UUID version": `v${version}` }).toString();
const uuid = chef.generateUUID("", { "version": `v${version}` }).toString();
const result = chef.analyseUUID(uuid).toString();
const expected = `UUID version: ${version}`;
assert.strictEqual(result, expected);