diff --git a/src/DevToys.Tools/Helpers/UuidHelper.cs b/src/DevToys.Tools/Helpers/UuidHelper.cs
index c7c4523df6..0afb1b2eb0 100644
--- a/src/DevToys.Tools/Helpers/UuidHelper.cs
+++ b/src/DevToys.Tools/Helpers/UuidHelper.cs
@@ -1,4 +1,5 @@
using System.Security.Cryptography;
+using System.Text;
using DevToys.Tools.Models;
namespace DevToys.Tools.Helpers;
@@ -12,7 +13,8 @@ private enum GuidVersion
Random = 0x04,
NameBasedV5 = 0x05,
UuidV6 = 0x06,
- UnixEpoch = 0x07
+ UnixEpoch = 0x07,
+ UuidObjectId = 0x08
}
private static readonly Random random = new();
@@ -30,6 +32,9 @@ private enum GuidVersion
private const byte TimestampByte = 0;
private const byte NodeByte = 10;
private const byte GuidClockSequenceByte = 8;
+ private static readonly object incrementLock = new();
+ private static int increment = new Random().Next();
+ private static readonly byte[] ProcessUnique = GenerateProcessUnique();
internal static string GenerateUuid(UuidVersion version, bool hyphens, bool uppercase)
{
@@ -44,17 +49,20 @@ internal static string GenerateUuid(UuidVersion version, bool hyphens, bool uppe
}
string? uuid;
- if (version == UuidVersion.One)
+ switch (version)
{
- uuid = GenerateTimeBasedGuid().ToString(guidStringFormat);
- }
- else if (version == UuidVersion.Seven)
- {
- uuid = GenerateUUIDv7().ToString(guidStringFormat);
- }
- else
- {
- uuid = Guid.NewGuid().ToString(guidStringFormat);
+ case UuidVersion.One:
+ uuid = GenerateTimeBasedGuid().ToString(guidStringFormat);
+ break;
+ case UuidVersion.Seven:
+ uuid = GenerateUUIDv7().ToString(guidStringFormat);
+ break;
+ case UuidVersion.ObjectId:
+ uuid = GenerateUuidObjectId();
+ break;
+ default:
+ uuid = Guid.NewGuid().ToString(guidStringFormat);
+ break;
}
if (uppercase)
@@ -158,4 +166,68 @@ public static byte[] GenerateClockSequenceBytes(DateTime dt)
return [bytes[0], bytes[1]];
}
+
+ ///
+ /// Generate a Mongodb ObjectID
+ ///
+ ///
+ private static string GenerateUuidObjectId()
+ {
+ int time = (int)DateTimeOffset.UtcNow.ToUnixTimeSeconds();
+ int inc = GetIncrement();
+ byte[] buffer = new byte[12];
+
+ // 4-byte timestamp
+ buffer[0] = (byte)(time >> 24);
+ buffer[1] = (byte)(time >> 16);
+ buffer[2] = (byte)(time >> 8);
+ buffer[3] = (byte)time;
+
+ // 5-byte process unique
+ Buffer.BlockCopy(ProcessUnique, 0, buffer, 4, 5);
+
+ // 3-byte counter
+ buffer[9] = (byte)(inc >> 16);
+ buffer[10] = (byte)(inc >> 8);
+ buffer[11] = (byte)inc;
+ return ByteArrayToHexString(buffer);
+ }
+
+ ///
+ /// Retrieves and increments the internal counter in a thread-safe manner.
+ ///
+ /// Returns the current value of the counter
+ private static int GetIncrement()
+ {
+ lock (incrementLock)
+ {
+ return increment++;
+ }
+ }
+
+ ///
+ /// Generates a unique identifier specific to the current process.
+ ///
+ /// Returns a byte array containing the unique identifier for the process.
+ private static byte[] GenerateProcessUnique()
+ {
+ byte[] processUnique = new byte[5];
+ cRandom.GetBytes(processUnique);
+ return processUnique;
+ }
+
+ ///
+ /// Converts a byte array to its hexadecimal string representation.
+ ///
+ /// The byte array to be converted to a hexadecimal string.
+ /// Returns a string containing the hexadecimal representation of the byte array.
+ private static string ByteArrayToHexString(byte[] bytes)
+ {
+ var sb = new StringBuilder(bytes.Length * 2);
+ foreach (byte b in bytes)
+ {
+ sb.Append(b.ToString("x2"));
+ }
+ return sb.ToString();
+ }
}
diff --git a/src/DevToys.Tools/Models/UuidVersion.cs b/src/DevToys.Tools/Models/UuidVersion.cs
index 27a328c751..408126a34d 100644
--- a/src/DevToys.Tools/Models/UuidVersion.cs
+++ b/src/DevToys.Tools/Models/UuidVersion.cs
@@ -4,5 +4,6 @@ internal enum UuidVersion
{
One,
Four,
- Seven
+ Seven,
+ ObjectId
}
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.Designer.cs b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.Designer.cs
index 3ccc972360..5245e60611 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.Designer.cs
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.Designer.cs
@@ -223,6 +223,17 @@ internal static string UuidVersionSeven
}
}
+ ///
+ /// Looks up a localized string for UuidObjectId
+ ///
+ internal static string UuidObjectId
+ {
+ get
+ {
+ return ResourceManager.GetString("UuidObjectId", resourceCulture);
+ }
+ }
+
///
/// Looks up a localized string similar to Choose the version of UUID to generate.
///
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.af-ZA.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.af-ZA.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.af-ZA.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.af-ZA.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ar-SA.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ar-SA.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ar-SA.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ar-SA.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.be-BY.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.be-BY.resx
index 89f06ff1d4..b243605b6a 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.be-BY.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.be-BY.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.bn-BD.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.bn-BD.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.bn-BD.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.bn-BD.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ca-ES.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ca-ES.resx
index efa31855cb..dc686c9980 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ca-ES.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ca-ES.resx
@@ -177,4 +177,7 @@
Actualitza
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.cs-CZ.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.cs-CZ.resx
index 21bde31562..ce20cbd07f 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.cs-CZ.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.cs-CZ.resx
@@ -177,4 +177,7 @@
Obnovit
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.da-DK.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.da-DK.resx
index cdcc1e2564..d53357576f 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.da-DK.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.da-DK.resx
@@ -177,4 +177,7 @@
Opdatér
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.de-DE.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.de-DE.resx
index adb73f31e4..5fa00e74b9 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.de-DE.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.de-DE.resx
@@ -177,4 +177,7 @@
Aktualisieren
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.el-GR.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.el-GR.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.el-GR.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.el-GR.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.en-GB.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.en-GB.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.en-GB.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.en-GB.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.es-AR.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.es-AR.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.es-AR.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.es-AR.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.es-ES.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.es-ES.resx
index a840638712..e4ba61fe0b 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.es-ES.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.es-ES.resx
@@ -177,4 +177,7 @@
Actualizar
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.fa-IR.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.fa-IR.resx
index 89f06ff1d4..b243605b6a 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.fa-IR.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.fa-IR.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.fi-FI.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.fi-FI.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.fi-FI.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.fi-FI.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.fr-FR.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.fr-FR.resx
index 9b311265e2..42a9e11002 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.fr-FR.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.fr-FR.resx
@@ -177,4 +177,7 @@
Rafraîchir
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.he-IL.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.he-IL.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.he-IL.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.he-IL.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.hi-IN.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.hi-IN.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.hi-IN.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.hi-IN.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.hu-HU.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.hu-HU.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.hu-HU.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.hu-HU.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.id-ID.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.id-ID.resx
index 1e32a299d0..385e2cf60b 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.id-ID.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.id-ID.resx
@@ -177,4 +177,7 @@
Perbarui
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.is-IS.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.is-IS.resx
index 89f06ff1d4..b243605b6a 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.is-IS.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.is-IS.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.it-IT.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.it-IT.resx
index ec3edf32af..bb79d35c29 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.it-IT.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.it-IT.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ja-JP.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ja-JP.resx
index 343aa67faf..6f96ffb75e 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ja-JP.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ja-JP.resx
@@ -177,4 +177,7 @@
再生成
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ka-GE.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ka-GE.resx
index 89f06ff1d4..b243605b6a 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ka-GE.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ka-GE.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.kn-IN.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.kn-IN.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.kn-IN.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.kn-IN.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ko-KR.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ko-KR.resx
index be9f7e930b..710ae3f095 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ko-KR.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ko-KR.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.kw-GB.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.kw-GB.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.kw-GB.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.kw-GB.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.nb.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.nb.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.nb.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.nb.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.nl-NL.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.nl-NL.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.nl-NL.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.nl-NL.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.pl-PL.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.pl-PL.resx
index 1ca47fa2e0..62a132d2d8 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.pl-PL.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.pl-PL.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.pt-BR.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.pt-BR.resx
index 3dfaf3f167..65c274bc93 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.pt-BR.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.pt-BR.resx
@@ -177,4 +177,7 @@
Atualizar
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.pt-PT.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.pt-PT.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.pt-PT.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.pt-PT.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.resx
index 89f06ff1d4..b243605b6a 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ro-RO.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ro-RO.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ro-RO.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ro-RO.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ru-RU.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ru-RU.resx
index 59b88795ca..93ce0f87de 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ru-RU.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ru-RU.resx
@@ -177,4 +177,7 @@
Обновить
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.sv-SE.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.sv-SE.resx
index 3573544afe..346944ccc5 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.sv-SE.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.sv-SE.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ta-IN.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ta-IN.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ta-IN.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.ta-IN.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.te-IN.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.te-IN.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.te-IN.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.te-IN.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.tr-TR.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.tr-TR.resx
index 3d67e51e4e..3ed596d3f0 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.tr-TR.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.tr-TR.resx
@@ -177,4 +177,7 @@
Yenile
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.uk-UA.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.uk-UA.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.uk-UA.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.uk-UA.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.vi-VN.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.vi-VN.resx
index f35e7a82c3..c2ed830b47 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.vi-VN.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.vi-VN.resx
@@ -177,4 +177,7 @@
Refresh
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.zh-Hans.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.zh-Hans.resx
index 5ec2f2ead0..e604ead559 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.zh-Hans.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.zh-Hans.resx
@@ -177,4 +177,7 @@
刷新
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.zh-Hant.resx b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.zh-Hant.resx
index 8d7d620695..5ca641ccd0 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.zh-Hant.resx
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGenerator.zh-Hant.resx
@@ -177,4 +177,7 @@
重新整理
+
+ ObjectId (MongoDB)
+
\ No newline at end of file
diff --git a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGeneratorGuidTool.cs b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGeneratorGuidTool.cs
index 953a42e66d..29878c0d2f 100644
--- a/src/DevToys.Tools/Tools/Generators/UUID/UUIDGeneratorGuidTool.cs
+++ b/src/DevToys.Tools/Tools/Generators/UUID/UUIDGeneratorGuidTool.cs
@@ -126,7 +126,8 @@ public UIToolView View
OnSettingChanged,
Item(UUIDGenerator.UuidVersionOne, UuidVersion.One),
Item(UUIDGenerator.UuidVersionFour, UuidVersion.Four),
- Item(UUIDGenerator.UuidVersionSeven, UuidVersion.Seven)),
+ Item(UUIDGenerator.UuidVersionSeven, UuidVersion.Seven),
+ Item(UUIDGenerator.UuidObjectId, UuidVersion.ObjectId)),
Setting()
.Icon("FluentSystemIcons", '\uF57D')