@quenty/tie 10.21.0-canary.ae8d76d.0 → 10.21.1-canary.39d0eda.0

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/CHANGELOG.md CHANGED
@@ -3,7 +3,15 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- # [10.21.0-canary.ae8d76d.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/tie@10.20.3...@quenty/tie@10.21.0-canary.ae8d76d.0) (2025-05-10)
6
+ ## [10.21.1-canary.39d0eda.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/tie@10.21.0...@quenty/tie@10.21.1-canary.39d0eda.0) (2025-08-29)
7
+
8
+ **Note:** Version bump only for package @quenty/tie
9
+
10
+
11
+
12
+
13
+
14
+ # [10.21.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/tie@10.20.3...@quenty/tie@10.21.0) (2025-05-10)
7
15
 
8
16
 
9
17
  ### Bug Fixes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quenty/tie",
3
- "version": "10.21.0-canary.ae8d76d.0",
3
+ "version": "10.21.1-canary.39d0eda.0",
4
4
  "description": "Tie allows interfaces to be defined between Lua OOP and Roblox objects.",
5
5
  "keywords": [
6
6
  "Roblox",
@@ -28,29 +28,29 @@
28
28
  "Quenty"
29
29
  ],
30
30
  "dependencies": {
31
- "@quenty/attributeutils": "14.18.0-canary.ae8d76d.0",
32
- "@quenty/baseobject": "10.8.3",
33
- "@quenty/brio": "14.18.0-canary.ae8d76d.0",
34
- "@quenty/collectionserviceutils": "8.18.0-canary.ae8d76d.0",
35
- "@quenty/instanceutils": "13.18.0-canary.ae8d76d.0",
36
- "@quenty/loader": "10.8.3",
37
- "@quenty/maid": "3.4.3",
38
- "@quenty/rx": "13.18.0-canary.ae8d76d.0",
39
- "@quenty/rxsignal": "7.18.0-canary.ae8d76d.0",
40
- "@quenty/statestack": "14.19.0-canary.ae8d76d.0",
31
+ "@quenty/attributeutils": "14.18.1-canary.39d0eda.0",
32
+ "@quenty/baseobject": "10.9.0",
33
+ "@quenty/brio": "14.18.1-canary.39d0eda.0",
34
+ "@quenty/collectionserviceutils": "8.18.1-canary.39d0eda.0",
35
+ "@quenty/instanceutils": "13.18.1-canary.39d0eda.0",
36
+ "@quenty/loader": "10.9.0",
37
+ "@quenty/maid": "3.5.0",
38
+ "@quenty/rx": "13.18.1-canary.39d0eda.0",
39
+ "@quenty/rxsignal": "7.18.1-canary.39d0eda.0",
40
+ "@quenty/statestack": "14.19.1-canary.39d0eda.0",
41
41
  "@quenty/string": "3.3.3",
42
- "@quenty/symbol": "3.4.2",
43
- "@quenty/table": "3.7.4",
44
- "@quenty/tuple": "1.6.0-canary.ae8d76d.0",
45
- "@quenty/valuebaseutils": "13.18.0-canary.ae8d76d.0",
46
- "@quenty/valueobject": "13.18.0-canary.ae8d76d.0"
42
+ "@quenty/symbol": "3.5.0",
43
+ "@quenty/table": "3.8.0",
44
+ "@quenty/tuple": "1.6.0",
45
+ "@quenty/valuebaseutils": "13.18.1-canary.39d0eda.0",
46
+ "@quenty/valueobject": "13.18.1-canary.39d0eda.0"
47
47
  },
48
48
  "devDependencies": {
49
- "@quenty/promise": "10.11.0-canary.ae8d76d.0",
50
- "@quenty/signal": "7.10.3"
49
+ "@quenty/promise": "10.11.1-canary.39d0eda.0",
50
+ "@quenty/signal": "7.11.1-canary.39d0eda.0"
51
51
  },
52
52
  "publishConfig": {
53
53
  "access": "public"
54
54
  },
55
- "gitHead": "ae8d76d996594e017ac4bfa19f3c064ebe307cd8"
55
+ "gitHead": "39d0edaa45d0c4812b43f2a64ad543fac3f79423"
56
56
  }
@@ -42,4 +42,4 @@ function TieMethodDefinition:GetInterface(implParent: Instance, aliasSelf, tieRe
42
42
  return TieMethodInterfaceUtils.get(aliasSelf, self, implParent, nil, tieRealm)
43
43
  end
44
44
 
45
- return TieMethodDefinition
45
+ return TieMethodDefinition
@@ -44,5 +44,4 @@ function TieMethodImplementation:SetImplementation(implementation)
44
44
  end
45
45
  end
46
46
 
47
-
48
- return TieMethodImplementation
47
+ return TieMethodImplementation
@@ -10,18 +10,28 @@ local TieUtils = require("TieUtils")
10
10
 
11
11
  local TieMethodInterfaceUtils = {}
12
12
 
13
- function TieMethodInterfaceUtils.get(aliasSelf, tieMethodDefinition, implParent: Instance?, adornee: Instance?, interfaceTieRealm: TieRealms.TieRealm)
13
+ function TieMethodInterfaceUtils.get(
14
+ aliasSelf,
15
+ tieMethodDefinition,
16
+ implParent: Instance?,
17
+ adornee: Instance?,
18
+ interfaceTieRealm: TieRealms.TieRealm
19
+ )
14
20
  assert(TieRealmUtils.isTieRealm(interfaceTieRealm), "Bad interfaceTieRealm")
15
21
 
16
22
  local tieDefinition = tieMethodDefinition:GetTieDefinition()
17
23
 
18
24
  return function(firstArg, ...)
19
25
  if firstArg ~= aliasSelf then
20
- error(string.format("Must call methods with self as first parameter (Hint use `%s:%s()` instead of `%s.%s()`)",
21
- tieDefinition:GetName(),
22
- tieMethodDefinition:GetMemberName(),
23
- tieDefinition:GetName(),
24
- tieMethodDefinition:GetMemberName()))
26
+ error(
27
+ string.format(
28
+ "Must call methods with self as first parameter (Hint use `%s:%s()` instead of `%s.%s()`)",
29
+ tieDefinition:GetName(),
30
+ tieMethodDefinition:GetMemberName(),
31
+ tieDefinition:GetName(),
32
+ tieMethodDefinition:GetMemberName()
33
+ )
34
+ )
25
35
  end
26
36
 
27
37
  if implParent and adornee then
@@ -68,4 +78,4 @@ function TieMethodInterfaceUtils.get(aliasSelf, tieMethodDefinition, implParent:
68
78
  end
69
79
  end
70
80
 
71
- return TieMethodInterfaceUtils
81
+ return TieMethodInterfaceUtils
@@ -4,9 +4,9 @@
4
4
 
5
5
  local require = require(script.Parent.loader).load(script)
6
6
 
7
+ local TieMemberDefinition = require("TieMemberDefinition")
7
8
  local TiePropertyImplementation = require("TiePropertyImplementation")
8
9
  local TiePropertyInterface = require("TiePropertyInterface")
9
- local TieMemberDefinition = require("TieMemberDefinition")
10
10
  local TieRealmUtils = require("TieRealmUtils")
11
11
 
12
12
  local TiePropertyDefinition = setmetatable({}, TieMemberDefinition)
@@ -16,7 +16,8 @@ TiePropertyDefinition.__index = TiePropertyDefinition
16
16
  function TiePropertyDefinition.new(tieDefinition, propertyName: string, defaultValue: any, memberTieRealm)
17
17
  assert(TieRealmUtils.isTieRealm(memberTieRealm), "Bad memberTieRealm")
18
18
 
19
- local self = setmetatable(TieMemberDefinition.new(tieDefinition, propertyName, memberTieRealm), TiePropertyDefinition)
19
+ local self =
20
+ setmetatable(TieMemberDefinition.new(tieDefinition, propertyName, memberTieRealm), TiePropertyDefinition)
20
21
 
21
22
  self._defaultValue = defaultValue
22
23
 
@@ -54,5 +55,4 @@ function TiePropertyDefinition:GetInterface(implParent: Instance, _actualSelf, t
54
55
  return TiePropertyInterface.new(implParent, nil, self, tieRealm)
55
56
  end
56
57
 
57
-
58
- return TiePropertyDefinition
58
+ return TiePropertyDefinition
@@ -4,13 +4,13 @@
4
4
 
5
5
  local require = require(script.Parent.loader).load(script)
6
6
 
7
+ local AttributeUtils = require("AttributeUtils")
8
+ local AttributeValue = require("AttributeValue")
7
9
  local BaseObject = require("BaseObject")
8
- local TieUtils = require("TieUtils")
9
10
  local Maid = require("Maid")
10
- local ValueBaseUtils = require("ValueBaseUtils")
11
11
  local TiePropertyImplementationUtils = require("TiePropertyImplementationUtils")
12
- local AttributeUtils = require("AttributeUtils")
13
- local AttributeValue = require("AttributeValue")
12
+ local TieUtils = require("TieUtils")
13
+ local ValueBaseUtils = require("ValueBaseUtils")
14
14
  local ValueObject = require("ValueObject")
15
15
 
16
16
  local TiePropertyImplementation = setmetatable({}, BaseObject)
@@ -138,4 +138,4 @@ function TiePropertyImplementation:_syncMember(maid, copy, implementation)
138
138
  end))
139
139
  end
140
140
 
141
- return TiePropertyImplementation
141
+ return TiePropertyImplementation
@@ -26,4 +26,4 @@ function TiePropertyImplementationUtils.changeToClassIfNeeded(memberDefinition,
26
26
  return instance
27
27
  end
28
28
 
29
- return TiePropertyImplementationUtils
29
+ return TiePropertyImplementationUtils
@@ -26,7 +26,10 @@ TiePropertyInterface.ClassName = "TiePropertyInterface"
26
26
  TiePropertyInterface.__index = TiePropertyInterface
27
27
 
28
28
  function TiePropertyInterface.new(implParent, adornee: Instance, memberDefinition, interfaceTieRealm)
29
- local self = setmetatable(TieMemberInterface.new(implParent, adornee, memberDefinition, interfaceTieRealm), TiePropertyInterface)
29
+ local self = setmetatable(
30
+ TieMemberInterface.new(implParent, adornee, memberDefinition, interfaceTieRealm),
31
+ TiePropertyInterface
32
+ )
30
33
 
31
34
  return self
32
35
  end
@@ -40,7 +43,7 @@ function TiePropertyInterface:ObserveBrio(predicate)
40
43
  -- TODO: Maybe don't assumet his exists and use a helper method instead.
41
44
  return valueBase:ObserveBrio(predicate)
42
45
  end
43
- end);
46
+ end),
44
47
  })
45
48
  end
46
49
 
@@ -77,8 +80,8 @@ function TiePropertyInterface:Observe()
77
80
 
78
81
  return maid
79
82
  end)
80
- end);
81
- Rx.distinct();
83
+ end),
84
+ Rx.distinct(),
82
85
  })
83
86
  end
84
87
 
@@ -106,9 +109,13 @@ end
106
109
  function TiePropertyInterface:_getValueBaseOrError()
107
110
  local valueBase = self:_findValueBase()
108
111
  if not valueBase then
109
- error(string.format("%s.%s is not implemented for %s",
110
- self._memberDefinition:GetFriendlyName(),
111
- self:_getFullName()))
112
+ error(
113
+ string.format(
114
+ "%s.%s is not implemented for %s",
115
+ self._memberDefinition:GetFriendlyName(),
116
+ self:_getFullName()
117
+ )
118
+ )
112
119
  end
113
120
  return valueBase
114
121
  end
@@ -125,13 +132,13 @@ end
125
132
 
126
133
  function TiePropertyInterface:_getChangedEvent()
127
134
  return RxSignal.new(self:Observe():Pipe({
128
- Rx.skip(1)
135
+ Rx.skip(1),
129
136
  }))
130
137
  end
131
138
 
132
139
  local IMPLEMENTATION_TYPES = {
133
- attribute = "attribute";
134
- none = "none";
140
+ attribute = "attribute",
141
+ none = "none",
135
142
  }
136
143
 
137
144
  function TiePropertyInterface:_observeFromImplParent(implParent)
@@ -224,8 +231,8 @@ function TiePropertyInterface:_observeValueBaseBrio()
224
231
  return self:ObserveImplParentBrio():Pipe({
225
232
  RxBrioUtils.switchMapBrio(function(implParent)
226
233
  return self:_observeFromImplParent(implParent)
227
- end);
228
- RxBrioUtils.onlyLastBrioSurvives();
234
+ end),
235
+ RxBrioUtils.onlyLastBrioSurvives(),
229
236
  })
230
237
  end
231
238
 
@@ -245,7 +252,12 @@ function TiePropertyInterface:__index(index)
245
252
  return valueBase.Value
246
253
  elseif index == "Changed" then
247
254
  return self:_getChangedEvent()
248
- elseif index == "_adornee" or index == "_implParent" or index == "_memberDefinition" or index == "_tieDefinition" then
255
+ elseif
256
+ index == "_adornee"
257
+ or index == "_implParent"
258
+ or index == "_memberDefinition"
259
+ or index == "_tieDefinition"
260
+ then
249
261
  return rawget(self, index)
250
262
  else
251
263
  error(string.format("Bad index %q for TiePropertyInterface", tostring(index)))
@@ -258,7 +270,12 @@ function TiePropertyInterface:__newindex(index, value)
258
270
  elseif index == "Value" then
259
271
  local className = ValueBaseUtils.getClassNameFromType(typeof(value))
260
272
  if not className then
261
- error(string.format("[TiePropertyImplementation] - Bad implementation value type %q, cannot set", typeof(value)))
273
+ error(
274
+ string.format(
275
+ "[TiePropertyImplementation] - Bad implementation value type %q, cannot set",
276
+ typeof(value)
277
+ )
278
+ )
262
279
  end
263
280
 
264
281
  local valueBase = self:_findValueBase()
@@ -279,11 +296,17 @@ function TiePropertyInterface:__newindex(index, value)
279
296
  else
280
297
  local implParent = self:GetImplParent()
281
298
  if implParent then
282
- local copy = TiePropertyImplementationUtils.changeToClassIfNeeded(self._memberDefinition, implParent, className)
299
+ local copy =
300
+ TiePropertyImplementationUtils.changeToClassIfNeeded(self._memberDefinition, implParent, className)
283
301
  copy.Value = value
284
302
  copy.Parent = implParent
285
303
  else
286
- error(string.format("[TiePropertyImplementation] - No implParent for %q", self._memberDefinition:GetMemberName()))
304
+ error(
305
+ string.format(
306
+ "[TiePropertyImplementation] - No implParent for %q",
307
+ self._memberDefinition:GetMemberName()
308
+ )
309
+ )
287
310
  end
288
311
  end
289
312
  elseif index == "Changed" then
@@ -293,5 +316,4 @@ function TiePropertyInterface:__newindex(index, value)
293
316
  end
294
317
  end
295
318
 
296
-
297
- return TiePropertyInterface
319
+ return TiePropertyInterface
@@ -60,4 +60,4 @@ function TieSignalConnection:Destroy()
60
60
  -- Avoid setting the metatable so calling methods is always valid
61
61
  end
62
62
 
63
- return TieSignalConnection
63
+ return TieSignalConnection
@@ -5,9 +5,9 @@
5
5
  local require = require(script.Parent.loader).load(script)
6
6
 
7
7
  local TieMemberDefinition = require("TieMemberDefinition")
8
+ local TieRealmUtils = require("TieRealmUtils")
8
9
  local TieSignalImplementation = require("TieSignalImplementation")
9
10
  local TieSignalInterface = require("TieSignalInterface")
10
- local TieRealmUtils = require("TieRealmUtils")
11
11
 
12
12
  local TieSignalDefinition = setmetatable({}, TieMemberDefinition)
13
13
  TieSignalDefinition.ClassName = "TieSignalDefinition"
@@ -35,4 +35,4 @@ function TieSignalDefinition:GetInterface(implParent: Instance, _actualSelf, tie
35
35
  return TieSignalInterface.new(implParent, nil, self, tieRealm)
36
36
  end
37
37
 
38
- return TieSignalDefinition
38
+ return TieSignalDefinition
@@ -5,8 +5,8 @@
5
5
  local require = require(script.Parent.loader).load(script)
6
6
 
7
7
  local BaseObject = require("BaseObject")
8
- local TieUtils = require("TieUtils")
9
8
  local Maid = require("Maid")
9
+ local TieUtils = require("TieUtils")
10
10
  local Tuple = require("Tuple")
11
11
 
12
12
  local TieSignalImplementation = setmetatable({}, BaseObject)
@@ -69,4 +69,4 @@ function TieSignalImplementation:SetImplementation(signal)
69
69
  self._maid._implementationMaid = maid
70
70
  end
71
71
 
72
- return TieSignalImplementation
72
+ return TieSignalImplementation
@@ -6,12 +6,12 @@
6
6
 
7
7
  local require = require(script.Parent.loader).load(script)
8
8
 
9
- local TieMemberInterface = require("TieMemberInterface")
10
- local TieSignalConnection = require("TieSignalConnection")
11
- local TieUtils = require("TieUtils")
12
9
  local RxBrioUtils = require("RxBrioUtils")
13
10
  local RxInstanceUtils = require("RxInstanceUtils")
11
+ local TieMemberInterface = require("TieMemberInterface")
14
12
  local TieRealmUtils = require("TieRealmUtils")
13
+ local TieSignalConnection = require("TieSignalConnection")
14
+ local TieUtils = require("TieUtils")
15
15
 
16
16
  local TieSignalInterface = setmetatable({}, TieMemberInterface)
17
17
  TieSignalInterface.ClassName = "TieSignalInterface"
@@ -20,7 +20,10 @@ TieSignalInterface.__index = TieSignalInterface
20
20
  function TieSignalInterface.new(implParent: Instance, adornee: Instance, memberDefinition, interfaceTieRealm)
21
21
  assert(TieRealmUtils.isTieRealm(interfaceTieRealm), "Bad interfaceTieRealm")
22
22
 
23
- local self = setmetatable(TieMemberInterface.new(implParent, adornee, memberDefinition, interfaceTieRealm), TieSignalInterface)
23
+ local self = setmetatable(
24
+ TieMemberInterface.new(implParent, adornee, memberDefinition, interfaceTieRealm),
25
+ TieSignalInterface
26
+ )
24
27
 
25
28
  return self
26
29
  end
@@ -67,10 +70,9 @@ function TieSignalInterface:ObserveBindableEventBrio()
67
70
  return self:ObserveImplParentBrio():Pipe({
68
71
  RxBrioUtils.switchMapBrio(function(implParent)
69
72
  return RxInstanceUtils.observeLastNamedChildBrio(implParent, "BindableEvent", name)
70
- end);
71
- RxBrioUtils.onlyLastBrioSurvives();
73
+ end),
74
+ RxBrioUtils.onlyLastBrioSurvives(),
72
75
  })
73
-
74
76
  end
75
77
 
76
78
  function TieSignalInterface:_getBindableEvent()
@@ -87,4 +89,4 @@ function TieSignalInterface:_getBindableEvent()
87
89
  end
88
90
  end
89
91
 
90
- return TieSignalInterface
92
+ return TieSignalInterface
@@ -101,4 +101,4 @@ function TieMemberDefinition:GetMemberName(): string
101
101
  return self._memberName
102
102
  end
103
103
 
104
- return TieMemberDefinition
104
+ return TieMemberDefinition
@@ -63,20 +63,19 @@ function TieMemberInterface:ObserveImplParentBrio()
63
63
 
64
64
  if self._implParent and self._adornee then
65
65
  return Rx.combineLatest({
66
- Parent = RxInstanceUtils.observeProperty(self._implParent, "Parent");
67
- Name = RxInstanceUtils.observeProperty(self._implParent, "Name");
68
- })
69
- :Pipe({
66
+ Parent = RxInstanceUtils.observeProperty(self._implParent, "Parent"),
67
+ Name = RxInstanceUtils.observeProperty(self._implParent, "Name"),
68
+ }):Pipe({
70
69
  Rx.map(function(state)
71
70
  if validContainerNameSet[state.Name] and state.Parent == self._adornee then
72
71
  return self._implParent
73
72
  else
74
73
  return nil
75
74
  end
76
- end);
77
- Rx.distinct();
78
- RxBrioUtils.toBrio();
79
- RxBrioUtils.onlyLastBrioSurvives();
75
+ end),
76
+ Rx.distinct(),
77
+ RxBrioUtils.toBrio(),
78
+ RxBrioUtils.onlyLastBrioSurvives(),
80
79
  })
81
80
  elseif self._implParent then
82
81
  return RxInstanceUtils.observePropertyBrio(self._implParent, "Name", function(name)
@@ -84,7 +83,7 @@ function TieMemberInterface:ObserveImplParentBrio()
84
83
  end):Pipe({
85
84
  RxBrioUtils.map(function()
86
85
  return self._implParent
87
- end);
86
+ end),
88
87
  })
89
88
  elseif self._adornee then
90
89
  return self._tieDefinition:ObserveValidContainerChildrenBrio(self._adornee, self._interfaceTieRealm)
@@ -93,4 +92,4 @@ function TieMemberInterface:ObserveImplParentBrio()
93
92
  end
94
93
  end
95
94
 
96
- return TieMemberInterface
95
+ return TieMemberInterface
@@ -41,4 +41,4 @@ function TieRealmUtils.inferTieRealm(): "server" | "client"
41
41
  end
42
42
  end
43
43
 
44
- return TieRealmUtils
44
+ return TieRealmUtils
@@ -5,8 +5,8 @@
5
5
 
6
6
  local require = require(script.Parent.loader).load(script)
7
7
 
8
- local TieRealmUtils = require("TieRealmUtils")
9
8
  local ServiceBag = require("ServiceBag")
9
+ local TieRealmUtils = require("TieRealmUtils")
10
10
  local TieRealms = require("TieRealms")
11
11
 
12
12
  local TieRealmService = {}
@@ -45,4 +45,4 @@ function TieRealmService.GetTieRealm(self: TieRealmService): TieRealms.TieRealm
45
45
  return self._tieRealm
46
46
  end
47
47
 
48
- return TieRealmService
48
+ return TieRealmService
@@ -59,8 +59,8 @@ local TieImplementation = require("TieImplementation")
59
59
  local TieInterface = require("TieInterface")
60
60
  local TieMethodDefinition = require("TieMethodDefinition")
61
61
  local TiePropertyDefinition = require("TiePropertyDefinition")
62
- local TieRealms = require("TieRealms")
63
62
  local TieRealmUtils = require("TieRealmUtils")
63
+ local TieRealms = require("TieRealms")
64
64
  local TieSignalDefinition = require("TieSignalDefinition")
65
65
  local ValueObject = require("ValueObject")
66
66
 
@@ -9,9 +9,9 @@
9
9
  local require = require(script.Parent.loader).load(script)
10
10
 
11
11
  local BaseObject = require("BaseObject")
12
+ local String = require("String")
12
13
  local TieRealmUtils = require("TieRealmUtils")
13
14
  local TieRealms = require("TieRealms")
14
- local String = require("String")
15
15
 
16
16
  local TieImplementation = setmetatable({}, BaseObject)
17
17
  TieImplementation.ClassName = "TieImplementation"
@@ -25,7 +25,12 @@ TieImplementation.__index = TieImplementation
25
25
  @param implementer table
26
26
  @param implementationTieRealm TieRealm
27
27
  ]=]
28
- function TieImplementation.new(tieDefinition, adornee: Instance, implementer, implementationTieRealm: TieRealms.TieRealm)
28
+ function TieImplementation.new(
29
+ tieDefinition,
30
+ adornee: Instance,
31
+ implementer,
32
+ implementationTieRealm: TieRealms.TieRealm
33
+ )
29
34
  assert(TieRealmUtils.isTieRealm(implementationTieRealm), "Bad implementationTieRealm")
30
35
 
31
36
  local self = setmetatable(BaseObject.new(), TieImplementation)
@@ -6,9 +6,9 @@
6
6
 
7
7
  local require = require(script.Parent.loader).load(script)
8
8
 
9
- local TieSignalInterface = require("TieSignalInterface")
10
- local TiePropertyInterface = require("TiePropertyInterface")
11
9
  local TieMethodInterfaceUtils = require("TieMethodInterfaceUtils")
10
+ local TiePropertyInterface = require("TiePropertyInterface")
11
+ local TieSignalInterface = require("TieSignalInterface")
12
12
 
13
13
  local TieInterface = {}
14
14
  TieInterface.ClassName = "TieInterface"
@@ -117,7 +117,14 @@ function TieInterface:__index(index)
117
117
  error(string.format("Unknown member definition %q", tostring(member.ClassName)))
118
118
  end
119
119
  else
120
- error(string.format("[TieInterface] - %s is not allowed in realm '%s'. Specify realm to %s.", member:GetFriendlyName(), interfaceTieRealm, member:GetMemberTieRealm()))
120
+ error(
121
+ string.format(
122
+ "[TieInterface] - %s is not allowed in realm '%s'. Specify realm to %s.",
123
+ member:GetFriendlyName(),
124
+ interfaceTieRealm,
125
+ member:GetMemberTieRealm()
126
+ )
127
+ )
121
128
  end
122
129
  elseif TieInterface[index] then
123
130
  return TieInterface[index]
@@ -126,4 +133,4 @@ function TieInterface:__index(index)
126
133
  end
127
134
  end
128
135
 
129
- return TieInterface
136
+ return TieInterface
@@ -17,12 +17,13 @@ local TieUtils = {}
17
17
  function TieUtils.encode(...)
18
18
  local results = table.pack(...)
19
19
 
20
- for i=1, results.n do
21
- if type(results[i]) == "table"
22
- or type(results[i]) == "function"
20
+ for i = 1, results.n do
21
+ if
22
+ type(results[i]) == "table"
23
+ or type(results[i]) == "function"
23
24
  or typeof(results[i]) == "userdata" -- newproxy() symbols
24
- or Symbol.isSymbol(results[i]) then
25
-
25
+ or Symbol.isSymbol(results[i])
26
+ then
26
27
  local saved = results[i]
27
28
  results[i] = function()
28
29
  return saved -- Pack into a callback so we can transfer data.
@@ -65,7 +66,7 @@ end
65
66
  function TieUtils.decode(...)
66
67
  local results = table.pack(...)
67
68
 
68
- for i=1, results.n do
69
+ for i = 1, results.n do
69
70
  if type(results[i]) == "function" then
70
71
  results[i] = results[i]()
71
72
  end
@@ -74,4 +75,4 @@ function TieUtils.decode(...)
74
75
  return unpack(results, 1, results.n)
75
76
  end
76
77
 
77
- return TieUtils
78
+ return TieUtils
@@ -4,8 +4,8 @@
4
4
 
5
5
  local require = require(script.Parent.loader).load(script)
6
6
 
7
- local BaseObject = require("BaseObject")
8
7
  local ActionInterface = require("ActionInterface")
8
+ local BaseObject = require("BaseObject")
9
9
  local Signal = require("Signal")
10
10
 
11
11
  local Action = setmetatable({}, BaseObject)
@@ -1,4 +1,4 @@
1
1
  --[[
2
2
  @class ClientMain
3
3
  ]]
4
- game:GetService("ReplicatedStorage"):WaitForChild("Packages")
4
+ game:GetService("ReplicatedStorage"):WaitForChild("Packages")
@@ -6,11 +6,11 @@ local ServerScriptService = game:GetService("ServerScriptService")
6
6
  local loader = ServerScriptService:FindFirstChild("LoaderUtils", true).Parent
7
7
  local require = require(loader).bootstrapGame(ServerScriptService.tie)
8
8
 
9
+ local Action = require("Action")
10
+ local ActionInterface = require("ActionInterface")
9
11
  local Door = require("Door")
10
- local Window = require("Window")
11
12
  local OpenableInterface = require("OpenableInterface")
12
- local ActionInterface = require("ActionInterface")
13
- local Action = require("Action")
13
+ local Window = require("Window")
14
14
 
15
15
  local DO_DOOR_WINDOW_TEST = false
16
16
 
@@ -36,7 +36,6 @@ if DO_DOOR_WINDOW_TEST then
36
36
  print("door:ObserveIsImplemented()", isImplemented)
37
37
  end)
38
38
 
39
-
40
39
  doorInterface:PromiseOpen():Then(function()
41
40
  print("Opened")
42
41
  end)
@@ -57,7 +56,6 @@ if DO_DOOR_WINDOW_TEST then
57
56
  end)
58
57
  end
59
58
 
60
-
61
59
  local adornee = Instance.new("Folder")
62
60
  adornee.Name = "Adornee"
63
61
  adornee.Parent = workspace
@@ -157,4 +155,4 @@ end
157
155
  -- action.Parent = nil
158
156
  -- task.wait(0.1)
159
157
 
160
- -- action.Parent = adornee
158
+ -- action.Parent = adornee