@almadar/server 2.0.5 → 2.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +61 -11
- package/dist/index.js.map +1 -1
- package/dist/routes/observability.d.ts +11 -0
- package/dist/routes/observability.d.ts.map +1 -0
- package/dist/routes/observability.js.map +1 -1
- package/dist/services/MockDataService.d.ts +1 -1
- package/dist/services/MockDataService.d.ts.map +1 -1
- package/dist/services/index.js +61 -11
- package/dist/services/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -630,26 +630,76 @@ var MockDataService = class {
|
|
|
630
630
|
}
|
|
631
631
|
/**
|
|
632
632
|
* Generate a string value based on field name heuristics.
|
|
633
|
-
* Generic name/title fields use
|
|
633
|
+
* Generic name/title fields use a clean readable format (e.g., "Title 1").
|
|
634
634
|
* Specific fields (email, phone, etc.) use faker.
|
|
635
635
|
*/
|
|
636
|
-
generateStringValue(
|
|
636
|
+
generateStringValue(_entityName, field, index) {
|
|
637
637
|
const name = field.name.toLowerCase();
|
|
638
638
|
if (field.enumValues && field.enumValues.length > 0) {
|
|
639
639
|
return faker.helpers.arrayElement(field.enumValues);
|
|
640
640
|
}
|
|
641
641
|
if (name.includes("email")) return faker.internet.email();
|
|
642
|
-
if (name
|
|
643
|
-
if (name
|
|
642
|
+
if (name === "name" || name === "fullname" || name === "full_name") return faker.person.fullName();
|
|
643
|
+
if (name === "firstname" || name === "first_name") return faker.person.firstName();
|
|
644
|
+
if (name === "lastname" || name === "last_name") return faker.person.lastName();
|
|
645
|
+
if (name.includes("username") || name === "handle") return faker.internet.username();
|
|
646
|
+
if (name.includes("phone") || name.includes("mobile") || name.includes("tel")) return faker.phone.number();
|
|
647
|
+
if (name.includes("address") || name.includes("street")) return faker.location.streetAddress();
|
|
644
648
|
if (name.includes("city")) return faker.location.city();
|
|
649
|
+
if (name.includes("state") || name.includes("province")) return faker.location.state();
|
|
645
650
|
if (name.includes("country")) return faker.location.country();
|
|
646
|
-
if (name.includes("
|
|
647
|
-
if (name
|
|
648
|
-
if (name
|
|
649
|
-
if (name
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
651
|
+
if (name.includes("zip") || name.includes("postal")) return faker.location.zipCode();
|
|
652
|
+
if (name === "title" || name === "headline" || name === "subject") return faker.lorem.sentence({ min: 3, max: 7 }).replace(/\.$/, "");
|
|
653
|
+
if (name === "description" || name === "summary" || name === "bio" || name === "about") return faker.lorem.paragraph(2);
|
|
654
|
+
if (name === "content" || name === "body" || name === "text") return faker.lorem.paragraphs(2);
|
|
655
|
+
if (name === "excerpt" || name === "snippet" || name === "preview") return faker.lorem.sentence({ min: 8, max: 15 });
|
|
656
|
+
if (name === "label" || name === "tag" || name === "category") return faker.word.noun();
|
|
657
|
+
if (name === "note" || name === "comment" || name === "message" || name === "feedback") return faker.lorem.sentence();
|
|
658
|
+
if (name === "status") return faker.helpers.arrayElement(["active", "pending", "completed", "draft", "archived"]);
|
|
659
|
+
if (name === "priority") return faker.helpers.arrayElement(["low", "medium", "high", "critical"]);
|
|
660
|
+
if (name === "type" || name === "kind") return faker.helpers.arrayElement(["standard", "premium", "basic", "custom"]);
|
|
661
|
+
if (name === "role") return faker.helpers.arrayElement(["admin", "editor", "viewer", "member"]);
|
|
662
|
+
if (name === "level" || name === "tier") return faker.helpers.arrayElement(["beginner", "intermediate", "advanced", "expert"]);
|
|
663
|
+
if (name === "severity") return faker.helpers.arrayElement(["info", "warning", "error", "critical"]);
|
|
664
|
+
if (name === "difficulty") return faker.helpers.arrayElement(["easy", "medium", "hard"]);
|
|
665
|
+
if (name.includes("url") || name.includes("website") || name.includes("link")) return faker.internet.url();
|
|
666
|
+
if (name.includes("avatar") || name.includes("image") || name.includes("photo") || name.includes("thumbnail")) return faker.image.avatar();
|
|
667
|
+
if (name.includes("color") || name.includes("colour")) return faker.color.human();
|
|
668
|
+
if (name.includes("uuid") || name === "guid") return faker.string.uuid();
|
|
669
|
+
if (name.includes("icon")) return faker.helpers.arrayElement(["star", "heart", "check", "alert-circle", "info", "folder", "file", "user"]);
|
|
670
|
+
if (name === "slug") return faker.helpers.slugify(faker.lorem.words(3));
|
|
671
|
+
if (name === "company" || name === "organization" || name === "org") return faker.company.name();
|
|
672
|
+
if (name === "department") return faker.commerce.department();
|
|
673
|
+
if (name === "product" || name === "productname" || name === "product_name") return faker.commerce.productName();
|
|
674
|
+
if (name === "brand") return faker.company.name();
|
|
675
|
+
if (name === "sku" || name === "code") return faker.string.alphanumeric(8).toUpperCase();
|
|
676
|
+
if (name === "currency") return faker.finance.currencyCode();
|
|
677
|
+
if (name.includes("price") || name.includes("cost") || name.includes("amount")) return faker.commerce.price();
|
|
678
|
+
if (name === "latitude" || name === "lat") return String(faker.location.latitude());
|
|
679
|
+
if (name === "longitude" || name === "lng" || name === "lon") return String(faker.location.longitude());
|
|
680
|
+
if (name === "location" || name === "place" || name === "venue") return `${faker.location.city()}, ${faker.location.country()}`;
|
|
681
|
+
if (name === "region" || name === "zone" || name === "area") return faker.location.state();
|
|
682
|
+
if (name === "ip" || name.includes("ipaddress") || name === "ip_address") return faker.internet.ip();
|
|
683
|
+
if (name === "useragent" || name === "user_agent") return faker.internet.userAgent();
|
|
684
|
+
if (name === "version" || name === "firmware") return faker.system.semver();
|
|
685
|
+
if (name === "platform" || name === "os") return faker.helpers.arrayElement(["iOS", "Android", "Windows", "macOS", "Linux"]);
|
|
686
|
+
if (name === "browser") return faker.helpers.arrayElement(["Chrome", "Firefox", "Safari", "Edge"]);
|
|
687
|
+
if (name === "unit") return faker.helpers.arrayElement(["kg", "lb", "cm", "m", "L", "mL", "\xB0C", "\xB0F", "psi", "rpm"]);
|
|
688
|
+
if (name === "metric") return faker.helpers.arrayElement(["temperature", "pressure", "humidity", "speed", "voltage"]);
|
|
689
|
+
if (name === "operator") return faker.helpers.arrayElement(["gt", "lt", "eq", "gte", "lte"]);
|
|
690
|
+
if (name === "format" || name === "mimetype" || name === "mime_type") return faker.system.mimeType();
|
|
691
|
+
if (name === "extension" || name === "ext") return faker.system.fileExt();
|
|
692
|
+
if (name === "filename" || name === "file_name") return faker.system.fileName();
|
|
693
|
+
if (name.endsWith("id") || name.endsWith("_id")) return faker.string.alphanumeric(8).toUpperCase();
|
|
694
|
+
if (name.endsWith("name") || name.endsWith("_name")) return faker.person.fullName();
|
|
695
|
+
if (name.endsWith("type") || name.endsWith("_type")) return faker.helpers.arrayElement(["standard", "premium", "basic", "custom", "special"]);
|
|
696
|
+
if (name.endsWith("date") || name.endsWith("_date") || name.endsWith("at")) return faker.date.recent({ days: 90 }).toLocaleDateString("en-US", { year: "numeric", month: "short", day: "numeric" });
|
|
697
|
+
if (name.endsWith("count") || name.endsWith("_count")) return String(faker.number.int({ min: 1, max: 100 }));
|
|
698
|
+
if (name.includes("reason") || name.includes("detail")) return faker.lorem.sentence({ min: 4, max: 8 }).replace(/\.$/, "");
|
|
699
|
+
if (name.includes("field") || name.includes("key") || name.includes("attribute")) return faker.word.noun();
|
|
700
|
+
if (name.includes("value") || name.includes("result") || name.includes("output")) return faker.word.words({ count: { min: 1, max: 3 } });
|
|
701
|
+
if (name.includes("direction") || name.includes("position") || name.includes("mode")) return faker.helpers.arrayElement(["left", "right", "center", "top", "bottom", "auto"]);
|
|
702
|
+
return faker.word.words({ count: { min: 1, max: 3 } });
|
|
653
703
|
}
|
|
654
704
|
/**
|
|
655
705
|
* Capitalize first letter of a string.
|