public function getSchemaStateDefaults()
 {
     $state = parent::getSchemaStateDefaults();
     $state['data']['files'] = $this->getEncodedItems();
     $state['value'] = $this->Value() ?: ['Files' => []];
     return $state;
 }
 public function getSchemaStateDefaults()
 {
     $data = parent::getSchemaStateDefaults();
     $disabled = $this->getDisabledItems();
     // Add options to 'data'
     $source = $this->getSource();
     $data['source'] = is_array($source) ? array_map(function ($value, $title) use($disabled) {
         return ['value' => $value, 'title' => $title, 'disabled' => in_array($value, $disabled)];
     }, array_keys($source), $source) : [];
     return $data;
 }
 public function getSchemaStateDefaults()
 {
     $state = parent::getSchemaStateDefaults();
     if ($record = $this->getRecord()) {
         $latest = Versioned::get_latest_version($record->baseClass(), $record->ID);
         if ($latest) {
             $state['data']['fileId'] = $latest->ID;
             $state['data']['latestVersionId'] = $latest->Version;
         }
     }
     return $state;
 }