Package layout
Directory structure of storageitsolutions/api-tables
src/
├── APIsTablesServiceProvider.php # Laravel bootstrap
├── APITablesService.php # Table resolution & queries
├── api-tables-config.php # Default config (publishable)
├── Abstracts/
│ ├── TableAbstract.php # Core table base class
│ ├── TblColumnAbstract.php
│ └── TblFilterAbstract.php
├── Actions/
│ ├── BulkActions/TableBulkAction.php
│ └── RowActions/TableRowAction.php
├── Columns/ # 10 column type classes
├── Commands/ # Artisan commands
├── Enums/ # Filters, actions, operators
├── Events/EmailReportRequired.php
├── Exports/GeneralExport.php
├── Filters/ # 8 filter type classes
├── Helpers/ApiTableHelper.php # Global helpers (autoloaded)
├── Http/
│ ├── Controllers/APITablesController.php
│ ├── TablesMiddleware.php
│ └── Resources/
├── Interfaces/
├── Listeners/SendEmailReport.php
├── Mail/NewReportEmail.php
├── ReportingService.php
├── routes/routes.php
├── Services/OctaneDetector.php
├── stubs/api-table.stub
├── Traits/
└── lang/en|ar/Key entry points
| File | Role |
|---|---|
TableAbstract | Extend this in your app for each table |
APITablesController | All HTTP endpoints |
TablesMiddleware | Per-table middleware resolution |
GeneralExport | Default Excel export class |
See Package map for a complete file listing.