增加note
This commit is contained in:
parent
bc09cf9f24
commit
dd977db9a4
43
app/Http/Controllers/NoteController.php
Normal file
43
app/Http/Controllers/NoteController.php
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
|
use App\Models\Note;
|
||||||
|
use App\Models\Project;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
|
||||||
|
class NoteController extends Controller
|
||||||
|
{
|
||||||
|
public function createOrEdit(Note $note)
|
||||||
|
{
|
||||||
|
$request = request();
|
||||||
|
$projectId = $request->get('project_id');
|
||||||
|
$project = null;
|
||||||
|
if($projectId) {
|
||||||
|
$project = Project::find($projectId);
|
||||||
|
}
|
||||||
|
return view('note.edit', ['note' => $note, 'project' => $project]);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function create()
|
||||||
|
{
|
||||||
|
return $this->createOrEdit(app(Note::class));
|
||||||
|
}
|
||||||
|
|
||||||
|
public function edit($id)
|
||||||
|
{
|
||||||
|
return $this->createOrEdit(Note::find($id));
|
||||||
|
}
|
||||||
|
|
||||||
|
public function store(Request $request)
|
||||||
|
{
|
||||||
|
$note = Note::create($request->all());
|
||||||
|
return redirect()->route('adm.project.show', [$note->project->id]);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function destroy($id)
|
||||||
|
{
|
||||||
|
Note::find($id)->delete();
|
||||||
|
return response()->json([]);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -57,7 +57,8 @@ public function store(ProjectCreateRequest $request)
|
|||||||
public function show($id)
|
public function show($id)
|
||||||
{
|
{
|
||||||
$project = Project::find($id);
|
$project = Project::find($id);
|
||||||
return view('project.view', ['project' => $project]);
|
$notes = $project->notes()->latest()->get();
|
||||||
|
return view('project.view', ['project' => $project, 'notes' => $notes]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function edit($id)
|
public function edit($id)
|
||||||
|
|||||||
37
app/Models/Note.php
Normal file
37
app/Models/Note.php
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Models;
|
||||||
|
|
||||||
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* App\Models\Note
|
||||||
|
*
|
||||||
|
* @property int $id
|
||||||
|
* @property int $project_id
|
||||||
|
* @property string $content
|
||||||
|
* @property \Illuminate\Support\Carbon|null $created_at
|
||||||
|
* @property \Illuminate\Support\Carbon|null $updated_at
|
||||||
|
* @property-read \App\Models\Project|null $project
|
||||||
|
* @method static \Illuminate\Database\Eloquent\Builder|Note newModelQuery()
|
||||||
|
* @method static \Illuminate\Database\Eloquent\Builder|Note newQuery()
|
||||||
|
* @method static \Illuminate\Database\Eloquent\Builder|Note query()
|
||||||
|
* @method static \Illuminate\Database\Eloquent\Builder|Note whereContent($value)
|
||||||
|
* @method static \Illuminate\Database\Eloquent\Builder|Note whereCreatedAt($value)
|
||||||
|
* @method static \Illuminate\Database\Eloquent\Builder|Note whereId($value)
|
||||||
|
* @method static \Illuminate\Database\Eloquent\Builder|Note whereProjectId($value)
|
||||||
|
* @method static \Illuminate\Database\Eloquent\Builder|Note whereUpdatedAt($value)
|
||||||
|
* @mixin \Eloquent
|
||||||
|
*/
|
||||||
|
class Note extends Model
|
||||||
|
{
|
||||||
|
use HasFactory;
|
||||||
|
|
||||||
|
protected $fillable = ['content', 'project_id'];
|
||||||
|
|
||||||
|
public function project()
|
||||||
|
{
|
||||||
|
return $this->belongsTo(Project::class);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -42,6 +42,8 @@
|
|||||||
* @property-read \App\Models\Client|null $client
|
* @property-read \App\Models\Client|null $client
|
||||||
* @property-read int $paid_amount
|
* @property-read int $paid_amount
|
||||||
* @property-read int $unpaid_amount
|
* @property-read int $unpaid_amount
|
||||||
|
* @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\Note[] $notes
|
||||||
|
* @property-read int|null $notes_count
|
||||||
*/
|
*/
|
||||||
class Project extends Model
|
class Project extends Model
|
||||||
{
|
{
|
||||||
@ -84,4 +86,9 @@ public function client()
|
|||||||
{
|
{
|
||||||
return $this->belongsTo(Client::class);
|
return $this->belongsTo(Client::class);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function notes()
|
||||||
|
{
|
||||||
|
return $this->hasMany(Note::class);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
33
database/migrations/2022_05_07_142219_create_notes_table.php
Normal file
33
database/migrations/2022_05_07_142219_create_notes_table.php
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
|
return new class extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
Schema::create('notes', function (Blueprint $table) {
|
||||||
|
$table->id();
|
||||||
|
$table->unsignedBigInteger('project_id');
|
||||||
|
$table->text('content');
|
||||||
|
$table->timestamps();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
Schema::dropIfExists('notes');
|
||||||
|
}
|
||||||
|
};
|
||||||
@ -21,6 +21,8 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@popperjs/core": "^2.11.5",
|
"@popperjs/core": "^2.11.5",
|
||||||
"bootstrap-icons": "^1.8.1"
|
"bootstrap-icons": "^1.8.1",
|
||||||
|
"jquery": "^3.6.0",
|
||||||
|
"vue": "^3.2.33"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -18031,3 +18031,44 @@ .bi-filetype-pptx::before {
|
|||||||
.bi-filetype-xlsx::before {
|
.bi-filetype-xlsx::before {
|
||||||
content: "\f793";
|
content: "\f793";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.notes .note {
|
||||||
|
position: relative;
|
||||||
|
background: #eee;
|
||||||
|
}
|
||||||
|
.notes .note .content {
|
||||||
|
font-size: 1rem;
|
||||||
|
}
|
||||||
|
.notes .note .time {
|
||||||
|
font-size: 0.5rem;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
.notes .note .delete-wrapper {
|
||||||
|
display: none;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.notes .note .delete-wrapper .bg {
|
||||||
|
background: red;
|
||||||
|
opacity: 0.7;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
.notes .note .delete-wrapper .delete {
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
transform: translate(-50%, -50%);
|
||||||
|
color: white;
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 1.2rem;
|
||||||
|
}
|
||||||
|
.notes .note:hover .delete-wrapper {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@ -1,4 +1,4 @@
|
|||||||
{
|
{
|
||||||
"/js/app.js": "/js/app.js?id=14f84891603743da9fbfc6699a3f4297",
|
"/js/app.js": "/js/app.js?id=c98255a330e87e9652070f2535faf5ac",
|
||||||
"/css/app.css": "/css/app.css?id=0b6616382c4cfb1ce9f2f3abb01ac21e"
|
"/css/app.css": "/css/app.css?id=f73ebf2d70c6a8e9d42d21eebc12e29c"
|
||||||
}
|
}
|
||||||
|
|||||||
1
resources/js/bootstrap.js
vendored
1
resources/js/bootstrap.js
vendored
@ -12,6 +12,7 @@ window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
|
|||||||
|
|
||||||
import 'bootstrap'
|
import 'bootstrap'
|
||||||
|
|
||||||
|
window.$ = window.jqeury = require('jquery')
|
||||||
/**
|
/**
|
||||||
* Echo exposes an expressive API for subscribing to channels and listening
|
* Echo exposes an expressive API for subscribing to channels and listening
|
||||||
* for events that are broadcast by Laravel. Echo and event broadcasting
|
* for events that are broadcast by Laravel. Echo and event broadcasting
|
||||||
|
|||||||
@ -1,2 +1,47 @@
|
|||||||
@import "~bootstrap";
|
@import "~bootstrap";
|
||||||
@import "~bootstrap-icons";
|
@import "~bootstrap-icons";
|
||||||
|
|
||||||
|
.notes {
|
||||||
|
.note {
|
||||||
|
position: relative;
|
||||||
|
background: #eee;
|
||||||
|
.content {
|
||||||
|
font-size: 1rem;
|
||||||
|
}
|
||||||
|
.time {
|
||||||
|
font-size: .5rem;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
.delete-wrapper {
|
||||||
|
display: none;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
cursor: pointer;
|
||||||
|
.bg {
|
||||||
|
background: red;
|
||||||
|
opacity: .7;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
.delete {
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
transform: translate(-50%, -50%);
|
||||||
|
color: white;
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 1.2rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&:hover {
|
||||||
|
.delete-wrapper {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@ -12,7 +12,7 @@
|
|||||||
</x-form-control-input>
|
</x-form-control-input>
|
||||||
@break
|
@break
|
||||||
@case('text_area')
|
@case('text_area')
|
||||||
<x-form-control-text-area name="{{ $attr }}" id="{{ $id }}" :value="$value"></x-form-control-text-area>
|
<x-form-control-text-area name="{{ $attr }}" id="{{ $id }}" :value="$value" :required="$required"></x-form-control-text-area>
|
||||||
@break
|
@break
|
||||||
@case('select')
|
@case('select')
|
||||||
<x-form-control-select name="{{ $attr }}" id="{{ $id }}" :value="$value" :options="$options" :multiple="$multiple"></x-form-control-select>
|
<x-form-control-select name="{{ $attr }}" id="{{ $id }}" :value="$value" :options="$options" :multiple="$multiple"></x-form-control-select>
|
||||||
|
|||||||
@ -10,7 +10,7 @@
|
|||||||
<title>{{ config('app.name', 'Laravel') }}</title>
|
<title>{{ config('app.name', 'Laravel') }}</title>
|
||||||
|
|
||||||
<!-- Scripts -->
|
<!-- Scripts -->
|
||||||
<script src="{{ mix('js/app.js') }}" defer></script>
|
<script src="{{ mix('js/app.js') }}"></script>
|
||||||
|
|
||||||
<!-- Fonts -->
|
<!-- Fonts -->
|
||||||
<link rel="dns-prefetch" href="//fonts.gstatic.com">
|
<link rel="dns-prefetch" href="//fonts.gstatic.com">
|
||||||
@ -33,6 +33,7 @@
|
|||||||
<div class="collapse navbar-collapse" id="navbarSupportedContent">
|
<div class="collapse navbar-collapse" id="navbarSupportedContent">
|
||||||
<!-- Left Side Of Navbar -->
|
<!-- Left Side Of Navbar -->
|
||||||
<ul class="navbar-nav me-auto">
|
<ul class="navbar-nav me-auto">
|
||||||
|
@auth
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link" href="{{ route('adm.client.index') }}">Client</a>
|
<a class="nav-link" href="{{ route('adm.client.index') }}">Client</a>
|
||||||
</li>
|
</li>
|
||||||
@ -42,6 +43,7 @@
|
|||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link" href="{{ route('adm.payment.index') }}">Payment</a>
|
<a class="nav-link" href="{{ route('adm.payment.index') }}">Payment</a>
|
||||||
</li>
|
</li>
|
||||||
|
@endauth
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<!-- Right Side Of Navbar -->
|
<!-- Right Side Of Navbar -->
|
||||||
|
|||||||
43
resources/views/note/edit.blade.php
Normal file
43
resources/views/note/edit.blade.php
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
<?php
|
||||||
|
/** @var \App\Models\Note $note */
|
||||||
|
?>
|
||||||
|
@extends('layouts.app')
|
||||||
|
|
||||||
|
@section('content')
|
||||||
|
<div class="container">
|
||||||
|
<div class="row justify-content-center">
|
||||||
|
<div class="col-6">
|
||||||
|
<form
|
||||||
|
action="{{ $note->id ? route('adm.note.update', [$note->id]) : route('adm.note.store') }}"
|
||||||
|
method="post">
|
||||||
|
@csrf
|
||||||
|
@if($note->id)
|
||||||
|
@method('PUT')
|
||||||
|
<div class="row mb-3">
|
||||||
|
<div class="col">
|
||||||
|
<h1>編輯 Note: {{ $note->project->title }} {{ $note->project->id }}</h1>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@else
|
||||||
|
<div class="row mb-3">
|
||||||
|
<div class="col">
|
||||||
|
<h1>新增 Note: {{ $project->title }}</h1>
|
||||||
|
<input type="hidden" name="project_id" value="{{ $project->id }}">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
|
<x-success-alert></x-success-alert>
|
||||||
|
<x-validation-alert></x-validation-alert>
|
||||||
|
<x-model-form-control-group :model="$note" attr="content" type="text_area" label="內容" :required="true"></x-model-form-control-group>
|
||||||
|
<button type="submit" class="btn btn-success">
|
||||||
|
@if($note->id)
|
||||||
|
Update
|
||||||
|
@else
|
||||||
|
Create
|
||||||
|
@endif
|
||||||
|
</button>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@endsection
|
||||||
@ -26,7 +26,7 @@
|
|||||||
<x-model-form-control-group :model="$project" attr="status" type="select" label="狀態" :options="$projectStatuses" :required="true"></x-model-form-control-group>
|
<x-model-form-control-group :model="$project" attr="status" type="select" label="狀態" :options="$projectStatuses" :required="true"></x-model-form-control-group>
|
||||||
<x-model-form-control-group :model="$project" attr="begin_at" type="input" input-type="date" label="開始日"></x-model-form-control-group>
|
<x-model-form-control-group :model="$project" attr="begin_at" type="input" input-type="date" label="開始日"></x-model-form-control-group>
|
||||||
<x-model-form-control-group :model="$project" attr="end_at" type="input" input-type="date" label="結束日"></x-model-form-control-group>
|
<x-model-form-control-group :model="$project" attr="end_at" type="input" input-type="date" label="結束日"></x-model-form-control-group>
|
||||||
<x-model-form-control-group :model="$project" attr="price" type="input" input-type="number" label="金額"></x-model-form-control-group>
|
<x-model-form-control-group :model="$project" attr="price" type="input" input-type="number" label="金額" :required="true"></x-model-form-control-group>
|
||||||
<x-model-form-control-group :model="$project" attr="client_id" type="select" label="客戶" :options="$clients" :required="true"></x-model-form-control-group>
|
<x-model-form-control-group :model="$project" attr="client_id" type="select" label="客戶" :options="$clients" :required="true"></x-model-form-control-group>
|
||||||
<x-model-form-control-group :model="$project" attr="parent_project_id" type="select" label="父專案" :options="$projects"></x-model-form-control-group>
|
<x-model-form-control-group :model="$project" attr="parent_project_id" type="select" label="父專案" :options="$projects"></x-model-form-control-group>
|
||||||
<button type="submit" class="btn btn-success">
|
<button type="submit" class="btn btn-success">
|
||||||
|
|||||||
@ -1,9 +1,9 @@
|
|||||||
@extends('layouts.app')
|
@extends('layouts.app')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="container">
|
<div class="container" id="app">
|
||||||
<div class="row justify-content-center">
|
<div class="row justify-content-center">
|
||||||
<div class="col">
|
<div class="col-9">
|
||||||
<table class="table table-bordered table-hover table-sm table-striped">
|
<table class="table table-bordered table-hover table-sm table-striped">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
@ -73,6 +73,41 @@ class="btn btn-sm btn-outline-success"><i class="bi bi-plus"></i></a></th>
|
|||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="col-3">
|
||||||
|
<div>Notes
|
||||||
|
<a href="{{ route('adm.note.create', ['project_id' => $project->id]) }}" class="btn btn-success btn-sm">
|
||||||
|
<i class="bi bi-plus"></i>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="notes">
|
||||||
|
<?php foreach ($notes as $note): ?>
|
||||||
|
<div class="note p-2 my-2">
|
||||||
|
<div class="content">
|
||||||
|
{!! nl2br($note->content) !!}
|
||||||
|
</div>
|
||||||
|
<div class="time">
|
||||||
|
{{ $note->created_at }}
|
||||||
|
</div>
|
||||||
|
<div class="delete-wrapper" data-id="{{ $note->id }}">
|
||||||
|
<div class="bg"></div>
|
||||||
|
<i class="delete bi bi-trash3"></i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<?php endforeach; ?>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script>
|
||||||
|
$('.delete-wrapper').on('click', (e) => {
|
||||||
|
if(confirm('確定刪除?')) {
|
||||||
|
let $this = $(e.currentTarget),
|
||||||
|
id = $this.data('id')
|
||||||
|
axios.delete(`/adm/note/${id}`).then(resp => {
|
||||||
|
$this.closest('.note').remove()
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
</script>
|
||||||
@endsection
|
@endsection
|
||||||
|
|||||||
@ -29,4 +29,6 @@
|
|||||||
Route::resource('project', \App\Http\Controllers\ProjectController::class);
|
Route::resource('project', \App\Http\Controllers\ProjectController::class);
|
||||||
|
|
||||||
Route::resource('payment', \App\Http\Controllers\PaymentController::class);
|
Route::resource('payment', \App\Http\Controllers\PaymentController::class);
|
||||||
|
|
||||||
|
Route::resource('note', \App\Http\Controllers\NoteController::class)->except(['show']);
|
||||||
});
|
});
|
||||||
|
|||||||
132
yarn.lock
132
yarn.lock
@ -260,7 +260,7 @@
|
|||||||
chalk "^2.0.0"
|
chalk "^2.0.0"
|
||||||
js-tokens "^4.0.0"
|
js-tokens "^4.0.0"
|
||||||
|
|
||||||
"@babel/parser@^7.1.0", "@babel/parser@^7.16.7", "@babel/parser@^7.17.10":
|
"@babel/parser@^7.1.0", "@babel/parser@^7.16.4", "@babel/parser@^7.16.7", "@babel/parser@^7.17.10":
|
||||||
version "7.17.10"
|
version "7.17.10"
|
||||||
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.17.10.tgz#873b16db82a8909e0fbd7f115772f4b739f6ce78"
|
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.17.10.tgz#873b16db82a8909e0fbd7f115772f4b739f6ce78"
|
||||||
integrity sha512-n2Q6i+fnJqzOaq2VkdXxy2TCPCWQZHiCo0XqmrCvDWcZQKRyZzYi4Z0yxlBuN0w+r2ZHmre+Q087DSrw3pbJDQ==
|
integrity sha512-n2Q6i+fnJqzOaq2VkdXxy2TCPCWQZHiCo0XqmrCvDWcZQKRyZzYi4Z0yxlBuN0w+r2ZHmre+Q087DSrw3pbJDQ==
|
||||||
@ -1213,6 +1213,96 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
"@types/node" "*"
|
"@types/node" "*"
|
||||||
|
|
||||||
|
"@vue/compiler-core@3.2.33":
|
||||||
|
version "3.2.33"
|
||||||
|
resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.2.33.tgz#e915d59cce85898f5c5cfebe4c09e539278c3d59"
|
||||||
|
integrity sha512-AAmr52ji3Zhk7IKIuigX2osWWsb2nQE5xsdFYjdnmtQ4gymmqXbjLvkSE174+fF3A3kstYrTgGkqgOEbsdLDpw==
|
||||||
|
dependencies:
|
||||||
|
"@babel/parser" "^7.16.4"
|
||||||
|
"@vue/shared" "3.2.33"
|
||||||
|
estree-walker "^2.0.2"
|
||||||
|
source-map "^0.6.1"
|
||||||
|
|
||||||
|
"@vue/compiler-dom@3.2.33":
|
||||||
|
version "3.2.33"
|
||||||
|
resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.2.33.tgz#6db84296f949f18e5d3e7fd5e80f943dbed7d5ec"
|
||||||
|
integrity sha512-GhiG1C8X98Xz9QUX/RlA6/kgPBWJkjq0Rq6//5XTAGSYrTMBgcLpP9+CnlUg1TFxnnCVughAG+KZl28XJqw8uQ==
|
||||||
|
dependencies:
|
||||||
|
"@vue/compiler-core" "3.2.33"
|
||||||
|
"@vue/shared" "3.2.33"
|
||||||
|
|
||||||
|
"@vue/compiler-sfc@3.2.33":
|
||||||
|
version "3.2.33"
|
||||||
|
resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.2.33.tgz#7ce01dc947a8b76c099811dc6ca58494d4dc773d"
|
||||||
|
integrity sha512-H8D0WqagCr295pQjUYyO8P3IejM3vEzeCO1apzByAEaAR/WimhMYczHfZVvlCE/9yBaEu/eu9RdiWr0kF8b71Q==
|
||||||
|
dependencies:
|
||||||
|
"@babel/parser" "^7.16.4"
|
||||||
|
"@vue/compiler-core" "3.2.33"
|
||||||
|
"@vue/compiler-dom" "3.2.33"
|
||||||
|
"@vue/compiler-ssr" "3.2.33"
|
||||||
|
"@vue/reactivity-transform" "3.2.33"
|
||||||
|
"@vue/shared" "3.2.33"
|
||||||
|
estree-walker "^2.0.2"
|
||||||
|
magic-string "^0.25.7"
|
||||||
|
postcss "^8.1.10"
|
||||||
|
source-map "^0.6.1"
|
||||||
|
|
||||||
|
"@vue/compiler-ssr@3.2.33":
|
||||||
|
version "3.2.33"
|
||||||
|
resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.2.33.tgz#3e820267e4eea48fde9519f006dedca3f5e42e71"
|
||||||
|
integrity sha512-XQh1Xdk3VquDpXsnoCd7JnMoWec9CfAzQDQsaMcSU79OrrO2PNR0ErlIjm/mGq3GmBfkQjzZACV+7GhfRB8xMQ==
|
||||||
|
dependencies:
|
||||||
|
"@vue/compiler-dom" "3.2.33"
|
||||||
|
"@vue/shared" "3.2.33"
|
||||||
|
|
||||||
|
"@vue/reactivity-transform@3.2.33":
|
||||||
|
version "3.2.33"
|
||||||
|
resolved "https://registry.yarnpkg.com/@vue/reactivity-transform/-/reactivity-transform-3.2.33.tgz#286063f44ca56150ae9b52f8346a26e5913fa699"
|
||||||
|
integrity sha512-4UL5KOIvSQb254aqenW4q34qMXbfZcmEsV/yVidLUgvwYQQ/D21bGX3DlgPUGI3c4C+iOnNmDCkIxkILoX/Pyw==
|
||||||
|
dependencies:
|
||||||
|
"@babel/parser" "^7.16.4"
|
||||||
|
"@vue/compiler-core" "3.2.33"
|
||||||
|
"@vue/shared" "3.2.33"
|
||||||
|
estree-walker "^2.0.2"
|
||||||
|
magic-string "^0.25.7"
|
||||||
|
|
||||||
|
"@vue/reactivity@3.2.33":
|
||||||
|
version "3.2.33"
|
||||||
|
resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.2.33.tgz#c84eedb5225138dbfc2472864c151d3efbb4b673"
|
||||||
|
integrity sha512-62Sq0mp9/0bLmDuxuLD5CIaMG2susFAGARLuZ/5jkU1FCf9EDbwUuF+BO8Ub3Rbodx0ziIecM/NsmyjardBxfQ==
|
||||||
|
dependencies:
|
||||||
|
"@vue/shared" "3.2.33"
|
||||||
|
|
||||||
|
"@vue/runtime-core@3.2.33":
|
||||||
|
version "3.2.33"
|
||||||
|
resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.2.33.tgz#2df8907c85c37c3419fbd1bdf1a2df097fa40df2"
|
||||||
|
integrity sha512-N2D2vfaXsBPhzCV3JsXQa2NECjxP3eXgZlFqKh4tgakp3iX6LCGv76DLlc+IfFZq+TW10Y8QUfeihXOupJ1dGw==
|
||||||
|
dependencies:
|
||||||
|
"@vue/reactivity" "3.2.33"
|
||||||
|
"@vue/shared" "3.2.33"
|
||||||
|
|
||||||
|
"@vue/runtime-dom@3.2.33":
|
||||||
|
version "3.2.33"
|
||||||
|
resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.2.33.tgz#123b8969247029ea0d9c1983676d4706a962d848"
|
||||||
|
integrity sha512-LSrJ6W7CZTSUygX5s8aFkraDWlO6K4geOwA3quFF2O+hC3QuAMZt/0Xb7JKE3C4JD4pFwCSO7oCrZmZ0BIJUnw==
|
||||||
|
dependencies:
|
||||||
|
"@vue/runtime-core" "3.2.33"
|
||||||
|
"@vue/shared" "3.2.33"
|
||||||
|
csstype "^2.6.8"
|
||||||
|
|
||||||
|
"@vue/server-renderer@3.2.33":
|
||||||
|
version "3.2.33"
|
||||||
|
resolved "https://registry.yarnpkg.com/@vue/server-renderer/-/server-renderer-3.2.33.tgz#4b45d6d2ae10ea4e3d2cf8e676804cf60f331979"
|
||||||
|
integrity sha512-4jpJHRD4ORv8PlbYi+/MfP8ec1okz6rybe36MdpkDrGIdEItHEUyaHSKvz+ptNEyQpALmmVfRteHkU9F8vxOew==
|
||||||
|
dependencies:
|
||||||
|
"@vue/compiler-ssr" "3.2.33"
|
||||||
|
"@vue/shared" "3.2.33"
|
||||||
|
|
||||||
|
"@vue/shared@3.2.33":
|
||||||
|
version "3.2.33"
|
||||||
|
resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.2.33.tgz#69a8c99ceb37c1b031d5cc4aec2ff1dc77e1161e"
|
||||||
|
integrity sha512-UBc1Pg1T3yZ97vsA2ueER0F6GbJebLHYlEi4ou1H5YL4KWvMOOWwpYo9/QpWq93wxKG6Wo13IY74Hcn/f7c7Bg==
|
||||||
|
|
||||||
"@webassemblyjs/ast@1.11.1":
|
"@webassemblyjs/ast@1.11.1":
|
||||||
version "1.11.1"
|
version "1.11.1"
|
||||||
resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7"
|
resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7"
|
||||||
@ -2221,6 +2311,11 @@ csso@^4.2.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
css-tree "^1.1.2"
|
css-tree "^1.1.2"
|
||||||
|
|
||||||
|
csstype@^2.6.8:
|
||||||
|
version "2.6.20"
|
||||||
|
resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.20.tgz#9229c65ea0b260cf4d3d997cb06288e36a8d6dda"
|
||||||
|
integrity sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA==
|
||||||
|
|
||||||
debug@2.6.9:
|
debug@2.6.9:
|
||||||
version "2.6.9"
|
version "2.6.9"
|
||||||
resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
|
resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
|
||||||
@ -2486,6 +2581,11 @@ estraverse@^5.2.0:
|
|||||||
resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123"
|
resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123"
|
||||||
integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==
|
integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==
|
||||||
|
|
||||||
|
estree-walker@^2.0.2:
|
||||||
|
version "2.0.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac"
|
||||||
|
integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==
|
||||||
|
|
||||||
esutils@^2.0.2:
|
esutils@^2.0.2:
|
||||||
version "2.0.3"
|
version "2.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
|
resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
|
||||||
@ -3161,6 +3261,11 @@ jest-worker@^27.4.5:
|
|||||||
merge-stream "^2.0.0"
|
merge-stream "^2.0.0"
|
||||||
supports-color "^8.0.0"
|
supports-color "^8.0.0"
|
||||||
|
|
||||||
|
jquery@^3.6.0:
|
||||||
|
version "3.6.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.6.0.tgz#c72a09f15c1bdce142f49dbf1170bdf8adac2470"
|
||||||
|
integrity sha512-JVzAR/AjBvVt2BmYhxRCSYysDsPcssdmTFnzyLEts9qNwmjmu4JTAMYubEfwVOSwpQ1I1sKKFcxhZCI2buerfw==
|
||||||
|
|
||||||
js-tokens@^4.0.0:
|
js-tokens@^4.0.0:
|
||||||
version "4.0.0"
|
version "4.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
|
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
|
||||||
@ -3367,6 +3472,13 @@ lru-cache@^6.0.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
yallist "^4.0.0"
|
yallist "^4.0.0"
|
||||||
|
|
||||||
|
magic-string@^0.25.7:
|
||||||
|
version "0.25.9"
|
||||||
|
resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.9.tgz#de7f9faf91ef8a1c91d02c2e5314c8277dbcdd1c"
|
||||||
|
integrity sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==
|
||||||
|
dependencies:
|
||||||
|
sourcemap-codec "^1.4.8"
|
||||||
|
|
||||||
make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0:
|
make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0:
|
||||||
version "3.1.0"
|
version "3.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f"
|
resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f"
|
||||||
@ -4113,7 +4225,7 @@ postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0:
|
|||||||
resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514"
|
resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514"
|
||||||
integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==
|
integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==
|
||||||
|
|
||||||
postcss@^8.1.14, postcss@^8.2.14, postcss@^8.2.15:
|
postcss@^8.1.10, postcss@^8.1.14, postcss@^8.2.14, postcss@^8.2.15:
|
||||||
version "8.4.13"
|
version "8.4.13"
|
||||||
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.13.tgz#7c87bc268e79f7f86524235821dfdf9f73e5d575"
|
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.13.tgz#7c87bc268e79f7f86524235821dfdf9f73e5d575"
|
||||||
integrity sha512-jtL6eTBrza5MPzy8oJLFuUscHDXTV5KcLlqAWHl5q5WYRfnNRGSmOZmOZ1T6Gy7A99mOZfqungmZMpMmCVJ8ZA==
|
integrity sha512-jtL6eTBrza5MPzy8oJLFuUscHDXTV5KcLlqAWHl5q5WYRfnNRGSmOZmOZ1T6Gy7A99mOZfqungmZMpMmCVJ8ZA==
|
||||||
@ -4650,6 +4762,11 @@ source-map@~0.8.0-beta.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
whatwg-url "^7.0.0"
|
whatwg-url "^7.0.0"
|
||||||
|
|
||||||
|
sourcemap-codec@^1.4.8:
|
||||||
|
version "1.4.8"
|
||||||
|
resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4"
|
||||||
|
integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==
|
||||||
|
|
||||||
spdy-transport@^3.0.0:
|
spdy-transport@^3.0.0:
|
||||||
version "3.0.0"
|
version "3.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31"
|
resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31"
|
||||||
@ -4991,6 +5108,17 @@ vue-style-loader@^4.1.3:
|
|||||||
hash-sum "^1.0.2"
|
hash-sum "^1.0.2"
|
||||||
loader-utils "^1.0.2"
|
loader-utils "^1.0.2"
|
||||||
|
|
||||||
|
vue@^3.2.33:
|
||||||
|
version "3.2.33"
|
||||||
|
resolved "https://registry.yarnpkg.com/vue/-/vue-3.2.33.tgz#7867eb16a3293a28c4d190a837bc447878bd64c2"
|
||||||
|
integrity sha512-si1ExAlDUrLSIg/V7D/GgA4twJwfsfgG+t9w10z38HhL/HA07132pUQ2KuwAo8qbCyMJ9e6OqrmWrOCr+jW7ZQ==
|
||||||
|
dependencies:
|
||||||
|
"@vue/compiler-dom" "3.2.33"
|
||||||
|
"@vue/compiler-sfc" "3.2.33"
|
||||||
|
"@vue/runtime-dom" "3.2.33"
|
||||||
|
"@vue/server-renderer" "3.2.33"
|
||||||
|
"@vue/shared" "3.2.33"
|
||||||
|
|
||||||
watchpack@^2.3.1:
|
watchpack@^2.3.1:
|
||||||
version "2.3.1"
|
version "2.3.1"
|
||||||
resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.3.1.tgz#4200d9447b401156eeca7767ee610f8809bc9d25"
|
resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.3.1.tgz#4200d9447b401156eeca7767ee610f8809bc9d25"
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user