Mixins / foldkit-mixins-ui

DatePickerSlots

const · packages/mixins-ui/src/datePicker.ts:18

const DatePickerSlots: Slots.Contract<{
  readonly trigger: Slot.UnnamedSlot<
    Capability.Capability<
      'Interactive',
      readonly [Capability.Capability<'Base', readonly []>]
    >,
    readonly [Event.EventToken<'click'>],
    readonly [Attr.AttrToken<'aria-expanded'>],
    readonly Slot.RequirementName[],
    boolean
  >
  readonly panel: Slot.UnnamedSlot<
    Capability.Capability<
      'Container',
      readonly [
        Capability.Capability<
          'Interactive',
          readonly [Capability.Capability<'Base', readonly []>]
        >,
      ]
    >,
    readonly Slot.EventName[],
    readonly Slot.AttributeName[],
    readonly Slot.RequirementName[],
    boolean
  >
  readonly backdrop: Slot.UnnamedSlot<
    Capability.Capability<
      'Container',
      readonly [
        Capability.Capability<
          'Interactive',
          readonly [Capability.Capability<'Base', readonly []>]
        >,
      ]
    >,
    readonly [Event.EventToken<'click'>],
    readonly Slot.AttributeName[],
    readonly Slot.RequirementName[],
    boolean
  >
}>

DatePicker is a small composed Submodel: a trigger button plus a panel/backdrop pair around the embedded calendar. The resolver runs once per bundle and each base attribute passes through by identity. The wrapper and hidden form inputs are drawn outside the popover assembly and pass through untouched.

The trigger owns click while enabled. A Behavior adding its own handler is a conflict, not a second silent owner. The backdrop owns click while the popover shows it.