<?php
/**
 * ANCP Core - payload bootstrap.
 *
 * The versioned file list for THIS payload. Required by the shared loader
 * (AncestorPress\Core\Loader) once version negotiation has picked the winning
 * bundle; every core class this payload ships is loaded here. New core files
 * are added HERE, never to the frozen loader, so any bundle's loader copy can
 * always boot a newer payload correctly.
 *
 * @package AncestorPress\Core
 * @since   0.15.0
 */

if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

$ancestorpress_boot_dir = __DIR__;

require_once $ancestorpress_boot_dir . '/class-table-map.php';
require_once $ancestorpress_boot_dir . '/class-migrator.php';
require_once $ancestorpress_boot_dir . '/class-schema.php';
require_once $ancestorpress_boot_dir . '/class-core.php';
require_once $ancestorpress_boot_dir . '/class-dates.php';

// Core data-access layer: the shared AncestorPress family-history data API
// used across the plugin suite. Every suite plugin invokes these same
// AncestorPress\Core classes on the one booted core. Tables first (the base
// the other classes call), then the per-table classes.
require_once $ancestorpress_boot_dir . '/db/class-tables.php';
require_once $ancestorpress_boot_dir . '/db/class-trees-table.php';
require_once $ancestorpress_boot_dir . '/db/class-people-table.php';
require_once $ancestorpress_boot_dir . '/db/class-people-table-search.php';
require_once $ancestorpress_boot_dir . '/db/class-names-table.php';
require_once $ancestorpress_boot_dir . '/db/class-families-table.php';
require_once $ancestorpress_boot_dir . '/db/class-children-table.php';
require_once $ancestorpress_boot_dir . '/db/class-events-table.php';
require_once $ancestorpress_boot_dir . '/db/class-event-types-table.php';
require_once $ancestorpress_boot_dir . '/db/class-places-table.php';
require_once $ancestorpress_boot_dir . '/db/class-notes-table.php';
require_once $ancestorpress_boot_dir . '/db/class-note-links-table.php';
require_once $ancestorpress_boot_dir . '/db/class-profile-images-table.php';
require_once $ancestorpress_boot_dir . '/db/class-media.php';
require_once $ancestorpress_boot_dir . '/db/class-occurrences-table.php';
require_once $ancestorpress_boot_dir . '/db/class-record-sets-table.php';
require_once $ancestorpress_boot_dir . '/db/class-import-maps-table.php';
require_once $ancestorpress_boot_dir . '/db/class-candidates-table.php';
require_once $ancestorpress_boot_dir . '/db/class-judgements-table.php';
require_once $ancestorpress_boot_dir . '/db/class-interests-table.php';
require_once $ancestorpress_boot_dir . '/db/class-field-defs-table.php';
require_once $ancestorpress_boot_dir . '/db/class-field-values-table.php';
require_once $ancestorpress_boot_dir . '/db/class-repositories-table.php';
require_once $ancestorpress_boot_dir . '/db/class-sources-table.php';
require_once $ancestorpress_boot_dir . '/db/class-citations-table.php';
require_once $ancestorpress_boot_dir . '/db/class-branches-table.php';

// GEDCOM import + export are core services and load unconditionally, the
// same way, in every build. php-gedcom is bundled in ancp-core/lib/; the
// importer registers its autoloader, which the exporter also uses.
require_once dirname( $ancestorpress_boot_dir ) . '/gedcom/class-gedcom-importer.php';
require_once dirname( $ancestorpress_boot_dir ) . '/gedcom/class-gedcom-exporter.php';

unset( $ancestorpress_boot_dir );
