chore: import upstream snapshot with attribution

This commit is contained in:
wehub-resource-sync
2026-07-13 13:13:17 +08:00
commit 58ab8315aa
8961 changed files with 5602567 additions and 0 deletions
@@ -0,0 +1,54 @@
using System.Globalization;
namespace Lib.@string.datetime;
[Guid("e4a38f3c-bd4c-406a-9979-bb683d79b39b")]
internal sealed class CountDown : Instance<CountDown>
{
[Output(Guid = "511af1e0-9ada-46a2-8c14-0e18db506f95", DirtyFlagTrigger = DirtyFlagTrigger.Animated)]
public readonly Slot<string> Output = new();
public CountDown()
{
Output.UpdateAction += Update;
}
private void Update(EvaluationContext context)
{
var now = DateTime.Now;
try
{
var targetTime = DateTime.Today;
var launchTime = LaunchTime.GetValue(context);
if(DateTime.TryParse(launchTime, out var d))
{
targetTime = d;
//Log.Debug("date:" + d);
}
else
{
Log.Warning($"invalid format for lauchTime '{launchTime}'", this);
}
//var v = Duration.GetValue(context);
var duration = DateTime.Now - targetTime;
var format = Format.GetValue(context);
var outString = duration.ToString(format, CultureInfo.InvariantCulture);
Output.Value = outString;
}
catch (FormatException)
{
//Log.Warning("Failed to format CountDown time: " + e.Message, this);
Output.Value = "Invalid Format";
return;
}
}
[Input(Guid = "61E5281B-B772-4BBD-B52F-E6B6310D259A")]
public readonly InputSlot<string> LaunchTime = new();
[Input(Guid = "d404e744-fa84-4bc8-8aa3-e6e972d9a5a7")]
public readonly InputSlot<string> Format = new();
}
@@ -0,0 +1,16 @@
{
"FormatVersion": 3,
"Id": "e4a38f3c-bd4c-406a-9979-bb683d79b39b"/*CountDown*/,
"Inputs": [
{
"Id": "61e5281b-b772-4bbd-b52f-e6b6310d259a"/*LaunchTime*/,
"DefaultValue": "2021-04-17 17:00"
},
{
"Id": "d404e744-fa84-4bc8-8aa3-e6e972d9a5a7"/*Format*/,
"DefaultValue": "hh\\:mm\\:ss\\:ff"
}
],
"Children": [],
"Connections": []
}
@@ -0,0 +1,34 @@
{
"FormatVersion": 3,
"Id": "e4a38f3c-bd4c-406a-9979-bb683d79b39b"/*CountDown*/,
"Description": "Prints a formatted string counting down a duration or time to/since a fixed date.",
"SymbolTags": "192",
"InputUis": [
{
"InputId": "61e5281b-b772-4bbd-b52f-e6b6310d259a"/*LaunchTime*/,
"Position": {
"X": -200.0,
"Y": 0.0
},
"Usage": "Default"
},
{
"InputId": "d404e744-fa84-4bc8-8aa3-e6e972d9a5a7"/*Format*/,
"Position": {
"X": 0.0,
"Y": 0.0
},
"Usage": "Default"
}
],
"SymbolChildUis": [],
"OutputUis": [
{
"OutputId": "511af1e0-9ada-46a2-8c14-0e18db506f95"/*Output*/,
"Position": {
"X": 0.0,
"Y": 0.0
}
}
]
}
@@ -0,0 +1,51 @@
using T3.Core.Utils;
namespace Lib.@string.datetime;
[Guid("10acf0aa-2cb3-446b-b837-b6abe24d44da")]
internal sealed class DateTimeToFloat : Instance<DateTimeToFloat>
{
[Output(Guid = "E07DC943-B32B-4037-9E84-0E50B4B67D05")]
public readonly Slot<float> Output = new ();
public DateTimeToFloat()
{
Output.UpdateAction += Update;
}
private void Update(EvaluationContext context)
{
var dateTime = Value.GetValue(context);
var offset = HourOffset.GetValue(context);
var offsetSpan = new TimeSpan(0, (int)offset, (int)(offset*60 % 60), (int)(offset*60*60 % 60));
dateTime -= offsetSpan;
var value = OutputMapping.GetEnumValue<Modes>(context) switch
{
Modes.TimeOfDay_Hours => (float)(dateTime.TimeOfDay.TotalMilliseconds / (double)(60 * 60 * 1000)),
Modes.TimeOfDay_Normalized => (float)(dateTime.TimeOfDay.TotalMilliseconds / (double)(24 * 60 * 60 * 1000)),
Modes.DayOfTheYear => dateTime.DayOfYear,
Modes.DayOfTheMonths => dateTime.Day,
_ => 0f
};
Output.Value = value;
}
[Input(Guid = "7b432357-225c-499e-9109-61168b4be4a7")]
public readonly InputSlot<DateTime> Value = new();
[Input(Guid = "5D9065A3-A124-4261-B5A9-25D969E30F73", MappedType = typeof(Modes))]
public readonly InputSlot<int> OutputMapping = new();
[Input(Guid = "EC1A2E0C-4C65-45E8-BFAC-FAE10CF3A717")]
public readonly InputSlot<float> HourOffset = new();
private enum Modes
{
TimeOfDay_Hours,
TimeOfDay_Normalized,
DayOfTheYear,
DayOfTheMonths,
}
}
@@ -0,0 +1,20 @@
{
"FormatVersion": 3,
"Id": "10acf0aa-2cb3-446b-b837-b6abe24d44da"/*DateTimeToFloat*/,
"Inputs": [
{
"Id": "5d9065a3-a124-4261-b5a9-25d969e30f73"/*OutputMapping*/,
"DefaultValue": 0
},
{
"Id": "7b432357-225c-499e-9109-61168b4be4a7"/*Value*/,
"DefaultValue": null
},
{
"Id": "ec1a2e0c-4c65-45e8-bfac-fae10cf3a717"/*HourOffset*/,
"DefaultValue": 0.0
}
],
"Children": [],
"Connections": []
}
@@ -0,0 +1,40 @@
{
"FormatVersion": 3,
"Id": "10acf0aa-2cb3-446b-b837-b6abe24d44da"/*DateTimeToFloat*/,
"Description": "Converts a DateTime into different float values like normalized time of day (between 0 ... 1), day of the year, etc.",
"SymbolTags": "8",
"InputUis": [
{
"InputId": "5d9065a3-a124-4261-b5a9-25d969e30f73"/*OutputMapping*/,
"Position": {
"X": -200.0,
"Y": 45.0
}
},
{
"InputId": "7b432357-225c-499e-9109-61168b4be4a7"/*Value*/,
"Relevancy": "Required",
"Position": {
"X": -200.0,
"Y": 0.0
}
},
{
"InputId": "ec1a2e0c-4c65-45e8-bfac-fae10cf3a717"/*HourOffset*/,
"Position": {
"X": -200.0,
"Y": 90.0
}
}
],
"SymbolChildUis": [],
"OutputUis": [
{
"OutputId": "e07dc943-b32b-4037-9e84-0e50b4b67d05"/*Output*/,
"Position": {
"X": 0.0,
"Y": 100.0
}
}
]
}
@@ -0,0 +1,37 @@
using System.Globalization;
namespace Lib.@string.datetime;
[Guid("c1c3725a-0745-4ce1-874b-839810c2124c")]
internal sealed class DateTimeToString : Instance<DateTimeToString>
{
[Output(Guid = "75ad6b31-2460-47fb-aa75-019e50e0fd44")]
public readonly Slot<string> Output = new();
public DateTimeToString()
{
Output.UpdateAction += Update;
}
private void Update(EvaluationContext context)
{
var v = Value.GetValue(context);
var format = Format.GetValue(context);
try
{
Output.Value = string.IsNullOrEmpty(format)
? v.ToString(CultureInfo.InvariantCulture)
: v.ToString(format, CultureInfo.InvariantCulture);
}
catch (FormatException)
{
Output.Value = "Invalid Format";
}
}
[Input(Guid = "C420E846-8BA2-4BE4-AD43-9F4380DA0851")]
public readonly InputSlot<DateTime> Value = new();
[Input(Guid = "5af4a05f-72dc-4c0d-a728-309bf3a1b1b9")]
public readonly InputSlot<string> Format = new();
}
@@ -0,0 +1,16 @@
{
"FormatVersion": 3,
"Id": "c1c3725a-0745-4ce1-874b-839810c2124c"/*DateTimeToString*/,
"Inputs": [
{
"Id": "5af4a05f-72dc-4c0d-a728-309bf3a1b1b9"/*Format*/,
"DefaultValue": "dddd MMMM dd, yyyy"
},
{
"Id": "c420e846-8ba2-4be4-ad43-9f4380da0851"/*Value*/,
"DefaultValue": null
}
],
"Children": [],
"Connections": []
}
@@ -0,0 +1,44 @@
{
"FormatVersion": 3,
"Id": "c1c3725a-0745-4ce1-874b-839810c2124c"/*DateTimeToString*/,
"Description": "Uses [NowAsDateTime] output to convert it into a string",
"SymbolTags": "8",
"InputUis": [
{
"InputId": "5af4a05f-72dc-4c0d-a728-309bf3a1b1b9"/*Format*/,
"Position": {
"X": -133.22765,
"Y": 40.552734
},
"Usage": "Default"
},
{
"InputId": "c420e846-8ba2-4be4-ad43-9f4380da0851"/*Value*/,
"Relevancy": "Required",
"Position": {
"X": -182.1091,
"Y": -14.074188
},
"Description": "Input for a 'DateTime' parameter\n\nFor example by [NowAsDateTime] operator"
}
],
"SymbolChildUis": [],
"OutputUis": [
{
"OutputId": "75ad6b31-2460-47fb-aa75-019e50e0fd44"/*Output*/,
"Position": {
"X": 0.0,
"Y": 0.0
}
}
],
"Links": [
{
"Id": "bb0ffba9-a635-495a-baa7-86fffb62fad2",
"Title": "Custom date and time format strings",
"Description": "Describe how to use the Format field",
"LinkUrl": "https://learn.microsoft.com/en-us/dotnet/standard/base-types/custom-date-and-time-format-strings#date-and-time-separator-specifiers",
"LinkType": "Reference"
}
]
}
@@ -0,0 +1,19 @@
namespace Lib.@string.datetime;
[Guid("bd8d684c-96ae-4864-84fd-ca87f98ce1a4")]
internal sealed class NowAsDateTime : Instance<NowAsDateTime>
{
[Output(Guid = "99f94d1c-7d79-497d-9d42-dff8b749e493")]
public readonly Slot<DateTime> Output = new();
public NowAsDateTime()
{
Output.UpdateAction += Update;
}
private void Update(EvaluationContext context)
{
Output.Value = DateTime.Now;
}
}
@@ -0,0 +1,7 @@
{
"FormatVersion": 3,
"Id": "bd8d684c-96ae-4864-84fd-ca87f98ce1a4"/*NowAsDateTime*/,
"Inputs": [],
"Children": [],
"Connections": []
}
@@ -0,0 +1,17 @@
{
"FormatVersion": 3,
"Id": "bd8d684c-96ae-4864-84fd-ca87f98ce1a4"/*NowAsDateTime*/,
"Description": "Returns the current system time.",
"SymbolTags": "8",
"InputUis": [],
"SymbolChildUis": [],
"OutputUis": [
{
"OutputId": "99f94d1c-7d79-497d-9d42-dff8b749e493"/*Output*/,
"Position": {
"X": 0.0,
"Y": 100.0
}
}
]
}
@@ -0,0 +1,49 @@
namespace Lib.@string.datetime;
[Guid("a78a07f8-cf75-4a72-8952-b9ba40d6983f")]
internal sealed class StringToDateTime : Instance<StringToDateTime>, IStatusProvider
{
[Output(Guid = "8D2981DD-AC26-4CC0-8646-DEFB7196085C")]
public readonly Slot<DateTime> Output = new();
public StringToDateTime()
{
Output.UpdateAction += Update;
}
private void Update(EvaluationContext context)
{
var dateString = DateString.GetValue(context);
if (DateTime.TryParse(dateString, out var dateTime))
{
Output.Value = dateTime;
_lastStatusError = null;
}
else
{
_lastStatusError = $"Failed to parse {dateString} into DateTime";
}
}
private string _lastStatusError;
// [Input(Guid = "d4f58293-ac29-4dee-8a66-a56724bf7006")]
// public readonly InputSlot<DateTime> Value = new InputSlot<DateTime>();
[Input(Guid = "5F92445D-9234-420E-919D-21CDB6FB587D")]
public readonly InputSlot<string> DateString = new();
// [Input(Guid = "62d27f4c-ce64-497b-bca6-5a36bfd4232c")]
// public readonly InputSlot<string> Format = new InputSlot<string>();
public IStatusProvider.StatusLevel GetStatusLevel()
{
return string.IsNullOrEmpty(_lastStatusError) ? IStatusProvider.StatusLevel.Success : IStatusProvider.StatusLevel.Warning;
}
public string GetStatusMessage()
{
return _lastStatusError;
}
}
@@ -0,0 +1,12 @@
{
"FormatVersion": 3,
"Id": "a78a07f8-cf75-4a72-8952-b9ba40d6983f"/*StringToDateTime*/,
"Inputs": [
{
"Id": "5f92445d-9234-420e-919d-21cdb6fb587d"/*DateString*/,
"DefaultValue": ""
}
],
"Children": [],
"Connections": []
}
@@ -0,0 +1,26 @@
{
"FormatVersion": 3,
"Id": "a78a07f8-cf75-4a72-8952-b9ba40d6983f"/*StringToDateTime*/,
"Description": "Tries to parse the incoming string as a DateTime.",
"SymbolTags": "8",
"InputUis": [
{
"InputId": "5f92445d-9234-420e-919d-21cdb6fb587d"/*DateString*/,
"Position": {
"X": -200.0,
"Y": 45.0
},
"Usage": "Default"
}
],
"SymbolChildUis": [],
"OutputUis": [
{
"OutputId": "8d2981dd-ac26-4cc0-8646-defb7196085c"/*Output*/,
"Position": {
"X": 0.0,
"Y": 100.0
}
}
]
}
@@ -0,0 +1,13 @@
namespace Lib.@string.datetime;
[Guid("075612b1-8760-4858-ad6b-6c85a7716794")]
internal sealed class TimeToString : Instance<TimeToString>
{
[Output(Guid = "d45912c1-1c26-4a80-bfff-57de6ae6ccdf")]
public readonly Slot<string> Result = new();
[Input(Guid = "ecc27b89-e89a-4c01-93ad-b4750d09f2f7")]
public readonly InputSlot<float> Input = new();
}
@@ -0,0 +1,242 @@
{
"FormatVersion": 3,
"Id": "075612b1-8760-4858-ad6b-6c85a7716794"/*TimeToString*/,
"Inputs": [
{
"Id": "ecc27b89-e89a-4c01-93ad-b4750d09f2f7"/*Input*/,
"DefaultValue": 0.0
}
],
"Children": [
{
"Id": "11e62dfd-c9de-4714-9115-5fcdbf720331"/*Multiply*/,
"SymbolId": "17b60044-9125-4961-8a79-ca94697b3726",
"InputValues": [
{
"Id": "5ae4bb07-4214-4ec3-a499-24d9f6d404a5"/*B*/,
"Type": "System.Single",
"Value": 100.0
}
],
"Outputs": []
},
{
"Id": "1d04262b-da7f-49de-a0a3-7de7589d20af"/*Floor*/,
"SymbolId": "55b13dee-89f8-404f-b2fe-43d5e8c54536",
"InputValues": [],
"Outputs": []
},
{
"Id": "1e1ae105-ea95-4b2c-9e7d-32fd934fab38"/*Modulo*/,
"SymbolId": "5202d3f6-c970-4006-933d-3c60d6c202dc",
"InputValues": [
{
"Id": "62a8185f-32c0-41d2-b8be-d8c1d7178c00"/*ModuloValue*/,
"Type": "System.Single",
"Value": 60.0
}
],
"Outputs": []
},
{
"Id": "387f494b-68de-40a3-9da4-9b4bed7caf91"/*Floor*/,
"SymbolId": "55b13dee-89f8-404f-b2fe-43d5e8c54536",
"InputValues": [],
"Outputs": []
},
{
"Id": "4693a9d2-485e-4e3b-9f07-496181b4281f"/*Div*/,
"SymbolId": "15fb88b2-81a1-43b8-97ba-41221293bb07",
"InputValues": [
{
"Id": "a79a2f16-7a4e-464d-8af4-3e3029ae853e"/*B*/,
"Type": "System.Single",
"Value": 60.0
}
],
"Outputs": []
},
{
"Id": "58230175-3f7a-4b01-b1b6-27193dc5a0e2"/*FloatToString*/,
"SymbolId": "39c96cfd-dedf-4f76-a471-d1c26c9ba9fa",
"InputValues": [
{
"Id": "b2b32c44-62d8-4acb-a9a7-4856ec7a33bb"/*Format*/,
"Type": "System.String",
"Value": "{0:00}"
}
],
"Outputs": []
},
{
"Id": "706dc843-9a95-4cf7-bb9a-ac1a8c1d4ce2"/*String*/,
"SymbolId": "5880cbc3-a541-4484-a06a-0e6f77cdbe8e",
"InputValues": [
{
"Id": "ceeae47b-d792-471d-a825-49e22749b7b9"/*InputString*/,
"Type": "System.String",
"Value": "Partial Preview v03 / 2021-03-30 "
}
],
"Outputs": []
},
{
"Id": "98c950e9-b0c4-4cee-be31-b9cd1ee60eed"/*FloatToString*/,
"SymbolId": "39c96cfd-dedf-4f76-a471-d1c26c9ba9fa",
"InputValues": [
{
"Id": "b2b32c44-62d8-4acb-a9a7-4856ec7a33bb"/*Format*/,
"Type": "System.String",
"Value": "{0:00}"
}
],
"Outputs": []
},
{
"Id": "ac87ddda-5e7f-4d85-a22a-3af5e274c154"/*Floor*/,
"SymbolId": "55b13dee-89f8-404f-b2fe-43d5e8c54536",
"InputValues": [],
"Outputs": []
},
{
"Id": "cdf0eb8d-e5e0-4a5c-8efa-63f1942fa4d9"/*CombineStrings*/,
"SymbolId": "48ab9824-76ca-4238-800f-9cf95311e6c0",
"InputValues": [],
"Outputs": []
},
{
"Id": "e5168e43-3129-4c1d-81c6-33ef4d80ea71"/*FloatToString*/,
"SymbolId": "39c96cfd-dedf-4f76-a471-d1c26c9ba9fa",
"InputValues": [
{
"Id": "b2b32c44-62d8-4acb-a9a7-4856ec7a33bb"/*Format*/,
"Type": "System.String",
"Value": "{0:00}"
}
],
"Outputs": []
},
{
"Id": "e96babee-8ef9-411c-81f9-fdf3015b9289"/*_Time_old*/,
"SymbolId": "9cb4d49e-135b-400b-a035-2b02c5ea6a72",
"InputValues": [],
"Outputs": []
},
{
"Id": "f7f79af2-50d8-4bbc-bb8f-0d08fec71b29"/*Modulo*/,
"SymbolId": "5202d3f6-c970-4006-933d-3c60d6c202dc",
"InputValues": [
{
"Id": "62a8185f-32c0-41d2-b8be-d8c1d7178c00"/*ModuloValue*/,
"Type": "System.Single",
"Value": 100.0
}
],
"Outputs": []
},
{
"Id": "febcd3dc-8adf-430b-a94e-eba1c010e1a8"/*CombineStrings*/,
"SymbolId": "48ab9824-76ca-4238-800f-9cf95311e6c0",
"InputValues": [
{
"Id": "c832ba89-f4ae-4c47-b62b-52da52a09556"/*Separator*/,
"Type": "System.String",
"Value": ":"
}
],
"Outputs": []
}
],
"Connections": [
{
"SourceParentOrChildId": "cdf0eb8d-e5e0-4a5c-8efa-63f1942fa4d9",
"SourceSlotId": "e47bf25e-351a-44e6-84c6-ad3abc93531a",
"TargetParentOrChildId": "00000000-0000-0000-0000-000000000000",
"TargetSlotId": "d45912c1-1c26-4a80-bfff-57de6ae6ccdf"
},
{
"SourceParentOrChildId": "00000000-0000-0000-0000-000000000000",
"SourceSlotId": "ecc27b89-e89a-4c01-93ad-b4750d09f2f7",
"TargetParentOrChildId": "11e62dfd-c9de-4714-9115-5fcdbf720331",
"TargetSlotId": "372288fa-3794-47ba-9f91-59240513217a"
},
{
"SourceParentOrChildId": "4693a9d2-485e-4e3b-9f07-496181b4281f",
"SourceSlotId": "866642e7-17dd-4375-9d5e-2e3747a554c2",
"TargetParentOrChildId": "1d04262b-da7f-49de-a0a3-7de7589d20af",
"TargetSlotId": "550289db-89cb-465c-a9d8-a16dbf23cc45"
},
{
"SourceParentOrChildId": "00000000-0000-0000-0000-000000000000",
"SourceSlotId": "ecc27b89-e89a-4c01-93ad-b4750d09f2f7",
"TargetParentOrChildId": "1e1ae105-ea95-4b2c-9e7d-32fd934fab38",
"TargetSlotId": "8a401e5d-295d-4403-a3af-1d6b91ce3dba"
},
{
"SourceParentOrChildId": "1e1ae105-ea95-4b2c-9e7d-32fd934fab38",
"SourceSlotId": "4e4ebbcf-6b12-4ce7-9bec-78cd9049e239",
"TargetParentOrChildId": "387f494b-68de-40a3-9da4-9b4bed7caf91",
"TargetSlotId": "550289db-89cb-465c-a9d8-a16dbf23cc45"
},
{
"SourceParentOrChildId": "00000000-0000-0000-0000-000000000000",
"SourceSlotId": "ecc27b89-e89a-4c01-93ad-b4750d09f2f7",
"TargetParentOrChildId": "4693a9d2-485e-4e3b-9f07-496181b4281f",
"TargetSlotId": "70460191-7573-400f-ba88-11878ecc917c"
},
{
"SourceParentOrChildId": "ac87ddda-5e7f-4d85-a22a-3af5e274c154",
"SourceSlotId": "5c54174b-c9e6-41de-b796-84ef4271dd20",
"TargetParentOrChildId": "58230175-3f7a-4b01-b1b6-27193dc5a0e2",
"TargetSlotId": "f36e4078-2608-4308-ab5f-077c05b1181a"
},
{
"SourceParentOrChildId": "387f494b-68de-40a3-9da4-9b4bed7caf91",
"SourceSlotId": "5c54174b-c9e6-41de-b796-84ef4271dd20",
"TargetParentOrChildId": "98c950e9-b0c4-4cee-be31-b9cd1ee60eed",
"TargetSlotId": "f36e4078-2608-4308-ab5f-077c05b1181a"
},
{
"SourceParentOrChildId": "f7f79af2-50d8-4bbc-bb8f-0d08fec71b29",
"SourceSlotId": "4e4ebbcf-6b12-4ce7-9bec-78cd9049e239",
"TargetParentOrChildId": "ac87ddda-5e7f-4d85-a22a-3af5e274c154",
"TargetSlotId": "550289db-89cb-465c-a9d8-a16dbf23cc45"
},
{
"SourceParentOrChildId": "febcd3dc-8adf-430b-a94e-eba1c010e1a8",
"SourceSlotId": "e47bf25e-351a-44e6-84c6-ad3abc93531a",
"TargetParentOrChildId": "cdf0eb8d-e5e0-4a5c-8efa-63f1942fa4d9",
"TargetSlotId": "b5e72715-9339-484f-b197-5a28cd823798"
},
{
"SourceParentOrChildId": "1d04262b-da7f-49de-a0a3-7de7589d20af",
"SourceSlotId": "5c54174b-c9e6-41de-b796-84ef4271dd20",
"TargetParentOrChildId": "e5168e43-3129-4c1d-81c6-33ef4d80ea71",
"TargetSlotId": "f36e4078-2608-4308-ab5f-077c05b1181a"
},
{
"SourceParentOrChildId": "11e62dfd-c9de-4714-9115-5fcdbf720331",
"SourceSlotId": "e011dd8c-1b9c-458f-8960-e6c38e83ca74",
"TargetParentOrChildId": "f7f79af2-50d8-4bbc-bb8f-0d08fec71b29",
"TargetSlotId": "8a401e5d-295d-4403-a3af-1d6b91ce3dba"
},
{
"SourceParentOrChildId": "e5168e43-3129-4c1d-81c6-33ef4d80ea71",
"SourceSlotId": "c63a1977-a594-490d-b5fb-de4d40bad016",
"TargetParentOrChildId": "febcd3dc-8adf-430b-a94e-eba1c010e1a8",
"TargetSlotId": "b5e72715-9339-484f-b197-5a28cd823798"
},
{
"SourceParentOrChildId": "98c950e9-b0c4-4cee-be31-b9cd1ee60eed",
"SourceSlotId": "c63a1977-a594-490d-b5fb-de4d40bad016",
"TargetParentOrChildId": "febcd3dc-8adf-430b-a94e-eba1c010e1a8",
"TargetSlotId": "b5e72715-9339-484f-b197-5a28cd823798"
},
{
"SourceParentOrChildId": "58230175-3f7a-4b01-b1b6-27193dc5a0e2",
"SourceSlotId": "c63a1977-a594-490d-b5fb-de4d40bad016",
"TargetParentOrChildId": "febcd3dc-8adf-430b-a94e-eba1c010e1a8",
"TargetSlotId": "b5e72715-9339-484f-b197-5a28cd823798"
}
]
}
@@ -0,0 +1,125 @@
{
"FormatVersion": 3,
"Id": "075612b1-8760-4858-ad6b-6c85a7716794"/*TimeToString*/,
"Description": "Converts [Time] float output and similar to a string",
"SymbolTags": "8",
"InputUis": [
{
"InputId": "ecc27b89-e89a-4c01-93ad-b4750d09f2f7"/*Input*/,
"Position": {
"X": -200.0,
"Y": 0.0
},
"Description": "Input for [Time] operator"
}
],
"SymbolChildUis": [
{
"ChildId": "11e62dfd-c9de-4714-9115-5fcdbf720331"/*Multiply*/,
"Position": {
"X": 19.560425,
"Y": 195.0003
}
},
{
"ChildId": "1d04262b-da7f-49de-a0a3-7de7589d20af"/*Floor*/,
"Position": {
"X": 319.56042,
"Y": 43.000122
}
},
{
"ChildId": "1e1ae105-ea95-4b2c-9e7d-32fd934fab38"/*Modulo*/,
"Position": {
"X": 169.56042,
"Y": 119.000305
}
},
{
"ChildId": "387f494b-68de-40a3-9da4-9b4bed7caf91"/*Floor*/,
"Position": {
"X": 319.56042,
"Y": 119.000305
}
},
{
"ChildId": "4693a9d2-485e-4e3b-9f07-496181b4281f"/*Div*/,
"Position": {
"X": 169.56042,
"Y": 43.000122
}
},
{
"ChildId": "58230175-3f7a-4b01-b1b6-27193dc5a0e2"/*FloatToString*/,
"Position": {
"X": 469.56042,
"Y": 195.0003
}
},
{
"ChildId": "706dc843-9a95-4cf7-bb9a-ac1a8c1d4ce2"/*String*/,
"Position": {
"X": 458.7432,
"Y": -97.51553
}
},
{
"ChildId": "98c950e9-b0c4-4cee-be31-b9cd1ee60eed"/*FloatToString*/,
"Position": {
"X": 469.56042,
"Y": 119.000305
}
},
{
"ChildId": "ac87ddda-5e7f-4d85-a22a-3af5e274c154"/*Floor*/,
"Position": {
"X": 319.56042,
"Y": 195.0003
}
},
{
"ChildId": "cdf0eb8d-e5e0-4a5c-8efa-63f1942fa4d9"/*CombineStrings*/,
"Position": {
"X": 769.5604,
"Y": 0.0
}
},
{
"ChildId": "e5168e43-3129-4c1d-81c6-33ef4d80ea71"/*FloatToString*/,
"Position": {
"X": 469.56042,
"Y": 43.000122
}
},
{
"ChildId": "e96babee-8ef9-411c-81f9-fdf3015b9289"/*_Time_old*/,
"Position": {
"X": -101.543846,
"Y": 92.77409
}
},
{
"ChildId": "f7f79af2-50d8-4bbc-bb8f-0d08fec71b29"/*Modulo*/,
"Position": {
"X": 169.56042,
"Y": 195.0003
}
},
{
"ChildId": "febcd3dc-8adf-430b-a94e-eba1c010e1a8"/*CombineStrings*/,
"Position": {
"X": 619.5604,
"Y": 0.0
}
}
],
"OutputUis": [
{
"OutputId": "d45912c1-1c26-4a80-bfff-57de6ae6ccdf"/*Result*/,
"Position": {
"X": 1069.5604,
"Y": 97.50015
}
}
]
}