@kabel-project/kabel 1.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.
Files changed (152) hide show
  1. package/(1.0.7)kabel.md +18 -0
  2. package/README.md +96 -0
  3. package/_READ_ME_MEDIA_/documentation/docs.md +293 -0
  4. package/_READ_ME_MEDIA_/workspace.png +0 -0
  5. package/comment-renderer/renderer.ts +228 -0
  6. package/controllers/base.ts +186 -0
  7. package/controllers/wasd.ts +132 -0
  8. package/docs/README.md +98 -0
  9. package/docs/_media/docs.md +289 -0
  10. package/docs/_media/index.html +168 -0
  11. package/docs/_media/workspace.png +0 -0
  12. package/docs/classes/CommentModel.md +271 -0
  13. package/docs/classes/CommentRenderer.md +457 -0
  14. package/docs/classes/ConnectableField.md +597 -0
  15. package/docs/classes/Connection.md +191 -0
  16. package/docs/classes/ContextMenuHTML.md +163 -0
  17. package/docs/classes/Coordinates.md +187 -0
  18. package/docs/classes/DropdownContainer.md +300 -0
  19. package/docs/classes/DummyField.md +393 -0
  20. package/docs/classes/Eventer.md +185 -0
  21. package/docs/classes/Field.md +461 -0
  22. package/docs/classes/InjectMsg.md +85 -0
  23. package/docs/classes/NodeSvg.md +1011 -0
  24. package/docs/classes/NumberField.md +559 -0
  25. package/docs/classes/OptConnectField.md +624 -0
  26. package/docs/classes/Renderer.md +1636 -0
  27. package/docs/classes/RendererConstants.md +343 -0
  28. package/docs/classes/Representer.md +95 -0
  29. package/docs/classes/RepresenterNode.md +175 -0
  30. package/docs/classes/TextField.md +559 -0
  31. package/docs/classes/Toolbox.md +172 -0
  32. package/docs/classes/WASDController.md +616 -0
  33. package/docs/classes/Widget.md +195 -0
  34. package/docs/classes/WorkspaceController.md +385 -0
  35. package/docs/classes/WorkspaceCoords.md +218 -0
  36. package/docs/classes/WorkspaceSvg.md +1380 -0
  37. package/docs/functions/clearMainWorkspace.md +20 -0
  38. package/docs/functions/getMainWorkspace.md +19 -0
  39. package/docs/functions/inject.md +35 -0
  40. package/docs/functions/setMainWorkspace.md +28 -0
  41. package/docs/globals.md +95 -0
  42. package/docs/interfaces/ColorStyle.md +43 -0
  43. package/docs/interfaces/ConnectorToFrom.md +57 -0
  44. package/docs/interfaces/DrawState.md +81 -0
  45. package/docs/interfaces/FieldConnectionData.md +25 -0
  46. package/docs/interfaces/FieldOptions.md +63 -0
  47. package/docs/interfaces/FieldRawBoxData.md +25 -0
  48. package/docs/interfaces/FieldVisualInfo.md +65 -0
  49. package/docs/interfaces/GridOptions.md +61 -0
  50. package/docs/interfaces/InjectOptions.md +133 -0
  51. package/docs/interfaces/InputFieldJson.md +50 -0
  52. package/docs/interfaces/KabelCommentRendering.md +31 -0
  53. package/docs/interfaces/KabelInterface.md +469 -0
  54. package/docs/interfaces/KabelNodeRendering.md +77 -0
  55. package/docs/interfaces/KabelUIX.md +105 -0
  56. package/docs/interfaces/KabelUtils.md +215 -0
  57. package/docs/interfaces/NodeEvents.md +42 -0
  58. package/docs/interfaces/NodeJson.md +104 -0
  59. package/docs/interfaces/NodePrototype.md +82 -0
  60. package/docs/interfaces/RegisteredEl.md +53 -0
  61. package/docs/interfaces/SerializedNode.md +128 -0
  62. package/docs/interfaces/TblxCategoryStruct.md +41 -0
  63. package/docs/interfaces/TblxFieldStruct.md +28 -0
  64. package/docs/interfaces/TblxNodeStruct.md +35 -0
  65. package/docs/interfaces/WidgetOptions.md +115 -0
  66. package/docs/interfaces/WidgetPrototypeList.md +15 -0
  67. package/docs/type-aliases/AnyField.md +13 -0
  68. package/docs/type-aliases/AnyFieldCls.md +13 -0
  69. package/docs/type-aliases/Color.md +13 -0
  70. package/docs/type-aliases/Connectable.md +13 -0
  71. package/docs/type-aliases/EventArgs.md +11 -0
  72. package/docs/type-aliases/EventSetupFn.md +25 -0
  73. package/docs/type-aliases/Hex.md +13 -0
  74. package/docs/type-aliases/RGBObject.md +37 -0
  75. package/docs/type-aliases/RGBString.md +13 -0
  76. package/docs/type-aliases/RGBTuple.md +13 -0
  77. package/docs/type-aliases/TblxObjStruct.md +52 -0
  78. package/docs/variables/CategoryColors.md +29 -0
  79. package/docs/variables/FieldMap.md +41 -0
  80. package/docs/variables/NodePrototypes.md +18 -0
  81. package/docs/variables/default.md +11 -0
  82. package/events/comment-drag-handle.ts +61 -0
  83. package/events/comment-input.ts +291 -0
  84. package/events/connection-line.ts +68 -0
  85. package/events/connector.ts +116 -0
  86. package/events/draggable.ts +119 -0
  87. package/events/events.ts +7 -0
  88. package/events/input-box.ts +213 -0
  89. package/events/node-x-btn.ts +25 -0
  90. package/index.d.ts +4 -0
  91. package/package.json +49 -0
  92. package/renderers/apollo/apollo.ts +21 -0
  93. package/renderers/apollo/constants.ts +40 -0
  94. package/renderers/apollo/renderer.ts +331 -0
  95. package/renderers/atlas/atlas.ts +15 -0
  96. package/renderers/constants.ts +87 -0
  97. package/renderers/renderer.ts +1288 -0
  98. package/renderers/representer-node.ts +52 -0
  99. package/renderers/representer.ts +25 -0
  100. package/src/category.ts +107 -0
  101. package/src/colors.ts +20 -0
  102. package/src/comment.ts +142 -0
  103. package/src/connection.ts +114 -0
  104. package/src/context-menu.ts +194 -0
  105. package/src/coordinates.ts +74 -0
  106. package/src/core.ts +202 -0
  107. package/src/ctx-menu-registry.ts +143 -0
  108. package/src/dropdown-menu.ts +215 -0
  109. package/src/field.ts +595 -0
  110. package/src/flyout.ts +165 -0
  111. package/src/fonts-manager.ts +38 -0
  112. package/src/grid.ts +162 -0
  113. package/src/headless-node.ts +27 -0
  114. package/src/index.ts +115 -0
  115. package/src/inject-headless.ts +18 -0
  116. package/src/inject.ts +213 -0
  117. package/src/main-workspace.ts +51 -0
  118. package/src/mutator.ts +40 -0
  119. package/src/node-types.ts +27 -0
  120. package/src/nodesvg.ts +756 -0
  121. package/src/prototypes.ts +9 -0
  122. package/src/renderer-map.ts +86 -0
  123. package/src/styles.css +224 -0
  124. package/src/toolbox.ts +125 -0
  125. package/src/types.ts +205 -0
  126. package/src/undo-redo.ts +87 -0
  127. package/src/visual-types.ts +29 -0
  128. package/src/widget-prototypes.ts +11 -0
  129. package/src/widget.ts +139 -0
  130. package/src/workspace-coords.ts +14 -0
  131. package/src/workspace-svg.ts +736 -0
  132. package/src/workspace.ts +155 -0
  133. package/test-server.js +61 -0
  134. package/themes/dark.ts +32 -0
  135. package/themes/default.ts +28 -0
  136. package/themes/themes.ts +9 -0
  137. package/tsconfig.json +25 -0
  138. package/typedoc.json +10 -0
  139. package/util/emitter.ts +33 -0
  140. package/util/env.ts +11 -0
  141. package/util/escape-html.ts +22 -0
  142. package/util/eventer.ts +108 -0
  143. package/util/has-prop.ts +4 -0
  144. package/util/parse-color.ts +42 -0
  145. package/util/path.ts +99 -0
  146. package/util/styler.ts +41 -0
  147. package/util/uid.ts +184 -0
  148. package/util/unescape-html.ts +22 -0
  149. package/util/user-state.ts +68 -0
  150. package/util/wait-anim-frames.ts +24 -0
  151. package/util/window-listeners.ts +62 -0
  152. package/webpack.config.js +80 -0
@@ -0,0 +1,597 @@
1
+ [**Kabel Project Docs v1.0.6**](../README.md)
2
+
3
+ ***
4
+
5
+ [Kabel Project Docs](../globals.md) / ConnectableField
6
+
7
+ # Class: ConnectableField\<T\>
8
+
9
+ Defined in: [src/field.ts:297](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L297)
10
+
11
+ Base class for fields that can be connected to other fields.
12
+
13
+ ## Extends
14
+
15
+ - [`Field`](Field.md)\<`T`\>
16
+
17
+ ## Extended by
18
+
19
+ - [`OptConnectField`](OptConnectField.md)
20
+
21
+ ## Type Parameters
22
+
23
+ ### T
24
+
25
+ `T` = `any`
26
+
27
+ The type of the value stored in the field
28
+
29
+ ## Constructors
30
+
31
+ ### Constructor
32
+
33
+ > **new ConnectableField**\<`T`\>(): `ConnectableField`\<`T`\>
34
+
35
+ Defined in: [src/field.ts:300](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L300)
36
+
37
+ #### Returns
38
+
39
+ `ConnectableField`\<`T`\>
40
+
41
+ #### Overrides
42
+
43
+ [`Field`](Field.md).[`constructor`](Field.md#constructor)
44
+
45
+ ## Properties
46
+
47
+ ### connection
48
+
49
+ > **connection**: [`Connection`](Connection.md)
50
+
51
+ Defined in: [src/field.ts:298](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L298)
52
+
53
+ ***
54
+
55
+ ### editable
56
+
57
+ > **editable**: `boolean`
58
+
59
+ Defined in: [src/field.ts:49](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L49)
60
+
61
+ #### Inherited from
62
+
63
+ [`Field`](Field.md).[`editable`](Field.md#editable)
64
+
65
+ ***
66
+
67
+ ### label
68
+
69
+ > **label**: `string`
70
+
71
+ Defined in: [src/field.ts:45](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L45)
72
+
73
+ #### Inherited from
74
+
75
+ [`Field`](Field.md).[`label`](Field.md#label)
76
+
77
+ ***
78
+
79
+ ### name
80
+
81
+ > **name**: `string`
82
+
83
+ Defined in: [src/field.ts:46](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L46)
84
+
85
+ #### Inherited from
86
+
87
+ [`Field`](Field.md).[`name`](Field.md#name)
88
+
89
+ ***
90
+
91
+ ### node?
92
+
93
+ > `optional` **node**: [`NodeSvg`](NodeSvg.md)
94
+
95
+ Defined in: [src/field.ts:48](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L48)
96
+
97
+ #### Inherited from
98
+
99
+ [`Field`](Field.md).[`node`](Field.md#node)
100
+
101
+ ***
102
+
103
+ ### svgGroup?
104
+
105
+ > `optional` **svgGroup**: `G`
106
+
107
+ Defined in: [src/field.ts:50](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L50)
108
+
109
+ #### Inherited from
110
+
111
+ [`Field`](Field.md).[`svgGroup`](Field.md#svggroup)
112
+
113
+ ***
114
+
115
+ ### type
116
+
117
+ > **type**: `string`
118
+
119
+ Defined in: [src/field.ts:47](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L47)
120
+
121
+ #### Inherited from
122
+
123
+ [`Field`](Field.md).[`type`](Field.md#type)
124
+
125
+ ***
126
+
127
+ ### value
128
+
129
+ > `protected` **value**: `T` \| `null`
130
+
131
+ Defined in: [src/field.ts:51](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L51)
132
+
133
+ #### Inherited from
134
+
135
+ [`Field`](Field.md).[`value`](Field.md#value)
136
+
137
+ ## Methods
138
+
139
+ ### canEdit()
140
+
141
+ > **canEdit**(): `boolean`
142
+
143
+ Defined in: [src/field.ts:80](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L80)
144
+
145
+ Ask whether or not we can edit this field.
146
+
147
+ #### Returns
148
+
149
+ `boolean`
150
+
151
+ #### Inherited from
152
+
153
+ [`Field`](Field.md).[`canEdit`](Field.md#canedit)
154
+
155
+ ***
156
+
157
+ ### canEditConnector()
158
+
159
+ > **canEditConnector**(): `boolean`
160
+
161
+ Defined in: [src/field.ts:64](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L64)
162
+
163
+ #### Returns
164
+
165
+ `boolean`
166
+
167
+ #### Inherited from
168
+
169
+ [`Field`](Field.md).[`canEditConnector`](Field.md#caneditconnector)
170
+
171
+ ***
172
+
173
+ ### disconnect()
174
+
175
+ > **disconnect**(): `void`
176
+
177
+ Defined in: [src/field.ts:314](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L314)
178
+
179
+ Disconnect this field from any connected Connectable
180
+
181
+ #### Returns
182
+
183
+ `void`
184
+
185
+ ***
186
+
187
+ ### drawMyself()
188
+
189
+ > **drawMyself**(`fieldVisualInfo`): `void`
190
+
191
+ Defined in: [src/field.ts:139](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L139)
192
+
193
+ Make the input's custom look.
194
+
195
+ #### Parameters
196
+
197
+ ##### fieldVisualInfo
198
+
199
+ [`FieldVisualInfo`](../interfaces/FieldVisualInfo.md)
200
+
201
+ The visual info of the field, mutate this if needed.
202
+
203
+ #### Returns
204
+
205
+ `void`
206
+
207
+ #### Inherited from
208
+
209
+ [`Field`](Field.md).[`drawMyself`](Field.md#drawmyself)
210
+
211
+ ***
212
+
213
+ ### fromJson()
214
+
215
+ > **fromJson**(`json`, `workspace?`): `ConnectableField`\<`T`\>
216
+
217
+ Defined in: [src/field.ts:321](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L321)
218
+
219
+ Initialize the field from JSON options.
220
+
221
+ #### Parameters
222
+
223
+ ##### json
224
+
225
+ [`FieldOptions`](../interfaces/FieldOptions.md)
226
+
227
+ FieldOptions object
228
+
229
+ ##### workspace?
230
+
231
+ [`WorkspaceSvg`](WorkspaceSvg.md)
232
+
233
+ #### Returns
234
+
235
+ `ConnectableField`\<`T`\>
236
+
237
+ #### Overrides
238
+
239
+ [`Field`](Field.md).[`fromJson`](Field.md#fromjson)
240
+
241
+ ***
242
+
243
+ ### getDisplayValue()
244
+
245
+ > **getDisplayValue**(): `T` \| `null`
246
+
247
+ Defined in: [src/field.ts:160](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L160)
248
+
249
+ #### Returns
250
+
251
+ `T` \| `null`
252
+
253
+ The value as it should be displayed (can differ from internal value)
254
+
255
+ #### Inherited from
256
+
257
+ [`Field`](Field.md).[`getDisplayValue`](Field.md#getdisplayvalue)
258
+
259
+ ***
260
+
261
+ ### getLabel()
262
+
263
+ > **getLabel**(): `string`
264
+
265
+ Defined in: [src/field.ts:109](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L109)
266
+
267
+ #### Returns
268
+
269
+ `string`
270
+
271
+ The human-readable label
272
+
273
+ #### Inherited from
274
+
275
+ [`Field`](Field.md).[`getLabel`](Field.md#getlabel)
276
+
277
+ ***
278
+
279
+ ### getName()
280
+
281
+ > **getName**(): `string`
282
+
283
+ Defined in: [src/field.ts:104](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L104)
284
+
285
+ #### Returns
286
+
287
+ `string`
288
+
289
+ The field's name/key
290
+
291
+ #### Inherited from
292
+
293
+ [`Field`](Field.md).[`getName`](Field.md#getname)
294
+
295
+ ***
296
+
297
+ ### getValue()
298
+
299
+ > **getValue**(): `T` \| `null`
300
+
301
+ Defined in: [src/field.ts:147](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L147)
302
+
303
+ #### Returns
304
+
305
+ `T` \| `null`
306
+
307
+ The stored value
308
+
309
+ #### Inherited from
310
+
311
+ [`Field`](Field.md).[`getValue`](Field.md#getvalue)
312
+
313
+ ***
314
+
315
+ ### hasConnectable()
316
+
317
+ > **hasConnectable**(): `boolean`
318
+
319
+ Defined in: [src/field.ts:305](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L305)
320
+
321
+ #### Returns
322
+
323
+ `boolean`
324
+
325
+ Whether this field supports connections
326
+
327
+ #### Overrides
328
+
329
+ [`Field`](Field.md).[`hasConnectable`](Field.md#hasconnectable)
330
+
331
+ ***
332
+
333
+ ### hasRaw()
334
+
335
+ > **hasRaw**(): `boolean`
336
+
337
+ Defined in: [src/field.ts:309](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L309)
338
+
339
+ #### Returns
340
+
341
+ `boolean`
342
+
343
+ Whether this field is a raw value field (text/number)
344
+
345
+ #### Overrides
346
+
347
+ [`Field`](Field.md).[`hasRaw`](Field.md#hasraw)
348
+
349
+ ***
350
+
351
+ ### isCustomEditor()
352
+
353
+ > **isCustomEditor**(): `boolean`
354
+
355
+ Defined in: [src/field.ts:132](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L132)
356
+
357
+ #### Returns
358
+
359
+ `boolean`
360
+
361
+ Whether we have a custom editor/input look
362
+
363
+ #### Inherited from
364
+
365
+ [`Field`](Field.md).[`isCustomEditor`](Field.md#iscustomeditor)
366
+
367
+ ***
368
+
369
+ ### measureMyself()
370
+
371
+ > **measureMyself**(): `object`
372
+
373
+ Defined in: [src/field.ts:143](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L143)
374
+
375
+ Return width & height of your field's custom editor
376
+
377
+ #### Returns
378
+
379
+ `object`
380
+
381
+ ##### height
382
+
383
+ > **height**: `null` = `null`
384
+
385
+ ##### width
386
+
387
+ > **width**: `null` = `null`
388
+
389
+ #### Inherited from
390
+
391
+ [`Field`](Field.md).[`measureMyself`](Field.md#measuremyself)
392
+
393
+ ***
394
+
395
+ ### onDraw()
396
+
397
+ > **onDraw**(`rawBox?`, `connectionBubble?`): `void`
398
+
399
+ Defined in: [src/field.ts:61](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L61)
400
+
401
+ #### Parameters
402
+
403
+ ##### rawBox?
404
+
405
+ [`FieldRawBoxData`](../interfaces/FieldRawBoxData.md)
406
+
407
+ ##### connectionBubble?
408
+
409
+ [`FieldConnectionData`](../interfaces/FieldConnectionData.md)
410
+
411
+ #### Returns
412
+
413
+ `void`
414
+
415
+ #### Inherited from
416
+
417
+ [`Field`](Field.md).[`onDraw`](Field.md#ondraw)
418
+
419
+ ***
420
+
421
+ ### setEditable()
422
+
423
+ > **setEditable**(`val`): `void`
424
+
425
+ Defined in: [src/field.ts:71](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L71)
426
+
427
+ Set whether or not you can edit this field.
428
+
429
+ #### Parameters
430
+
431
+ ##### val
432
+
433
+ `boolean`
434
+
435
+ The value to set to.
436
+
437
+ #### Returns
438
+
439
+ `void`
440
+
441
+ #### Inherited from
442
+
443
+ [`Field`](Field.md).[`setEditable`](Field.md#seteditable)
444
+
445
+ ***
446
+
447
+ ### setLabel()
448
+
449
+ > **setLabel**(`label`): `string`
450
+
451
+ Defined in: [src/field.ts:118](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L118)
452
+
453
+ Set the human-readable label
454
+
455
+ #### Parameters
456
+
457
+ ##### label
458
+
459
+ `string`
460
+
461
+ New label
462
+
463
+ #### Returns
464
+
465
+ `string`
466
+
467
+ The updated label
468
+
469
+ #### Inherited from
470
+
471
+ [`Field`](Field.md).[`setLabel`](Field.md#setlabel)
472
+
473
+ ***
474
+
475
+ ### setName()
476
+
477
+ > **setName**(`name`): `string`
478
+
479
+ Defined in: [src/field.ts:88](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L88)
480
+
481
+ Set field name to something else.
482
+
483
+ #### Parameters
484
+
485
+ ##### name
486
+
487
+ `string`
488
+
489
+ string
490
+
491
+ #### Returns
492
+
493
+ `string`
494
+
495
+ the new name.
496
+
497
+ #### Inherited from
498
+
499
+ [`Field`](Field.md).[`setName`](Field.md#setname)
500
+
501
+ ***
502
+
503
+ ### setValue()
504
+
505
+ > **setValue**(`val`): `void`
506
+
507
+ Defined in: [src/field.ts:155](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L155)
508
+
509
+ Set the stored value
510
+
511
+ #### Parameters
512
+
513
+ ##### val
514
+
515
+ `T`
516
+
517
+ New value
518
+
519
+ #### Returns
520
+
521
+ `void`
522
+
523
+ #### Inherited from
524
+
525
+ [`Field`](Field.md).[`setValue`](Field.md#setvalue)
526
+
527
+ ***
528
+
529
+ ### toJson()
530
+
531
+ > **toJson**(`deep`, `alreadyProcessed`): [`FieldOptions`](../interfaces/FieldOptions.md)
532
+
533
+ Defined in: [src/field.ts:337](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L337)
534
+
535
+ #### Parameters
536
+
537
+ ##### deep
538
+
539
+ `boolean`
540
+
541
+ ##### alreadyProcessed
542
+
543
+ #### Returns
544
+
545
+ [`FieldOptions`](../interfaces/FieldOptions.md)
546
+
547
+ #### Overrides
548
+
549
+ [`Field`](Field.md).[`toJson`](Field.md#tojson)
550
+
551
+ ***
552
+
553
+ ### register()
554
+
555
+ > `static` **register**(`name`, `cls`): `void`
556
+
557
+ Defined in: [src/field.ts:52](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L52)
558
+
559
+ #### Parameters
560
+
561
+ ##### name
562
+
563
+ `string`
564
+
565
+ ##### cls
566
+
567
+ `Function`
568
+
569
+ #### Returns
570
+
571
+ `void`
572
+
573
+ #### Inherited from
574
+
575
+ [`Field`](Field.md).[`register`](Field.md#register)
576
+
577
+ ***
578
+
579
+ ### unregister()
580
+
581
+ > `static` **unregister**(`name`): `void`
582
+
583
+ Defined in: [src/field.ts:53](https://github.com/FentFentFent/Kabel/blob/6a658c7afa967c18ecfb5cdff24af90b7d7319c3/src/field.ts#L53)
584
+
585
+ #### Parameters
586
+
587
+ ##### name
588
+
589
+ `string`
590
+
591
+ #### Returns
592
+
593
+ `void`
594
+
595
+ #### Inherited from
596
+
597
+ [`Field`](Field.md).[`unregister`](Field.md#unregister)