BundleSurface.link# function · packages/bundle-surface/src/index.ts:42
link < Root , Value , const Tag extends string , ChildMessage >(
ref: FieldRef < Root , Value >,
wrapper: Wrapper < Tag , ChildMessage >,
options?: {
readonly when ?: ( parent: Root ) => boolean
},
): Link < Root , Wrapped < Tag , ChildMessage >, Value , ChildMessage , string > A Link from a Surface field ref: App.model.search. The contract of a
placement through it names the ref's application, so placing a child through
another application's ref is a foreign-contract finding.
BundleSurface.contract# function · packages/bundle-surface/src/index.ts:62
contract<
Root,
F extends Schema. Struct. Fields,
Cases extends Record< string, Schema. Struct. Fields> ,
> (
app: AppScope< Root, F, Cases> ,
placement: AnyPlacement,
): Contract The contract of one placement or collection: it owns its Model path and names
the parent Message tags its Messages travel under.
BundleSurface.module# function · packages/bundle-surface/src/index.ts:81
module <
Root,
F extends Schema. Struct. Fields,
Cases extends Record< string, Schema. Struct. Fields> ,
> (
app: AppScope< Root, F, Cases> ,
assembly: AssemblyItems,
items?: readonly ModuleItem< Root> [],
): Module< Root, F, Cases> A Module of an assembly's placements and wiring, plus any other contracts of the application.
BundleSurface.parent# function · packages/bundle-surface/src/index.ts:101
parent < Root , F extends Schema . Struct . Fields , Cases extends Record < string , Schema . Struct . Fields > >( app: AppScope < Root , F , Cases >) : { module : ( assembly: AssemblyItems , items?: readonly ModuleItem < Root > []) => Module < Root , F , Cases >; Model: Schema . Codec < Root , unknown , never , never >; Message: Schema . Codec < Schema . Schema . Type < MessageUnion < Cases >> & AnyMessage , unknown , never , never >; withServices : < S >() => Bundle . Parent < Root , Schema . Schema . Type < MessageUnion < Cases >> & AnyMessage , S >; at : < B extends Bundle . AnyBundle , const Field extends FieldsHolding < Root , Bundle . BundleParts < B > ["Model" ]>, OutStepMessage = never , R2 = never >( declared: Bundle . Declared < B , Field >, ... config: Bundle . PlaceConfigParam < Bundle . BundleParts < B > ["Args" ], Root , Wrapped < `Got${Capitalize<Field>}Message` , Bundle . BundleParts < B > ["Message" ]>, Bundle . BundleParts < B > ["Message" ], Bundle . BundleParts < B > ["OutMessage" ], OutStepMessage , R2 , Omit < Root , Field >> & VariantCheck < Wrapped < `Got${Capitalize<Field>}Message` , Bundle . BundleParts < B > ["Message" ]>, Schema . Schema . Type < MessageUnion < Cases >> & AnyMessage >) => PlacedBy < B , Root , Wrapped < `Got${Capitalize<Field>}Message` , Bundle . BundleParts < B > ["Message" ]>, OutStepMessage , R2 , Field >; place : < B extends Bundle . AnyBundle , const Field extends FieldsHolding < Root , Bundle . BundleParts < B > ["Model" ]>, OutStepMessage = never , R2 = never >( bundle: B , field: Field , ... config: Bundle . PlaceConfigParam < Bundle . BundleParts < B > ["Args" ], Root , Wrapped < `Got${Capitalize<Field>}Message` , Bundle . BundleParts < B > ["Message" ]>, Bundle . BundleParts < B > ["Message" ], Bundle . BundleParts < B > ["OutMessage" ], OutStepMessage , R2 , Omit < Root , Field >> & Variant …;The parent scope of foldkit-bundle , built from a Surface application, with
module bound to it: const Page = BundleSurface.parent(App).