Page Menu
Home
Sealhub
Search
Configure Global Search
Log In
Files
F7317162
collection-item-body.ts
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
1 KB
Referenced Files
None
Subscribers
None
collection-item-body.ts
View Options
import
type
Collection
from
"./collection"
;
import
type
{
FieldsetEncoded
,
FieldsetInput
,
FieldsetOutput
}
from
"../main"
;
import
type
{
FieldOutput
,
RequiredField
}
from
"./field"
;
import
{
Fieldset
}
from
"./fieldset"
;
import
type
{
CollectionOutput
}
from
"./collection"
;
export
type
FieldNames
<
T
extends
Collection
>
=
keyof
T
[
"fields"
]
&
string
;
export
type
ItemFieldsOutput
<
T
extends
Collection
>
=
{
[
field
in
FieldNames
<
T
>
]
:
FieldOutput
<
T
[
"fields"
][
field
]
>
;
};
export
default
class
CollectionItemBody
<
T
extends
Collection
=
any
>
extends
Fieldset
<
T
[
"fields"
]
>
{
constructor
(
public
collection
:
T
,
public
raw_input
:
Partial
<
FieldsetInput
<
T
[
"fields"
]
>>
=
{},
public
decoded
:
Partial
<
FieldsetOutput
<
T
[
"fields"
]
>>
=
{},
public
encoded
:
Partial
<
FieldsetEncoded
<
T
[
"fields"
]
>>
=
{}
)
{
super
(
collection
.
fields
,
raw_input
,
decoded
,
encoded
);
}
copy
()
:
CollectionItemBody
<
T
>
{
return
new
CollectionItemBody
<
T
>
(
this
.
collection
,
{
...
this
.
raw_input
},
{
...
this
.
decoded
},
{
...
this
.
encoded
}
);
}
static
empty
<
C
extends
Collection
>
(
collection
:
C
)
:
CollectionItemBody
<
C
>
{
return
new
CollectionItemBody
<
C
>
(
collection
,
{},
{},
{});
}
static
fromDecoded
<
C
extends
Collection
>
(
collection
:
C
,
decoded
:
Partial
<
CollectionOutput
<
C
>>
)
{
return
new
CollectionItemBody
<
C
>
(
collection
,
{},
decoded
,
{});
}
}
File Metadata
Details
Attached
Mime Type
text/x-java
Expires
Sun, Jul 13, 04:26 (16 h, 9 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
801642
Default Alt Text
collection-item-body.ts (1 KB)
Attached To
Mode
rS Sealious
Attached
Detach File
Event Timeline
Log In to Comment