mirror of https://github.com/kcal-app/kcal.git
Add IDE helper for better handling of Laravel builders
This commit is contained in:
parent
187c1a0e4a
commit
d99d49777b
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,220 @@
|
|||
<?php
|
||||
|
||||
// @formatter:off
|
||||
/**
|
||||
* A helper file for your Eloquent Models
|
||||
* Copy the phpDocs from this file to the correct Model,
|
||||
* And remove them from this file, to prevent double declarations.
|
||||
*
|
||||
* @author Barry vd. Heuvel <barryvdh@gmail.com>
|
||||
*/
|
||||
|
||||
|
||||
namespace App\Models{
|
||||
/**
|
||||
* App\Models\Food
|
||||
*
|
||||
* @mixin IdeHelperFood
|
||||
* @property int $id
|
||||
* @property string $name
|
||||
* @property string $slug
|
||||
* @property string|null $detail
|
||||
* @property string|null $brand
|
||||
* @property float $serving_size
|
||||
* @property string|null $serving_unit
|
||||
* @property float $serving_weight
|
||||
* @property float $calories
|
||||
* @property float $fat
|
||||
* @property float $cholesterol
|
||||
* @property float $sodium
|
||||
* @property float $carbohydrates
|
||||
* @property float $protein
|
||||
* @property \Illuminate\Support\Carbon|null $created_at
|
||||
* @property \Illuminate\Support\Carbon|null $updated_at
|
||||
* @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\JournalEntry[] $journalEntries
|
||||
* @property-read int|null $journal_entries_count
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food findSimilarSlugs(string $attribute, array $config, string $slug)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food newModelQuery()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food newQuery()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food query()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food whereBrand($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food whereCalories($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food whereCarbohydrates($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food whereCholesterol($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food whereCreatedAt($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food whereDetail($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food whereFat($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food whereId($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food whereName($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food whereProtein($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food whereServingSize($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food whereServingUnit($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food whereServingWeight($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food whereSlug($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food whereSodium($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Food whereUpdatedAt($value)
|
||||
*/
|
||||
class IdeHelperFood extends \Eloquent {}
|
||||
}
|
||||
|
||||
namespace App\Models{
|
||||
/**
|
||||
* App\Models\FoodAmount
|
||||
*
|
||||
* @mixin IdeHelperFoodAmount
|
||||
* @property int $id
|
||||
* @property int $food_id
|
||||
* @property float $amount
|
||||
* @property string|null $unit
|
||||
* @property int $recipe_id
|
||||
* @property int $weight
|
||||
* @property \Illuminate\Support\Carbon|null $created_at
|
||||
* @property \Illuminate\Support\Carbon|null $updated_at
|
||||
* @property-read \App\Models\Food $food
|
||||
* @property-read \App\Models\Recipe $recipe
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|FoodAmount newModelQuery()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|FoodAmount newQuery()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|FoodAmount query()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|FoodAmount whereAmount($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|FoodAmount whereCreatedAt($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|FoodAmount whereFoodId($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|FoodAmount whereId($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|FoodAmount whereRecipeId($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|FoodAmount whereUnit($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|FoodAmount whereUpdatedAt($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|FoodAmount whereWeight($value)
|
||||
*/
|
||||
class IdeHelperFoodAmount extends \Eloquent {}
|
||||
}
|
||||
|
||||
namespace App\Models{
|
||||
/**
|
||||
* App\Models\JournalEntry
|
||||
*
|
||||
* @mixin IdeHelperJournalEntry
|
||||
* @property int $id
|
||||
* @property int $user_id
|
||||
* @property \datetime $date
|
||||
* @property string $summary
|
||||
* @property float $calories
|
||||
* @property float $fat
|
||||
* @property float $cholesterol
|
||||
* @property float $sodium
|
||||
* @property float $carbohydrates
|
||||
* @property float $protein
|
||||
* @property string $meal
|
||||
* @property \Illuminate\Support\Carbon|null $created_at
|
||||
* @property \Illuminate\Support\Carbon|null $updated_at
|
||||
* @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\Food[] $foods
|
||||
* @property-read int|null $foods_count
|
||||
* @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\Recipe[] $recipes
|
||||
* @property-read int|null $recipes_count
|
||||
* @property-read \App\Models\User $user
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|JournalEntry newModelQuery()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|JournalEntry newQuery()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|JournalEntry query()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|JournalEntry whereCalories($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|JournalEntry whereCarbohydrates($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|JournalEntry whereCholesterol($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|JournalEntry whereCreatedAt($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|JournalEntry whereDate($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|JournalEntry whereFat($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|JournalEntry whereId($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|JournalEntry whereMeal($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|JournalEntry whereProtein($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|JournalEntry whereSodium($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|JournalEntry whereSummary($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|JournalEntry whereUpdatedAt($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|JournalEntry whereUserId($value)
|
||||
*/
|
||||
class IdeHelperJournalEntry extends \Eloquent {}
|
||||
}
|
||||
|
||||
namespace App\Models{
|
||||
/**
|
||||
* App\Models\Recipe
|
||||
*
|
||||
* @mixin IdeHelperRecipe
|
||||
* @property int $id
|
||||
* @property string $name
|
||||
* @property string $slug
|
||||
* @property string $description
|
||||
* @property int $servings
|
||||
* @property \Illuminate\Support\Carbon|null $created_at
|
||||
* @property \Illuminate\Support\Carbon|null $updated_at
|
||||
* @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\FoodAmount[] $foodAmounts
|
||||
* @property-read int|null $food_amounts_count
|
||||
* @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\JournalEntry[] $journalEntries
|
||||
* @property-read int|null $journal_entries_count
|
||||
* @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\RecipeStep[] $steps
|
||||
* @property-read int|null $steps_count
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Recipe findSimilarSlugs(string $attribute, array $config, string $slug)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Recipe newModelQuery()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Recipe newQuery()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Recipe query()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Recipe whereCreatedAt($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Recipe whereDescription($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Recipe whereId($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Recipe whereName($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Recipe whereServings($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Recipe whereSlug($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|Recipe whereUpdatedAt($value)
|
||||
*/
|
||||
class IdeHelperRecipe extends \Eloquent {}
|
||||
}
|
||||
|
||||
namespace App\Models{
|
||||
/**
|
||||
* App\Models\RecipeStep
|
||||
*
|
||||
* @mixin IdeHelperRecipeStep
|
||||
* @property int $id
|
||||
* @property int $recipe_id
|
||||
* @property int $number
|
||||
* @property string $step
|
||||
* @property \Illuminate\Support\Carbon|null $created_at
|
||||
* @property \Illuminate\Support\Carbon|null $updated_at
|
||||
* @property-read \App\Models\Recipe $recipe
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|RecipeStep newModelQuery()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|RecipeStep newQuery()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|RecipeStep query()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|RecipeStep whereCreatedAt($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|RecipeStep whereId($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|RecipeStep whereNumber($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|RecipeStep whereRecipeId($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|RecipeStep whereStep($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|RecipeStep whereUpdatedAt($value)
|
||||
*/
|
||||
class IdeHelperRecipeStep extends \Eloquent {}
|
||||
}
|
||||
|
||||
namespace App\Models{
|
||||
/**
|
||||
* App\Models\User
|
||||
*
|
||||
* @mixin IdeHelperUser
|
||||
* @property int $id
|
||||
* @property string $name
|
||||
* @property string $email
|
||||
* @property \Illuminate\Support\Carbon|null $email_verified_at
|
||||
* @property string $password
|
||||
* @property string|null $remember_token
|
||||
* @property \Illuminate\Support\Carbon|null $created_at
|
||||
* @property \Illuminate\Support\Carbon|null $updated_at
|
||||
* @property-read \Illuminate\Notifications\DatabaseNotificationCollection|\Illuminate\Notifications\DatabaseNotification[] $notifications
|
||||
* @property-read int|null $notifications_count
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|User newModelQuery()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|User newQuery()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|User query()
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|User whereCreatedAt($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|User whereEmail($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|User whereEmailVerifiedAt($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|User whereId($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|User whereName($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|User wherePassword($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|User whereRememberToken($value)
|
||||
* @method static \Illuminate\Database\Eloquent\Builder|User whereUpdatedAt($value)
|
||||
*/
|
||||
class IdeHelperUser extends \Eloquent {}
|
||||
}
|
||||
|
|
@ -114,7 +114,6 @@ class JournalEntryController extends Controller
|
|||
// TODO: Add support and/or error handling for non-servings.
|
||||
$recipes_selected = array_filter($input['recipes']);
|
||||
if (!empty($recipes_selected)) {
|
||||
// TODO: Check out barryvdh/laravel-ide-helper.
|
||||
$recipes = Recipe::findMany($recipes_selected)->keyBy('id');
|
||||
foreach ($recipes_selected as $key => $id) {
|
||||
$recipe = $recipes->get($id);
|
||||
|
|
|
@ -8,21 +8,7 @@ use Illuminate\Database\Eloquent\Factories\HasFactory;
|
|||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
/**
|
||||
* @property int id
|
||||
* @property string name Food base name.
|
||||
* @property ?string detail Some additional detail about the food (e.g. "small" with the name "onion").
|
||||
* @property ?string brand Brand name.
|
||||
* @property float carbohydrates per serving (g).
|
||||
* @property float calories per serving (g).
|
||||
* @property float cholesterol per serving (g).
|
||||
* @property float fat per serving (g).
|
||||
* @property float protein per serving (g).
|
||||
* @property float sodium per serving (g).
|
||||
* @property float serving_size Size of one serving of the food.
|
||||
* @property ?string serving_unit Unit for serving weight (tsp, tbsp, cup, or null).
|
||||
* @property float serving_weight per serving (g).
|
||||
* @property \Illuminate\Support\Carbon created_at
|
||||
* @property \Illuminate\Support\Carbon updated_at
|
||||
* @mixin IdeHelperFood
|
||||
*/
|
||||
class Food extends Model
|
||||
{
|
||||
|
|
|
@ -8,20 +8,7 @@ use Illuminate\Database\Eloquent\Model;
|
|||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
|
||||
/**
|
||||
* @property int id
|
||||
* @property float amount Amount of food.
|
||||
* @property ?string unit Food unit (tsp, tbsp, cup, or grams).
|
||||
* @property int weight Weight of food in full food list (lowest first).
|
||||
* @property \App\Models\Food food
|
||||
* @property \App\Models\Recipe recipe
|
||||
* @property \Illuminate\Support\Carbon created_at
|
||||
* @property \Illuminate\Support\Carbon updated_at
|
||||
* @method float calories Get total calories.
|
||||
* @method float carbohydrates Get total carbohydrates.
|
||||
* @method float cholesterol Get total cholesterol.
|
||||
* @method float fat Get total fat.
|
||||
* @method float protein Get total protein.
|
||||
* @method float sodium Get total sodium.
|
||||
* @mixin IdeHelperFoodAmount
|
||||
*/
|
||||
class FoodAmount extends Model
|
||||
{
|
||||
|
|
|
@ -8,16 +8,7 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
|||
use Illuminate\Database\Eloquent\Relations\MorphToMany;
|
||||
|
||||
/**
|
||||
* @property int id
|
||||
* @property \Illuminate\Support\Carbon date
|
||||
* @property string summary
|
||||
* @property float calories
|
||||
* @property float carbohydrates
|
||||
* @property float cholesterol
|
||||
* @property float fat
|
||||
* @property float protein
|
||||
* @property float sodium
|
||||
* @property string meal
|
||||
* @mixin IdeHelperJournalEntry
|
||||
*/
|
||||
class JournalEntry extends Model
|
||||
{
|
||||
|
|
|
@ -9,26 +9,7 @@ use Illuminate\Database\Eloquent\Model;
|
|||
use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
|
||||
/**
|
||||
* @property int id
|
||||
* @property string name
|
||||
* @property string description
|
||||
* @property int servings
|
||||
* @property \App\Models\RecipeStep[] steps
|
||||
* @property \App\Models\FoodAmount[] foodAmounts
|
||||
* @property \Illuminate\Support\Carbon created_at
|
||||
* @property \Illuminate\Support\Carbon updated_at
|
||||
* @method float caloriesTotal Get total calories.
|
||||
* @method float caloriesPerServing Get per serving calories.
|
||||
* @method float carbohydratesTotal Get total carbohydrates.
|
||||
* @method float carbohydratesPerServing Get per serving carbohydrates.
|
||||
* @method float cholesterolTotal Get total cholesterol.
|
||||
* @method float cholesterolPerServing Get per serving cholesterol.
|
||||
* @method float fatTotal Get total fat.
|
||||
* @method float fatPerServing Get per serving fat.
|
||||
* @method float proteinTotal Get total protein.
|
||||
* @method float proteinPerServing Get per serving protein.
|
||||
* @method float sodiumTotal Get total sodium.
|
||||
* @method float sodiumPerServing Get per serving sodium.
|
||||
* @mixin IdeHelperRecipe
|
||||
*/
|
||||
class Recipe extends Model
|
||||
{
|
||||
|
|
|
@ -7,12 +7,7 @@ use Illuminate\Database\Eloquent\Model;
|
|||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
|
||||
/**
|
||||
* @property int id
|
||||
* @property int number
|
||||
* @property string step
|
||||
* @property \App\Models\Recipe recipe
|
||||
* @property \Illuminate\Support\Carbon created_at
|
||||
* @property \Illuminate\Support\Carbon updated_at
|
||||
* @mixin IdeHelperRecipeStep
|
||||
*/
|
||||
class RecipeStep extends Model
|
||||
{
|
||||
|
|
|
@ -8,9 +8,7 @@ use Illuminate\Foundation\Auth\User as Authenticatable;
|
|||
use Illuminate\Notifications\Notifiable;
|
||||
|
||||
/**
|
||||
* @property int id
|
||||
* @property string name
|
||||
* @property string email
|
||||
* @mixin IdeHelperUser
|
||||
*/
|
||||
class User extends Authenticatable
|
||||
{
|
||||
|
|
|
@ -13,6 +13,7 @@
|
|||
"laravel/tinker": "^2.5"
|
||||
},
|
||||
"require-dev": {
|
||||
"barryvdh/laravel-ide-helper": "^2.9",
|
||||
"facade/ignition": "^2.5",
|
||||
"fakerphp/faker": "^1.9.1",
|
||||
"laravel/breeze": "^1.0",
|
||||
|
@ -53,6 +54,11 @@
|
|||
],
|
||||
"post-create-project-cmd": [
|
||||
"@php artisan key:generate --ansi"
|
||||
],
|
||||
"post-update-cmd": [
|
||||
"Illuminate\\Foundation\\ComposerScripts::postUpdate",
|
||||
"@php artisan ide-helper:generate",
|
||||
"@php artisan ide-helper:meta"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue