@mimasu/tdt 3.0.0-beta.1 → 3.0.4

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.
Files changed (185) hide show
  1. package/LICENSE.md +58 -0
  2. package/README.md +11 -0
  3. package/dist/index.d.ts +10 -1
  4. package/dist/index.js +5 -0
  5. package/dist/wasm/Microsoft.CSharp.wasm +0 -0
  6. package/dist/wasm/Microsoft.VisualBasic.Core.wasm +0 -0
  7. package/dist/wasm/Microsoft.VisualBasic.wasm +0 -0
  8. package/dist/wasm/Microsoft.Win32.Primitives.wasm +0 -0
  9. package/dist/wasm/Microsoft.Win32.Registry.wasm +0 -0
  10. package/dist/wasm/System.AppContext.wasm +0 -0
  11. package/dist/wasm/System.Buffers.wasm +0 -0
  12. package/dist/wasm/System.Collections.Concurrent.wasm +0 -0
  13. package/dist/wasm/System.Collections.Immutable.wasm +0 -0
  14. package/dist/wasm/System.Collections.NonGeneric.wasm +0 -0
  15. package/dist/wasm/System.Collections.Specialized.wasm +0 -0
  16. package/dist/wasm/System.Collections.wasm +0 -0
  17. package/dist/wasm/System.ComponentModel.Annotations.wasm +0 -0
  18. package/dist/wasm/System.ComponentModel.DataAnnotations.wasm +0 -0
  19. package/dist/wasm/System.ComponentModel.EventBasedAsync.wasm +0 -0
  20. package/dist/wasm/System.ComponentModel.Primitives.wasm +0 -0
  21. package/dist/wasm/System.ComponentModel.TypeConverter.wasm +0 -0
  22. package/dist/wasm/System.ComponentModel.wasm +0 -0
  23. package/dist/wasm/System.Configuration.wasm +0 -0
  24. package/dist/wasm/System.Console.wasm +0 -0
  25. package/dist/wasm/System.Core.wasm +0 -0
  26. package/dist/wasm/System.Data.Common.wasm +0 -0
  27. package/dist/wasm/System.Data.DataSetExtensions.wasm +0 -0
  28. package/dist/wasm/System.Data.wasm +0 -0
  29. package/dist/wasm/System.Diagnostics.Contracts.wasm +0 -0
  30. package/dist/wasm/System.Diagnostics.Debug.wasm +0 -0
  31. package/dist/wasm/System.Diagnostics.DiagnosticSource.wasm +0 -0
  32. package/dist/wasm/System.Diagnostics.FileVersionInfo.wasm +0 -0
  33. package/dist/wasm/System.Diagnostics.Process.wasm +0 -0
  34. package/dist/wasm/System.Diagnostics.StackTrace.wasm +0 -0
  35. package/dist/wasm/System.Diagnostics.TextWriterTraceListener.wasm +0 -0
  36. package/dist/wasm/System.Diagnostics.Tools.wasm +0 -0
  37. package/dist/wasm/System.Diagnostics.TraceSource.wasm +0 -0
  38. package/dist/wasm/System.Diagnostics.Tracing.wasm +0 -0
  39. package/dist/wasm/System.Drawing.Primitives.wasm +0 -0
  40. package/dist/wasm/System.Drawing.wasm +0 -0
  41. package/dist/wasm/System.Dynamic.Runtime.wasm +0 -0
  42. package/dist/wasm/System.Formats.Asn1.wasm +0 -0
  43. package/dist/wasm/System.Formats.Tar.wasm +0 -0
  44. package/dist/wasm/System.Globalization.Calendars.wasm +0 -0
  45. package/dist/wasm/System.Globalization.Extensions.wasm +0 -0
  46. package/dist/wasm/System.Globalization.wasm +0 -0
  47. package/dist/wasm/System.IO.Compression.Brotli.wasm +0 -0
  48. package/dist/wasm/System.IO.Compression.FileSystem.wasm +0 -0
  49. package/dist/wasm/System.IO.Compression.ZipFile.wasm +0 -0
  50. package/dist/wasm/System.IO.Compression.wasm +0 -0
  51. package/dist/wasm/System.IO.FileSystem.AccessControl.wasm +0 -0
  52. package/dist/wasm/System.IO.FileSystem.DriveInfo.wasm +0 -0
  53. package/dist/wasm/System.IO.FileSystem.Primitives.wasm +0 -0
  54. package/dist/wasm/System.IO.FileSystem.Watcher.wasm +0 -0
  55. package/dist/wasm/System.IO.FileSystem.wasm +0 -0
  56. package/dist/wasm/System.IO.IsolatedStorage.wasm +0 -0
  57. package/dist/wasm/System.IO.MemoryMappedFiles.wasm +0 -0
  58. package/dist/wasm/System.IO.Pipelines.wasm +0 -0
  59. package/dist/wasm/System.IO.Pipes.AccessControl.wasm +0 -0
  60. package/dist/wasm/System.IO.Pipes.wasm +0 -0
  61. package/dist/wasm/System.IO.UnmanagedMemoryStream.wasm +0 -0
  62. package/dist/wasm/System.IO.wasm +0 -0
  63. package/dist/wasm/System.Linq.AsyncEnumerable.wasm +0 -0
  64. package/dist/wasm/System.Linq.Expressions.wasm +0 -0
  65. package/dist/wasm/System.Linq.Parallel.wasm +0 -0
  66. package/dist/wasm/System.Linq.Queryable.wasm +0 -0
  67. package/dist/wasm/System.Linq.wasm +0 -0
  68. package/dist/wasm/System.Memory.wasm +0 -0
  69. package/dist/wasm/System.Net.Http.Json.wasm +0 -0
  70. package/dist/wasm/System.Net.Http.wasm +0 -0
  71. package/dist/wasm/System.Net.HttpListener.wasm +0 -0
  72. package/dist/wasm/System.Net.Mail.wasm +0 -0
  73. package/dist/wasm/System.Net.NameResolution.wasm +0 -0
  74. package/dist/wasm/System.Net.NetworkInformation.wasm +0 -0
  75. package/dist/wasm/System.Net.Ping.wasm +0 -0
  76. package/dist/wasm/System.Net.Primitives.wasm +0 -0
  77. package/dist/wasm/System.Net.Quic.wasm +0 -0
  78. package/dist/wasm/System.Net.Requests.wasm +0 -0
  79. package/dist/wasm/System.Net.Security.wasm +0 -0
  80. package/dist/wasm/System.Net.ServerSentEvents.wasm +0 -0
  81. package/dist/wasm/System.Net.ServicePoint.wasm +0 -0
  82. package/dist/wasm/System.Net.Sockets.wasm +0 -0
  83. package/dist/wasm/System.Net.WebClient.wasm +0 -0
  84. package/dist/wasm/System.Net.WebHeaderCollection.wasm +0 -0
  85. package/dist/wasm/System.Net.WebProxy.wasm +0 -0
  86. package/dist/wasm/System.Net.WebSockets.Client.wasm +0 -0
  87. package/dist/wasm/System.Net.WebSockets.wasm +0 -0
  88. package/dist/wasm/System.Net.wasm +0 -0
  89. package/dist/wasm/System.Numerics.Vectors.wasm +0 -0
  90. package/dist/wasm/System.Numerics.wasm +0 -0
  91. package/dist/wasm/System.ObjectModel.wasm +0 -0
  92. package/dist/wasm/System.Private.CoreLib.wasm +0 -0
  93. package/dist/wasm/System.Private.DataContractSerialization.wasm +0 -0
  94. package/dist/wasm/System.Private.Uri.wasm +0 -0
  95. package/dist/wasm/System.Private.Xml.Linq.wasm +0 -0
  96. package/dist/wasm/System.Private.Xml.wasm +0 -0
  97. package/dist/wasm/System.Reflection.DispatchProxy.wasm +0 -0
  98. package/dist/wasm/System.Reflection.Emit.ILGeneration.wasm +0 -0
  99. package/dist/wasm/System.Reflection.Emit.Lightweight.wasm +0 -0
  100. package/dist/wasm/System.Reflection.Emit.wasm +0 -0
  101. package/dist/wasm/System.Reflection.Extensions.wasm +0 -0
  102. package/dist/wasm/System.Reflection.Metadata.wasm +0 -0
  103. package/dist/wasm/System.Reflection.Primitives.wasm +0 -0
  104. package/dist/wasm/System.Reflection.TypeExtensions.wasm +0 -0
  105. package/dist/wasm/System.Reflection.wasm +0 -0
  106. package/dist/wasm/System.Resources.Reader.wasm +0 -0
  107. package/dist/wasm/System.Resources.ResourceManager.wasm +0 -0
  108. package/dist/wasm/System.Resources.Writer.wasm +0 -0
  109. package/dist/wasm/System.Runtime.CompilerServices.Unsafe.wasm +0 -0
  110. package/dist/wasm/System.Runtime.CompilerServices.VisualC.wasm +0 -0
  111. package/dist/wasm/System.Runtime.Extensions.wasm +0 -0
  112. package/dist/wasm/System.Runtime.Handles.wasm +0 -0
  113. package/dist/wasm/System.Runtime.InteropServices.JavaScript.wasm +0 -0
  114. package/dist/wasm/System.Runtime.InteropServices.RuntimeInformation.wasm +0 -0
  115. package/dist/wasm/System.Runtime.InteropServices.wasm +0 -0
  116. package/dist/wasm/System.Runtime.Intrinsics.wasm +0 -0
  117. package/dist/wasm/System.Runtime.Loader.wasm +0 -0
  118. package/dist/wasm/System.Runtime.Numerics.wasm +0 -0
  119. package/dist/wasm/System.Runtime.Serialization.Formatters.wasm +0 -0
  120. package/dist/wasm/System.Runtime.Serialization.Json.wasm +0 -0
  121. package/dist/wasm/System.Runtime.Serialization.Primitives.wasm +0 -0
  122. package/dist/wasm/System.Runtime.Serialization.Xml.wasm +0 -0
  123. package/dist/wasm/System.Runtime.Serialization.wasm +0 -0
  124. package/dist/wasm/System.Runtime.wasm +0 -0
  125. package/dist/wasm/System.Security.AccessControl.wasm +0 -0
  126. package/dist/wasm/System.Security.Claims.wasm +0 -0
  127. package/dist/wasm/System.Security.Cryptography.Algorithms.wasm +0 -0
  128. package/dist/wasm/System.Security.Cryptography.Cng.wasm +0 -0
  129. package/dist/wasm/System.Security.Cryptography.Csp.wasm +0 -0
  130. package/dist/wasm/System.Security.Cryptography.Encoding.wasm +0 -0
  131. package/dist/wasm/System.Security.Cryptography.OpenSsl.wasm +0 -0
  132. package/dist/wasm/System.Security.Cryptography.Primitives.wasm +0 -0
  133. package/dist/wasm/System.Security.Cryptography.X509Certificates.wasm +0 -0
  134. package/dist/wasm/System.Security.Cryptography.wasm +0 -0
  135. package/dist/wasm/System.Security.Principal.Windows.wasm +0 -0
  136. package/dist/wasm/System.Security.Principal.wasm +0 -0
  137. package/dist/wasm/System.Security.SecureString.wasm +0 -0
  138. package/dist/wasm/System.Security.wasm +0 -0
  139. package/dist/wasm/System.ServiceModel.Web.wasm +0 -0
  140. package/dist/wasm/System.ServiceProcess.wasm +0 -0
  141. package/dist/wasm/System.Text.Encoding.CodePages.wasm +0 -0
  142. package/dist/wasm/System.Text.Encoding.Extensions.wasm +0 -0
  143. package/dist/wasm/System.Text.Encoding.wasm +0 -0
  144. package/dist/wasm/System.Text.Encodings.Web.wasm +0 -0
  145. package/dist/wasm/System.Text.Json.wasm +0 -0
  146. package/dist/wasm/System.Text.RegularExpressions.wasm +0 -0
  147. package/dist/wasm/System.Threading.AccessControl.wasm +0 -0
  148. package/dist/wasm/System.Threading.Channels.wasm +0 -0
  149. package/dist/wasm/System.Threading.Overlapped.wasm +0 -0
  150. package/dist/wasm/System.Threading.Tasks.Dataflow.wasm +0 -0
  151. package/dist/wasm/System.Threading.Tasks.Extensions.wasm +0 -0
  152. package/dist/wasm/System.Threading.Tasks.Parallel.wasm +0 -0
  153. package/dist/wasm/System.Threading.Tasks.wasm +0 -0
  154. package/dist/wasm/System.Threading.Thread.wasm +0 -0
  155. package/dist/wasm/System.Threading.ThreadPool.wasm +0 -0
  156. package/dist/wasm/System.Threading.Timer.wasm +0 -0
  157. package/dist/wasm/System.Threading.wasm +0 -0
  158. package/dist/wasm/System.Transactions.Local.wasm +0 -0
  159. package/dist/wasm/System.Transactions.wasm +0 -0
  160. package/dist/wasm/System.ValueTuple.wasm +0 -0
  161. package/dist/wasm/System.Web.HttpUtility.wasm +0 -0
  162. package/dist/wasm/System.Web.wasm +0 -0
  163. package/dist/wasm/System.Windows.wasm +0 -0
  164. package/dist/wasm/System.Xml.Linq.wasm +0 -0
  165. package/dist/wasm/System.Xml.ReaderWriter.wasm +0 -0
  166. package/dist/wasm/System.Xml.Serialization.wasm +0 -0
  167. package/dist/wasm/System.Xml.XDocument.wasm +0 -0
  168. package/dist/wasm/System.Xml.XPath.XDocument.wasm +0 -0
  169. package/dist/wasm/System.Xml.XPath.wasm +0 -0
  170. package/dist/wasm/System.Xml.XmlDocument.wasm +0 -0
  171. package/dist/wasm/System.Xml.XmlSerializer.wasm +0 -0
  172. package/dist/wasm/System.Xml.wasm +0 -0
  173. package/dist/wasm/System.wasm +0 -0
  174. package/dist/wasm/TagDataTranslation.Wasm.wasm +0 -0
  175. package/dist/wasm/TagDataTranslation.wasm +0 -0
  176. package/dist/wasm/WindowsBase.wasm +0 -0
  177. package/dist/wasm/dotnet.boot.js +753 -47
  178. package/dist/wasm/dotnet.native.js +1168 -4
  179. package/dist/wasm/dotnet.native.js.symbols +12704 -5430
  180. package/dist/wasm/dotnet.native.wasm +0 -0
  181. package/dist/wasm/mscorlib.wasm +0 -0
  182. package/dist/wasm/netstandard.wasm +0 -0
  183. package/package.json +11 -4
  184. package/dist/wasm/dotnet.js.map +0 -1
  185. package/dist/wasm/dotnet.runtime.js.map +0 -1
package/LICENSE.md ADDED
@@ -0,0 +1,58 @@
1
+ # TagDataTranslation -- Licensing
2
+
3
+ TagDataTranslation is licensed under the **Business Source License 1.1** (BSL 1.1).
4
+
5
+ ## What This Means
6
+
7
+ The BSL 1.1 allows you to freely copy, modify, create derivative works, redistribute, and make **non-production use** of the library. Production use requires a commercial license.
8
+
9
+ This is the same licensing model used by HashiCorp (Terraform), MariaDB, Sentry, and CockroachDB.
10
+
11
+ ## Non-Production Use (Free)
12
+
13
+ You may use TagDataTranslation without a commercial license for:
14
+
15
+ - Development and testing
16
+ - Evaluation and proof-of-concept
17
+ - Academic and educational purposes
18
+ - Personal non-commercial projects
19
+ - Contributing to the project
20
+
21
+ ## Production Use (Commercial License Required)
22
+
23
+ Any production deployment requires a commercial license. This includes:
24
+
25
+ - Production internal tools and services
26
+ - Products sold to customers
27
+ - Production mobile apps (Android, iOS, MAUI)
28
+ - Production APIs and network services
29
+
30
+ See `TagDataTranslation/Licenses/COMMERCIAL-LICENSE.md` for details, or contact:
31
+
32
+ - **Email:** tdt@mimasu.nl
33
+ - **Web:** https://www.mimasu.nl
34
+
35
+ ## Change Date
36
+
37
+ Each version of the Licensed Work automatically converts to **Apache License 2.0** four years after its initial publication. At that point, all production-use restrictions are removed for that version.
38
+
39
+ ## GS1 Artifacts
40
+
41
+ The included JSON scheme definitions and XSD artifacts are (c) GS1 and are subject to GS1's terms of use. See https://www.gs1.org/standards/epc-rfid/tdt.
42
+
43
+ ## FAQ
44
+
45
+ **Q: Can I use TagDataTranslation in a commercial product?**
46
+ Yes, with a commercial license. Contact tdt@mimasu.nl.
47
+
48
+ **Q: Can I use it for testing and development?**
49
+ Yes, non-production use is free under BSL 1.1.
50
+
51
+ **Q: What about internal production tools?**
52
+ Internal production use also requires a commercial license.
53
+
54
+ **Q: When does it become fully open source?**
55
+ Each version converts to Apache 2.0 four years after its release date.
56
+
57
+ **Q: Can I fork the code?**
58
+ Yes, you can copy and modify the code. The BSL 1.1 terms apply to your derivative work as well -- non-production use is free, production use requires a commercial license (until the Change Date).
package/README.md CHANGED
@@ -50,6 +50,17 @@ Convert hexadecimal to binary string.
50
50
 
51
51
  Convert binary string to hexadecimal.
52
52
 
53
+ ## Performance
54
+
55
+ The underlying .NET engine translates a typical SGTIN-96 in ~8 us. Hex/binary conversion completes in under 100 ns. The WASM bridge adds minimal overhead on top of the native .NET performance.
56
+
57
+ | Operation | .NET native |
58
+ |-----------|-------------|
59
+ | SGTIN-96 encode | 7.8 us |
60
+ | SGTIN-96 decode | 7.7 us |
61
+ | HexToBinary (96-bit) | 99 ns |
62
+ | BinaryToHex (96-bit) | 54 ns |
63
+
53
64
  ## License
54
65
 
55
66
  Business Source License 1.1. Production use requires a commercial license -- contact tdt@mimasu.nl.
package/dist/index.d.ts CHANGED
@@ -19,13 +19,22 @@ export interface TDTEngine {
19
19
  */
20
20
  tryTranslate(epcIdentifier: string, parameterList: string, outputFormat: string): string | null;
21
21
 
22
+ /**
23
+ * Translate an EPC identifier and return detailed results including all decoded fields.
24
+ * @returns JSON object with output string and fields dictionary, or null if translation failed
25
+ */
26
+ translateDetails(epcIdentifier: string, parameterList: string, outputFormat: string): { output: string; fields: Record<string, string> } | null;
27
+
22
28
  /** Convert hexadecimal string to binary string */
23
29
  hexToBinary(hex: string): string;
24
30
 
25
31
  /** Convert binary string to hexadecimal string */
26
32
  binaryToHex(binary: string): string;
27
33
 
28
- /** Get any errors encountered while loading scheme files */
34
+ /**
35
+ * Get any errors encountered while loading scheme files.
36
+ * Returns a newline-delimited string of error messages, or "" if none.
37
+ */
29
38
  getLoadErrors(): string;
30
39
  }
31
40
 
package/dist/index.js CHANGED
@@ -37,6 +37,11 @@ async function createEngine() {
37
37
  tryTranslate: (epcIdentifier, parameterList, outputFormat) =>
38
38
  interop.TryTranslate(epcIdentifier, parameterList, outputFormat),
39
39
 
40
+ translateDetails: (epcIdentifier, parameterList, outputFormat) => {
41
+ const json = interop.TranslateDetails(epcIdentifier, parameterList, outputFormat);
42
+ return json ? JSON.parse(json) : null;
43
+ },
44
+
40
45
  hexToBinary: (hex) => interop.HexToBinary(hex),
41
46
 
42
47
  binaryToHex: (binary) => interop.BinaryToHex(binary),
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file